From 83b504d7a369baa08b15c741c3b6daf71f6fa1f9 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期二, 07 一月 2025 14:25:25 +0800
Subject: [PATCH] #平库出库功能
---
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/ViewLocDetlMapper.java | 1
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/LocDetlService.java | 1
zy-asrs-wms/src/main/resources/application.yml | 4
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/LocDetl.java | 5 +
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/dto/MergePreviewResultLocDto.java | 2
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/statistics/ViewWorkCountIn.java | 2
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java | 5
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/dto/MergePreviewDto.java | 2
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OutController.java | 5 +
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/WaitPakin.java | 10 ++
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/manage/OutManage.java | 105 ++++++++++++++++++++++----
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/statistics/ViewInOut.java | 2
zy-asrs-wms/src/main/resources/mapper/asrs/ViewLocDetlMapper.xml | 28 ++++++
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/LocDetlServiceImpl.java | 16 +++
14 files changed, 159 insertions(+), 29 deletions(-)
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OutController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OutController.java
index 9eb6627..e407211 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OutController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OutController.java
@@ -93,12 +93,14 @@
throw new CoolException("娉㈡涓嶈兘涓虹┖");
}
+ //鑾峰彇鍑哄簱璁㈠崟
List<Long> orderIds = new ArrayList<>();
List<Order> orders = orderService.list(new LambdaQueryWrapper<Order>().eq(Order::getWaveId, waveId));
for (Order order : orders) {
orderIds.add(order.getId());
}
+ //鑾峰彇璁㈠崟娉㈡鏄庣粏
List<MergePreviewDto> dtos = new ArrayList<>();
List<WaveDetl> waveDetls = waveDetlService.list(new LambdaQueryWrapper<WaveDetl>().eq(WaveDetl::getWaveId, waveId));
for (WaveDetl waveDetl : waveDetls) {
@@ -108,12 +110,13 @@
double anfme = waveDetl.getAnfme() - waveDetl.getWorkQty();
dto.setMatnr(waveDetl.getMatnr());
dto.setBatch(waveDetl.getBatch());
+ dto.setWorkQty(0.0);
dto.setAnfme(anfme);
dto.setOrderIds(orderIds);
dto.setFieldParams(JSON.parseArray(waveDetl.getFieldParams(), FieldParam.class));
dto.setFieldParamsEncode(waveDetl.getFieldParams());
}
-
+ //鑾峰彇娉㈡鏄庣粏搴撲綅淇℃伅
List<MergePreviewResultDto> resultDtos = outManage.orderOutMergeLocPreview(dtos);
return R.ok().add(resultDtos);
}
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/LocDetl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/LocDetl.java
index 9309a20..0f02624 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/LocDetl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/LocDetl.java
@@ -65,6 +65,11 @@
private String matnr;
/**
+ * 宸查绾﹀簱瀛橈紙骞冲簱涓娇鐢級
+ */
+ private Double workQty;
+
+ /**
* 璁㈠崟鍙�
*/
@ApiModelProperty(value= "璁㈠崟鍙�")
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/WaitPakin.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/WaitPakin.java
index 5af62ab..51595ff 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/WaitPakin.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/WaitPakin.java
@@ -4,6 +4,7 @@
import java.text.SimpleDateFormat;
import java.util.Date;
+import com.zy.asrs.wms.asrs.service.MatService;
import com.zy.asrs.wms.asrs.service.OrderDetlService;
import com.zy.asrs.wms.asrs.service.OrderService;
import com.zy.asrs.wms.system.entity.Host;
@@ -183,6 +184,15 @@
return null;
}
+ public Long getMatnrId$() {
+ MatService matService = SpringUtils.getBean(MatService.class);
+ Mat byId = matService.getById(this.matnr);
+ if (!Cools.isEmpty(byId)) {
+ return byId.getId();
+ }
+ return null;
+ }
+
public OrderDetl getDetl$(){
OrderDetlService service = SpringUtils.getBean(OrderDetlService.class);
OrderDetl orderDetl = service.getById(this.detlId);
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/dto/MergePreviewDto.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/dto/MergePreviewDto.java
index 89cef7e..ec05683 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/dto/MergePreviewDto.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/dto/MergePreviewDto.java
@@ -17,6 +17,8 @@
private Double anfme;
+ private Double workQty;
+
private List<Long> orderIds;
private List<FieldParam> fieldParams;
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/dto/MergePreviewResultLocDto.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/dto/MergePreviewResultLocDto.java
index 2822e34..ab2bbc2 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/dto/MergePreviewResultLocDto.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/dto/MergePreviewResultLocDto.java
@@ -13,4 +13,6 @@
private Double anfme;
+ private Double workQty;
+
}
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/statistics/ViewInOut.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/statistics/ViewInOut.java
index 264b40a..0c1e5ae 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/statistics/ViewInOut.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/statistics/ViewInOut.java
@@ -5,7 +5,7 @@
import lombok.Data;
@Data
-@TableName("view_in_out")
+//@TableName("view_in_out")
public class ViewInOut {
@ApiModelProperty("鏃ユ湡")
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/statistics/ViewWorkCountIn.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/statistics/ViewWorkCountIn.java
index 200a4f3..5d75100 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/statistics/ViewWorkCountIn.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/statistics/ViewWorkCountIn.java
@@ -5,7 +5,7 @@
import lombok.Data;
@Data
-@TableName("view_work_count_in")
+//@TableName("view_work_count_in")
public class ViewWorkCountIn {
@ApiModelProperty("鍏ュ簱鏃ユ湡")
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/manage/OutManage.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/manage/OutManage.java
index e15ee67..9d6abd4 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/manage/OutManage.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/manage/OutManage.java
@@ -14,11 +14,13 @@
import com.zy.asrs.wms.utils.Utils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
+import java.util.stream.Collectors;
/**
* 鍑哄簱绠$悊
@@ -152,7 +154,6 @@
if (orderDetlIds.isEmpty()) {
throw new CoolException("璁㈠崟鏄庣粏涓嶈兘涓虹┖");
}
-
List<OrderDetl> orderDetls = orderDetlService.list(new LambdaQueryWrapper<OrderDetl>().in(OrderDetl::getId, orderDetlIds).orderByAsc(OrderDetl::getOrderNo, OrderDetl::getCreateTime));
if (orderDetls.isEmpty()) {
throw new CoolException("璁㈠崟鏄庣粏涓嶅瓨鍦�");
@@ -160,8 +161,39 @@
orderDetls = orderDetlService.parseDetl(orderDetls);
HashMap<Long, List<LocDetl>> orderDetlLocMap = new HashMap<>();
+ //鍑哄簱璁㈠崟鍚堣
List<OutDetlDto> detlDtos = new ArrayList<>();
+ //鑾峰彇骞充粨涓鍚堟潯浠剁殑鎵�鏈夊簱浣�
+ orderDetls.forEach(detl -> {
+ double issued = Optional.of(detl.getAnfme() - detl.getQty() - detl.getWorkQty()).orElse(0.0D);
+ if (issued <= 0.0D) {
+ return;
+ }
+ List<LocDetl> locs = locDetlService.queryFlatStock(detl.getMat$().getMatnr(), detl.getBatch(), detl.getUniqueField());
+ //骞冲簱鏈夊綋鏄庣墿鏂欎紭鍏堝嚭搴�
+ if (!locs.isEmpty()) {
+ for (LocDetl locDetl : locs) {
+ if (issued > 0) {
+ OutDetlDto outDetlDto = new OutDetlDto();
+ outDetlDto.setDetlId(locDetl.getId());
+ outDetlDto.setAnfme(issued >= locDetl.getAnfme() ? locDetl.getAnfme() : issued);
+ outDetlDto.setStock(locDetl.getAnfme());
+ outDetlDto.setOrderDetlId(locDetl.getId());
+ detlDtos.add(outDetlDto);
+ issued = issued - outDetlDto.getAnfme();
+ }
+ }
+ //璁㈠崟鏄庣粏闇�鍑哄簱鏁伴噺
+ double workQty = Optional.of(detl.getAnfme() - detl.getQty() - detl.getWorkQty()).orElse(0.0D);
+ //鏇存柊骞冲簱璁㈠崟鏄庣粏鐨勫疄闄呭彲鐢ㄦ暟閲�
+ detl.setWorkQty(workQty - issued);
+ }
+ });
+ /**
+ * 骞冲簱浼樺厛鍑哄簱瀹屾垚鍚庯紝褰撹鍗曟槑缁唚orkQty + qty 杩樹笉绛変簬anfme鏃讹紝鏌ヨTCU搴�
+ */
+ //鑾峰彇TCU绗﹀悎鏉′欢搴撲綅
for (OrderDetl orderDetl : orderDetls) {
double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getQty() - orderDetl.getWorkQty()).orElse(0.0D);
if (issued <= 0.0D) { continue; }
@@ -270,7 +302,7 @@
return previewDtos;
}
- @Transactional
+ @Transactional(rollbackFor = Exception.class)
public void orderOutBatch(List<OrderOutBatchPreviewDto> param) {
if (param == null) {
throw new CoolException("鍙傛暟涓嶈兘涓虹┖");
@@ -509,6 +541,46 @@
sortParams.add(sortParam);
List<MergePreviewResultDto> resultDtos = new ArrayList<>();
+
+ param.forEach(pars -> {
+ List<MergePreviewResultLocDto> locDtos = new ArrayList<>();
+ List<LocDetl> locs = locDetlService.queryFlatStock(pars.getMatnr(), pars.getBatch(), pars.getFieldParams());
+ if (!locs.isEmpty()) {
+ double anfme = pars.getAnfme() - pars.getWorkQty();
+ for (LocDetl detl : locs) {
+ Loc loc = locService.getById(detl.getLocId());
+ if (loc == null) {
+ throw new CoolException("搴撲綅鏁版嵁涓嶅瓨鍦�");
+ }
+
+ if (loc.getLocStsId() != LocStsType.F.val()) {
+ continue;
+ }
+ MergePreviewResultLocDto locDto = new MergePreviewResultLocDto();
+ locDto.setLocId(detl.getLocId());
+ locDto.setLocNo(detl.getLocNo());
+ locDto.setLocDetlId(detl.getId());
+
+ locDtos.add(locDto);
+ //搴撲綅瀹為檯鍙敤鏁伴噺
+ double surplusQty = detl.getAnfme() - detl.getWorkQty();
+ //娉㈡鏁伴噺鍑忓幓搴撲綅鍙敤鏁伴噺鍚庯紝鐩堜綑鏁伴噺
+// double workQty = anfme - surplusQty;
+ anfme = anfme - surplusQty;
+ if (anfme > 0) {
+ locDto.setAnfme(detl.getAnfme());
+ locDto.setWorkQty(surplusQty);
+ } else {
+ locDto.setAnfme(anfme);
+ locDto.setWorkQty(anfme);
+ break;
+ }
+ }
+
+ pars.setWorkQty(pars.getAnfme() - pars.getWorkQty() - anfme);
+ }
+ });
+
for (MergePreviewDto dto : param) {
List<LocDetl> locDetls = locDetlService.queryStock(dto.getMatnr(), dto.getBatch(), dto.getFieldParams(), sortParams);
if(locDetls.isEmpty()){
@@ -525,10 +597,9 @@
MergePreviewResultDto resultDto = new MergePreviewResultDto();
resultDto.sync(dto);
- resultDto.setLocs(locDtos);
resultDto.setOrderIds(dto.getOrderIds());
-
Double anfme = dto.getAnfme();
+ resultDto.setLocs(locDtos);
for (LocDetl locDetl : locDetls) {
Loc loc = locService.getById(locDetl.getLocId());
if (loc == null) {
@@ -581,7 +652,18 @@
return resultDtos;
}
- @Transactional
+ /**
+ * 娉㈡鐢熸垚鍑哄簱浠诲姟
+ * UTC鍑哄簱浠诲姟閫昏緫涓嶅彉锛屾坊鍔犲钩搴撳垽鍒�昏緫
+ * 1. 鑾峰彇娉㈡璁㈠崟鏄庣粏锛屽垽鍒槸鍚︿负骞冲簱璁㈠崟
+ * 2. 骞冲簱璁㈠崟鐢熸垚鎷h揣鍗曪紝 UTC璁㈠崟鐢熸垚鍑哄簱浠诲姟
+ * 3. 骞冲簱鍗曟嵁鏄庣粏鎵�鍗犲簱浣嶇墿鏂欐暟閲忓姞閿�
+ * 4. 鐢熸垚鍑哄簱鍗昉DA绔紝缁熶竴鍑哄簱鎵e噺搴撳瓨
+ * 5. 鐢熸垚鎷h揣鍗曞巻鍙叉。锛屽嚭搴撳崟鎹姞鍏ュ巻鍙叉。锛屽垹闄ゅ師鍗曟嵁
+ * 6. 鍒犻櫎娉㈡鍒楄〃鏁版嵁
+ * @param dto
+ */
+ @Transactional(rollbackFor = Exception.class)
public void orderOutMerge(OrderOutMergeParamDto dto) {
if(dto == null){
throw new CoolException("鍙傛暟涓嶈兘涓虹┖");
@@ -804,11 +886,6 @@
throw new CoolException("鍙傛暟涓嶈兘涓虹┖");
}
-
-
-// Long waveId = dto.getWaveId();
-// String waveNo = dto.getw
-
List<Long> filterParamsList = new ArrayList<>();
List<OrderOutMergeParam> filterParams = new ArrayList<>();
@@ -943,7 +1020,7 @@
//TODO 纭鍚庯紝闇�灏嗘敞閲婃墦寮�
String matUniqueKey = Utils.getMatUniqueKey(taskDetl.getMatnr(), taskDetl.getBatch(), taskDetl.getUniqueField());
- WaveDetl waveDetl = waveDetlService.getOne(new LambdaQueryWrapper<WaveDetl>().eq(WaveDetl::getStockIndex, matUniqueKey).eq(WaveDetl::getWaveId, waveId));
+ WaveDetl waveDetl = waveDetlService.getOne(new LambdaQueryWrapper<WaveDetl>().eq(WaveDetl::getStockIndex, matUniqueKey).eq(WaveDetl::getWaveId, wave.getId()));
// WaveDetl waveDetl = waveDetlService.getOne(new LambdaQueryWrapper<WaveDetl>().eq(WaveDetl::getWaveId, wave.getId()), false);
if (waveDetl == null) {
throw new CoolException("娉㈡鏁版嵁涓嶅瓨鍦�");
@@ -955,12 +1032,6 @@
}
}
- //鍑哄簱搴撳瓨鏇存柊閫昏緫
-// List<Long> orderIds = dto.getList().stream().findFirst().get().getOrderIds();
-// List<OrderDetl> orderDetls = orderDetlService.list(new LambdaQueryWrapper<OrderDetl>().in(OrderDetl::getOrderId, orderIds));
-// orderDetls.forEach(orderDetl -> {
-// orderUtils.updateWorkQty(orderDetl.getId(), orderDetl.getAnfme());
-// });
//搴撲綅F => R
loc.setLocStsId(LocStsType.R.val());
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/ViewLocDetlMapper.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/ViewLocDetlMapper.java
index 4b338ec..12ff1e0 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/ViewLocDetlMapper.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/ViewLocDetlMapper.java
@@ -26,4 +26,5 @@
List<Map<String,Object>> listSuitableMat( @Param("param") List<FieldParam> param, @Param("sortParam") List<FieldSortParam> sortParam);
+ List<Map<String, Object>> queryFlatStock(@Param("matnr") String matnr, @Param("batch") String batch,@Param("params") List<FieldParam> params);
}
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/LocDetlService.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/LocDetlService.java
index 6c411c2..9d161d9 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/LocDetlService.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/LocDetlService.java
@@ -29,4 +29,5 @@
void removeLocDetl(Long locId);
+ List<LocDetl> queryFlatStock(String matnr, String batch, List<FieldParam> uniqueField);
}
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/LocDetlServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/LocDetlServiceImpl.java
index afeaed7..34c7fb8 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/LocDetlServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/LocDetlServiceImpl.java
@@ -19,6 +19,7 @@
import com.zy.asrs.wms.asrs.service.LocService;
import com.zy.asrs.wms.common.domain.BaseParam;
import com.zy.asrs.wms.common.domain.PageParam;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -132,7 +133,7 @@
if (loc == null) {
continue;
}
-
+ //褰撳墠搴撲綅鐘舵�佹槸鍚﹀湪搴�
if(!loc.getLocStsId().equals(LocStsType.F.val())){
continue;
}
@@ -225,4 +226,17 @@
}
}
}
+
+ @Override
+ public List<LocDetl> queryFlatStock(String matnr, String batch, List<FieldParam> params) {
+ //鑾峰彇骞冲簱涓鍚堟潯浠剁殑搴撲綅
+ List<Map<String, Object>> list = viewLocDetlMapper.queryFlatStock(matnr, batch, params);
+ List<LocDetl> detls = new ArrayList<>();
+ list.forEach(action -> {
+ LocDetl locDetl = new LocDetl();
+ BeanUtils.copyProperties(action, locDetl);
+ detls.add(locDetl);
+ });
+ return detls;
+ }
}
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java
index 9641bd7..b110fa7 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java
@@ -133,11 +133,11 @@
LocDetl locDetl = new LocDetl();
locDetl.setAnfme(pakin.getAnfme());
locDetl.setBatch(pakin.getBatch());
- locDetl.setMatnr(pakin.getMatnr());
+ locDetl.setMatId(pakin.getMatnrId$());;
locDetl.setCreateTime(new Date());
locDetl.setOrderNo(pakin.getOrderNo());
locDetl.setLocNo(loc.getLocNo());
- locDetl.setLocId(loc.getLocStsId());
+ locDetl.setLocId(loc.getId());
locDetl.setMatnr(pakin.getMatnr());
locDetl.setMemo(pakin.getMemo());
locDetl.setUpdateTime(new Date());
@@ -149,7 +149,6 @@
});
//鍒犻櫎缁勬嫋妗o紝鍔犲叆鍘嗗彶缁勬嫋妗�
- List<WaitPakinLog> waitPakinLogs = new ArrayList<>();
waitPakins.forEach(waitPakin -> {
WaitPakinLog pakinLog = new WaitPakinLog();
BeanUtils.copyProperties(waitPakin, pakinLog);
diff --git a/zy-asrs-wms/src/main/resources/application.yml b/zy-asrs-wms/src/main/resources/application.yml
index 156e996..9d1a596 100644
--- a/zy-asrs-wms/src/main/resources/application.yml
+++ b/zy-asrs-wms/src/main/resources/application.yml
@@ -13,8 +13,8 @@
validation-timeout: 3000
connection-test-query: select 1
driver-class-name: com.mysql.cj.jdbc.Driver
- url: jdbc:mysql://127.0.0.1:3306/wms_dev_test?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
-# url: jdbc:mysql://127.0.0.1:3306/wms_dev?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
+# url: jdbc:mysql://127.0.0.1:3306/wms_dev_test?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
+ url: jdbc:mysql://127.0.0.1:3306/wms_dev?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
username: root
password: 34821015
# driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
diff --git a/zy-asrs-wms/src/main/resources/mapper/asrs/ViewLocDetlMapper.xml b/zy-asrs-wms/src/main/resources/mapper/asrs/ViewLocDetlMapper.xml
index 9ddda50..519f68e 100644
--- a/zy-asrs-wms/src/main/resources/mapper/asrs/ViewLocDetlMapper.xml
+++ b/zy-asrs-wms/src/main/resources/mapper/asrs/ViewLocDetlMapper.xml
@@ -16,7 +16,7 @@
</if>
<if test="sortParam!=null and sortParam.size()>0">
<foreach collection="sortParam" item="item" open="order by " separator="," close=" ">
- ${item.name} ${item.value}
+ ${item.name} ${item.value}
</foreach>
</if>
</select>
@@ -29,7 +29,7 @@
</if>
<if test="param!=null and param.size()>0">
<foreach item="item" collection="param" index="index">
- <if test="item.value !=null and item.value != ''" >
+ <if test="item.value !=null and item.value != ''">
and ${item.name} = #{item.value}
</if>
</foreach>
@@ -61,7 +61,6 @@
</select>
-
<select id="listSuitableMat" resultType="map">
select * from view_man_loc_detl ld
where 1=1
@@ -76,4 +75,27 @@
</foreach>
</if>
</select>
+ <select id="queryFlatStock" resultType="map">
+ SELECT * FROM
+ (
+ SELECT id, loc_id, loc_no, mat_id, type_id, matnr, order_no, batch, anfme, host_id, memo, freeze
+ FROM
+ view_man_loc_detl
+ WHERE
+ deleted = 0
+ AND type_id IN ( SELECT type_id FROM man_loc_area_type WHERE parent_id = 7 OR id = 7 )
+ ) t
+ WHERE 1 = 1
+ <if test="matnr != null and matnr != ''">
+ AND t.matnr #{matnr}
+ </if>
+ <if test="batch != null and batch != ''">
+ AND t.batch = #{batch}
+ </if>
+ <if test="params != null and params.size() > 0">
+ <foreach collection="params" item="item" open="order by " separator="," close=" ">
+ ${item.name} = #{item.value}
+ </foreach>
+ </if>
+ </select>
</mapper>
--
Gitblit v1.9.1