Просмотр исходного кода

Merge branch 'master' of http://124.70.58.209:3000/ytrd-project-management/purchase

sunhh 2 лет назад
Родитель
Сommit
70c2885446
17 измененных файлов с 206 добавлено и 106 удалено
  1. 1 0
      purchase-admin/src/main/java/com/ozs/web/controller/system/SysDictDataController.java
  2. 2 0
      purchase-admin/src/main/java/com/ozs/web/controller/system/SysMenuController.java
  3. 3 0
      purchase-admin/src/main/java/com/ozs/web/controller/system/SysProcurementStandardController.java
  4. 14 13
      purchase-admin/src/main/java/com/ozs/web/controller/system/SysRoleController.java
  5. 25 1
      purchase-admin/src/main/java/com/ozs/web/controller/system/SysUserController.java
  6. 47 46
      purchase-admin/src/main/java/com/ozs/web/controller/tool/PmTaskServer.java
  7. 57 0
      purchase-admin/src/main/resources/application-druid-prod.yml
  8. 1 1
      purchase-admin/src/main/resources/application-druid.yml
  9. 23 30
      purchase-admin/src/main/resources/application-prod.yml
  10. 3 1
      purchase-common/src/main/java/com/ozs/common/enums/WarnStatus.java
  11. 3 1
      purchase-system/src/main/java/com/ozs/base/domain/BaseExpert.java
  12. 3 1
      purchase-system/src/main/java/com/ozs/base/domain/BaseProfessional.java
  13. 3 1
      purchase-system/src/main/java/com/ozs/base/domain/BaseSupplier.java
  14. 4 0
      purchase-system/src/main/java/com/ozs/pm/doman/vo/requestVo/PmDemandReqVo.java
  15. 15 10
      purchase-system/src/main/java/com/ozs/pm/service/impl/PmDemandServiceImpl.java
  16. 1 0
      purchase-system/src/main/java/com/ozs/system/domain/vo/requestVo/SysRoleRequestVo.java
  17. 1 1
      purchase-system/src/main/java/com/ozs/system/domain/vo/requestVo/SysUserPageRequestVo.java

+ 1 - 0
purchase-admin/src/main/java/com/ozs/web/controller/system/SysDictDataController.java

@@ -79,6 +79,7 @@ public class SysDictDataController extends BaseController
     /**
      * 根据字典类型查询字典数据信息
      */
+    @PreAuthorize("@ss.hasPermi('system:dict:query')")
     @GetMapping(value = "/type/{dictType}")
     @ApiOperation("根据字典类型查询字典数据信息")
     public AjaxResult dictType(@PathVariable String dictType)

+ 2 - 0
purchase-admin/src/main/java/com/ozs/web/controller/system/SysMenuController.java

@@ -63,6 +63,7 @@ public class SysMenuController extends BaseController
     /**
      * 获取菜单下拉树列表
      */
+    @PreAuthorize("@ss.hasPermi('system:menu:tree')")
     @GetMapping("/treeselect")
     @ApiOperation("获取菜单下拉树列表")
     public AjaxResult treeselect(SysMenu menu)
@@ -74,6 +75,7 @@ public class SysMenuController extends BaseController
     /**
      * 加载对应角色菜单列表树
      */
+    @PreAuthorize("@ss.hasPermi('system:menu:treeList')")
     @GetMapping(value = "/roleMenuTreeselect/{roleId}")
     @ApiOperation("加载对应角色菜单列表树")
     public AjaxResult roleMenuTreeselect(@PathVariable("roleId") Long roleId)

+ 3 - 0
purchase-admin/src/main/java/com/ozs/web/controller/system/SysProcurementStandardController.java

@@ -13,6 +13,7 @@ import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
+import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.CrossOrigin;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -39,6 +40,7 @@ public class SysProcurementStandardController {
     @Resource
     private SysProcurementStandardService sysProcurementStandardService;
 
+    @PreAuthorize("@ss.hasPermi('system:dept:addSysProcurementStandar')")
     @ApiOperation("添加采购单位管理中标准信息")
     @PostMapping("save")
     public R<String> save(@RequestBody List<SysProcurementStandardVo> sysProcurementStandardVoList) {
@@ -54,6 +56,7 @@ public class SysProcurementStandardController {
         return R.ok();
     }
 
+    @PreAuthorize("@ss.hasPermi('system:dept:updateSysProcurementStandar')")
     @ApiOperation("修改采购单位管理中标准信息")
     @PostMapping("update")
     public R<String> update(@RequestBody List<SysProcurementStandardVo> sysProcurementStandardVoList) {

+ 14 - 13
purchase-admin/src/main/java/com/ozs/web/controller/system/SysRoleController.java

@@ -1,30 +1,20 @@
 package com.ozs.web.controller.system;
 
-import java.net.UnknownHostException;
 import java.util.List;
-import java.util.stream.Collectors;
 import javax.servlet.http.HttpServletResponse;
 import javax.validation.constraints.NotEmpty;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ozs.base.domain.BasePolicy;
-import com.ozs.base.vo.BasePolicyPageReqVo;
-import com.ozs.common.constant.ModularConstans;
-import com.ozs.common.core.domain.R;
-import com.ozs.common.utils.file.FileUtils;
-import com.ozs.common.vo.EsMessage;
 import com.ozs.system.domain.vo.requestVo.SysMenuIdsRequestVo;
 import com.ozs.system.domain.vo.requestVo.SysRoleRequestVo;
 import com.ozs.system.domain.vo.requestVo.SysStatusRequestVo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.apache.lucene.search.similarities.Distribution;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.util.ObjectUtils;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.DeleteMapping;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -93,8 +83,17 @@ public class SysRoleController extends BaseController
     @ApiOperation("根据条件分页查询角色数据")
     public AjaxResult page(@NotEmpty(message = "数据为空")
                            @RequestBody SysRoleRequestVo vo) {
-        LambdaQueryWrapper<SysRole> lw = new LambdaQueryWrapper<>();
+        LambdaQueryWrapper<SysRole> lw = new LambdaQueryWrapper<SysRole>();
         lw.eq(SysRole::getDelFlag,0);
+        if (!StringUtils.isBlank(vo.getRoleName())) {
+            lw.like(SysRole::getRoleName, "%" +vo.getRoleName() + "%");
+        }
+        if (!StringUtils.isBlank(vo.getRoleKey())) {
+            lw.like(SysRole::getRoleKey, "%" +vo.getRoleKey() + "%");
+        }
+        if (!StringUtils.isBlank(vo.getStatus())) {
+            lw.eq(SysRole::getStatus, vo.getStatus());
+        }
         IPage<SysRole> page = roleService.page(new Page<>(vo.getPageNum(), vo.getPageSize()), lw);
         return success(page);
 
@@ -160,7 +159,8 @@ public class SysRoleController extends BaseController
         sysRole.setCreateBy(getUsername());
         return toAjax(roleService.addRole(sysRole));
     }
-
+    
+    @PreAuthorize("@ss.hasPermi('system:role:addDistribution')")
     @PostMapping("/saveDistributionModule")
     @ApiOperation("新增分配模块")
     public AjaxResult saveDistributionModule(@RequestBody SysMenuIdsRequestVo sysMenuIdsRequestVo)
@@ -240,7 +240,8 @@ public class SysRoleController extends BaseController
         roleService.checkRoleDataScope(role.getRoleId());
         return toAjax(roleService.authDataScope(role));
     }
-
+    
+    @PreAuthorize("@ss.hasPermi('system:role:editDistribution')")
     @PostMapping("/updateDistributionModule")
     @ApiOperation("修改分配模块")
     public AjaxResult updateDistributionModule(@RequestBody SysMenuIdsRequestVo sysMenuIdsRequestVo)

+ 25 - 1
purchase-admin/src/main/java/com/ozs/web/controller/system/SysUserController.java

@@ -8,6 +8,9 @@ import javax.servlet.http.HttpServletResponse;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ozs.common.constant.Constants;
+import com.ozs.common.core.domain.entity.SysDictData;
+import com.ozs.home.domain.HomeNotice;
 import com.ozs.system.domain.vo.requestVo.SysUserPageRequestVo;
 import com.ozs.system.domain.vo.requestVo.SysUserRequestVo;
 import com.ozs.system.domain.vo.responseVo.SysDeptResponseVo;
@@ -66,6 +69,8 @@ public class SysUserController extends BaseController
 
     @Autowired
     private ISysPostService postService;
+    @Autowired
+    private ISysDeptService iSysDeptService;
 
 //    /**
 //     * 获取用户列表
@@ -88,9 +93,28 @@ public class SysUserController extends BaseController
     @ApiOperation("获取用户列表")
     public AjaxResult list(@RequestBody SysUserPageRequestVo sysUserPageRequestVo)
     {
-        LambdaQueryWrapper<SysUser> lw = new LambdaQueryWrapper<>();
+        LambdaQueryWrapper<SysUser> lw = new LambdaQueryWrapper<SysUser>();
         lw.eq(SysUser::getDelFlag,0);
+        if (!StringUtils.isBlank(sysUserPageRequestVo.getNickName())) {
+            lw.like(SysUser::getNickName, "%" + sysUserPageRequestVo.getNickName() + "%");
+        }
+        if (!StringUtils.isBlank(sysUserPageRequestVo.getDeptId())) {
+            lw.eq(SysUser::getDeptId, sysUserPageRequestVo.getDeptId());
+        }
         IPage<SysUser> page = userService.page(new Page<>(sysUserPageRequestVo.getPageNum(), sysUserPageRequestVo.getPageSize()), lw);
+        if (!ObjectUtils.isEmpty(page.getRecords())) {
+            page.setRecords(page.getRecords().stream().map(dto -> {
+                // 采购单位名称
+                Map<String, Object> stringObjectMap = iSysDeptService.selectDeptById(dto.getDeptId());
+                if (!ObjectUtils.isEmpty(stringObjectMap)) {
+                    SysDeptResponseVo sysDeptResponseVo = (SysDeptResponseVo) stringObjectMap.get("sysDept");
+                    SysDept sysDept = new SysDept();
+                    sysDept.setDeptName(sysDeptResponseVo.getDeptName());
+                    dto.setDept(sysDept);
+                }
+                return dto;
+            }).collect(Collectors.toList()));
+        }
         if(!ObjectUtils.isEmpty(page) && !ObjectUtils.isEmpty(page.getRecords())){
             List<SysUser> dto1 = page.getRecords().stream().map(o -> {
                 Map<String, Object> stringObjectMap = deptService.selectDeptById(o.getDeptId());

+ 47 - 46
purchase-admin/src/main/java/com/ozs/web/controller/tool/PmTaskServer.java

@@ -1,10 +1,13 @@
 package com.ozs.web.controller.tool;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ozs.common.core.domain.entity.SysDictData;
 import com.ozs.common.enums.PmProjectStatus;
+import com.ozs.common.enums.WarnStatus;
 import com.ozs.common.utils.DateUtils;
 import com.ozs.pm.doman.PmDemand;
 import com.ozs.pm.service.IPmDemandService;
+import com.ozs.system.service.ISysDictTypeService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -13,6 +16,7 @@ import org.springframework.util.ObjectUtils;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 项目管理任务调度
@@ -22,68 +26,65 @@ import java.util.List;
 public class PmTaskServer {
     @Autowired
     private IPmDemandService pmDemandService;
+    @Autowired
+    private ISysDictTypeService iSysDictTypeService;
 
     /**
      * 更新预警状态
      */
     public void updateDemandWarnStatus(){
-        log.info("******** 项目管理任务  开始");
+        log.info("******** 项目更新预警状态任务  开始");
         LambdaQueryWrapper<PmDemand> lw = new LambdaQueryWrapper<>();
-        lw.in(PmDemand::getProjectStatus,
-                PmProjectStatus.DEMAND_WAIT_FILL.getCode(),
-                PmProjectStatus.DEMAND_WAIT_COMMIT.getCode(),
-                PmProjectStatus.DEMAND_AUDIT_RETURN.getCode(),
-
-                PmProjectStatus.DEMAND_WAIT_AUDIT.getCode(),
-                PmProjectStatus.TASK_WAIT_RELEASE.getCode(),
-                PmProjectStatus.CONTRACT_WAIT_FILL.getCode(),
-                PmProjectStatus.UNDER_CONSTRUCTION.getCode()
-        );
-
+        lw.ne(PmDemand::getProjectStatus, PmProjectStatus.COMPLETION_CONSTRUCTION.getCode());
         List<PmDemand> list = this.pmDemandService.list(lw);
         if(ObjectUtils.isEmpty(list)){
             return;
         }
+        Date now = new Date();
         List<PmDemand> updateList = new ArrayList<>();
-
+        List<SysDictData> data = iSysDictTypeService.selectDictDataByType("alert_time_setting");
+        int setting1 = Integer.parseInt(data.stream().filter(item -> item.getDictLabel().equals("计划提报时间")).collect(Collectors.toList()).get(0).getDictValue());
+        log.info("******** setting1 == " + setting1);
+        int setting2 = Integer.parseInt(data.stream().filter(item -> item.getDictLabel().equals("计划完成时间")).collect(Collectors.toList()).get(0).getDictValue());
+        log.info("******** setting2 == " + setting2);
+        int setting3 = Integer.parseInt(data.stream().filter(item -> item.getDictLabel().equals("计划交付(实施)时间")).collect(Collectors.toList()).get(0).getDictValue());
+        log.info("******** setting3 == " + setting3);
         list.forEach(item-> {
-            if(PmProjectStatus.DEMAND_WAIT_FILL.getCode().equals(item.getProjectStatus())
-                    || PmProjectStatus.DEMAND_WAIT_COMMIT.getCode().equals(item.getProjectStatus())
-                    || PmProjectStatus.DEMAND_AUDIT_RETURN.getCode().equals(item.getProjectStatus())){
-                //采购需求管理:针对项目计划中提报需求时间截止时间前一个月还未提报采购需求材料的,进行预警
-                int diff = DateUtils.differentDaysByMillisecond(item.getPlanDemandSubTime(), new Date());
-                if (diff > 30 && ObjectUtils.isEmpty(item.getRealDemandCommitTime())) {
-                    updateList.add(item);
-                }
-            } else if(PmProjectStatus.TASK_WAIT_RELEASE.getCode().equals(item.getProjectStatus())){
-                //任务下达管理:针对采购需求已完成提报X天的项目,且尚未进行任务下达的,进行预警
-                int diff = DateUtils.differentDaysByMillisecond(item.getPlanDemandSubTime(), new Date());
-                if (diff > 30 && ObjectUtils.isEmpty(item.getRealDemandCommitTime())) {
-                    updateList.add(item);
+            //需求提报时间:根据数据阈值中设置的提报时间进行判断,进行预警
+            int diff1 = DateUtils.differentDaysByMillisecond(item.getPlanDemandSubTime(), now);
+            if (ObjectUtils.isEmpty(item.getRealDemandCommitTime()) && diff1 > setting1) {
+                log.info("******** 需求提报预警: " + item.getProjectName());
+                PmDemand pmDemand = new PmDemand();
+                pmDemand.setDemandId(item.getDemandId());
+                pmDemand.setWarnStatus(WarnStatus.DEMAND_COMMT_WARNING.getCode());
+                updateList.add(pmDemand);
+            } else {
+                //采购完成时间:根据数据阈值中设置的采购完成时间进行判断,进行预警
+                int diff2 = DateUtils.differentDaysByMillisecond(item.getPlanPurchaseFinishTime(), now);
+                if ( ObjectUtils.isEmpty(item.getRealDemandCommitTime()) && diff2 > setting2) {
+                    log.info("******** 采购完成预警: " + item.getProjectName());
+                    PmDemand pmDemand = new PmDemand();
+                    pmDemand.setDemandId(item.getDemandId());
+                    pmDemand.setWarnStatus(WarnStatus.PURCHASE_FINISH_WARNING.getCode());
+                    updateList.add(pmDemand);
+                } else {
+                    //计划交付时间:根据数据阈值中设置的交付时间进行判断,进行预警
+                    int diff3 = DateUtils.differentDaysByMillisecond(item.getPlanDeliverTime(), now);
+                    if (ObjectUtils.isEmpty(item.getRealDemandCommitTime()) && diff3 > setting3) {
+                        log.info("******** 计划交付预警: " + item.getProjectName());
+                        PmDemand pmDemand = new PmDemand();
+                        pmDemand.setDemandId(item.getDemandId());
+                        pmDemand.setWarnStatus(WarnStatus.PLAN_DELIVER_WARNING.getCode());
+                        updateList.add(pmDemand);
+                    }
                 }
-
-            } else if(PmProjectStatus.CONTRACT_WAIT_FILL.getCode().equals(item.getProjectStatus())){
-                //合同信息管理:针对中标通知书发放25天,且尚未提交合同相关材料的项目,进行预警
-                int diff = DateUtils.differentDaysByMillisecond(item.getPlanDemandSubTime(), new Date());
-                if (diff > 30 && ObjectUtils.isEmpty(item.getRealDemandCommitTime())) {
-                    updateList.add(item);
-                }
-
-            } else if(PmProjectStatus.UNDER_CONSTRUCTION.getCode().equals(item.getProjectStatus())){
-                //项目建设管理:针对各阶段预置的起始时间期限,进行预警
-
-
             }
-
         });
 
-
-
-
-
-
-
-        log.info("******** 项目管理任务  结束");
+        if(!ObjectUtils.isEmpty(updateList)){
+            this.pmDemandService.updateBatchById(updateList);
+        }
+        log.info("******** 项目更新预警状态任务  结束");
     }
 
 }

+ 57 - 0
purchase-admin/src/main/resources/application-druid-prod.yml

@@ -0,0 +1,57 @@
+# 数据源配置
+spring:
+    datasource:
+        type: com.alibaba.druid.pool.DruidDataSource
+        driverClassName: com.mysql.cj.jdbc.Driver
+        druid:
+            # 主库数据源
+            master:
+                url: jdbc:mysql://127.0.0.1:3306/purchase?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+                username: admin
+                password: 106aD>>ql95K5S
+            # 从库数据源
+            slave:
+                # 从数据源开关/默认关闭
+                enabled: false
+                url:
+                username:
+                password:
+            # 初始连接数
+            initialSize: 5
+            # 最小连接池数量
+            minIdle: 10
+            # 最大连接池数量
+            maxActive: 20
+            # 配置获取连接等待超时的时间
+            maxWait: 60000
+            # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
+            timeBetweenEvictionRunsMillis: 60000
+            # 配置一个连接在池中最小生存的时间,单位是毫秒
+            minEvictableIdleTimeMillis: 300000
+            # 配置一个连接在池中最大生存的时间,单位是毫秒
+            maxEvictableIdleTimeMillis: 900000
+            # 配置检测连接是否有效
+            validationQuery: SELECT 1 FROM DUAL
+            testWhileIdle: true
+            testOnBorrow: false
+            testOnReturn: false
+            webStatFilter:
+                enabled: true
+            statViewServlet:
+                enabled: true
+                # 设置白名单,不填则允许所有访问
+                allow:
+                url-pattern: /druid/*
+                # 控制台管理用户名和密码
+                login-username: purchase
+                login-password: 123456
+            filter:
+                stat:
+                    enabled: true
+                    # 慢SQL记录
+                    log-slow-sql: true
+                    slow-sql-millis: 1000
+                    merge-sql: true
+                wall:
+                    config:
+                        multi-statement-allow: true

+ 1 - 1
purchase-admin/src/main/resources/application-druid.yml

@@ -43,7 +43,7 @@ spring:
                 allow:
                 url-pattern: /druid/*
                 # 控制台管理用户名和密码
-                login-username: ruoyi
+                login-username: purchase
                 login-password: 123456
             filter:
                 stat:

+ 23 - 30
purchase-admin/src/main/resources/application-prod.yml

@@ -9,8 +9,7 @@ purchase:
   # 实例演示开关
   demoEnabled: true
   # 文件路径 示例( Windows配置D:/purchase/uploadPath,Linux配置 /home/purchase/uploadPath)
-  profile: C:/purchase/uploadPath
-#  profile: /Users/sunhuanhuan/Documents/project/106/文档/purchase/uploadPath
+  profile: /home/purchase/uploadPath
   # 获取ip地址开关
   addressEnabled: false
   # 验证码类型 math 数组计算 char 字符验证
@@ -20,11 +19,6 @@ purchase:
 
 # 开发环境配置
 server:
-  # 服务器的HTTP端口,默认为8080
-  port: 8080
-  servlet:
-    # 应用的访问路径
-    context-path: /
   tomcat:
     # tomcat的URI编码
     uri-encoding: UTF-8
@@ -56,15 +50,13 @@ spring:
   messages:
     # 国际化资源文件路径
     basename: i18n/messages
-  profiles:
-    active: druid
   # 文件上传
   servlet:
-     multipart:
-       # 单个文件大小
-       max-file-size:  10MB
-       # 设置总上传的文件大小
-       max-request-size:  20MB
+    multipart:
+      # 单个文件大小
+      max-file-size:  10MB
+      # 设置总上传的文件大小
+      max-request-size:  20MB
   # 服务模块
   devtools:
     restart:
@@ -73,14 +65,15 @@ spring:
   # redis 配置
   redis:
     # 地址
-    host: 124.70.58.209
+    host: 127.0.0.1
     # 端口,默认为6379
     port: 7001
     # 数据库索引
     database: 0
     # 密码
     password: 106@qwe123
-    # 连接超时时间    timeout: 100s
+    # 连接超时时间
+    timeout: 100s
     lettuce:
       pool:
         # 连接池中的最小空闲连接
@@ -94,21 +87,21 @@ spring:
 
 # token配置
 token:
-    # 令牌自定义标识
-    header: Authorization
-    # 令牌密钥
-    secret: abcdefghijklmnopqrstuvwxyz
-    # 令牌有效期(默认30分钟)
-    expireTime: 30
+  # 令牌自定义标识
+  header: Authorization
+  # 令牌密钥
+  secret: abcdefghijklmnopqrstuvwxyz
+  # 令牌有效期(默认30分钟)
+  expireTime: 30
 
 # MyBatis配置
 mybatis:
-    # 搜索指定包别名
-    typeAliasesPackage: com.ozs.**.domain
-    # 配置mapper的扫描,找到所有的mapper.xml映射文件
-    mapperLocations: classpath*:mapper/**/*Mapper.xml
-    # 加载全局的配置文件
-    configLocation: classpath:mybatis/mybatis-config.xml
+  # 搜索指定包别名
+  typeAliasesPackage: com.ozs.**.domain
+  # 配置mapper的扫描,找到所有的mapper.xml映射文件
+  mapperLocations: classpath*:mapper/**/*Mapper.xml
+  # 加载全局的配置文件
+  configLocation: classpath:mybatis/mybatis-config.xml
 
 # MyBatis-plus配置
 mybatis-plus:
@@ -127,7 +120,7 @@ swagger:
   # 是否开启swagger
   enabled: true
   # 请求前缀
-#  pathMapping: /dev-api
+  #  pathMapping: /dev-api
   pathMapping: /
 
 # 防止XSS攻击
@@ -141,7 +134,7 @@ xss:
 
 
 elasticsearch:
-  host: 124.70.58.209
+  host: 127.0.0.1
   port: 9121
 #  host: 127.0.0.1
 #  port: 9200

+ 3 - 1
purchase-common/src/main/java/com/ozs/common/enums/WarnStatus.java

@@ -7,7 +7,9 @@ package com.ozs.common.enums;
  */
 public enum WarnStatus {
     NORMAL ("0", "正常"),
-    WARNING("1", "预警");
+    DEMAND_COMMT_WARNING("1", "需求提报预警"),
+    PURCHASE_FINISH_WARNING("2", "采购完成预警"),
+    PLAN_DELIVER_WARNING("3", "计划交付预警");
 
     private final String code;
     private final String info;

+ 3 - 1
purchase-system/src/main/java/com/ozs/base/domain/BaseExpert.java

@@ -1,6 +1,8 @@
 package com.ozs.base.domain;
 
+import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.ozs.base.domain.vo.BaseExpertVo;
@@ -19,7 +21,7 @@ public class BaseExpert extends BaseDto {
      * 主键ID
      */
     @ApiModelProperty(value = "id")
-    @TableField("id")
+    @TableId(type = IdType.AUTO)
     private Integer id;
 
     /**

+ 3 - 1
purchase-system/src/main/java/com/ozs/base/domain/BaseProfessional.java

@@ -1,6 +1,8 @@
 package com.ozs.base.domain;
 
+import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.ozs.common.annotation.Excel;
 import io.swagger.annotations.ApiModelProperty;
@@ -14,7 +16,7 @@ public class BaseProfessional {
      * 主键ID
      */
     @ApiModelProperty(value = "id")
-    @TableField("id")
+    @TableId(type = IdType.AUTO)
     private Integer id;
 
     /**

+ 3 - 1
purchase-system/src/main/java/com/ozs/base/domain/BaseSupplier.java

@@ -1,6 +1,8 @@
 package com.ozs.base.domain;
 
+import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModelProperty;
@@ -19,7 +21,7 @@ import java.util.Date;
 public class BaseSupplier {
 
     @ApiModelProperty(value = "主键id")
-    @TableField("id")
+    @TableId(type = IdType.AUTO)
     private Integer id;
 
     @NotBlank(message = "供应商名称不能为空")

+ 4 - 0
purchase-system/src/main/java/com/ozs/pm/doman/vo/requestVo/PmDemandReqVo.java

@@ -42,6 +42,10 @@ public class PmDemandReqVo extends PageVo
     @ApiModelProperty("项目状态(4:需求待填制,5:需求待提交,6:需求待审核,7:任务待下达,8:任务已下达,9:中标信息待填制,10:中标信息已填制,11:合同待填制,12:合同已填制,13:项目建设中,14:项目建设完成)")
     private Long projectStatus;
 
+    /** 预警状态(0:正常,1:需求提报预警,2:采购完成预警,3:计划交付预警 */
+    @ApiModelProperty("预警状态(0:正常,1:需求提报预警,2:采购完成预警,3:计划交付预警")
+    private String warnStatus;
+
     /** 是否为超限额计划(0:未超额,1:超额) */
     @ApiModelProperty("是否为超限额计划(0:未超额,1:超额)")
     private Integer isExcess;

+ 15 - 10
purchase-system/src/main/java/com/ozs/pm/service/impl/PmDemandServiceImpl.java

@@ -415,10 +415,13 @@ public class PmDemandServiceImpl extends ServiceImpl<PmDemandMapper, PmDemand> i
         if (!StringUtils.isBlank(pmDemandReqVo.getPurchaseServices())) {
             lw.eq(PmDemand::getPurchaseServices, pmDemandReqVo.getPurchaseServices());
         }
-        if (pmDemandReqVo.getProjectStatus() != null) {
+        if (!ObjectUtils.isEmpty(pmDemandReqVo.getProjectStatus() )) {
             lw.eq(PmDemand::getProjectStatus, pmDemandReqVo.getProjectStatus());
         }
-        if (pmDemandReqVo.getIsExcess() != null) {
+        if (!ObjectUtils.isEmpty(pmDemandReqVo.getWarnStatus() )) {
+            lw.eq(PmDemand::getWarnStatus, pmDemandReqVo.getWarnStatus());
+        }
+        if (!ObjectUtils.isEmpty(pmDemandReqVo.getIsExcess() )) {
             lw.eq(PmDemand::getIsExcess, pmDemandReqVo.getIsExcess());
         }
         if (!StringUtils.isBlank(pmDemandReqVo.getBeginDate())) {
@@ -738,14 +741,16 @@ public class PmDemandServiceImpl extends ServiceImpl<PmDemandMapper, PmDemand> i
     @Override
     @Transactional(rollbackFor = Exception.class)
     public boolean reviewReturn(PmDemandReqVo pmDemandReqVo) {
-        PmDemand pmDemand = new PmDemand();
-        pmDemand.setDemandId(pmDemandReqVo.getDemandId());
-        pmDemand.setProjectStatus(PmProjectStatus.DEMAND_AUDIT_RETURN.getCode());
-        pmDemand.setAdjustReason(pmDemandReqVo.getRefuseReason());
-        pmDemand.setUpdateBy(pmDemandReqVo.getUpdateBy());
-        pmDemand.setUpdateTime(DateUtils.getNowDate());
-        pmDemand.setAuditTime(DateUtils.getNowDate());
-        return this.updateById(pmDemand);
+        UpdateWrapper<PmDemand> updateWrapper = new UpdateWrapper<>();
+        updateWrapper.lambda().eq(PmDemand::getDemandId,pmDemandReqVo.getDemandId())
+                .set(PmDemand::getProjectStatus,PmProjectStatus.DEMAND_AUDIT_RETURN.getCode())
+                .set(PmDemand::getAdjustReason,pmDemandReqVo.getRefuseReason())
+                .set(PmDemand::getRealDemandCommitTime,null)
+                .set(PmDemand::getUpdateBy,pmDemandReqVo.getUpdateBy())
+                .set(PmDemand::getUpdateTime,DateUtils.getNowDate())
+                .set(PmDemand::getAuditTime,DateUtils.getNowDate());
+
+        return this.update(updateWrapper);
     }
 
     /**

+ 1 - 0
purchase-system/src/main/java/com/ozs/system/domain/vo/requestVo/SysRoleRequestVo.java

@@ -13,6 +13,7 @@ public class SysRoleRequestVo extends PageVo implements Serializable {
     private static final long serialVersionUID = 1L;
     private String roleName;
     private String status;
+    private String  roleKey;
     private String roleRemarks;
     private Long roleId;
 }

+ 1 - 1
purchase-system/src/main/java/com/ozs/system/domain/vo/requestVo/SysUserPageRequestVo.java

@@ -12,5 +12,5 @@ import java.io.Serializable;
 public class SysUserPageRequestVo extends PageVo implements Serializable {
     private static final long serialVersionUID = 1L;
     private String nickName;
-    private Long deptId;
+    private String deptId;
 }