From 4014aef3bc15d24ffbb7dacfdffece321c1b9158 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期五, 20 九月 2024 15:26:55 +0800
Subject: [PATCH] #

---
 zy-acs-flow/src/i18n/en.js                                                            |    1 +
 zy-acs-manager/src/main/resources/mapper/manager/AgvMapper.xml                        |    3 +++
 zy-acs-flow/src/i18n/zh.js                                                            |    3 ++-
 zy-acs-flow/src/page/agv/AgvListFilter.jsx                                            |   19 ++++++++++++++++++-
 zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/AgvController.java |   32 +++++++++++++++++++++++++++-----
 5 files changed, 51 insertions(+), 7 deletions(-)

diff --git a/zy-acs-flow/src/i18n/en.js b/zy-acs-flow/src/i18n/en.js
index 0631c10..eef5fe8 100644
--- a/zy-acs-flow/src/i18n/en.js
+++ b/zy-acs-flow/src/i18n/en.js
@@ -349,6 +349,7 @@
                 stage: "stage",
                 chargeLine: "charge battery",
                 error: "error",
+                online: "online",
             },
             agvDetail: {
                 uuid: "uuid",
diff --git a/zy-acs-flow/src/i18n/zh.js b/zy-acs-flow/src/i18n/zh.js
index 3a0c4c7..7c2c629 100644
--- a/zy-acs-flow/src/i18n/zh.js
+++ b/zy-acs-flow/src/i18n/zh.js
@@ -348,12 +348,13 @@
                 stage: "鑳岀瘬鏁伴噺",
                 chargeLine: "鍏呯數鐢甸噺",
                 error: "寮傚父",
+                online: "鍦ㄧ嚎",
             },
             agvDetail: {
                 uuid: "缂栧彿",
                 agvId: "杞﹁締",
                 title: "鏍囬",
-                pos: "瀹氫綅鐐�",
+                pos: "瀹氫綅",
                 code: "鍦伴潰鐮�",
                 lastCode: "涓婃瀹氫綅",
                 codeOffsert: "鍦伴潰鐮佸亸绉�",
diff --git a/zy-acs-flow/src/page/agv/AgvListFilter.jsx b/zy-acs-flow/src/page/agv/AgvListFilter.jsx
index ff658b6..e31a93f 100644
--- a/zy-acs-flow/src/page/agv/AgvListFilter.jsx
+++ b/zy-acs-flow/src/page/agv/AgvListFilter.jsx
@@ -9,15 +9,32 @@
 import BusinessIcon from '@mui/icons-material/Business';
 import LocalShippingIcon from '@mui/icons-material/LocalShipping';
 import SupervisorAccountIcon from '@mui/icons-material/SupervisorAccount';
+import FiberManualRecordIcon from '@mui/icons-material/FiberManualRecord';
+import request from '@/utils/request'
 
 export const AgvListFilter = () => {
     const translate = useTranslate();
+
+    const [models, setModels] = React.useState([]);
+
+    React.useEffect(() => {
+        request.post('/agvModel/list', {}).then(res => {
+            if (res?.data?.code === 200) {
+                setModels(res.data.data);
+            }
+        })
+    }, [])
 
     return (
         <Box width="13em" minWidth="13em" order={-1} mr={2} mt={5}>
             <FilterLiveSearch hiddenLabel source='uuid' label={translate('table.field.agv.uuid')} />
 
-            <FilterList label="Size" icon={<BusinessIcon />}>
+            <FilterList
+                label={translate('table.field.agvDetail.pos')}
+                icon={<FiberManualRecordIcon />}
+            >
+                <FilterListItem label="common.enums.true" value={{ pos: '1' }} />
+                <FilterListItem label="common.enums.false" value={{ pos: '0' }} />
             </FilterList>
 
             <FilterList label="Sector" icon={<LocalShippingIcon />}>
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/AgvController.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/AgvController.java
index cc7a045..4a440a2 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/AgvController.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/AgvController.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.zy.acs.framework.common.Cools;
 import com.zy.acs.framework.common.R;
+import com.zy.acs.framework.exception.CoolException;
 import com.zy.acs.manager.common.annotation.OperationLog;
 import com.zy.acs.manager.common.domain.BaseParam;
 import com.zy.acs.manager.common.domain.KeyValVo;
@@ -12,6 +13,7 @@
 import com.zy.acs.manager.common.utils.ExcelUtil;
 import com.zy.acs.manager.manager.controller.result.AgvResult;
 import com.zy.acs.manager.manager.entity.Agv;
+import com.zy.acs.manager.manager.entity.AgvDetail;
 import com.zy.acs.manager.manager.service.AgvDetailService;
 import com.zy.acs.manager.manager.service.AgvService;
 import com.zy.acs.manager.manager.service.CodeService;
@@ -19,6 +21,7 @@
 import com.zy.acs.manager.system.controller.BaseController;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
@@ -83,13 +86,27 @@
     @PreAuthorize("hasAuthority('manager:agv:save')")
     @OperationLog("Create Agv")
     @PostMapping("/agv/save")
+    @Transactional
     public R save(@RequestBody Agv agv) {
-        agv.setCreateBy(getLoginUserId());
-        agv.setCreateTime(new Date());
-        agv.setUpdateBy(getLoginUserId());
-        agv.setUpdateTime(new Date());
+        if (agvService.count(new LambdaQueryWrapper<Agv>()
+                .eq(Agv::getUuid, agv.getUuid())) > 0) {
+            return R.error("agv no has already exist !");
+        }
+        Long loginUserId = getLoginUserId();
+        Date now = new Date();
+        agv.setCreateBy(loginUserId);
+        agv.setCreateTime(now);
+        agv.setUpdateBy(loginUserId);
+        agv.setUpdateTime(now);
         if (!agvService.save(agv)) {
-            return R.error("Save Fail");
+            throw new CoolException("Save Fail");
+        }
+        AgvDetail agvDetail = new AgvDetail();
+        agvDetail.setAgvId(agv.getId());
+        agvDetail.setCreateBy(loginUserId);
+        agvDetail.setUpdateBy(loginUserId);
+        if (!agvDetailService.save(agvDetail)) {
+            throw new CoolException("Save Fail");
         }
         return R.ok("Save Success").add(agv);
     }
@@ -98,6 +115,11 @@
     @OperationLog("Update Agv")
     @PostMapping("/agv/update")
     public R update(@RequestBody Agv agv) {
+        if (agvService.count(new LambdaQueryWrapper<Agv>()
+                .eq(Agv::getUuid, agv.getUuid())
+                .ne(Agv::getId, agv.getId())) > 0) {
+            return R.error("Update Fail");
+        }
         agv.setUpdateBy(getLoginUserId());
         agv.setUpdateTime(new Date());
         if (!agvService.updateById(agv)) {
diff --git a/zy-acs-manager/src/main/resources/mapper/manager/AgvMapper.xml b/zy-acs-manager/src/main/resources/mapper/manager/AgvMapper.xml
index 64a3c34..d22bc46 100644
--- a/zy-acs-manager/src/main/resources/mapper/manager/AgvMapper.xml
+++ b/zy-acs-manager/src/main/resources/mapper/manager/AgvMapper.xml
@@ -13,6 +13,9 @@
         <if test="param.uuid != null">
             AND ma.uuid = #{param.uuid}
         </if>
+        <if test="param.pos != null">
+            AND mad.pos = #{param.pos}
+        </if>
         order by ma.uuid asc
     </select>
 

--
Gitblit v1.9.1