Browse Source

定时任务

liangpeile 1 year ago
parent
commit
c3abf78a93

+ 1 - 1
crmeb-admin/src/main/java/com/zbkj/admin/task/sms/DynamicScheduledTask.java

@@ -85,7 +85,7 @@ public class DynamicScheduledTask {
                         //每月最后一天
                         if (null!=list.get(i).getIsLastDay()) {
                             if (1==list.get(i).getIsLastDay()) {
-                                cronExpression = "0 " + "0" + " " + "0" + " " + "28-31" + " " + "*" + " ? ";
+                                cronExpression = "0 " + minute + " " + hour + " " + "28-31" + " " + "*" + " ? ";
                             } else {
                                 cronExpression = "0 " + minute + " " + hour + " " + "*" + " " + month + " ? ";
                             }

+ 33 - 18
crmeb-front/src/main/java/com/zbkj/front/controller/NewFrontApi.java

@@ -109,7 +109,6 @@ public class NewFrontApi {
     private OrganizationDepartmentService organizationDepartmentService;
 
 
-
     @ApiOperation(value = "判断用户是否为企业用户还是企业子用户还是普通用户")
     @RequestMapping(value = "/setUserJurisdiction", method = RequestMethod.GET)
     public CommonResult<JSONObject> setUserJurisdiction() {
@@ -136,13 +135,13 @@ public class NewFrontApi {
                     obj.put("UserBypassAccount", one1);
                     obj.put("user", "企业子用户");
                     Integer isAllOrders = info.getIsAllOrders();
-                    if (null!=isAllOrders){
-                        if (1==isAllOrders){
+                    if (null != isAllOrders) {
+                        if (1 == isAllOrders) {
                             obj.put("isAllOrder", "1");
-                        }else{
+                        } else {
                             obj.put("isAllOrder", "2");
                         }
-                    }else{
+                    } else {
                         obj.put("isAllOrder", "2");
                     }
 
@@ -216,7 +215,7 @@ public class NewFrontApi {
             UserEnterprise userEnterprise = userEnterpriseService.getById(id);
             String organizationId = userEnterprise.getOrganizationId();
             LambdaQueryWrapper<OrganizationDepartment> queryWrapperDepart = new LambdaQueryWrapper<>();
-            queryWrapperDepart.eq(OrganizationDepartment::getOrganizationId,organizationId);
+            queryWrapperDepart.eq(OrganizationDepartment::getOrganizationId, organizationId);
             List<OrganizationDepartment> departmentList = organizationDepartmentService.list(queryWrapperDepart);
             OrganizationDepartment organizationDepartment = new OrganizationDepartment();
             organizationDepartment.setName("主账号");
@@ -249,13 +248,13 @@ public class NewFrontApi {
         LambdaQueryWrapper<UserBypassAccount> queryWrapper2 = new LambdaQueryWrapper<>();
         //获取登录账号信息
         User user = userService.getInfo();
-        if(null!=user.getIsAllOrders()){
-            if(3==user.getIsEnterpriseUser()&&1==user.getIsAllOrders()){
+        if (null != user.getIsAllOrders()) {
+            if (3 == user.getIsEnterpriseUser() && 1 == user.getIsAllOrders()) {
                 LambdaQueryWrapper<UserBypassAccount> queryWrapper3 = new LambdaQueryWrapper<>();
                 queryWrapper3.eq(UserBypassAccount::getEnterpriseId, user.getId());
                 UserBypassAccount one = userBypassAccountService.getOne(queryWrapper3);
                 Integer enterpriseId = one.getEnterpriseId();
-                id= String.valueOf(enterpriseId);
+                id = String.valueOf(enterpriseId);
             }
         }
 
@@ -499,20 +498,36 @@ public class NewFrontApi {
     public CommonResult<?> departUser(@RequestParam(name = "departmentId", required = false) String departmentId,
                                       @RequestParam(name = "organizationId", required = false) String organizationId
     ) {
-        List<OrganizationDepartmentUser> list = null;
+        List<UserBypassAccount> list=null;
         if (StringUtils.isNotBlank(organizationId)) {
-            LambdaQueryWrapper<OrganizationDepartmentUser> queryWrapper = new LambdaQueryWrapper<>();
-            queryWrapper.eq(OrganizationDepartmentUser::getOrganizationId, organizationId);
-            list = organizationDepartmentUserService.list(queryWrapper);
+            LambdaQueryWrapper<UserEnterprise> queryWrapper = new LambdaQueryWrapper<>();
+            queryWrapper.eq(UserEnterprise::getOrganizationId, organizationId);
+            UserEnterprise userEnterprise = userEnterpriseService.getOne(queryWrapper);
+            Integer id = userEnterprise.getId();
+            LambdaQueryWrapper<UserBypassAccount> queryWrapper2 = new LambdaQueryWrapper<>();
+            queryWrapper2.eq(UserBypassAccount::getEnterpriseId, id);
+            queryWrapper2.eq(UserBypassAccount::getIsDelete,0 );
+             list = userBypassAccountService.list(queryWrapper2);
         }
         if (StringUtils.isNotBlank(departmentId)) {
             String[] split = departmentId.split(",");
-            LambdaQueryWrapper<OrganizationDepartmentUser> queryWrapper = new LambdaQueryWrapper<>();
-            queryWrapper.in(OrganizationDepartmentUser::getDepartmentId, split);
-            list = organizationDepartmentUserService.list(queryWrapper);
+            LambdaQueryWrapper<OrganizationDepartment> queryWrapper = new LambdaQueryWrapper<>();
+            queryWrapper.in(OrganizationDepartment::getId, split);
+            List<OrganizationDepartment> departmentList = organizationDepartmentService.list(queryWrapper);
+            for (OrganizationDepartment organizationDepartment : departmentList) {
+                String organizationId1 = organizationDepartment.getOrganizationId();
+                String name = organizationDepartment.getName();
+                LambdaQueryWrapper<UserEnterprise> queryWrapper2 = new LambdaQueryWrapper<>();
+                queryWrapper2.eq(UserEnterprise::getOrganizationId, organizationId1);
+                UserEnterprise userEnterprise2 = userEnterpriseService.getOne(queryWrapper2);
+                Integer id2 = userEnterprise2.getId();
+                LambdaQueryWrapper<UserBypassAccount> queryWrapper3 = new LambdaQueryWrapper<>();
+                queryWrapper3.eq(UserBypassAccount::getEnterpriseId, id2);
+                queryWrapper3.eq(UserBypassAccount::getDepartment, name);
+                queryWrapper3.eq(UserBypassAccount::getIsDelete,0 );
+                 list = userBypassAccountService.list(queryWrapper3);
+            }
         }
-
-
         return CommonResult.success(list);
 
     }

+ 65 - 57
crmeb-service/src/main/java/com/zbkj/service/service/impl/OnePassSmsServiceImpl.java

@@ -36,7 +36,6 @@ import java.util.stream.Collectors;
 
 /**
  * 行为service实现类
-
  */
 @Service
 public class OnePassSmsServiceImpl implements OnePassSmsService, SmsService {
@@ -96,6 +95,7 @@ public class OnePassSmsServiceImpl implements OnePassSmsService, SmsService {
         logger.warn("短信模板响应JsonObject = {}", jsonObject);
         return post.getObject("data", OnePassSmsTempsListVo.class);
     }
+
     @Override
     public OnePassSmsTempsListVo temps2(PageParamRequest pageParamRequest) {
         String token = getOnePassToken();
@@ -108,7 +108,7 @@ public class OnePassSmsServiceImpl implements OnePassSmsService, SmsService {
         JSONObject jsonObject = post.getJSONObject("data");
         logger.warn("短信模板响应JsonObject = {}", jsonObject);
 
-        OnePassSmsTempsListVo data = post.getObject( "data", OnePassSmsTempsListVo.class );
+        OnePassSmsTempsListVo data = post.getObject("data", OnePassSmsTempsListVo.class);
 
 //        List<OnePassSmsTempsDataVo> data1 = data.getData();
 //        //获取商家
@@ -125,6 +125,7 @@ public class OnePassSmsServiceImpl implements OnePassSmsService, SmsService {
 //                .collect( Collectors.toList());
         return data;
     }
+
     /**
      * 申请模板消息
      */
@@ -144,13 +145,13 @@ public class OnePassSmsServiceImpl implements OnePassSmsService, SmsService {
     public Boolean applyTempMessage2(SmsApplyTempRequest request) {
         SystemAdmin systemAdmin = SecurityUtil.getLoginUserVo().getUser();
         MerchantSmsTemplate merchantSmsTemplate = new MerchantSmsTemplate();
-        merchantSmsTemplate.setMerId( systemAdmin.getMerId() );
-        merchantSmsTemplate.setTempType( request.getType() );
-        merchantSmsTemplate.setTitle( request.getTitle() );
-        merchantSmsTemplate.setType( "通知" );
-        merchantSmsTemplate.setStatus( "审核中" );
-        merchantSmsTemplate.setContent( request.getContent() );
-        merchantSmsTemplateService.save( merchantSmsTemplate );
+        merchantSmsTemplate.setMerId(systemAdmin.getMerId());
+        merchantSmsTemplate.setTempType(request.getType());
+        merchantSmsTemplate.setTitle(request.getTitle());
+        merchantSmsTemplate.setType("通知");
+        merchantSmsTemplate.setStatus("审核中");
+        merchantSmsTemplate.setContent(request.getContent());
+        merchantSmsTemplateService.save(merchantSmsTemplate);
         String token = getOnePassToken();
         HashMap<String, String> header = onePassUtil.getCommonHeader(token);
         MultiValueMap<String, Object> param = new LinkedMultiValueMap<>();
@@ -168,95 +169,97 @@ public class OnePassSmsServiceImpl implements OnePassSmsService, SmsService {
 
         SystemAdmin systemAdmin = SecurityUtil.getLoginUserVo().getUser();
         LambdaQueryWrapper<MerchantSms> queryWrapper = new LambdaQueryWrapper<>();
-        queryWrapper.eq( MerchantSms::getMerId, systemAdmin.getMerId() );
-        MerchantSms one = merchantSmsService.getOne( queryWrapper );
+        queryWrapper.eq(MerchantSms::getMerId, systemAdmin.getMerId());
+        MerchantSms one = merchantSmsService.getOne(queryWrapper);
         HashMap<String, Object> map = CollUtil.newHashMap();
 
-        if (one.getTransmissionTimes()<=0){
+        if (one.getTransmissionTimes() <= 0) {
             return null;
         }
         List<String> list = Arrays.asList(phone.split(","));
-        if (one.getTransmissionTimes()<list.size()){
+        if (one.getTransmissionTimes() < list.size()) {
             return null;
         }
         int a = 0;
-        for (int i = 0;i<list.size();i++){
-            Boolean push = push( list.get( i ), tempId, map );
-            if (push){
-                a=a+1;
+        for (int i = 0; i < list.size(); i++) {
+            Boolean push = push(list.get(i), tempId, map);
+            if (push) {
+                a = a + 1;
             }
         }
 
         //发送成功 减次数
-            one.setTransmissionTimes( one.getTransmissionTimes()-a );
-            one.setUpdateTime(new Date());
-            one.setTransmissionTimesThen( one.getTransmissionTimesThen()+a );
-            merchantSmsService.updateById( one );
+        one.setTransmissionTimes(one.getTransmissionTimes() - a);
+        one.setUpdateTime(new Date());
+        one.setTransmissionTimesThen(one.getTransmissionTimesThen() + a);
+        merchantSmsService.updateById(one);
 
         return one;
     }
+
     @Override
-    public Boolean sendSSM2(String phone, Integer tempId,Integer merId,Integer isLastDay) {
-        if (null==isLastDay){
-            isLastDay=2;
+    public Boolean sendSSM2(String phone, Integer tempId, Integer merId, Integer isLastDay) {
+        if (null == isLastDay) {
+            isLastDay = 2;
         }
 
-        if (1==isLastDay){
+        if (1 == isLastDay) {
             final Calendar c = Calendar.getInstance();
             if (c.get(Calendar.DATE) == c.getActualMaximum(Calendar.DATE)) {
                 beforeSendMessage();
                 LambdaQueryWrapper<MerchantSms> queryWrapper = new LambdaQueryWrapper<>();
-                queryWrapper.eq( MerchantSms::getMerId, merId );
-                MerchantSms one = merchantSmsService.getOne( queryWrapper );
+                queryWrapper.eq(MerchantSms::getMerId, merId);
+                MerchantSms one = merchantSmsService.getOne(queryWrapper);
                 HashMap<String, Object> map = CollUtil.newHashMap();
 
-                if (one.getTransmissionTimes()<=0){
+                if (one.getTransmissionTimes() <= 0) {
                     return false;
                 }
                 List<String> list = Arrays.asList(phone.split(","));
-                if (one.getTransmissionTimes()<list.size()){
+                if (one.getTransmissionTimes() < list.size()) {
                     return false;
                 }
                 int a = 0;
-                for (int i = 0;i<list.size();i++){
-                    Boolean push = push( list.get( i ), tempId, map );
-                    if (push){
-                        a=a+1;
+                for (int i = 0; i < list.size(); i++) {
+                    Boolean push = push(list.get(i), tempId, map);
+                    if (push) {
+                        a = a + 1;
                     }
                 }
                 //发送成功 减次数
-                one.setTransmissionTimes( one.getTransmissionTimes()-a );
-                one.setTransmissionTimesThen( one.getTransmissionTimesThen()+a );
-                merchantSmsService.updateById( one );
+                one.setTransmissionTimes(one.getTransmissionTimes() - a);
+                one.setTransmissionTimesThen(one.getTransmissionTimesThen() + a);
+                merchantSmsService.updateById(one);
 
                 return true;
             }
-        }else {
+        } else if (2 == isLastDay) {
             beforeSendMessage();
 
             LambdaQueryWrapper<MerchantSms> queryWrapper = new LambdaQueryWrapper<>();
-            queryWrapper.eq( MerchantSms::getMerId, merId );
-            MerchantSms one = merchantSmsService.getOne( queryWrapper );
+            queryWrapper.eq(MerchantSms::getMerId, merId);
+            MerchantSms one = merchantSmsService.getOne(queryWrapper);
             HashMap<String, Object> map = CollUtil.newHashMap();
 
-            if (one.getTransmissionTimes()<=0){
+            if (one.getTransmissionTimes() <= 0) {
                 return false;
             }
             List<String> list = Arrays.asList(phone.split(","));
-            if (one.getTransmissionTimes()<list.size()){
+            if (one.getTransmissionTimes() < list.size()) {
                 return false;
             }
             int a = 0;
-            for (int i = 0;i<list.size();i++){
-                Boolean push = push( list.get( i ), tempId, map );
-                if (push){
-                    a=a+1;
+            for (int i = 0; i < list.size(); i++) {
+                Boolean push = push(list.get(i), tempId, map);
+                if (push) {
+                    a = a + 1;
                 }
+                //发送成功 减次数
+                one.setTransmissionTimes(one.getTransmissionTimes() - a);
+                one.setTransmissionTimesThen(one.getTransmissionTimesThen() + a);
+                merchantSmsService.updateById(one);
             }
-            //发送成功 减次数
-            one.setTransmissionTimes( one.getTransmissionTimes()-a );
-            one.setTransmissionTimesThen( one.getTransmissionTimesThen()+a );
-            merchantSmsService.updateById( one );
+
 
             return true;
         }
@@ -264,6 +267,7 @@ public class OnePassSmsServiceImpl implements OnePassSmsService, SmsService {
         return true;
 
     }
+
     /**
      * 发短信之前的校验
      */
@@ -321,7 +325,8 @@ public class OnePassSmsServiceImpl implements OnePassSmsService, SmsService {
 
     /**
      * 发送公共验证码前校验
-     * @param phone 手机号
+     *
+     * @param phone    手机号
      * @param clientIp IP
      * @param dateTime 时间
      */
@@ -404,11 +409,12 @@ public class OnePassSmsServiceImpl implements OnePassSmsService, SmsService {
 
     /**
      * 发送入驻审核通过通知短信
-     * @param phone 手机号
-     * @param date 日期,yyyy-MM-dd
-     * @param merName 商户名
+     *
+     * @param phone    手机号
+     * @param date     日期,yyyy-MM-dd
+     * @param merName  商户名
      * @param merPhone 商户店长手机号
-     * @param pwd 商户店长密码
+     * @param pwd      商户店长密码
      * @param siteName 站点名称
      * @return Boolean
      */
@@ -433,9 +439,10 @@ public class OnePassSmsServiceImpl implements OnePassSmsService, SmsService {
 
     /**
      * 发送入驻审核未通过通知短信
-     * @param phone 手机号
-     * @param date 日期,yyyy-MM-dd
-     * @param merName 商户名
+     *
+     * @param phone    手机号
+     * @param date     日期,yyyy-MM-dd
+     * @param merName  商户名
      * @param siteName 站点名称
      * @return Boolean
      */
@@ -464,6 +471,7 @@ public class OnePassSmsServiceImpl implements OnePassSmsService, SmsService {
 
     /**
      * 获取短信模板ID
+     *
      * @param mark 消息通知标识
      * @return tempId
      */