Zimo 6 dni temu
rodzic
commit
8e26118ac3
11 zmienionych plików z 73 dodań i 36 usunięć
  1. 2 0
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/qhse/cert/vo/IotMeasureCertPageReqVO.java
  2. 8 3
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/qhse/measure/vo/IotMeasureBookPageReqVO.java
  3. 3 0
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/qhse/soc/vo/IotSocSummaryRespVO.java
  4. 1 2
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/qhse/soc/vo/IotSocSummarySaveReqVO.java
  5. 5 1
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/dal/dataobject/qhse/soc/IotSocSummaryDO.java
  6. 1 0
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/dal/mysql/qhse/cert/IotMeasureCertMapper.java
  7. 4 3
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/dal/mysql/qhse/measure/IotMeasureBookMapper.java
  8. 5 2
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/dal/mysql/qhse/soc/IotSocSummaryMapper.java
  9. 12 7
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/service/qhse/cert/IotMeasureCertServiceImpl.java
  10. 7 9
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/service/qhse/measure/IotMeasureBookServiceImpl.java
  11. 25 9
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/service/qhse/soc/IotSocSummaryServiceImpl.java

+ 2 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/qhse/cert/vo/IotMeasureCertPageReqVO.java

@@ -51,4 +51,6 @@ public class IotMeasureCertPageReqVO extends PageParam {
     @Schema(description = "部门id", example = "29429")
     private Long deptId;
 
+    @Schema(description = "是否过期")
+    private Boolean expired;
 }

+ 8 - 3
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/qhse/measure/vo/IotMeasureBookPageReqVO.java

@@ -1,10 +1,12 @@
 package cn.iocoder.yudao.module.pms.controller.admin.qhse.measure.vo;
 
-import lombok.*;
-import java.util.*;
-import io.swagger.v3.oas.annotations.media.Schema;
 import cn.iocoder.yudao.framework.common.pojo.PageParam;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
 import org.springframework.format.annotation.DateTimeFormat;
+
 import java.time.LocalDateTime;
 
 import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@@ -59,4 +61,7 @@ public class IotMeasureBookPageReqVO extends PageParam {
 
     @Schema(description = "部门id", example = "26945")
     private Long deptId;
+
+    @Schema(description = "是否过期")
+    private Boolean expired;
 }

+ 3 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/qhse/soc/vo/IotSocSummaryRespVO.java

@@ -20,6 +20,9 @@ public class IotSocSummaryRespVO {
     @ExcelProperty("项目部")
     private String project;
 
+    @Schema(description = "项目部名称")
+    private String projectName;
+
     @Schema(description = "观察日期", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("观察日期")
     private LocalDateTime observationDate;

+ 1 - 2
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/qhse/soc/vo/IotSocSummarySaveReqVO.java

@@ -3,7 +3,6 @@ package cn.iocoder.yudao.module.pms.controller.admin.qhse.soc.vo;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 
-import javax.validation.constraints.NotEmpty;
 import javax.validation.constraints.NotNull;
 import java.time.LocalDateTime;
 
@@ -26,7 +25,7 @@ public class IotSocSummarySaveReqVO {
     private Long socClass;
 
     @Schema(description = "类型名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六")
-    @NotEmpty(message = "类型名称不能为空")
+//    @NotEmpty(message = "类型名称不能为空")
     private String className;
 
     @Schema(description = "姓名", example = "王五")

+ 5 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/dal/dataobject/qhse/soc/IotSocSummaryDO.java

@@ -31,7 +31,11 @@ public class IotSocSummaryDO extends BaseDO {
     /**
      * 项目部
      */
-    private String project;
+    private Long project;
+    /**
+     * 项目部名称
+     */
+    private String projectName;
     /**
      * 观察日期
      */

+ 1 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/dal/mysql/qhse/cert/IotMeasureCertMapper.java

@@ -26,6 +26,7 @@ public interface IotMeasureCertMapper extends BaseMapperX<IotMeasureCertDO> {
                 .eqIfPresent(IotMeasureCertDO::getCertStandard, reqVO.getCertStandard())
                 .eqIfPresent(IotMeasureCertDO::getCertIssue, reqVO.getCertIssue())
                 .eqIfPresent(IotMeasureCertDO::getCertExpire, reqVO.getCertExpire())
+                .eqIfPresent(IotMeasureCertDO::getExpired, reqVO.getExpired())
                 .eqIfPresent(IotMeasureCertDO::getNoticeBefore, reqVO.getNoticeBefore())
                 .eqIfPresent(IotMeasureCertDO::getCertPic, reqVO.getCertPic())
                 .eqIfPresent(IotMeasureCertDO::getRemark, reqVO.getRemark())

+ 4 - 3
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/dal/mysql/qhse/measure/IotMeasureBookMapper.java

@@ -1,14 +1,14 @@
 package cn.iocoder.yudao.module.pms.dal.mysql.qhse.measure;
 
-import java.util.*;
-
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
+import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
 import cn.iocoder.yudao.module.pms.controller.admin.qhse.measure.vo.IotMeasureBookPageReqVO;
 import cn.iocoder.yudao.module.pms.dal.dataobject.qhse.measure.IotMeasureBookDO;
 import org.apache.ibatis.annotations.Mapper;
 
+import java.util.Set;
+
 /**
  * 计量器具台账 Mapper
  *
@@ -31,6 +31,7 @@ public interface IotMeasureBookMapper extends BaseMapperX<IotMeasureBookDO> {
                 .eqIfPresent(IotMeasureBookDO::getMeasurePrice, reqVO.getMeasurePrice())
                 .eqIfPresent(IotMeasureBookDO::getMeasurePic, reqVO.getMeasurePic())
                 .eqIfPresent(IotMeasureBookDO::getRemark, reqVO.getRemark())
+                .eqIfPresent(IotMeasureBookDO::getExpired, reqVO.getExpired())
                 .betweenIfPresent(IotMeasureBookDO::getCreateTime, reqVO.getCreateTime())
                 .inIfPresent(IotMeasureBookDO::getDeptId, ids)
                 .orderByDesc(IotMeasureBookDO::getId));

+ 5 - 2
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/dal/mysql/qhse/soc/IotSocSummaryMapper.java

@@ -7,6 +7,8 @@ import cn.iocoder.yudao.module.pms.controller.admin.qhse.soc.vo.IotSocSummaryPag
 import cn.iocoder.yudao.module.pms.dal.dataobject.qhse.soc.IotSocSummaryDO;
 import org.apache.ibatis.annotations.Mapper;
 
+import java.util.Set;
+
 /**
  * SOC卡汇总 Mapper
  *
@@ -15,7 +17,7 @@ import org.apache.ibatis.annotations.Mapper;
 @Mapper
 public interface IotSocSummaryMapper extends BaseMapperX<IotSocSummaryDO> {
 
-    default PageResult<IotSocSummaryDO> selectPage(IotSocSummaryPageReqVO reqVO) {
+    default PageResult<IotSocSummaryDO> selectPage(IotSocSummaryPageReqVO reqVO, Set<Long> ids) {
         return selectPage(reqVO, new LambdaQueryWrapperX<IotSocSummaryDO>()
                 .eqIfPresent(IotSocSummaryDO::getProject, reqVO.getProject())
                 .betweenIfPresent(IotSocSummaryDO::getObservationDate, reqVO.getObservationDate())
@@ -23,10 +25,11 @@ public interface IotSocSummaryMapper extends BaseMapperX<IotSocSummaryDO> {
                 .likeIfPresent(IotSocSummaryDO::getClassName, reqVO.getClassName())
                 .likeIfPresent(IotSocSummaryDO::getUserName, reqVO.getUserName())
                 .eqIfPresent(IotSocSummaryDO::getPost, reqVO.getPost())
-                .eqIfPresent(IotSocSummaryDO::getDeptId, reqVO.getDeptId())
+//                .eqIfPresent(IotSocSummaryDO::getDeptId, reqVO.getDeptId())
                 .eqIfPresent(IotSocSummaryDO::getRemark, reqVO.getRemark())
                 .betweenIfPresent(IotSocSummaryDO::getCreateTime, reqVO.getCreateTime())
                 .likeIfPresent(IotSocSummaryDO::getDeptName, reqVO.getDeptName())
+                .inIfPresent(IotSocSummaryDO::getDeptId, ids)
                 .orderByDesc(IotSocSummaryDO::getId));
     }
 

+ 12 - 7
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/service/qhse/cert/IotMeasureCertServiceImpl.java

@@ -1,6 +1,8 @@
 package cn.iocoder.yudao.module.pms.service.qhse.cert;
 
 import cn.iocoder.yudao.framework.common.exception.ErrorCode;
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
 import cn.iocoder.yudao.module.pms.controller.admin.qhse.cert.vo.IotMeasureCertPageReqVO;
 import cn.iocoder.yudao.module.pms.controller.admin.qhse.cert.vo.IotMeasureCertSaveReqVO;
 import cn.iocoder.yudao.module.pms.dal.dataobject.qhse.cert.IotMeasureCertDO;
@@ -9,15 +11,12 @@ import cn.iocoder.yudao.module.system.service.dept.DeptService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.util.*;
-import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.framework.common.pojo.PageParam;
-import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
-
 
 import javax.annotation.Resource;
+import java.time.LocalDateTime;
+import java.util.HashSet;
+import java.util.Objects;
+import java.util.Set;
 
 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
 
@@ -40,6 +39,9 @@ public class IotMeasureCertServiceImpl implements IotMeasureCertService {
         // 插入
         IotMeasureCertDO iotMeasureCert = BeanUtils.toBean(createReqVO, IotMeasureCertDO.class);
         iotMeasureCert.setDeleted(false);
+        LocalDateTime certExpire = iotMeasureCert.getCertExpire();
+        //证书已过期的话,更新expired为true
+        iotMeasureCert.setExpired(certExpire.isBefore(LocalDateTime.now()));
         iotMeasureCertMapper.insert(iotMeasureCert);
         // 返回
         return iotMeasureCert.getId();
@@ -51,6 +53,9 @@ public class IotMeasureCertServiceImpl implements IotMeasureCertService {
         validateIotMeasureCertExists(updateReqVO.getId());
         // 更新
         IotMeasureCertDO updateObj = BeanUtils.toBean(updateReqVO, IotMeasureCertDO.class);
+        LocalDateTime certExpire = updateObj.getCertExpire();
+        //证书已过期的话,更新expired为true
+        updateObj.setExpired(certExpire.isBefore(LocalDateTime.now()));
         iotMeasureCertMapper.updateById(updateObj);
     }
 

+ 7 - 9
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/service/qhse/measure/IotMeasureBookServiceImpl.java

@@ -2,25 +2,22 @@ package cn.iocoder.yudao.module.pms.service.qhse.measure;
 
 import cn.hutool.core.date.DateUtil;
 import cn.iocoder.yudao.framework.common.exception.ErrorCode;
-import cn.iocoder.yudao.framework.common.util.object.PageUtils;
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
 import cn.iocoder.yudao.module.pms.controller.admin.qhse.measure.vo.IotMeasureBookPageReqVO;
 import cn.iocoder.yudao.module.pms.controller.admin.qhse.measure.vo.IotMeasureBookSaveReqVO;
-import cn.iocoder.yudao.module.pms.dal.dataobject.IotDeviceDO;
 import cn.iocoder.yudao.module.pms.dal.dataobject.qhse.measure.IotMeasureBookDO;
 import cn.iocoder.yudao.module.pms.dal.mysql.qhse.measure.IotMeasureBookMapper;
 import cn.iocoder.yudao.module.system.service.dept.DeptService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.util.*;
-import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.framework.common.pojo.PageParam;
-import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
-
 
 import javax.annotation.Resource;
+import java.util.Date;
+import java.util.HashSet;
+import java.util.Objects;
+import java.util.Set;
 
 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
 
@@ -44,6 +41,7 @@ public class IotMeasureBookServiceImpl implements IotMeasureBookService {
         IotMeasureBookDO iotMeasureBook = BeanUtils.toBean(createReqVO, IotMeasureBookDO.class);
         iotMeasureBook.setMeasureCode("JLQJ"+ DateUtil.format(new Date(), "yyyyMMddHHmmss"));
         iotMeasureBook.setDeleted(false);
+        //处理计量器具的检测是否过期
         iotMeasureBookMapper.insert(iotMeasureBook);
         // 返回
         return iotMeasureBook.getId();

+ 25 - 9
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/service/qhse/soc/IotSocSummaryServiceImpl.java

@@ -4,7 +4,6 @@ import cn.iocoder.yudao.framework.common.exception.ErrorCode;
 import cn.iocoder.yudao.framework.common.exception.ServiceException;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
-import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
 import cn.iocoder.yudao.module.pms.controller.admin.qhse.soc.vo.IotSocSummaryPageReqVO;
 import cn.iocoder.yudao.module.pms.controller.admin.qhse.soc.vo.IotSocSummarySaveReqVO;
 import cn.iocoder.yudao.module.pms.dal.dataobject.qhse.soc.IotSocSourceDO;
@@ -13,13 +12,15 @@ import cn.iocoder.yudao.module.pms.dal.mysql.qhse.soc.IotSocSourceMapper;
 import cn.iocoder.yudao.module.pms.dal.mysql.qhse.soc.IotSocSummaryMapper;
 import cn.iocoder.yudao.module.system.api.dept.DeptApi;
 import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
+import cn.iocoder.yudao.module.system.service.dept.DeptService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
 
 import javax.annotation.Resource;
-
+import java.util.HashSet;
 import java.util.Objects;
+import java.util.Set;
 
 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
 
@@ -38,19 +39,29 @@ public class IotSocSummaryServiceImpl implements IotSocSummaryService {
     private DeptApi deptApi;
     @Autowired
     private IotSocSourceMapper iotSocSourceMapper;
+    @Autowired
+    private DeptService deptService;
 
     @Override
     public Long createIotSocSummary(IotSocSummarySaveReqVO createReqVO) {
         // 插入
         IotSocSummaryDO iotSocSummary = BeanUtils.toBean(createReqVO, IotSocSummaryDO.class);
-        Long loginUserDeptId = SecurityFrameworkUtils.getLoginUserDeptId();
-        String loginUserNickname = SecurityFrameworkUtils.getLoginUserNickname();
-        iotSocSummary.setUserName(loginUserNickname);
-        if (Objects.nonNull(loginUserDeptId)) {
-            iotSocSummary.setDeptId(loginUserDeptId);
-            DeptRespDTO dept = deptApi.getDept(loginUserDeptId);
+//        Long loginUserDeptId = SecurityFrameworkUtils.getLoginUserDeptId();
+//        String loginUserNickname = SecurityFrameworkUtils.getLoginUserNickname();
+        iotSocSummary.setUserName(createReqVO.getUserName());
+        if (Objects.nonNull(createReqVO.getDeptId())) {
+            iotSocSummary.setDeptId(createReqVO.getDeptId());
+            DeptRespDTO dept = deptApi.getDept(createReqVO.getDeptId());
             if (Objects.isNull(dept)) {throw new ServiceException(new ErrorCode(3,"不存在"));}
             iotSocSummary.setDeptName(dept.getName());
+            Long parentId = dept.getParentId();
+            if (Objects.nonNull(parentId)) {
+                DeptRespDTO dept1 = deptApi.getDept(parentId);
+                if (Objects.nonNull(dept1)) {
+                    iotSocSummary.setProject(parentId);
+                    iotSocSummary.setProjectName(dept1.getName());
+                }
+            }
         }
         if (Objects.nonNull(iotSocSummary.getSocClass())) {
             IotSocSourceDO iotSocSourceDO = iotSocSourceMapper.selectById(iotSocSummary.getSocClass());
@@ -93,7 +104,12 @@ public class IotSocSummaryServiceImpl implements IotSocSummaryService {
 
     @Override
     public PageResult<IotSocSummaryDO> getIotSocSummaryPage(IotSocSummaryPageReqVO pageReqVO) {
-        return iotSocSummaryMapper.selectPage(pageReqVO);
+        Set<Long> ids = new HashSet<>();
+        if (Objects.nonNull(pageReqVO.getDeptId())) {
+            ids = deptService.getChildDeptIdListFromCache(pageReqVO.getDeptId());
+            ids.add(pageReqVO.getDeptId());
+        }
+        return iotSocSummaryMapper.selectPage(pageReqVO, ids);
     }
 
 }