diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserBasicInfoController.java b/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserBasicInfoController.java index bbaff64b6..a7be97322 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserBasicInfoController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserBasicInfoController.java @@ -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); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/BaseController.java b/mallinkBApi/src/main/java/com/iformall/controller/BaseController.java index 0d1e26abf..f578d0f80 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/BaseController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/BaseController.java @@ -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+"]未查询到记录, 请重新登陆,并完全授权微信个人信息以及手机号授权."); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/PosController.java b/mallinkBApi/src/main/java/com/iformall/controller/PosController.java index d33c55d5b..58f8c5df2 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/PosController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/PosController.java @@ -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 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 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 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 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 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 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 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 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订单金额(单位:分) diff --git a/mallinkBApi/src/main/java/com/iformall/controller/PosOrderController.java b/mallinkBApi/src/main/java/com/iformall/controller/PosOrderController.java index 94b5984a9..0886598c5 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/PosOrderController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/PosOrderController.java @@ -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); } diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxCardPayController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxCardPayController.java index b2f610324..4474aaa46 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxCardPayController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxCardPayController.java @@ -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 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> mapList = wxCardSpendService.sumCardSpendForMerchant(wxCardSpend); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxCouponChannelController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxCouponChannelController.java index 499d5a174..417ca3245 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxCouponChannelController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxCouponChannelController.java @@ -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); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxCouponController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxCouponController.java index 1169d4a53..6fbdc10f2 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxCouponController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxCouponController.java @@ -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 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 merchantList = new ArrayList<>(); - WxMerchant wxMerchant = wxMerchantService.getById(getUser().getMerchantId()); + WxMerchant wxMerchant = wxMerchantService.getById(getLoginBUser().getMerchantId()); merchantList.add(wxMerchant); wxCoupon.setMerchantParams(JSONObject.toJSONString(merchantList)); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxCouponOrderController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxCouponOrderController.java index b96ead62f..7137fa9c7 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxCouponOrderController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxCouponOrderController.java @@ -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); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxCouponSendController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxCouponSendController.java index d9d2efa1a..95d4466a3 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxCouponSendController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxCouponSendController.java @@ -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 data = wxCouponActionLogService.getActionLog(params, pageNum, pageSize); return new ResultData(data); } diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java index 625d5c380..38472c7a5 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java @@ -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()); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxDateAmountRecordController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxDateAmountRecordController.java index 7b96bed78..6b2b2a11a 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxDateAmountRecordController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxDateAmountRecordController.java @@ -58,7 +58,7 @@ public class WxDateAmountRecordController extends BaseController { List list = new ArrayList<>(); WxDateAmountRecord temp = new WxDateAmountRecord(); - WxMerchantBUser u = getUser(); + WxMerchantBUser u = getLoginBUser(); temp.updateTenantInfo(u); temp.setMerchantId(u.getMerchantId()); temp.setType(dateAmtType); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxInfoController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxInfoController.java index e7c67844a..1887d6e50 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxInfoController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxInfoController.java @@ -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); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxMallController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxMallController.java index d04c6509c..6ea8c3116 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxMallController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxMallController.java @@ -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); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxMemController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxMemController.java index 22a68fa38..e5d544786 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxMemController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxMemController.java @@ -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) { diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantBUserController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantBUserController.java index ff94814dd..761803411 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantBUserController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantBUserController.java @@ -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 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 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()); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantController.java index cd4bd1ffb..bf354f2be 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantController.java @@ -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); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantSubsidyController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantSubsidyController.java index d942e80d2..6eab1dfb4 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantSubsidyController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantSubsidyController.java @@ -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> 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 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 data = wxMerchantSubsidyService.summary(wxMerchantSubsidy); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantTradeDailyController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantTradeDailyController.java index ba175ebc0..8718cfa4e 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantTradeDailyController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantTradeDailyController.java @@ -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()); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java index 430f38041..f4dcfbf64 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java @@ -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 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; diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxRefundOrderController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxRefundOrderController.java index 10110d915..0eff6b589 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxRefundOrderController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxRefundOrderController.java @@ -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()); diff --git a/mallinkBApi/src/main/java/com/iformall/interceptor/AuthorizationInterceptor.java b/mallinkBApi/src/main/java/com/iformall/interceptor/AuthorizationInterceptor.java index aa0df818e..2eb5cd1a0 100644 --- a/mallinkBApi/src/main/java/com/iformall/interceptor/AuthorizationInterceptor.java +++ b/mallinkBApi/src/main/java/com/iformall/interceptor/AuthorizationInterceptor.java @@ -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; } } diff --git a/mallinkSchedule/src/main/java/com/iformall/schedule/ChartDataSchedule.java b/mallinkSchedule/src/main/java/com/iformall/schedule/ChartDataSchedule.java index 6dd88e600..b7b43b4bb 100644 --- a/mallinkSchedule/src/main/java/com/iformall/schedule/ChartDataSchedule.java +++ b/mallinkSchedule/src/main/java/com/iformall/schedule/ChartDataSchedule.java @@ -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()); } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxCUserBasicInfo.java b/mallinkService/src/main/java/com/iformall/domain/po/WxCUserBasicInfo.java index 54743e1ec..8546f0dec 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxCUserBasicInfo.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxCUserBasicInfo.java @@ -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; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/base/TenantEntity.java b/mallinkService/src/main/java/com/iformall/domain/po/base/TenantEntity.java index 70a88d31c..8777b1bb9 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/base/TenantEntity.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/base/TenantEntity.java @@ -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; } } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/base/TenantEntityWithoutFinalTenantId.java b/mallinkService/src/main/java/com/iformall/domain/po/base/TenantEntityWithoutFinalTenantId.java new file mode 100644 index 000000000..741d21cca --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/base/TenantEntityWithoutFinalTenantId.java @@ -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; + } + +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java index 666cc494e..303e342d2 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java @@ -46,7 +46,7 @@ public interface WxCUserBasicInfoMapper extends CommonMapper findBirthdayList(@Param("finalTenantId")String finalTenantId, @Param("begin")String begin, @Param("end")String end); - List findBirthdayList1(@Param("tenantId")String tenantId,@Param("parentTenantId")String parentTenantId, @Param("begin")String begin, @Param("end")String end); + List 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); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCUserTagsMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCUserTagsMapper.java index f48d665fd..058b5959c 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCUserTagsMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCUserTagsMapper.java @@ -15,7 +15,7 @@ public interface WxCUserTagsMapper extends CommonMapper { List 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); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java index 7c3407ce4..424a36f8e 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java @@ -49,7 +49,7 @@ public interface WxCouponOrderMapper extends CommonMapper { WxCouponOrderCVo findDetailOfCUser(@Param("id")Long id,@Param("tenantId")String tenantId); WxCouponOrderCVo findSimpleDetailOfCUser(@Param("id")Long id,@Param("tenantId")String tenantId); List 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 couponDataMap(HashMap params); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxOrderPressMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxOrderPressMapper.java index 3232a6e17..e1d0916fe 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxOrderPressMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxOrderPressMapper.java @@ -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 selectById(@Param("id")Long id,@Param("tenantId")String tenantId); List findList(WxOrderPress wxOrderPress); + List findPressList(Map paramMap); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/DataTowerServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/DataTowerServiceImpl.java index 53e9aedbc..8f4b301f4 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/DataTowerServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/DataTowerServiceImpl.java @@ -551,6 +551,7 @@ public class DataTowerServiceImpl implements DataTowerService { HashMap 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()); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java index 2cc40e83a..4d9192d7c 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java @@ -576,7 +576,7 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService,IExc WxCUserBasicInfo basicQ = new WxCUserBasicInfo(); basicQ.undateFinalTenantId(tenantEntity); basicQ.setPhone(phone); - List basicInfos = wxCUserBasicInfoMapper.selectList(new QueryWrapper(basicQ)); + List 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 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(); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java index f5e3d0efb..945dd442f 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java @@ -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); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxChartServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxChartServiceImpl.java index 254865bf9..ee142431c 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxChartServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxChartServiceImpl.java @@ -1054,6 +1054,7 @@ public class WxChartServiceImpl implements WxChartDataService { HashMap datamap = new HashMap<>(); HashMap 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(); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java index dd33f42e2..8679c6883 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java @@ -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); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java index 192d8ed60..e1f130a0e 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java @@ -120,70 +120,70 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { return new PageInfo<>(wxCreditHistoryVoList); } - public void supplyCreditInfo(List wxCreditHistoryVoList) { - List cUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.CUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); - List cUserBasicIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.CUSERBASIC.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); - List bUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.BUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); - List mallUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.MALLUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); - List wxCUserList = Lists.newArrayList(); - List wxCUserBasicInfoList = Lists.newArrayList(); - List wxMerchantBUserList = Lists.newArrayList(); - List 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 wxCreditHistoryVoList) { +// List cUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.CUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); +// List cUserBasicIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.CUSERBASIC.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); +// List bUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.BUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); +// List mallUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.MALLUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); +// List wxCUserList = Lists.newArrayList(); +// List wxCUserBasicInfoList = Lists.newArrayList(); +// List wxMerchantBUserList = Lists.newArrayList(); +// List 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) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderGroupServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderGroupServiceImpl.java index b3c055c79..e770ba457 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderGroupServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderGroupServiceImpl.java @@ -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> couponOrderGroupList = wxOrderGroupMapper.queryOrderGroup(wxOrder); if (couponOrderGroupList.isEmpty()) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java index 39e377ae0..76a330d08 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java @@ -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 diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxProfitSharingOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxProfitSharingOrderServiceImpl.java index 0991dbc99..f2d48d5f2 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxProfitSharingOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxProfitSharingOrderServiceImpl.java @@ -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) { diff --git a/mallinkService/src/main/java/com/iformall/sms/aliyun/AliyunSMS.java b/mallinkService/src/main/java/com/iformall/sms/aliyun/AliyunSMS.java index 9e4993637..44ddf8086 100644 --- a/mallinkService/src/main/java/com/iformall/sms/aliyun/AliyunSMS.java +++ b/mallinkService/src/main/java/com/iformall/sms/aliyun/AliyunSMS.java @@ -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); diff --git a/mallinkService/src/main/java/com/iformall/utils/Constant.java b/mallinkService/src/main/java/com/iformall/utils/Constant.java index 179b626ab..51d0b893c 100644 --- a/mallinkService/src/main/java/com/iformall/utils/Constant.java +++ b/mallinkService/src/main/java/com/iformall/utils/Constant.java @@ -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"; diff --git a/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml b/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml index 8714c42d6..aef6d1d8c 100644 --- a/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml @@ -462,6 +462,7 @@ select 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} diff --git a/mallinkService/src/main/resources/mapper/WxCUserTagsMapper.xml b/mallinkService/src/main/resources/mapper/WxCUserTagsMapper.xml index 7413fae57..48ef96b32 100644 --- a/mallinkService/src/main/resources/mapper/WxCUserTagsMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCUserTagsMapper.xml @@ -88,6 +88,7 @@ @@ -1061,7 +1061,7 @@ - @@ -1263,7 +1263,7 @@ - @@ -1324,7 +1324,7 @@ - diff --git a/mallinkService/src/main/resources/mapper/WxCouponSendMapper.xml b/mallinkService/src/main/resources/mapper/WxCouponSendMapper.xml index ea0774827..4353c3d91 100644 --- a/mallinkService/src/main/resources/mapper/WxCouponSendMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCouponSendMapper.xml @@ -23,7 +23,10 @@ - + + `id`,`tenant_id`,`parent_tenant_id`,`coupon_id`,`title`,`send_type`,`conditions`,`status`,`create_date`,`update_date`,`send_sms`,`operator_id` + + 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 @@ diff --git a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml index 881a1fc44..670fa752f 100644 --- a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml @@ -316,7 +316,7 @@ - @@ -913,11 +913,11 @@ - - + --> diff --git a/mallinkService/src/main/resources/mapper/WxOrderPressMapper.xml b/mallinkService/src/main/resources/mapper/WxOrderPressMapper.xml index 223f0354f..f54879aa5 100644 --- a/mallinkService/src/main/resources/mapper/WxOrderPressMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxOrderPressMapper.xml @@ -55,4 +55,31 @@ select from wx_order_press + + + + + + + + + + + + + + + + op.`id`,op.`order_id`,op.`user_id`,op.`press_value`,op.`create_date`,op.`first`, + cu.`nick_name`, cu.`avatar_url` + + + diff --git a/mybatis-multi-tenancy/pom.xml b/mybatis-multi-tenancy/pom.xml index ee4a4ac01..d0f4b598f 100644 --- a/mybatis-multi-tenancy/pom.xml +++ b/mybatis-multi-tenancy/pom.xml @@ -14,10 +14,9 @@ compile - org.mybatis - mybatis - 3.5.4 - compile + com.baomidou + mybatis-plus-core + 3.2.0 diff --git a/mybatis-multi-tenancy/src/main/java/com/iformall/plugin/shard/plugin/ShardingSpherePlugin.java b/mybatis-multi-tenancy/src/main/java/com/iformall/plugin/shard/plugin/ShardingSpherePlugin.java index 8a46904c2..0fdd10010 100644 --- a/mybatis-multi-tenancy/src/main/java/com/iformall/plugin/shard/plugin/ShardingSpherePlugin.java +++ b/mybatis-multi-tenancy/src/main/java/com/iformall/plugin/shard/plugin/ShardingSpherePlugin.java @@ -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); } }