From 6ec4071a7b9b32d8dd670a5dec3aaade570bf6e8 Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Wed, 30 Oct 2019 14:58:13 +0800 Subject: [PATCH 1/6] =?UTF-8?q?[=E6=94=B6=E9=93=B6=E5=8F=B0][=E4=BF=AE?= =?UTF-8?q?=E6=94=B9]:=E5=88=B8=E6=94=AF=E4=BB=98=E5=90=8E=E4=B8=BA0?= =?UTF-8?q?=E6=97=B6=EF=BC=8C=E7=9B=B4=E6=8E=A5=E5=AE=8C=E7=BB=93=E8=AE=A2?= =?UTF-8?q?=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WxMicroPayController.java | 71 +++++++++++++------ .../iformall/service/WxPayOrderService.java | 7 ++ .../service/impl/WxPayOrderServiceImpl.java | 52 ++++++++++++++ 3 files changed, 108 insertions(+), 22 deletions(-) diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java index bd0e46644..43afdc9b3 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java @@ -365,15 +365,17 @@ public class WxMicroPayController extends BaseController { logger.error("orderId不能为空"); return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "orderId不能为空"); } - if (StringUtils.isBlank(authCode)) { - logger.error("authCode不能为空"); - return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "authCode不能为空"); - } if (StringUtils.isBlank(payPriceStr)) { logger.error("payPrice不能为空"); return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "payPrice不能为空"); } + BigDecimal totalFee = new BigDecimal(payPriceStr); + totalFee.setScale(2, BigDecimal.ROUND_HALF_UP); // 第一个变量是小数位数,第二个变量是取舍方法(四舍五入) + Integer payPrice = totalFee.multiply(new BigDecimal(100)).intValue(); + + + String ipStr = IPUtil.getIpAddr(request); WxMerchantBUser wxMerchantBUser = wxMerchantBUserService.getById(user.getId()); @@ -384,9 +386,7 @@ public class WxMicroPayController extends BaseController { wxMerchantBUser.setBuserId(getBuserId()); Long couponOrderId = 0L, orderId = 0L; - BigDecimal totalFee = new BigDecimal(payPriceStr); - totalFee.setScale(2, BigDecimal.ROUND_HALF_UP); // 第一个变量是小数位数,第二个变量是取舍方法(四舍五入) - Integer payPrice = totalFee.multiply(new BigDecimal(100)).intValue(); + try { orderId = Long.valueOf(orderIdStr); } catch (NumberFormatException e) { @@ -424,22 +424,49 @@ public class WxMicroPayController extends BaseController { } } - WxPayOrder record = new WxPayOrder(); - record.setTenantId(user.getTenantId()); - record.setOrderId(microOrder.getId()); - record.setCUserId(microOrder.getCUserId()); - record.setAuthCode(authCode); - record.setPayAmount(remainPrice); - record.setIp(ipStr); + if (remainPrice > 0) { + if (StringUtils.isBlank(authCode)) { + logger.error("authCode不能为空"); + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "authCode不能为空"); + } - try { - return wxPayOrderService.createMicroPayOrder(user, record, EnumPayWay.PAY_WAY_WECHAT); - } catch (MallinkException e) { - logger.error("payment wechat, order create error, req 2: " + record.toString() + ", e:" + e.getMessage()); - return new ResultData(e.getErrorCode(), e.getMessage()); - } catch (Exception e) { - logger.error("payment wechat, order create error, req 3: " + record.toString() + ", e:" + e.getMessage()); - return new ResultData(ErrorCode.PAY_ORDER_ERROR, e.getMessage()); + WxPayOrder record = new WxPayOrder(); + record.setTenantId(user.getTenantId()); + record.setOrderId(microOrder.getId()); + record.setCUserId(microOrder.getCUserId()); + record.setAuthCode(authCode); + record.setPayAmount(remainPrice); + record.setIp(ipStr); + + try { + return wxPayOrderService.createMicroPayOrder(user, record, EnumPayWay.PAY_WAY_WECHAT); + } catch (MallinkException e) { + logger.error("payment wechat, order create error, req 2: " + record.toString() + ", e:" + e.getMessage()); + return new ResultData(e.getErrorCode(), e.getMessage()); + } catch (Exception e) { + logger.error("payment wechat, order create error, req 3: " + record.toString() + ", e:" + e.getMessage()); + return new ResultData(ErrorCode.PAY_ORDER_ERROR, e.getMessage()); + } + } else { + // 支付完成 + WxPayOrder record = new WxPayOrder(); + record.setTenantId(user.getTenantId()); + record.setOrderId(microOrder.getId()); + record.setCUserId(microOrder.getCUserId()); + record.setPayAmount(remainPrice); + record.setIp(ipStr); + try { + wxPayOrderService.handleMicroOrderPaySuccessForVerify(user, record); + Map map = new HashMap(); + map.put("end", "1"); + return new ResultData(map); + } catch (MallinkException e) { + logger.error("payment wechat, order create error, req 2: " + record.toString() + ", e:" + e.getMessage()); + return new ResultData(e.getErrorCode(), e.getMessage()); + } catch (Exception e) { + logger.error("payment wechat, order create error, req 3: " + record.toString() + ", e:" + e.getMessage()); + return new ResultData(ErrorCode.PAY_ORDER_ERROR, e.getMessage()); + } } } } diff --git a/mallinkService/src/main/java/com/iformall/service/WxPayOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxPayOrderService.java index 333eb0a41..5c281dcb6 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxPayOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxPayOrderService.java @@ -75,6 +75,13 @@ public interface WxPayOrderService { */ void handleMicroOrderPaySuccess(WxMerchantBUser user, WxPayOrder record, String transactionId, String openId, String isSubscribe); + /** + * 券支付成功处理 + * @param user + * @param record + */ + void handleMicroOrderPaySuccessForVerify(WxMerchantBUser user, WxPayOrder record); + /** * 支付状态处理 * diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java index 60c7997e6..bd660ed31 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java @@ -1440,6 +1440,58 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { } } + @Override + @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) + public void handleMicroOrderPaySuccessForVerify(WxMerchantBUser user, WxPayOrder record) { + Date currentDate = new Date(); + + WxOrder order = wxOrderMapper.selectById(record.getOrderId()); + if (order == null) { + logger.error("pay success handle, order " + record.getOrderId() + " not found , payOrderid : " + record.getPayOrderNo()); + throw new MallinkException(ErrorCode.ORDER_IS_NOT_FIND); + } + + WxAppinfo appinfo = wxAppinfoService.getCAppInfo(order.getTenantId()); + + if (record.getPayAmount().equals(0)) { + // B端收银台核销券处理 + WxPayOrder payOrderQ = new WxPayOrder(); + payOrderQ.setOrderId(order.getId()); + payOrderQ.setPayFrom(EnumPayFrom.INSIDE_B.getCode()); + payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_WAIT.getCode()); + try { + WxPayOrder unPayOrder = wxPayOrderMapper.selectOne(new QueryWrapper<>(payOrderQ)); + if (unPayOrder != null) { + if (unPayOrder.getPosPayOrderId() != null) { + try { + wxCouponOrderService.microPayVerify(user, unPayOrder.getPosPayOrderId()); + } catch (Exception e) { + logger.error(e.getMessage()); + } + // 更新后处理 + wxCouponOrderService.sendInsideCouponVerifyMsg(unPayOrder.getTenantId(), unPayOrder.getPosPayOrderId(), user.getId()); + } + } + } catch (Exception e) { + logger.error(e.getMessage()); + } + } else { + throw new MallinkException(ErrorCode.PAY_ORDER_ERROR); + } + + // 修改订单状态 + try { + int _count = wxOrderService.microPayOrderSuccess(order); + if (_count > 1) { + logger.error("order micro pay count > 1"); + throw new MallinkException(ErrorCode.ORDER_IS_FAIL); + } + } catch (Exception e) { + logger.error("order status : " + e.getMessage()); + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "订单更新"); + } + } + public void createMerchantSubsidy(WxPayOrder record, WxOrder order, Date curDate) { final IdWorker idWorker = IdWorker.get(); WxMerchantSubsidy merchantSubsidy = new WxMerchantSubsidy(); From 3b05a2ad7967cc2c8ff66f98a9fa4aee284fe782 Mon Sep 17 00:00:00 2001 From: gongbiao Date: Wed, 30 Oct 2019 14:59:55 +0800 Subject: [PATCH 2/6] =?UTF-8?q?[=E5=90=88=E5=90=8C][=E4=BF=AE=E6=94=B9][?= =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E5=90=88=E5=90=8C=E7=BC=96=E5=8F=B7=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E4=BF=A1=E6=81=AF]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/contract/WxRentContractController.java | 9 +++++++++ .../java/com/iformall/service/WxRentContractService.java | 3 +++ .../iformall/service/impl/WxRentContractServiceImpl.java | 6 ++++++ 3 files changed, 18 insertions(+) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java index 6ec7ecae1..e541c7fd3 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java @@ -392,6 +392,15 @@ public class WxRentContractController extends BaseController { wxRentContractService.endContract(wxRentContract); return new ResultData(); } + + @GetMapping("/getContractByContractNumber") + @SystemControllerLog(description = "租赁合同-通过合同编号查询信息") + public ResultData getContractByContractNumber(@ModelAttribute WxRentContract wxRentContract) { + logger.debug("[" + getIpAddr() + "] WxRentContractController::getContractByContractNumber"); + wxRentContract.setTenantId(getTenantId()); + return wxRentContractService.getContractByContractNumber(wxRentContract); + } + } diff --git a/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java b/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java index ade291945..39532b750 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java @@ -97,4 +97,7 @@ public interface WxRentContractService { Map selectRentContractByShopIds(Collection shopIds, String shopIdsRegexp,String tenantId); int selectContractCountByShopId(WxRentContract wxRentContract); + + ResultData getContractByContractNumber(WxRentContract wxRentContract); + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java index 98f61c156..0c32f3314 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -2532,4 +2532,10 @@ public class WxRentContractServiceImpl implements WxRentContractService { public int selectContractCountByShopId(WxRentContract wxRentContract) { return wxRentContractMapper.selectContractCountByShopId(wxRentContract) ; } + + @Override + public ResultData getContractByContractNumber(WxRentContract rentContract) { + WxRentContract wxRentContract = wxRentContractMapper.selectOne(new QueryWrapper<>(rentContract)); + return new ResultData(wxRentContract); + } } From f175a60c00365ba956b0b808d84dc40bd5425b24 Mon Sep 17 00:00:00 2001 From: Burce Date: Wed, 30 Oct 2019 15:18:02 +0800 Subject: [PATCH 3/6] =?UTF-8?q?[=E6=8B=9B=E5=95=86][=E6=93=8D=E4=BD=9C?= =?UTF-8?q?=E8=AE=B0=E5=BD=95]=E6=84=8F=E5=90=91=E5=95=86=E9=93=BA?= =?UTF-8?q?=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../invest/impl/InvestBizServiceImpl.java | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/invest/impl/InvestBizServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/invest/impl/InvestBizServiceImpl.java index 419bac65a..26b7da3ab 100644 --- a/mallinkService/src/main/java/com/iformall/service/invest/impl/InvestBizServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/invest/impl/InvestBizServiceImpl.java @@ -996,8 +996,21 @@ public class InvestBizServiceImpl implements InvestBizService { tableTriple.setAfter(userAfter.getName()); } } else if (Objects.equals(column, "targetId")) { - WxShop shopBefore = shopMap.get(tableTriple.getBefore()); - WxShop shopAfter = shopMap.get(tableTriple.getAfter()); + Object beforeVal = tableTriple.getBefore(); + Object afterVal = tableTriple.getBefore(); + WxShop shopBefore; + WxShop shopAfter; + if (beforeVal instanceof Integer) { + shopBefore = shopMap.get(Long.valueOf((Integer) beforeVal)); + } else { + shopBefore = shopMap.get(beforeVal); + } + if (afterVal instanceof Integer) { + shopAfter = shopMap.get(Long.valueOf((Integer) afterVal)); + } else { + shopAfter = shopMap.get(afterVal); + } + if (Objects.nonNull(shopBefore)) { tableTriple.setBefore(shopBefore.getShopNumber()); } From a75395cb7aa73be58b9e4ddcfead59cc33ddf9b7 Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Wed, 30 Oct 2019 15:19:10 +0800 Subject: [PATCH 4/6] =?UTF-8?q?[PO][=E4=BF=AE=E6=94=B9]:=E9=9B=86=E5=9B=A2?= =?UTF-8?q?=E7=89=88=E9=A2=84=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/iformall/domain/po/WxMallApply.java | 1 - .../src/main/java/com/iformall/domain/po/WxQuestion.java | 6 ++---- .../java/com/iformall/domain/po/WxQuestionConfig.java | 7 ++----- .../main/java/com/iformall/domain/po/WxQuestionLog.java | 6 ++---- .../main/java/com/iformall/domain/po/WxScoreRules.java | 8 ++------ .../main/java/com/iformall/domain/po/WxUserVisit.java | 4 ++-- .../java/com/iformall/domain/po/WxWeappAuditStatus.java | 7 ++----- .../java/com/iformall/domain/po/WxWeappCodeStatus.java | 9 +++------ .../com/iformall/domain/po/WxWeappReleaseStatus.java | 4 ++-- .../com/iformall/domain/po/base/BaseTenantEntity.java | 8 ++++++++ .../java/com/iformall/domain/po/base/TenantEntity.java | 8 ++++++++ .../com/iformall/domain/po/invest/InvestBaseEntity.java | 6 ++---- .../java/com/iformall/domain/vo/WxFloatingLayerVO.java | 8 ++------ 13 files changed, 37 insertions(+), 45 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxMallApply.java b/mallinkService/src/main/java/com/iformall/domain/po/WxMallApply.java index c6b277b06..b92f9f099 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxMallApply.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxMallApply.java @@ -12,7 +12,6 @@ import java.util.Date; @Data @EqualsAndHashCode(callSuper = true) public class WxMallApply extends BaseEntity { - private static final long serialVersionUID = 1L; protected Long id; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxQuestion.java b/mallinkService/src/main/java/com/iformall/domain/po/WxQuestion.java index ba7100155..ffbfd2cf0 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxQuestion.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxQuestion.java @@ -1,19 +1,17 @@ package com.iformall.domain.po; import com.baomidou.mybatisplus.annotation.TableName; -import com.iformall.domain.po.base.BaseEntity; +import com.iformall.domain.po.base.BaseTenantEntity; import lombok.Data; import lombok.EqualsAndHashCode; @TableName(value = "wx_question") @Data @EqualsAndHashCode(callSuper = true) -public class WxQuestion extends BaseEntity { +public class WxQuestion extends BaseTenantEntity { protected Long id; - @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") - private String tenantId; @io.swagger.annotations.ApiModelProperty(value="问题内容",name="content") private String content; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxQuestionConfig.java b/mallinkService/src/main/java/com/iformall/domain/po/WxQuestionConfig.java index 7fe575efe..c52580b66 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxQuestionConfig.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxQuestionConfig.java @@ -2,7 +2,7 @@ package com.iformall.domain.po; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; -import com.iformall.domain.po.base.BaseEntity; +import com.iformall.domain.po.base.BaseTenantEntity; import lombok.Data; import lombok.EqualsAndHashCode; @@ -12,13 +12,10 @@ import java.util.List; @TableName(value = "wx_question_config") @Data @EqualsAndHashCode(callSuper = true) -public class WxQuestionConfig extends BaseEntity { +public class WxQuestionConfig extends BaseTenantEntity { protected Long id; - @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") - private String tenantId; - @io.swagger.annotations.ApiModelProperty(value="问题列表",name="questionList") private String questionList; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxQuestionLog.java b/mallinkService/src/main/java/com/iformall/domain/po/WxQuestionLog.java index 97e301bdd..612cf31be 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxQuestionLog.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxQuestionLog.java @@ -1,7 +1,7 @@ package com.iformall.domain.po; import com.baomidou.mybatisplus.annotation.TableName; -import com.iformall.domain.po.base.BaseEntity; +import com.iformall.domain.po.base.BaseTenantEntity; import lombok.Data; import lombok.EqualsAndHashCode; @@ -11,12 +11,10 @@ import java.util.Date; @TableName(value = "wx_question_log") @Data @EqualsAndHashCode(callSuper = true) -public class WxQuestionLog extends BaseEntity { +public class WxQuestionLog extends BaseTenantEntity { protected Long id; - @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") - private String tenantId; @io.swagger.annotations.ApiModelProperty(value="用户ID",name="userId") private Long userId; @io.swagger.annotations.ApiModelProperty(value="问题ID",name="questionId") diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxScoreRules.java b/mallinkService/src/main/java/com/iformall/domain/po/WxScoreRules.java index 07d95f6cd..13321e35e 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxScoreRules.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxScoreRules.java @@ -3,7 +3,7 @@ package com.iformall.domain.po; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; -import com.iformall.domain.po.base.BaseEntity; +import com.iformall.domain.po.base.BaseTenantEntity; import com.iformall.enums.EnumScoreType; import lombok.Data; import lombok.EqualsAndHashCode; @@ -25,7 +25,7 @@ import java.util.List; @TableName(value = "wx_score_rules") @Data @EqualsAndHashCode(callSuper = true) -public class WxScoreRules extends BaseEntity { +public class WxScoreRules extends BaseTenantEntity { @TableField(exist = false) public static final int DEFAULT_SCALE = 10; @@ -89,10 +89,6 @@ public class WxScoreRules extends BaseEntity { protected Long id; - - @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") - private String tenantId; - @io.swagger.annotations.ApiModelProperty(value="规则",name="rules") private String rules; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxUserVisit.java b/mallinkService/src/main/java/com/iformall/domain/po/WxUserVisit.java index 9365a8b7a..a9a0261e9 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxUserVisit.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxUserVisit.java @@ -1,7 +1,7 @@ package com.iformall.domain.po; import com.baomidou.mybatisplus.annotation.TableName; -import com.iformall.domain.po.base.BaseEntity; +import com.iformall.domain.po.base.BaseTenantEntity; import lombok.Data; import lombok.EqualsAndHashCode; @@ -10,7 +10,7 @@ import java.util.*; @TableName(value = "wx_user_visit") @Data @EqualsAndHashCode(callSuper = true) -public class WxUserVisit extends BaseEntity { +public class WxUserVisit extends BaseTenantEntity { protected Long id; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxWeappAuditStatus.java b/mallinkService/src/main/java/com/iformall/domain/po/WxWeappAuditStatus.java index 53a82df58..ec92248da 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxWeappAuditStatus.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxWeappAuditStatus.java @@ -1,7 +1,7 @@ package com.iformall.domain.po; import com.baomidou.mybatisplus.annotation.TableName; -import com.iformall.domain.po.base.BaseEntity; +import com.iformall.domain.po.base.BaseTenantEntity; import lombok.Data; import lombok.EqualsAndHashCode; @@ -10,15 +10,12 @@ import java.util.Date; @TableName(value = "wx_weapp_audit_status") @Data @EqualsAndHashCode(callSuper = true) -public class WxWeappAuditStatus extends BaseEntity { +public class WxWeappAuditStatus extends BaseTenantEntity { private static final long serialVersionUID = 1L; protected Long id; - - @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") - private String tenantId; @io.swagger.annotations.ApiModelProperty(value="小程序ID",name="appId") private String appId; @io.swagger.annotations.ApiModelProperty(value="小程序类型(1-B端 2-C端)",name="type") diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxWeappCodeStatus.java b/mallinkService/src/main/java/com/iformall/domain/po/WxWeappCodeStatus.java index 3eb05152d..4d32c9b58 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxWeappCodeStatus.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxWeappCodeStatus.java @@ -1,7 +1,7 @@ package com.iformall.domain.po; import com.baomidou.mybatisplus.annotation.TableName; -import com.iformall.domain.po.base.BaseEntity; +import com.iformall.domain.po.base.BaseTenantEntity; import lombok.Data; import lombok.EqualsAndHashCode; @@ -10,14 +10,11 @@ import java.util.Date; @TableName(value = "wx_weapp_code_status") @Data @EqualsAndHashCode(callSuper = true) -public class WxWeappCodeStatus extends BaseEntity { +public class WxWeappCodeStatus extends BaseTenantEntity { private static final long serialVersionUID = 1L; protected Long id; - - - @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") - private String tenantId; + @io.swagger.annotations.ApiModelProperty(value="小程序ID",name="appId") private String appId; @io.swagger.annotations.ApiModelProperty(value="小程序类型(1-B端 2-C端 3-公众服务号 4-公众订阅号)",name="type") diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxWeappReleaseStatus.java b/mallinkService/src/main/java/com/iformall/domain/po/WxWeappReleaseStatus.java index 3a3f7b3ad..0a77d91b2 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxWeappReleaseStatus.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxWeappReleaseStatus.java @@ -1,7 +1,7 @@ package com.iformall.domain.po; import com.baomidou.mybatisplus.annotation.TableName; -import com.iformall.domain.po.base.BaseEntity; +import com.iformall.domain.po.base.BaseTenantEntity; import lombok.Data; import lombok.EqualsAndHashCode; @@ -10,7 +10,7 @@ import java.util.Date; @TableName(value = "wx_weapp_release_status") @Data @EqualsAndHashCode(callSuper = true) -public class WxWeappReleaseStatus extends BaseEntity { +public class WxWeappReleaseStatus extends BaseTenantEntity { private static final long serialVersionUID = 1L; protected Long id; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/base/BaseTenantEntity.java b/mallinkService/src/main/java/com/iformall/domain/po/base/BaseTenantEntity.java index c440a7850..5bd778d7a 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/base/BaseTenantEntity.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/base/BaseTenantEntity.java @@ -12,4 +12,12 @@ import lombok.EqualsAndHashCode; public class BaseTenantEntity extends BaseEntity { @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") private String tenantId; + + public void setTenantInfo(TenantEntity info) { + setTenantId(info.getTenantId()); + } + + public void setTenantInfo(BaseTenantEntity info) { + setTenantId(info.getTenantId()); + } } 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 f8d892f7b..120b3285f 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 @@ -12,4 +12,12 @@ import lombok.EqualsAndHashCode; public class TenantEntity extends BaseEntity { @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") private String tenantId; + + public void setTenantInfo(TenantEntity info) { + setTenantId(info.getTenantId()); + } + + public void setTenantInfo(BaseTenantEntity info) { + setTenantId(info.getTenantId()); + } } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/invest/InvestBaseEntity.java b/mallinkService/src/main/java/com/iformall/domain/po/invest/InvestBaseEntity.java index 1cfa8d6ad..66433fa4c 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/invest/InvestBaseEntity.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/invest/InvestBaseEntity.java @@ -3,9 +3,9 @@ package com.iformall.domain.po.invest; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.fasterxml.jackson.annotation.*; +import com.iformall.domain.po.base.TenantEntity; import lombok.Data; -import java.io.Serializable; import java.util.*; /** @@ -13,9 +13,7 @@ import java.util.*; * @date 2019/4/24 14:32 */ @Data -public class InvestBaseEntity implements Serializable { - - private static final long serialVersionUID = 1L; +public class InvestBaseEntity extends TenantEntity { public static final String COLUMN_TYPE = "json"; diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxFloatingLayerVO.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxFloatingLayerVO.java index 15b341952..bc6443c96 100644 --- a/mallinkService/src/main/java/com/iformall/domain/vo/WxFloatingLayerVO.java +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxFloatingLayerVO.java @@ -1,6 +1,6 @@ package com.iformall.domain.vo; -import com.iformall.domain.po.base.BaseEntity; +import com.iformall.domain.po.base.BaseTenantEntity; import lombok.Data; import lombok.EqualsAndHashCode; @@ -8,14 +8,10 @@ import java.util.Date; @Data @EqualsAndHashCode(callSuper = true) -public class WxFloatingLayerVO extends BaseEntity { - private static final long serialVersionUID = 1L; +public class WxFloatingLayerVO extends BaseTenantEntity { protected Long id; - @io.swagger.annotations.ApiModelProperty(value = "租户ID", name = "tenantId") - private String tenantId; - @io.swagger.annotations.ApiModelProperty(value = "封面图", name = "coverImg") private String coverImg; From 267bfc644b8bf294774e5f5901675175ddbac5a7 Mon Sep 17 00:00:00 2001 From: gongbiao Date: Wed, 30 Oct 2019 15:32:16 +0800 Subject: [PATCH 5/6] =?UTF-8?q?[=E5=90=88=E5=90=8C][=E4=BF=AE=E6=94=B9][?= =?UTF-8?q?=E4=B8=8B=E8=BD=BD]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/iformall/service/impl/WxRentContractServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java index 0c32f3314..79b0b89e9 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -1042,7 +1042,7 @@ public class WxRentContractServiceImpl implements WxRentContractService { for (int i = 0; i < arraySize; i++) { JSONObject rentInfoObject = rentInfoArray.getJSONObject(i); String priceStr = rentInfoObject.getString("price"); - if (priceStr.equalsIgnoreCase("NaN")) { + if (priceStr == null || priceStr.equalsIgnoreCase("NaN")) { priceStr = "0"; } priceArr[i] = new BigDecimal(priceStr).multiply(new BigDecimal(100)).longValue(); From d14792cac723257b9a997da58adb67733fdca5f6 Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Wed, 30 Oct 2019 15:42:22 +0800 Subject: [PATCH 6/6] =?UTF-8?q?[PO][=E4=BF=AE=E6=94=B9]:=E9=9B=86=E5=9B=A2?= =?UTF-8?q?=E7=89=88=E9=A2=84=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/base/BaseController.java | 21 ++++++++++++++++++ .../controller/basic/WxBrandController.java | 4 ++-- .../iformall/controller/BaseController.java | 16 +++++++++++++- .../iformall/controller/BaseController.java | 19 +++++++++++++++- .../domain/po/base/BaseTenantEntity.java | 4 ++-- .../iformall/domain/po/base/TenantEntity.java | 4 ++-- .../domain/po/invest/InvestBaseEntity.java | 2 ++ .../controller/sys/SysMenuController.java | 22 +++++++++---------- 8 files changed, 73 insertions(+), 19 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/base/BaseController.java b/mallinkAdmin/src/main/java/com/iformall/controller/base/BaseController.java index 2767ffb3b..8f174cbe4 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/base/BaseController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/base/BaseController.java @@ -6,9 +6,11 @@ import java.text.SimpleDateFormat; import java.util.Date; import com.iformall.domain.po.MallUserInfo; +import com.iformall.domain.po.base.TenantEntity; import com.iformall.shiro.UserSession; import com.iformall.utils.IPUtil; import org.apache.shiro.SecurityUtils; +import org.apache.shiro.session.Session; import org.springframework.web.bind.WebDataBinder; import org.springframework.web.bind.annotation.InitBinder; import org.springframework.web.bind.annotation.RestController; @@ -51,11 +53,30 @@ public class BaseController { return userId; } + @Deprecated public String getTenantId(){ String tenantId = (String)SecurityUtils.getSubject().getSession().getAttribute(UserSession.tenantId); return tenantId; } + /** + * 返回租户信息 + * @return + */ + public TenantEntity getTenantInfo(){ + Session session = SecurityUtils.getSubject().getSession(); + String tenantId = (String)session.getAttribute(UserSession.tenantId); + + TenantEntity tenantEntity = new TenantEntity(){{ + setTenantId(tenantId); + }}; + return tenantEntity; + } + + public void setTenantInfo(TenantEntity dest, TenantEntity source) { + dest.setTenantId(source.getTenantId()); + } + public String getIpAddr() { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); String ipaddress = IPUtil.getIpAddr(request); diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxBrandController.java b/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxBrandController.java index ca52a78f0..d8c1752e4 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxBrandController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxBrandController.java @@ -65,12 +65,12 @@ public class WxBrandController extends BaseController { @SystemControllerLog(description = "品牌-更新") public ResultData update(@RequestBody WxBrand wxBrand) { logger.debug("[" + getIpAddr() + "] WxBrandController::update"); - wxBrand.setTenantId(getTenantId()); + wxBrand.updateTenantInfo(getTenantInfo()); if(EnumDelFlag.YES.getCode().equals(wxBrand.getIsDel())){ //判断是否解绑商户 WxMerchant wxMerchant = new WxMerchant(); - wxMerchant.setTenantId(wxBrand.getTenantId()); + wxMerchant.updateTenantInfo(wxBrand); wxMerchant.setIsDel(0); wxMerchant.setBrand(wxBrand.getId()); List merchantList = wxMerchantService.findList(wxMerchant); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/BaseController.java b/mallinkBApi/src/main/java/com/iformall/controller/BaseController.java index 4bd571436..c4927eb1c 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/BaseController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/BaseController.java @@ -2,6 +2,7 @@ package com.iformall.controller; import cn.binarywang.wx.miniapp.api.WxMaService; import com.iformall.common.ErrorCode; +import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.po.WxAppinfo; import com.iformall.domain.po.WxBuser; import com.iformall.domain.po.WxMerchantBUser; @@ -88,13 +89,26 @@ public class BaseController { return user; } - + @Deprecated public String getTenantId() { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); String tenantId = (String) request.getAttribute(Constant.TENANT_ID); return tenantId; } + public TenantEntity getTenantInfo() { + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String tenantId = (String) request.getAttribute(Constant.TENANT_ID); + TenantEntity tenantEntity = new TenantEntity() {{ + setTenantId(tenantId); + }}; + return tenantEntity; + } + + public void setTenantInfo(TenantEntity dest, TenantEntity source) { + dest.setTenantId(source.getTenantId()); + } + public WxAppinfo getAppInfo(String appId) { return wxAppinfoService.getByAppId(appId); } diff --git a/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java b/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java index cfe444b2f..2a1153cf7 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java @@ -2,6 +2,7 @@ package com.iformall.controller; import cn.binarywang.wx.miniapp.api.WxMaService; import com.iformall.common.ErrorCode; +import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.po.WxAppinfo; import com.iformall.domain.po.WxCUser; import com.iformall.domain.po.WxCUserBasicInfo; @@ -68,12 +69,26 @@ public class BaseController { }); } + @Deprecated public String getTenantId() { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); String tenantId = (String) request.getAttribute(Constant.TENANT_ID); return tenantId; } + public TenantEntity getTenantInfo() { + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String tenantId = (String) request.getAttribute(Constant.TENANT_ID); + TenantEntity tenantEntity = new TenantEntity() {{ + setTenantId(tenantId); + }}; + return tenantEntity; + } + + public void setTenantInfo(TenantEntity dest, TenantEntity source) { + dest.setTenantId(source.getTenantId()); + } + public Long getUserId() { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); Long cUserId = (Long) request.getAttribute(Constant.LOGIN_USER_KEY); @@ -86,8 +101,10 @@ public class BaseController { public WxCUser getUser() { Long cUserId = getUserId(); WxCUser user = wxCUserService.getById(cUserId); - if (user == null) + if (user == null) { throw new MallinkException(ErrorCode.USER_IS_EMPTY); + } + user.updateTenantInfo(getTenantInfo()); return user; } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/base/BaseTenantEntity.java b/mallinkService/src/main/java/com/iformall/domain/po/base/BaseTenantEntity.java index 5bd778d7a..7ff55f22c 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/base/BaseTenantEntity.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/base/BaseTenantEntity.java @@ -13,11 +13,11 @@ public class BaseTenantEntity extends BaseEntity { @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") private String tenantId; - public void setTenantInfo(TenantEntity info) { + public void updateTenantInfo(TenantEntity info) { setTenantId(info.getTenantId()); } - public void setTenantInfo(BaseTenantEntity info) { + public void updateTenantInfo(BaseTenantEntity info) { setTenantId(info.getTenantId()); } } 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 120b3285f..7e5e27b04 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 @@ -13,11 +13,11 @@ public class TenantEntity extends BaseEntity { @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") private String tenantId; - public void setTenantInfo(TenantEntity info) { + public void updateTenantInfo(TenantEntity info) { setTenantId(info.getTenantId()); } - public void setTenantInfo(BaseTenantEntity info) { + public void updateTenantInfo(BaseTenantEntity info) { setTenantId(info.getTenantId()); } } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/invest/InvestBaseEntity.java b/mallinkService/src/main/java/com/iformall/domain/po/invest/InvestBaseEntity.java index 66433fa4c..b7c51e115 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/invest/InvestBaseEntity.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/invest/InvestBaseEntity.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.fasterxml.jackson.annotation.*; import com.iformall.domain.po.base.TenantEntity; import lombok.Data; +import lombok.EqualsAndHashCode; import java.util.*; @@ -13,6 +14,7 @@ import java.util.*; * @date 2019/4/24 14:32 */ @Data +@EqualsAndHashCode(callSuper = true) public class InvestBaseEntity extends TenantEntity { public static final String COLUMN_TYPE = "json"; diff --git a/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/SysMenuController.java b/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/SysMenuController.java index 8c835b710..63c136265 100644 --- a/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/SysMenuController.java +++ b/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/SysMenuController.java @@ -183,7 +183,7 @@ public class SysMenuController extends BaseController { // 3.1 添加到mall_role_permission try { mallRolePermissionService.saveOrUpdate(new MallRolePermission(){{ - setTenantId(mallRole.getTenantId()); + updateTenantInfo(mallRole); setPermissionId(mp.getId()); setRoleId(mallRole.getId()); }}); @@ -234,7 +234,7 @@ public class SysMenuController extends BaseController { }}); for(MallRolePermission mallRolePermission: mallRolePermissions) { List mallRolePermissionList = mallRolePermissionService.getList(new MallRolePermission(){{ - setTenantId(mallRolePermission.getTenantId()); + updateTenantInfo(mallRolePermission); setRoleId(mallRolePermission.getRoleId()); setPermissionId(menuId_XiTong); }}); @@ -242,7 +242,7 @@ public class SysMenuController extends BaseController { // update 7L->50L try { mallRolePermissionService.saveOrUpdate(new MallRolePermission(){{ - setTenantId(mallRolePermission.getTenantId()); + updateTenantInfo(mallRolePermission); setId(mallRolePermission.getId()); setPermissionId(menuId_XiTong); setRoleId(mallRolePermission.getRoleId()); @@ -342,14 +342,14 @@ public class SysMenuController extends BaseController { }}); for(MallRolePermission mallRolePermission: mallRolePermissions) { List mallRolePermissionList = mallRolePermissionService.getList(new MallRolePermission(){{ - setTenantId(mallRolePermission.getTenantId()); + updateTenantInfo(mallRolePermission); setRoleId(mallRolePermission.getRoleId()); setPermissionId(menuId_Shop); }}); if (mallRolePermissionList.size() <= 0) { try { mallRolePermissionService.saveOrUpdate(new MallRolePermission(){{ - setTenantId(mallRolePermission.getTenantId()); + updateTenantInfo(mallRolePermission); setPermissionId(menuId_Shop); setRoleId(mallRolePermission.getRoleId()); }}); @@ -368,14 +368,14 @@ public class SysMenuController extends BaseController { }}); for(MallRolePermission mallRolePermission: mallRolePermissions) { List mallRolePermissionList = mallRolePermissionService.getList(new MallRolePermission(){{ - setTenantId(mallRolePermission.getTenantId()); + updateTenantInfo(mallRolePermission); setRoleId(mallRolePermission.getRoleId()); setPermissionId(menuId_Duojing); }}); if (mallRolePermissionList.size() <= 0) { try { mallRolePermissionService.saveOrUpdate(new MallRolePermission(){{ - setTenantId(mallRolePermission.getTenantId()); + updateTenantInfo(mallRolePermission); setPermissionId(menuId_Duojing); setRoleId(mallRolePermission.getRoleId()); }}); @@ -440,14 +440,14 @@ public class SysMenuController extends BaseController { }}); for(MallRolePermission mallRolePermission: mallRolePermissions) { List mallRolePermissionList = mallRolePermissionService.getList(new MallRolePermission(){{ - setTenantId(mallRolePermission.getTenantId()); + updateTenantInfo(mallRolePermission); setRoleId(mallRolePermission.getRoleId()); setPermissionId(menuId_Zhangdanliebiao); }}); if (mallRolePermissionList.size() <= 0) { try { mallRolePermissionService.saveOrUpdate(new MallRolePermission(){{ - setTenantId(mallRolePermission.getTenantId()); + updateTenantInfo(mallRolePermission); setPermissionId(menuId_Zhangdanliebiao); setRoleId(mallRolePermission.getRoleId()); }}); @@ -494,14 +494,14 @@ public class SysMenuController extends BaseController { }}); for(MallRolePermission mallRolePermission: mallRolePermissions) { List mallRolePermissionList = mallRolePermissionService.getList(new MallRolePermission(){{ - setTenantId(mallRolePermission.getTenantId()); + updateTenantInfo(mallRolePermission); setRoleId(mallRolePermission.getRoleId()); setPermissionId(menuId_ZhangdanMan); }}); if (mallRolePermissionList.size() <= 0) { try { mallRolePermissionService.saveOrUpdate(new MallRolePermission(){{ - setTenantId(mallRolePermission.getTenantId()); + updateTenantInfo(mallRolePermission); setPermissionId(menuId_ZhangdanMan); setRoleId(mallRolePermission.getRoleId()); }});