| @@ -201,6 +201,7 @@ public class WxCUserBasicInfoController extends BaseController { | |||
| wxCUserTagsService.saveOrUpdate(record); | |||
| wxCUserBasicInfo.setTagId(record.getId()); | |||
| } | |||
| wxCUserBasicInfo.setFinalTenantId(tenantEntity.getFinalTenantId()); | |||
| wxCUserBasicInfoService.update(wxCUserBasicInfo); | |||
| wxCUserBasicInfo.updateTenantInfo(oldInfo); | |||
| wxCUserTagsService.triggerAssignTags(EnumAssignTagsTrigger.ASSIGN_TAGS_TRIGGER_IMPORT, wxCUserBasicInfo); | |||
| @@ -69,24 +69,46 @@ public class BaseController { | |||
| }); | |||
| } | |||
| public Long getBuserId() { | |||
| HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); | |||
| Long id = (Long) request.getAttribute(Constant.LOGIN_USER_KEY); | |||
| public Long getMerchantBUserId() { | |||
| HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); | |||
| Long id = (Long) request.getAttribute(Constant.LOGIN_B_USER_KEY); | |||
| return id; | |||
| } | |||
| public WxMerchantBUser getUser() { | |||
| WxBuser buser = getBuser(); | |||
| Long userId = buser.getUserId(); | |||
| WxMerchantBUser user = wxMerchantBUserService.getById(userId); | |||
| private WxMerchantBUser getWxMerchantBUser(Long userId) { | |||
| if (null == userId) { | |||
| throw new MallinkException(ErrorCode.USER_IS_EMPTY.getCode(),"当前用户登陆信息已失效,请重新登陆."); | |||
| } | |||
| WxMerchantBUser user = wxMerchantBUserService.getById(userId); | |||
| if (user == null) { | |||
| throw new MallinkException(ErrorCode.USER_IS_EMPTY.getCode(),"BUser[id:"+buser.getId()+",userId:"+userId+"]未查询到WxMerchantBUser。请联系管理员或者重新登陆."); | |||
| throw new MallinkException(ErrorCode.USER_IS_EMPTY.getCode(),"BUser[id:"+userId+"]未查询到WxMerchantBUser。请联系管理员或者重新登陆."); | |||
| } | |||
| return user; | |||
| } | |||
| public WxBuser getBuser() { | |||
| Long id = getBuserId(); | |||
| //该方法兼容微信登陆和非微信登陆 | |||
| public WxMerchantBUser getLoginBUser() { | |||
| Long wxBuserId = getWxBuserId(); | |||
| if (null != wxBuserId) { | |||
| WxBuser buser = getWxBuser(); | |||
| Long userId = buser.getUserId(); | |||
| return getWxMerchantBUser(userId); | |||
| }else { | |||
| Long userId = getMerchantBUserId(); | |||
| return getWxMerchantBUser(userId); | |||
| } | |||
| } | |||
| public Long getWxBuserId() { | |||
| HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); | |||
| Long id = (Long) request.getAttribute(Constant.LOGIN_USER_KEY); | |||
| return id; | |||
| } | |||
| public WxBuser getWxBuser() { | |||
| Long id = getWxBuserId(); | |||
| WxBuser user = wxBuserService.getById(id); | |||
| if (user == null) { | |||
| throw new MallinkException(ErrorCode.USER_IS_EMPTY.getCode(),"BUser[id:"+id+"]未查询到记录, 请重新登陆,并完全授权微信个人信息以及手机号授权."); | |||
| @@ -35,7 +35,7 @@ public class PosController extends BaseController { | |||
| @ApiOperation(value = "商户POS用户/B端用户登录检查", notes = "{\"phone\":\"string\", \"password\":\"string(单位:分)\"}") | |||
| @PostMapping("checkUserPassword") | |||
| public ResultData checkUserPassword(@RequestBody Map<String, String> params) { | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| String phone = params.get("phone"); | |||
| String password = params.get("password"); | |||
| //登录凭证不能为空 | |||
| @@ -51,7 +51,7 @@ public class PosController extends BaseController { | |||
| @ApiOperation(value = "券独立核销-1-检查", notes = "{\"couponOrderId\":\"string\"}") | |||
| @PostMapping("checkCouponOrderForIndepentVerify") | |||
| public ResultData checkCouponOrderForIndepentVerify(@RequestBody Map<String, String> params) { | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| String couponOrderIdStr = params.get(WxPayConstant.COUPON_ORDER_ID); // 券包ID | |||
| if (StringUtils.isBlank(couponOrderIdStr)) { | |||
| @@ -64,7 +64,7 @@ public class PosController extends BaseController { | |||
| @ApiOperation(value = "券独立核销-2-核销", notes = "{\"couponOrderId\":\"string\", \"payment\":\"string(单位:分)\"}") | |||
| @PostMapping("posVerifyIndepent") | |||
| public ResultData posVerifyIndepent(@RequestBody Map<String, String> params) { | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| String couponOrderId = params.get("coupon_order_id"); | |||
| String payment = params.get("payment"); | |||
| if (StringUtils.isBlank(couponOrderId)) { | |||
| @@ -78,7 +78,7 @@ public class PosController extends BaseController { | |||
| @ApiOperation(value = "会员支付-1-会员识别", notes = "{\"mem_id\":\"string(可选)\",\"mem_phone\":\"string(可选)\",\"pos_order_id\":\"string(必填)\",\"pos_amount\":\"string(单位:分)(必填)\"}") | |||
| @PostMapping("checkMem") | |||
| public ResultData checkMem(@RequestBody Map<String, String> params) { | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| String memIdStr = params.get(WxPayConstant.MEM_ID); // 会员ID | |||
| String memPhoneStr = params.get(WxPayConstant.MEM_PHONE); // 会员手机 | |||
| String posOrderIdStr = params.get(WxPayConstant.POS_ORDER_ID); // POS订单ID | |||
| @@ -102,7 +102,7 @@ public class PosController extends BaseController { | |||
| @ApiOperation(value = "会员支付-2-交易核销检查", notes = "{\"coupon_order_id\":\"string(必填)\",\"pos_order_id\":\"string(必填)\",\"pos_amount\":\"string(必填)\"}") | |||
| @PostMapping("checkCouponOrderForPayVerify") | |||
| public ResultData checkCouponOrderForPayVerify(@RequestBody Map<String, String> params) { | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| String couponOrderIdStr = params.get(WxPayConstant.COUPON_ORDER_ID); // 券包ID | |||
| String posOrderIdStr = params.get(WxPayConstant.POS_ORDER_ID); // POS订单ID | |||
| String posAmountStr = params.get(WxPayConstant.ORDER_AMOUNT); // POS订单金额 | |||
| @@ -123,7 +123,7 @@ public class PosController extends BaseController { | |||
| @ApiOperation(value = "会员支付-3-券预核销", notes = "{\"coupon_order_id\":\"string(必填)\",\"deduct_amount\":\"string(必填)\",\"pos_order_id\":\"string(必填)\",\"pos_amount\":\"string(必填)\"}") | |||
| @PostMapping("couponOrderPreVerify") | |||
| public ResultData couponOrderPreVerify(@RequestBody Map<String, String> params) { | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| String couponOrderIdStr = params.get(WxPayConstant.COUPON_ORDER_ID); // 券包ID | |||
| String deductAmountStr = params.get(WxPayConstant.DEDUCT_AMOUNT); // 扣减金额 | |||
| String posOrderIdStr = params.get(WxPayConstant.POS_ORDER_ID); // POS订单ID | |||
| @@ -148,7 +148,7 @@ public class PosController extends BaseController { | |||
| @ApiOperation(value = "会员支付-4-支付完成", notes = "{\"pos_order_id\":\"string\"}") | |||
| @PostMapping("posOrderFinished") | |||
| public ResultData posOrderFinished(@RequestBody Map<String, String> params) { | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| String posOrderIdStr = params.get(WxPayConstant.POS_ORDER_ID); // POS订单ID | |||
| if (StringUtils.isBlank(posOrderIdStr)) { | |||
| return errParam(WxPayConstant.POS_ORDER_ID); | |||
| @@ -163,7 +163,7 @@ public class PosController extends BaseController { | |||
| @ApiOperation(value = "会员支付-10-券预核销取消", notes = "{\"coupon_order_id\":\"string(必填)\",\"pos_order_id\":\"string(必填)\",\"pos_amount\":\"string(必填)\"}") | |||
| @PostMapping("couponOrderPreVerifyCancel") | |||
| public ResultData couponOrderPreVerifyCancel(@RequestBody Map<String, String> params) { | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| String couponOrderIdStr = params.get(WxPayConstant.COUPON_ORDER_ID); // 券包ID | |||
| String posOrderIdStr = params.get(WxPayConstant.POS_ORDER_ID); // POS订单ID | |||
| String posAmountStr = params.get(WxPayConstant.ORDER_AMOUNT); // POS订单金额(单位:分) | |||
| @@ -43,7 +43,7 @@ public class PosOrderController extends BaseController { | |||
| @ApiOperation(value = "新增POS订单接口", notes = "") | |||
| @PostMapping("addForPosPay") | |||
| public ResultData add(@RequestBody PosOrder posOrder) { | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| if (posOrder == null) { | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | |||
| } | |||
| @@ -47,7 +47,7 @@ public class WxCardPayController extends BaseController { | |||
| String ipStr = getIpAddr(); | |||
| logger.info("cardSpendlist: " + ipStr + " :" + wxCardSpendVo.toString()); | |||
| if (wxCardSpendVo == null) wxCardSpendVo = new WxCardSpendVo(); | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| wxCardSpendVo.updateTenantInfo(user); | |||
| wxCardSpendVo.setMerchantId(user.getMerchantId()); | |||
| final PageInfo<WxCardSpendVo> page = wxCardSpendService.listAsPage(wxCardSpendVo, pageNum, pageSize); | |||
| @@ -60,7 +60,7 @@ public class WxCardPayController extends BaseController { | |||
| String ipStr = getIpAddr(); | |||
| logger.info("sumCardSpendList: " + ipStr + " :" + wxCardSpend.toString()); | |||
| if (wxCardSpend == null) wxCardSpend = new WxCardSpendVo(); | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| wxCardSpend.updateTenantInfo(user); | |||
| wxCardSpend.setMerchantId(user.getMerchantId()); | |||
| final List<Map<String, Object>> mapList = wxCardSpendService.sumCardSpendForMerchant(wxCardSpend); | |||
| @@ -58,7 +58,7 @@ public class WxCouponChannelController extends BaseController { | |||
| if (wxCouponChannel.getStatus() != null && wxCouponChannel.getStatus() == -1) { | |||
| wxCouponChannel.setStatus(null); | |||
| } | |||
| wxCouponChannel.setMerchantId(getUser().getMerchantId()); | |||
| wxCouponChannel.setMerchantId(getLoginBUser().getMerchantId()); | |||
| wxCouponChannel.updateTenantInfo(getTenantInfo()); | |||
| wxCouponChannel.setSortColumns(BaseEntity.SortField.CCUpdateDate_DESC); | |||
| @@ -69,7 +69,7 @@ public class WxCouponController extends BaseController { | |||
| if(null == wxCoupon.getSourceType()){ | |||
| wxCoupon.setSourceType(EnumCouponSourceType.COUPONSource_Bapi.getCode()); | |||
| } | |||
| wxCoupon.setMerchantId(getUser().getMerchantId()); | |||
| wxCoupon.setMerchantId(getLoginBUser().getMerchantId()); | |||
| if(StringUtils.isNotBlank(wxCoupon.getSortColumn())){ | |||
| wxCoupon.setSortColumn("c."+wxCoupon.getSortColumn()); | |||
| @@ -97,7 +97,7 @@ public class WxCouponController extends BaseController { | |||
| EnumCouponType.COUPON_PRESS.getCode()}; | |||
| wxCoupon.setTypes(Arrays.asList(typeArray)); | |||
| wxCoupon.setMerchantId(getUser().getMerchantId()); | |||
| wxCoupon.setMerchantId(getLoginBUser().getMerchantId()); | |||
| if(StringUtils.isNotBlank(wxCoupon.getSortColumn())){ | |||
| wxCoupon.setSortColumn("c."+wxCoupon.getSortColumn()); | |||
| } | |||
| @@ -173,8 +173,8 @@ public class WxCouponController extends BaseController { | |||
| if (!hasMerchantCouponFlow()) { | |||
| return new ResultData(Result.ERROR,EnumFlowKey.B_COUPON_MERCHANT_CREATE.getMessage()+"未配置审批流程"); | |||
| } | |||
| WxMerchantBUser buser = getUser(); | |||
| wxFlowService.start(generateFlowParams(EnumFlowKey.B_COUPON_MERCHANT_CREATE,EnumCouponAppType.PUT,coupon,wxCoupon.getRemark(), buser.getPhone()), getBuserId(), buser.getName(), coupon); | |||
| WxMerchantBUser buser = getLoginBUser(); | |||
| wxFlowService.start(generateFlowParams(EnumFlowKey.B_COUPON_MERCHANT_CREATE,EnumCouponAppType.PUT,coupon,wxCoupon.getRemark(), buser.getPhone()), buser.getId(), buser.getName(), coupon); | |||
| return new ResultData(Result.SUCCESS,"提交审批成功"); | |||
| } | |||
| @@ -194,7 +194,7 @@ public class WxCouponController extends BaseController { | |||
| wxCoupon.setSourceType(EnumCouponSourceType.COUPONSource_Bapi.getCode()); | |||
| } | |||
| List<WxMerchant> merchantList = new ArrayList<>(); | |||
| WxMerchant wxMerchant = wxMerchantService.getById(getUser().getMerchantId()); | |||
| WxMerchant wxMerchant = wxMerchantService.getById(getLoginBUser().getMerchantId()); | |||
| merchantList.add(wxMerchant); | |||
| wxCoupon.setMerchantParams(JSONObject.toJSONString(merchantList)); | |||
| @@ -205,9 +205,10 @@ public class WxCouponController extends BaseController { | |||
| } | |||
| redisLock.setCouponStock(wxCoupon.getId(), wxCoupon.getRemainInventory()); | |||
| //启动投放审批 | |||
| WxMerchantBUser buser = getLoginBUser(); | |||
| if(wxCoupon.getFlowParams() !=null && wxCoupon.getFlowParams().size()>0) { | |||
| wxCoupon.getFlowParams().put("businessId",wxCoupon.getId()); | |||
| wxFlowService.start(wxCoupon.getFlowParams(), getBuserId(), getUser().getName(), tenantEntity); | |||
| wxFlowService.start(wxCoupon.getFlowParams(), buser.getId(), buser.getName(), tenantEntity); | |||
| //修改coupon applyStatus状态为审核中 | |||
| wxCoupon.setPutApplyStatus(EnumRentContractAppStatus.APPLYING.getCode()); | |||
| } | |||
| @@ -236,7 +237,7 @@ public class WxCouponController extends BaseController { | |||
| } | |||
| List<WxMerchant> merchantList = new ArrayList<>(); | |||
| WxMerchant wxMerchant = wxMerchantService.getById(getUser().getMerchantId()); | |||
| WxMerchant wxMerchant = wxMerchantService.getById(getLoginBUser().getMerchantId()); | |||
| merchantList.add(wxMerchant); | |||
| wxCoupon.setMerchantParams(JSONObject.toJSONString(merchantList)); | |||
| @@ -83,7 +83,7 @@ public class WxCouponOrderController extends BaseController { | |||
| @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), | |||
| @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) | |||
| public ResultData listUnverified(String date, Integer pageNum, Integer pageSize) { | |||
| return wxCouponOrderService.listOnDateAsPage(getUser().getId(), date, pageNum, pageSize, false); | |||
| return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, pageNum, pageSize, false); | |||
| } | |||
| @ApiOperation("核销流水分页列表接口") | |||
| @@ -93,7 +93,7 @@ public class WxCouponOrderController extends BaseController { | |||
| @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), | |||
| @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) | |||
| public ResultData listVerified(String date, Integer pageNum, Integer pageSize) { | |||
| return wxCouponOrderService.listOnDateAsPage(getUser().getId(), date, pageNum, pageSize, true); | |||
| return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, pageNum, pageSize, true); | |||
| } | |||
| @@ -103,7 +103,7 @@ public class WxCouponOrderController extends BaseController { | |||
| @ApiImplicitParams({ | |||
| @ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query")}) | |||
| public ResultData getUnverifiedAmountOnDate(String date) { | |||
| return wxCouponOrderService.listOnDateAsPage(getUser().getId(), date, null, null, false); | |||
| return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, null, null, false); | |||
| } | |||
| @RedisCache | |||
| @@ -112,7 +112,7 @@ public class WxCouponOrderController extends BaseController { | |||
| @ApiImplicitParams({ | |||
| @ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query")}) | |||
| public ResultData getVerifiedAmountOnDate(String date) { | |||
| return wxCouponOrderService.listOnDateAsPage(getUser().getId(), date, null, null, true); | |||
| return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, null, null, true); | |||
| } | |||
| @@ -125,8 +125,8 @@ public class WxCouponOrderController extends BaseController { | |||
| if (couponOrderId == null) { | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | |||
| } | |||
| Long bUserId = getUser().getId(); | |||
| WxMerchantBUser wxMerchantBUser = wxMerchantBUserService.getById(getUser().getId()); | |||
| Long bUserId = getLoginBUser().getId(); | |||
| WxMerchantBUser wxMerchantBUser = wxMerchantBUserService.getById(getLoginBUser().getId()); | |||
| if (wxMerchantBUser == null) { | |||
| logger.error("用户不存在:" + bUserId); | |||
| throw new MallinkException(ErrorCode.USER_IS_EMPTY); | |||
| @@ -279,12 +279,16 @@ public class WxCouponOrderController extends BaseController { | |||
| return new ResultData(ErrorCode.COUPON_ORDER_IS_NULL); | |||
| } | |||
| WxMerchantBUser wxMerchantBUser = wxMerchantBUserService.getById(getUser().getId()); | |||
| WxMerchantBUser wxMerchantBUser = wxMerchantBUserService.getById(getLoginBUser().getId()); | |||
| if (wxMerchantBUser == null) { | |||
| logger.error("核销员ID不存在:" + getUser().getId()); | |||
| logger.error("核销员ID不存在:" + getLoginBUser().getId()); | |||
| throw new MallinkException(ErrorCode.USER_IS_EMPTY.getCode(), "核销员ID不存在或者无权限"); | |||
| } | |||
| wxMerchantBUser.setBuserId(getBuserId()); | |||
| Long bUserId = getWxBuserId(); | |||
| if (null != bUserId) { | |||
| wxMerchantBUser.setBuserId(bUserId); | |||
| } | |||
| WxCouponOrder couponOrder = null; | |||
| try { | |||
| couponOrder = wxCouponOrderService.verify(wxCouponOrder, wxMerchantBUser); | |||
| @@ -56,7 +56,7 @@ public class WxCouponSendController extends BaseController { | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | |||
| } | |||
| wxCouponSend.updateTenantInfo(getTenantInfo()); | |||
| wxCouponSend.setMerchantId(getUser().getMerchantId()); | |||
| wxCouponSend.setMerchantId(getLoginBUser().getMerchantId()); | |||
| if (Objects.nonNull(wxCouponSend.getExpired()) && Objects.equals(wxCouponSend.getExpired(), 0)) { | |||
| wxCouponSend.setMerchantRemain(0); | |||
| } | |||
| @@ -142,8 +142,9 @@ public class WxCouponSendController extends BaseController { | |||
| if (StringUtils.isNotBlank(tenantEntity.getParentTenantId())) { | |||
| params.put("parentTenantId", tenantEntity.getParentTenantId()); | |||
| } | |||
| params.put("finalTenantId", tenantEntity.getFinalTenantId()); | |||
| params.put("channelType", channelType); | |||
| params.put("merchantId", getUser().getMerchantId()); | |||
| params.put("merchantId", getLoginBUser().getMerchantId()); | |||
| PageInfo<WxCouponActionLogVo> data = wxCouponActionLogService.getActionLog(params, pageNum, pageSize); | |||
| return new ResultData(data); | |||
| } | |||
| @@ -4,6 +4,7 @@ import com.github.pagehelper.PageInfo; | |||
| import com.iformall.common.ErrorCode; | |||
| import com.iformall.common.Result; | |||
| import com.iformall.common.ResultData; | |||
| import com.iformall.domain.po.WxBuser; | |||
| import com.iformall.domain.po.WxCUserBasicInfo; | |||
| import com.iformall.domain.po.WxCreditHistory; | |||
| import com.iformall.domain.po.WxMerchant; | |||
| @@ -60,10 +61,10 @@ public class WxCreditHistoryController extends BaseController { | |||
| log.debug("[" + getIpAddr() + "] WxCreditHistoryController::findByMerchantIdAndSpend"); | |||
| WxMerchant wxMerchant = new WxMerchant(); | |||
| wxMerchant.setStatus(EnumYesOrNo.YES.getCode()); | |||
| wxMerchant.setId(getUser().getMerchantId()); | |||
| wxMerchant.setId(getLoginBUser().getMerchantId()); | |||
| wxMerchant = wxMerchantService.findOne(wxMerchant); | |||
| //普通商户只允许查询自己的消费金额所增加的积分 | |||
| if (wxMerchant.getIsAdmin() != EnumYesOrNo.YES.getCode() && merchantId.longValue() != getUser().getMerchantId().longValue()) { | |||
| if (wxMerchant.getIsAdmin() != EnumYesOrNo.YES.getCode() && merchantId.longValue() != getLoginBUser().getMerchantId().longValue()) { | |||
| return new ResultData(ErrorCode.USER_NO_PERMISSION); | |||
| } | |||
| if(Objects.isNull(merchantId)|| StringUtils.isEmpty(spendStr)||Objects.isNull(userId)) { | |||
| @@ -99,28 +100,31 @@ public class WxCreditHistoryController extends BaseController { | |||
| public ResultData add(@RequestBody WxCreditHistory wxCreditHistory) { | |||
| log.debug("[" + getIpAddr() + "] WxCreditHistoryController::add"); | |||
| wxCreditHistory.updateTenantInfo(getTenantInfo()); | |||
| wxCreditHistory.setOperatorId(getUser().getId()); | |||
| wxCreditHistory.setOperatorId(getLoginBUser().getId()); | |||
| WxMerchant wxMerchant = new WxMerchant(); | |||
| wxMerchant.setId(getUser().getMerchantId()); | |||
| wxMerchant.setId(getLoginBUser().getMerchantId()); | |||
| wxMerchant.setStatus(EnumMerchantStatus.VALID.getCode()); | |||
| WxMerchant merchant = wxMerchantService.findOne(wxMerchant); | |||
| //消费积分:取当前人的商户ID | |||
| if (wxCreditHistory.getCreditType() == EnumScoreType.REDUCE_CREDIT.getCode()) { | |||
| wxCreditHistory.setMerchantId(getUser().getMerchantId()); | |||
| wxCreditHistory.setMerchantId(getLoginBUser().getMerchantId()); | |||
| } else { | |||
| //新增积分: | |||
| //如果为商管商户 则消费商户按前端传入的进行记录 | |||
| if (merchant != null && merchant.getIsAdmin() != null && merchant.getIsAdmin() == 1) { | |||
| wxCreditHistory.setMerchantId(wxCreditHistory.getMerchantId()); | |||
| } else { | |||
| wxCreditHistory.setMerchantId(getUser().getMerchantId()); | |||
| wxCreditHistory.setMerchantId(getLoginBUser().getMerchantId()); | |||
| } | |||
| } | |||
| //B端操作用户 | |||
| wxCreditHistory.setOperatorType(EnumUserType.BUSER.getCode()); | |||
| try { | |||
| wxCreditHistoryService.creditUsercheck(wxCreditHistory.getCUserId(),wxCreditHistory); | |||
| wxCreditHistory.setBuserId(getBuser().getId()); | |||
| WxBuser buser = getWxBuser(); | |||
| if (null != buser) { | |||
| wxCreditHistory.setBuserId(buser.getId()); | |||
| } | |||
| WxCreditHistory credit = wxCreditHistoryService.saveOrUpdate(wxCreditHistory); | |||
| //更新标签 | |||
| if (wxCreditHistory.getTags() != null && !wxCreditHistory.getTags().isEmpty()) { | |||
| @@ -141,7 +145,7 @@ public class WxCreditHistoryController extends BaseController { | |||
| public ResultData list(@ModelAttribute WxCreditHistory wxCreditHistory, Integer pageNum, Integer pageSize) { | |||
| log.debug("[" + getIpAddr() + "] WxCreditHistoryController::list"); | |||
| if (null == wxCreditHistory) wxCreditHistory = new WxCreditHistory(); | |||
| WxMerchantBUser bUser = getUser(); | |||
| WxMerchantBUser bUser = getLoginBUser(); | |||
| WxMerchant merchant = wxMerchantService.getById(wxCreditHistory.getMerchantId()); | |||
| if (merchant != null && merchant.getIsAdmin() != null && merchant.getIsAdmin() == 1) { | |||
| wxCreditHistory.setOperatorId(bUser.getId()); | |||
| @@ -58,7 +58,7 @@ public class WxDateAmountRecordController extends BaseController { | |||
| List<AmountRecordVo> list = new ArrayList<>(); | |||
| WxDateAmountRecord temp = new WxDateAmountRecord(); | |||
| WxMerchantBUser u = getUser(); | |||
| WxMerchantBUser u = getLoginBUser(); | |||
| temp.updateTenantInfo(u); | |||
| temp.setMerchantId(u.getMerchantId()); | |||
| temp.setType(dateAmtType); | |||
| @@ -426,7 +426,7 @@ public class WxInfoController extends BaseController { | |||
| } | |||
| WxMaService wxMaService = getWeappService(appId); | |||
| WxBuser buser = getBuser(); | |||
| WxBuser buser = getWxBuser(); | |||
| try { | |||
| // 解密 | |||
| WxMaPhoneNumberInfo phoneNoInfo = wxMaService.getUserService().getPhoneNoInfo(session_key, encryptedData, iv); | |||
| @@ -458,7 +458,7 @@ public class WxInfoController extends BaseController { | |||
| @ApiOperation(value = "判断用户是否完成授权", notes = "") | |||
| public ResultData checkWechatStatus() { | |||
| Map resultMap = new HashMap(); | |||
| WxBuser user = getBuser(); | |||
| WxBuser user = getWxBuser(); | |||
| if (StringUtils.isNotBlank(user.getNickName())) { | |||
| resultMap.put("nickName", user.getNickName()); | |||
| } else { | |||
| @@ -489,7 +489,7 @@ public class WxInfoController extends BaseController { | |||
| @ApiOperation(value = "判断用户是否完成昵称授权", notes = "") | |||
| public ResultData checkUserStatus() { | |||
| Map resultMap = new HashMap(); | |||
| WxBuser user = getBuser(); | |||
| WxBuser user = getWxBuser(); | |||
| if (StringUtils.isNotBlank(user.getNickName())) { | |||
| resultMap.put("nickName", user.getNickName()); | |||
| } else { | |||
| @@ -508,7 +508,7 @@ public class WxInfoController extends BaseController { | |||
| @ApiOperation(value = "判断用户是否完成手机授权", notes = "") | |||
| public ResultData checkPhoneStatus() { | |||
| Map resultMap = new HashMap(); | |||
| WxBuser user = getBuser(); | |||
| WxBuser user = getWxBuser(); | |||
| if (StringUtils.isNotBlank(user.getPhone())) { | |||
| resultMap.put("phone", user.getPhone()); | |||
| } else { | |||
| @@ -546,7 +546,7 @@ public class WxInfoController extends BaseController { | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "iv不能为空"); | |||
| } | |||
| WxBuser user = getBuser(); | |||
| WxBuser user = getWxBuser(); | |||
| if (user != null) { | |||
| logger.debug(user.toString()); | |||
| @@ -588,7 +588,7 @@ public class WxInfoController extends BaseController { | |||
| String systemInfo = map.get("systemInfo"); | |||
| WxBuser user = getBuser(); | |||
| WxBuser user = getWxBuser(); | |||
| if (StringUtils.isNotBlank(systemInfo)) { | |||
| JSONObject extraInfo = new JSONObject(); | |||
| extraInfo.put("systemInfo", JSONObject.parseObject(systemInfo)); | |||
| @@ -606,7 +606,7 @@ public class WxInfoController extends BaseController { | |||
| String longitude = map.get("longitude"); | |||
| String latitude = map.get("latitude"); | |||
| WxBuser user = getBuser(); | |||
| WxBuser user = getWxBuser(); | |||
| if (!StringUtils.isBlank(longitude)) { | |||
| user.setLongitude(BigDecimal.valueOf(Double.valueOf(longitude))); | |||
| } | |||
| @@ -624,7 +624,7 @@ public class WxInfoController extends BaseController { | |||
| String scene = map.get("scene"); | |||
| WxBuser user = getBuser(); | |||
| WxBuser user = getWxBuser(); | |||
| if (StringUtils.isBlank(user.getScene())) { | |||
| if (StringUtils.isNotBlank(scene)) { | |||
| user.setScene(scene); | |||
| @@ -70,7 +70,7 @@ public class WxMallController extends BaseController { | |||
| @GetMapping("/mallInfo") | |||
| @ApiImplicitParam(name = "appId", value = "appId", dataType = "String", paramType = "query", required = true) | |||
| public ResultData getMallInfo(String appId) { | |||
| WxMerchantBUser buUser = getUser(); | |||
| WxMerchantBUser buUser = getLoginBUser(); | |||
| WxMall mall = wxMallService.getByTenantInfo(buUser); | |||
| if (mall == null) { | |||
| return new ResultData(ErrorCode.MALL_INFO_NOT_FOUND); | |||
| @@ -65,7 +65,7 @@ public class WxMemController extends BaseController { | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "memCode转换失败"); | |||
| } | |||
| WxMerchantBUser bUser = getUser(); | |||
| WxMerchantBUser bUser = getLoginBUser(); | |||
| // WxCUser cUser = userService.getById(id); | |||
| // if(cUser == null) { | |||
| @@ -14,6 +14,7 @@ import com.iformall.enums.EnumCreditLockedStatus; | |||
| import com.iformall.enums.EnumMerchantBUserStatus; | |||
| import com.iformall.enums.EnumMerchantStatus; | |||
| import com.iformall.service.*; | |||
| import com.iformall.utils.Constant; | |||
| import com.iformall.utils.HashUtil; | |||
| import com.iformall.utils.IPUtil; | |||
| import io.swagger.annotations.Api; | |||
| @@ -57,6 +58,7 @@ public class WxMerchantBUserController extends BaseController { | |||
| @Autowired | |||
| private WxScoreRulesService wxScoreRulesService; | |||
| @RedisCache | |||
| @ApiOperation("查寻当bUser详情接口") | |||
| @@ -64,7 +66,7 @@ public class WxMerchantBUserController extends BaseController { | |||
| public ResultData detail() { | |||
| Map resultMap = new HashMap(); | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| if (user == null){ | |||
| return new ResultData(ErrorCode.USER_IS_EMPTY); | |||
| @@ -169,6 +171,7 @@ public class WxMerchantBUserController extends BaseController { | |||
| Map<String, Object> resultMap = new HashMap<>(); | |||
| resultMap.put("bUserId", orgUser.getId()); | |||
| resultMap.put("logined", true); | |||
| request.setAttribute(Constant.LOGIN_B_USER_KEY, orgUser.getId()); | |||
| return new ResultData(resultMap); | |||
| } else { | |||
| return new ResultData(ErrorCode.PASSWORD_ERROR); | |||
| @@ -188,6 +191,8 @@ public class WxMerchantBUserController extends BaseController { | |||
| Map<String, Object> resultMap = new HashMap<>(); | |||
| resultMap.put("merchantList", merchantListInfo); | |||
| resultMap.put("logined", true); | |||
| resultMap.put("bUserId", orgUser.getId()); | |||
| request.setAttribute(Constant.LOGIN_B_USER_KEY, orgUser.getId()); | |||
| return new ResultData(resultMap); | |||
| } else { | |||
| logger.error(ErrorCode.PASSWORD_ERROR.getMessage()); | |||
| @@ -105,8 +105,8 @@ public class WxMerchantController extends BaseController { | |||
| public ResultData getOpenIdByPhone(@ModelAttribute String phone) { | |||
| log.debug("[" + getIpAddr() + "] WxMerchantController::getOpenIdByPhone"); | |||
| // hasPermission | |||
| WxMerchantBUser user = getUser(); | |||
| WxBuser buser = getBuser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| WxBuser buser = getWxBuser(); | |||
| WxMerchant merchant = new WxMerchant(); | |||
| merchant.setId(user.getMerchantId()); | |||
| WxMerchant wxMerchant = wxMerchantService.findOne(merchant); | |||
| @@ -133,8 +133,8 @@ public class WxMerchantController extends BaseController { | |||
| } | |||
| public boolean hasPermission() { | |||
| WxMerchantBUser user = getUser(); | |||
| WxBuser buser = getBuser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| WxBuser buser = getWxBuser(); | |||
| WxMerchant merchant = new WxMerchant(); | |||
| merchant.setId(user.getMerchantId()); | |||
| WxMerchant wxMerchant = wxMerchantService.findOne(merchant); | |||
| @@ -33,7 +33,7 @@ public class WxMerchantSubsidyController extends BaseController { | |||
| String ipStr = getIpAddr(); | |||
| logger.info("subsidy/sum: " + ipStr + " :" + wxMerchantSubsidy.toString()); | |||
| if (wxMerchantSubsidy == null) wxMerchantSubsidy = new WxMerchantSubsidyVo(); | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| wxMerchantSubsidy.updateTenantInfo(user); | |||
| wxMerchantSubsidy.setMerchantId(user.getMerchantId()); | |||
| List<Map<String, Object>> retMap = wxMerchantSubsidyService.sumForSubsidy(wxMerchantSubsidy); | |||
| @@ -49,7 +49,7 @@ public class WxMerchantSubsidyController extends BaseController { | |||
| String ipStr = getIpAddr(); | |||
| logger.info("subsidy/list: " + ipStr + " :" + wxMerchantSubsidy.toString()); | |||
| if (wxMerchantSubsidy == null) wxMerchantSubsidy = new WxMerchantSubsidyVo(); | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| wxMerchantSubsidy.updateTenantInfo(user); | |||
| wxMerchantSubsidy.setMerchantId(user.getMerchantId()); | |||
| final PageInfo<WxMerchantSubsidyVo> page = wxMerchantSubsidyService.listAsPage(wxMerchantSubsidy, pageNum, pageSize); | |||
| @@ -63,7 +63,7 @@ public class WxMerchantSubsidyController extends BaseController { | |||
| if (null == wxMerchantSubsidy) { | |||
| wxMerchantSubsidy = new WxMerchantSubsidyVo(); | |||
| } | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| wxMerchantSubsidy.updateTenantInfo(user); | |||
| wxMerchantSubsidy.setMerchantId(user.getMerchantId()); | |||
| Map<String, Long> data = wxMerchantSubsidyService.summary(wxMerchantSubsidy); | |||
| @@ -39,20 +39,20 @@ public class WxMerchantTradeDailyController extends BaseController { | |||
| @GetMapping("/getVolume") | |||
| public ResultData getVolume(WxMerchantTradeDaily wxMerchantTradeDaily) { | |||
| wxMerchantTradeDaily.updateTenantInfo(getTenantInfo()); | |||
| return wxMerchantTradeDailyService.getVolume(wxMerchantTradeDaily,getUser().getId()); | |||
| return wxMerchantTradeDailyService.getVolume(wxMerchantTradeDaily,getLoginBUser().getId()); | |||
| } | |||
| @ApiOperation("获得近7日解单") | |||
| @GetMapping("/getVolumeOfWeek") | |||
| public ResultData getVolumeOfWeek() { | |||
| return wxMerchantTradeDailyService.getVolumeOfWeek(getUser().getId()); | |||
| return wxMerchantTradeDailyService.getVolumeOfWeek(getLoginBUser().getId()); | |||
| } | |||
| @ApiOperation("上报每日解单") | |||
| @GetMapping("/reportDailyVolume") | |||
| @ApiImplicitParam(name = "volume", value = "总金额(分)", dataType = "Integer", paramType = "query", required = true) | |||
| public ResultData saveDailyTradingVolume(Integer volume) { | |||
| return wxMerchantTradeDailyService.saveDailyTradingVolume(getUser().getId(), volume); | |||
| return wxMerchantTradeDailyService.saveDailyTradingVolume(getLoginBUser().getId(), volume); | |||
| } | |||
| /** | |||
| @@ -82,7 +82,7 @@ public class WxMerchantTradeDailyController extends BaseController { | |||
| wxMerchantTradeDaily.setTradeAmt(Double.parseDouble(wxMerchantTradeDaily.getTradeAmt())*100 +""); | |||
| } | |||
| WxMerchantBUser user = wxMerchantBUserService.getById(getUser().getId()); | |||
| WxMerchantBUser user = wxMerchantBUserService.getById(getLoginBUser().getId()); | |||
| if (user==null) | |||
| return new ResultData(ErrorCode.USER_IS_EMPTY); | |||
| WxMerchant merchant = wxMerchantService.getById(user.getMerchantId()); | |||
| @@ -103,9 +103,9 @@ public class WxMerchantTradeDailyController extends BaseController { | |||
| } | |||
| } | |||
| wxMerchantTradeDaily.setbUserId(getUser().getId()); | |||
| wxMerchantTradeDaily.setbUserId(getLoginBUser().getId()); | |||
| logger.info("1------------------------------------" + wxMerchantTradeDaily.getbUserId()); | |||
| wxMerchantTradeDaily.setBUserId(getUser().getId()); | |||
| wxMerchantTradeDaily.setBUserId(getLoginBUser().getId()); | |||
| logger.info("2------------------------------------" + wxMerchantTradeDaily.getBUserId()); | |||
| wxMerchantTradeDailyService.saveOrUpdate(wxMerchantTradeDaily); | |||
| return new ResultData(); | |||
| @@ -126,7 +126,7 @@ public class WxMerchantTradeDailyController extends BaseController { | |||
| SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd"); | |||
| //根据userid查询merchantId | |||
| WxMerchantBUser user = wxMerchantBUserService.getById(getUser().getId()); | |||
| WxMerchantBUser user = wxMerchantBUserService.getById(getLoginBUser().getId()); | |||
| if (user==null) | |||
| return new ResultData(ErrorCode.USER_IS_EMPTY); | |||
| WxMerchant merchant = wxMerchantService.getById(user.getMerchantId()); | |||
| @@ -88,7 +88,7 @@ public class WxMicroPayController extends BaseController { | |||
| String ipStr = IPUtil.getIpAddr(request); | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| WxOrder order = null; | |||
| try { | |||
| @@ -129,7 +129,7 @@ public class WxMicroPayController extends BaseController { | |||
| } | |||
| private ResultData queryMicopayOrder(String payOrderIdStr,String orderIdStr,EnumPayWay payWay) { | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| if (StringUtils.isBlank(payOrderIdStr)) { | |||
| logger.error("payOrderId不能为空"); | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "payOrderId不能为空"); | |||
| @@ -240,7 +240,7 @@ public class WxMicroPayController extends BaseController { | |||
| @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query",required = true), | |||
| @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query",required = true)}) | |||
| public ResultData listMicroPay(String date, Integer pageNum, Integer pageSize) { | |||
| return wxOrderService.microPayListOnDateAsPage(getUser().getId(), EnumOrderType.MICROPAY.getCode(), date, pageNum, pageSize); | |||
| return wxOrderService.microPayListOnDateAsPage(getLoginBUser().getId(), EnumOrderType.MICROPAY.getCode(), date, pageNum, pageSize); | |||
| } | |||
| @RedisCache | |||
| @@ -249,7 +249,7 @@ public class WxMicroPayController extends BaseController { | |||
| @ApiImplicitParams({ | |||
| @ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query")}) | |||
| public ResultData getMicroPayAmountOnDate(String date) { | |||
| return wxOrderService.microPayListOnDateAsPage(getUser().getId(), EnumOrderType.MICROPAY.getCode(), date, null, null); | |||
| return wxOrderService.microPayListOnDateAsPage(getLoginBUser().getId(), EnumOrderType.MICROPAY.getCode(), date, null, null); | |||
| } | |||
| @ApiOperation("付款码支付某日异常交易分页列表接口") | |||
| @@ -259,7 +259,7 @@ public class WxMicroPayController extends BaseController { | |||
| @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query",required = true), | |||
| @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query",required = true)}) | |||
| public ResultData listMicroPayExp(String date, Integer pageNum, Integer pageSize) { | |||
| return wxOrderService.microPayExpListOnDateAsPage(getUser().getId(), EnumOrderType.MICROPAY.getCode(), date, pageNum, pageSize); | |||
| return wxOrderService.microPayExpListOnDateAsPage(getLoginBUser().getId(), EnumOrderType.MICROPAY.getCode(), date, pageNum, pageSize); | |||
| } | |||
| @@ -282,7 +282,7 @@ public class WxMicroPayController extends BaseController { | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | |||
| } | |||
| WxMerchantBUser bUser = getUser(); | |||
| WxMerchantBUser bUser = getLoginBUser(); | |||
| WxAppinfo appinfo = getAppInfo(bUser.getAppId()); | |||
| try { | |||
| ResultData rd = wxRefundOrderService.createRefundOrderFromMicroPay(appinfo, orderId, EnumPayType.PAY_B_REFUND, bUser.getId()); | |||
| @@ -303,7 +303,7 @@ public class WxMicroPayController extends BaseController { | |||
| @PostMapping("order_create_v2") | |||
| public ResultData saveMicopayOrderV2(@RequestBody Map<String, String> paramMap, HttpServletRequest request) { | |||
| logger.info("saveMicopayOrderV2: " + paramMap.toString()); | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| String cUserIdStr = paramMap.get("cUserId"); | |||
| String phone = paramMap.get("phone"); | |||
| String payPriceStr = paramMap.get("payPrice"); | |||
| @@ -385,7 +385,7 @@ public class WxMicroPayController extends BaseController { | |||
| private ResultData saveMicopayPayOrder(String orderIdStr,String couponOrderIdStr,String authCode,String payPriceStr, | |||
| EnumPayWay payWay, HttpServletRequest request) { | |||
| WxMerchantBUser user = getUser(); | |||
| WxMerchantBUser user = getLoginBUser(); | |||
| if (StringUtils.isBlank(orderIdStr)) { | |||
| logger.error("orderId不能为空"); | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "orderId不能为空"); | |||
| @@ -413,7 +413,10 @@ public class WxMicroPayController extends BaseController { | |||
| logger.error("核销员ID不存在:" + user.getId()); | |||
| throw new MallinkException(ErrorCode.USER_IS_EMPTY.getCode(), "核销员ID不存在或者无权限"); | |||
| } | |||
| wxMerchantBUser.setBuserId(getBuserId()); | |||
| Long bUserId = getWxBuserId(); | |||
| if (null != bUserId) { | |||
| wxMerchantBUser.setBuserId(bUserId); | |||
| } | |||
| Long couponOrderId = 0L, orderId = 0L; | |||
| @@ -48,7 +48,7 @@ public class WxRefundOrderController extends BaseController { | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | |||
| } | |||
| WxMerchantBUser bUser = getUser(); | |||
| WxMerchantBUser bUser = getLoginBUser(); | |||
| WxAppinfo appinfo = getAppInfo(bUser.getAppId()); | |||
| try { | |||
| ResultData rd = wxRefundOrderService.createRefundOrder(appinfo, couponOrderId, EnumPayType.PAY_B_REFUND, bUser.getId()); | |||
| @@ -6,8 +6,10 @@ import com.iformall.annotation.TenantIgnore; | |||
| import com.iformall.common.ErrorCode; | |||
| import com.iformall.common.TenantThreadLocal; | |||
| import com.iformall.domain.po.WxBuser; | |||
| import com.iformall.domain.po.WxMerchantBUser; | |||
| import com.iformall.exception.MallinkException; | |||
| import com.iformall.service.WxBuserTokenService; | |||
| import com.iformall.service.WxMerchantBUserService; | |||
| import com.iformall.utils.Constant; | |||
| import org.apache.commons.lang3.StringUtils; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| @@ -29,6 +31,9 @@ public class AuthorizationInterceptor extends HandlerInterceptorAdapter { | |||
| @Autowired | |||
| private WxBuserTokenService userTokenService; | |||
| @Autowired | |||
| private WxMerchantBUserService wxMerchantBUserService; | |||
| @Override | |||
| public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { | |||
| @@ -50,25 +55,48 @@ public class AuthorizationInterceptor extends HandlerInterceptorAdapter { | |||
| if(StringUtils.isBlank(token)){ | |||
| token = request.getParameter("token"); | |||
| } | |||
| String bid = request.getHeader("bid"); | |||
| //如果header中不存在token,则从参数中获取token | |||
| if(StringUtils.isBlank(bid)){ | |||
| bid = request.getParameter("bid"); | |||
| } | |||
| //token为空 | |||
| if(StringUtils.isBlank(token)){ | |||
| //token为空, | |||
| if(StringUtils.isBlank(token) && StringUtils.isBlank(bid)){ | |||
| throw new MallinkException(ErrorCode.NET_TOKEN_EMPTY); | |||
| } | |||
| // 查询token信息 | |||
| WxBuser wxBuser = userTokenService.getByToken(token); | |||
| if (wxBuser == null || wxBuser.getExpireTime().getTime() < System.currentTimeMillis()) { | |||
| throw new MallinkException(ErrorCode.NET_TOKEN_INVALID.getCode(), "URL:" + request.getRequestURL() + " token失效,请重新登录"); | |||
| } | |||
| //设置userId到request里,后续根据userId,获取用户信息 | |||
| request.setAttribute(Constant.LOGIN_USER_KEY, wxBuser.getId()); | |||
| request.setAttribute(Constant.TENANT_ID, wxBuser.getTenantId()); | |||
| if (StringUtils.isNotBlank(wxBuser.getParentTenantId())) { | |||
| request.setAttribute(Constant.PARENT_TENANT_ID, wxBuser.getParentTenantId()); | |||
| String tenantId = null; | |||
| String parenTenantId = null; | |||
| if (!StringUtils.isBlank(token)) { | |||
| WxBuser wxBuser = userTokenService.getByToken(token); | |||
| if (wxBuser == null || wxBuser.getExpireTime().getTime() < System.currentTimeMillis()) { | |||
| throw new MallinkException(ErrorCode.NET_TOKEN_INVALID.getCode(), "URL:" + request.getRequestURL() + " token失效,请重新登录"); | |||
| } | |||
| //设置userId到request里,后续根据userId,获取用户信息 | |||
| tenantId = wxBuser.getTenantId(); | |||
| parenTenantId = wxBuser.getParentTenantId(); | |||
| request.setAttribute(Constant.LOGIN_USER_KEY, wxBuser.getId()); | |||
| request.setAttribute(Constant.TENANT_ID, tenantId); | |||
| if (StringUtils.isNotBlank(parenTenantId)) { | |||
| request.setAttribute(Constant.PARENT_TENANT_ID, parenTenantId); | |||
| } | |||
| }else if (!StringUtils.isBlank(bid)) { | |||
| WxMerchantBUser buser = wxMerchantBUserService.getById(Long.parseLong(bid)); | |||
| if (buser == null) { | |||
| throw new MallinkException(ErrorCode.NET_TOKEN_INVALID.getCode(), "URL:" + request.getRequestURL() + " bid失效,请重新登录"); | |||
| } | |||
| tenantId = buser.getTenantId(); | |||
| parenTenantId = buser.getParentTenantId(); | |||
| request.setAttribute(Constant.LOGIN_B_USER_KEY, buser.getId()); | |||
| request.setAttribute(Constant.TENANT_ID, tenantId); | |||
| if (StringUtils.isNotBlank(parenTenantId)) { | |||
| request.setAttribute(Constant.PARENT_TENANT_ID, parenTenantId); | |||
| } | |||
| } | |||
| @@ -82,12 +110,9 @@ public class AuthorizationInterceptor extends HandlerInterceptorAdapter { | |||
| if(tenantIgnoreAnnotation != null){ | |||
| TenantThreadLocal.remove(); | |||
| }else { | |||
| TenantThreadLocal.setCurrentThreadTenant(wxBuser.getTenantId(), wxBuser.getParentTenantId()); | |||
| TenantThreadLocal.setCurrentThreadTenant(tenantId, parenTenantId); | |||
| } | |||
| return true; | |||
| } | |||
| } | |||
| @@ -78,6 +78,7 @@ public class ChartDataSchedule { | |||
| for (WxMall wxMall : wxMalls) { | |||
| TenantEntity tenantEntity = wxMall.getTenantInfo(); | |||
| params.put("tenantId", tenantEntity.getTenantId()); | |||
| params.put("finalTenantId", tenantEntity.getFinalTenantId()); | |||
| if (StringUtils.isNotBlank(tenantEntity.getParentTenantId())) { | |||
| params.put("parentTenantId", wxMall.getTenantId()); | |||
| } | |||
| @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.annotation.TableName; | |||
| import com.fasterxml.jackson.annotation.JsonIgnore; | |||
| import com.iformall.domain.po.base.BaseEntity; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import com.iformall.domain.po.base.TenantEntityWithoutFinalTenantId; | |||
| import lombok.Data; | |||
| import lombok.EqualsAndHashCode; | |||
| @@ -22,7 +23,7 @@ import java.util.Objects; | |||
| @Data | |||
| @ToString(callSuper = true) | |||
| @EqualsAndHashCode(callSuper = true) | |||
| public class WxCUserBasicInfo extends TenantEntity { | |||
| public class WxCUserBasicInfo extends TenantEntityWithoutFinalTenantId { | |||
| protected Long id; | |||
| @@ -20,6 +20,10 @@ public class TenantEntity extends BaseEntity { | |||
| @io.swagger.annotations.ApiModelProperty(value="父租户ID",name="parentTenantId") | |||
| protected String parentTenantId; | |||
| @io.swagger.annotations.ApiModelProperty(value="父租户ID",name="parentTenantId") | |||
| @TableField(exist = false) | |||
| protected String finalTenantId; | |||
| @TableField(exist = false) | |||
| protected String shardTableSuffix; | |||
| @@ -30,6 +34,7 @@ public class TenantEntity extends BaseEntity { | |||
| if (StringUtils.isNotBlank(info.getParentTenantId())) { | |||
| setParentTenantId(info.getParentTenantId()); | |||
| } | |||
| setFinalTenantId(getFinalTenantId()); | |||
| } | |||
| public void updateTenantInfo(BaseTenantEntity info) { | |||
| @@ -38,6 +43,7 @@ public class TenantEntity extends BaseEntity { | |||
| if (StringUtils.isNotBlank(info.getParentTenantId())) { | |||
| setParentTenantId(info.getParentTenantId()); | |||
| } | |||
| setFinalTenantId(getFinalTenantId()); | |||
| } | |||
| public String getFinalTenantId() { | |||
| @@ -58,6 +64,7 @@ public class TenantEntity extends BaseEntity { | |||
| public void setTenantId(String tenantId) { | |||
| this.tenantId = tenantId; | |||
| setFinalTenantId(getFinalTenantId()); | |||
| } | |||
| public String getParentTenantId() { | |||
| @@ -66,5 +73,10 @@ public class TenantEntity extends BaseEntity { | |||
| public void setParentTenantId(String parentTenantId) { | |||
| this.parentTenantId = parentTenantId; | |||
| setFinalTenantId(getFinalTenantId()); | |||
| } | |||
| public void setFinalTenantId(String finalTenantId) { | |||
| this.finalTenantId = finalTenantId; | |||
| } | |||
| } | |||
| @@ -0,0 +1,51 @@ | |||
| package com.iformall.domain.po.base; | |||
| import lombok.EqualsAndHashCode; | |||
| import org.apache.commons.lang3.StringUtils; | |||
| /** | |||
| * @author Stormeye | |||
| * @date 2019/4/24 14:32 | |||
| */ | |||
| @EqualsAndHashCode(callSuper = true) | |||
| public class TenantEntityWithoutFinalTenantId extends BaseEntity { | |||
| private static final long serialVersionUID = 1441638860618733611L; | |||
| @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") | |||
| protected String tenantId; | |||
| @io.swagger.annotations.ApiModelProperty(value="父租户ID",name="parentTenantId") | |||
| protected String parentTenantId; | |||
| public void updateTenantInfo(TenantEntityWithoutFinalTenantId info) { | |||
| setTenantId(info.getTenantId()); | |||
| if (StringUtils.isNotBlank(info.getParentTenantId())) { | |||
| setParentTenantId(info.getParentTenantId()); | |||
| } | |||
| } | |||
| public void updateTenantInfo(BaseTenantEntity info) { | |||
| setTenantId(info.getTenantId()); | |||
| if (StringUtils.isNotBlank(info.getParentTenantId())) { | |||
| setParentTenantId(info.getParentTenantId()); | |||
| } | |||
| } | |||
| public String getTenantId() { | |||
| return tenantId; | |||
| } | |||
| public void setTenantId(String tenantId) { | |||
| this.tenantId = tenantId; | |||
| } | |||
| public String getParentTenantId() { | |||
| return parentTenantId; | |||
| } | |||
| public void setParentTenantId(String parentTenantId) { | |||
| this.parentTenantId = parentTenantId; | |||
| } | |||
| } | |||
| @@ -46,7 +46,7 @@ public interface WxCUserBasicInfoMapper extends CommonMapper<WxCUserBasicInfo, S | |||
| List<WxCUserBasicInfo> findBirthdayList(@Param("finalTenantId")String finalTenantId, @Param("begin")String begin, @Param("end")String end); | |||
| List<WxCUserBasicInfo> findBirthdayList1(@Param("tenantId")String tenantId,@Param("parentTenantId")String parentTenantId, @Param("begin")String begin, @Param("end")String end); | |||
| List<WxCUserBasicInfo> findBirthdayList1(@Param("finalTenantId")String finalTenantId,@Param("tenantId")String tenantId,@Param("parentTenantId")String parentTenantId, @Param("begin")String begin, @Param("end")String end); | |||
| long findCount(WxCUserBasicInfoDto dto); | |||
| long findCount1(@Param("tenantInfo")TenantEntity tenantInfo,@Param("basicInfo")WxCUserBasicInfoDto dto); | |||
| @@ -15,7 +15,7 @@ public interface WxCUserTagsMapper extends CommonMapper<WxCUserTags, String> { | |||
| List<WxCUserTags> findList(WxCUserTags wxCUserTags); | |||
| long countUser(@Param("tagIds")String tagIds,@Param("tenantId")String tenantId, | |||
| long countUser(@Param("tagIds")String tagIds,@Param("tenantId")String tenantId,@Param("finalTenantId")String finalTenantId, | |||
| @Param("startTime")Date startTime,@Param("endTime")Date endTime); | |||
| void updateNewId(CUserTagNewIdVo record); | |||
| @@ -49,7 +49,7 @@ public interface WxCouponOrderMapper extends CommonMapper<WxCouponOrder, Long> { | |||
| WxCouponOrderCVo findDetailOfCUser(@Param("id")Long id,@Param("tenantId")String tenantId); | |||
| WxCouponOrderCVo findSimpleDetailOfCUser(@Param("id")Long id,@Param("tenantId")String tenantId); | |||
| List<WxCouponOrderBVo> findListOfAdmin(WxCouponOrderBVo wxCouponOrder); | |||
| WxCouponOrderBVo findDetailOfAdmin(@Param("id")Long id,@Param("tenantId")String tenantId); | |||
| WxCouponOrderBVo findDetailOfAdmin(@Param("id")Long id,@Param("tenantId")String tenantId,@Param("finalTenantId")String finalTenantId); | |||
| //营销报表 券数据图表 | |||
| List<MarkingCouponDataReportVo> couponDataMap(HashMap<String,Object> params); | |||
| @@ -6,10 +6,12 @@ import org.apache.ibatis.annotations.Param; | |||
| import com.iformall.common.CommonMapper; | |||
| import com.iformall.domain.po.WxOrderPress; | |||
| import com.iformall.domain.vo.WxOrderPressVo; | |||
| public interface WxOrderPressMapper extends CommonMapper<WxOrderPress, Long> { | |||
| WxOrderPress selectById(@Param("id")Long id,@Param("tenantId")String tenantId); | |||
| List<WxOrderPress> findList(WxOrderPress wxOrderPress); | |||
| List<WxOrderPressVo> findPressList(Map paramMap); | |||
| } | |||
| @@ -551,6 +551,7 @@ public class DataTowerServiceImpl implements DataTowerService { | |||
| HashMap<String, Object> weekParams = new HashMap<>(); | |||
| weekParams.put("tenantEntitys",tenantEntitys); | |||
| weekParams.put("tenantId", tenantEntity.getTenantId()); | |||
| weekParams.put("finalTenantId", tenantEntity.getFinalTenantId()); | |||
| if (StringUtils.isNotBlank(tenantEntity.getParentTenantId())) { | |||
| weekParams.put("parentTenantId", tenantEntity.getParentTenantId()); | |||
| } | |||
| @@ -576,7 +576,7 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService,IExc | |||
| WxCUserBasicInfo basicQ = new WxCUserBasicInfo(); | |||
| basicQ.undateFinalTenantId(tenantEntity); | |||
| basicQ.setPhone(phone); | |||
| List<WxCUserBasicInfo> basicInfos = wxCUserBasicInfoMapper.selectList(new QueryWrapper(basicQ)); | |||
| List<WxCUserBasicInfo> basicInfos = wxCUserBasicInfoMapper.selectList(new QueryWrapper(basicQ)); | |||
| if (basicInfos != null && basicInfos.size() > 0) { | |||
| WxCUserBasicInfo wxCUserBasicInfo = basicInfos.get(0); | |||
| if (wxCUserBasicInfo.getPoins() != null) { | |||
| @@ -1202,7 +1202,7 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService,IExc | |||
| public List<WxCUserBasicInfo> findBirthdayList(TenantEntity tenantEntity, String format, String format1) { | |||
| if(StringUtils.isNotBlank(tenantEntity.getParentTenantId())){ | |||
| //关联微信表查询 | |||
| return wxCUserBasicInfoMapper.findBirthdayList1(tenantEntity.getTenantId(),tenantEntity.getParentTenantId(),format,format1); | |||
| return wxCUserBasicInfoMapper.findBirthdayList1(tenantEntity.getFinalTenantId(),tenantEntity.getTenantId(),tenantEntity.getParentTenantId(),format,format1); | |||
| }else{ | |||
| //直接查询本表 | |||
| String finalTenantId = tenantEntity.getTenantId(); | |||
| @@ -91,7 +91,7 @@ public class WxCUserTagsServiceImpl implements WxCUserTagsService { | |||
| @Override | |||
| public long countUser(TenantEntity tenantEntity, Long tagId, Date startTime, Date endTime ) { | |||
| String str = JSON.toJSONString(tagId); | |||
| return wxCUserTagsMapper.countUser(str, tenantEntity.getTenantId(), startTime, endTime); | |||
| return wxCUserTagsMapper.countUser(str, tenantEntity.getTenantId(),tenantEntity.getFinalTenantId(), startTime, endTime); | |||
| } | |||
| @@ -1054,6 +1054,7 @@ public class WxChartServiceImpl implements WxChartDataService { | |||
| HashMap<String, Object> datamap = new HashMap<>(); | |||
| HashMap<String, Object> weekParams = new HashMap<>(); | |||
| weekParams.put("tenantId", tenantEntity.getTenantId()); | |||
| weekParams.put("finalTenantId", tenantEntity.getFinalTenantId()); | |||
| if (StringUtils.isNotBlank(tenantEntity.getParentTenantId())) { | |||
| weekParams.put("parentTenantId", tenantEntity.getParentTenantId()); | |||
| } | |||
| @@ -2236,7 +2237,7 @@ public class WxChartServiceImpl implements WxChartDataService { | |||
| for (int i = 0; i < tags.length; i++) { | |||
| WxTags tag = new WxTags(); | |||
| tag.setName(tags[i].getMessage()); | |||
| tag.setCount(wxCUserTagsMapper.countUser(JSON.toJSONString(tags[i].getCode()), tenantEntity.getTenantId(), startTime, endTime)); | |||
| tag.setCount(wxCUserTagsMapper.countUser(JSON.toJSONString(tags[i].getCode()), tenantEntity.getTenantId(),tenantEntity.getFinalTenantId(), startTime, endTime)); | |||
| tagList.add(tag); | |||
| total -= tag.getCount(); | |||
| } | |||
| @@ -2271,7 +2272,7 @@ public class WxChartServiceImpl implements WxChartDataService { | |||
| for (int i = 0; i < tags.length; i++) { | |||
| WxTags tag = new WxTags(); | |||
| tag.setName(tags[i].getMessage()); | |||
| tag.setCount(wxCUserTagsMapper.countUser(JSON.toJSONString(tags[i].getCode()), tenantEntity.getTenantId(), startTime, endTime)); | |||
| tag.setCount(wxCUserTagsMapper.countUser(JSON.toJSONString(tags[i].getCode()), tenantEntity.getTenantId(),tenantEntity.getFinalTenantId(), startTime, endTime)); | |||
| tagList.add(tag); | |||
| total -= tag.getCount(); | |||
| } | |||
| @@ -220,6 +220,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { | |||
| dateMap.put("endDate", endDate); | |||
| dateMap.put("merchantId", wxMerchant.getId()); | |||
| dateMap.put("tenantId", wxMerchant.getTenantId()); | |||
| dateMap.put("finalTenantId", wxMerchant.getFinalTenantId()); | |||
| Map resultMap = new HashMap(); | |||
| @@ -314,7 +315,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { | |||
| @Override | |||
| public ResultData detailAdminVo(Long couponOrderId,TenantEntity tenantinfo) { | |||
| WxCouponOrderBVo wxCouponOrderBVo = wxCouponOrderMapper.findDetailOfAdmin(couponOrderId,tenantinfo.getTenantId()); | |||
| WxCouponOrderBVo wxCouponOrderBVo = wxCouponOrderMapper.findDetailOfAdmin(couponOrderId,tenantinfo.getTenantId(),tenantinfo.getFinalTenantId()); | |||
| if (wxCouponOrderBVo == null) | |||
| return new ResultData(ErrorCode.COUPON_ORDER_IS_NULL); | |||
| return new ResultData(wxCouponOrderBVo); | |||
| @@ -120,70 +120,70 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { | |||
| return new PageInfo<>(wxCreditHistoryVoList); | |||
| } | |||
| public void supplyCreditInfo(List<WxCreditHistoryVo> wxCreditHistoryVoList) { | |||
| List<Long> cUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.CUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); | |||
| List<Long> cUserBasicIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.CUSERBASIC.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); | |||
| List<Long> bUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.BUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); | |||
| List<Long> mallUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.MALLUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); | |||
| List<WxCUserBasicInfo> wxCUserList = Lists.newArrayList(); | |||
| List<WxCUserBasicInfo> wxCUserBasicInfoList = Lists.newArrayList(); | |||
| List<WxMerchantBUser> wxMerchantBUserList = Lists.newArrayList(); | |||
| List<MallUserInfo> mallUserInfoList = Lists.newArrayList(); | |||
| if (cUserIds != null && cUserIds.size() > 0) { | |||
| //兼容老数据 | |||
| WxCUserBasicInfo wxCUserBasicInfo = new WxCUserBasicInfo(); | |||
| wxCUserBasicInfo.setIds(cUserIds); | |||
| wxCUserList = wxCUserBasicInfoMapper.findList(wxCUserBasicInfo); | |||
| } | |||
| if (cUserBasicIds != null && cUserBasicIds.size() > 0) { | |||
| WxCUserBasicInfo wxCUserBasicInfo = new WxCUserBasicInfo(); | |||
| wxCUserBasicInfo.setIds(cUserBasicIds); | |||
| wxCUserBasicInfoList = wxCUserBasicInfoMapper.findList(wxCUserBasicInfo); | |||
| } | |||
| if (bUserIds != null && bUserIds.size() > 0) { | |||
| WxMerchantBUser wxMerchantBUser = new WxMerchantBUser(); | |||
| wxMerchantBUser.setIds(bUserIds); | |||
| wxMerchantBUserList = wxMerchantBUserMapper.findList(wxMerchantBUser); | |||
| } | |||
| if (mallUserIds != null && mallUserIds.size() > 0) { | |||
| MallUserInfo mallUserInfo = new MallUserInfo(); | |||
| mallUserInfo.setIds(mallUserIds); | |||
| mallUserInfoList = mallUserInfoMapper.findList(mallUserInfo); | |||
| } | |||
| for (WxCreditHistoryVo credit : wxCreditHistoryVoList) { | |||
| if (wxCUserList != null && wxCUserList.size() > 0) { | |||
| wxCUserList.stream().forEach(cUser -> { | |||
| if (cUser.getId().longValue() == credit.getOperatorId().longValue()) { | |||
| credit.setOperator(cUser.getNickName()); | |||
| } | |||
| }); | |||
| } | |||
| if (wxCUserBasicInfoList != null && wxCUserBasicInfoList.size() > 0) { | |||
| wxCUserBasicInfoList.stream().forEach(cUserBasicInfo -> { | |||
| if (cUserBasicInfo.getId().longValue() == credit.getOperatorId().longValue()) { | |||
| credit.setOperator(cUserBasicInfo.getNickName()); | |||
| } | |||
| }); | |||
| } | |||
| if (wxMerchantBUserList != null && wxMerchantBUserList.size() > 0) { | |||
| wxMerchantBUserList.stream().forEach(bUser -> { | |||
| if (bUser.getId().longValue() == credit.getOperatorId().longValue()) { | |||
| credit.setOperator(bUser.getName()); | |||
| } | |||
| }); | |||
| } | |||
| if (mallUserInfoList != null && mallUserInfoList.size() > 0) { | |||
| mallUserInfoList.stream().forEach(mallUser -> { | |||
| if (mallUser.getId().longValue() == credit.getOperatorId().longValue()) { | |||
| credit.setOperator(mallUser.getName()); | |||
| } | |||
| }); | |||
| } | |||
| if (Long.valueOf(EnumMerchantType.MERCHANT_MORE.getCode()).equals(credit.getMerchantId())) { | |||
| credit.setMerchantName(EnumMerchantType.MERCHANT_MORE.getMessage()); | |||
| } | |||
| } | |||
| } | |||
| // public void supplyCreditInfo(List<WxCreditHistoryVo> wxCreditHistoryVoList) { | |||
| // List<Long> cUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.CUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); | |||
| // List<Long> cUserBasicIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.CUSERBASIC.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); | |||
| // List<Long> bUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.BUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); | |||
| // List<Long> mallUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.MALLUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); | |||
| // List<WxCUserBasicInfo> wxCUserList = Lists.newArrayList(); | |||
| // List<WxCUserBasicInfo> wxCUserBasicInfoList = Lists.newArrayList(); | |||
| // List<WxMerchantBUser> wxMerchantBUserList = Lists.newArrayList(); | |||
| // List<MallUserInfo> mallUserInfoList = Lists.newArrayList(); | |||
| // if (cUserIds != null && cUserIds.size() > 0) { | |||
| // //兼容老数据 | |||
| // WxCUserBasicInfo wxCUserBasicInfo = new WxCUserBasicInfo(); | |||
| // wxCUserBasicInfo.setIds(cUserIds); | |||
| // wxCUserList = wxCUserBasicInfoMapper.findList(wxCUserBasicInfo); | |||
| // } | |||
| // if (cUserBasicIds != null && cUserBasicIds.size() > 0) { | |||
| // WxCUserBasicInfo wxCUserBasicInfo = new WxCUserBasicInfo(); | |||
| // wxCUserBasicInfo.setIds(cUserBasicIds); | |||
| // wxCUserBasicInfoList = wxCUserBasicInfoMapper.findList(wxCUserBasicInfo); | |||
| // } | |||
| // if (bUserIds != null && bUserIds.size() > 0) { | |||
| // WxMerchantBUser wxMerchantBUser = new WxMerchantBUser(); | |||
| // wxMerchantBUser.setIds(bUserIds); | |||
| // wxMerchantBUserList = wxMerchantBUserMapper.findList(wxMerchantBUser); | |||
| // } | |||
| // if (mallUserIds != null && mallUserIds.size() > 0) { | |||
| // MallUserInfo mallUserInfo = new MallUserInfo(); | |||
| // mallUserInfo.setIds(mallUserIds); | |||
| // mallUserInfoList = mallUserInfoMapper.findList(mallUserInfo); | |||
| // } | |||
| // for (WxCreditHistoryVo credit : wxCreditHistoryVoList) { | |||
| // if (wxCUserList != null && wxCUserList.size() > 0) { | |||
| // wxCUserList.stream().forEach(cUser -> { | |||
| // if (cUser.getId().longValue() == credit.getOperatorId().longValue()) { | |||
| // credit.setOperator(cUser.getNickName()); | |||
| // } | |||
| // }); | |||
| // } | |||
| // if (wxCUserBasicInfoList != null && wxCUserBasicInfoList.size() > 0) { | |||
| // wxCUserBasicInfoList.stream().forEach(cUserBasicInfo -> { | |||
| // if (cUserBasicInfo.getId().longValue() == credit.getOperatorId().longValue()) { | |||
| // credit.setOperator(cUserBasicInfo.getNickName()); | |||
| // } | |||
| // }); | |||
| // } | |||
| // if (wxMerchantBUserList != null && wxMerchantBUserList.size() > 0) { | |||
| // wxMerchantBUserList.stream().forEach(bUser -> { | |||
| // if (bUser.getId().longValue() == credit.getOperatorId().longValue()) { | |||
| // credit.setOperator(bUser.getName()); | |||
| // } | |||
| // }); | |||
| // } | |||
| // if (mallUserInfoList != null && mallUserInfoList.size() > 0) { | |||
| // mallUserInfoList.stream().forEach(mallUser -> { | |||
| // if (mallUser.getId().longValue() == credit.getOperatorId().longValue()) { | |||
| // credit.setOperator(mallUser.getName()); | |||
| // } | |||
| // }); | |||
| // } | |||
| // if (Long.valueOf(EnumMerchantType.MERCHANT_MORE.getCode()).equals(credit.getMerchantId())) { | |||
| // credit.setMerchantName(EnumMerchantType.MERCHANT_MORE.getMessage()); | |||
| // } | |||
| // } | |||
| // } | |||
| @Override | |||
| public WxCreditHistory getById(Long id,String tenantId) { | |||
| @@ -308,7 +308,7 @@ public class WxOrderGroupServiceImpl implements WxOrderGroupService { | |||
| return new ResultData(ErrorCode.COUPON_CHANNEL_IS_TAKE_OFF); | |||
| } | |||
| WxOrder wxOrder = new WxOrder(); | |||
| wxOrder.setTenantId(wxOrderGroup.getTenantId()); | |||
| wxOrder.updateTenantInfo(wxOrderGroup); | |||
| wxOrder.setId(wxOrderGroup.getOrderId()); | |||
| List<Map<String, Object>> couponOrderGroupList = wxOrderGroupMapper.queryOrderGroup(wxOrder); | |||
| if (couponOrderGroupList.isEmpty()) { | |||
| @@ -281,6 +281,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||
| dateMap.put("merchantId", wxMerchant.getId()); | |||
| dateMap.put("type", type); | |||
| dateMap.put("tenantId", wxMerchantBUser.getTenantId()); | |||
| dateMap.put("finalTenantId", wxMerchantBUser.getFinalTenantId()); | |||
| Map resultMap = new HashMap(); | |||
| @@ -344,7 +345,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||
| dateMap.put("merchantId", wxMerchant.getId()); | |||
| dateMap.put("type", type); | |||
| dateMap.put("tenantId", wxMerchantBUser.getTenantId()); | |||
| dateMap.put("finalTenantId", wxMerchantBUser.getFinalTenantId()); | |||
| Map resultMap = new HashMap(); | |||
| if (pageIndex == null || pageSize == null) { | |||
| @@ -1927,7 +1928,15 @@ public class WxOrderServiceImpl implements WxOrderService { | |||
| @Override | |||
| public WxOrderCouponPressVo detailPressVo(WxOrder record) { | |||
| return wxOrderMapper.selectDetailOfPress(record); | |||
| WxOrderCouponPressVo pressVo = wxOrderMapper.selectDetailOfPress(record); | |||
| if (null != pressVo) { | |||
| Map paramMap = new HashMap(); | |||
| paramMap.put("orderId", record.getId()); | |||
| paramMap.put("tenantId", record.getTenantId()); | |||
| paramMap.put("finalTenantId", record.getFinalTenantId()); | |||
| pressVo.setOrderPressList(wxOrderPressMapper.findPressList(paramMap)); | |||
| } | |||
| return pressVo; | |||
| } | |||
| @Override | |||
| @@ -269,7 +269,7 @@ public class WxProfitSharingOrderServiceImpl implements WxProfitSharingOrderServ | |||
| //单次分账检查是否已创建分账订单 | |||
| WxProfitSharingOrder record = new WxProfitSharingOrder(); | |||
| record.updateTenantInfo(payAccount); | |||
| record.setOrderId(sharingOrderDto.getOrderId()); | |||
| record = wxProfitSharingOrderMapper.selectOne(new QueryWrapper(record)); | |||
| if (record == null) { | |||
| @@ -36,7 +36,7 @@ public class AliyunSMS implements SMSExcutor { | |||
| } | |||
| sms.setSignName(signature); | |||
| Result result = this.sendSms(sms); | |||
| if(result.getSendSmsResponse().getCode() != null | |||
| if(null != result && result.getSendSmsResponse().getCode() != null | |||
| && result.getSendSmsResponse().getCode().equalsIgnoreCase("ok")){ | |||
| SMSResult.setRet("1"); | |||
| SMSResult.setData(result.getSendSmsResponse().getBizId()); | |||
| @@ -66,16 +66,19 @@ public class AliyunSMS implements SMSExcutor { | |||
| * @return | |||
| */ | |||
| public Result sendSms(SMS sms) { | |||
| if (null == sms || StringUtils.isBlank(sms.getTemplateCode())) { | |||
| return null; | |||
| } | |||
| IAcsClient acsClient = getClient(); | |||
| SendSmsRequest request = getRequest(sms); | |||
| SendSmsResponse sendSmsResponse = null; | |||
| try { | |||
| sendSmsResponse = acsClient.getAcsResponse(request); | |||
| log.info("发送短信-----" + sendSmsResponse.getCode() + "----" + sendSmsResponse.getMessage()); | |||
| } catch (ClientException e) { | |||
| log.error("发送短信发生错误。错误代码是 [{}],错误消息是 [{}],错误请求ID是 [{}],错误Msg是 [{}],错误类型是 [{}]", | |||
| e.getErrCode(), e.getMessage(), e.getRequestId(), e.getErrMsg(), e.getErrorType()); | |||
| } | |||
| log.info("发送短信-----" + sendSmsResponse.getCode() + "----" + sendSmsResponse.getMessage()); | |||
| Result result = new Result(); | |||
| result.setSendSmsResponse(sendSmsResponse); | |||
| @@ -34,6 +34,8 @@ public class Constant { | |||
| public static final String TENANT_ID = "TENANT_ID"; | |||
| public static final String PARENT_TENANT_ID = "PARENT_TENANT_ID"; | |||
| public static final String REQUEST_C_USER_KEY = "REQUEST_C_USER"; | |||
| public static final String LOGIN_B_USER_KEY = "LOGIN_B_USER_KEY"; | |||
| public static final String adminPage = "https://admin.malls.iformall.com"; | |||
| @@ -462,6 +462,7 @@ | |||
| select <include refid="allColumnsOfScoreList"/> | |||
| from wx_c_user_basic_info cub | |||
| where cub.status = 0 | |||
| and cub.final_tenant_id = #{finalTenantId} | |||
| AND DATE_FORMAT(cub.birthdate,'%m-%d') >= #{begin} | |||
| AND DATE_FORMAT(cub.birthdate,'%m-%d') <= #{end} | |||
| <if test=" null != tenantId and '' != tenantId"> | |||
| @@ -88,6 +88,7 @@ | |||
| <select id="countUser" resultType="java.lang.Long"> | |||
| select count(cut.user_id) from wx_c_user_tags cut, wx_c_user_basic_info cubi | |||
| where cut.user_id = cubi.id | |||
| and cubi.final_tenant_id = #{finalTenantId} | |||
| <if test="null != tenantId"> | |||
| and cut.tenant_id = #{tenantId} | |||
| </if> | |||
| @@ -206,7 +206,7 @@ | |||
| <result column="source_type" jdbcType="INTEGER" property="sourceType"/> | |||
| <collection column="{productId=coupon_id}" property="merchantVoList" | |||
| <collection column="{productId=coupon_id,tenantId=tenant_id}" property="merchantVoList" | |||
| ofType="com.iformall.domain.vo.WxMerchantVo" | |||
| javaType="java.util.List" | |||
| select="com.iformall.mapper.WxCouponMerchantMapper.findMerchantNameList" > | |||
| @@ -304,7 +304,7 @@ | |||
| <result column="conditions" jdbcType="VARCHAR" property="conditions" /> | |||
| <result column="content_type" jdbcType="INTEGER" property="contentType"/> | |||
| <collection column="{productId=coupon_id}" property="merchantVoList" | |||
| <collection column="{productId=coupon_id,tenantId=tenant_id}" property="merchantVoList" | |||
| ofType="com.iformall.domain.vo.WxMerchantVo" | |||
| javaType="java.util.List" | |||
| select="com.iformall.mapper.WxCouponMerchantMapper.findMerchantVoList" > | |||
| @@ -618,7 +618,7 @@ | |||
| <result column="content_type" jdbcType="INTEGER" property="contentType"/> | |||
| <result column="source_type" jdbcType="INTEGER" property="sourceType"/> | |||
| <collection column="{productId=id}" property="merchantVoList" | |||
| <collection column="{productId=id,tenantId=tenant_id}" property="merchantVoList" | |||
| ofType="com.iformall.domain.vo.WxMerchantVo" | |||
| javaType="java.util.List" | |||
| select="com.iformall.mapper.WxCouponMerchantMapper.findMerchantBaseList"> | |||
| @@ -697,7 +697,7 @@ | |||
| <result column="verify_merchant_name" jdbcType="VARCHAR" property="verifyMerchantName"/> | |||
| <collection column="{productId=coupon_id}" property="merchantVoList" | |||
| <collection column="{productId=coupon_id,tenantId=tenant_id}" property="merchantVoList" | |||
| ofType="com.iformall.domain.vo.WxMerchantVo" | |||
| javaType="java.util.List" | |||
| select="com.iformall.mapper.WxCouponMerchantMapper.findMerchantNameList" > | |||
| @@ -908,7 +908,7 @@ | |||
| left join wx_merchant_b_user bu on co.b_user_id = bu.id | |||
| left join wx_merchant m on m.id = bu.merchant_id | |||
| left join wx_merchant_subsidy ms on co.id = ms.coupon_order_id and ms.type = 1 | |||
| where co.id = #{id} and co.tenant_id = #{tenantId} | |||
| where co.id = #{id} and co.tenant_id = #{tenantId} and cu.final_tenant_id = #{finalTenantId} | |||
| and c.id = co.coupon_id | |||
| </select> | |||
| @@ -1061,7 +1061,7 @@ | |||
| <result column="send_channel_type" jdbcType="INTEGER" property="sendChannelType" /> | |||
| <collection column="{productId=coupon_id}" property="merchantVoList" | |||
| <collection column="{productId=coupon_id,tenantId=tenant_id}" property="merchantVoList" | |||
| ofType="com.iformall.domain.vo.WxMerchantVo" | |||
| javaType="java.util.List" | |||
| select="com.iformall.mapper.WxCouponMerchantMapper.findMerchantVoList" > | |||
| @@ -1263,7 +1263,7 @@ | |||
| <result column="coupon_free_id" jdbcType="INTEGER" property="couponFreeId"/> | |||
| <collection column="{productId=coupon_id}" property="merchantVoList" | |||
| <collection column="{productId=coupon_id,tenantId=tenant_id}" property="merchantVoList" | |||
| ofType="com.iformall.domain.vo.WxMerchantVo" | |||
| javaType="java.util.List" | |||
| select="com.iformall.mapper.WxCouponMerchantMapper.findMerchantVoList" > | |||
| @@ -1324,7 +1324,7 @@ | |||
| <result column="remaining_amount" jdbcType="INTEGER" property="remainingAmount" /> | |||
| <result column="support_transfer" jdbcType="INTEGER" property="supportTransfer"/> | |||
| <collection column="{productId=coupon_id}" property="merchantVoList" | |||
| <collection column="{productId=coupon_id,tenantId=tenant_id}" property="merchantVoList" | |||
| ofType="com.iformall.domain.vo.WxMerchantVo" | |||
| javaType="java.util.List" | |||
| select="com.iformall.mapper.WxCouponMerchantMapper.findMerchantVoList" > | |||
| @@ -23,7 +23,10 @@ | |||
| <result column="valid_days" jdbcType="INTEGER" property="validDays"/> | |||
| </resultMap> | |||
| <sql id="columns"> | |||
| `id`,`tenant_id`,`parent_tenant_id`,`coupon_id`,`title`,`send_type`,`conditions`,`status`,`create_date`,`update_date`,`send_sms`,`operator_id` | |||
| </sql> | |||
| <sql id="allColumns"> | |||
| cs.id,cs.tenant_id,cs.parent_tenant_id,cs.coupon_id,cs.title,cs.send_type,cs.conditions,cs.status,cs.create_date,cs.update_date, | |||
| cs.conditions -> '$.merchantSend' as merchantSend, | |||
| @@ -100,7 +103,7 @@ | |||
| </sql> | |||
| <select id="selectById" parameterType="java.util.HashMap" resultMap="BaseResultMap"> | |||
| select <include refid="allColumns" /> from wx_coupon_send cs where cs.id = #{id} and cs.tenant_id = #{tenantId} | |||
| select <include refid="columns" /> from wx_coupon_send cs where cs.id = #{id} and cs.tenant_id = #{tenantId} | |||
| </select> | |||
| <delete id="deleteById" parameterType="java.util.HashMap"> | |||
| @@ -316,7 +316,7 @@ | |||
| <result column="send_channel_type" jdbcType="INTEGER" property="sendChannelType" /> | |||
| <result column="support_transfer" jdbcType="INTEGER" property="supportTransfer"/> | |||
| <collection column="{productId=product_id}" property="merchantVoList" | |||
| <collection column="{productId=product_id,tenantId=tenant_id}" property="merchantVoList" | |||
| ofType="com.iformall.domain.vo.WxMerchantVo" | |||
| javaType="java.util.List" | |||
| select="com.iformall.mapper.WxCouponMerchantMapper.findMerchantVoList" > | |||
| @@ -913,11 +913,11 @@ | |||
| <result column="coupon_order_id" jdbcType="BIGINT" property="couponOrderId"/> | |||
| <result column="coupon_order_status" jdbcType="INTEGER" property="couponOrderStatus"/> | |||
| <collection column="{orderId=order_number}" property="orderPressList" | |||
| <!-- <collection column="{orderId=order_number,tenantId=tenant_id}" property="orderPressList" | |||
| ofType="com.iformall.domain.vo.WxOrderPressVo" | |||
| javaType="java.util.List" | |||
| select="com.iformall.mapper.WxOrderPressMapper.findPressList" > | |||
| </collection> | |||
| </collection> --> | |||
| </resultMap> | |||
| <sql id="allOrderPressListColumns"> | |||
| @@ -55,4 +55,31 @@ | |||
| select <include refid="allColumns" /> from wx_order_press | |||
| <include refid="dynamicWhereConditions" /> | |||
| </select> | |||
| <resultMap id="VoBaseResultMap" type="com.iformall.domain.vo.WxOrderPressVo"> | |||
| <id column="id" jdbcType="BIGINT" property="id" /> | |||
| <result column="tenant_id" jdbcType="VARCHAR" property="tenantId" /> | |||
| <result column="order_id" jdbcType="BIGINT" property="orderId" /> | |||
| <result column="user_id" jdbcType="BIGINT" property="userId" /> | |||
| <result column="press_value" jdbcType="INTEGER" property="pressValue" /> | |||
| <result column="create_date" jdbcType="TIMESTAMP" property="createDate" /> | |||
| <result column="first" jdbcType="SMALLINT" property="first" /> | |||
| <result column="nick_name" jdbcType="VARCHAR" property="nickName"/> | |||
| <result column="avatar_url" jdbcType="VARCHAR" property="avatarUrl"/> | |||
| </resultMap> | |||
| <sql id="allVoColumns"> | |||
| op.`id`,op.`order_id`,op.`user_id`,op.`press_value`,op.`create_date`,op.`first`, | |||
| cu.`nick_name`, cu.`avatar_url` | |||
| </sql> | |||
| <select id="findPressList" parameterType="com.iformall.domain.vo.WxOrderPressVo" resultMap="VoBaseResultMap"> | |||
| select <include refid="allVoColumns" /> | |||
| from wx_order_press op | |||
| left join wx_c_user_basic_info cu on cu.id = op.user_id | |||
| where op.`order_id` = #{orderId} | |||
| and op.tenant_id = #{tenantId} and cu.final_tenant_id = #{finalTenantId} | |||
| order by op.`create_date` desc | |||
| </select> | |||
| </mapper> | |||
| @@ -14,10 +14,9 @@ | |||
| <scope>compile</scope> | |||
| </dependency> | |||
| <dependency> | |||
| <groupId>org.mybatis</groupId> | |||
| <artifactId>mybatis</artifactId> | |||
| <version>3.5.4</version> | |||
| <scope>compile</scope> | |||
| <groupId>com.baomidou</groupId> | |||
| <artifactId>mybatis-plus-core</artifactId> | |||
| <version>3.2.0</version> | |||
| </dependency> | |||
| <!--测试期间依赖--> | |||
| <dependency> | |||
| @@ -187,6 +187,11 @@ public class ShardingSpherePlugin implements MyBatisPlus { | |||
| Object o = parameterObject; | |||
| if (((Map) parameterObject).containsKey("et")) { | |||
| o = ((Map) parameterObject).get("et"); | |||
| }else if(((Map) parameterObject).containsKey("ew")) { | |||
| Object ew = ((Map) parameterObject).get("ew"); | |||
| if (ew instanceof com.baomidou.mybatisplus.core.conditions.query.QueryWrapper) { | |||
| o = ((com.baomidou.mybatisplus.core.conditions.query.QueryWrapper) ew).getEntity(); | |||
| } | |||
| }else if(((Map) parameterObject).containsKey(column)) { | |||
| o = ((Map) parameterObject).get(column); | |||
| }else if (((Map) parameterObject).containsKey(field)) { | |||
| @@ -239,7 +244,7 @@ public class ShardingSpherePlugin implements MyBatisPlus { | |||
| return o; | |||
| }catch(Exception e) { | |||
| e.printStackTrace(); | |||
| return null; | |||
| throw new RuntimeException(e); | |||
| } | |||
| } | |||