3254194295 1 سال پیش
والد
کامیت
4c147d9325

+ 1 - 1
platform-dao/src/main/java/com/platform/dao/dto/sb/SbMeasureLogDTO.java

@@ -35,7 +35,7 @@ public class SbMeasureLogDTO extends BaseDTO implements Serializable {
     private String positionNo;
 
     /**
-     * 1:检定,2:更换,3:维修,4:退库,5:报废
+     * 1:检定,2:更换,3:维修,4:退库,5:报废 SbMeasureLogOtherTypeEnum
      */
     private Integer otherType;
 

+ 2 - 0
platform-dao/src/main/java/com/platform/dao/entity/sb/SbInfo.java

@@ -20,6 +20,8 @@ import java.time.LocalDateTime;
 @Table(name = "t_sb_info")
 @Data
 public class SbInfo implements Serializable {
+    @Transient
+    private String positionName;
     /**
      * 强检:1,非强检:2
      */

+ 18 - 1
platform-dao/src/main/java/com/platform/dao/enums/SbMeasureLogOtherTypeEnum.java

@@ -46,7 +46,24 @@ public enum SbMeasureLogOtherTypeEnum {
     /**
      * 停用
      */
-    STOP(7);
+    STOP(7),
+    /**
+     * 报修
+     */
+    BAOXIU(8),
+    /**
+     * 修旧利废
+     */
+    XJLF(9),
+    /**
+     * 修改
+     */
+    UPDATE(20),
+    /**
+     * 启用
+     */
+    IN_USE(21)
+    ;
 
 
     private final Integer value;

+ 3 - 0
platform-dao/src/main/java/com/platform/dao/vo/export/sb/ExportYiBiaoSbInfoVO.java

@@ -47,6 +47,9 @@ public class ExportYiBiaoSbInfoVO implements Serializable {
     @Excel(name = "设备名称")
     private String name;
 
+    @Excel(name = "设备等级1:A级,2:B级,3:C级")
+    private Integer level;
+
     /**
      * 设备名称
      */

+ 5 - 0
platform-dao/src/main/resources/mapper/sb/SbInfoMapper.xml

@@ -208,6 +208,11 @@ sb.yang_cheng
             or sb.position_no like concat('%',#{keyword},'%')
             or sb.remark like concat('%',#{keyword},'%')
             or sb.zzh like concat('%',#{keyword},'%')
+            or position.name like concat('%',#{keyword},'%')
+            or sb.pp_no like concat('%',#{keyword},'%')
+            or sb.model like concat('%',#{keyword},'%')
+            or sb.zzh like concat('%',#{keyword},'%')
+
             )
         </if>
         <if test="name != null and name!=''">

+ 4 - 0
platform-rest/src/main/java/com/platform/rest/controller/sb/SbInfoController.java

@@ -155,6 +155,10 @@ public class SbInfoController {
     @PreAuthorize("@pms.hasPermission('sb-infos-edit')")
     public R update(@PathVariable("id") String id, @Validated({UpdateGroup.class}) @RequestBody SbInfoDTO sbInfoDTO) {
         sbInfoService.modModelByDTO(sbInfoDTO);
+        SbInfo sbInfo = sbInfoService.getModelById(sbInfoDTO.getId());
+        if (sbInfo.getUseType()!=null&&sbInfo.getUseType()==4){
+            sbMeasureLogService.addUseOrUnUseLog(sbInfo.getId(),SbMeasureLogOtherTypeEnum.UPDATE.getValue(),"修改");
+        }
         return new R<>();
     }
 

+ 17 - 0
platform-rest/src/main/java/com/platform/rest/controller/sb/SbMeasureLogController.java

@@ -1,14 +1,22 @@
 package com.platform.rest.controller.sb;
 
 import com.platform.common.bean.AbstractPageResultBean;
+import com.platform.common.model.OauthUser;
+import com.platform.common.model.UserInfo;
 import com.platform.common.util.BeanConverterUtil;
+import com.platform.common.util.IdGeneratorUtils;
 import com.platform.common.util.R;
+import com.platform.common.util.SecurityUtils;
 import com.platform.common.validation.group.AddGroup;
 import com.platform.common.validation.group.UpdateGroup;
 import com.platform.dao.dto.sb.BatchSbMeasureLog;
 import com.platform.dao.dto.sb.SbMeasureLogDTO;
+import com.platform.dao.entity.sb.SbInfo;
 import com.platform.dao.entity.sb.SbMeasureLog;
 import com.platform.dao.entity.sb.SbUpdateLog;
+import com.platform.dao.enums.SbInfoStatusEnum;
+import com.platform.dao.enums.SbMeasureLogOtherTypeEnum;
+import com.platform.dao.enums.SysFileTypeEnum;
 import com.platform.dao.mapper.sb.SbUpdateLogMapper;
 import com.platform.dao.util.ExcelUtil;
 import com.platform.dao.vo.export.sb.ExportSbMeasureLogVO;
@@ -23,6 +31,7 @@ import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
+import java.time.LocalDateTime;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -42,6 +51,14 @@ public class SbMeasureLogController {
 
     private final SbUpdateLogMapper sbUpdateLogMapper;
 
+    @SysLog("新增设备计量记录")
+    @PostMapping("/add/log")
+    public R saveSbMeasureLog(@Validated({AddGroup.class}) @RequestBody SbMeasureLogDTO dto) {
+        sbMeasureLogService.saveSbMeasureLog(dto);
+        return new R<>();
+    }
+
+
     /**
      * 通过id查询标准
      *

+ 4 - 0
platform-service/src/main/java/com/platform/service/sb/SbMeasureLogService.java

@@ -17,6 +17,10 @@ import java.util.List;
  * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
  */
 public interface SbMeasureLogService extends IBaseService<SbMeasureLog, SbMeasureLogDTO> {
+
+    void addUseOrUnUseLog(String sbId,Integer type,String operate);
+
+    void saveSbMeasureLog(SbMeasureLogDTO sbMeasureLogDTO);
     /**
      * 级联删除
      * 删除出库单与出库详情,同时要更新库存

+ 39 - 4
platform-service/src/main/java/com/platform/service/sb/impl/SbMeasureLogServiceImpl.java

@@ -15,10 +15,7 @@ import com.platform.dao.dto.sb.SbInfoDTO;
 import com.platform.dao.dto.sb.SbMeasureLogDTO;
 import com.platform.dao.dto.upms.SysFileDTO;
 import com.platform.dao.entity.check.CheckProjectStandardRelation;
-import com.platform.dao.entity.sb.SbChangeRecord;
-import com.platform.dao.entity.sb.SbInfo;
-import com.platform.dao.entity.sb.SbLocation;
-import com.platform.dao.entity.sb.SbMeasureLog;
+import com.platform.dao.entity.sb.*;
 import com.platform.dao.entity.upms.SysFile;
 import com.platform.dao.enums.*;
 import com.platform.dao.mapper.sb.*;
@@ -61,6 +58,44 @@ public class SbMeasureLogServiceImpl extends BaseServiceImpl<SbMeasureLogMapper,
     private final SbChangeRecordMapper sbChangeRecordMapper;
     private final SbMeasureLogMapper sbMeasureLogMapper;
 
+    @Override
+    public void addUseOrUnUseLog(String sbId,Integer type,String operate) {
+        SbInfo sbInfoVOS = sbInfoMapper.selectByPrimaryKey(sbId);
+        if (sbInfoVOS.getPositionId()!=null){
+            SbPosition position = sbPositionMapper.selectByPrimaryKey(sbInfoVOS.getPositionId());
+            if (position!=null){
+                sbInfoVOS.setPositionName(position.getName());
+            }
+        }
+        if (sbInfoVOS != null ) {
+            SbMeasureLogDTO log = new SbMeasureLogDTO();
+            log.setOtherType(type);
+            log.setSbId(sbInfoVOS.getId());
+            String str = "设备位号为:" + (sbInfoVOS.getPositionNo() == null ? "" : sbInfoVOS.getPositionNo() )+ ",设备位置为:" + (sbInfoVOS.getPositionName() == null ? "" : sbInfoVOS.getPositionName()) + "的设备:" + sbInfoVOS.getName() + "于" + log.getCreatedTime() + "被" + log.getCreatedUserName() + type;
+
+            log.setContent(str);
+            super.saveModelByDTO(log);
+        }
+    }
+
+    @Override
+    public void saveSbMeasureLog(SbMeasureLogDTO sbMeasureLogDTO) {
+        SbMeasureLog log = super.saveModelByDTO(sbMeasureLogDTO);
+        sysFileService.saveFile(log.getId(), SysFileTypeEnum.SB_MEASURE_LOG_CREDENTIAL.getValue(),sbMeasureLogDTO.getSbMeasureLogCredential());
+        if (sbMeasureLogDTO.getOtherType()!=null&&(sbMeasureLogDTO.getOtherType().equals(SbMeasureLogOtherTypeEnum.IN_STORE.getValue()) ||
+                sbMeasureLogDTO.getOtherType().equals(SbMeasureLogOtherTypeEnum.BAO_FEI.getValue()))){
+            SbInfo sbInfo = new SbInfo();
+            sbInfo.setPositionNo("暂无");
+            sbInfo.setPositionNo(sbMeasureLogDTO.getSbId());
+            if (sbMeasureLogDTO.getOtherType().equals(SbMeasureLogOtherTypeEnum.IN_STORE.getValue())) {
+                sbInfo.setStatus(SbInfoStatusEnum.IN_BACK.getValue());
+            }else if (sbMeasureLogDTO.getOtherType().equals(SbMeasureLogOtherTypeEnum.BAO_FEI.getValue())){
+                sbInfo.setStatus(SbInfoStatusEnum.SCRAPED.getValue());
+            }
+            sbInfoMapper.updateByPrimaryKeySelective(sbInfo);
+        }
+    }
+
     @Override
     public boolean cascadingDeleteByKey(String id) {
         int result = mapper.deleteByPrimaryKey(id);

+ 18 - 16
platform-service/src/main/java/com/platform/service/sb/impl/SbStatusLogServiceImpl.java

@@ -10,20 +10,14 @@ import com.platform.dao.bean.MyPage;
 import com.platform.dao.bean.MyVOPage;
 import com.github.pagehelper.PageHelper;
 import com.platform.dao.dto.sb.SbInfoDTO;
-import com.platform.dao.entity.sb.SbInfo;
-import com.platform.dao.entity.sb.SbMeasureLog;
-import com.platform.dao.entity.sb.SbStopLog;
+import com.platform.dao.entity.sb.*;
 import com.platform.dao.entity.upms.SysUser;
 import com.platform.dao.enums.SbInfoStatusEnum;
 import com.platform.dao.enums.SbMeasureLogOtherTypeEnum;
-import com.platform.dao.mapper.sb.SbInfoMapper;
-import com.platform.dao.mapper.sb.SbMeasureLogMapper;
-import com.platform.dao.mapper.sb.SbStopLogMapper;
+import com.platform.dao.mapper.sb.*;
 import com.platform.dao.mapper.upms.SysUserMapper;
 import com.platform.dao.vo.query.sb.SbStatusLogVO;
 import com.platform.dao.dto.sb.SbStatusLogDTO;
-import com.platform.dao.entity.sb.SbStatusLog;
-import com.platform.dao.mapper.sb.SbStatusLogMapper;
 import com.platform.dao.vo.sb.SbInfoVO;
 import com.platform.service.sb.SbStatusLogService;
 import org.springframework.stereotype.Service;
@@ -54,6 +48,7 @@ public class SbStatusLogServiceImpl extends BaseServiceImpl<SbStatusLogMapper, S
     private final SbStatusLogMapper sbStatusLogMapper;
     private final SbStopLogMapper sbStopLogMapper;
     private final SbMeasureLogMapper sbMeasureLogMapper;
+    private final SbPositionMapper sbPositionMapper;
 
     @Override
     @Transactional(rollbackFor = Exception.class)
@@ -97,24 +92,31 @@ public class SbStatusLogServiceImpl extends BaseServiceImpl<SbStatusLogMapper, S
             if (model.getSbId()!=null) {
                 SbInfoDTO info = new SbInfoDTO();
                 info.setId(model.getSbId());
-                List<SbInfoVO> sbInfoVOS = sbInfoMapper.selectVOList(info);
+                SbInfo sbInfoVOS = sbInfoMapper.selectByPrimaryKey(model.getSbId());
+                if (sbInfoVOS.getPositionId()!=null){
+                    SbPosition position = sbPositionMapper.selectByPrimaryKey(sbInfoVOS.getPositionId());
+                    if (position!=null){
+                        sbInfoVOS.setPositionName(position.getName());
+                    }
+                }
                     List<SbMeasureLog> measureLogs = new ArrayList<>();
-                    if (sbInfoVOS != null && sbInfoVOS.size() > 0) {
-                        for (SbInfoVO vo : sbInfoVOS) {
+                    if (sbInfoVOS != null ) {
+//                        for (SbInfoVO vo : sbInfoVOS) {
                             SbMeasureLog log = new SbMeasureLog();
                             log.setOtherType(SbMeasureLogOtherTypeEnum.STOP.getValue());
                             log.setId(IdGeneratorUtils.getObjectId());
                             setCreateUserInfo(log);
-                            log.setSbId(vo.getId());
-                            String str = "设备位号为:" + (vo.getPositionNo() == null ? "" : vo.getPositionNo() )+ ",设备位置为:" + (vo.getPositionName() == null ? "" : vo.getPositionName()) + "的设备:" + vo.getName() + "于" + log.getCreatedTime() + "被" + log.getCreatedUserName() + "停用";
+                            log.setSbId(sbInfoVOS.getId());
+                            String str = "设备位号为:" + (sbInfoVOS.getPositionNo() == null ? "" : sbInfoVOS.getPositionNo() )+ ",设备位置为:" + (sbInfoVOS.getPositionName() == null ? "" : sbInfoVOS.getPositionName()) + "的设备:" + sbInfoVOS.getName() + "于" + log.getCreatedTime() + "被" + log.getCreatedUserName() + "停用";
 //                            stringBuffer.append("设备位号为:" + vo.getPositionNo() == null ? "" : vo.getPositionNo() + ",设备位置为:" + vo.getPositionName() == null ? "" : vo.getPositionName() + "的设备:" + vo.getName() + "于" + log.getCreatedTime() + "被" + log.getCreatedUserName() + "停用");
 //                            log.setContent(stringBuffer.toString());
                             log.setContent(str);
-                            measureLogs.add(log);
-                        }
+                            sbMeasureLogMapper.insert(log);
+//                            measureLogs.add(log);
+//                        }
 
 
-                    sbMeasureLogMapper.insertListforComplex(measureLogs);
+//                    sbMeasureLogMapper.insertListforComplex(measureLogs);
                 }
             }
         }