Bläddra i källkod

1.近期代码提交(物联网,特审复开审批等)

liuhy 3 år sedan
förälder
incheckning
a14ba2647d
37 ändrade filer med 1619 tillägg och 565 borttagningar
  1. 0 115
      README.md
  2. 0 0
      db/电信北区稽核.pdma.json
  3. 0 1
      tnc-base/tnc-base-core/src/main/java/org/jeecg/common/constant/CommonConstant.java
  4. 14 0
      tnc-base/tnc-base-core/src/main/java/org/jeecg/config/mybatis/MybatisInterceptor.java
  5. 1 31
      tnc-generate/src/main/resources/jeecg/jeecg_config.properties
  6. 6 1
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/configs/CheckStateCode.java
  7. 136 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/AsCheckCustomerInfoController.java
  8. 216 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/BusinessReminderCardController.java
  9. 0 3
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsCheckCustomerDataController.java
  10. 352 341
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsCheckTaskController.java
  11. 143 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsLotCustomerController.java
  12. 42 23
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SpecialExaminationContrller.java
  13. 97 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/AsCheckCustomerInfo.java
  14. 111 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/BusinessReminderCard.java
  15. 98 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SmcLotCheckLog.java
  16. 4 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SmsCheckTask.java
  17. 84 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SmsLotCustomerData.java
  18. 9 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SpecialExamination.java
  19. 14 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/AsCheckCustomerInfoMapper.java
  20. 13 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/BusinessReminderCardMapper.java
  21. 9 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SmcLotCheckLogMapper.java
  22. 4 4
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SmsCheckWorkLogMapper.java
  23. 9 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SmsLotCustomerMapper.java
  24. 8 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/AsCheckCustomerInfoService.java
  25. 8 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/BusinessReminderCardService.java
  26. 14 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/SmcLotCheckLogService.java
  27. 12 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/SmsLotCustomerService.java
  28. 14 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/AsCheckCustomerInfoServiceImpl.java
  29. 15 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/BusinessReminderCardServiceImpl.java
  30. 26 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/SmcLotCheckLogServiceImpl.java
  31. 14 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/SmsLotCustomerServiceImpl.java
  32. 96 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/vo/AsCheckCustomerInfoServiceVo.java
  33. 3 0
      tnc-sms/src/main/java/org/jeecg/modules/smscheck/vo/SmsCheckCustomerInfoVo.java
  34. 33 36
      tnc-system/src/main/resources/application-dev.yml
  35. 12 8
      tnc-system/src/main/resources/application-test.yml
  36. 1 1
      tnc-system/src/main/resources/application.yml
  37. 1 1
      tnc-system/src/main/resources/banner.txt

+ 0 - 115
README.md

@@ -1,9 +1,3 @@
-Jeecg-Boot 低代码开发平台
-===============
-
-当前最新版本: 3.2.0(发布日期:20220425)
-
-
 ## 后端技术架构
 - 基础框架:Spring Boot 2.6.6
 
@@ -34,16 +28,6 @@ Jeecg-Boot 低代码开发平台
 - 缓存:Redis
 
 
-## 技术文档
-
-
-- 在线演示 :  [http://boot.jeecg.com](http://boot.jeecg.com)
-
-- 在线文档:  [http://doc.jeecg.com](http://doc.jeecg.com)
-
-- 常见问题:  [http://jeecg.com/doc/qa](http://jeecg.com/doc/qa)
-
-- QQ交流群 : ⑤860162132、④774126647(满)、③816531124(满)、②769925425(满)、①284271917(满)
 
 
 ## 专项文档
@@ -89,107 +73,8 @@ QueryWrapper<?> queryWrapper = QueryGenerator.initQueryWrapper(?, req.getParamet
 | 多选字段模糊查询     | 上述4 有一个特例,若某一查询字段前后都带逗号 则会将其视为走这种查询方式 ,该查询方式是将查询条件以逗号分割再遍历数组 将每个元素作like查询 用or拼接,例如 现在name传入值 ,a,b,c, 那么结果sql就是 name like '%a%' or name like '%b%' or name like '%c%' |    |
 
 
-#### 二、AutoPoi(EXCEL工具类-EasyPOI衍变升级重构版本)
- 
-  [在线文档](https://github.com/zhangdaiscott/autopoi)
-  
-
-
-#### 三、代码生成器
-
-> 功能说明:   一键生成的代码(包括:controller、service、dao、mapper、entity、vue)
- 
- - 模板位置: src/main/resources/jeecg/code-template
- - 技术文档: http://doc.jeecg.com/2043916
-
-
-
-#### 四、编码排重使用示例
-
-重复校验效果:
-![输入图片说明](https://static.oschina.net/uploads/img/201904/19191836_eGkQ.png "在这里输入图片标题")
-
-1.引入排重接口,代码如下:  
- 
-```
-import { duplicateCheck } from '@/api/api'
-  ```
-2.找到编码必填校验规则的前端代码,代码如下:  
-  
-```
-<a-input placeholder="请输入编码" v-decorator="['code', validatorRules.code ]"/>
-
-code: {
-            rules: [
-              { required: true, message: '请输入编码!' },
-              {validator: this.validateCode}
-            ]
-          },
-  ```
-3.找到rules里validator对应的方法在哪里,然后使用第一步中引入的排重校验接口.  
-  以用户online表单编码为示例,其中四个必传的参数有:  
-    
-```
-  {tableName:表名,fieldName:字段名,fieldVal:字段值,dataId:表的主键},
-  ```
- 具体使用代码如下:  
- 
-```
-    validateCode(rule, value, callback){
-        let pattern = /^[a-z|A-Z][a-z|A-Z|\d|_|-]{0,}$/;
-        if(!pattern.test(value)){
-          callback('编码必须以字母开头,可包含数字、下划线、横杠');
-        } else {
-          var params = {
-            tableName: "onl_cgreport_head",
-            fieldName: "code",
-            fieldVal: value,
-            dataId: this.model.id
-          };
-          duplicateCheck(params).then((res)=>{
-            if(res.success){
-             callback();
-            }else{
-              callback(res.message);
-            }
-          })
-        }
-      },
-```
-
-
-## docker镜像用法
-  文档: http://doc.jeecg.com/2043889
-
- ``` 
-注意: 如果本地安装了mysql和redis,启动容器前先停掉本地服务,不然会端口冲突。
-       net stop redis
-       net stop mysql
- 
- # 1.配置host
-
-    # jeecgboot
-    127.0.0.1   jeecg-boot-redis
-    127.0.0.1   jeecg-boot-mysql
-    127.0.0.1   jeecg-boot-system
-	
-# 2.修改项目配置文件 application.yml
-    active: dev
-	
-# 3.修改application-dev.yml文件的数据库和redis链接
-	修改数据库连接和redis连接,将连接改成host方式
-
-# 4.先进JAVA项目jeecg-boot根路径 maven打包
-    mvn clean package
- 
 
-# 5.构建镜像__容器组(当你改变本地代码,也可重新构建镜像)
-    docker-compose build
 
 
-# 6.启动镜像__容器组(也可取代运行中的镜像)
-    docker-compose up -d
 
-# 7.访问后台项目(注意要开启swagger)
-    http://localhost:8080/jeecg-boot/doc.html
 ``` 

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 0 - 0
db/电信北区稽核.pdma.json


+ 0 - 1
tnc-base/tnc-base-core/src/main/java/org/jeecg/common/constant/CommonConstant.java

@@ -2,7 +2,6 @@ package org.jeecg.common.constant;
 
 /**
  * @Description: 通用常量
- * @author: jeecg-boot
  */
 public interface CommonConstant {
 

+ 14 - 0
tnc-base/tnc-base-core/src/main/java/org/jeecg/config/mybatis/MybatisInterceptor.java

@@ -82,6 +82,20 @@ public class MybatisInterceptor implements Interceptor {
 							}
 						}
 					}
+					//注入用户编码
+					if ("staffNo".equals(field.getName())) {
+						field.setAccessible(true);
+						Object localSysOrgCode = field.get(parameter);
+						field.setAccessible(false);
+						if (localSysOrgCode == null || "".equals(localSysOrgCode)) {
+							// 获取登录用户信息
+							if (sysUser != null) {
+								field.setAccessible(true);
+								field.set(parameter, sysUser.getWorkNo());
+								field.setAccessible(false);
+							}
+						}
+					}
 				} catch (Exception e) {
 				}
 			}

+ 1 - 31
tnc-generate/src/main/resources/jeecg/jeecg_config.properties

@@ -1,31 +1 @@
-#code_generate_project_path
-project_path=D:\\codeGen
-#bussi_package[User defined]
-bussi_package=org.jeecg.modules
-
-#maven code path
-source_root_package=src.main.java
-webroot_package=src.main.webapp
-
-# freemarker 资源路径
-#ftl resource url
-templatepath=/jeecg/code-template
-# 系统编码
-system_encoding=utf-8
-
-# 数据库表主键 key
-#db Table id [User defined] 
-db_table_id=id
-
-#db convert flag[true/false]
-db_filed_convert=true
-
-# 要查询字段个数 1是 显示2个字段
-#page Search Field num [User defined]
-page_search_filed_num=1
-
-# 排除显示的字段(前端表格列表中)
-#page_filter_fields
-page_filter_fields=create_time,create_by,update_time,update_by
-# 排除查询表前缀
-exclude_table=act_,ext_act_,design_,onl_,sys_,qrtz_
+#code_generate_project_path
project_path=D:\\codeGen
#bussi_package[User defined]
bussi_package=org.jeecg.modules

#maven code path
source_root_package=src.main.java
webroot_package=src.main.webapp

# freemarker 资源路径
#ftl resource url
templatepath=/jeecg/code-template
# 系统编码
system_encoding=utf-8

# 数据库表主键 key
#db Table id [User defined] 
db_table_id=id

#db convert flag[true/false]
db_filed_convert=true

# 要查询字段个数 1是 显示2个字段
#page Search Field num [User defined]
page_search_filed_num=1

# 排除显示的字段(前端表格列表中)
#page_filter_fields
page_filter_fields=create_time,create_by,update_time,update_by
# 排除查询表前缀
exclude_table=act_,ext_act_,design_,onl_,sys_,qrtz_

+ 6 - 1
tnc-sms/src/main/java/org/jeecg/modules/smscheck/configs/CheckStateCode.java

@@ -4,11 +4,16 @@ package org.jeecg.modules.smscheck.configs;
  * 稽核状态编码
  */
 public final class CheckStateCode {
+    /**未处理*/
     public static final Integer CHECK_STSTE_0 = 0;
+    /**未完善*/
     public static final Integer CHECK_STSTE_1 = 1;
+    /**待稽核*/
     public static final Integer CHECK_STSTE_2 = 2;
+    /**已整改*/
     public static final Integer CHECK_STSTE_3 = 3;
+    /**待整改*/
     public static final Integer CHECK_STSTE_4 = 4;
+    /**稽核通过*/
     public static final Integer CHECK_STSTE_5 = 5;
-
 }

+ 136 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/AsCheckCustomerInfoController.java

@@ -0,0 +1,136 @@
+package org.jeecg.modules.smscheck.controller;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.date.DateTime;
+import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.lang.Dict;
+import cn.hutool.core.lang.Tuple;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.shiro.SecurityUtils;
+import org.checkerframework.checker.units.qual.A;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.common.system.api.ISysBaseAPI;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.system.vo.DictModel;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.modules.smscheck.entity.AsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.entity.BusinessReminderCard;
+import org.jeecg.modules.smscheck.entity.SmsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.service.AsCheckCustomerInfoService;
+import org.jeecg.modules.smscheck.vo.AsCheckCustomerInfoServiceVo;
+import org.jeecg.modules.smscheck.vo.SmsCheckCustomerInfoVo;
+import org.jeecgframework.poi.excel.ExcelImportUtil;
+import org.jeecgframework.poi.excel.entity.ImportParams;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 入网信息业务
+ */
+@Api(tags = "关停工单相关业务")
+@RestController
+@RequestMapping("/asCheck/customerInfo")
+@Slf4j
+public class AsCheckCustomerInfoController {
+    @Autowired
+    private ISysBaseAPI sysBaseApi;
+    @Resource
+    private AsCheckCustomerInfoService asCheckCustomerInfoService;
+
+
+    @ApiOperation(value = "入网信息业务-分页列表查询", notes = "入网信息业务-分页列表查询")
+    @GetMapping(value = "/list")
+    public Result<IPage<AsCheckCustomerInfo>> queryPageList(AsCheckCustomerInfo asCheckCustomerInfo,
+                                                             @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                                             @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                             HttpServletRequest request) {
+        QueryWrapper<AsCheckCustomerInfo> queryWrapper = QueryGenerator.initQueryWrapper(asCheckCustomerInfo, request.getParameterMap());
+        Page<AsCheckCustomerInfo> page = new Page<>(pageNo, pageSize);
+        IPage<AsCheckCustomerInfo> pageList = asCheckCustomerInfoService.page(page, queryWrapper);
+        return Result.OK(pageList);
+    }
+
+
+    /**
+     * 通过excel导入数据
+     *
+     * @param file 请求
+     * @return 导入结果
+     */
+    @PostMapping(value = "/importCustomerExcel")
+    public Result<?> importCustomerExcel(@RequestPart("file") MultipartFile file) {
+        String filename = file.getOriginalFilename();
+        if (!filename.endsWith(".xlsx") && !filename.endsWith(".xls")) {
+            return Result.error("文件类型不正确!请导入文件类型->.xlsx或.xls");
+        }
+        Dict dict = new Dict();
+        ImportParams params = new ImportParams();
+        params.setTitleRows(1);
+        try {
+            // 工具类缺陷,默认导入全部sheet页,会导致
+            List<AsCheckCustomerInfoServiceVo> list = ExcelImportUtil.importExcel(
+                    file.getInputStream(), AsCheckCustomerInfoServiceVo.class, params);
+            List<AsCheckCustomerInfoServiceVo> voList = new ArrayList<>();
+            int errorCount = 0;
+
+            // 获取所有字典值
+            List<DictModel> dictModels = sysBaseApi.getDictItems("user_type");
+            Dict dictItemMap = Dict.create();
+            dictModels.forEach(model -> {
+                dictItemMap.put(model.getValue(), model.getText());
+            });
+
+            Tuple dictTuple = new Tuple(dictItemMap);
+
+            for (AsCheckCustomerInfoServiceVo vo : list) {
+                AsCheckCustomerInfoServiceVo infoVo = vo;
+                if (ObjectUtil.isNotNull(infoVo)) {
+                    if (StrUtil.isNotBlank(infoVo.getErrorMsg())) {
+                        errorCount++;
+                    }
+                    voList.add(infoVo);
+                }
+            }
+            dict.put("errorCount", errorCount);
+            dict.put("data", voList);
+        } catch (Exception e) {
+            log.error("客户信息导入失败", e);
+        }
+        return Result.ok(dict);
+    }
+
+    @PostMapping(value = "/{taskId}/importCustomerData")
+    public Result<?> importCustomerData(@PathVariable String taskId, @RequestBody List<AsCheckCustomerInfoServiceVo> list) {
+        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        List<AsCheckCustomerInfo> dataList = new ArrayList<>();
+        int customerCount = 0;
+        for (int i = 0; i < list.size(); i++) {
+            AsCheckCustomerInfoServiceVo infoVo = list.get(i);
+            infoVo.setDate(null);
+            infoVo.setShutdownReasonDate(null);
+            AsCheckCustomerInfo info = new AsCheckCustomerInfo();
+            BeanUtil.copyProperties(infoVo, info, true);
+            info.setDelFlag(CommonConstant.DEL_FLAG_0);
+            info.setControl(0);
+            info.setTaskId(taskId);
+            asCheckCustomerInfoService.save(info);
+        }
+        return Result.ok();
+    }
+
+
+}

+ 216 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/BusinessReminderCardController.java

@@ -0,0 +1,216 @@
+package org.jeecg.modules.smscheck.controller;
+
+import cn.hutool.core.lang.Dict;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.PermissionData;
+import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.smscheck.entity.BusinessReminderCard;
+import org.jeecg.modules.smscheck.entity.SmsCheckCustomerData;
+import org.jeecg.modules.smscheck.entity.SmsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.service.BusinessReminderCardService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.Arrays;
+
+/**
+ * 入网信息业务
+ */
+@Api(tags = "入网信息业务")
+@RestController
+@RequestMapping("/businessReminderCard")
+@Slf4j
+public class BusinessReminderCardController {
+    @Autowired
+    private BusinessReminderCardService businessReminderCardService;
+
+
+    @ApiOperation(value = "入网信息业务-分页列表查询", notes = "入网信息业务-分页列表查询")
+    @GetMapping(value = "/list")
+    public Result<IPage<BusinessReminderCard>> queryPageList(BusinessReminderCard businessReminderCard,
+                                                             @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                                             @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                             HttpServletRequest request) {
+        businessReminderCard.setDelFlag( CommonConstant.DEL_FLAG_0);
+        QueryWrapper<BusinessReminderCard> queryWrapper = QueryGenerator.initQueryWrapper(businessReminderCard, request.getParameterMap());
+        Page<BusinessReminderCard> page = new Page<>(pageNo, pageSize);
+        IPage<BusinessReminderCard> pageList = businessReminderCardService.page(page, queryWrapper);
+        return Result.OK(pageList);
+    }
+
+    @ApiOperation(value = "入网信息业务-分页列表查询", notes = "入网信息业务-分页列表查询")
+    @GetMapping(value = "/delete/list")
+    public Result<IPage<BusinessReminderCard>> queryPageDeleteList(BusinessReminderCard businessReminderCard,
+                                                             @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                                             @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                             HttpServletRequest request) {
+        businessReminderCard.setDelFlag( CommonConstant.DEL_FLAG_1);
+        QueryWrapper<BusinessReminderCard> queryWrapper = QueryGenerator.initQueryWrapper(businessReminderCard, request.getParameterMap());
+        Page<BusinessReminderCard> page = new Page<>(pageNo, pageSize);
+        IPage<BusinessReminderCard> pageList = businessReminderCardService.page(page, queryWrapper);
+        return Result.OK(pageList);
+    }
+
+
+    /**
+     * 通过id查询 入网信息统计数
+     *
+     * @return 数据
+     */
+    @ApiOperation(value = "入网信息-通过id查询 统计数", notes = "入网信息-通过id查询 统计数")
+    @GetMapping(value = "/type/count")
+    @PermissionData(pageComponent = "smscheck/modules/TaskCheckList")
+    public Result<Dict> count(HttpServletRequest request) {
+        Dict dict = Dict.create();
+        // 总数
+        QueryWrapper<BusinessReminderCard> countQueryWrapper = QueryGenerator.initQueryWrapper(new BusinessReminderCard(), request.getParameterMap());
+        countQueryWrapper.lambda()
+                .eq(BusinessReminderCard::getDelFlag, CommonConstant.DEL_FLAG_0);
+        long count = businessReminderCardService.count(countQueryWrapper);
+
+        //非高危
+        QueryWrapper<BusinessReminderCard> unCountQueryWrapper = QueryGenerator.initQueryWrapper(new BusinessReminderCard(), request.getParameterMap());
+        unCountQueryWrapper.lambda()
+                .eq(BusinessReminderCard::getDelFlag, CommonConstant.DEL_FLAG_0)
+                .in(BusinessReminderCard::getNumberResults, Arrays.asList(1));
+        long unCount = businessReminderCardService.count(unCountQueryWrapper);
+
+        //已报蓝紫名单
+        QueryWrapper<BusinessReminderCard> uncheckCountQueryWrapper = QueryGenerator.initQueryWrapper(new BusinessReminderCard(), request.getParameterMap());
+        uncheckCountQueryWrapper.lambda()
+                .eq(BusinessReminderCard::getDelFlag, CommonConstant.DEL_FLAG_0)
+                .in(BusinessReminderCard::getNumberResults, Arrays.asList(2));
+        long uncheckCount = businessReminderCardService.count(uncheckCountQueryWrapper);
+
+        //已报关停
+        QueryWrapper<BusinessReminderCard> closeCountQueryWrapper = QueryGenerator.initQueryWrapper(new BusinessReminderCard(), request.getParameterMap());
+        closeCountQueryWrapper.lambda()
+                .eq(BusinessReminderCard::getDelFlag, CommonConstant.DEL_FLAG_0)
+                .in(BusinessReminderCard::getNumberResults, Arrays.asList(3));
+        long closeCount = businessReminderCardService.count(closeCountQueryWrapper);
+
+        //删除
+        QueryWrapper<BusinessReminderCard> delCountQueryWrapper = QueryGenerator.initQueryWrapper(new BusinessReminderCard(), request.getParameterMap());
+        delCountQueryWrapper.lambda()
+                .eq(BusinessReminderCard::getDelFlag, CommonConstant.LOG_TYPE_1);
+        long delCount = businessReminderCardService.count(delCountQueryWrapper);
+
+        dict.put("count", count);
+        dict.put("unCount", unCount);
+        dict.put("uncheckCount", uncheckCount);
+        dict.put("closeCount", closeCount);
+        dict.put("delCount", delCount);
+
+        return Result.ok(dict);
+
+    }
+
+
+    /**
+     * 新增 入网用户信息
+     *
+     * @param businessReminderCard
+     * @return
+     */
+    @PostMapping(value = "/add")
+    public Result<?> add(@RequestBody BusinessReminderCard businessReminderCard) {
+        businessReminderCard.setDelFlag(CommonConstant.DEL_FLAG_0);
+        boolean save = businessReminderCardService.save(businessReminderCard);
+        if (save) {
+            return Result.OK();
+        }
+        return Result.error("新增失败");
+    }
+
+    /**
+     * 修改 入网用户信息
+     *
+     * @param businessReminderCard
+     * @return
+     */
+    @PostMapping(value = "/editById")
+    public Result<?> editById(@RequestBody BusinessReminderCard businessReminderCard) {
+        String id = businessReminderCard.getId();
+        if (StringUtils.isEmpty(id)){
+            return Result.error("ID不能为空");
+        }
+        businessReminderCard.setDelFlag(CommonConstant.DEL_FLAG_0);
+        boolean updateById = businessReminderCardService.updateById(businessReminderCard);
+        if (updateById) {
+            return Result.OK("修改成功");
+        }
+        return Result.error("修改失败");
+    }
+
+
+    /**
+     * 通过ID查询入网信息业务详情
+     *
+     * @param id
+     * @return
+     */
+    @GetMapping(value = "/queryById")
+    public Result<BusinessReminderCard> queryById(@RequestParam(name = "id") String id) {
+        if (StringUtils.isEmpty(id)){
+            return Result.error("ID不能为空");
+        }
+        BusinessReminderCard byId = businessReminderCardService.getById(id);
+        if (byId == null) {
+            return Result.error("未找到对应数据");
+        }
+        return Result.OK(byId);
+    }
+
+    @DeleteMapping(value = "/delete/flagById")
+    public Result<BusinessReminderCard> deleteFlagById(@RequestParam(name = "id") String id) {
+        if (StringUtils.isEmpty(id)){
+            return Result.error("ID不能为空");
+        }
+        BusinessReminderCard businessReminderCard = new BusinessReminderCard();
+        businessReminderCard.setId(id);
+        businessReminderCard.setDelFlag(CommonConstant.DEL_FLAG_1);
+        boolean updateById = businessReminderCardService.updateById(businessReminderCard);
+        if (updateById) {
+            return Result.ok("删除成功");
+        }
+        return Result.error("删除失败");
+    }
+
+    @GetMapping(value = "/deleteById")
+    public Result<BusinessReminderCard> deleteById(@RequestParam(name = "id") String id) {
+        if (StringUtils.isEmpty(id)){
+            return Result.error("ID不能为空");
+        }
+        BusinessReminderCard businessReminderCard = new BusinessReminderCard();
+        businessReminderCard.setId(id);
+        boolean removeById = businessReminderCardService.removeById(businessReminderCard);
+        if (removeById) {
+            return Result.ok("删除成功");
+        }
+        return Result.error("删除失败");
+    }
+
+    @GetMapping(value = "/restoreById")
+    public Result<BusinessReminderCard> restoreById(@RequestParam(name = "id") String id) {
+        if (StringUtils.isEmpty(id)){
+            return Result.error("ID不能为空");
+        }
+        BusinessReminderCard businessReminderCard = new BusinessReminderCard();
+        businessReminderCard.setId(id);
+        businessReminderCard.setDelFlag(CommonConstant.DEL_FLAG_0);
+        boolean removeById = businessReminderCardService.updateById(businessReminderCard);
+        if (removeById) {
+            return Result.ok("恢复成功");
+        }
+        return Result.error("恢复失败");
+    }
+}

+ 0 - 3
tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsCheckCustomerDataController.java

@@ -33,8 +33,6 @@ import java.util.Arrays;
 import java.util.List;
 
 /**
- * @author jeecg-boot
- * @version V1.0
  * @description 客户资料
  * @date 2022-06-27
  */
@@ -77,7 +75,6 @@ public class SmsCheckCustomerDataController extends JeecgController<SmsCheckCust
         if (StringUtils.isEmpty(smsCheckCustomerData.getInfoId())){
             return Result.error("用户编码不能为空");
         }
-
         LambdaQueryWrapper<SmsCheckCustomerData> queryWrapperData = new LambdaQueryWrapper<>();
         queryWrapperData.eq(SmsCheckCustomerData::getInfoId,smsCheckCustomerData.getInfoId());
         Page<SmsCheckCustomerData> page = new Page<>(1, 100);

+ 352 - 341
tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsCheckTaskController.java

@@ -43,365 +43,376 @@ import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
 
- /**
- * @description 稽核任务
+/**
  * @author jeecg-boot
- * @date 2022-06-20
  * @version V1.0
+ * @description 稽核任务
+ * @date 2022-06-20
  */
-@Api(tags="稽核任务")
+@Api(tags = "稽核任务")
 @RestController
 @RequestMapping("/smsCheck/task")
 @Slf4j
 public class SmsCheckTaskController extends JeecgController<SmsCheckTask, ISmsCheckTaskService> {
-	@Autowired
-	private ISmsCheckTaskService taskService;
+    @Autowired
+    private ISmsCheckTaskService taskService;
     @Autowired
     private ISmsCheckCustomerInfoService customerInfoService;
-	@Autowired
-	private ISmsCheckCompanyService companyService;
-	@Autowired
-	private ISmsCheckSmsNumberService smsNumberService;
     @Autowired
-	private ISysBaseAPI sysBaseApi;
-
-	@Autowired
-	private ISysUserService sysUserService;
-
-	@Autowired
-	private DataYearMonthImpl dataYearMonth;
-	 /**
-	  * 分页列表查询
-	  *
-	  * @param smsCheckTask 对象
-	  * @param pageNo 页码
-	  * @param pageSize 每页条数
-	  * @param request 请求
-	  * @return 结果
-	  */
-	//@AutoLog(value = "稽核任务-分页列表查询")
-	@ApiOperation(value="稽核任务-分页列表查询", notes="稽核任务-分页列表查询")
-	@GetMapping(value = "/list")
-	@PermissionData(pageComponent = "smscheck/modules/TaskList")
-	public Result<IPage<SmsCheckTask>> queryPageList(SmsCheckTask smsCheckTask,
-								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
-								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
-								   HttpServletRequest request) {
-		QueryWrapper<SmsCheckTask> queryWrapper = QueryGenerator.initQueryWrapper(smsCheckTask, request.getParameterMap());
-		Page<SmsCheckTask> page = new Page<>(pageNo, pageSize);
-		IPage<SmsCheckTask> pageList = taskService.page(page, queryWrapper);
-		return Result.OK(pageList);
-	}
-
-	 /**
-	  * 添加
-	  *
-	  * @param smsCheckTask 对象
-	  * @return 结果
-	  */
-	@AutoLog(value = "稽核任务-添加")
-	@ApiOperation(value="稽核任务-添加", notes="稽核任务-添加")
-	@PostMapping(value = "/add")
-	public Result<String> add(@RequestBody SmsCheckTask smsCheckTask) {
-		// 0:未开始;1:进行中;2:已结束;
-		smsCheckTask.setTaskState(0);
-		smsCheckTask.setCustomerCount(0);
-		smsCheckTask.setCheckCount(0);
-		smsCheckTask.setDelFlag(CommonConstant.DEL_FLAG_0);
-		taskService.save(smsCheckTask);
-		return Result.OK("添加成功!");
-	}
-
-	 /**
-	  * 编辑
-	  *
-	  * @param smsCheckTask 对象
-	  * @return 结果
-	  */
-	@AutoLog(value = "稽核任务-编辑")
-	@ApiOperation(value="稽核任务-编辑", notes="稽核任务-编辑")
-	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
-	public Result<String> edit(@RequestBody SmsCheckTask smsCheckTask) {
-		taskService.updateById(smsCheckTask);
-		return Result.OK("编辑成功!");
-	}
-
-	 /**
-	  * 通过id删除
-	  *
-	  * @param id 主键
-	  * @return 结果
-	  */
-	@AutoLog(value = "稽核任务-通过id删除")
-	@ApiOperation(value="稽核任务-通过id删除", notes="稽核任务-通过id删除")
-	@DeleteMapping(value = "/delete")
-	public Result<String> delete(@RequestParam(name="id") String id) {
-		taskService.removeById(id);
-		return Result.OK("删除成功!");
-	}
-
-	 /**
-	  * 批量删除
-	  *
-	  * @param ids 主键
-	  * @return 结果
-	  */
-	@AutoLog(value = "稽核任务-批量删除")
-	@ApiOperation(value="稽核任务-批量删除", notes="稽核任务-批量删除")
-	@DeleteMapping(value = "/deleteBatch")
-	public Result<String> deleteBatch(@RequestParam(name="ids") String ids) {
-		this.taskService.removeByIds(Arrays.asList(ids.split(",")));
-		return Result.OK("批量删除成功!");
-	}
-
-	 /**
-	  * 通过id查询
-	  *
-	  * @param id 主键
-	  * @return 数据
-	  */
-	//@AutoLog(value = "稽核任务-通过id查询")
-	@ApiOperation(value="稽核任务-通过id查询", notes="稽核任务-通过id查询")
-	@GetMapping(value = "/queryById")
-	public Result<SmsCheckTask> queryById(@RequestParam(name="id") String id) {
-		SmsCheckTask smsCheckTask = taskService.getById(id);
-		if(smsCheckTask==null) {
-			return Result.error("未找到对应数据");
-		}
-		return Result.OK(smsCheckTask);
-	}
-
-	 /**
-	  * 导出excel
-	  *
-	  * @param request 请求
-	  * @param smsCheckTask 对象
-	  * @return excel文件
-	  */
+    private ISmsCheckCompanyService companyService;
+    @Autowired
+    private ISmsCheckSmsNumberService smsNumberService;
+    @Autowired
+    private ISysBaseAPI sysBaseApi;
+
+    @Autowired
+    private ISysUserService sysUserService;
+
+    @Autowired
+    private DataYearMonthImpl dataYearMonth;
+
+    /**
+     * 分页列表查询
+     *
+     * @param smsCheckTask 对象
+     * @param pageNo       页码
+     * @param pageSize     每页条数
+     * @param request      请求
+     * @return 结果
+     */
+    //@AutoLog(value = "稽核任务-分页列表查询")
+    @ApiOperation(value = "稽核任务-分页列表查询", notes = "稽核任务-分页列表查询")
+    @GetMapping(value = "/list")
+    @PermissionData(pageComponent = "smscheck/modules/TaskList")
+    public Result<IPage<SmsCheckTask>> queryPageList(SmsCheckTask smsCheckTask,
+                                                     @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                                     @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                     HttpServletRequest request) {
+        QueryWrapper<SmsCheckTask> queryWrapper = QueryGenerator.initQueryWrapper(smsCheckTask, request.getParameterMap());
+        Page<SmsCheckTask> page = new Page<>(pageNo, pageSize);
+        IPage<SmsCheckTask> pageList = taskService.page(page, queryWrapper);
+        return Result.OK(pageList);
+    }
+
+    /**
+     * 添加
+     *
+     * @param smsCheckTask 对象
+     * @return 结果
+     */
+    @AutoLog(value = "稽核任务-添加")
+    @ApiOperation(value = "稽核任务-添加", notes = "稽核任务-添加")
+    @PostMapping(value = "/add")
+    public Result<String> add(@RequestBody SmsCheckTask smsCheckTask) {
+        // 0:未开始;1:进行中;2:已结束;
+        smsCheckTask.setTaskState(0);
+        smsCheckTask.setCustomerCount(0);
+        smsCheckTask.setCheckCount(0);
+        smsCheckTask.setDelFlag(CommonConstant.DEL_FLAG_0);
+        taskService.save(smsCheckTask);
+        return Result.OK("添加成功!");
+    }
+
+    /**
+     * 编辑
+     *
+     * @param smsCheckTask 对象
+     * @return 结果
+     */
+    @AutoLog(value = "稽核任务-编辑")
+    @ApiOperation(value = "稽核任务-编辑", notes = "稽核任务-编辑")
+    @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
+    public Result<String> edit(@RequestBody SmsCheckTask smsCheckTask) {
+        taskService.updateById(smsCheckTask);
+        return Result.OK("编辑成功!");
+    }
+
+    /**
+     * 通过id删除
+     *
+     * @param id 主键
+     * @return 结果
+     */
+    @AutoLog(value = "稽核任务-通过id删除")
+    @ApiOperation(value = "稽核任务-通过id删除", notes = "稽核任务-通过id删除")
+    @DeleteMapping(value = "/delete")
+    public Result<String> delete(@RequestParam(name = "id") String id) {
+        taskService.removeById(id);
+        return Result.OK("删除成功!");
+    }
+
+    /**
+     * 批量删除
+     *
+     * @param ids 主键
+     * @return 结果
+     */
+    @AutoLog(value = "稽核任务-批量删除")
+    @ApiOperation(value = "稽核任务-批量删除", notes = "稽核任务-批量删除")
+    @DeleteMapping(value = "/deleteBatch")
+    public Result<String> deleteBatch(@RequestParam(name = "ids") String ids) {
+        this.taskService.removeByIds(Arrays.asList(ids.split(",")));
+        return Result.OK("批量删除成功!");
+    }
+
+    /**
+     * 通过id查询
+     *
+     * @param id 主键
+     * @return 数据
+     */
+    //@AutoLog(value = "稽核任务-通过id查询")
+    @ApiOperation(value = "稽核任务-通过id查询", notes = "稽核任务-通过id查询")
+    @GetMapping(value = "/queryById")
+    public Result<SmsCheckTask> queryById(@RequestParam(name = "id") String id) {
+        SmsCheckTask smsCheckTask = taskService.getById(id);
+        if (smsCheckTask == null) {
+            return Result.error("未找到对应数据");
+        }
+        return Result.OK(smsCheckTask);
+    }
+
+    /**
+     * 导出excel
+     *
+     * @param request      请求
+     * @param smsCheckTask 对象
+     * @return excel文件
+     */
     @RequestMapping(value = "/exportXls")
     public ModelAndView exportXls(HttpServletRequest request, SmsCheckTask smsCheckTask) {
         return super.exportXls(request, smsCheckTask, SmsCheckTask.class, "稽核任务");
     }
 
-	 /**
-	  * 通过excel导入数据
-	  *
-	  * @param request 请求
-	  * @param response 响应
-	  * @return 导入结果
-	  */
+    /**
+     * 通过excel导入数据
+     *
+     * @param request  请求
+     * @param response 响应
+     * @return 导入结果
+     */
     @PostMapping(value = "/importExcel")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, SmsCheckTask.class);
     }
 
-	 /**
-	  * 通过excel导入数据
-	  *
-	  * @param file 请求
-	  * @return 导入结果
-	  */
-	 @PostMapping(value = "/importCustomerExcel")
-	 public Result<?> importCustomerExcel(@RequestPart("file") MultipartFile file) {
-		 String filename = file.getOriginalFilename();
-		 if (!filename.endsWith(".xlsx") && !filename.endsWith(".xls")) {
-			 return Result.error("文件类型不正确!请导入文件类型->.xlsx或.xls");
-		 }
-		 Dict dict = new Dict();
-
-		 ImportParams params = new ImportParams();
-		 params.setTitleRows(1);
-		 try {
-			 // 工具类缺陷,默认导入全部sheet页,会导致
-			 List<SmsCheckCustomerInfoVo> list = ExcelImportUtil.importExcel(
-					 file.getInputStream(), SmsCheckCustomerInfoVo.class, params);
-			 List<SmsCheckCustomerInfoVo> voList = new ArrayList<>();
-			 int errorCount = 0;
-
-			 // 获取所有字典值
-			 List<DictModel> dictModels = sysBaseApi.getDictItems("user_type");
-			 Dict dictItemMap = Dict.create();
-			 dictModels.forEach(model -> {
-				 dictItemMap.put(model.getValue(), model.getText());
-			 });
-
-			 Tuple dictTuple = new Tuple(dictItemMap);
-
-			 for (SmsCheckCustomerInfoVo vo : list) {
-				 SmsCheckCustomerInfoVo infoVo = checkCustomerInfo(vo, dictTuple);
-				 if (ObjectUtil.isNotNull(infoVo)) {
-					 if (StrUtil.isNotBlank(infoVo.getErrorMsg())) {
-						 errorCount++;
-					 }
-					 voList.add(infoVo);
-				 }
-			 }
-			 dict.put("errorCount", errorCount);
-			 dict.put("data", voList);
-		 } catch (Exception e) {
-			 log.error("客户信息导入失败", e);
-		 }
-
-		 return Result.ok(dict);
-	 }
-
-	 /**
-	  * 通过excel导入数据
-	  *
-	  * @param taskId 任务id
-	  * @param list 数据
-	  * @return 导入结果
-	  */
-	 @PostMapping(value = "/{taskId}/importCustomerData")
-	 public Result<?> importCustomerData(@PathVariable String taskId, @RequestBody List<SmsCheckCustomerInfoVo> list) {
-		 LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
-		 List<SmsCheckCustomerInfo> dataList = new ArrayList<>();
-		 int customerCount = 0;
-		 for (int i = 0; i < list.size(); i++) {
-			 SmsCheckCustomerInfoVo infoVo = list.get(i);
-			 infoVo.setTaskId(taskId);
-			 SmsCheckCustomerInfo info = new SmsCheckCustomerInfo();
-			 BeanUtil.copyProperties(infoVo, info, true);
-			 SysUser user = sysUserService.getOne(new LambdaQueryWrapper<SysUser>()
-					 .eq(SysUser::getWorkNo, infoVo.getStaffNo()));
-			 //放入用户信息
-			 if ( user == null){
-				 continue;
-			 }
-			 info.setStaffUsername(user.getUsername());
-			 info.setDelFlag(CommonConstant.DEL_FLAG_0);
-			 // 0:未处理;1:未完善;2:待稽核;3:待整改;4:已整改;5:稽核通过;
-			 info.setCheckState(0);
-			 dataList.add(info);
-			 info.setTaskId(taskId);
-			 long count = customerInfoService.count(
-					 new LambdaQueryWrapper<SmsCheckCustomerInfo>()
-							 .eq(SmsCheckCustomerInfo::getTaskId, info.getTaskId())
-							 .eq(SmsCheckCustomerInfo::getUserNo, info.getUserNo())
-							 .eq(SmsCheckCustomerInfo::getDelFlag, CommonConstant.DEL_FLAG_0));
-			 if (count > 0) {
-				 // TODO 重复处理,放校验里面?
+    /**
+     * 通过excel导入数据
+     *
+     * @param file 请求
+     * @return 导入结果
+     */
+    @PostMapping(value = "/importCustomerExcel")
+    public Result<?> importCustomerExcel(@RequestPart("file") MultipartFile file) {
+        String filename = file.getOriginalFilename();
+        if (!filename.endsWith(".xlsx") && !filename.endsWith(".xls")) {
+            return Result.error("文件类型不正确!请导入文件类型->.xlsx或.xls");
+        }
+        Dict dict = new Dict();
+
+        ImportParams params = new ImportParams();
+        params.setTitleRows(1);
+        try {
+            // 工具类缺陷,默认导入全部sheet页,会导致
+            List<SmsCheckCustomerInfoVo> list = ExcelImportUtil.importExcel(
+                    file.getInputStream(), SmsCheckCustomerInfoVo.class, params);
+            List<SmsCheckCustomerInfoVo> voList = new ArrayList<>();
+            int errorCount = 0;
+
+            // 获取所有字典值
+            List<DictModel> dictModels = sysBaseApi.getDictItems("user_type");
+            Dict dictItemMap = Dict.create();
+            dictModels.forEach(model -> {
+                dictItemMap.put(model.getValue(), model.getText());
+            });
+
+            Tuple dictTuple = new Tuple(dictItemMap);
+
+            for (SmsCheckCustomerInfoVo vo : list) {
+                SmsCheckCustomerInfoVo infoVo = checkCustomerInfo(vo, dictTuple);
+                if (ObjectUtil.isNotNull(infoVo)) {
+                    if (StrUtil.isNotBlank(infoVo.getErrorMsg())) {
+                        errorCount++;
+                    }
+                    voList.add(infoVo);
+                }
+            }
+            dict.put("errorCount", errorCount);
+            dict.put("data", voList);
+        } catch (Exception e) {
+            log.error("客户信息导入失败", e);
+        }
+
+        return Result.ok(dict);
+    }
+
+    /**
+     * 通过excel导入数据
+     *
+     * @param taskId 任务id
+     * @param list   数据
+     * @return 导入结果
+     */
+    @PostMapping(value = "/{taskId}/importCustomerData")
+    public Result<?> importCustomerData(@PathVariable String taskId, @RequestBody List<SmsCheckCustomerInfoVo> list) {
+        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        List<SmsCheckCustomerInfo> dataList = new ArrayList<>();
+        //导入失败数据
+        List<SmsCheckCustomerInfoVo> listErro = new ArrayList<>();
+        int customerCount = 0;
+        for (int i = 0; i < list.size(); i++) {
+            SmsCheckCustomerInfoVo infoVo = list.get(i);
+            infoVo.setTaskId(taskId);
+            SmsCheckCustomerInfo info = new SmsCheckCustomerInfo();
+            BeanUtil.copyProperties(infoVo, info, true);
+            SysUser user = sysUserService.getOne(new LambdaQueryWrapper<SysUser>()
+                    .eq(SysUser::getWorkNo, infoVo.getStaffNo()));
+            //放入用户信息
+            if (user == null) {
+                infoVo.setResult("0");
+                infoVo.setErrorMsg("系统无相关用户");
+                listErro.add(infoVo);
+                continue;
+            }
+            info.setStaffUsername(user.getUsername());
+            info.setDelFlag(CommonConstant.DEL_FLAG_0);
+            // 0:未处理;1:未完善;2:待稽核;3:待整改;4:已整改;5:稽核通过;
+            info.setCheckState(0);
+            dataList.add(info);
+            info.setTaskId(taskId);
+            long count = customerInfoService.count(
+                    new LambdaQueryWrapper<SmsCheckCustomerInfo>()
+                            .eq(SmsCheckCustomerInfo::getTaskId, info.getTaskId())
+                            .eq(SmsCheckCustomerInfo::getUserNo, info.getUserNo())
+                            .eq(SmsCheckCustomerInfo::getDelFlag, CommonConstant.DEL_FLAG_0));
+            if (count > 0) {
+                infoVo.setResult("0");
+                infoVo.setErrorMsg("公司信息已存在");
+                listErro.add(infoVo);
+                // TODO 重复处理,放校验里面?
 //				 return Result.error("客户[" + info.getCustomerNo() + "]已存在!");
-			 } else {
-				 customerCount++;
-				 customerInfoService.save(info);
-			 }
-
-			 // 添加公司信息 start
-			 long companyCount = companyService.count(new LambdaQueryWrapper<SmsCheckCompany>()
-					 .eq(SmsCheckCompany::getCustomerNo, infoVo.getCustomerNo())
-					 .eq(SmsCheckCompany::getCustomerName, infoVo.getCustomerName()));
-			 if (companyCount == 0) {
-				 SmsCheckCompany company = new SmsCheckCompany();
-				 company.setCustomerNo(infoVo.getCustomerNo());
-				 company.setCustomerName(infoVo.getCustomerName());
-				 company.setManager(infoVo.getStaffName());
-				 company.setSysOrgCode(sysUser.getOrgCode());
-				 company.setCreateBy(sysUser.getUsername());
-				 company.setCreateTime(new Date());
-				 companyService.save(company);
-			 }
-			 // 添加公司信息 end
-
-			 // 添加服务号码 start
-			 long smsNumberCount = smsNumberService.count(new LambdaQueryWrapper<SmsCheckSmsNumber>()
-					 .eq(SmsCheckSmsNumber::getCustomerNo, infoVo.getCustomerNo())
-					 .eq(SmsCheckSmsNumber::getSmsNumber, infoVo.getSmsNumber()));
-
-			 if (smsNumberCount == 0) {
-				 SmsCheckSmsNumber smsNumber = new SmsCheckSmsNumber();
-				 smsNumber.setCustomerNo(infoVo.getCustomerNo());
-				 smsNumber.setUserNo(infoVo.getUserNo());
-				 smsNumber.setNetworkAccessTime(infoVo.getNetworkAccessTime());
-				 smsNumber.setSmsNumber(infoVo.getSmsNumber());
-				 smsNumber.setUserState(infoVo.getUserState());
-				 smsNumber.setSysOrgCode(sysUser.getOrgCode());
-				 smsNumber.setCreateBy(sysUser.getUsername());
-				 smsNumber.setCreateTime(new Date());
-				 smsNumberService.save(smsNumber);
-			 }
-			 // 添加服务号码 end
-
-		 }
-		 SmsCheckTask task = taskService.getById(taskId);
-		 // 更新导入
-		 if (customerCount > 0) {
-			 task.setCustomerCount(task.getCustomerCount() + customerCount);
-			 taskService.updateById(task);
-		 }
-		 return Result.OK("导入成功!导入条数" + customerCount);
-	 }
-
-	 /**
-	  * 校验客户信息
-	  *
-	  * @param vo 客户信息
-	  * @param dictTuple 字典转换
-	  * @return 客户信息
-	  */
-	 private SmsCheckCustomerInfoVo checkCustomerInfo(SmsCheckCustomerInfoVo vo, Tuple dictTuple) {
-		 // TODO 客户重复性校验、数据合法性校验等
-		 // 过滤客户编号和员工编号为空的信息
-		 if (StrUtil.isBlank(vo.getCustomerNo()) && StrUtil.isBlank(vo.getUserNo())) {
-			 return null;
-		 }
-		 // 格式化入网时间
-		 String accessTime = vo.getNetworkAccessTime();
-		 DateTime accessTimeDate = DateUtil.parse(accessTime, "yyyyMMdd");
-		 vo.setNetworkAccessTime(accessTimeDate.toDateStr());
-
-		 // 拆分员工工号和员工姓名
-		 String staffInfo = vo.getStaffInfo();
-		 List<String> staffInfos = removeBrackets(staffInfo);
-		 if (staffInfos.size() == 3) {
-			 vo.setStaffName(staffInfos.get(0));
-			 vo.setStaffNo(staffInfos.get(2));
-		 }
-
-		 // 拆分员工二级部门
-		 String staffDeptLevel2 = vo.getStaffDeptLevel2();
-		 List<String> staffDeptLevel2s = removeBrackets(staffDeptLevel2);
-		 if (staffDeptLevel2s.size() == 2) {
-			 vo.setStaffDeptLevel2Name(staffDeptLevel2s.get(0));
-			 vo.setStaffDeptLevel2No(staffDeptLevel2s.get(1));
-		 }
-
-		 // 拆分员工三级部门
-		 String staffDeptLevel3 = vo.getStaffDeptLevel3();
-		 List<String> staffDeptLevel3s = removeBrackets(staffDeptLevel3);
-		 if (staffDeptLevel3s.size() == 2) {
-			 vo.setStaffDeptLevel3Name(staffDeptLevel3s.get(0));
-			 vo.setStaffDeptLevel3No(staffDeptLevel3s.get(1));
-		 }
-
-		 return vo;
-	 }
-
-	 /**
-	  * 移除括号并获取分段数据
-	  *
-	  * @param data 数据
-	  * @return 集合
-	  */
-	 private List<String> removeBrackets(String data) {
-		 List<String> dataList = new ArrayList<>();
-		 if (data.contains("(")) {
-			 data = StrUtil.removeAll(data,")");
-			 dataList = StrUtil.split(data, "(");
-		 }
-		 return dataList;
-	 }
-
-
-	 @GetMapping(value = "/year/list")
-	 public Result<List[]> yearList() {
-		 List<DataYearMonth> taskYearList = dataYearMonth.getTaskYearList();
-		 List<DataYearMonth> taskMonthList = dataYearMonth.getTaskMonthList();
-		 List[] Dates = new List[2];
-		 Dates[0] = taskYearList;
-		 Dates[1] = taskMonthList;
-		 return Result.OK(Dates);
-	 }
-
-
- }
+            } else {
+                customerCount++;
+                customerInfoService.save(info);
+                infoVo.setResult("1");
+                listErro.add(infoVo);
+            }
+
+            // 添加公司信息 start
+            long companyCount = companyService.count(new LambdaQueryWrapper<SmsCheckCompany>()
+                    .eq(SmsCheckCompany::getCustomerNo, infoVo.getCustomerNo())
+                    .eq(SmsCheckCompany::getCustomerName, infoVo.getCustomerName()));
+            if (companyCount == 0) {
+                SmsCheckCompany company = new SmsCheckCompany();
+                company.setCustomerNo(infoVo.getCustomerNo());
+                company.setCustomerName(infoVo.getCustomerName());
+                company.setManager(infoVo.getStaffName());
+                company.setSysOrgCode(sysUser.getOrgCode());
+                company.setCreateBy(sysUser.getUsername());
+                company.setCreateTime(new Date());
+                companyService.save(company);
+            }
+            // 添加公司信息 end
+
+            // 添加服务号码 start
+            long smsNumberCount = smsNumberService.count(new LambdaQueryWrapper<SmsCheckSmsNumber>()
+                    .eq(SmsCheckSmsNumber::getCustomerNo, infoVo.getCustomerNo())
+                    .eq(SmsCheckSmsNumber::getSmsNumber, infoVo.getSmsNumber()));
+
+            if (smsNumberCount == 0) {
+                SmsCheckSmsNumber smsNumber = new SmsCheckSmsNumber();
+                smsNumber.setCustomerNo(infoVo.getCustomerNo());
+                smsNumber.setUserNo(infoVo.getUserNo());
+                smsNumber.setNetworkAccessTime(infoVo.getNetworkAccessTime());
+                smsNumber.setSmsNumber(infoVo.getSmsNumber());
+                smsNumber.setUserState(infoVo.getUserState());
+                smsNumber.setSysOrgCode(sysUser.getOrgCode());
+                smsNumber.setCreateBy(sysUser.getUsername());
+                smsNumber.setCreateTime(new Date());
+                smsNumberService.save(smsNumber);
+            }
+            // 添加服务号码 end
+
+        }
+        SmsCheckTask task = taskService.getById(taskId);
+        // 更新导入
+        if (customerCount > 0) {
+            task.setCustomerCount(task.getCustomerCount() + customerCount);
+            taskService.updateById(task);
+        }
+        return Result.OK("导入成功!导入条数" + customerCount, listErro);
+    }
+
+    /**
+     * 校验客户信息
+     *
+     * @param vo        客户信息
+     * @param dictTuple 字典转换
+     * @return 客户信息
+     */
+    private SmsCheckCustomerInfoVo checkCustomerInfo(SmsCheckCustomerInfoVo vo, Tuple dictTuple) {
+        // TODO 客户重复性校验、数据合法性校验等
+        // 过滤客户编号和员工编号为空的信息
+        if (StrUtil.isBlank(vo.getCustomerNo()) && StrUtil.isBlank(vo.getUserNo())) {
+            return null;
+        }
+        // 格式化入网时间
+        String accessTime = vo.getNetworkAccessTime();
+        DateTime accessTimeDate = DateUtil.parse(accessTime, "yyyyMMdd");
+        vo.setNetworkAccessTime(accessTimeDate.toDateStr());
+
+        // 拆分员工工号和员工姓名
+        String staffInfo = vo.getStaffInfo();
+        List<String> staffInfos = removeBrackets(staffInfo);
+        if (staffInfos.size() == 3) {
+            vo.setStaffName(staffInfos.get(0));
+            vo.setStaffNo(staffInfos.get(2));
+        }
+
+        // 拆分员工二级部门
+        String staffDeptLevel2 = vo.getStaffDeptLevel2();
+        List<String> staffDeptLevel2s = removeBrackets(staffDeptLevel2);
+        if (staffDeptLevel2s.size() == 2) {
+            vo.setStaffDeptLevel2Name(staffDeptLevel2s.get(0));
+            vo.setStaffDeptLevel2No(staffDeptLevel2s.get(1));
+        }
+
+        // 拆分员工三级部门
+        String staffDeptLevel3 = vo.getStaffDeptLevel3();
+        List<String> staffDeptLevel3s = removeBrackets(staffDeptLevel3);
+        if (staffDeptLevel3s.size() == 2) {
+            vo.setStaffDeptLevel3Name(staffDeptLevel3s.get(0));
+            vo.setStaffDeptLevel3No(staffDeptLevel3s.get(1));
+        }
+
+        return vo;
+    }
+
+    /**
+     * 移除括号并获取分段数据
+     *
+     * @param data 数据
+     * @return 集合
+     */
+    private List<String> removeBrackets(String data) {
+        List<String> dataList = new ArrayList<>();
+        if (data.contains("(")) {
+            data = StrUtil.removeAll(data, ")");
+            dataList = StrUtil.split(data, "(");
+        }
+        return dataList;
+    }
+
+
+    @GetMapping(value = "/year/list")
+    public Result<List[]> yearList() {
+        List<DataYearMonth> taskYearList = dataYearMonth.getTaskYearList();
+        List<DataYearMonth> taskMonthList = dataYearMonth.getTaskMonthList();
+        List[] Dates = new List[2];
+        Dates[0] = taskYearList;
+        Dates[1] = taskMonthList;
+        return Result.OK(Dates);
+    }
+
+
+}

+ 143 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SmsLotCustomerController.java

@@ -0,0 +1,143 @@
+package org.jeecg.modules.smscheck.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.modules.smscheck.configs.CheckStateCode;
+import org.jeecg.modules.smscheck.entity.SmcLotCheckLog;
+import org.jeecg.modules.smscheck.entity.SmsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.entity.SmsLotCustomerData;
+import org.jeecg.modules.smscheck.service.ISmsCheckCustomerInfoService;
+import org.jeecg.modules.smscheck.service.SmcLotCheckLogService;
+import org.jeecg.modules.smscheck.service.SmsLotCustomerService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+@Api(tags = "物联网")
+@RestController
+@RequestMapping("/smsLot/customerData")
+@Slf4j
+public class SmsLotCustomerController extends JeecgController<SmsLotCustomerData, SmsLotCustomerService> {
+    /**
+     * 物联网稽核业务
+     */
+    @Autowired
+    private SmsLotCustomerService smsLotCustomerService;
+    @Autowired
+    private SmcLotCheckLogService smcLotCheckLogService;
+    /**
+     * 客户信息业务
+     */
+    @Autowired
+    private ISmsCheckCustomerInfoService infoService;
+
+    //日志
+    @AutoLog(value = "物联网客户资料-插入修改")
+    //API文档
+    @ApiOperation(value = "物联网客户资料-插入修改", notes = "物联网客户资料-插入修改")
+    @PostMapping(value = "/edit/info")
+    public Result<String> editLot(@RequestBody SmsLotCustomerData smsLotCustomerData) {
+        String infoId = smsLotCustomerData.getInfoId();
+        if (StringUtils.isEmpty(infoId)) {
+            return Result.error("客户编码不能为空");
+        }
+        if (null == infoService.getById(infoId)) {
+            return Result.error("客户信息不存在");
+        }
+        LambdaQueryWrapper<SmsLotCustomerData> queryWrapperData = new LambdaQueryWrapper<>();
+        queryWrapperData.eq(SmsLotCustomerData::getInfoId, smsLotCustomerData.getInfoId());
+        List<SmsLotCustomerData> list = smsLotCustomerService.list(queryWrapperData);
+        if (list.size() == 0) {
+            smsLotCustomerService.save(smsLotCustomerData);
+        } else {
+            //获取ID
+            String id = list.get(0).getId();
+            smsLotCustomerData.setId(id);
+            smsLotCustomerService.updateById(smsLotCustomerData);
+        }
+        SmsCheckCustomerInfo customerInfo = infoService.getById(infoId);
+        customerInfo.setCheckState(CheckStateCode.CHECK_STSTE_2);
+        infoService.updateById(customerInfo);
+        return Result.OK("编辑成功!");
+    }
+
+
+    @AutoLog(value = "物联网客户资料-详情")
+    @ApiOperation(value = "物联网客户资料-详情", notes = "物联网客户资料-详情")
+    @PostMapping(value = "/query/infoId")
+    public Result<SmsLotCustomerData> queryByInfoId(@RequestBody SmsLotCustomerData smsLotCustomerData) {
+        //客户ID
+        String infoId = smsLotCustomerData.getInfoId();
+        if (StringUtils.isEmpty(infoId)) {
+            return Result.error("客户编码不能为空");
+        }
+        LambdaQueryWrapper<SmsLotCustomerData> queryWrapperData = new LambdaQueryWrapper<>();
+        queryWrapperData.eq(SmsLotCustomerData::getInfoId, smsLotCustomerData.getInfoId());
+        SmsLotCustomerData lotCustomerData = smsLotCustomerService.getOne(queryWrapperData);
+        return Result.OK("查询完成", lotCustomerData);
+    }
+
+    @AutoLog(value = "物联网客户资料-插入修改")
+    @ApiOperation(value = "物联网客户资料-插入修改", notes = "物联网客户资料-插入修改")
+    @PostMapping(value = "/check/info")
+    public Result<String> editLotLog(@RequestBody SmcLotCheckLog smcLotCheckLog) {
+        //客户信息ID
+        String infoId = smcLotCheckLog.getInfoId();
+        //客户资料ID
+        String dataId = smcLotCheckLog.getDataId();
+        if (StringUtils.isEmpty(infoId) || StringUtils.isEmpty(dataId)) {
+            return Result.error("客户编码不能为空");
+        }
+        SmsCheckCustomerInfo info = infoService.getById(infoId);
+        if (null == infoService.getById(infoId)) {
+            return Result.error("客户信息不存在");
+        }
+        //任务ID
+        String taskId = info.getTaskId();
+        smcLotCheckLog.setTaskId(taskId);
+        LambdaQueryWrapper<SmcLotCheckLog> queryWrapperData = new LambdaQueryWrapper<>();
+        queryWrapperData.eq(SmcLotCheckLog::getDataId, smcLotCheckLog.getDataId());
+        List<SmcLotCheckLog> lotList = smcLotCheckLogService.list(queryWrapperData);
+        if (lotList.size() == 0) {
+            smcLotCheckLogService.save(smcLotCheckLog);
+        } else {
+            String id = lotList.get(0).getId();
+            smcLotCheckLog.setId(id);
+            smcLotCheckLogService.updateById(smcLotCheckLog);
+        }
+        //判断客户信息稽核结果
+        Boolean status = smcLotCheckLogService.checkStatus(smcLotCheckLog);
+        int lotStatus = status ? 5 : 4;
+        //修改客户信息稽核结果
+        info.setCheckState(lotStatus);
+        infoService.updateById(info);
+        return Result.OK("稽核成功!");
+    }
+
+    @AutoLog(value = "物联网客户资料-稽核详情")
+    @ApiOperation(value = "物联网客户资料-稽核详情", notes = "物联网客户资料-稽核详情")
+    @PostMapping(value = "/query/check/dataId")
+    public Result<SmcLotCheckLog> queryByCheckDataId(@RequestBody SmcLotCheckLog smcLotCheckLog) {
+        //客户ID
+        String infoId = smcLotCheckLog.getInfoId();
+        if (StringUtils.isEmpty(infoId)) {
+            return Result.error("客户编码不能为空");
+        }
+        LambdaQueryWrapper<SmcLotCheckLog> queryWrapperData = new LambdaQueryWrapper<>();
+        queryWrapperData.eq(SmcLotCheckLog::getInfoId, smcLotCheckLog.getInfoId());
+        SmcLotCheckLog lotCheckData = smcLotCheckLogService.getOne(queryWrapperData);
+        return Result.OK("查询完成", lotCheckData);
+    }
+
+
+}

+ 42 - 23
tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SpecialExaminationContrller.java

@@ -18,9 +18,9 @@ import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.common.util.MinioUtil;
 import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.config.shiro.ShiroRealm;
-import org.jeecg.modules.smscheck.entity.SmsCheckCustomerData;
-import org.jeecg.modules.smscheck.entity.SmsCheckWorkLog;
-import org.jeecg.modules.smscheck.entity.SpecialExamination;
+import org.jeecg.modules.smscheck.configs.CheckStateCode;
+import org.jeecg.modules.smscheck.entity.*;
+import org.jeecg.modules.smscheck.service.ISmsCheckCustomerInfoService;
 import org.jeecg.modules.smscheck.service.ISmsCheckTaskService;
 import org.jeecg.modules.smscheck.service.SpecialExaminationService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -45,34 +45,35 @@ public class SpecialExaminationContrller {
     private ShiroRealm shiroRealm;
 
 
+    /**
+     * 客户信息业务
+     */
+    @Autowired
+    private ISmsCheckCustomerInfoService infoService;
+
+
     @ApiOperation(value = "客户资料-信息查询查询", notes = "客户资料-个人列表查询")
     @PostMapping(value = "/find/user/id")
     public  Result<?> findUserId(@RequestBody SpecialExamination specialExamination) {
-        String id = specialExamination.getId();
-        if(StrUtil.isBlank(id)){
+        String infoId = specialExamination.getInfoId();
+        if(StrUtil.isBlank(infoId)){
             return Result.error("查询失败");
         }
         LambdaQueryWrapper<SpecialExamination> queryWrapperData = new LambdaQueryWrapper<>();
-        SpecialExamination byId = specialExaminationService.getById(id);
-        String staffNo = byId.getStaffNo();
-        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
-        String workNo = sysUser.getWorkNo();
-        if (StrUtil.isNotBlank(staffNo) && workNo.equals(staffNo)){
-            SpecialExamination byId1 = specialExaminationService.getById(byId.getId());
-            return Result.ok(byId1);
-        }else {
-            return Result.error("查询失败");
-        }
+        queryWrapperData.eq(SpecialExamination::getInfoId, specialExamination.getInfoId());
+        SpecialExamination byId = specialExaminationService.getOne(queryWrapperData);
+        return Result.ok(byId);
     }
 
     @PostMapping(value = "/find/id")
     public  Result<?> findId(@RequestBody SpecialExamination specialExamination) {
-        String id = specialExamination.getId();
-        if(StrUtil.isBlank(id)){
+        String infoId = specialExamination.getInfoId();
+        if(StrUtil.isBlank(infoId)){
             return Result.error("查询失败");
         }
         LambdaQueryWrapper<SpecialExamination> queryWrapperData = new LambdaQueryWrapper<>();
-        SpecialExamination byId = specialExaminationService.getById(id);
+        queryWrapperData.eq(SpecialExamination::getInfoId, specialExamination.getInfoId());
+        SpecialExamination byId = specialExaminationService.getOne(queryWrapperData);
         return Result.ok(byId);
     }
 
@@ -149,6 +150,10 @@ public class SpecialExaminationContrller {
     @ApiOperation(value = "特审复开审批号-添加", notes = "特审复开审批号-添加")
     @PostMapping(value = "/upload/files")
     public Result<?> uploadFiles(HttpServletRequest request) {
+        String infoId = request.getParameter("infoId");
+        if (null == infoService.getById(infoId)) {
+            return Result.error("客户信息不存在");
+        }
 
         Result<?> result = new Result<>();
         String bizPath = request.getParameter("biz");
@@ -283,6 +288,7 @@ public class SpecialExaminationContrller {
         }
 
         SpecialExamination specialExamination = new SpecialExamination();
+        specialExamination.setInfoId(infoId);
         specialExamination.setShutdownLabel(shutdownLabelInt);
         specialExamination.setMaterialLabel(materialLabelInt);
         specialExamination.setUserLable(userLableInt);
@@ -307,10 +313,12 @@ public class SpecialExaminationContrller {
 
         specialExamination.setStatus(0);
         boolean save = specialExaminationService.save(specialExamination);
-
         if (!save) {
             Result.error("申请失败");
         }
+        SmsCheckCustomerInfo customerInfo = infoService.getById(infoId);
+        customerInfo.setCheckState(CheckStateCode.CHECK_STSTE_2);
+        infoService.updateById(customerInfo);
         return Result.OK("已成功提交申请");
     }
 
@@ -337,13 +345,24 @@ public class SpecialExaminationContrller {
 
     @PostMapping(value = "/status/adopt")
     public  Result<?> adopt(@RequestBody SpecialExamination specialExamination) {
-        String id = specialExamination.getId();
-        if(StrUtil.isBlank(id)){
+        String infoId = specialExamination.getInfoId();
+        Integer status = specialExamination.getStatus();
+        if(StrUtil.isBlank(infoId)){
             return Result.error("修改失败");
         }
-        specialExamination.setStatus(1);
+        SmsCheckCustomerInfo customerInfo = infoService.getById(infoId);
+        if (status == 5){
+            customerInfo.setCheckState(CheckStateCode.CHECK_STSTE_5);
+        }else {
+            customerInfo.setCheckState(CheckStateCode.CHECK_STSTE_4);
+        }
+        infoService.updateById(customerInfo);
+        LambdaQueryWrapper<SpecialExamination> queryWrapperData = new LambdaQueryWrapper<>();
+        queryWrapperData.eq(SpecialExamination::getInfoId, specialExamination.getInfoId());
+        SpecialExamination specialData = specialExaminationService.getOne(queryWrapperData);
+        specialExamination.setId(specialData.getId());
         specialExaminationService.updateById(specialExamination);
-        return Result.ok("审核通过");
+        return Result.ok("稽核完成");
     }
 
     @PostMapping(value = "/status/refuse")

+ 97 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/AsCheckCustomerInfo.java

@@ -0,0 +1,97 @@
+package org.jeecg.modules.smscheck.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+/**
+ * 入网信息表
+ */
+@Data
+@TableName("as_check_customer_info")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="as_check_customer_info", description="关停工单表")
+public class AsCheckCustomerInfo {
+
+    /** 主键 */
+    @TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+    /** 任务ID */
+    private String taskId;
+    /** 日期 */
+    @Excel(name = "日期", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "日期")
+    private Date date;
+    /** 客户ID */
+    private String customerId;
+    /** 客户名称 */
+    private String customerName;
+    /** 用户ID */
+    private String userId;
+    /** 号码 */
+    private String number;
+    /** 入网时间 */
+    private String networkAccessTime;
+    /** 发展部门 */
+    private String staffDeptLevelName;
+    /** 发展人 */
+    private String staffInfo;
+    /** 员工编码 */
+    private String staffNo;
+    /** 号码来源 */
+    private String numberSource;
+    /** 是否存在多次关停复开记录 */
+    private String reopeningLog;
+    /** 最后一次关停原因 */
+    private String shutdownReasonLast;
+    /** 最后一次关停时间 */
+    @Excel(name = "最后一次关停时间", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "最后一次关停时间")
+    private Date shutdownReasonDate;
+    /** 备注 */
+    private String notes;
+    /** 管控动作 */
+    private int control;
+    /** 不进行处理原因 */
+    private String controlNote;
+
+    /** 删除标识 */
+    @Excel(name = "删除标识", width = 15)
+    @ApiModelProperty(value = "删除标识")
+    private Integer delFlag;
+    /** 创建人 */
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+    /** 创建日期 */
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+    /** 更新人 */
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+    /** 更新日期 */
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+    /** 所属部门 */
+    @ApiModelProperty(value = "所属部门")
+    private String sysOrgCode;;
+}

+ 111 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/BusinessReminderCard.java

@@ -0,0 +1,111 @@
+package org.jeecg.modules.smscheck.entity;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.models.auth.In;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.util.Date;
+
+/**
+ * 入网信息表
+ */
+@Data
+@TableName("as_business_reminder_card")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="as_business_reminder_card", description="入网信息表")
+public class BusinessReminderCard {
+
+    /** 主键 */
+    @TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+    /** 联电归属地 */
+    private String address;
+    /** 拨测联系电话 */
+    private String phone;
+    /** 拨测结果 */
+    private String calltestResults;
+    /** 证件地址 */
+    private String idCardAddress;
+    /** 现住地址 */
+    private String currentAddress;
+    /** 现用号码运营商 */
+    private String operator;
+    /** 现用号码运营商类型 */
+    private String operatorType;
+    /** 现用号码运营商类型备注 */
+    private String operatorTypeNote;
+    /** 现用号码使用年限 */
+    private Integer useLife;
+    /** 现用号码使用用途 */
+    private String phonePurpose;
+    /** 客户名下无电信号码 */
+    private Integer isDxNumber;
+    /** 客户名下无电信号码备注 */
+    private String isDxNumberNote;
+    /** 申请号码办理征信类、融合宽带业务 */
+    private Integer isBroadband;
+    /** 申请号码办理征信类、融合宽带业务备注 */
+    private String isBroadbandNote;
+    /** 申请号码使用用途异常 */
+    private Integer isUseTo;
+    /** 申请号码使用用途异常备注 */
+    private String isUseToNote;
+    /** 客户名下号码存在异常高频率充值、退费 */
+    private Integer isRefund;
+    /** 客户名下号码存在异常高频率充值、退费备注 */
+    private String isRefundNote;
+    /** 客户名下已有号码(含已注销号码)存在各类关停 */
+    private Integer isShutDown;
+    /** 客户名下已有号码(含已注销号码)存在各类关停备注 */
+    private String isShutDownNote;
+    /** 客户名下在用号码无使用记录,仍要求新办号码 */
+    private Integer isNewly;
+    /** 客户名下在用号码无使用记录,仍要求新办号码备注 */
+    private String isNewlyNote;
+    /** 在多个渠道多频次入网的异常情况 */
+    private Integer isChannel;
+    /** 在多个渠道多频次入网的异常情况备注 */
+    private String isChannelNote;
+    /** 黑名单到期客户新入网的高危疑似涉诈号码 */
+    private Integer isInvolvingFraud;
+    /** 黑名单到期客户新入网的高危疑似涉诈号码备注 */
+    private String isInvolvingFraudNote;
+    /** 是否将高危号码上报蓝、紫名单或不可复开关停 */
+    private Integer numberResults;
+
+    /** 删除标识 */
+    @Excel(name = "删除标识", width = 15)
+    @ApiModelProperty(value = "删除标识")
+    private Integer delFlag;
+
+
+    /** 创建人 */
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+    /** 创建日期 */
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+    /** 更新人 */
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+    /** 更新日期 */
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+    /** 所属部门 */
+    @ApiModelProperty(value = "所属部门")
+    private String sysOrgCode;
+
+}

+ 98 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SmcLotCheckLog.java

@@ -0,0 +1,98 @@
+package org.jeecg.modules.smscheck.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.models.auth.In;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+/**
+ * 物联网稽核数据文件
+ */
+@Data
+@TableName("smc_lot_check_log")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="smc_lot_check_log", description="物联网稽核结果记录")
+public class SmcLotCheckLog {
+    /** 主键 */
+    @TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+    /**卡类型 0测试卡;1正式卡*/
+    private Integer blockType;
+    /**是否突破价格管控*/
+    private Integer control;
+    /**任务ID*/
+    private String taskId;
+    /**客户信息ID*/
+    private String infoId;
+    /**客户编号*/
+    private String customerNo;
+    /**客户名称*/
+    private String customerName;
+    /**客户资料ID*/
+    private String dataId;
+    /**员工姓名*/
+    private String staffName;
+    /**员工变红*/
+    private String staffNo;
+    /**合同稽核状态*/
+    private Integer contractState;
+    /**合同稽核结果*/
+    private String contractNote;
+    /**测试卡申请单稽核状态*/
+    private Integer testCardApplicationState;
+    /**测试卡申请单稽核结果*/
+    private String testCardApplicationNote;
+    /**责任人经办人授权书稽核状态*/
+    private Integer empowerState;
+    /**责任人经办人授权书稽核结果*/
+    private String empowerNote;
+    /**责任人经办人身份证稽核状态*/
+    private Integer idCardState;
+    /**责任人经办人身份证稽核结果*/
+    private String idCardNote;
+    /**客户证件稽核状态*/
+    private Integer customerIdState;
+    /**客户证件稽核结果*/
+    private String customerIdNote;
+    /**风险评估表稽核状态*/
+    private Integer riskState;
+    /**风险评估表稽核结果*/
+    private String riskNote;
+    /**省/集团价格审批表稽核状态*/
+    private Integer priceApprovalState;
+    /**省/集团价格审批表稽核结果*/
+    private String priceApprovalNote;
+
+    /** 创建人 */
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+    /** 创建日期 */
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+    /** 更新人 */
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+    /** 更新日期 */
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+    /** 所属部门 */
+    @ApiModelProperty(value = "所属部门")
+    private String sysOrgCode;
+
+
+}

+ 4 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SmsCheckTask.java

@@ -33,6 +33,10 @@ public class SmsCheckTask implements Serializable {
     @TableId(type = IdType.ASSIGN_ID)
     @ApiModelProperty(value = "主键")
     private String id;
+    /** 任务类型 */
+    @Excel(name = "任务类型", width = 15)
+    @ApiModelProperty(value = "任务类型")
+    private Integer type;
 	/** 任务名称 */
     @Excel(name = "任务名称", width = 15)
     @ApiModelProperty(value = "任务名称")

+ 84 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SmsLotCustomerData.java

@@ -0,0 +1,84 @@
+package org.jeecg.modules.smscheck.entity;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 物联网稽核数据文件
+ */
+@Data
+@TableName("sms_lot_customer_data")
+//不用带set和get前缀   user.name("aaa").age(18)
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="sms_lot_customer_data", description="物联网稽核数据文件存储")
+public class SmsLotCustomerData implements Serializable {
+    /** 主键 */
+    @TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+    /**客户ID*/
+    @ApiModelProperty(value = "主键")
+    private String infoId;
+    /**卡类型 0测试卡;1正式卡*/
+    private Integer blockType;
+    /**是否突破价格管控*/
+    private Integer control;
+    /**合同文件*/
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
+    private String contract;
+    /**责任人经办人授权书*/
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
+    private String empower;
+    /**责任人经办人身份证*/
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
+    private String idCard;
+    /**客户证件*/
+    private String customerId;
+    /**风险评估表*/
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
+    private String risk;
+    /**省集团价格审批表*/
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
+    private String priceApproval;
+    /**测试卡申请单*/
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
+    private String testCardApplication;
+    /**承诺涵-其他材料*/
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
+    private String commitment;
+
+    /** 员工编号 */
+    @Excel(name = "员工编号", width = 15)
+    @ApiModelProperty(value = "员工编号")
+    private String staffNo;
+    /** 创建人 */
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+    /** 创建日期 */
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+    /** 更新人 */
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+    /** 更新日期 */
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+    /** 所属部门 */
+    @ApiModelProperty(value = "所属部门")
+    private String sysOrgCode;
+}

+ 9 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SpecialExamination.java

@@ -24,6 +24,10 @@ public class SpecialExamination {
     @ApiModelProperty(value = "主键")
     private String id;
 
+    /**客户ID*/
+    @ApiModelProperty(value = "主键")
+    private String infoId;
+
     @ApiModelProperty(value = "创建用户")
     private String createUser;
 
@@ -98,6 +102,11 @@ public class SpecialExamination {
     @ApiModelProperty(value = "审核状态")
     private Integer status;
 
+    @ApiModelProperty(value = "复开时间")
+    private Date reopenTime;
+
+    //驳回理由
+    private String specialNote;
 
 
 

+ 14 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/AsCheckCustomerInfoMapper.java

@@ -0,0 +1,14 @@
+package org.jeecg.modules.smscheck.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.jeecg.modules.smscheck.entity.AsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.entity.BusinessReminderCard;
+
+/**
+ * 关停工单表
+ */
+@Mapper
+public interface AsCheckCustomerInfoMapper  extends BaseMapper<AsCheckCustomerInfo> {
+
+}

+ 13 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/BusinessReminderCardMapper.java

@@ -0,0 +1,13 @@
+package org.jeecg.modules.smscheck.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.jeecg.modules.smscheck.entity.BusinessReminderCard;
+import org.jeecg.modules.smscheck.entity.SmcLotCheckLog;
+
+/**
+ * 入网信息表数据层
+ */
+@Mapper
+public interface BusinessReminderCardMapper  extends BaseMapper<BusinessReminderCard> {
+}

+ 9 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SmcLotCheckLogMapper.java

@@ -0,0 +1,9 @@
+package org.jeecg.modules.smscheck.mapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.jeecg.modules.smscheck.entity.SmcLotCheckLog;
+
+
+@Mapper
+public interface SmcLotCheckLogMapper extends BaseMapper<SmcLotCheckLog> {
+}

+ 4 - 4
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SmsCheckWorkLogMapper.java

@@ -79,12 +79,12 @@ public interface SmsCheckWorkLogMapper extends BaseMapper<SmsCheckWorkLog> {
             sql.append("SELECT DATE_FORMAT( create_time, '%Y-%m-%d' )  as createTime,COUNT( id ) as count ");
             sql.append(" FROM sms_check_work_log ");
             sql.append(" WHERE (basic_check_state = 1 or standard_check_state = 1 or data_check_state = 1)  ");
-            if (!StringUtils.isEmpty(startDate)){
+           /* if (!StringUtils.isEmpty(startDate)){
                 sql.append(" AND create_time >= '"+startDate+"' ");
             }
             if (!StringUtils.isEmpty(endDate)){
                 sql.append(" AND create_time <='" + endDate+"' ");
-            }
+            }*/
             if (!StringUtils.isEmpty(infoId)){
                 sql.append(" AND info_id = '" + infoId + "' ");
             }
@@ -100,12 +100,12 @@ public interface SmsCheckWorkLogMapper extends BaseMapper<SmsCheckWorkLog> {
             sql.append(" FROM sms_check_customer_info scci ");
             sql.append(" LEFT JOIN sms_check_work_log scwl ON scci.id = scwl.info_id ");
             sql.append(" WHERE scwl.basic_check_state is not NULL ");
-            if (!StringUtils.isEmpty(startDate)){
+            /*if (!StringUtils.isEmpty(startDate)){
                 sql.append(" AND scci.create_time >= '"+startDate+"' ");
             }
             if (!StringUtils.isEmpty(endDate)){
                 sql.append(" AND scci.create_time <='" + endDate+"' ");
-            }
+            }*/
 
             if (!StringUtils.isEmpty(infoId)){
                 sql.append(" AND scwl.info_id = '" + infoId + "' ");

+ 9 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SmsLotCustomerMapper.java

@@ -0,0 +1,9 @@
+package org.jeecg.modules.smscheck.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.jeecg.modules.smscheck.entity.SmsLotCustomerData;
+
+@Mapper
+public interface SmsLotCustomerMapper  extends BaseMapper<SmsLotCustomerData> {
+}

+ 8 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/AsCheckCustomerInfoService.java

@@ -0,0 +1,8 @@
+package org.jeecg.modules.smscheck.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.smscheck.entity.AsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.entity.BusinessReminderCard;
+
+public interface AsCheckCustomerInfoService extends IService<AsCheckCustomerInfo> {
+}

+ 8 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/BusinessReminderCardService.java

@@ -0,0 +1,8 @@
+package org.jeecg.modules.smscheck.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.smscheck.entity.BusinessReminderCard;
+import org.jeecg.modules.smscheck.entity.SmcLotCheckLog;
+
+public interface BusinessReminderCardService extends IService<BusinessReminderCard> {
+}

+ 14 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/SmcLotCheckLogService.java

@@ -0,0 +1,14 @@
+package org.jeecg.modules.smscheck.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.smscheck.entity.SmcLotCheckLog;
+import org.jeecg.modules.smscheck.entity.SmsLotCustomerData;
+
+/**
+ * 物联网稽核业务
+ */
+public interface SmcLotCheckLogService extends IService<SmcLotCheckLog> {
+
+
+    Boolean checkStatus(SmcLotCheckLog smcLotCheckLog);
+}

+ 12 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/SmsLotCustomerService.java

@@ -0,0 +1,12 @@
+package org.jeecg.modules.smscheck.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.smscheck.entity.SmsLotCustomerData;
+
+/**
+ * 物联网稽核业务
+ */
+public interface SmsLotCustomerService  extends IService<SmsLotCustomerData> {
+
+
+}

+ 14 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/AsCheckCustomerInfoServiceImpl.java

@@ -0,0 +1,14 @@
+package org.jeecg.modules.smscheck.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.jeecg.modules.smscheck.entity.AsCheckCustomerInfo;
+import org.jeecg.modules.smscheck.entity.BusinessReminderCard;
+import org.jeecg.modules.smscheck.mapper.AsCheckCustomerInfoMapper;
+import org.jeecg.modules.smscheck.mapper.BusinessReminderCardMapper;
+import org.jeecg.modules.smscheck.service.AsCheckCustomerInfoService;
+import org.jeecg.modules.smscheck.service.BusinessReminderCardService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class AsCheckCustomerInfoServiceImpl extends ServiceImpl<AsCheckCustomerInfoMapper, AsCheckCustomerInfo> implements AsCheckCustomerInfoService {
+}

+ 15 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/BusinessReminderCardServiceImpl.java

@@ -0,0 +1,15 @@
+package org.jeecg.modules.smscheck.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.jeecg.modules.smscheck.entity.BusinessReminderCard;
+import org.jeecg.modules.smscheck.mapper.BusinessReminderCardMapper;
+import org.jeecg.modules.smscheck.service.BusinessReminderCardService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 入网信息业务层
+ */
+@Service
+public class BusinessReminderCardServiceImpl extends ServiceImpl<BusinessReminderCardMapper, BusinessReminderCard> implements BusinessReminderCardService {
+
+}

+ 26 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/SmcLotCheckLogServiceImpl.java

@@ -0,0 +1,26 @@
+package org.jeecg.modules.smscheck.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.jeecg.modules.smscheck.entity.SmcLotCheckLog;
+import org.jeecg.modules.smscheck.mapper.SmcLotCheckLogMapper;
+import org.jeecg.modules.smscheck.service.SmcLotCheckLogService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class SmcLotCheckLogServiceImpl extends ServiceImpl<SmcLotCheckLogMapper, SmcLotCheckLog> implements SmcLotCheckLogService {
+    @Override
+    public Boolean checkStatus(SmcLotCheckLog smcLotCheckLog) {
+        Integer contractState = smcLotCheckLog.getContractState() == null ? 999 : smcLotCheckLog.getContractState();
+        Integer testCardApplicationState = smcLotCheckLog.getTestCardApplicationState() == null ?  999 : smcLotCheckLog.getTestCardApplicationState();
+        Integer empowerState = smcLotCheckLog.getEmpowerState() == null ?  999 : smcLotCheckLog.getEmpowerState();
+        Integer idCardState = smcLotCheckLog.getIdCardState() == null ?  999 : smcLotCheckLog.getIdCardState();
+        Integer customerIdState = smcLotCheckLog.getCustomerIdState() == null ?  999: smcLotCheckLog.getCustomerIdState();
+        Integer riskState = smcLotCheckLog.getRiskState() == null ?  999 :  smcLotCheckLog.getRiskState();
+        Integer priceApprovalState = smcLotCheckLog.getPriceApprovalState() == null ?  999 : smcLotCheckLog.getPriceApprovalState();
+        if (contractState == 0 || testCardApplicationState == 0 || empowerState == 0
+                || idCardState == 0 || customerIdState == 0 || riskState == 0 || priceApprovalState == 0){
+            return false;
+        }
+        return true;
+    }
+}

+ 14 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/SmsLotCustomerServiceImpl.java

@@ -0,0 +1,14 @@
+package org.jeecg.modules.smscheck.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.jeecg.modules.smscheck.entity.SmsLotCustomerData;
+import org.jeecg.modules.smscheck.mapper.SmsLotCustomerMapper;
+import org.jeecg.modules.smscheck.service.SmsLotCustomerService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 物联网业务稽核
+ */
+@Service
+public class SmsLotCustomerServiceImpl extends ServiceImpl<SmsLotCustomerMapper, SmsLotCustomerData> implements SmsLotCustomerService {
+}

+ 96 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/vo/AsCheckCustomerInfoServiceVo.java

@@ -0,0 +1,96 @@
+package org.jeecg.modules.smscheck.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+@TableName("as_check_customer_info")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="as_check_customer_info", description="关停工单表")
+public class AsCheckCustomerInfoServiceVo implements Serializable {
+    private static final long serialVersionUID = 1L;
+    /** 序号 */
+    @Excel(name = "序号", width = 15)
+    @ApiModelProperty(value = "序号")
+    private String no;
+    /** 日期 */
+    @Excel(name = "日期", width = 15)
+    @ApiModelProperty(value = "日期")
+    private Date date;
+    /** 客户ID */
+    @Excel(name = "客户ID", width = 15)
+    @ApiModelProperty(value = "客户ID")
+    private String customerId;
+    /** 客户名称 */
+    @Excel(name = "客户名称", width = 15)
+    @ApiModelProperty(value = "客户名称")
+    private String customerName;
+    /** 用户ID */
+    @Excel(name = "用户ID", width = 15)
+    @ApiModelProperty(value = "用户ID")
+    private String userId;
+    /** 号码 */
+    @Excel(name = "号码", width = 15)
+    @ApiModelProperty(value = "号码")
+    private String number;
+    /** 入网时间 */
+    @Excel(name = "入网时间", width = 15)
+    @ApiModelProperty(value = "入网时间")
+    private String networkAccessTime;
+    /** 发展部门 */
+    @Excel(name = "发展部门", width = 15)
+    @ApiModelProperty(value = "发展部门")
+    private String staffDeptLevelName;
+    /** 发展人 */
+    @Excel(name = "发展人", width = 15)
+    @ApiModelProperty(value = "发展人")
+    private String staffInfo;
+    /** 员工编码 */
+    @Excel(name = "工号", width = 15)
+    @ApiModelProperty(value = "工号")
+    private String staffNo;
+    /** 号码来源 */
+    @Excel(name = "号码来源", width = 15)
+    @ApiModelProperty(value = "号码来源")
+    private String numberSource;
+    /** 是否存在多次关停复开记录 */
+    @Excel(name = "是否存在多次关停复开记录", width = 15)
+    @ApiModelProperty(value = "是否存在多次关停复开记录")
+    private String reopeningLog;
+    /** 最后一次关停原因 */
+    @Excel(name = "最后一次关停原因", width = 15)
+    @ApiModelProperty(value = "最后一次关停原因")
+    private String shutdownReasonLast;
+    /** 最后一次关停时间 */
+    @Excel(name = "最后一次关停时间", width = 15)
+    @ApiModelProperty(value = "最后一次关停时间")
+    private Date shutdownReasonDate;
+    /** 备注 */
+    @Excel(name = "备注", width = 15)
+    @ApiModelProperty(value = "备注")
+    private String notes;
+    /** 管控动作 */
+    @Excel(name = "管控动作", width = 15)
+    @ApiModelProperty(value = "管控动作")
+    private String control;
+    /** 不进行处理原因 */
+    @Excel(name = "不进行处理原因/其他事项说明", width = 15)
+    @ApiModelProperty(value = "不进行处理原因/其他事项说明")
+    private String controlNote;
+    /** 错误信息 */
+    @ApiModelProperty(value = "错误信息")
+    private String errorMsg;
+}

+ 3 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/vo/SmsCheckCustomerInfoVo.java

@@ -96,6 +96,9 @@ public class SmsCheckCustomerInfoVo implements Serializable {
     @Excel(name = "员工三级部门名称", width = 15)
     @ApiModelProperty(value = "员工三级部门名称")
     private String staffDeptLevel3Name;
+    /** 导入结果 */
+    @ApiModelProperty(value = "错误信息")
+    private String result;
     /** 错误信息 */
     @ApiModelProperty(value = "错误信息")
     private String errorMsg;

+ 33 - 36
tnc-system/src/main/resources/application-dev.yml

@@ -67,16 +67,16 @@ spring:
   jackson:
     date-format:   yyyy-MM-dd HH:mm:ss
     time-zone:   GMT+8
-  jpa:
-    open-in-view: false
+  aop:
+    proxy-target-class: true
   activiti:
     check-process-definitions: false
     #启用作业执行器
     async-executor-activate: false
     #启用异步执行器
     job-executor-activate: false
-  aop:
-    proxy-target-class: true
+  jpa:
+    open-in-view: false
   #配置freemarker
   freemarker:
     # 设置模板后缀名
@@ -123,7 +123,7 @@ spring:
         timeBetweenEvictionRunsMillis: 60000
         # 配置一个连接在池中最小生存的时间,单位是毫秒
         minEvictableIdleTimeMillis: 300000
-        validationQuery: SELECT 1
+        validationQuery: SELECT 1 FROM DUAL
         testWhileIdle: true
         testOnBorrow: false
         testOnReturn: false
@@ -136,22 +136,26 @@ spring:
         connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
       datasource:
         master:
-          url: 'jdbc:mysql://127.0.0.1:3306/tnc_use?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai'
+          url: jdbc:mysql://127.0.0.1:3306/tnc?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
           username: root
-          password: 123456
+          password: webyun
           driver-class-name: com.mysql.cj.jdbc.Driver
-          # 多数据源配置
+          # 多数据源配置`噗;'。
           #multi-datasource1:
           #url: jdbc:mysql://localhost:3306/jeecg-boot2?useUnicode=true&characterEncoding=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
           #username: root
           #password: root
           #driver-class-name: com.mysql.cj.jdbc.Driver
   #redis 配置
+  #202.85.214.182
+  #liuwm_123
+  #123
   redis:
     database: 0
     host: 127.0.0.1
     port: 6379
-    password: ''
+    password: 123
+    #password:
     lettuce:
       pool:
         max-active: 8   #最大连接数据库连接数,设 -1 为没有限制
@@ -159,7 +163,6 @@ spring:
         max-wait: -1ms  #最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。
         min-idle: 0     #最小等待连接中的数量,设 0 为没有限制
       shutdown-timeout: 100ms
-
 #mybatis plus 设置
 mybatis-plus:
   mapper-locations: classpath*:org/jeecg/modules/**/xml/*Mapper.xml
@@ -167,13 +170,13 @@ mybatis-plus:
     # 关闭MP3.0自带的banner
     banner: false
     db-config:
-      #主键类型  0:"数据库ID自增",1:"该类型为未设置主键类型", 2:"用户输入ID",3:"全局唯一ID (数字类型唯一ID)", 4:"全局唯一ID UUID",5:"字符串全局唯一ID (idWorker 的字符串表示)";
+      #主键类型
       id-type: ASSIGN_ID
       # 默认数据库表下划线命名
       table-underline: true
   configuration:
     # 这个配置会将执行的sql打印出来,在开发或测试的时候可以用
-    #log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
     # 返回类型为Map,显示null对应的字段
     call-setters-on-nulls: true
 #jeecg专用配置
@@ -187,22 +190,23 @@ jeecg:
   # 本地:local\Minio:minio\阿里云:alioss
   uploadType: minio
   path:
-    #文件上传根目录 设置
-    upload: /opt/upFiles
-    #webapp文件路径
-    webapp: /opt/webapp
+    # 文件上传根目录 设置
+    upload: upFiles
+    # webapp文件路径
+    webapp: webapp
   shiro:
     excludeUrls: /test/jeecgDemo/demo3,/test/jeecgDemo/redisDemo/**,/category/**,/visual/**,/map/**,/jmreport/bigscreen2/**
   #阿里云oss存储和大鱼短信秘钥配置
   oss:
-    accessKey: LTAIDAkbFKBoXB7o
-    secretKey: 2KnusFcZ5qhGnoyFG4LWmHsHirUfqj
+    accessKey: ??
+    secretKey: ??
     endpoint: oss-cn-beijing.aliyuncs.com
     bucketName: jeecgdev
-  # ElasticSearch 6设置
+    staticDomain: https://static.jeecg.com
+  # ElasticSearch 设置
   elasticsearch:
     cluster-name: jeecg-ES
-    cluster-nodes: 127.0.0.1:9200
+    cluster-nodes: 81.70.47.128:9200
     check-enabled: false
   # 表单设计器配置
   desform:
@@ -214,29 +218,22 @@ jeecg:
       # 配置百度地图的AK,申请地址:https://lbs.baidu.com/apiconsole/key?application=key#/home
       baidu: ??
   # 在线预览文件服务器地址配置
-  file-view-domain: 127.0.0.1:8012
+  file-view-domain: http://172.16.142.20:8012
   # minio文件上传
   minio:
-    minio_url: http://202.85.214.182:9001
+    minio_url: http://172.16.142.20:9001
     minio_name: minioadmin
     minio_pass: minioadmin
     bucketName: default
   #大屏报表参数设置
   jmreport:
-    mode: dev
+    mode: prod
     #数据字典是否进行saas数据隔离,自己看自己的字典
     saas: false
     #是否需要校验token
-    is_verify_token: true
+    is_verify_token: false
     #必须校验方法
     verify_methods: remove,delete,save,add,update
-    #自定义项目前缀
-    customPrePath:
-    pageSize:
-      - 10
-      - 20
-      - 30
-      - 40
   #Wps在线文档
   wps:
     domain: https://wwo.wps.cn/office/
@@ -254,14 +251,14 @@ jeecg:
     password:
     type: STANDALONE
     enabled: true
-#cas单点登录
-cas:
-  prefixUrl: http://cas.example.org:8443/cas
 #Mybatis输出sql日志
 logging:
   level:
     org.jeecg.modules.system.mapper: info
-  config: classpath:config/logback-dev.xml
+  config: classpath:config/logback-test.xml
+#cas单点登录
+cas:
+  prefixUrl: http://cas.example.org:8443/cas
 #swagger
 knife4j:
   #开启增强配置
@@ -269,7 +266,7 @@ knife4j:
   #开启生产环境屏蔽
   production: false
   basic:
-    enable: false
+    enable: true
     username: jeecg
     password: jeecg1314
 #第三方登录

+ 12 - 8
tnc-system/src/main/resources/application-test.yml

@@ -136,22 +136,26 @@ spring:
         connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
       datasource:
         master:
-          url: jdbc:mysql://202.85.214.182:3306/tnc?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
+          url: jdbc:mysql://223.223.177.220:3306/tnc?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
           username: root
-          password: webyun
+          password: webyunAdmin723
           driver-class-name: com.mysql.cj.jdbc.Driver
-          # 多数据源配置
+          # 多数据源配置`噗;'。
           #multi-datasource1:
           #url: jdbc:mysql://localhost:3306/jeecg-boot2?useUnicode=true&characterEncoding=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
           #username: root
           #password: root
           #driver-class-name: com.mysql.cj.jdbc.Driver
   #redis 配置
+  #202.85.214.182
+  #liuwm_123
+  #123
   redis:
-     database: 1
-     host: 202.85.214.182
+     database: 0
+     host: 127.0.0.1
      port: 6379
-     password: liuwm_123
+     password: 123
+     #password:
      lettuce:
        pool:
          max-active: 8   #最大连接数据库连接数,设 -1 为没有限制
@@ -214,10 +218,10 @@ jeecg:
       # 配置百度地图的AK,申请地址:https://lbs.baidu.com/apiconsole/key?application=key#/home
       baidu: ??
   # 在线预览文件服务器地址配置
-  file-view-domain: http://127.0.0.1:8012
+  file-view-domain: http://223.223.177.220:8012
   # minio文件上传
   minio:
-    minio_url: http://202.85.214.182:9001
+    minio_url: http://223.223.177.220:9001
     minio_name: minioadmin
     minio_pass: minioadmin
     bucketName: default

+ 1 - 1
tnc-system/src/main/resources/application.yml

@@ -2,4 +2,4 @@ spring:
   application:
     name: tnc-system
   profiles:
-    active: '@profile.name@'
+    active: test

+ 1 - 1
tnc-system/src/main/resources/banner.txt

@@ -6,6 +6,6 @@ ${AnsiColor.BRIGHT_BLUE}
   \__|_| |_|\___|      |_.__/ \___/ \___/ \__|
 
 ${AnsiColor.BRIGHT_GREEN}
-Jeecg Boot Version: 3.2.0
+Tnc Boot Version: 3.2.0
 Spring Boot Version: ${spring-boot.version}${spring-boot.formatted-version}
 ${AnsiColor.BRIGHT_WHITE}

Vissa filer visades inte eftersom för många filer har ändrats