From ce34d9d0ac101f816a0fc7f798607adfe44d7885 Mon Sep 17 00:00:00 2001
From: 唐耀东 <18861537@qq.com>
Date: 星期五, 18 二月 2022 20:59:17 +0800
Subject: [PATCH] 问题修改

---
 ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/DevEquipmentServiceImpl.java |   47 +++++++++++++++++++++++++++++++++++++----------
 1 files changed, 37 insertions(+), 10 deletions(-)

diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/DevEquipmentServiceImpl.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/DevEquipmentServiceImpl.java
index 63ef9bd..f0ffce9 100644
--- a/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/DevEquipmentServiceImpl.java
+++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/DevEquipmentServiceImpl.java
@@ -4,13 +4,17 @@
 import cn.hutool.http.HttpStatus;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.common.utils.DataFormatUtils;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.PageUtils;
 import com.ruoyi.common.core.page.PagePlus;
 import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.oa.domain.BsSchool;
 import com.ruoyi.oa.domain.DevEquipmentCode;
 import com.ruoyi.oa.mapper.DevEquipmentCodeMapper;
+import com.ruoyi.oa.service.IBsSchoolService;
+import com.ruoyi.oa.service.IDevEquipmentCodeService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
@@ -37,7 +41,10 @@
 public class DevEquipmentServiceImpl extends ServicePlusImpl<DevEquipmentMapper, DevEquipment, DevEquipmentVo> implements IDevEquipmentService {
 
     @Autowired
-    private DevEquipmentCodeMapper devEquipmentCodeMapper;
+    private IDevEquipmentCodeService devEquipmentCodeService;
+
+    @Autowired
+    private IBsSchoolService iBsSchoolService;
 
     @Override
     public DevEquipmentVo queryById(Long id) {
@@ -130,13 +137,33 @@
         // 璁惧涓嶅瓨鍦ㄥ垯鏂板缓
         else {
             if(bo.isRegister()) {
+                BsSchool bsSchool = iBsSchoolService.getById(5);
+                if(bsSchool == null){
+                    throw new ServiceException("瀛︽牎缂栧彿涓嶅瓨鍦紝璇峰厛鍒扮嚎涓婄淮鎶�", HttpStatus.HTTP_PARTIAL);
+                }
                 // 鍏堟牴鎹簭鍒楃爜鐢熸垚搴忓垪鍙�
+                List<DevEquipmentCode> devEquipmentCodeList = devEquipmentCodeService.list();
                 DevEquipmentCode c = new DevEquipmentCode();
-                c.setCreateTime(DateUtils.getNowDate());
-                devEquipmentCodeMapper.insert(c);
+                if(devEquipmentCodeList != null && devEquipmentCodeList.size() > 0){
+                    c = devEquipmentCodeList.get(0);
+                }else{
+                    c.setCreateTime(DateUtils.getNowDate());
+                    c.setCode(Long.parseLong("1"));
+                    c.setVersion(1);
+                    devEquipmentCodeService.save(c);
+                }
+                int i = baseMapper.updateCode(c.getId(), c.getVersion());
+                if(i <= 0){
+                    throw new ServiceException("璁惧缂栧彿琛ㄨ鍗犵敤锛岃绋嶅悗鍦ㄦ牎楠�", HttpStatus.HTTP_PARTIAL);
+                }
                 // 娣诲姞璁惧
                 DevEquipment add = BeanUtil.toBean(bo, DevEquipment.class);
-                add.setSerialNumber(c.getId());
+                String schoolCodeHex16 = "0".equals(Integer.toHexString(Integer.parseInt(bsSchool.getCode()))) ? "0000" : Integer.toHexString(Integer.parseInt(bsSchool.getCode()));//DataFormatUtils.strTo16(bsSchool.getCode());
+                String codeHex16 =DataFormatUtils.padLeft(Integer.toHexString(Integer.parseInt(c.getCode().toString())), 4);
+                String hostId = (schoolCodeHex16 + codeHex16).toUpperCase();
+                add.setHostId(hostId);
+                add.setSerialNumber(c.getCode());
+                add.setUseStatus("1");
                 baseMapper.insert(add);
                 return add;
             }else{
@@ -167,12 +194,12 @@
 //        if (StringUtils.isEmpty(bo.getFrequencyBand())) {
 //            po.setFrequencyBand(bo.getFrequencyBand());
 //        }
-//        if (null != bo.getBatchId()) {
-//            po.setBatchId(bo.getBatchId());
-//        }
-//        if (StringUtils.isEmpty(bo.getRemarks())) {
-//            po.setRemarks(bo.getRemarks());
-//        }
+        if (null != bo.getBatchId()) {
+            po.setBatchId(bo.getBatchId());
+        }
+        if (StringUtils.isNotBlank(bo.getRemarks())) {
+            po.setRemarks(bo.getRemarks());
+        }
         baseMapper.updateById(po);
         return po;
     }

--
Gitblit v1.9.1