From 13c4fa002c10de213a00a45d56a8535bc805393c Mon Sep 17 00:00:00 2001
From: 唐耀东 <18861537@qq.com>
Date: 星期二, 10 五月 2022 17:50:40 +0800
Subject: [PATCH] 提交代码

---
 ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/DevEquipmentServiceImpl.java |   91 ++++++++++++++++++++++++++++++++++++---------
 1 files changed, 73 insertions(+), 18 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 4bfe12a..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,12 +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;
@@ -36,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) {
@@ -123,45 +131,92 @@
         DevEquipment po = baseMapper.selectOne(new QueryWrapper<DevEquipment>().lambda()
             .eq(DevEquipment::getSequenceCode, bo.getSequenceCode()));
         // 璁惧瀛樺湪锛岀洿鎺ヨ繑鍥炶澶囦俊鎭�
-        if (StringUtils.isEmpty(po)) {
+        if (StringUtils.isNotEmpty(po)) {
             return po;
         }
         // 璁惧涓嶅瓨鍦ㄥ垯鏂板缓
         else {
-            // 鍏堟牴鎹簭鍒楃爜鐢熸垚搴忓垪鍙�
-            DevEquipmentCode c = new DevEquipmentCode();
-            c.setSequenceCode(bo.getSequenceCode());
-            devEquipmentCodeMapper.insert(c);
-            // 娣诲姞璁惧
-            DevEquipment add = BeanUtil.toBean(bo, DevEquipment.class);
-            add.setSerialNumber(c.getId());
-            baseMapper.insert(add);
-            return add;
+            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();
+                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);
+                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{
+                return po;
+            }
         }
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public DevEquipment equipmentEdit(DevEquipmentBo bo) {
         DevEquipment po = baseMapper.selectById(bo.getId());
+        if (po == null) {
+            throw new ServiceException("娌℃湁璁惧淇℃伅", HttpStatus.HTTP_PARTIAL);
+        }
         if (null != bo.getSchoolId()) {
             po.setSchoolId(bo.getSchoolId());
         }
-        if (StringUtils.isEmpty(bo.getHostId())) {
+        if (StringUtils.isNotBlank(bo.getHostId())) {
             po.setHostId(bo.getHostId());
         }
-        if (StringUtils.isEmpty(bo.getNetworkId())) {
-            po.setNetworkId(bo.getNetworkId());
+        if(StringUtils.isNotBlank(bo.getEdition())){
+            po.setEdition(bo.getEdition());
         }
-        if (StringUtils.isEmpty(bo.getFrequencyBand())) {
-            po.setFrequencyBand(bo.getFrequencyBand());
-        }
+//        if (StringUtils.isEmpty(bo.getNetworkId())) {
+//            po.setNetworkId(bo.getNetworkId());
+//        }
+//        if (StringUtils.isEmpty(bo.getFrequencyBand())) {
+//            po.setFrequencyBand(bo.getFrequencyBand());
+//        }
         if (null != bo.getBatchId()) {
             po.setBatchId(bo.getBatchId());
         }
-        if (StringUtils.isEmpty(bo.getRemarks())) {
+        if (StringUtils.isNotBlank(bo.getRemarks())) {
             po.setRemarks(bo.getRemarks());
         }
         baseMapper.updateById(po);
         return po;
     }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void submitComment(DevEquipmentBo bo) {
+        DevEquipment po = baseMapper.selectById(bo.getId());
+        if (po == null) {
+            throw new ServiceException("娌℃湁璁惧淇℃伅", HttpStatus.HTTP_PARTIAL);
+        }
+        if (null != bo.getBatchId()) {
+            po.setBatchId(bo.getBatchId());
+        }
+        if (StringUtils.isNotBlank(bo.getRemarks())) {
+            po.setRemarks(bo.getRemarks());
+        }
+        baseMapper.updateById(po);
+    }
 }

--
Gitblit v1.9.1