diff --git a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysCommisionController.java b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysCommisionController.java index a8851e21a..9b3b58951 100644 --- a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysCommisionController.java +++ b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysCommisionController.java @@ -8,6 +8,7 @@ import java.util.Map; import java.util.TreeMap; import com.stdiet.common.utils.DateUtils; +import com.stdiet.common.utils.StringUtils; import com.stdiet.custom.domain.SysCommissionDayDetail; import com.stdiet.custom.domain.SysOrder; import com.stdiet.custom.domain.SysOrderCommisionDayDetail; @@ -169,12 +170,45 @@ public class SysCommisionController extends BaseController { public TableDataInfo getDetail(SysCommision sysCommision) { startPage(); if(sysCommision.getPostId() != null && sysCommision.getPostId().intValue() > 0){ - //查询售后所有ID - SysCommision param = new SysCommision(); - param.setPostId(sysCommision.getPostId()); - List userIds = sysCommisionService.getAfterSaleId(param); - sysCommision.setUserIds(userIds.size() == 0 ? null : userIds); - sysCommision.setPostId(null); + String postCodeId = ""; + switch (sysCommision.getPostId().intValue()){ + case 5: + postCodeId = "pre_sale_id"; + break; + case 18: + postCodeId = "push_pre_sale_id"; + break; + case 16: + postCodeId = "on_sale_id"; + break; + case 6: + postCodeId = "after_sale_id"; + break; + case 9: + postCodeId = "nutritionist_id"; + break; + case 10: + postCodeId = "nutri_assis_id"; + break; + case 11: + postCodeId = "operator_id"; + break; + case 13: + postCodeId = "operator_assis_id"; + break; + case 7: + postCodeId = "planner_id"; + break; + case 8: + postCodeId = "planner_assis_id"; + break; + default: + } + if(StringUtils.isEmpty(postCodeId)){ + sysCommision.setPostId(null); + }else{ + sysCommision.setPostCode(postCodeId); + } } List list = sysCommisionService.selectSysCommisionDetail(sysCommision); for (SysCommision detail : list) { diff --git a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysImportFanRecordController.java b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysImportFanRecordController.java index eacf08a14..c650fc92d 100644 --- a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysImportFanRecordController.java +++ b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysImportFanRecordController.java @@ -154,12 +154,12 @@ public class SysImportFanRecordController extends BaseController */ @PreAuthorize("@ss.hasPermi('custom:importFanRecord:add')") @GetMapping(value = "/getWxAccountAndSale") - public AjaxResult getWxAccountAndSale(SysImportFanWxAccount sysImportFanWxAccount){ + public AjaxResult getWxAccountAndSale(SysWxSaleAccount sysWxSaleAccount){ Map result = new HashMap<>(); - List list = sysWxSaleAccountService.getWxAccountAndSale(); - List> fanNumList = sysImportFanWxAccountService.getTotalImportFanNum(sysImportFanWxAccount); + List list = sysWxSaleAccountService.getWxAccountAndSale(sysWxSaleAccount); + //List> fanNumList = sysImportFanWxAccountService.getTotalImportFanNum(sysImportFanWxAccount); result.put("wxSaleAccountList", list); - result.put("fanNumList", fanNumList); + //result.put("fanNumList", fanNumList); return AjaxResult.success(result); } diff --git a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysOrderController.java b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysOrderController.java index 97a7bff6c..931e94bc5 100644 --- a/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysOrderController.java +++ b/stdiet-admin/src/main/java/com/stdiet/web/controller/custom/SysOrderController.java @@ -162,6 +162,9 @@ public class SysOrderController extends OrderBaseController { if (user.getUserId().equals(order.getOperatorAssisId())) { order.setOperatorAssis(user.getNickName()); } + if (user.getUserId().equals(order.getPushPreSaleId())) { + order.setPushPreSale(user.getNickName()); + } } order.setOrderTypeName(OrderUtils.getOrderTypeName(order)); } diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysCommision.java b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysCommision.java index d7177a226..4e4a6420e 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysCommision.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysCommision.java @@ -38,6 +38,11 @@ public class SysCommision extends BaseEntity { */ private Long postId; + /** + * 岗位编码code + */ + private String postCode; + /** * 业务员 */ diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysImportFanWxAccount.java b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysImportFanWxAccount.java index 16befd66d..7ccf0a9ba 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysImportFanWxAccount.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysImportFanWxAccount.java @@ -39,4 +39,7 @@ public class SysImportFanWxAccount extends BaseEntity //导粉日期 @JsonFormat(pattern = "yyyy-MM-dd") private Date importFanDate; + + //售前 + private Long preSaleId; } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysOrder.java b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysOrder.java index 2b8c0887e..c0761bf0b 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysOrder.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysOrder.java @@ -84,6 +84,17 @@ public class SysOrder extends BaseEntity { @Excel(name = "售前") private String preSale; + /** + * 售前推送人(售中一开单才存在) + */ + //@Excel(name = "售前推送人") + private Long pushPreSaleId; + + /** + * 售前推送人(售中一开单才存在) + */ + private String pushPreSale; + /** 售中ID */ private Long onSaleId; diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysWxSaleAccount.java b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysWxSaleAccount.java index feabbfa5b..be06af94d 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysWxSaleAccount.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/domain/SysWxSaleAccount.java @@ -45,6 +45,12 @@ public class SysWxSaleAccount extends BaseEntity private Integer useCount; + //进粉渠道 + private Integer channel; + + //销售ID + private Long saleId; + //销售昵称 private String saleName; } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysWxSaleAccountMapper.java b/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysWxSaleAccountMapper.java index dc613d255..94b0a4d4d 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysWxSaleAccountMapper.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysWxSaleAccountMapper.java @@ -76,5 +76,5 @@ public interface SysWxSaleAccountMapper * 获取可接粉的微信号以及分配的销售昵称 * @return */ - List getWxAccountAndSale(); + List getWxAccountAndSale(SysWxSaleAccount sysWxSaleAccount); } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysWxUserInfoMapper.java b/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysWxUserInfoMapper.java index 724fa532a..b6fabe165 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysWxUserInfoMapper.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/mapper/SysWxUserInfoMapper.java @@ -70,4 +70,11 @@ public interface SysWxUserInfoMapper * @return */ public SysWxUserInfo getSysWxUserInfoByPhone(@Param("phone")String phone); + + /** + * 根据openid移除对应绑定的cusId + * @param openid + * @return + */ + public int removeCusIdByOpenId(@Param("openid")String openid); } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysWxSaleAccountService.java b/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysWxSaleAccountService.java index ae48aebdc..14d69906f 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysWxSaleAccountService.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysWxSaleAccountService.java @@ -77,5 +77,5 @@ public interface ISysWxSaleAccountService * 获取可接粉的微信号以及分配的销售昵称 * @return */ - List getWxAccountAndSale(); + List getWxAccountAndSale(SysWxSaleAccount sysWxSaleAccount); } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysWxUserInfoService.java b/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysWxUserInfoService.java index f009113f0..143094af7 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysWxUserInfoService.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/service/ISysWxUserInfoService.java @@ -70,5 +70,12 @@ public interface ISysWxUserInfoService */ public SysWxUserInfo getSysWxUserInfoByPhone(String phone); + /** + * 根据openid移除对应绑定的cusId + * @param openid + * @return + */ + public int removeCusIdByOpenId(String openid); + } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysCustomerServiceImpl.java b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysCustomerServiceImpl.java index 3bc9a37d9..31d881c9d 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysCustomerServiceImpl.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysCustomerServiceImpl.java @@ -198,11 +198,33 @@ public class SysCustomerServiceImpl implements ISysCustomerService { if(newCustomer == null || newCustomer.getId() == null || StringUtils.isEmpty(newCustomer.getPhone())){ return; } + //先根据cusId查询是否已经绑定过微信用户 + SysWxUserInfo cusIdWxUserInfo = sysWxUserInfoService.selectSysWxUserInfoByCusId(newCustomer.getId()); //根据手机号查询微信用户记录 - SysWxUserInfo wxUserInfo = sysWxUserInfoService.getSysWxUserInfoByPhone(newCustomer.getPhone()); - if(wxUserInfo != null && (wxUserInfo.getCusId() == null || wxUserInfo.getCusId().longValue() != newCustomer.getId())){ - wxUserInfo.setCusId(newCustomer.getId()); - sysWxUserInfoService.updateSysWxUserInfo(wxUserInfo); + SysWxUserInfo phoneWxUserInfo = sysWxUserInfoService.getSysWxUserInfoByPhone(newCustomer.getPhone()); + if(cusIdWxUserInfo != null) { + if(phoneWxUserInfo != null){ + if(!cusIdWxUserInfo.getOpenid().equals(phoneWxUserInfo.getOpenid())){ + //解绑之前记录 + sysWxUserInfoService.removeCusIdByOpenId(cusIdWxUserInfo.getOpenid()); + //更新 + SysWxUserInfo param = new SysWxUserInfo(); + param.setOpenid(phoneWxUserInfo.getOpenid()); + param.setCusId(newCustomer.getId()); + sysWxUserInfoService.updateSysWxUserInfo(param); + } + }else{ + //解绑之前记录 + sysWxUserInfoService.removeCusIdByOpenId(cusIdWxUserInfo.getOpenid()); + } + }else{ + if(phoneWxUserInfo != null){ + //更新 + SysWxUserInfo param = new SysWxUserInfo(); + param.setOpenid(phoneWxUserInfo.getOpenid()); + param.setCusId(newCustomer.getId()); + sysWxUserInfoService.updateSysWxUserInfo(param); + } } } } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysOrderServiceImpl.java b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysOrderServiceImpl.java index f3a3924bb..e58d884ee 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysOrderServiceImpl.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysOrderServiceImpl.java @@ -105,7 +105,7 @@ public class SysOrderServiceImpl implements ISysOrderService { row = sysOrderMapper.insertSysOrder(sysOrder); //需要自动创建售后二开提成单 if(row > 0 && sysOrder.getSecondAfterSaleFlag() != null && sysOrder.getSecondAfterSaleFlag().intValue() == 1){ - autoCreateSecondAfterSaleOrder(sysOrder); + row = autoCreateSecondAfterSaleOrder(sysOrder); } }else{ row = sysOrderMapper.insertSysOrder(sysOrder); @@ -143,7 +143,7 @@ public class SysOrderServiceImpl implements ISysOrderService { //二开,是否需要自动创建售后二开提成单 if(row > 0 && "1".equals(sysOrder.getOrderCountType()) && sysOrder.getSecondAfterSaleFlag() != null && sysOrder.getSecondAfterSaleFlag().intValue() == 1){ sysOrder.setAmount(amount); - autoCreateSecondAfterSaleOrder(sysOrder); + row = autoCreateSecondAfterSaleOrder(sysOrder); } } //体验单 @@ -155,6 +155,64 @@ public class SysOrderServiceImpl implements ISysOrderService { sysOrder.setNutriAssisId(null); row = sysOrderMapper.insertSysOrder(sysOrder); } + //售中单 + else if("3".equals(sysOrder.getOrderType())){ + sysOrder.setPreSaleId(null); + //一开、二开 + if("0".equals(sysOrder.getOrderCountType()) || "1".equals(sysOrder.getOrderCountType())){ + sysOrder.setNutritionistId((sysOrder.getNutritionistIdList() != null && sysOrder.getNutritionistIdList().length > 0) ? sysOrder.getNutritionistIdList()[0] : null); + sysOrder.setMainOrderId(0L); + sysOrder.setAfterSaleCommissOrder(0); + if("0".equals(sysOrder.getOrderCountType())){ + row = sysOrderMapper.insertSysOrder(sysOrder); + }else{ + //二开单不存在售前推荐人 + sysOrder.setPushPreSaleId(null); + row = sysOrderMapper.insertSysOrder(sysOrder); + //需要自动创建售后二开提成单 + if(row > 0 && sysOrder.getSecondAfterSaleFlag() != null && sysOrder.getSecondAfterSaleFlag().intValue() == 1){ + row = autoCreateSecondAfterSaleOrder(sysOrder); + } + } + }else{ + sysOrder.setAfterSaleCommissOrder(0); + String rate = sysOrder.getNutritionistRate(); + if(StringUtils.isEmpty(rate) || rate.indexOf(",") == -1 || "0,10".equals(rate) || sysOrder.getNutritionistIdList().length != 2){ + return 0; + } + String[] rateArray = rate.split(","); + if(Integer.parseInt(rateArray[0]) + Integer.parseInt(rateArray[1]) != 10){ + return 0; + } + BigDecimal amount = sysOrder.getAmount(); + //获取主单的数组下标 + int mainIndex = 0; + if(Integer.parseInt(rateArray[1]) > Integer.parseInt(rateArray[0])){ + mainIndex = 1; + } + //添加主单 + sysOrder.setNutritionistId(sysOrder.getNutritionistIdList()[mainIndex]); + sysOrder.setAmount(BigDecimal.valueOf(amount.doubleValue()*Integer.parseInt(rateArray[mainIndex])/10)); + sysOrder.setMainOrderId(0L); + //拆分二开单 + if("3".equals(sysOrder.getOrderCountType())){ + //二开单不存在售前推荐人 + sysOrder.setPushPreSaleId(null); + } + row = sysOrderMapper.insertSysOrder(sysOrder); + //添加副单 + sysOrder.setMainOrderId(sysOrder.getOrderId()); + sysOrder.setOrderId(sysOrder.getOrderId()+1); + sysOrder.setNutritionistId(sysOrder.getNutritionistIdList()[1-mainIndex]); + sysOrder.setAmount(BigDecimal.valueOf(amount.doubleValue()*Integer.parseInt(rateArray[1-mainIndex])/10)); + row = sysOrderMapper.insertSysOrder(sysOrder); + //拆分二开单 + if(row > 0 && "3".equals(sysOrder.getOrderCountType()) && sysOrder.getSecondAfterSaleFlag() != null && sysOrder.getSecondAfterSaleFlag().intValue() == 1){ + sysOrder.setAmount(amount); + row = autoCreateSecondAfterSaleOrder(sysOrder); + } + } + } return row; } @@ -166,6 +224,8 @@ public class SysOrderServiceImpl implements ISysOrderService { private int autoCreateSecondAfterSaleOrder(SysOrder sysOrder){ if(sysOrder != null){ sysOrder.setPreSaleId(sysOrder.getAfterSaleId()); + sysOrder.setOnSaleId(null); + sysOrder.setPushPreSaleId(null); sysOrder.setAfterSaleId(null); sysOrder.setNutritionistId(null); sysOrder.setNutriAssisId(null); @@ -173,6 +233,7 @@ public class SysOrderServiceImpl implements ISysOrderService { sysOrder.setPlannerAssisId(null); sysOrder.setOperatorId(null); sysOrder.setOperatorAssisId(null); + sysOrder.setMainOrderId(0L); sysOrder.setAfterSaleCommissOrder(1); sysOrder.setOrderId(sysOrder.getOrderId()+1); return sysOrderMapper.insertSysOrder(sysOrder); @@ -208,6 +269,9 @@ public class SysOrderServiceImpl implements ISysOrderService { sysOrder.setOperatorId(null); sysOrder.setOperatorAssisId(null); } + if("3".equals(sysOrder.getOrderType())){ + sysOrder.setPreSaleId(null); + } if(oldSysOrder.getStartTime() == null){//确保提成计算时间不为空 sysOrder.setCommissStartTime(sysOrder.getOrderTime()); } @@ -313,7 +377,7 @@ public class SysOrderServiceImpl implements ISysOrderService { for (SysOrder sysOrder : orderList) { LocalDate newStartTime = null; //判断是否提成单,拆分单中的副单,体验单,定金单 - if(sysOrder.getStartTime() == null || sysOrder.getAfterSaleCommissOrder().intValue() == 1 || ("1".equals(sysOrder.getOrderType()) && sysOrder.getMainOrderId().intValue() != 0) || + if(sysOrder.getStartTime() == null || sysOrder.getAfterSaleCommissOrder().intValue() == 1 || sysOrder.getMainOrderId().intValue() != 0 || "2".equals(sysOrder.getOrderType()) || "1".equals(sysOrder.getOrderMoneyType())){ continue; } diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysRecipesPlanServiceImpl.java b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysRecipesPlanServiceImpl.java index ab5a41633..dc91bcc46 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysRecipesPlanServiceImpl.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysRecipesPlanServiceImpl.java @@ -170,7 +170,7 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService { continue; } //判断是否提成单,拆分单中的副单,体验单,定金单 - if (sysOrder.getAfterSaleCommissOrder().intValue() == 1 || ("1".equals(sysOrder.getOrderType()) && sysOrder.getMainOrderId().intValue() != 0) || + if (sysOrder.getAfterSaleCommissOrder().intValue() == 1 || sysOrder.getMainOrderId().intValue() != 0 || // "2".equals(sysOrder.getOrderType()) || // 体验单也需要生成计划 2021.05.29 "1".equals(sysOrder.getOrderMoneyType()) || sysOrder.getCounted() == 1) { System.out.println("---------------------" + sysOrder.getOrderId() + "不生成食谱------------------------"); diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysWxSaleAccountServiceImpl.java b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysWxSaleAccountServiceImpl.java index 6177b16b2..9ca450df5 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysWxSaleAccountServiceImpl.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysWxSaleAccountServiceImpl.java @@ -136,7 +136,7 @@ public class SysWxSaleAccountServiceImpl implements ISysWxSaleAccountService { * @param sysWxSaleAccount * @return */ - public List getWxAccountAndSale(){ - return sysWxSaleAccountMapper.getWxAccountAndSale(); + public List getWxAccountAndSale(SysWxSaleAccount sysWxSaleAccount){ + return sysWxSaleAccountMapper.getWxAccountAndSale(sysWxSaleAccount); } } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysWxUserInfoServiceImpl.java b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysWxUserInfoServiceImpl.java index bef991ad0..acae1d1d6 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysWxUserInfoServiceImpl.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/service/impl/SysWxUserInfoServiceImpl.java @@ -106,4 +106,13 @@ public class SysWxUserInfoServiceImpl implements ISysWxUserInfoService { public SysWxUserInfo getSysWxUserInfoByPhone(String phone){ return sysWxUserInfoMapper.getSysWxUserInfoByPhone(phone); } + + /** + * 根据openid移除对应绑定的cusId + * @param openid + * @return + */ + public int removeCusIdByOpenId(String openid){ + return sysWxUserInfoMapper.removeCusIdByOpenId(openid); + } } \ No newline at end of file diff --git a/stdiet-custom/src/main/java/com/stdiet/custom/utils/OrderUtils.java b/stdiet-custom/src/main/java/com/stdiet/custom/utils/OrderUtils.java index fe82b06f3..9c86dbf32 100644 --- a/stdiet-custom/src/main/java/com/stdiet/custom/utils/OrderUtils.java +++ b/stdiet-custom/src/main/java/com/stdiet/custom/utils/OrderUtils.java @@ -4,9 +4,9 @@ import com.stdiet.custom.domain.SysOrder; public class OrderUtils { - private static final String[] orderTypeArray = {"普通单","比例拆分单","体验单"}; + private static final String[] orderTypeArray = {"普通单","比例拆分单","体验单","售中单"}; - private static final String[] orderCountTypeArray = {"一开单","二开单"}; + private static final String[] orderCountTypeArray = {"一开单","二开单","一开单(拆分)","二开单(拆分)"}; private static final String[] orderMoneyTypeArray = {"全款单","定金单","尾款单"}; @@ -27,7 +27,7 @@ public class OrderUtils { orderTypeName += "/"+orderCountTypeArray[Integer.parseInt(sysOrder.getOrderCountType())]; orderTypeName += "/"+orderMoneyTypeArray[Integer.parseInt(sysOrder.getOrderMoneyType())]; //判断是不是二开提成单 - if("1".equals(sysOrder.getOrderCountType()) && sysOrder.getAfterSaleCommissOrder().intValue() == 1){ + if(sysOrder.getAfterSaleCommissOrder() != null && sysOrder.getAfterSaleCommissOrder().intValue() == 1){ orderTypeName += "/提成单"; } return orderTypeName; diff --git a/stdiet-custom/src/main/resources/mapper/custom/SysCommisionMapper.xml b/stdiet-custom/src/main/resources/mapper/custom/SysCommisionMapper.xml index 5ae329ab6..ac42f0f58 100644 --- a/stdiet-custom/src/main/resources/mapper/custom/SysCommisionMapper.xml +++ b/stdiet-custom/src/main/resources/mapper/custom/SysCommisionMapper.xml @@ -42,12 +42,17 @@ AND date_format(order_time,'%y%m%d') <= date_format(${endTime},'%y%m%d') + + + and order_type = 3 + GROUP BY ${column} diff --git a/stdiet-custom/src/main/resources/mapper/custom/SysOrderMapper.xml b/stdiet-custom/src/main/resources/mapper/custom/SysOrderMapper.xml index 079b847db..0fcded09f 100644 --- a/stdiet-custom/src/main/resources/mapper/custom/SysOrderMapper.xml +++ b/stdiet-custom/src/main/resources/mapper/custom/SysOrderMapper.xml @@ -41,6 +41,7 @@ + @@ -63,7 +64,7 @@ o.serve_time_id, o.pay_type_id, pay.dict_label as pay_type, o.pre_sale_id, o.create_by, o.create_time, o.after_sale_id, o.update_by, o.update_time, o.nutritionist_id, o.remark, o.nutri_assis_id, o.account_id, acc.dict_label as account, o.planner_id, o.planner_assis_id, o.operator_id, o.operator_assis_id, o.recommender, o.order_time,o.give_serve_day,o.conditioning_project_id,cp.dict_label as conditioning_project,o.server_end_time, - o.on_sale_id,o.order_type,o.order_count_type,o.order_money_type,o.main_order_id,o.after_sale_commiss_order,o.commiss_start_time, o.counted + o.on_sale_id,o.order_type,o.order_count_type,o.order_money_type,o.main_order_id,o.after_sale_commiss_order,o.commiss_start_time, o.counted,o.push_pre_sale_id from sys_order o LEFT JOIN sys_customer sc ON sc.id = o.cus_id LEFT JOIN (SELECT dict_label, dict_value FROM sys_dict_data WHERE dict_type = 'cus_pay_type') AS pay ON pay.dict_value = o.pay_type_id @@ -227,6 +228,7 @@ operator_id, serve_time_id, recommender, + push_pre_sale_id, amount, order_time, create_by, @@ -270,6 +272,7 @@ #{operatorId}, #{serveTimeId}, #{recommender}, + #{pushPreSaleId}, #{amount}, #{orderTime}, #{createBy}, @@ -316,6 +319,7 @@ operator_id = #{operatorId}, serve_time_id = #{serveTimeId}, recommender = #{recommender}, + push_pre_sale_id = #{pushPreSaleId}, amount = #{amount}, order_time = #{orderTime}, create_by = #{createBy}, @@ -387,6 +391,7 @@ + diff --git a/stdiet-custom/src/main/resources/mapper/custom/SysWxDistributionMapper.xml b/stdiet-custom/src/main/resources/mapper/custom/SysWxDistributionMapper.xml index 7394d399f..0dea4dd37 100644 --- a/stdiet-custom/src/main/resources/mapper/custom/SysWxDistributionMapper.xml +++ b/stdiet-custom/src/main/resources/mapper/custom/SysWxDistributionMapper.xml @@ -35,7 +35,7 @@ FROM sys_wx_distribution AS swd lEFT JOIN sys_wx_sale_account swsa ON swsa.id = swd.wechat_account and swsa.del_flag = 0 LEFT JOIN sys_user su ON su.user_id = swd.user_id AND su.del_flag = 0 - LEFT JOIN (SELECT dict_label, dict_value FROM sys_dict_data WHERE dict_type = 'fan_channel') AS acc ON acc.dict_value = swd.account_id + LEFT JOIN (SELECT dict_label, dict_value FROM sys_dict_data WHERE dict_type = 'cus_account') AS acc ON acc.dict_value = swd.account_id LEFT JOIN (SELECT dict_label, dict_value FROM sys_dict_data WHERE dict_type = 'sale_group') AS asg ON asg.dict_value = swd.sale_group_id where swd.del_flag = 0 diff --git a/stdiet-custom/src/main/resources/mapper/custom/SysWxFanStatisticsMapper.xml b/stdiet-custom/src/main/resources/mapper/custom/SysWxFanStatisticsMapper.xml index 519e44375..0e8f7664e 100644 --- a/stdiet-custom/src/main/resources/mapper/custom/SysWxFanStatisticsMapper.xml +++ b/stdiet-custom/src/main/resources/mapper/custom/SysWxFanStatisticsMapper.xml @@ -37,7 +37,7 @@ left join sys_wx_sale_account swsa on swsa.id = swfs.wx_id and swsa.del_flag = 0 left join sys_wx_distribution swd on swd.wechat_account = swfs.wx_id and swd.del_flag = 0 left join sys_user su on su.user_id = swd.user_id and su.del_flag = 0 - LEFT JOIN (SELECT dict_label, dict_value FROM sys_dict_data WHERE dict_type = 'fan_channel') AS acc ON acc.dict_value = swd.account_id + LEFT JOIN (SELECT dict_label, dict_value FROM sys_dict_data WHERE dict_type = 'cus_account') AS acc ON acc.dict_value = swd.account_id LEFT JOIN (SELECT dict_label, dict_value FROM sys_dict_data WHERE dict_type = 'sale_group') AS asg ON asg.dict_value = swd.sale_group_id diff --git a/stdiet-custom/src/main/resources/mapper/custom/SysWxSaleAccountMapper.xml b/stdiet-custom/src/main/resources/mapper/custom/SysWxSaleAccountMapper.xml index 5d424ca73..992f0268c 100644 --- a/stdiet-custom/src/main/resources/mapper/custom/SysWxSaleAccountMapper.xml +++ b/stdiet-custom/src/main/resources/mapper/custom/SysWxSaleAccountMapper.xml @@ -145,6 +145,15 @@ left join sys_wx_distribution swd on wa.id = swd.wechat_account and swd.del_flag = 0 LEFT JOIN sys_user su ON su.user_id = swd.user_id AND su.del_flag = 0 where wa.del_flag = 0 and wa.status = 0 + + and swd.user_id = #{saleId} + + + and wa.wx_account like concat('%',#{wxAccount},'%') + + + and swd.account_id = #{channel} + order by su.user_id asc diff --git a/stdiet-custom/src/main/resources/mapper/custom/SysWxUserInfoMapper.xml b/stdiet-custom/src/main/resources/mapper/custom/SysWxUserInfoMapper.xml index 795a64be2..98f22abb5 100644 --- a/stdiet-custom/src/main/resources/mapper/custom/SysWxUserInfoMapper.xml +++ b/stdiet-custom/src/main/resources/mapper/custom/SysWxUserInfoMapper.xml @@ -135,4 +135,9 @@ where phone = #{phone} order by create_time desc limit 1 + + + update sys_wx_user_info set cus_id = null where openid = #{openid} + + \ No newline at end of file diff --git a/stdiet-ui/src/components/ImportFanRecord/ImportFan/index.vue b/stdiet-ui/src/components/ImportFanRecord/ImportFan/index.vue index 8460863f6..5c7d93124 100644 --- a/stdiet-ui/src/components/ImportFanRecord/ImportFan/index.vue +++ b/stdiet-ui/src/components/ImportFanRecord/ImportFan/index.vue @@ -1,15 +1,56 @@