From 5772f1ba90c1477666b0b33c3ca4e7bdb4259cc3 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期五, 12 六月 2020 14:03:07 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/entity/param/FullStoreParam.java | 2
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 44 ++++++++++++--
src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java | 39 +++++++++++++
src/main/java/com/zy/asrs/entity/MatCodeCountDto.java | 35 +++++++++++
src/main/java/com/zy/asrs/controller/WorkController.java | 2
src/main/java/com/zy/asrs/service/WrkDetlService.java | 5 +
6 files changed, 116 insertions(+), 11 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/WorkController.java b/src/main/java/com/zy/asrs/controller/WorkController.java
index 84fe6c7..1cf9edd 100644
--- a/src/main/java/com/zy/asrs/controller/WorkController.java
+++ b/src/main/java/com/zy/asrs/controller/WorkController.java
@@ -1,6 +1,5 @@
package com.zy.asrs.controller;
-import com.alibaba.fastjson.JSON;
import com.core.annotations.ManagerAuth;
import com.core.common.R;
import com.zy.asrs.entity.param.FullStoreParam;
@@ -33,7 +32,6 @@
@RequestMapping("/full/store/start")
@ManagerAuth(memo = "鍏ㄦ澘鍏ュ簱")
public R start(@RequestBody FullStoreParam fullStoreParam) {
- System.out.println(JSON.toJSONString(fullStoreParam));
workService.startupFullStore(fullStoreParam,getUserId());
return R.ok();
}
diff --git a/src/main/java/com/zy/asrs/entity/MatCodeCountDto.java b/src/main/java/com/zy/asrs/entity/MatCodeCountDto.java
new file mode 100644
index 0000000..592f751
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/MatCodeCountDto.java
@@ -0,0 +1,35 @@
+package com.zy.asrs.entity;
+
+/**
+ * Created by vincent on 2020/6/12
+ */
+public class MatCodeCountDto {
+
+ private String matNo;
+
+ private int count;
+
+ public MatCodeCountDto() {
+ }
+
+ public MatCodeCountDto(String matNo, int count) {
+ this.matNo = matNo;
+ this.count = count;
+ }
+
+ public String getMatNo() {
+ return matNo;
+ }
+
+ public void setMatNo(String matNo) {
+ this.matNo = matNo;
+ }
+
+ public int getCount() {
+ return count;
+ }
+
+ public void setCount(int count) {
+ this.count = count;
+ }
+}
diff --git a/src/main/java/com/zy/asrs/entity/param/FullStoreParam.java b/src/main/java/com/zy/asrs/entity/param/FullStoreParam.java
index e19c0ea..de82fa3 100644
--- a/src/main/java/com/zy/asrs/entity/param/FullStoreParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/FullStoreParam.java
@@ -13,7 +13,7 @@
// 鐗╂枡鍒楄〃鏁版嵁
private List<MatCodeStore> list;
- static class MatCodeStore {
+ public static class MatCodeStore {
// 鐗╂枡缂栧彿
private String matNo;
diff --git a/src/main/java/com/zy/asrs/service/WrkDetlService.java b/src/main/java/com/zy/asrs/service/WrkDetlService.java
index 7de4f69..3e23f9a 100644
--- a/src/main/java/com/zy/asrs/service/WrkDetlService.java
+++ b/src/main/java/com/zy/asrs/service/WrkDetlService.java
@@ -2,7 +2,12 @@
import com.baomidou.mybatisplus.service.IService;
import com.zy.asrs.entity.WrkDetl;
+import com.zy.asrs.entity.MatCodeCountDto;
+
+import java.util.List;
public interface WrkDetlService extends IService<WrkDetl> {
+ void createWorkDetail(Integer workNo, List<MatCodeCountDto> matCodeCountDtos, Long userId);
+
}
diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index 99a10d6..9f25e0a 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -4,18 +4,20 @@
import com.core.common.Cools;
import com.core.exception.CoolException;
import com.zy.asrs.entity.BasDevp;
+import com.zy.asrs.entity.LocMast;
+import com.zy.asrs.entity.MatCodeCountDto;
import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.entity.param.FullStoreParam;
-import com.zy.asrs.service.BasDevpService;
-import com.zy.asrs.service.WorkService;
-import com.zy.asrs.service.WrkMastService;
+import com.zy.asrs.service.*;
import com.zy.common.model.StartupDto;
import com.zy.common.service.CommonService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import java.util.ArrayList;
import java.util.Date;
+import java.util.List;
/**
* Created by vincent on 2020/6/11
@@ -29,6 +31,10 @@
private BasDevpService basDevpService;
@Autowired
private CommonService commonService;
+ @Autowired
+ private WrkDetlService wrkDetlService;
+ @Autowired
+ private LocMastService locMastService;
@Override
@Transactional
@@ -38,7 +44,7 @@
throw new CoolException(BaseRes.PARAM);
}
// 婧愮珯鐐圭姸鎬佹娴�
- BasDevp staNo = basDevpService.checkSiteStatus(param.getDevpNo());
+ BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getDevpNo());
// 鐢熸垚宸ヤ綔鍙�
int workNo = commonService.getWorkNo(0);
if (workNo == 0) {
@@ -66,7 +72,7 @@
wrkMast.setExitMk("N"); // 閫�鍑�
wrkMast.setEmptyMk("N"); // 绌烘澘
wrkMast.setLinkMis("N");
- wrkMast.setCtnType(staNo.getCtnType()); // 瀹瑰櫒绫诲瀷
+ wrkMast.setCtnType(sourceStaNo.getCtnType()); // 瀹瑰櫒绫诲瀷
// 鎿嶄綔浜哄憳鏁版嵁
wrkMast.setAppeUser(userId);
wrkMast.setAppeTime(new Date());
@@ -74,11 +80,33 @@
wrkMast.setModiTime(new Date());
boolean res = wrkMastService.insert(wrkMast);
if (!res) {
- throw new CoolException("娉ㄥ叆sql澶辫触");
+ throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
-
// 鐢熸垚宸ヤ綔妗f槑缁�
-
+ List<MatCodeCountDto> matDtos = new ArrayList<>();
+ param.getList().forEach(elem -> {
+ matDtos.add(new MatCodeCountDto(elem.getMatNo(), elem.getCount()));
+ });
+ wrkDetlService.createWorkDetail(workNo, matDtos, userId);
+ // 鏇存柊婧愮珯鐐逛俊鎭�
+ sourceStaNo.setWrkNo(workNo);
+ sourceStaNo.setModiUser(userId);
+ sourceStaNo.setModiTime(new Date());
+ if (!basDevpService.updateById(sourceStaNo)){
+ throw new CoolException("鏇存柊婧愮珯澶辫触");
+ }
+ // 鏇存柊鐩爣搴撲綅淇℃伅
+ LocMast locMast = locMastService.selectById(dto.getLocNo());
+ if (locMast.getLocType().equals("O")){
+ locMast.setLocType("S"); // S.鍏ュ簱棰勭害
+ locMast.setModiUser(userId);
+ locMast.setModiTime(new Date());
+ if (!locMastService.updateById(locMast)){
+ throw new CoolException("鏀瑰彉搴撲綅鐘舵�佸け璐�");
+ }
+ } else {
+ throw new CoolException(dto.getLocNo()+"鐩爣搴撲綅宸茶鍗犵敤");
+ }
}
}
diff --git a/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java
index 464a45c..3dcdf3d 100644
--- a/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java
@@ -1,12 +1,51 @@
package com.zy.asrs.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.core.common.Cools;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.MatCode;
import com.zy.asrs.entity.WrkDetl;
+import com.zy.asrs.entity.MatCodeCountDto;
import com.zy.asrs.mapper.WrkDetlMapper;
+import com.zy.asrs.service.MatCodeService;
import com.zy.asrs.service.WrkDetlService;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Date;
+import java.util.List;
@Service("wrkDetlService")
public class WrkDetlServiceImpl extends ServiceImpl<WrkDetlMapper, WrkDetl> implements WrkDetlService {
+ @Autowired
+ private MatCodeService matCodeService;
+
+ @Override
+ @Transactional
+ public void createWorkDetail(Integer workNo, List<MatCodeCountDto> matCodeCountDtos, Long userId) {
+ if (matCodeCountDtos.isEmpty()){
+ return;
+ }
+ for (MatCodeCountDto dto : matCodeCountDtos) {
+ MatCode matCode = matCodeService.selectById(dto.getMatNo());
+ if (Cools.isEmpty(matCode)){
+ throw new CoolException("鐗╂枡鏉$爜鏁版嵁涓虹┖");
+ }
+ // 淇濇寔宸ヤ綔妗f槑缁�
+ WrkDetl wrkDetl = new WrkDetl();
+ wrkDetl.setWrkNo(workNo);
+ wrkDetl.setIoTime(new Date());
+ wrkDetl.setMatnr(matCode.getMatNo()); // 鐗╂枡缂栧彿
+ wrkDetl.setAnfme((double) dto.getCount()); // 鏁伴噺
+ wrkDetl.setAppeUser(userId);
+ wrkDetl.setAppeTime(new Date());
+ wrkDetl.setModiUser(userId);
+ wrkDetl.setModiTime(new Date());
+ if (!this.insert(wrkDetl)) {
+ throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
+ }
+ }
+ }
}
--
Gitblit v1.9.1