李天标 2 years ago
parent
commit
8f535d9e01

+ 1 - 1
src/main/java/com/szwl/aspect/MyWebMvcConfigurer.java

@@ -21,7 +21,7 @@ public class MyWebMvcConfigurer extends WebMvcConfigurationSupport {
         // 自定义去除的路径
         String[] myExcludes= {"/tAdmin/login","/tAdmin/save","/tAdmin/updatePassword","/tMessageCode/**","/tJoinpayMch/**","/tLogo/**",
                 "/tProportion/**","/tProduct/**","/tPromoCode/**", "/tApkInfo/**", "/tProduct/selectProductList",  "/tApkInfo/**","/tJoinpayMchCheck/**","/tTimeRule/**","/sysRoleMenu/**",
-                "/tEquipmentApply/**","/tEquipment/**","/api/**","/tOrder/**","/tAlarmClock/**","/tNotice/**","/tParameters/**",
+                "/tEquipmentApply/**","/tEquipment/**","/api/**","/tOrder/**","/tAlarmClock/**","/tNotice/**","/tParameters/**","/tAdmin/setRole",
                 "/tLabel/**","/tArea/**","/error"};
         registry.addInterceptor(headTokenInterceptor).addPathPatterns("/**")
                 // swagger

+ 42 - 0
src/main/java/com/szwl/controller/ADIndexController.java

@@ -187,7 +187,49 @@ public class ADIndexController {
             return rule;
         }
     }
+    /**
+     * 获取时间规则 ByClientId
+     *
+     * @param
+     * @return
+     */
+    @GetMapping(value = "/getTimeRuleByClientId.htm", produces = "text/html;charset=utf-8")
+    @ResponseBody
+    public String getTimeRuleByClientId(String clientId) {
+        if(StringUtils.isEmpty(clientId)){
+            return "编号为空";
+        }
+        LambdaQueryWrapper<TEquipment> query = Wrappers.lambdaQuery();
+        query.eq(TEquipment::getClientId,clientId);
+        List<TEquipment> equipmentList = equipmentService.list(query);
+        if(equipmentList.size()>0){
+            TEquipment equipment = equipmentList.get(0);
+            if(equipment.getTimeRuleId()!=null){
+                TTimeRule timeRule = timeRuleService.getById(equipment.getTimeRuleId());
+                if (timeRule == null) {
+//            return JsonMessage.error("该规则不存在");
+                    return "该规则不存在";
+                }
+                if(StringUtils.isEmpty(timeRule.getType())||timeRule.getType().equals("0")){
+                    //旧规则
+                    String rule = null;
+                    List<TimeRuleVo> timeRuleVos = JSON.parseArray(timeRule.getRule(), TimeRuleVo.class);
+                    for(TimeRuleVo timeRuleVo:timeRuleVos){
+                        List<String> ads = timeRuleVo.getAd();
+                        rule = ads.toString();
+                        break;
+                    }
+                    return rule;
+                }else {
+                    //新规则
+                    String rule = timeRule.getRule();
+                    return rule;
+                }
+            }
+            }
+        return "该规则不存在";
 
+    }
     /**
      * 设备下载广告失败则更新设备的推送广告时间
      *

+ 90 - 2
src/main/java/com/szwl/controller/IndexController.java

@@ -10,6 +10,7 @@ import com.szwl.model.bean.EquipmentVo;
 import com.szwl.model.bean.ProductVo;
 import com.szwl.model.bo.JsonMessage;
 import com.szwl.model.bo.JsonUtils;
+import com.szwl.model.bo.R;
 import com.szwl.model.entity.*;
 import com.szwl.model.utils.AdminUtils;
 import com.szwl.model.utils.PushUtils;
@@ -223,7 +224,6 @@ public class IndexController { ;
         if(String.valueOf(adminId).equals("3")||String.valueOf(adminId).equals("31")||String.valueOf(adminId).equals("506")||String.valueOf(adminId).equals("1090")){
             Long id = equipmentApply.getId();
             agree(id);
-//            return JsonMessage.success("设备申请成功");
             return "设备申请成功";
         }
         if(admin.getApplyStartTime()!=null&&admin.getApplyEndTime()!=null){
@@ -247,6 +247,10 @@ public class IndexController { ;
         String status = "agreed";
         if (null != id) {
             TEquipmentApply equipmentApply = equipmentApplyService.getById(id);
+            Integer statusType = equipmentApply.getStatusType();
+            if(statusType>1){
+                equipmentApply = null;
+            }
             if (equipmentApply != null) {
                 if (!StringUtils.isEmpty(status)) {
                     if (status.equals("agreed")) {
@@ -303,6 +307,14 @@ public class IndexController { ;
                                 equipment.setEquimentType("MG330");
                             }
                             equipmentService.updateById(equipment);
+                            LambdaQueryWrapper<TProportion> queryProportion = Wrappers.lambdaQuery();
+                            queryProportion.eq(TProportion::getEquipmentId,equipment.getId());
+                            List<TProportion> list1 = proportionService.list(queryProportion);
+                            if(list1.size()>0){
+                                for(TProportion proportion:list1){
+                                    proportionService.removeById(proportion.getId());
+                                }
+                            }
 //                            String data = com.alibaba.fastjson.JSON.toJSONString(equipment);
                             try {
 //                                String result = HttpClientUtils.sentData(HttpClientUtils.Update_Equipment_Url, data);
@@ -417,7 +429,10 @@ public class IndexController { ;
                             }
 
                         }
-
+                        if(String.valueOf(adminId).equals("3")||String.valueOf(adminId).equals("31")||String.valueOf(adminId).equals("506")||String.valueOf(adminId).equals("1090")){
+                            //自动设置分销
+                            setProportion(adminId,equipmentId,clientId);
+                        }
                     } else if (status.equals("rejected")) {
                         equipmentApply.setStatusType(3);
                         equipmentService.sentMessage(equipmentApply.getClientId(),PushUtils.buildJson("statusType", "rejected").toString());
@@ -431,6 +446,79 @@ public class IndexController { ;
             }
         }
     }
+
+    private void setProportion(Long adminId,Long equipmentId,String clientId) {
+        //先找到原账户的分销
+        LambdaQueryWrapper<TProportion> query3 = Wrappers.lambdaQuery();
+        query3.eq(TProportion::getAdminId,adminId);
+        List<TProportion> list3 = proportionService.list(query3);
+        if(list3.size()>0){
+            TProportion adminProportion = list3.get(0);
+            if(StringUtils.isEmpty(adminProportion.getClientId())){
+                TProportion equipmentProportion = new TProportion();
+                equipmentProportion.setCreateDate(new Date());
+                equipmentProportion.setModifyDate(new Date());
+                equipmentProportion.setAdminId(adminId);
+                equipmentProportion.setClientId(clientId);
+                equipmentProportion.setEquipmentId(equipmentId);
+                equipmentProportion.setAdminProportion(adminProportion.getAdminProportion());
+                Integer type = adminProportion.getType();
+                if(type!=null){
+                    switch (type) {
+                        case 1:
+                            equipmentProportion.setProportion(adminProportion.getAgencyProportion());
+                            equipmentProportion.setAgencyProportion(new BigDecimal("0.00"));
+                            equipmentProportion.setMerchantProportion(new BigDecimal("0.00"));
+                            equipmentProportion.setPersonageProportion(new BigDecimal("0.00"));
+                            equipmentProportion.setType(0);
+                            break;
+                        case 2:
+                            equipmentProportion.setProportion(adminProportion.getMerchantProportion());
+                            equipmentProportion.setAgencyProportion(adminProportion.getAgencyProportion());
+//                                    if(adminProportion.getAgencyProportion().compareTo(new BigDecimal("0.00"))!=0){
+//                                        equipmentProportion.setAgencyId(admin.getAgencyId());
+//                                        TAdmin byId = adminService.getById(admin.getAgencyId());
+//                                        equipmentProportion.setAgencyName(byId.getUsername());
+//                                    }
+                            equipmentProportion.setAgencyId(adminProportion.getAgencyId());
+                            TAdmin byId = adminService.getById(adminProportion.getAgencyId());
+                            equipmentProportion.setAgencyName(byId.getUsername());
+                            equipmentProportion.setMerchantProportion(new BigDecimal("0.00"));
+                            equipmentProportion.setPersonageProportion(new BigDecimal("0.00"));
+                            equipmentProportion.setType(1);
+                            break;
+                        case 3:
+                            equipmentProportion.setProportion(adminProportion.getPersonageProportion());
+                            equipmentProportion.setAgencyProportion(adminProportion.getAgencyProportion());
+//                                    if(adminProportion.getAgencyProportion().compareTo(new BigDecimal("0.00"))!=0){
+//                                        equipmentProportion.setAgencyId(admin.getAgencyId());
+//                                        TAdmin byId = adminService.getById(admin.getAgencyId());
+//                                        equipmentProportion.setAgencyName(byId.getUsername());
+//                                    }
+                            equipmentProportion.setAgencyId(adminProportion.getAgencyId());
+                            TAdmin byId1 = adminService.getById(adminProportion.getAgencyId());
+                            equipmentProportion.setAgencyName(byId1.getUsername());
+                            equipmentProportion.setMerchantProportion(adminProportion.getMerchantProportion());
+//                                    if(adminProportion.getMerchantProportion().compareTo(new BigDecimal("0.00"))!=0){
+//                                        equipmentProportion.setMerchantId(admin.getMerchantId());
+//                                        TAdmin byId = adminService.getById(admin.getMerchantId());
+//                                        equipmentProportion.setMerchantName(byId.getUsername());
+//                                    }
+                            equipmentProportion.setMerchantId(adminProportion.getMerchantId());
+                            TAdmin byId2 = adminService.getById(adminProportion.getMerchantId());
+                            equipmentProportion.setMerchantName(byId2.getUsername());
+                            equipmentProportion.setPersonageProportion(new BigDecimal("0.00"));
+                            equipmentProportion.setType(2);
+                            break;
+                    }
+                    boolean save = proportionService.save(equipmentProportion);
+                }
+
+            }
+
+        }
+    }
+
     /**
      * 添加产品
      *

+ 7 - 0
src/main/java/com/szwl/controller/TAdminController.java

@@ -35,6 +35,7 @@ import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
+import javax.validation.constraints.NotBlank;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -79,6 +80,12 @@ public class TAdminController {
             return R.fail(ResponseCodesEnum.A0001);
         }
         param.setAdminId(null);
+        LambdaQueryWrapper<TAdmin> query = Wrappers.lambdaQuery();
+        query.eq(TAdmin::getUsername,param.getUsername());
+        List<TAdmin> list = tAdminService.list(query);
+        if(list.size()>0){
+            return R.fail(ResponseCodesEnum.A0001);
+        }
         TAdmin entity = BeanUtil.copyProperties(param,TAdmin.class);
         entity.setParentId(parentId);
         if(parentId.toString().equals("1")){

+ 24 - 6
src/main/java/com/szwl/controller/TEquipmentApplyController.java

@@ -52,6 +52,9 @@ public class TEquipmentApplyController {
 
     @Autowired
     TProductService productService;
+
+    @Autowired
+    TProportionService proportionService;
     @Autowired
     TEquipmentDescService equipmentDescService;
     @Autowired
@@ -99,6 +102,10 @@ public class TEquipmentApplyController {
 
         if (null != id) {
             TEquipmentApply equipmentApply = equipmentApplyService.getById(id);
+            Integer statusType = equipmentApply.getStatusType();
+            if(statusType>1){
+                return R.ok(null,"已处理");
+            }
             if (equipmentApply != null) {
                 if (!StringUtils.isEmpty(status)) {
                     if (status.equals("agreed")) {
@@ -163,6 +170,14 @@ public class TEquipmentApplyController {
                             }
 
                             equipmentService.updateById(equipment);
+                            LambdaQueryWrapper<TProportion> queryProportion = Wrappers.lambdaQuery();
+                            queryProportion.eq(TProportion::getEquipmentId,equipment.getId());
+                            List<TProportion> list1 = proportionService.list(queryProportion);
+                            if(list1.size()>0){
+                                for(TProportion proportion:list1){
+                                    proportionService.removeById(proportion.getId());
+                                }
+                            }
 //                            String data = com.alibaba.fastjson.JSON.toJSONString(equipment);
                             try {
                                 esTEquipmentService.updateDataById(equipment);
@@ -172,11 +187,12 @@ public class TEquipmentApplyController {
                             equipmentService.sentMessage(equipmentApply.getClientId(),PushUtils.buildJson("statusType", "agreed" + old).toString());
                             PushUtils.push(equipmentApply.getGtClientId(), "【棉花糖】设备初始化申请", "同意", PushUtils.buildJson("statusType", "agreed" + old).toString());
                             equipmentApplyService.updateById(equipmentApply);
-                            equipmentService.sentMessage(equipmentApply.getClientId(),PushUtils.buildJson("endDate",String.valueOf(equipment.getEndDate().getTime()) ).toString());
-                            PushUtils.push(equipmentApply.getGtClientId(), "", "", PushUtils.buildJson("endDate",String.valueOf(equipment.getEndDate().getTime()) ).toString());
+                            if(equipment.getEndDate()!=null){
+                                equipmentService.sentMessage(equipmentApply.getClientId(),PushUtils.buildJson("endDate",String.valueOf(equipment.getEndDate().getTime()) ).toString());
+                                PushUtils.push(equipmentApply.getGtClientId(), "", "", PushUtils.buildJson("endDate",String.valueOf(equipment.getEndDate().getTime()) ).toString());
+                            }
                             return R.ok(null,"审核成功");
                         }
-
                         TEquipment equipment = new TEquipment();
                         equipment.setCreateDate(new Date());
                         equipment.setModifyDate(new Date());
@@ -212,9 +228,11 @@ public class TEquipmentApplyController {
                                 Date date = nextMonthDate();
                                 equipment.setEndDate(date);
                             }
-                            equipmentService.sentMessage(equipmentApply.getClientId(), PushUtils.buildJson("endDate",String.valueOf(equipment.getEndDate().getTime()) ).toString());
-                            PushUtils.push(equipmentApply.getGtClientId(), "", "", PushUtils.buildJson("endDate",String.valueOf(equipment.getEndDate().getTime()) ).toString());
-                        }
+                            if(equipment.getEndDate()!=null){
+                                equipmentService.sentMessage(equipmentApply.getClientId(), PushUtils.buildJson("endDate",String.valueOf(equipment.getEndDate().getTime()) ).toString());
+                                PushUtils.push(equipmentApply.getGtClientId(), "", "", PushUtils.buildJson("endDate",String.valueOf(equipment.getEndDate().getTime()) ).toString());
+                            }
+                               }
                         equipmentService.save(equipment);
                         equipmentService.sentMessage(equipmentApply.getClientId(), PushUtils.buildJson("statusType", "agreed" + old).toString());
                         PushUtils.push(equipmentApply.getGtClientId(), "【棉花糖】设备初始化申请", "同意", PushUtils.buildJson("statusType", "agreed" + old).toString());

+ 6 - 5
src/main/java/com/szwl/controller/TProportionController.java

@@ -103,7 +103,7 @@ public class TProportionController {
     }
     @ApiOperation(value = "获取分销信息列表 分页 平台")
     @GetMapping("/pageProportionAdmin")
-    public ResponseModel<IPage<?>> pageProportionAdmin(String adminId,String username,String type,long current, long size ) {
+    public ResponseModel<IPage<?>> pageProportionAdmin(String adminId,String userName,String type,long current, long size ) {
         TAdmin admin = adminService.getById(adminId);
         if(StringUtils.isEmpty(adminId)){
             return R.fail(ResponseCodesEnum.A0100);
@@ -114,16 +114,17 @@ public class TProportionController {
             query.eq(TProportionCheck::getAdminId,admin.getId());
         }
         if(type.equals("0")){
-            query.eq(TProportionCheck::getType,type);
+            query.eq(TProportionCheck::getCheckType,type);
         }
-        if(StringUtils.isNotEmpty(username)){
+        if(StringUtils.isNotEmpty(userName)){
             LambdaQueryWrapper<TAdmin> query1 = Wrappers.lambdaQuery();
-            query1.eq(TAdmin::getUsername,username);
+            query1.eq(TAdmin::getUsername,userName);
             List<TAdmin> list = adminService.list(query1);
             if(list.size()>0){
                 query.eq(TProportionCheck::getAdminId,list.get(0).getId());
             }
         }
+        query.orderByDesc(TProportionCheck::getCreateDate);
         Page<TProportionCheck> page = new Page<>(current, size, true);
         IPage<TProportionCheck> iPage = tProportionCheckService.page(page, query);
         return R.ok(iPage);
@@ -375,7 +376,7 @@ public class TProportionController {
         TProportion tProportion = list.get(0);
         return R.ok(tProportion);
     }
-    @ApiOperation(value = "")
+    @ApiOperation(value = "批量设置机器分销")
     @GetMapping("/setProportion")
     public ResponseModel<?> setProportion() {
         LambdaQueryWrapper<TAdmin> query = Wrappers.lambdaQuery();

+ 1 - 1
src/main/resources/bootstrap.yml

@@ -3,7 +3,7 @@ spring:
     name: szwl-server
   profiles:
     # 打包或运行时,换这里:sit测试,prod正式
-    active: sit
+    active: prod
   cloud:
     config:
       name: szwl-server