diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/datatower/WxMerchantTradeDailyController.java b/mallinkAdmin/src/main/java/com/iformall/controller/datatower/WxMerchantTradeDailyController.java index 75e4592ca..69318c152 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/datatower/WxMerchantTradeDailyController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/datatower/WxMerchantTradeDailyController.java @@ -30,14 +30,6 @@ public class WxMerchantTradeDailyController extends BaseController { @Autowired private WxMerchantTradeDailyService wxMerchantTradeDailyService; - @ApiOperation("获得指定日期的解单,默认不传reportDate为当天") - @GetMapping("/getVolume") - @SystemControllerLog(description = "解单-获得指定日期的解单") - public ResultData getVolume(WxMerchantTradeDaily wxMerchantTradeDaily) { - wxMerchantTradeDaily.setTenantId(getTenantId()); - return wxMerchantTradeDailyService.getVolume(wxMerchantTradeDaily,getUser().getId()); - } - @ApiOperation("获得解单列表") @GetMapping("/list") @@ -45,18 +37,14 @@ public class WxMerchantTradeDailyController extends BaseController { @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) @SystemControllerLog(description = "商户-获得昨日解单列表") - public ResultData list(@ModelAttribute WxMerchantTradeDailyVo wxMerchantTradeDaily, Integer pageNum, Integer pageSize) { + public ResultData list(@ModelAttribute WxMerchantTradeDaily wxMerchantTradeDaily, Integer pageNum, Integer pageSize) { logger.debug("[" + getIpAddr() + "] WxMerchantTradeDailyController::listYesterday"); if (wxMerchantTradeDaily == null) - wxMerchantTradeDaily = new WxMerchantTradeDailyVo(); + wxMerchantTradeDaily = new WxMerchantTradeDaily(); wxMerchantTradeDaily.setTenantId(getTenantId()); - if (wxMerchantTradeDaily.getReportDate() == null) { - SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd"); - wxMerchantTradeDaily.setReportDate(fmt.format(new Date())); - } - wxMerchantTradeDaily.setSortColumns(BaseEntity.SortField.MerchantId_DESC); + wxMerchantTradeDaily.setSortColumns(BaseEntity.SortField.ReportDate_DESC,BaseEntity.SortField.MerchantId_DESC); PageInfo page = wxMerchantTradeDailyService.listAsPageVo(wxMerchantTradeDaily, pageNum, pageSize); return new ResultData(page); @@ -81,7 +69,7 @@ public class WxMerchantTradeDailyController extends BaseController { @ApiOperation("更新解单数据") @PostMapping("/update") @SystemControllerLog(description = "商户-更新解单数据") - public ResultData update(@RequestBody WxMerchantTradeDailyVo wxMerchantTradeDaily) { + public ResultData update(@RequestBody WxMerchantTradeDaily wxMerchantTradeDaily) { logger.debug("[" + getIpAddr() + "] WxMerchantTradeDailyController::updateYesterday"); if (wxMerchantTradeDaily == null || wxMerchantTradeDaily.getMerchantId() == null || @@ -98,7 +86,7 @@ public class WxMerchantTradeDailyController extends BaseController { @ApiOperation("查询解单数据") @GetMapping("/queryTradeDaily") @SystemControllerLog(description = "商户-查询解单数据") - public ResultData queryTradeDaily(@ModelAttribute WxMerchantTradeDailyVo wxMerchantTradeDaily) { + public ResultData queryTradeDaily(@ModelAttribute WxMerchantTradeDaily wxMerchantTradeDaily) { logger.debug("[" + getIpAddr() + "] WxMerchantTradeDailyController::queryTradeDaily"); wxMerchantTradeDaily.setTenantId(getTenantId()); return wxMerchantTradeDailyService.queryTradeDaily(wxMerchantTradeDaily); @@ -106,17 +94,13 @@ public class WxMerchantTradeDailyController extends BaseController { @GetMapping("exportData") @SystemControllerLog(description = "商户解单数据-导出数据") - public void exportData(@ModelAttribute WxMerchantTradeDailyVo wxMerchantTradeDaily, HttpServletRequest request, HttpServletResponse response) { + public void exportData(@ModelAttribute WxMerchantTradeDaily wxMerchantTradeDaily, HttpServletRequest request, HttpServletResponse response) { logger.debug("[" + getIpAddr() + "] WxMerchantTradeDailyController::exportData"); if (null == wxMerchantTradeDaily) { - wxMerchantTradeDaily = new WxMerchantTradeDailyVo(); + wxMerchantTradeDaily = new WxMerchantTradeDaily(); } - wxMerchantTradeDaily.setTenantId(getTenantId()); - if (wxMerchantTradeDaily.getReportDate() == null) { - SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd"); - wxMerchantTradeDaily.setReportDate(fmt.format(new Date())); - } - wxMerchantTradeDaily.setSortColumns(BaseEntity.SortField.MerchantId_DESC); + + wxMerchantTradeDaily.setSortColumns(BaseEntity.SortField.ReportDate_DESC,BaseEntity.SortField.MerchantId_DESC); wxMerchantTradeDailyService.exportData(wxMerchantTradeDaily, request, response); } diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCreditHistoryController.java b/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCreditHistoryController.java index 4d64a734c..2b6430187 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCreditHistoryController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCreditHistoryController.java @@ -97,4 +97,13 @@ public class WxCreditHistoryController extends BaseController { wxCreditHistoryService.exportData(request, response, wxCreditHistory); } + @ApiOperation("积分统计概览") + @GetMapping("getCreditSummary") + @SystemControllerLog(description = "积分历史-积分统计概览") + public ResultData getCreditSummary(@ModelAttribute WxCreditHistory wxCreditHistory) { + logger.debug("[" + getIpAddr() + "] WxCreditHistoryController::getCreditSummary"); + wxCreditHistory.setTenantId(getTenantId()); + return wxCreditHistoryService.getCreditSummary(wxCreditHistory); + } + } diff --git a/mallinkAdmin/src/main/resources/application-dev.yml b/mallinkAdmin/src/main/resources/application-dev.yml index b42940e74..0ae1a7e6a 100644 --- a/mallinkAdmin/src/main/resources/application-dev.yml +++ b/mallinkAdmin/src/main/resources/application-dev.yml @@ -111,7 +111,7 @@ jasypt: fm: exception: false - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 1 open: true upload_dir: /home/test/server/uploads/ diff --git a/mallinkAdmin/src/main/resources/application-prod.yml b/mallinkAdmin/src/main/resources/application-prod.yml index 83bd12514..9b23d6034 100644 --- a/mallinkAdmin/src/main/resources/application-prod.yml +++ b/mallinkAdmin/src/main/resources/application-prod.yml @@ -95,7 +95,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 3 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkAdmin/src/main/resources/application-test.yml b/mallinkAdmin/src/main/resources/application-test.yml index f6d7426ea..291fdc71b 100644 --- a/mallinkAdmin/src/main/resources/application-test.yml +++ b/mallinkAdmin/src/main/resources/application-test.yml @@ -95,7 +95,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 2 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkAdmin/src/main/resources/db/migration/V201908130940__POS_CHANGED.sql b/mallinkAdmin/src/main/resources/db/migration/V201908130940__POS_CHANGED.sql new file mode 100644 index 000000000..1108a87bf --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V201908130940__POS_CHANGED.sql @@ -0,0 +1,2 @@ +alter table pos_mall_config +add column `card` tinyint(6) NOT NULL DEFAULT '0' COMMENT '会员优惠券状态,0-使用中,1-禁用'; \ No newline at end of file diff --git a/mallinkAdmin/src/main/resources/db/migration/V201908131046__L_CONTRACT.sql b/mallinkAdmin/src/main/resources/db/migration/V201908131046__L_CONTRACT.sql new file mode 100644 index 000000000..7a265c598 --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V201908131046__L_CONTRACT.sql @@ -0,0 +1,2 @@ +alter table wx_rent_contract +add column `bus_discount_ratio` json NULL DEFAULT NULL COMMENT '联营扣点率'; \ No newline at end of file diff --git a/mallinkBApi/src/main/resources/application-dev.yml b/mallinkBApi/src/main/resources/application-dev.yml index 6b7d302e5..58c8b199e 100644 --- a/mallinkBApi/src/main/resources/application-dev.yml +++ b/mallinkBApi/src/main/resources/application-dev.yml @@ -104,7 +104,7 @@ wechat: fm: exception: false - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 1 open: true upload_dir: /home/test/server/uploads diff --git a/mallinkBApi/src/main/resources/application-prod.yml b/mallinkBApi/src/main/resources/application-prod.yml index 23b4ab7f2..68ed5e22a 100644 --- a/mallinkBApi/src/main/resources/application-prod.yml +++ b/mallinkBApi/src/main/resources/application-prod.yml @@ -88,7 +88,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 3 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkBApi/src/main/resources/application-test.yml b/mallinkBApi/src/main/resources/application-test.yml index e0f7072ba..9a57cd7a3 100644 --- a/mallinkBApi/src/main/resources/application-test.yml +++ b/mallinkBApi/src/main/resources/application-test.yml @@ -88,7 +88,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 2 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkCApi/src/main/resources/application-dev.yml b/mallinkCApi/src/main/resources/application-dev.yml index 48d3fa5ba..04a7c5b81 100644 --- a/mallinkCApi/src/main/resources/application-dev.yml +++ b/mallinkCApi/src/main/resources/application-dev.yml @@ -104,7 +104,7 @@ jasypt: fm: exception: false - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 1 open: true upload_dir: /home/test/server/uploads/ diff --git a/mallinkCApi/src/main/resources/application-prod.yml b/mallinkCApi/src/main/resources/application-prod.yml index 470c51ae1..a0e7be005 100644 --- a/mallinkCApi/src/main/resources/application-prod.yml +++ b/mallinkCApi/src/main/resources/application-prod.yml @@ -88,7 +88,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 3 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkCApi/src/main/resources/application-test.yml b/mallinkCApi/src/main/resources/application-test.yml index 530be4bf3..37e4ed2ba 100644 --- a/mallinkCApi/src/main/resources/application-test.yml +++ b/mallinkCApi/src/main/resources/application-test.yml @@ -88,7 +88,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 2 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkCallback/src/main/resources/application-dev.yml b/mallinkCallback/src/main/resources/application-dev.yml index b67cd41aa..3aec435da 100644 --- a/mallinkCallback/src/main/resources/application-dev.yml +++ b/mallinkCallback/src/main/resources/application-dev.yml @@ -109,7 +109,7 @@ jasypt: fm: exception: false - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 1 open: true upload_dir: /home/test/server/uploads/ diff --git a/mallinkCallback/src/main/resources/application-prod.yml b/mallinkCallback/src/main/resources/application-prod.yml index 8052cc255..a97548443 100644 --- a/mallinkCallback/src/main/resources/application-prod.yml +++ b/mallinkCallback/src/main/resources/application-prod.yml @@ -93,7 +93,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 3 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkCallback/src/main/resources/application-test.yml b/mallinkCallback/src/main/resources/application-test.yml index d51711c1f..b92a8e4e6 100644 --- a/mallinkCallback/src/main/resources/application-test.yml +++ b/mallinkCallback/src/main/resources/application-test.yml @@ -93,7 +93,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 2 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkMQConsumer/src/main/resources/application-dev.yml b/mallinkMQConsumer/src/main/resources/application-dev.yml index 3bc433ec1..fddf5921a 100644 --- a/mallinkMQConsumer/src/main/resources/application-dev.yml +++ b/mallinkMQConsumer/src/main/resources/application-dev.yml @@ -104,7 +104,7 @@ jasypt: fm: exception: false - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 1 open: true upload_dir: /home/test/server/uploads/ diff --git a/mallinkMQConsumer/src/main/resources/application-prod.yml b/mallinkMQConsumer/src/main/resources/application-prod.yml index c6d176f81..38cf855e0 100644 --- a/mallinkMQConsumer/src/main/resources/application-prod.yml +++ b/mallinkMQConsumer/src/main/resources/application-prod.yml @@ -89,7 +89,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 3 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkMQConsumer/src/main/resources/application-test.yml b/mallinkMQConsumer/src/main/resources/application-test.yml index f7e9e0bd1..04a0e9037 100644 --- a/mallinkMQConsumer/src/main/resources/application-test.yml +++ b/mallinkMQConsumer/src/main/resources/application-test.yml @@ -89,7 +89,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 2 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkPosApi/src/main/java/com/iformall/controller/PosController.java b/mallinkPosApi/src/main/java/com/iformall/controller/PosController.java index 19ae02c5a..264165e65 100644 --- a/mallinkPosApi/src/main/java/com/iformall/controller/PosController.java +++ b/mallinkPosApi/src/main/java/com/iformall/controller/PosController.java @@ -31,7 +31,7 @@ public class PosController extends BaseController { private final PosService posService; private final ThDevInfoService thDevInfoService; - @ApiOperation(value = "获取会员折扣/优惠券是否启用", notes = "{" + + @ApiOperation(value = "获取会员折扣/优惠券/消费卡是否启用", notes = "{" + "\"dev_id\":\"string(必填)\"," + "\"tenant_id\":\"string(必填)\"," + "\"nonce_str\":\"string(必填)\"}") diff --git a/mallinkPosApi/src/main/java/com/iformall/service/impl/PosServiceImpl.java b/mallinkPosApi/src/main/java/com/iformall/service/impl/PosServiceImpl.java index 588e48f5c..35dab742b 100644 --- a/mallinkPosApi/src/main/java/com/iformall/service/impl/PosServiceImpl.java +++ b/mallinkPosApi/src/main/java/com/iformall/service/impl/PosServiceImpl.java @@ -73,6 +73,7 @@ public class PosServiceImpl implements PosService { } retMap.put(WxPayConstant.MEM_DISCOUNT, String.valueOf(config.getDiscount().equals(EnumEnableType.Enable.getCode()))); retMap.put(WxPayConstant.MEM_COUPON, String.valueOf(config.getCoupon().equals(EnumEnableType.Enable.getCode()))); + retMap.put(WxPayConstant.MEM_CARD, String.valueOf(config.getCard().equals(EnumEnableType.Enable.getCode()))); return retMap; } @@ -302,7 +303,7 @@ public class PosServiceImpl implements PosService { String errMessage = "request params[verify_type] error."; throw new MallinkException(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), errMessage); } - if ((!verifyType.equalsIgnoreCase(WxPayConstant.VERIFY_INDEPENT) || verifyType.equalsIgnoreCase(WxPayConstant.VERIFY_PAY))) { + if (!(verifyType.equalsIgnoreCase(WxPayConstant.VERIFY_INDEPENT) || verifyType.equalsIgnoreCase(WxPayConstant.VERIFY_PAY))) { String errMessage = "request params[verify_type] only support independent or pay."; throw new MallinkException(ErrorCode.SYS_PARAMETER_CAST_ERROR.getCode(), errMessage); } @@ -732,7 +733,7 @@ public class PosServiceImpl implements PosService { } if (blVerify) { try { - doVerify(couponOrderCVo, wxCoupon, merchantId, buUserId, posOrderId, retMap); + doVerify(actionType, couponOrderCVo, wxCoupon, merchantId, buUserId, posOrderId, retMap); Integer remainAmount = posAmount - couponOrderCVo.getPrice(); if (remainAmount < 0) { remainAmount = 0; @@ -980,7 +981,7 @@ public class PosServiceImpl implements PosService { * @param buUserId * @param posOrderId */ - private void doVerify(WxCouponOrderCVo couponOrderCVo, WxCoupon coupon, Long merchantId, Long buUserId, Long posOrderId, Map retMap) { + private void doVerify(EnumVerifyActionType actionType, WxCouponOrderCVo couponOrderCVo, WxCoupon coupon, Long merchantId, Long buUserId, Long posOrderId, Map retMap) { int num = 0; // 1. insert posOrderId PosCouponOrderVerify posCouponOrderVerify = new PosCouponOrderVerify(); @@ -1007,9 +1008,15 @@ public class PosServiceImpl implements PosService { couponOrder.setId(couponOrderCVo.getId()); couponOrder.setTenantId(couponOrderCVo.getTenantId()); couponOrder.setCouponOrderStatus(EnumCouponOrderStatus.COUPON_ORDER_USED.getCode()); //1核销 - couponOrder.setBUserId(buUserId); + if (actionType.equals(EnumVerifyActionType.VERIFY_PAY)) { + couponOrder.setBUserId(buUserId); + } couponOrder.setUpdateDate(new Date()); - num = couponOrderMapper.updateVerifyCouponOrderStatus(couponOrder); + if (actionType.equals(EnumVerifyActionType.VERIFY_INDEPENT)) { + num = couponOrderMapper.updateVerifyCouponOrder(couponOrder); + } else { + num = couponOrderMapper.updateVerifyCouponOrderStatus(couponOrder); + } } catch (Exception e) { logger.error("db failed: couponOrder-" + couponOrderCVo.getId() + ", e:" + e.getMessage()); throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); diff --git a/mallinkPosApi/src/main/resources/application-dev.yml b/mallinkPosApi/src/main/resources/application-dev.yml index b6f185562..449f9b8d2 100644 --- a/mallinkPosApi/src/main/resources/application-dev.yml +++ b/mallinkPosApi/src/main/resources/application-dev.yml @@ -104,7 +104,7 @@ wechat: fm: exception: false - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 1 open: true upload_dir: /home/test/server/uploads diff --git a/mallinkPosApi/src/main/resources/application-prod.yml b/mallinkPosApi/src/main/resources/application-prod.yml index d7f5ba752..7ce24f371 100644 --- a/mallinkPosApi/src/main/resources/application-prod.yml +++ b/mallinkPosApi/src/main/resources/application-prod.yml @@ -88,7 +88,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 3 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkPosApi/src/main/resources/application-test.yml b/mallinkPosApi/src/main/resources/application-test.yml index e07c5955b..9d7cc7dba 100644 --- a/mallinkPosApi/src/main/resources/application-test.yml +++ b/mallinkPosApi/src/main/resources/application-test.yml @@ -88,7 +88,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 2 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkPosApi/src/test/java/com/iformall/pos/test/PosAppTest.java b/mallinkPosApi/src/test/java/com/iformall/pos/test/PosAppTest.java index 5c86a202c..efe2bf301 100644 --- a/mallinkPosApi/src/test/java/com/iformall/pos/test/PosAppTest.java +++ b/mallinkPosApi/src/test/java/com/iformall/pos/test/PosAppTest.java @@ -18,7 +18,6 @@ import org.springframework.test.context.ActiveProfiles; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.MvcResult; -import org.springframework.test.web.servlet.RequestBuilder; import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; import org.springframework.test.web.servlet.result.MockMvcResultHandlers; import org.springframework.test.web.servlet.result.MockMvcResultMatchers; @@ -41,9 +40,9 @@ public class PosAppTest { @Autowired private MockMvc mockMvc; - private static final String devId = "fmpos"; - private static final String devReqKey = "ZiGFLC4@3c5sTLZT"; - private static final String devResKey = "ugPAM7wd&%p6I0W8"; + private static final String devId = "neupos"; + private static final String devReqKey = "qVH2YDmXJ$ok4a95"; + private static final String devResKey = "VE#1fB2PhUe@&3Of"; private static final String tenantId = "456"; @@ -69,7 +68,8 @@ public class PosAppTest { reqObj.put(WxPayConstant.POS_ORDER_ID, ""); reqObj.put(WxPayConstant.SIGN, WxPayment.createSignHMAC(reqObj, devReqKey)); String reqJsonStr = JSONObject.toJSONString(reqObj); - this.mockMvc.perform(MockMvcRequestBuilders.post("/checkCouponOrderForVerify") + this.mockMvc.perform( + MockMvcRequestBuilders.post("/checkCouponOrderForVerify") .contentType(MediaType.APPLICATION_JSON) .content(reqJsonStr) ) @@ -86,18 +86,19 @@ public class PosAppTest { reqObj.put(WxPayConstant.TENANT_ID, tenantId); reqObj.put(WxPayConstant.SIGN, WxPayment.createSignHMAC(reqObj, devReqKey)); String reqJsonStr = JSONObject.toJSONString(reqObj); - RequestBuilder request = MockMvcRequestBuilders.post("/getPosMemConfigStatus") - .contentType(MediaType.APPLICATION_JSON) - .content(reqJsonStr); - MvcResult result = mockMvc.perform(request).andReturn(); + MvcResult result = mockMvc.perform( + MockMvcRequestBuilders.post("/getPosMemConfigStatus") + .contentType(MediaType.APPLICATION_JSON) + .content(reqJsonStr)) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); String responseStr = result.getResponse().getContentAsString(); - System.out.println(responseStr); - ObjectMapper mapper = new ObjectMapper(); Map respMap = mapper.readValue(responseStr, Map.class); boolean resSigned = WxPayment.verifyNotifyHMAC(respMap, devResKey); System.out.println("response sign: " + resSigned); - Assert.assertEquals(resSigned, true); + Assert.assertEquals(resSigned, true); } @Test @@ -107,17 +108,17 @@ public class PosAppTest { reqObj.put(WxPayConstant.TENANT_ID, tenantId); reqObj.put(WxPayConstant.SIGN, WxPayment.createSignHMAC(reqObj, devReqKey)); String reqJsonStr = JSONObject.toJSONString(reqObj); - RequestBuilder request = MockMvcRequestBuilders.post("/getQrCode") + MvcResult result = mockMvc.perform( + MockMvcRequestBuilders.post("/getQrCode") .contentType(MediaType.APPLICATION_JSON) - .content(reqJsonStr); - MvcResult result = mockMvc.perform(request).andReturn(); + .content(reqJsonStr)) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); String responseStr = result.getResponse().getContentAsString(); - System.out.println(responseStr); - ObjectMapper mapper = new ObjectMapper(); Map respMap = mapper.readValue(responseStr, Map.class); boolean resSigned = WxPayment.verifyNotifyHMAC(respMap, devResKey); - System.out.println("response sign: " + resSigned); Assert.assertEquals(resSigned, true); } @@ -133,17 +134,17 @@ public class PosAppTest { reqObj.put(WxPayConstant.POS_AMOUNT, "100"); reqObj.put(WxPayConstant.SIGN, WxPayment.createSignHMAC(reqObj, devReqKey)); String reqJsonStr = JSONObject.toJSONString(reqObj); - RequestBuilder request = MockMvcRequestBuilders.post("/checkMem") + MvcResult result = mockMvc.perform( + MockMvcRequestBuilders.post("/checkMem") .contentType(MediaType.APPLICATION_JSON) - .content(reqJsonStr); - MvcResult result = mockMvc.perform(request).andReturn(); + .content(reqJsonStr)) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); String responseStr = result.getResponse().getContentAsString(); - System.out.println(responseStr); - ObjectMapper mapper = new ObjectMapper(); Map respMap = mapper.readValue(responseStr, Map.class); boolean resSigned = WxPayment.verifyNotifyHMAC(respMap, devResKey); - System.out.println("response sign: " + resSigned); Assert.assertEquals(resSigned, true); } @@ -161,17 +162,17 @@ public class PosAppTest { reqObj.put(WxPayConstant.POS_AMOUNT, "100"); reqObj.put(WxPayConstant.SIGN, WxPayment.createSignHMAC(reqObj, devReqKey)); String reqJsonStr = JSONObject.toJSONString(reqObj); - RequestBuilder request = MockMvcRequestBuilders.post("/checkCouponOrderForVerify") + MvcResult result = mockMvc.perform( + MockMvcRequestBuilders.post("/checkCouponOrderForVerify") .contentType(MediaType.APPLICATION_JSON) - .content(reqJsonStr); - MvcResult result = mockMvc.perform(request).andReturn(); + .content(reqJsonStr)) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); String responseStr = result.getResponse().getContentAsString(); - System.out.println(responseStr); - ObjectMapper mapper = new ObjectMapper(); Map respMap = mapper.readValue(responseStr, Map.class); boolean resSigned = WxPayment.verifyNotifyHMAC(respMap, devResKey); - System.out.println("response sign: " + resSigned); Assert.assertEquals(resSigned, true); } @@ -189,17 +190,17 @@ public class PosAppTest { reqObj.put(WxPayConstant.POS_AMOUNT, "100"); reqObj.put(WxPayConstant.SIGN, WxPayment.createSignHMAC(reqObj, devReqKey)); String reqJsonStr = JSONObject.toJSONString(reqObj); - RequestBuilder request = MockMvcRequestBuilders.post("/checkCouponOrderForVerify") + MvcResult result = mockMvc.perform( + MockMvcRequestBuilders.post("/checkCouponOrderForVerify") .contentType(MediaType.APPLICATION_JSON) - .content(reqJsonStr); - MvcResult result = mockMvc.perform(request).andReturn(); + .content(reqJsonStr)) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); String responseStr = result.getResponse().getContentAsString(); - System.out.println(responseStr); - ObjectMapper mapper = new ObjectMapper(); Map respMap = mapper.readValue(responseStr, Map.class); boolean resSigned = WxPayment.verifyNotifyHMAC(respMap, devResKey); - System.out.println("response sign: " + resSigned); Assert.assertEquals(resSigned, true); } @@ -215,17 +216,18 @@ public class PosAppTest { reqObj.put(WxPayConstant.POS_ORDER_ID, "1"); reqObj.put(WxPayConstant.SIGN, WxPayment.createSignHMAC(reqObj, devReqKey)); String reqJsonStr = JSONObject.toJSONString(reqObj); - RequestBuilder request = MockMvcRequestBuilders.post("/couponOrderIndependentVerify") + MvcResult result = mockMvc.perform( + MockMvcRequestBuilders.post("/couponOrderIndependentVerify") .contentType(MediaType.APPLICATION_JSON) - .content(reqJsonStr); - MvcResult result = mockMvc.perform(request).andReturn(); + .content(reqJsonStr)) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); String responseStr = result.getResponse().getContentAsString(); - System.out.println(responseStr); ObjectMapper mapper = new ObjectMapper(); Map respMap = mapper.readValue(responseStr, Map.class); boolean resSigned = WxPayment.verifyNotifyHMAC(respMap, devResKey); - System.out.println("response sign: " + resSigned); Assert.assertEquals(resSigned, true); } @@ -241,17 +243,17 @@ public class PosAppTest { reqObj.put(WxPayConstant.POS_ORDER_ID, "1"); reqObj.put(WxPayConstant.SIGN, WxPayment.createSignHMAC(reqObj, devReqKey)); String reqJsonStr = JSONObject.toJSONString(reqObj); - RequestBuilder request = MockMvcRequestBuilders.post("/couponOrderVerifyCancel") + MvcResult result = mockMvc.perform( + MockMvcRequestBuilders.post("/couponOrderVerifyCancel") .contentType(MediaType.APPLICATION_JSON) - .content(reqJsonStr); - MvcResult result = mockMvc.perform(request).andReturn(); + .content(reqJsonStr)) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); String responseStr = result.getResponse().getContentAsString(); - System.out.println(responseStr); - ObjectMapper mapper = new ObjectMapper(); Map respMap = mapper.readValue(responseStr, Map.class); boolean resSigned = WxPayment.verifyNotifyHMAC(respMap, devResKey); - System.out.println("response sign: " + resSigned); Assert.assertEquals(resSigned, true); } @@ -265,20 +267,20 @@ public class PosAppTest { reqObj.put(WxPayConstant.COUPON_ORDER_ID, "318978990426783744"); reqObj.put(WxPayConstant.NONCE_STR, "1"); reqObj.put(WxPayConstant.POS_ORDER_ID, "1"); - reqObj.put(WxPayConstant.POS_AMOUNT, "100"); + reqObj.put(WxPayConstant.POS_AMOUNT, "200"); reqObj.put(WxPayConstant.SIGN, WxPayment.createSignHMAC(reqObj, devReqKey)); String reqJsonStr = JSONObject.toJSONString(reqObj); - RequestBuilder request = MockMvcRequestBuilders.post("/couponOrderPreVerify") + MvcResult result = mockMvc.perform( + MockMvcRequestBuilders.post("/couponOrderPreVerify") .contentType(MediaType.APPLICATION_JSON) - .content(reqJsonStr); - MvcResult result = mockMvc.perform(request).andReturn(); + .content(reqJsonStr)) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); String responseStr = result.getResponse().getContentAsString(); - System.out.println(responseStr); - ObjectMapper mapper = new ObjectMapper(); Map respMap = mapper.readValue(responseStr, Map.class); boolean resSigned = WxPayment.verifyNotifyHMAC(respMap, devResKey); - System.out.println("response sign: " + resSigned); Assert.assertEquals(resSigned, true); } @@ -294,17 +296,17 @@ public class PosAppTest { reqObj.put(WxPayConstant.POS_ORDER_ID, "1"); reqObj.put(WxPayConstant.SIGN, WxPayment.createSignHMAC(reqObj, devReqKey)); String reqJsonStr = JSONObject.toJSONString(reqObj); - RequestBuilder request = MockMvcRequestBuilders.post("/couponOrderPreVerifyCancel") + MvcResult result = mockMvc.perform( + MockMvcRequestBuilders.post("/couponOrderPreVerifyCancel") .contentType(MediaType.APPLICATION_JSON) - .content(reqJsonStr); - MvcResult result = mockMvc.perform(request).andReturn(); + .content(reqJsonStr)) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); String responseStr = result.getResponse().getContentAsString(); - System.out.println(responseStr); - ObjectMapper mapper = new ObjectMapper(); Map respMap = mapper.readValue(responseStr, Map.class); boolean resSigned = WxPayment.verifyNotifyHMAC(respMap, devResKey); - System.out.println("response sign: " + resSigned); Assert.assertEquals(resSigned, true); } @@ -321,17 +323,17 @@ public class PosAppTest { reqObj.put(WxPayConstant.POS_AMOUNT, "200"); reqObj.put(WxPayConstant.SIGN, WxPayment.createSignHMAC(reqObj, devReqKey)); String reqJsonStr = JSONObject.toJSONString(reqObj); - RequestBuilder request = MockMvcRequestBuilders.post("/couponOrderPayVerifyOne") + MvcResult result = mockMvc.perform( + MockMvcRequestBuilders.post("/couponOrderPayVerifyOne") .contentType(MediaType.APPLICATION_JSON) - .content(reqJsonStr); - MvcResult result = mockMvc.perform(request).andReturn(); + .content(reqJsonStr)) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); String responseStr = result.getResponse().getContentAsString(); - System.out.println(responseStr); - ObjectMapper mapper = new ObjectMapper(); Map respMap = mapper.readValue(responseStr, Map.class); boolean resSigned = WxPayment.verifyNotifyHMAC(respMap, devResKey); - System.out.println("response sign: " + resSigned); Assert.assertEquals(resSigned, true); } @@ -348,17 +350,17 @@ public class PosAppTest { reqObj.put(WxPayConstant.POS_AMOUNT, "200"); reqObj.put(WxPayConstant.SIGN, WxPayment.createSignHMAC(reqObj, devReqKey)); String reqJsonStr = JSONObject.toJSONString(reqObj); - RequestBuilder request = MockMvcRequestBuilders.post("/couponOrderPayVerifyList") + MvcResult result = mockMvc.perform( + MockMvcRequestBuilders.post("/couponOrderPayVerifyList") .contentType(MediaType.APPLICATION_JSON) - .content(reqJsonStr); - MvcResult result = mockMvc.perform(request).andReturn(); + .content(reqJsonStr)) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); String responseStr = result.getResponse().getContentAsString(); - System.out.println(responseStr); - ObjectMapper mapper = new ObjectMapper(); Map respMap = mapper.readValue(responseStr, Map.class); boolean resSigned = WxPayment.verifyNotifyHMAC(respMap, devResKey); - System.out.println("response sign: " + resSigned); Assert.assertEquals(resSigned, true); } } diff --git a/mallinkSchedule/src/main/resources/application-dev.yml b/mallinkSchedule/src/main/resources/application-dev.yml index b23c40d83..c6c6f8911 100644 --- a/mallinkSchedule/src/main/resources/application-dev.yml +++ b/mallinkSchedule/src/main/resources/application-dev.yml @@ -104,11 +104,11 @@ jasypt: fm: exception: false - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 1 open: true upload_dir: /home/test/server/uploads/ - monitor_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com,sunmingming@iformall.com,huanghui@iformall.com,wangmei@iformall.com,liuhui@iformall.com,luqicai@iformall.com + monitor_emails: houtaikaifa@iformall.com,xiaochengxufabu@iformall.com monitor_enable: true logging: diff --git a/mallinkSchedule/src/main/resources/application-prod.yml b/mallinkSchedule/src/main/resources/application-prod.yml index 9b57d6916..be285d68d 100644 --- a/mallinkSchedule/src/main/resources/application-prod.yml +++ b/mallinkSchedule/src/main/resources/application-prod.yml @@ -89,11 +89,11 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 3 open: true upload_dir: /home/ec2-user/server/uploads/ - monitor_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com,sunmingming@iformall.com,huanghui@iformall.com,wangmei@iformall.com,liuhui@iformall.com,luqicai@iformall.com + monitor_emails: houtaikaifa@iformall.com,xiaochengxufabu@iformall.com monitor_enable: false logging: diff --git a/mallinkSchedule/src/main/resources/application-test.yml b/mallinkSchedule/src/main/resources/application-test.yml index 53e62a898..3f0409ad3 100644 --- a/mallinkSchedule/src/main/resources/application-test.yml +++ b/mallinkSchedule/src/main/resources/application-test.yml @@ -89,11 +89,11 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 2 open: true upload_dir: /home/ec2-user/server/uploads/ - monitor_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com,sunmingming@iformall.com,huanghui@iformall.com,wangmei@iformall.com,liuhui@iformall.com,luqicai@iformall.com + monitor_emails: houtaikaifa@iformall.com,xiaochengxufabu@iformall.com monitor_enable: false logging: diff --git a/mallinkService/src/main/java/com/iformall/domain/po/BaseEntity.java b/mallinkService/src/main/java/com/iformall/domain/po/BaseEntity.java index 08d80ff93..e45f23d2e 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/BaseEntity.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/BaseEntity.java @@ -166,6 +166,12 @@ public class BaseEntity implements Serializable { Date_ASC("`date` ASC"), Date_DESC("`date` DESC"), + + TradeAmt_ASC("`trade_amt` ASC"), + TradeAmt_DESC("`trade_amt` DESC"), + + ReportDate_ASC("`report_date` ASC"), + ReportDate_DESC("`report_date` DESC"), ; private String value; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/PosMallConfig.java b/mallinkService/src/main/java/com/iformall/domain/po/PosMallConfig.java index a5a9d24d4..fe9386fd1 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/PosMallConfig.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/PosMallConfig.java @@ -1,17 +1,18 @@ package com.iformall.domain.po; import lombok.Data; +import lombok.EqualsAndHashCode; + import javax.persistence.*; import java.util.*; -import java.math.*; import javax.persistence.Transient; import java.util.List; import javax.persistence.Id; -import java.io.Serializable; @Table(name = "pos_mall_config") @Data -public class PosMallConfig implements Serializable { +@EqualsAndHashCode(callSuper = true) +public class PosMallConfig extends BaseEntity { private static final long serialVersionUID = 1L; @Id @@ -22,10 +23,12 @@ public class PosMallConfig implements Serializable { @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") private String tenantId; - @io.swagger.annotations.ApiModelProperty(value="会员折扣状态,0-使用中,1-禁用",name="discount") + @io.swagger.annotations.ApiModelProperty(value="会员折扣是否开启,0-使用中,1-禁用",name="discount") private Integer discount; - @io.swagger.annotations.ApiModelProperty(value="会员优惠券状态,0-使用中,1-禁用",name="coupon") + @io.swagger.annotations.ApiModelProperty(value="会员优惠券是否开启,0-使用中,1-禁用",name="coupon") private Integer coupon; + @io.swagger.annotations.ApiModelProperty(value="会员消费卡是否开启,0-使用中,1-禁用",name="card") + private Integer card; @io.swagger.annotations.ApiModelProperty(value="创建时间",name="createDate") private Date createDate; @io.swagger.annotations.ApiModelProperty(value="更新时间",name="updateDate") diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchantTradeDaily.java b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchantTradeDaily.java index 03f0eeb4b..843192584 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchantTradeDaily.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchantTradeDaily.java @@ -59,15 +59,18 @@ public class WxMerchantTradeDaily extends BaseEntity { @io.swagger.annotations.ApiModelProperty(value = "凭证", name = "proof") private String proof; @io.swagger.annotations.ApiModelProperty(value = "月份如2019-05", name = "month") + @Transient private String month; @Transient - private String starttime; + private String startTime; @Transient - private String endtime; + private String endTime; + @Transient + private String merchantName; public Integer getTradeAmtInteger(){ if (StringUtils.isBlank(tradeAmt)){ diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java b/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java index f73c066d4..d465331ee 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java @@ -232,6 +232,9 @@ public class WxRentContract extends BaseEntity { @io.swagger.annotations.ApiModelProperty(value = "n日后开始计算滞纳金", name = "latePayRatio") private Integer latePayDay; + @io.swagger.annotations.ApiModelProperty(value = "联营扣点率", name = "busDiscountRatio") + private String busDiscountRatio; + public void setAdjustPeriodHandle() { if(EnumPriceUnit.D.getCode().equals(this.getPriceUnit()) && EnumRentContractAdjustPeriod.ADJUST_PERIOD_MONTH.getCode().equals(adjustPeriod)){ this.adjustPeriod = EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode(); diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxMerchantTradeDailyVo.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxMerchantTradeDailyVo.java index 07256d7c1..bdf93e847 100644 --- a/mallinkService/src/main/java/com/iformall/domain/vo/WxMerchantTradeDailyVo.java +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxMerchantTradeDailyVo.java @@ -2,6 +2,8 @@ package com.iformall.domain.vo; import cn.afterturn.easypoi.excel.annotation.Excel; import com.iformall.domain.po.BaseEntity; +import com.iformall.enums.EnumBusiness; +import com.iformall.enums.EnumSubBusiness; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; @@ -12,6 +14,7 @@ import java.math.BigDecimal; import java.math.RoundingMode; import java.util.Date; import java.util.List; +import java.util.stream.Collectors; @Data @ToString(callSuper = true) @@ -91,33 +94,58 @@ public class WxMerchantTradeDailyVo extends BaseEntity { private String proof; + @Transient + private List shopVos; + + @Transient + @Excel(name = "商铺", width = 20, orderNum = "10") + private String shopsStr; + @Transient private Integer isToday; - public static enum Field { - Id_ASC("`id` ASC"), Id_DESC("`id` DESC"), - TenantId_ASC("`tenant_id` ASC"), TenantId_DESC("`tenant_id` DESC"), - MerchantId_ASC("`merchant_id` ASC"), MerchantId_DESC("`merchant_id` DESC"), - TradeAmt_ASC("`trade_amt` ASC"), TradeAmt_DESC("`trade_amt` DESC"), - CreateDate_ASC("`create_date` ASC"), CreateDate_DESC("`create_date` DESC") - ; - private String value; - - Field(String value) { - this.value = value; - } - public String getValue() { - return value; + private Integer businessId; + private Integer subBusinessId; + + @Transient + @Excel(name = "业态", width = 20, orderNum = "8") + @io.swagger.annotations.ApiModelProperty(value="经营业态ID:参照wx_business表",name="businessId") + private String businessName; + + @Transient + @Excel(name = "子业态", width = 20, orderNum = "9") + @io.swagger.annotations.ApiModelProperty(value="子业态",name="subBusinessId") + private String subBusinessName; + + public String getShopsStr() { + if (shopVos != null && shopVos.size() > 0) { + return String.join("\n", + shopVos.stream().map( + s->{return s.getBuildingName()+"-"+s.getFloorName()+"-"+s.getShopNumber();} + ).collect(Collectors.toList())); + } else { + return null; } + } - public void setCol(String value) { - this.value = value; + public String getBusinessName() { + if (businessId != null) { + EnumBusiness e = EnumBusiness.getEnum(businessId); + if (e != null) return e.getMessage(); + else return null; + } else { + return null; } + } - @Override - public String toString() { - return this.getValue(); + public String getSubBusinessName() { + if (subBusinessId != null) { + EnumSubBusiness e = EnumSubBusiness.getEnum(subBusinessId); + if (e != null) return e.getMessage(); + else return null; + } else { + return null; } } diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCreditHistoryMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCreditHistoryMapper.java index 5fb277662..88e4127e6 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCreditHistoryMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCreditHistoryMapper.java @@ -1,10 +1,11 @@ package com.iformall.mapper; -import java.util.*; import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxCreditHistory; import com.iformall.domain.vo.WxCreditHistoryNewIdVo; import com.iformall.domain.vo.WxCreditHistoryVo; -import com.iformall.domain.po.WxCreditHistory; + +import java.util.List; public interface WxCreditHistoryMapper extends CommonMapper { @@ -20,4 +21,15 @@ public interface WxCreditHistoryMapper extends CommonMapper findListOfWeek(WxMerchantTradeDaily wxMerchantTradeDaily); - List findListVo(WxMerchantTradeDailyVo wxMerchantTradeDaily); - - List findListVoOfMonth(WxMerchantTradeDaily wxMerchantTradeDaily); + List findVoList(WxMerchantTradeDaily wxMerchantTradeDaily); List findTotalListOfMonth(WxMerchantTradeDaily wxMerchantTradeDaily); } diff --git a/mallinkService/src/main/java/com/iformall/pay/WxPayConstant.java b/mallinkService/src/main/java/com/iformall/pay/WxPayConstant.java index b2ab46da9..d73ed7831 100644 --- a/mallinkService/src/main/java/com/iformall/pay/WxPayConstant.java +++ b/mallinkService/src/main/java/com/iformall/pay/WxPayConstant.java @@ -37,6 +37,7 @@ public class WxPayConstant { public final static String MEM_DISCOUNT = "discount"; public final static String MEM_COUPON = "coupon"; + public final static String MEM_CARD = "card"; public final static String MEM_LEVEL = "level"; public final static String AVAIL_CO_LIST = "avail_co_list"; public final static String ID = "id"; diff --git a/mallinkService/src/main/java/com/iformall/service/WxCreditHistoryService.java b/mallinkService/src/main/java/com/iformall/service/WxCreditHistoryService.java index 9daa17641..b6c98a4e6 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxCreditHistoryService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxCreditHistoryService.java @@ -1,6 +1,7 @@ package com.iformall.service; import com.github.pagehelper.PageInfo; +import com.iformall.common.ResultData; import com.iformall.domain.po.WxCreditHistory; import com.iformall.domain.vo.WxCreditHistoryVo; @@ -65,4 +66,6 @@ public interface WxCreditHistoryService { void exportData(HttpServletRequest request, HttpServletResponse response, WxCreditHistory wxCreditHistory); + ResultData getCreditSummary(WxCreditHistory wxCreditHistory); + } diff --git a/mallinkService/src/main/java/com/iformall/service/WxMerchantTradeDailyService.java b/mallinkService/src/main/java/com/iformall/service/WxMerchantTradeDailyService.java index d156ad928..13a66235b 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxMerchantTradeDailyService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxMerchantTradeDailyService.java @@ -81,11 +81,11 @@ public interface WxMerchantTradeDailyService { * @param pageSize * @return */ - PageInfo listAsPageVo(WxMerchantTradeDailyVo record, Integer pageIndex, Integer pageSize); + PageInfo listAsPageVo(WxMerchantTradeDaily record, Integer pageIndex, Integer pageSize); - ResultData update(WxMerchantTradeDailyVo tradeDailyVo); + ResultData update(WxMerchantTradeDaily tradeDailyVo); - ResultData queryTradeDaily(WxMerchantTradeDailyVo wxMerchantTradeDaily); + ResultData queryTradeDaily(WxMerchantTradeDaily wxMerchantTradeDaily); - void exportData(WxMerchantTradeDailyVo wxMerchantTradeDaily, HttpServletRequest request, HttpServletResponse response); + void exportData(WxMerchantTradeDaily wxMerchantTradeDaily, HttpServletRequest request, HttpServletResponse response); } 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 205de2bdc..e505b5ea7 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java @@ -8,6 +8,7 @@ import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.iformall.common.ErrorCode; import com.iformall.common.IdWorker; +import com.iformall.common.ResultData; import com.iformall.domain.po.*; import com.iformall.domain.vo.WxCreditHistoryVo; import com.iformall.enums.*; @@ -30,6 +31,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.math.BigDecimal; import java.util.Date; +import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Objects; @@ -92,6 +94,20 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { } + @Override + public ResultData getCreditSummary(WxCreditHistory wxCreditHistory) { + long totalCreditAmount = wxCreditHistoryMapper.getTotalCreditAmount(wxCreditHistory); + long incrementCreditAmount = wxCreditHistoryMapper.getIncrementCreditAmount(wxCreditHistory); + long decrementCreditAmount = wxCreditHistoryMapper.getDecrementCreditAmount(wxCreditHistory); + long peopleCount = wxCreditHistoryMapper.getPeopleCount(wxCreditHistory); + Map result = new HashMap<>(4); + result.put("totalCreditAmount", totalCreditAmount); + result.put("incrementCreditAmount", incrementCreditAmount); + result.put("decrementCreditAmount", decrementCreditAmount); + result.put("peopleCount", peopleCount); + return new ResultData(result); + } + @Override public PageInfo listAsPage(WxCreditHistory record, Integer pageIndex, Integer pageSize) { return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCreditHistoryMapper.findList(record)); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantTradeDailyServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantTradeDailyServiceImpl.java index 1eafc07b2..5c0cc42bb 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantTradeDailyServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantTradeDailyServiceImpl.java @@ -12,6 +12,7 @@ import com.iformall.domain.po.WxMerchantBUser; import com.iformall.domain.po.WxMerchantTradeDaily; import com.iformall.domain.vo.WxMerchantTradeDailyVo; import com.iformall.mapper.WxMerchantTradeDailyMapper; +import com.iformall.mapper.WxShopMapper; import com.iformall.service.*; import com.iformall.utils.DateUtils; import org.slf4j.Logger; @@ -44,6 +45,10 @@ public class WxMerchantTradeDailyServiceImpl implements WxMerchantTradeDailyServ @Autowired ExcelService excelService; + @Autowired + WxShopMapper wxShopMapper; + + @Override public PageInfo listAsPage(WxMerchantTradeDaily record, Integer pageIndex, Integer pageSize) { return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxMerchantTradeDailyMapper.findList(record)); @@ -126,74 +131,65 @@ public class WxMerchantTradeDailyServiceImpl implements WxMerchantTradeDailyServ @Override - public PageInfo listAsPageVo(WxMerchantTradeDailyVo record, Integer pageIndex, Integer pageSize) { - return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxMerchantTradeDailyMapper.findListVo(record)); + public PageInfo listAsPageVo(WxMerchantTradeDaily record, Integer pageIndex, Integer pageSize) { + return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxMerchantTradeDailyMapper.findVoList(record)); } @Override - public ResultData update(WxMerchantTradeDailyVo tradeDailyVo) { + public ResultData update(WxMerchantTradeDaily tradeDaily) { WxMerchantTradeDaily wxMerchantTradeDaily = new WxMerchantTradeDaily(); - wxMerchantTradeDaily.setMerchantId(tradeDailyVo.getMerchantId()); - wxMerchantTradeDaily.setReportDate(tradeDailyVo.getReportDate()); + wxMerchantTradeDaily.setMerchantId(tradeDaily.getMerchantId()); + wxMerchantTradeDaily.setReportDate(tradeDaily.getReportDate()); List tradeList = wxMerchantTradeDailyMapper.findList(wxMerchantTradeDaily); if (tradeList.size() > 0) { wxMerchantTradeDaily = tradeList.get(0); wxMerchantTradeDaily.setUpdateDate(new Date()); - wxMerchantTradeDaily.setTradeAmt(tradeDailyVo.getTradeAmt()+""); - wxMerchantTradeDaily.setTradeCount(tradeDailyVo.getTradeCount()); - wxMerchantTradeDaily.setProof(tradeDailyVo.getProof()); + wxMerchantTradeDaily.setTradeAmt(tradeDaily.getTradeAmt()+""); + wxMerchantTradeDaily.setTradeCount(tradeDaily.getTradeCount()); + wxMerchantTradeDaily.setProof(tradeDaily.getProof()); wxMerchantTradeDailyMapper.updateByPrimaryKeySelective(wxMerchantTradeDaily); return new ResultData(wxMerchantTradeDaily); } final IdWorker idWorker = IdWorker.get(); wxMerchantTradeDaily.setId(idWorker.nextId()); - wxMerchantTradeDaily.setTenantId(tradeDailyVo.getTenantId()); - wxMerchantTradeDaily.setMerchantId(tradeDailyVo.getMerchantId()); - wxMerchantTradeDaily.setTradeAmt(tradeDailyVo.getTradeAmt()+""); + wxMerchantTradeDaily.setTenantId(tradeDaily.getTenantId()); + wxMerchantTradeDaily.setMerchantId(tradeDaily.getMerchantId()); + wxMerchantTradeDaily.setTradeAmt(tradeDaily.getTradeAmt()+""); wxMerchantTradeDaily.setCreateDate(new Date()); wxMerchantTradeDaily.setUpdateDate(new Date()); - wxMerchantTradeDaily.setTradeCount(tradeDailyVo.getTradeCount()); - wxMerchantTradeDaily.setProof(tradeDailyVo.getProof()); + wxMerchantTradeDaily.setTradeCount(tradeDaily.getTradeCount()); + wxMerchantTradeDaily.setProof(tradeDaily.getProof()); wxMerchantTradeDailyMapper.insert(wxMerchantTradeDaily); return new ResultData(Result.SUCCESS); } @Override - public ResultData queryTradeDaily(WxMerchantTradeDailyVo tradeDailyVo) { + public ResultData queryTradeDaily(WxMerchantTradeDaily tradeDaily) { WxMerchantTradeDaily wxMerchantTradeDaily = new WxMerchantTradeDaily(); - wxMerchantTradeDaily.setMerchantId(tradeDailyVo.getMerchantId()); - wxMerchantTradeDaily.setReportDate(tradeDailyVo.getReportDate()); + wxMerchantTradeDaily.setMerchantId(tradeDaily.getMerchantId()); + wxMerchantTradeDaily.setReportDate(tradeDaily.getReportDate()); List tradeList = wxMerchantTradeDailyMapper.findList(wxMerchantTradeDaily); wxMerchantTradeDaily = tradeList.size() > 0 ? tradeList.get(0) : new WxMerchantTradeDaily(); return new ResultData(wxMerchantTradeDaily); } @Override - public void exportData(WxMerchantTradeDailyVo wxMerchantTradeDailyVo, HttpServletRequest request, HttpServletResponse response) { + public void exportData(WxMerchantTradeDaily tradeDaily, HttpServletRequest request, HttpServletResponse response) { //没有商户ID导出全部数据 - String name = "解单数据"; - if (wxMerchantTradeDailyVo.getMerchantId() == null) { - String title = "商户解单数据"; - List list = wxMerchantTradeDailyMapper.findListVo(wxMerchantTradeDailyVo); - list.parallelStream().forEach(t -> t.setReportDate(wxMerchantTradeDailyVo.getReportDate())); - excelService.exportExcel(list, title, name, WxMerchantTradeDailyVo.class, name + ".xlsx", response, false); - } else { - WxMerchantTradeDaily wxMerchantTradeDaily = new WxMerchantTradeDaily(); - wxMerchantTradeDaily.setTenantId(wxMerchantTradeDailyVo.getTenantId()); - wxMerchantTradeDaily.setMerchantId(wxMerchantTradeDailyVo.getMerchantId()); - String starttime = DateUtils.getTimeBefore(29, new Date()); - String endtime = DateUtils.getSystemTime("yyyy-MM-dd"); - wxMerchantTradeDaily.setStarttime(starttime); - wxMerchantTradeDaily.setEndtime(endtime); - List list = wxMerchantTradeDailyMapper.findListVoOfMonth(wxMerchantTradeDaily); - String title = "近30天解单数据"; - excelService.exportExcel(list, title, name, WxMerchantTradeDailyVo.class, name + ".xlsx", response, false); - } + List list = wxMerchantTradeDailyMapper.findVoList(tradeDaily); + + list.stream().forEach(m->{ + //商铺信息 + m.setShopVos(wxShopMapper.findShopVoList(m.getMerchantId())); + }); + //商铺信息 + + excelService.exportExcel(list, "商户解单数据", "商户解单数据", WxMerchantTradeDailyVo.class, "商户解单数据.xlsx", response, false); } @Override @@ -204,8 +200,11 @@ public class WxMerchantTradeDailyServiceImpl implements WxMerchantTradeDailyServ return new ResultData(ErrorCode.MERCHANT_INFO_NOT_FOUND); WxMerchantTradeDaily wxMerchantTradeDaily = new WxMerchantTradeDaily(); wxMerchantTradeDaily.setMerchantId(merchantId); - - List recordList = wxMerchantTradeDailyMapper.findListVoOfMonth(wxMerchantTradeDaily); + String startTime = DateUtils.getTimeBefore(29, new Date()); + String endTime = DateUtils.getSystemTime("yyyy-MM-dd"); + wxMerchantTradeDaily.setStartTime(startTime); + wxMerchantTradeDaily.setEndTime(endTime); + List recordList = wxMerchantTradeDailyMapper.findVoList(wxMerchantTradeDaily); Map recordMap = recordList.stream().collect(Collectors.toMap(WxMerchantTradeDailyVo::getReportDate, r -> r)); List tradeList = new ArrayList<>(); diff --git a/mallinkService/src/main/resources/mapper/PosMallConfigMapper.xml b/mallinkService/src/main/resources/mapper/PosMallConfigMapper.xml index 23bad233f..3694b3242 100644 --- a/mallinkService/src/main/resources/mapper/PosMallConfigMapper.xml +++ b/mallinkService/src/main/resources/mapper/PosMallConfigMapper.xml @@ -6,6 +6,7 @@ + @@ -27,7 +28,10 @@ and `coupon` = #{coupon} - + + + and `card` = #{card} + and `create_date` = #{createDate} diff --git a/mallinkService/src/main/resources/mapper/WxCreditHistoryMapper.xml b/mallinkService/src/main/resources/mapper/WxCreditHistoryMapper.xml index cf08e5116..c0e7ea1d6 100644 --- a/mallinkService/src/main/resources/mapper/WxCreditHistoryMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCreditHistoryMapper.xml @@ -206,4 +206,44 @@ where tenant_id=#{tenantId} and c_user_id = #{cUserId} + + + + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxMerchantTradeDailyMapper.xml b/mallinkService/src/main/resources/mapper/WxMerchantTradeDailyMapper.xml index 336773e69..9c8968cf6 100644 --- a/mallinkService/src/main/resources/mapper/WxMerchantTradeDailyMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxMerchantTradeDailyMapper.xml @@ -23,43 +23,40 @@ and `id` = #{id} - and `tenant_id` = #{tenantId} - - and `merchant_id` = #{merchantId} - + and `merchant_id` = #{merchantId} and `b_user_id` = #{bUserId} - - and `trade_amt` = #{tradeAmt} - + and `trade_amt` = #{tradeAmt} and `create_date` = #{createDate} - + and `update_date` = #{updateDate} - + and `report_date` = #{reportDate} + and date_format(create_date,'%Y-%m')=#{month} + and id in @@ -94,7 +91,6 @@ - @@ -104,49 +100,26 @@ + + + + + + - - - mtd.id as id, - m.tenant_id as tenant_id, m.id as merchant_id,m.name as merchant_name, - mtd.b_user_id as b_user_id, mtd.trade_amt as trade_amt, mtd.create_date as create_date,mtd.update_date as update_date,mtd.report_date as report_date, - mbu.name as b_user_name, mbu.phone as b_user_phone, - trade_count,proof + mtd.id as id, mtd.b_user_id as b_user_id, mtd.trade_amt, mtd.report_date, mtd.trade_count, mtd.proof, + mtd.create_date as create_date, mtd.update_date as update_date, + m.tenant_id as tenant_id, m.id as merchant_id, m.name as merchant_name, m.business_id, m.sub_business_id, + mbu.name as b_user_name, mbu.phone as b_user_phone - - - select from wx_merchant_trade_daily mtd inner join wx_merchant m on mtd.merchant_id = m.id @@ -160,12 +133,16 @@ and mtd.merchant_id = #{merchantId} - - - and mtd.report_date between #{starttime} and #{endtime} + + + and m.name like concat('%', #{merchantName},'%') - order by mtd.create_date desc LIMIT 30 + + and mtd.report_date between #{startTime} and #{endTime} + + + order by ${sortColumns} diff --git a/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml b/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml index 87e1e490e..7247b9319 100644 --- a/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml @@ -44,16 +44,37 @@ + + + + + + + + + + + + + + + + + + + - + + + @@ -65,7 +86,7 @@ `start_date`,`end_date`, `apply_status`,`bank_name`,`rent_shop_type`,`fix_start_date`,`fix_end_date`, `business_type`,`rent_info`, `file_names`,price_unit,rent_price,`subject_name`,rent_start_type, - `rent_input_way`,`adjust_ratio_way`,`operation_type`,late_pay_ratio,late_pay_day + `rent_input_way`,`adjust_ratio_way`,`operation_type`,late_pay_ratio,late_pay_day,bus_discount_ratio @@ -127,7 +148,7 @@ bankName,rc.rent_shop_type rentShopType,rc.fix_start_date fixStartDate,rc.fix_end_date fixEndDate ,rc.business_type businessType,rc.adjust_period adjustPeriod,rc.rent_info rentInfo, rc.file_names fileNames,rc.price_unit,rc.subject_name subjectName,rc.`rent_input_way` rentInputWay,rc.`adjust_ratio_way` - adjustRatioWay + adjustRatioWay,rc.bus_discount_ratio from wx_rent_contract rc left join wx_shop s on rc.shop_id=s.id left join wx_mall_floor f on s.floor=f.id diff --git a/mallinkSysAdmin/src/main/resources/application-dev.yml b/mallinkSysAdmin/src/main/resources/application-dev.yml index 004b7cf79..9d654f4f7 100644 --- a/mallinkSysAdmin/src/main/resources/application-dev.yml +++ b/mallinkSysAdmin/src/main/resources/application-dev.yml @@ -111,7 +111,7 @@ jasypt: fm: exception: false - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 1 open: true upload_dir: /home/test/server/uploads/ diff --git a/mallinkSysAdmin/src/main/resources/application-prod.yml b/mallinkSysAdmin/src/main/resources/application-prod.yml index 6191f87b1..fcaa8d6a4 100644 --- a/mallinkSysAdmin/src/main/resources/application-prod.yml +++ b/mallinkSysAdmin/src/main/resources/application-prod.yml @@ -95,7 +95,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 3 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkSysAdmin/src/main/resources/application-test.yml b/mallinkSysAdmin/src/main/resources/application-test.yml index 5c5226404..c8bed2b51 100644 --- a/mallinkSysAdmin/src/main/resources/application-test.yml +++ b/mallinkSysAdmin/src/main/resources/application-test.yml @@ -95,7 +95,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 2 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkWebSocketServer/src/main/resources/application-dev.yml b/mallinkWebSocketServer/src/main/resources/application-dev.yml index 8f644ddce..206cb4855 100644 --- a/mallinkWebSocketServer/src/main/resources/application-dev.yml +++ b/mallinkWebSocketServer/src/main/resources/application-dev.yml @@ -104,7 +104,7 @@ jasypt: fm: exception: false - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 1 open: true upload_dir: /home/test/server/uploads/ diff --git a/mallinkWebSocketServer/src/main/resources/application-prod.yml b/mallinkWebSocketServer/src/main/resources/application-prod.yml index d80ca6b8b..ad52f7e3b 100644 --- a/mallinkWebSocketServer/src/main/resources/application-prod.yml +++ b/mallinkWebSocketServer/src/main/resources/application-prod.yml @@ -89,7 +89,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 3 open: true upload_dir: /home/ec2-user/server/uploads/ diff --git a/mallinkWebSocketServer/src/main/resources/application-test.yml b/mallinkWebSocketServer/src/main/resources/application-test.yml index 17bf84400..99e65ae5b 100644 --- a/mallinkWebSocketServer/src/main/resources/application-test.yml +++ b/mallinkWebSocketServer/src/main/resources/application-test.yml @@ -89,7 +89,7 @@ wechat: fm: exception: true - exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com + exception_emails: houtaikaifa@iformall.com deploy: 2 open: true upload_dir: /home/ec2-user/server/uploads/