From 89a2971d0a728641f1745ae7acb41b4800592a38 Mon Sep 17 00:00:00 2001
From: ZY <zc857179121@qq.com>
Date: 星期四, 06 二月 2025 07:53:42 +0800
Subject: [PATCH] 四期
---
src/main/java/com/zy/asrs/entity/param/AgvMobileStartPakin.java | 2
src/main/java/com/zy/asrs/excel/ExcelOrder.java | 14 +
src/main/java/com/zy/asrs/task/OrderLogScheduler.java | 2
src/main/resources/四期sql/4.初始化1.txt | 5
src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java | 81 +++++++
src/main/java/com/zy/asrs/task/AutoMoveScheduler.java | 59 +++++
src/main/resources/四期sql/2.新增2楼库位.txt | 8
src/main/java/com/zy/asrs/utils/TimeUtils.java | 15 +
src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java | 85 ++++---
src/main/java/com/zy/asrs/service/AgvMobileService.java | 4
src/main/java/com/zy/asrs/service/AgvLocMastService.java | 3
src/main/java/com/zy/asrs/controller/OrderLogController.java | 66 ++++--
src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java | 4
src/main/java/com/zy/common/service/AgvCommonService.java | 29 ++
src/main/java/com/zy/asrs/controller/AgvMobileController.java | 9
src/main/java/com/zy/asrs/excel/CloseOrderReadListener.java | 84 ++++++++
src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java | 11 +
src/main/resources/四期sql/未上线前禁用库位.txt | 1
src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java | 85 ++++++++
src/main/resources/application.yml | 2
20 files changed, 478 insertions(+), 91 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/AgvMobileController.java b/src/main/java/com/zy/asrs/controller/AgvMobileController.java
index cdbcfae..76361f2 100644
--- a/src/main/java/com/zy/asrs/controller/AgvMobileController.java
+++ b/src/main/java/com/zy/asrs/controller/AgvMobileController.java
@@ -812,6 +812,15 @@
return R.ok();
}
+ @PostMapping("/hand/control/processed/v2")
+ @Transactional
+ @ManagerAuth(memo = "纭鍔犲伐瀹屾垚V2")
+ @Synchronized
+ public R processedV2(@RequestBody AgvMobileStartPakin param) {
+ agvMobileService.processedV2(param, getUserId());
+ return R.ok();
+ }
+
public static void main(String[] args) {
List<AgvLocDetl> agvLocDetls1 = new ArrayList<>();
diff --git a/src/main/java/com/zy/asrs/controller/OrderLogController.java b/src/main/java/com/zy/asrs/controller/OrderLogController.java
index b8e70ca..bbbad84 100644
--- a/src/main/java/com/zy/asrs/controller/OrderLogController.java
+++ b/src/main/java/com/zy/asrs/controller/OrderLogController.java
@@ -1,5 +1,6 @@
package com.zy.asrs.controller;
+import com.alibaba.excel.EasyExcel;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
@@ -8,13 +9,18 @@
import com.core.common.*;
import com.zy.asrs.entity.*;
import com.zy.asrs.entity.result.WrkTraceVo;
+import com.zy.asrs.excel.CloseOrderReadListener;
+import com.zy.asrs.excel.ExcelOrder;
import com.zy.asrs.service.*;
+import com.zy.asrs.service.impl.OrderServiceImpl;
import com.zy.common.web.BaseController;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import java.io.IOException;
import java.util.*;
@Slf4j
@@ -39,10 +45,12 @@
private LocDetlService locDetlService;
@Autowired
private MatService matService;
+ @Autowired
+ private OrderServiceImpl orderService;
@RequestMapping(value = "/orderLog/nav/list/auth")
@ManagerAuth
- public R navList(@RequestParam(required = false) String orderNo){
+ public R navList(@RequestParam(required = false) String orderNo) {
EntityWrapper<OrderLog> wrapper = new EntityWrapper<>();
if (!Cools.isEmpty(orderNo)) {
wrapper.like("order_no", orderNo);
@@ -70,15 +78,17 @@
@RequestMapping(value = "/orderLog/head/page/auth")
@ManagerAuth
- public R head(@RequestParam(defaultValue = "1")Integer curr,
- @RequestParam(defaultValue = "10")Integer limit,
- @RequestParam(required = false)String orderByField,
- @RequestParam(required = false)String orderByType,
- @RequestParam Map<String, Object> param){
+ public R head(@RequestParam(defaultValue = "1") Integer curr,
+ @RequestParam(defaultValue = "10") Integer limit,
+ @RequestParam(required = false) String orderByField,
+ @RequestParam(required = false) String orderByType,
+ @RequestParam Map<String, Object> param) {
EntityWrapper<OrderLog> wrapper = new EntityWrapper<>();
excludeTrash(param);
convert(param, wrapper);
- if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} else {
+ if (!Cools.isEmpty(orderByField)) {
+ wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
+ } else {
wrapper.orderBy("settle").orderBy("create_time", false);
}
wrapper.eq("status", 1);
@@ -87,12 +97,9 @@
@RequestMapping(value = "/orderLog/detl/all/auth")
@ManagerAuth
- public R head(@RequestParam Long orderId){
+ public R head(@RequestParam Long orderId) {
return R.ok().add(orderDetlLogService.selectList(new EntityWrapper<OrderDetlLog>().eq("order_id", orderId)));
}
-
-
-
@PostMapping(value = "/orderLog/wrk/trace/auth")
@@ -174,22 +181,24 @@
@RequestMapping(value = "/orderLog/list/auth")
@ManagerAuth
- public R list(@RequestParam(defaultValue = "1")Integer curr,
- @RequestParam(defaultValue = "10")Integer limit,
- @RequestParam(required = false)String orderByField,
- @RequestParam(required = false)String orderByType,
- @RequestParam Map<String, Object> param){
+ public R list(@RequestParam(defaultValue = "1") Integer curr,
+ @RequestParam(defaultValue = "10") Integer limit,
+ @RequestParam(required = false) String orderByField,
+ @RequestParam(required = false) String orderByType,
+ @RequestParam Map<String, Object> param) {
EntityWrapper<OrderLog> wrapper = new EntityWrapper<>();
excludeTrash(param);
convert(param, wrapper);
- if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
+ if (!Cools.isEmpty(orderByField)) {
+ wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
+ }
return R.ok(orderLogService.selectPage(new Page<>(curr, limit), wrapper));
}
- private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper){
- for (Map.Entry<String, Object> entry : map.entrySet()){
+ private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper) {
+ for (Map.Entry<String, Object> entry : map.entrySet()) {
String val = String.valueOf(entry.getValue());
- if (val.contains(RANGE_TIME_LINK)){
+ if (val.contains(RANGE_TIME_LINK)) {
String[] dates = val.split(RANGE_TIME_LINK);
wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
@@ -202,7 +211,7 @@
@RequestMapping(value = "/orderLog/export/auth")
@ManagerAuth
- public R export(@RequestBody JSONObject param){
+ public R export(@RequestBody JSONObject param) {
EntityWrapper<OrderLog> wrapper = new EntityWrapper<>();
List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
Map<String, Object> map = excludeTrash(param.getJSONObject("order"));
@@ -218,7 +227,7 @@
wrapper.like("id", condition);
Page<OrderLog> page = orderLogService.selectPage(new Page<>(0, 10), wrapper);
List<Map<String, Object>> result = new ArrayList<>();
- for (OrderLog order : page.getRecords()){
+ for (OrderLog order : page.getRecords()) {
Map<String, Object> map = new HashMap<>();
map.put("id", order.getId());
map.put("value", order.getOrderNo());
@@ -231,10 +240,21 @@
@ManagerAuth
public R query(@RequestBody JSONObject param) {
Wrapper<OrderLog> wrapper = new EntityWrapper<OrderLog>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val"));
- if (null != orderLogService.selectOne(wrapper)){
+ if (null != orderLogService.selectOne(wrapper)) {
return R.parse(BaseRes.REPEAT).add(getComment(Order.class, String.valueOf(param.get("key"))));
}
return R.ok();
}
+ /**
+ * 鏂囦欢涓婁紶,鍏抽棴鍗曟嵁
+ */
+ @PostMapping("/order/close")
+ @ResponseBody
+ @ManagerAuth
+ public R upload(MultipartFile file) throws IOException {
+ EasyExcel.read(file.getInputStream(), ExcelOrder.class, new CloseOrderReadListener(orderService)).sheet().doRead();
+ return R.ok();
+ }
+
}
diff --git a/src/main/java/com/zy/asrs/entity/param/AgvMobileStartPakin.java b/src/main/java/com/zy/asrs/entity/param/AgvMobileStartPakin.java
index 4bcb2d2..21694de 100644
--- a/src/main/java/com/zy/asrs/entity/param/AgvMobileStartPakin.java
+++ b/src/main/java/com/zy/asrs/entity/param/AgvMobileStartPakin.java
@@ -19,6 +19,8 @@
// 绔欑偣鐮�
private String devNo;
+ //璁㈠崟缂栧彿閲屾湁B鏄簩鍘傦紝G鏄笁鍘�
+ private String factory;
private List<CombParam> combParams;
diff --git a/src/main/java/com/zy/asrs/excel/CloseOrderReadListener.java b/src/main/java/com/zy/asrs/excel/CloseOrderReadListener.java
new file mode 100644
index 0000000..cad2151
--- /dev/null
+++ b/src/main/java/com/zy/asrs/excel/CloseOrderReadListener.java
@@ -0,0 +1,84 @@
+package com.zy.asrs.excel;
+
+import com.alibaba.excel.context.AnalysisContext;
+import com.alibaba.excel.read.listener.ReadListener;
+import com.alibaba.excel.util.ListUtils;
+import com.alibaba.fastjson.JSON;
+import com.zy.asrs.controller.AgvMobileController;
+import com.zy.asrs.entity.Order;
+import com.zy.asrs.service.OrderService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.List;
+
+public class CloseOrderReadListener implements ReadListener<ExcelOrder> {
+
+ private static final Logger log = LoggerFactory.getLogger(CloseOrderReadListener.class);
+
+
+ /**
+ * 姣忛殧5鏉″瓨鍌ㄦ暟鎹簱锛屽疄闄呬娇鐢ㄤ腑鍙互100鏉★紝鐒跺悗娓呯悊list 锛屾柟渚垮唴瀛樺洖鏀�
+ */
+ private static final int BATCH_COUNT = 300;
+ /**
+ * 缂撳瓨鐨勬暟鎹�
+ */
+ private List<ExcelOrder> cachedDataList = ListUtils.newArrayListWithExpectedSize(BATCH_COUNT);
+
+ private OrderService orderService;
+
+
+ /**
+ * 濡傛灉浣跨敤浜唖pring,璇蜂娇鐢ㄨ繖涓瀯閫犳柟娉曘�傛瘡娆″垱寤篖istener鐨勬椂鍊欓渶瑕佹妸spring绠$悊鐨勭被浼犺繘鏉�
+ *
+ * @param orderService
+ */
+ public CloseOrderReadListener(OrderService orderService) {
+ this.orderService = orderService;
+ }
+
+ /**
+ * 杩欎釜姣忎竴鏉℃暟鎹В鏋愰兘浼氭潵璋冪敤
+ *
+ * @param data one row value. Is is same as
+ * @param context
+ */
+ @Override
+ public void invoke(ExcelOrder data, AnalysisContext context) {
+ log.info("瑙f瀽鍒颁竴鏉℃暟鎹�:{}", JSON.toJSONString(data));
+ cachedDataList.add(data);
+ // 杈惧埌BATCH_COUNT浜嗭紝闇�瑕佸幓瀛樺偍涓�娆℃暟鎹簱锛岄槻姝㈡暟鎹嚑涓囨潯鏁版嵁鍦ㄥ唴瀛橈紝瀹规槗OOM
+ if (cachedDataList.size() >= BATCH_COUNT) {
+ saveData();
+ // 瀛樺偍瀹屾垚娓呯悊 list
+ cachedDataList = ListUtils.newArrayListWithExpectedSize(BATCH_COUNT);
+ }
+ }
+
+ /**
+ * 鎵�鏈夋暟鎹В鏋愬畬鎴愪簡 閮戒細鏉ヨ皟鐢�
+ *
+ * @param context
+ */
+ @Override
+ public void doAfterAllAnalysed(AnalysisContext context) {
+ // 杩欓噷涔熻淇濆瓨鏁版嵁锛岀‘淇濇渶鍚庨仐鐣欑殑鏁版嵁涔熷瓨鍌ㄥ埌鏁版嵁搴�
+ saveData();
+ log.info("鎵�鏈夋暟鎹В鏋愬畬鎴愶紒");
+ }
+
+ /**
+ * 鍔犱笂瀛樺偍鏁版嵁搴�
+ */
+ private void saveData() {
+ log.info("{}鏉℃暟鎹紝寮�濮嬫搷浣滄暟鎹簱锛�", cachedDataList.size());
+ for (ExcelOrder excelOrder : cachedDataList) {
+ Order order = orderService.selectByNo(excelOrder.getOrderNo());
+ if (order != null) {
+ orderService.updateSettle(order.getId(), 6L, 9529L);
+ }
+ }
+ log.info("瀛樺偍鏁版嵁搴撴垚鍔燂紒");
+ }
+}
diff --git a/src/main/java/com/zy/asrs/excel/ExcelOrder.java b/src/main/java/com/zy/asrs/excel/ExcelOrder.java
new file mode 100644
index 0000000..46bbe51
--- /dev/null
+++ b/src/main/java/com/zy/asrs/excel/ExcelOrder.java
@@ -0,0 +1,14 @@
+package com.zy.asrs.excel;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class ExcelOrder implements Serializable {
+
+ @ExcelProperty("鍗曟嵁缂栧彿")
+ private String orderNo;
+
+}
diff --git a/src/main/java/com/zy/asrs/service/AgvLocMastService.java b/src/main/java/com/zy/asrs/service/AgvLocMastService.java
index 0623e67..3806e6c 100644
--- a/src/main/java/com/zy/asrs/service/AgvLocMastService.java
+++ b/src/main/java/com/zy/asrs/service/AgvLocMastService.java
@@ -22,6 +22,9 @@
public void updateLocStsByLocNo(String locNo, String locSts, String barcode,Short containerType);
+ public void updateLocStsByLocNo(String locNo, String locSts, String barcode,Short containerType,String ctnNo);
+
+
public void updateLocStsByLocNo(String locNo, String locSts, String barcode,Short containerType,String locType,Short locType3);
public List<String> queryGroupEmptyStock(int floor);
diff --git a/src/main/java/com/zy/asrs/service/AgvMobileService.java b/src/main/java/com/zy/asrs/service/AgvMobileService.java
index 7e7db3d..37c8f59 100644
--- a/src/main/java/com/zy/asrs/service/AgvMobileService.java
+++ b/src/main/java/com/zy/asrs/service/AgvMobileService.java
@@ -62,6 +62,10 @@
* 纭鍔犲伐瀹屾垚
*/
String processed(AgvMobileStartPakin param, Long userId);
+ /**
+ * 纭鍔犲伐瀹屾垚锛屽洓鏈�
+ */
+ String processedV2(AgvMobileStartPakin param, Long userId);
/**
* 绌烘灦绂诲満
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java
index 9b308c5..e0edc63 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java
@@ -373,6 +373,17 @@
agvLocMast.setModiTime(new Date());
this.updateById(agvLocMast);
}
+
+ public void updateLocStsByLocNo(String locNo, String locSts, String barcode,Short containerType,String ctnNo) {
+ AgvLocMast agvLocMast = this.selectById(locNo);
+ agvLocMast.setLocSts(locSts);
+ agvLocMast.setBarcode(barcode);
+ agvLocMast.setLocType2(containerType);
+ agvLocMast.setCtnNo(ctnNo);
+ agvLocMast.setModiTime(new Date());
+ this.updateById(agvLocMast);
+ }
+
public void updateLocStsByLocNo(String locNo, String locSts, String barcode,Short containerType,String locType,Short locType3) {
AgvLocMast agvLocMast = this.selectById(locNo);
agvLocMast.setLocSts(locSts);
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
index f286e4d..41dc775 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
@@ -4,11 +4,11 @@
import com.core.common.BaseRes;
import com.core.common.Cools;
import com.core.exception.CoolException;
+import com.zy.asrs.constant.AsrsConstants;
import com.zy.asrs.entity.*;
import com.zy.asrs.entity.param.*;
import com.zy.asrs.service.*;
import com.zy.asrs.utils.CodeDetectionUtil;
-import com.zy.asrs.utils.OrderUtils;
import com.zy.common.model.DetlDto;
import com.zy.common.service.AgvCommonService;
import lombok.Synchronized;
@@ -797,14 +797,8 @@
agvWrkMastLogService.save(agvWrkMast);
agvWrkDetlLogService.save(agvWrkMast.getWrkNo());
String sourceLocNo = agvWrkMast.getSourceLocNo();
- //AgvLocMast newLocMast = agvCommonService.getLocNo(3, 1, false, false);
- // TODO: 鍥涙湡
+ AgvLocMast newLocMast = agvCommonService.getLocNo(3, 1, false, false);
List<AgvWrkDetl> agvWrkDetls = agvWrkDetlService.selectList(new EntityWrapper<AgvWrkDetl>().eq("supp_code", param.getBarcode()));
- String factory = null;
- if (!Cools.isEmpty(agvWrkDetls)) {
- factory = OrderUtils.getFactory(agvWrkDetls.get(0).getThreeCode());
- }
- AgvLocMast newLocMast = agvCommonService.getLocByLocRule(3, 1, factory);
if (newLocMast == null) {
throw new CoolException("鏃犲彲鐢ㄥ簱浣�");
}
@@ -849,6 +843,77 @@
return "ok";
}
+ /*
+ * 纭鍔犲伐瀹屾垚
+ */
+ @Override
+ @Transactional
+ public String processedV2(AgvMobileStartPakin param, Long userId) {
+ Date now = new Date();
+ AgvWrkMast agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("barcode", param.getBarcode()).eq("loc_no", param.getDevNo()));
+ if (Cools.isEmpty(agvWrkMast)) {
+ throw new CoolException("鏆傛棤褰撳墠璐ф灦鐨勫伐浣滄。");
+ }
+ if (agvWrkMast.getWrkSts() != 205) {
+ throw new CoolException("褰撳墠浠诲姟鏈畬鎴愶紝璇风‘璁�");
+ }
+ //鐢熸垚AGV宸ヤ綔鍘嗗彶妗� + 鐢熸垚AGV宸ヤ綔鏄庣粏鍘嗗彶妗�
+ agvWrkMastLogService.save(agvWrkMast);
+ agvWrkDetlLogService.save(agvWrkMast.getWrkNo());
+ String sourceLocNo = agvWrkMast.getSourceLocNo();
+ // TODO: 鍥涙湡
+ List<AgvWrkDetl> agvWrkDetls = agvWrkDetlService.selectList(new EntityWrapper<AgvWrkDetl>().eq("supp_code", param.getBarcode()));
+ String factory = param.getFactory();
+ AgvLocMast newLocMast = agvCommonService.getLocByLocRule(3, 1, factory);
+ if (newLocMast == null) {
+ throw new CoolException("鏃犲彲鐢ㄥ簱浣�");
+ }
+ agvWrkMast.setSourceLocNo(agvWrkMast.getLocNo());
+ agvWrkMast.setLocNo(newLocMast.getLocNo());
+ agvWrkMast.setIoType(57);
+ agvWrkMast.setWrkSts(201L);
+ agvWrkMast.setModiUser(userId);
+ agvWrkMast.setModiTime(now);
+ agvWrkMast.setIoTime(now);
+ // 鎵撴爣璁帮紝鑻ュ簱浣嶄笉澶燂紝鍏ュ簱鍒板埆鐨勬ゼ灞傦紝閭d箞闇�瑕佽法灞傜Щ搴�
+ if (!Cools.isEmpty(factory)){
+ if (newLocMast.getLev1() == 1 && factory.equals(AsrsConstants.SANCHANG)) {
+ agvWrkMast.setPacked("1");
+ } else if (newLocMast.getLev1() == 2 && factory.equals(AsrsConstants.ERCHANG)) {
+ agvWrkMast.setPacked("1");
+ }
+ }
+ if (!agvWrkMastService.update(agvWrkMast, new EntityWrapper<AgvWrkMast>().eq("wrk_no", agvWrkMast.getWrkNo()))) {
+ throw new CoolException("鏇存柊宸ヤ綔妗eけ璐�");
+ }
+
+ // 鏇存柊婧愮珯鐐� + 鐩爣搴撲綅鐘舵�� + 鍘嗗彶婧愬簱浣�
+ agvBasDevpService.updateLocStsAndBarcodeByDevNo(param.getDevNo(), "R", param.getBarcode(), agvWrkMast.getWhsType().shortValue());
+ agvLocMastService.updateLocStsByLocNo(newLocMast.getLocNo(), "S", agvWrkMast.getBarcode(), agvWrkMast.getWhsType().shortValue());
+ agvLocMastService.updateLocStsByLocNo(sourceLocNo, "O", "", (short) 30);
+ agvLocDetlService.delete(new EntityWrapper<AgvLocDetl>().eq("loc_no", sourceLocNo));
+
+ agvWrkDetls.forEach(agvWrkDetl -> {
+ for (AgvWrkDetl wrkDetl : param.getWrkDetls()) {
+ if (wrkDetl.getMatnr().equals(agvWrkDetl.getMatnr()) && wrkDetl.getThreeCode().equals(agvWrkDetl.getThreeCode())) {
+ agvWrkDetl.setAnfme(wrkDetl.getAnfme());
+ break;
+ }
+ }
+ agvWrkDetl.setProcessSts(2);
+ agvWrkDetl.setOrderNo(agvWrkDetl.getOrderNo().substring(2));
+ agvWrkDetl.setModiUser(userId);
+ agvWrkDetl.setModiTime(now);
+ agvWrkDetl.setIoTime(now);
+ if (!agvWrkDetlService.update(agvWrkDetl, new EntityWrapper<AgvWrkDetl>()
+ .eq("matnr", agvWrkDetl.getMatnr())
+ .eq("three_code", agvWrkDetl.getThreeCode())
+ .eq("supp_code", param.getBarcode()))) {
+ throw new CoolException("鏇存柊宸ヤ綔鏄庣粏澶辫触");
+ }
+ });
+ return "ok";
+ }
/*
* 绔欑偣鍥為��
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
index d65682c..383ea3b 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
@@ -16,6 +16,8 @@
import com.zy.asrs.service.*;
import com.zy.common.service.AgvCommonService;
import com.zy.common.utils.HttpHandler;
+import com.zy.system.entity.Config;
+import com.zy.system.service.ConfigService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@@ -64,6 +66,8 @@
private AgvCommonService agvCommonService;
@Autowired
private AgvWrkMastService agvWrkMastService;
+ @Autowired
+ private ConfigService configService;
public Boolean updateWrkStsByWrkNo(int wrkNo, long wrkSts) {
@@ -227,46 +231,51 @@
agvWrkMast.setWrkNo(-agvWrkMast.getWrkNo());
}
agvTaskCreateParam.setTaskCode(agvWrkMast.getWrkNo().toString());
- switch (agvWrkMast.getIoType()) {
- case 114:
- case 108:
- case 12:
- agvTaskCreateParam.setTaskTyp("F06");
- break;
- case 109:
- if (agvWrkMast.getWrkSts() == 201) {
+ Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "FOUR"));
+ if (config != null && config.getStatus() == 1 && config.getValue().equals("1") && processUseTiShengJi(agvWrkMast.getSourceLocNo(), agvWrkMast.getLocNo())) {
+ // TODO 鍥涙湡
+ } else {
+ switch (agvWrkMast.getIoType()) {
+ case 114:
+ case 108:
+ case 12:
agvTaskCreateParam.setTaskTyp("F06");
- } else {
+ break;
+ case 109:
+ if (agvWrkMast.getWrkSts() == 201) {
+ agvTaskCreateParam.setTaskTyp("F06");
+ } else {
+ agvTaskCreateParam.setTaskTyp("F01");
+ }
+ break;
+ case 1:
+ case 57:
+ // 鍏ュ簱浠诲姟鏄彧鏈� 鎺ラ┏浣� -- > 搴撲綅
+ AgvLocMast loc = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvWrkMast.getLocNo()));
+ String locSub = loc.getLocNo().substring(loc.getLocNo().length() - 4).substring(0, 2).substring(0, 2);
+ AgvBasDevp agvBasDevp = agvBasDevpService.selectByDevNo(agvWrkMast.getSourceLocNo());
+ if ("02".equals(locSub)) {
+ if (agvBasDevp.getFloor() == 4) {
+ agvTaskCreateParam.setTaskTyp("F01");
+ } else {
+ agvTaskCreateParam.setTaskTyp("F06");
+ }
+
+ } else {
+ // 鐩爣妤煎眰浣�1妤� 浣嗘簮搴撲綅锛堟帴椹充綅锛夊湪鍚稿浜屾ゼ
+ if (agvBasDevp.getFloor() == 4) {
+ agvTaskCreateParam.setTaskTyp("F06");
+ } else {
+ agvTaskCreateParam.setTaskTyp("F01");
+ }
+
+
+ }
+ break;
+ default:
agvTaskCreateParam.setTaskTyp("F01");
- }
- break;
- case 1:
- case 57:
- // 鍏ュ簱浠诲姟鏄彧鏈� 鎺ラ┏浣� -- > 搴撲綅
- AgvLocMast loc = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvWrkMast.getLocNo()));
- String locSub = loc.getLocNo().substring(loc.getLocNo().length() - 4).substring(0, 2).substring(0, 2);
- AgvBasDevp agvBasDevp = agvBasDevpService.selectByDevNo(agvWrkMast.getSourceLocNo());
- if ("02".equals(locSub)) {
- if (agvBasDevp.getFloor() == 4) {
- agvTaskCreateParam.setTaskTyp("F01");
- } else {
- agvTaskCreateParam.setTaskTyp("F06");
- }
-
- } else {
- // 鐩爣妤煎眰浣�1妤� 浣嗘簮搴撲綅锛堟帴椹充綅锛夊湪鍚稿浜屾ゼ
- if (agvBasDevp.getFloor() == 4) {
- agvTaskCreateParam.setTaskTyp("F06");
- } else {
- agvTaskCreateParam.setTaskTyp("F01");
- }
-
-
- }
- break;
- default:
- agvTaskCreateParam.setTaskTyp("F01");
- break;
+ break;
+ }
}
agvTaskCreateParam.setPositionCodePath(agvTaskParamList);
diff --git a/src/main/java/com/zy/asrs/task/AutoMoveScheduler.java b/src/main/java/com/zy/asrs/task/AutoMoveScheduler.java
index 2182cb5..c6d9042 100644
--- a/src/main/java/com/zy/asrs/task/AutoMoveScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AutoMoveScheduler.java
@@ -213,7 +213,7 @@
* 浼樺厛閫夋嫨鍏堝埌鎺ラ┏浣嶏紙鎺ラ┏浣嶅彲鍏ワ級 鍚庨�夋嫨鐩存帴鍥炲簱
* 2妤兼垨3妤肩珯鐐瑰彲鍏ヤ俊鍙峰叏閮ㄦ病鏈夛紝浠h〃璧扮數姊嚜鍔ㄦ惉杩愭ā寮�
*/
- @Scheduled(cron = "0/2 * * * * ? ")
+ @Scheduled(cron = "0/30 * * * * ? ")
private void autoEmptyBack4() {
// 鏌ヨ 涓嶄负1妤肩殑绌鸿揣鏋�
List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(new EntityWrapper<AgvLocMast>()
@@ -236,7 +236,7 @@
* 灏嗕簩鍘傜殑6绫诲瀷鐨勭┖璐ф灦璋冩嫧鍥炲惛濉戜簩妤�
*/
// TODO 鍥涙湡
- @Scheduled(cron = "0/2 * * * * ? ")
+ @Scheduled(cron = "0/30 * * * * ? ")
private void autoEmptyBackSiqi() {
// 鏌ヨ6绫诲瀷绌鸿揣鏋惰繑鍥炵殑鎵ц鏃堕棿鐐�
Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "RETURN_6_TIME"));
@@ -245,7 +245,7 @@
try {
// 鍒ゆ柇鏄惁鍦ㄦ墽琛屾椂闂村唴
ProcesTimeData procesTimeData = JSONObject.parseObject(config.getValue(), ProcesTimeData.class);
- if (procesTimeData != null && TimeUtils.between(procesTimeData)) {
+ if (procesTimeData != null && config.getStatus() == 1 && TimeUtils.between(procesTimeData)) {
flag = true;
}
} catch (Exception e) {
@@ -255,9 +255,10 @@
if (flag) {
executeLocType6();
}
- } else {
- executeLocType6();
}
+// else {
+// executeLocType6();
+// }
}
@@ -298,7 +299,6 @@
* 鑷姩锛� 鐢熸垚 109 鑷姩鍥炴祦
* 鎵嬪姩锛� 鐢熸垚 113 鎵嬪姩鍥炴祦
* 浼樺厛閫夋嫨鍏堝埌鎺ラ┏浣嶏紙鎺ラ┏浣嶅彲鍏ワ級 鍚庨�夋嫨鐩存帴鍥炲簱
- *
*/
@Scheduled(cron = "0/2 * * * * ? ")
private void autoEmptyBack5() {
@@ -336,7 +336,6 @@
/**
* 鑷姩绉诲簱
- *
*/
@Scheduled(cron = "0/2 * * * * ? ")
private void autoEmptyBack7() throws ParseException {
@@ -382,4 +381,50 @@
}
+ /**
+ * 鑷姩绉诲簱锛屽洓鏈�
+ * 鍦ㄥ簱浣嶄笉澶熺殑鎯呭喌涓嬶紝绠卞3鍏ュ簱鍒殑妤煎眰搴撲綅鐨勬椂鍊欙紝鏅氫笂杩涜璺ㄥ眰绉诲簱
+ */
+ @Scheduled(cron = "0/2 * * * * ? ")
+ private void autoEmptyBack8() throws ParseException {
+ Date now = new Date();
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+ String currentDay = sdf.format(now);
+ Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "autoTime2"));
+ if (Cools.isEmpty(config)) {
+
+ } else {
+ if (config.getStatus().intValue() == 0) {
+ return;
+ }
+ JSONObject jsonObject = JSON.parseObject(config.getValue().toString());
+ Integer maxTansk = jsonObject.getInteger("maxTansk");
+ //Integer startTime = jsonObject.getInteger("startTime");
+ String startTime = jsonObject.getString("startTime");
+ long time1 = new SimpleDateFormat("yyyy-MM-dd HH:mm").parse(currentDay + " " + startTime).getTime();
+ long time = now.getTime();
+ long time3 = time - time1;
+
+
+ if (time3 > 0 && time3 < (1000 * 60 * 10)) {
+
+ List<AgvWrkMast> agvWrkMasts = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().eq("io_type", 12));
+ if (agvWrkMasts != null && maxTansk <= agvWrkMasts.size()) {
+ return;
+ }
+
+ List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(new EntityWrapper<AgvLocMast>().eq("floor", 1).eq("loc_sts", "F").eq("loc_type1", 3).eq("ctn_no", "1"));
+ if (agvLocMasts.isEmpty()) {
+ return;
+ }
+ for (AgvLocMast agvLocMast : agvLocMasts) {
+ try {
+ autoMoveHandler.autoTransfersV2(agvLocMast, maxTansk);
+ } catch (Exception e) {
+ log.error("搴撲綅鍙�" + agvLocMast.getLocNo() + "鍥涙湡瀹氭椂绉诲簱浠诲姟 鍚稿 --> 鍚稿,澶勭悊澶辫触锛�===銆嬪紓甯稿師鍥狅細" + e.getMessage());
+ }
+ }
+ }
+ }
+ }
}
diff --git a/src/main/java/com/zy/asrs/task/OrderLogScheduler.java b/src/main/java/com/zy/asrs/task/OrderLogScheduler.java
index ebea365..ff27c40 100644
--- a/src/main/java/com/zy/asrs/task/OrderLogScheduler.java
+++ b/src/main/java/com/zy/asrs/task/OrderLogScheduler.java
@@ -24,7 +24,7 @@
// private boolean isERP;
//
//@Scheduled(cron = "0/10 * * * * ? ")
- @Scheduled(fixedDelay = 600000)
+ @Scheduled(fixedDelay = 1000)
private void execute() {
List<Order> orders = orderService.selectToBeHistoryOrder();
if (orders.isEmpty()) {
diff --git a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
index 8d7af01..3d79d0d 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -191,7 +191,7 @@
//鏇存柊搴撳瓨鏄庣粏
agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(), agvWrkMast.getLocNo());
//淇敼婧愬簱浣嶇姸鎬佷负O
- agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(), "O", "", null);
+ agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(), "O", "", null,null);
break;
case 53:
//淇敼宸ヤ綔鍏氭槑缁�
@@ -254,7 +254,7 @@
});
// 鏇存柊绔欑偣 + 搴撲綅鐘舵�� 婧愬簱浣嶆槸绔欑偣
agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(), "O", "", agvWrkMast.getWhsType().shortValue());
- agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(), "F", agvWrkMast.getBarcode(), agvWrkMast.getWhsType().shortValue());
+ agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(), "F", agvWrkMast.getBarcode(), agvWrkMast.getWhsType().shortValue(),agvWrkMast.getPacked());
break;
case 58:
agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(), "F", agvWrkMast.getBarcode(), agvWrkMast.getWhsType().shortValue());
diff --git a/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java b/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java
index 344ef5b..b96533b 100644
--- a/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java
@@ -666,7 +666,8 @@
//妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅
AgvLocMast LocMast = agvCommonService.getLocNo(3, 1, false, false);
if (LocMast.getLev1() != 2) {
- throw new CoolException("鐩爣妤煎眰涓嶆槸鍚稿浜屾ゼ");
+ //throw new CoolException("鐩爣妤煎眰涓嶆槸鍚稿浜屾ゼ");
+ return FAIL;
}
List<AgvWrkMast> agvWrkMasts = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().like("loc_no", "02F1").like("source_loc_no", "F1").eq("io_type", 12));
if (agvWrkMasts.size() >= maxTansk) {
@@ -722,4 +723,86 @@
return SUCCESS;
}
+
+ /**
+ * 鍥涙湡锛岃法灞傜Щ搴擄紝1妤煎埌2妤硷紝2妤煎埌1妤�
+ *
+ * @param agvLocMast
+ * @param maxTansk
+ * @return
+ */
+ public ReturnT<String> autoTransfersV2(AgvLocMast agvLocMast, Integer maxTansk) {
+ Date now = new Date();
+ List<AgvLocDetl> locDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", agvLocMast.getLocNo()));
+ locDetls.forEach(agvLocDetl -> {
+ if (agvLocDetl.getProcessSts().equals(1)) {
+ throw new CoolException("褰撳墠搴撲綅鏈夊簱瀛樻湭鍔犲伐");
+ }
+ });
+ //鏌ヨ宸ヤ綔妗�
+ AgvWrkMast agvWrkMast = agvWrkMastService.selectByContainerCode(agvLocMast.getBarcode());
+ if (!Cools.isEmpty(agvWrkMast)) {
+ throw new CoolException("褰撳墠" + agvLocMast.getBarcode() + "璐ф灦鐮佸凡鍦ㄥ伐浣滄。涓�");
+ }
+ AgvLocMast LocMast;
+ if (agvLocMast.getLev1() == 1) {
+ //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅
+ LocMast = agvCommonService.getLocByLocRule(3, 1, 2);
+ } else {
+ LocMast = agvCommonService.getLocByLocRule(3, 1, 1);
+ }
+ List<AgvWrkMast> agvWrkMasts = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().eq("io_type", 12));
+ if (agvWrkMasts.size() >= maxTansk) {
+ throw new CoolException("鑷姩绉诲簱浠诲姟宸插埌璁惧畾鏈�澶у�硷細" + maxTansk);
+ }
+ //鐢熸垚宸ヤ綔妗�
+ AgvWrkMast mast = new AgvWrkMast();
+ //宸ヤ綔鐘舵��
+ mast.setWrkSts(201L);
+ //鍏ュ嚭搴撶被鍨�
+ mast.setIoType(12);
+ mast.setIoTime(now);
+ //浼樺厛绾�
+ mast.setIoPri(300.0);
+ //婧愮珯鐐�
+ mast.setSourceLocNo(agvLocMast.getLocNo());
+ //鐩爣绔欑偣
+ mast.setLocNo(LocMast.getLocNo());
+ //璐ф灦缂栫爜
+ mast.setBarcode(agvLocMast.getBarcode());
+ //璐ф灦绫诲瀷
+ mast.setWhsType(30);
+
+ mast.setAppeUser(9527L);
+ mast.setAppeTime(now);
+ mast.setModiUser(9527L);
+ mast.setModiTime(now);
+ mast.setLogErrMemo("doAutoMoveV4");
+ if (!agvWrkMastService.insertByIncrease(mast)) {
+ throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
+ }
+
+ AgvWrkMast mast1 = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("loc_no", LocMast.getLocNo()).eq("source_loc_no", agvLocMast.getLocNo()));
+ //鐢熸垚宸ヤ綔妗f槑缁�
+ List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", agvLocMast.getLocNo()));
+ agvLocDetls.forEach(agvLocDetl -> {
+ AgvWrkDetl wrkDetl = new AgvWrkDetl();
+ wrkDetl.setWrkNo(mast1.getWrkNo());
+ wrkDetl.sync(agvLocDetl);
+ wrkDetl.setSuppCode(agvLocDetl.getSuppCode());
+ wrkDetl.setIoTime(now);
+ wrkDetl.setAppeUser(9527L);
+ wrkDetl.setAppeTime(now);
+ wrkDetl.setModiUser(9527L);
+ wrkDetl.setModiTime(now);
+ if (!agvWrkDetlService.insert(wrkDetl)) {
+ throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
+ }
+ });
+ //鏇存柊鐩爣搴撲綅鐘舵��
+ updateAgvLocMast(agvLocMast, "R");
+ updateAgvLocMast(LocMast, "S");
+
+ return SUCCESS;
+ }
}
diff --git a/src/main/java/com/zy/asrs/utils/TimeUtils.java b/src/main/java/com/zy/asrs/utils/TimeUtils.java
index a6c26b8..35b19e7 100644
--- a/src/main/java/com/zy/asrs/utils/TimeUtils.java
+++ b/src/main/java/com/zy/asrs/utils/TimeUtils.java
@@ -1,5 +1,6 @@
package com.zy.asrs.utils;
+import com.alibaba.fastjson.JSON;
import com.zy.asrs.task.core.ProcesTimeData;
import java.time.LocalDate;
@@ -16,14 +17,22 @@
LocalDateTime startTime = LocalDateTime.of(LocalDate.now(), LocalTime.of(procesTimeData.getStartHour(), procesTimeData.getStartMinute()));
LocalDateTime endTime = LocalDateTime.of(LocalDate.now(), LocalTime.of(procesTimeData.getEndHour(), procesTimeData.getEndMinute()));
if (procesTimeData.getStartHour() > procesTimeData.getEndHour()) {
- endTime = endTime.plusDays(1);
+ startTime = startTime.plusDays(-1);
}
LocalDateTime currentTime = LocalDateTime.now(); // 鑾峰彇褰撳墠鏃堕棿
- System.out.println(startTime);
- System.out.println(endTime);
if (currentTime.isAfter(startTime) && currentTime.isBefore(endTime)) {
return true;
}
return false;
}
+
+ public static void main(String[] args) {
+ ProcesTimeData procesTimeData = new ProcesTimeData();
+ procesTimeData.setStartHour(7);
+ procesTimeData.setStartMinute(40);
+ procesTimeData.setEndHour(15);
+ procesTimeData.setEndMinute(0);
+ System.out.println(between(procesTimeData));
+ System.out.println(JSON.toJSONString(procesTimeData));
+ }
}
diff --git a/src/main/java/com/zy/common/service/AgvCommonService.java b/src/main/java/com/zy/common/service/AgvCommonService.java
index 02ad465..d026f0d 100644
--- a/src/main/java/com/zy/common/service/AgvCommonService.java
+++ b/src/main/java/com/zy/common/service/AgvCommonService.java
@@ -76,6 +76,7 @@
/**
* 妫�绱㈠簱浣嶅彿
+ *
* @return locNo 妫�绱㈠埌鐨勫簱浣嶅彿
*/
public AgvLocMast getLocNo(int type, int floor, boolean isEmpty, boolean isCurrLev) {
@@ -118,7 +119,6 @@
try {
// 寮�濮嬫煡鎵惧簱浣� ==============================>>
- // 鍥涙湡椤圭洰锛氶渶瑕佹敼鏌ユ壘搴撲綅閫昏緫
// 绠卞3鍏ュ簱
// if (type == 3 && factory != null) {
// //浼樺厛鍏ュ簱鍚稿1妤硷紝鍦�2妤�
@@ -144,7 +144,7 @@
/**
* 搴撲綅瑙勫垯鏌ユ壘
*/
- public AgvLocMast getLocByLocRule(int type, int floor, String factory) {
+ public AgvLocMast getLocByLocRule(int type, int floor, String factory) {
try {
EntityWrapper<AgvLocMast> wrapper = new EntityWrapper<>();
@@ -169,6 +169,28 @@
}
agvLocMasts = agvLocMastService.selectList(wrapper);
+ for (AgvLocMast agvLocMast : agvLocMasts) {
+ AgvLocMast agvLocMast1 = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocMast.getLocNo()));
+ if (agvLocMast1.getLocSts().equals("O")) {
+ return agvLocMast1;
+ }
+ }
+ throw new CoolException("鎼滅储搴撲綅鏃讹紝鏈壘鍒板彲鍏ュ簱搴撲綅銆�");
+ } catch (Exception e) {
+ throw new CoolException("鎼滅储搴撲綅鏃讹紝鏈壘鍒板彲鍏ュ簱搴撲綅銆�");
+ }
+ }
+
+ /**
+ * 搴撲綅瑙勫垯鏌ユ壘
+ */
+ public AgvLocMast getLocByLocRule(int type, int floor, int lev1) {
+
+ try {
+ EntityWrapper<AgvLocMast> wrapper = new EntityWrapper<>();
+ wrapper.eq("loc_sts", "O").eq("loc_type1", type);
+ wrapper.eq("floor", floor).eq("lev1", lev1);
+ List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(wrapper);
for (AgvLocMast agvLocMast : agvLocMasts) {
AgvLocMast agvLocMast1 = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocMast.getLocNo()));
if (agvLocMast1.getLocSts().equals("O")) {
@@ -335,6 +357,7 @@
/**
* 妫�绱㈠簱浣嶅彿
+ *
* @return locNo 妫�绱㈠埌鐨勫簱浣嶅彿
*/
public AgvBasDevp getDevpNo(int type, int floor) {
@@ -354,6 +377,7 @@
/**
* 妫�绱㈠簱浣嶅彿
+ *
* @return locNo 妫�绱㈣嚜鍔ㄦ帴椹充綅
*/
public AgvBasDevp getDevpNo(int type, int floor, String auto) {
@@ -372,6 +396,7 @@
/**
* 妫�绱㈠簱浣嶅彿
+ *
* @return locNo 妫�绱㈠彲鍏ユ帴椹充綅
*/
public AgvBasDevp getDevpNo(int type, int floor, String auto, String inEable) {
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 22524fb..0e0e3f2 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -1,4 +1,4 @@
spring:
profiles:
#dev loc prod
- active: loc
\ No newline at end of file
+ active: dev
\ No newline at end of file
diff --git "a/src/main/resources/\345\233\233\346\234\237sql/2.\346\226\260\345\242\2362\346\245\274\345\272\223\344\275\215.txt" "b/src/main/resources/\345\233\233\346\234\237sql/2.\346\226\260\345\242\2362\346\245\274\345\272\223\344\275\215.txt"
index ce30c27..2d5e4a8 100644
--- "a/src/main/resources/\345\233\233\346\234\237sql/2.\346\226\260\345\242\2362\346\245\274\345\272\223\344\275\215.txt"
+++ "b/src/main/resources/\345\233\233\346\234\237sql/2.\346\226\260\345\242\2362\346\245\274\345\272\223\344\275\215.txt"
@@ -1,7 +1,7 @@
DECLARE @locno VARCHAR(50); -- 澹版槑 locno 瀛楁锛屾寚瀹氶暱搴�
DECLARE @locsts NVARCHAR(50);
DECLARE @row1 INT = 27;
-DECLARE @bay1 INT = 19;
+DECLARE @bay1 INT = 14;
DECLARE @lev1 INT = 1;
DECLARE @fullplt VARCHAR(1); -- 鍋囪 fullplt 鍙渶瑕佷竴涓瓧绗�
DECLARE @loctype1 INT = 6;
@@ -12,7 +12,7 @@
DECLARE @stas INT;
DECLARE @floor INT;
DECLARE @maprow INT = 21;
-DECLARE @mapbay INT = 19;
+DECLARE @mapbay INT = 14;
DECLARE @rightside INT = 0;
DECLARE @plttype INT = 777;
@@ -22,8 +22,8 @@
WHILE @row1 <= 38
BEGIN
-- 鍦ㄦ瘡娆″惊鐜腑锛屾洿鏂� lev1 鐨勫��
- SET @bay1 = 19; -- 閲嶇疆 lev1
- SET @mapbay = 19; -- 閲嶇疆 lev1
+ SET @bay1 = 14; -- 閲嶇疆 lev1
+ SET @mapbay = 14; -- 閲嶇疆 lev1
WHILE @bay1 <= 33
BEGIN
diff --git "a/src/main/resources/\345\233\233\346\234\237sql/4.\345\210\235\345\247\213\345\214\2261.txt" "b/src/main/resources/\345\233\233\346\234\237sql/4.\345\210\235\345\247\213\345\214\2261.txt"
index 0845039..1b41e81 100644
--- "a/src/main/resources/\345\233\233\346\234\237sql/4.\345\210\235\345\247\213\345\214\2261.txt"
+++ "b/src/main/resources/\345\233\233\346\234\237sql/4.\345\210\235\345\247\213\345\214\2261.txt"
@@ -39,4 +39,7 @@
END
-- 璁剧疆涓夋ゼ涓�灞傞棿闅�
- UPDATE [dbo].[agv_loc_mast] SET right_side = 1 WHERE floor = 3 AND lev1 = 1 AND row1 IN (1,3,5,7,8,9,11,13,14,16,18,20,21,23,25)
\ No newline at end of file
+ UPDATE [dbo].[agv_loc_mast] SET right_side = 1 WHERE floor = 3 AND lev1 = 1 AND row1 IN (1,3,5,7,8,9,11,13,14,16,18,20,21,23,25)
+
+
+ UPDATE [dbo].[agv_loc_mast] SET loc_type2 = 31 WHERE loc_type1 = 6
\ No newline at end of file
diff --git "a/src/main/resources/\345\233\233\346\234\237sql/\346\234\252\344\270\212\347\272\277\345\211\215\347\246\201\347\224\250\345\272\223\344\275\215.txt" "b/src/main/resources/\345\233\233\346\234\237sql/\346\234\252\344\270\212\347\272\277\345\211\215\347\246\201\347\224\250\345\272\223\344\275\215.txt"
new file mode 100644
index 0000000..33fba32
--- /dev/null
+++ "b/src/main/resources/\345\233\233\346\234\237sql/\346\234\252\344\270\212\347\272\277\345\211\215\347\246\201\347\224\250\345\272\223\344\275\215.txt"
@@ -0,0 +1 @@
+UPDATE [dbo].[agv_loc_mast] SET loc_sts = 'X' WHERE loc_type1 = 6
\ No newline at end of file
--
Gitblit v1.9.1