From f915165192845acd12aca37fecec6976eb1f870c Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期四, 12 六月 2025 11:02:57 +0800
Subject: [PATCH] 转库出库初步完成,生成单据也成功了;显示需要添加菜单及其权限
---
src/main/java/com/zy/asrs/service/WorkService.java | 2
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 174 ++++++++++-
src/main/webapp/static/js/pakStore/stockOutZKCK.js | 183 ++++++++++++
src/main/webapp/views/pakStore/stockOutZKCK.html | 145 +++++++++
src/main/java/com/zy/asrs/controller/WorkController.java | 30 +
src/main/webapp/static/js/pakStore/stockOut.js | 1
src/main/webapp/views/order/order.html | 6
/dev/null | 160 ----------
src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java | 24
src/main/java/com/zy/asrs/controller/StoreTypeController.java | 130 +++++--
src/main/webapp/views/pakStore/stockOut.html | 9
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 10
src/main/java/com/zy/asrs/entity/param/StockOutParam.java | 3
13 files changed, 625 insertions(+), 252 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/StoreController.java b/src/main/java/com/zy/asrs/controller/StoreController.java
deleted file mode 100644
index 6355af4..0000000
--- a/src/main/java/com/zy/asrs/controller/StoreController.java
+++ /dev/null
@@ -1,160 +0,0 @@
-package com.zy.asrs.controller;
-
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.mapper.EntityWrapper;
-import com.baomidou.mybatisplus.mapper.Wrapper;
-import com.baomidou.mybatisplus.plugins.Page;
-import com.core.annotations.ManagerAuth;
-import com.core.common.BaseRes;
-import com.core.common.Cools;
-import com.core.common.DateUtils;
-import com.core.common.R;
-import com.zy.asrs.entity.BasWrkIotype;
-import com.zy.asrs.entity.StoreType;
-import com.zy.asrs.service.StoreTypeService;
-import com.zy.common.web.BaseController;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.*;
-
-@RestController
-public class StoreController extends BaseController {
-
- @Autowired
- private StoreTypeService storeTypeService;
-
- @RequestMapping(value = "/store/{id}/auth")
- @ManagerAuth
- public R get(@PathVariable("id") Long id) {
- return R.ok(storeTypeService.selectById(String.valueOf(id)));
- }
-
- @RequestMapping(value = "/store/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) {
- excludeTrash(param);
- EntityWrapper<StoreType> wrapper = new EntityWrapper<>();
- convert(param, wrapper);
- if (!Cools.isEmpty(orderByField)) {
- wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
- }
- return R.ok(storeTypeService.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()) {
- String val = String.valueOf(entry.getValue());
- 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]));
- } else {
- wrapper.like(entry.getKey(), val);
- }
- }
- }
-
- @RequestMapping(value = "/store/edit/auth")
- @ManagerAuth
- public R edit(@RequestParam(required = false) String param) {
- if (Cools.isEmpty(param)) {
- return R.error();
- }
- StoreType storeType = storeTypeService.selectById(param);
- storeType.setOwn(1);
- storeTypeService.updateById(storeType);
- return R.ok();
- }
-
- @RequestMapping(value = "/store/edit2/auth")
- @ManagerAuth
- public R edit2(@RequestParam(required = false) String param) {
- if (Cools.isEmpty(param)) {
- return R.error();
- }
- StoreType storeType = storeTypeService.selectById(param);
- storeType.setOwn(0);
- storeTypeService.updateById(storeType);
- return R.ok();
- }
-
- @RequestMapping(value = "/store/add/auth")
- @ManagerAuth(memo = "鍏ュ嚭搴撶被鍨嬫坊鍔�")
- public R add(StoreType basWrkIotype) {
- basWrkIotype.setUpdateBy(getUserId());
- basWrkIotype.setUpdateTime(new Date());
- basWrkIotype.setCreateBy(getUserId());
- basWrkIotype.setCreateTime(new Date());
- storeTypeService.insert(basWrkIotype);
- return R.ok();
- }
-
- @RequestMapping(value = "/store/update/auth")
- @ManagerAuth(memo = "鍏ュ嚭搴撶被鍨嬩慨鏀�")
- public R update(StoreType basWrkIotype) {
- if (Cools.isEmpty(basWrkIotype) || null == basWrkIotype.getStoreId()) {
- return R.error();
- }
- basWrkIotype.setUpdateBy(getUserId());
- basWrkIotype.setUpdateTime(new Date());
- storeTypeService.updateById(basWrkIotype);
- return R.ok();
- }
-
- @RequestMapping(value = "/store/delete/auth")
- @ManagerAuth(memo = "鍏ュ嚭搴撶被鍨嬪垹闄�")
- public R delete(@RequestParam String param) {
- List<StoreType> list = JSONArray.parseArray(param, StoreType.class);
- if (Cools.isEmpty(list)) {
- return R.error();
- }
- for (StoreType entity : list) {
- storeTypeService.delete(new EntityWrapper<>(entity));
- }
- return R.ok();
- }
-
- @RequestMapping(value = "/store/export/auth")
- @ManagerAuth(memo = "鍏ュ嚭搴撶被鍨嬪鍑�")
- public R export(@RequestBody JSONObject param) {
- List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
- EntityWrapper<StoreType> wrapper = new EntityWrapper<>();
- Map<String, Object> map = excludeTrash(param.getJSONObject("basWrkIotype"));
- convert(map, wrapper);
- List<StoreType> list = storeTypeService.selectList(wrapper);
- return R.ok(exportSupport(list, fields));
- }
-
- @RequestMapping(value = "/store/auth")
- @ManagerAuth
- public R query(String condition) {
- EntityWrapper<StoreType> wrapper = new EntityWrapper<>();
- wrapper.like("io_desc", condition);
- Page<StoreType> page = storeTypeService.selectPage(new Page<>(0, 20), wrapper);
- List<Map<String, Object>> result = new ArrayList<>();
- for (StoreType basWrkIotype : page.getRecords()) {
- Map<String, Object> map = new HashMap<>();
- map.put("id", basWrkIotype.getStoreId());
- map.put("value", basWrkIotype.getStoreName());
- result.add(map);
- }
- return R.ok(result);
- }
-
- @RequestMapping(value = "/store/check/column/auth")
- @ManagerAuth
- public R query(@RequestBody JSONObject param) {
- Wrapper<StoreType> wrapper = new EntityWrapper<StoreType>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val"));
- if (null != storeTypeService.selectOne(wrapper)) {
- return R.parse(BaseRes.REPEAT).add(getComment(BasWrkIotype.class, String.valueOf(param.get("key"))));
- }
- return R.ok();
- }
-
-}
diff --git a/src/main/java/com/zy/asrs/controller/StoreTypeController.java b/src/main/java/com/zy/asrs/controller/StoreTypeController.java
index ab36b61..bbea041 100644
--- a/src/main/java/com/zy/asrs/controller/StoreTypeController.java
+++ b/src/main/java/com/zy/asrs/controller/StoreTypeController.java
@@ -1,5 +1,6 @@
package com.zy.asrs.controller;
+import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
@@ -9,7 +10,7 @@
import com.core.common.Cools;
import com.core.common.DateUtils;
import com.core.common.R;
-import com.zy.asrs.entity.DocType;
+import com.zy.asrs.entity.BasWrkIotype;
import com.zy.asrs.entity.StoreType;
import com.zy.asrs.service.StoreTypeService;
import com.zy.common.web.BaseController;
@@ -24,21 +25,21 @@
@Autowired
private StoreTypeService storeTypeService;
- @RequestMapping(value = "/storeType/{id}/auth")
+ @RequestMapping(value = "/store/{id}/auth")
@ManagerAuth
- public R get(@PathVariable("id") String id) {
+ public R get(@PathVariable("id") Long id) {
return R.ok(storeTypeService.selectById(String.valueOf(id)));
}
- @RequestMapping(value = "/storeType/list/auth")
+ @RequestMapping(value = "/store/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) {
- EntityWrapper<StoreType> wrapper = new EntityWrapper<>();
excludeTrash(param);
+ EntityWrapper<StoreType> wrapper = new EntityWrapper<>();
convert(param, wrapper);
if (!Cools.isEmpty(orderByField)) {
wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
@@ -59,53 +60,107 @@
}
}
- @RequestMapping(value = "/storeType/add/auth")
+ @RequestMapping(value = "/store/edit/auth")
@ManagerAuth
- public R add(StoreType docType) {
- docType.setStatus(1);
- docType.setCreateBy(getUserId());
- docType.setCreateTime(new Date());
- docType.setUpdateBy(getUserId());
- docType.setUpdateTime(new Date());
- storeTypeService.insert(docType);
- return R.ok();
- }
-
- @RequestMapping(value = "/storeType/update/auth")
- @ManagerAuth
- public R update(StoreType docType) {
- if (Cools.isEmpty(docType) || null == docType.getStoreId()) {
+ public R edit(@RequestParam(required = false) String param) {
+ if (Cools.isEmpty(param)) {
return R.error();
}
- docType.setUpdateBy(getUserId());
- docType.setUpdateTime(new Date());
- storeTypeService.updateById(docType);
+ StoreType storeType = storeTypeService.selectById(param);
+ storeType.setOwn(1);
+ storeTypeService.updateById(storeType);
return R.ok();
}
- @RequestMapping(value = "/storeType/delete/auth")
+ @RequestMapping(value = "/store/edit2/auth")
@ManagerAuth
- public R delete(@RequestParam(value = "ids[]") Long[] ids) {
- for (Long id : ids) {
- storeTypeService.deleteById(id);
+ public R edit2(@RequestParam(required = false) String param) {
+ if (Cools.isEmpty(param)) {
+ return R.error();
+ }
+ StoreType storeType = storeTypeService.selectById(param);
+ storeType.setOwn(0);
+ storeTypeService.updateById(storeType);
+ return R.ok();
+ }
+
+ @RequestMapping(value = "/store/add/auth")
+ @ManagerAuth(memo = "鍏ュ嚭搴撶被鍨嬫坊鍔�")
+ public R add(StoreType basWrkIotype) {
+ basWrkIotype.setUpdateBy(getUserId());
+ basWrkIotype.setUpdateTime(new Date());
+ basWrkIotype.setCreateBy(getUserId());
+ basWrkIotype.setCreateTime(new Date());
+ storeTypeService.insert(basWrkIotype);
+ return R.ok();
+ }
+
+ @RequestMapping(value = "/store/update/auth")
+ @ManagerAuth(memo = "鍏ュ嚭搴撶被鍨嬩慨鏀�")
+ public R update(StoreType basWrkIotype) {
+ if (Cools.isEmpty(basWrkIotype) || null == basWrkIotype.getStoreId()) {
+ return R.error();
+ }
+ basWrkIotype.setUpdateBy(getUserId());
+ basWrkIotype.setUpdateTime(new Date());
+ storeTypeService.updateById(basWrkIotype);
+ return R.ok();
+ }
+
+ @RequestMapping(value = "/store/delete/auth")
+ @ManagerAuth(memo = "鍏ュ嚭搴撶被鍨嬪垹闄�")
+ public R delete(@RequestParam String param) {
+ List<StoreType> list = JSONArray.parseArray(param, StoreType.class);
+ if (Cools.isEmpty(list)) {
+ return R.error();
+ }
+ for (StoreType entity : list) {
+ storeTypeService.delete(new EntityWrapper<>(entity));
}
return R.ok();
}
- @RequestMapping(value = "/storeType/export/auth")
- @ManagerAuth
+ @RequestMapping(value = "/store/export/auth")
+ @ManagerAuth(memo = "鍏ュ嚭搴撶被鍨嬪鍑�")
public R export(@RequestBody JSONObject param) {
- EntityWrapper<StoreType> wrapper = new EntityWrapper<>();
List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
- Map<String, Object> map = excludeTrash(param.getJSONObject("docType"));
+ EntityWrapper<StoreType> wrapper = new EntityWrapper<>();
+ Map<String, Object> map = excludeTrash(param.getJSONObject("basWrkIotype"));
convert(map, wrapper);
List<StoreType> list = storeTypeService.selectList(wrapper);
return R.ok(exportSupport(list, fields));
}
- @RequestMapping(value = "/storeTypeQuery/auth")
+ @RequestMapping(value = "/store/auth")
@ManagerAuth
public R query(String condition) {
+ EntityWrapper<StoreType> wrapper = new EntityWrapper<>();
+ wrapper.like("io_desc", condition);
+ Page<StoreType> page = storeTypeService.selectPage(new Page<>(0, 20), wrapper);
+ List<Map<String, Object>> result = new ArrayList<>();
+ for (StoreType basWrkIotype : page.getRecords()) {
+ Map<String, Object> map = new HashMap<>();
+ map.put("id", basWrkIotype.getStoreId());
+ map.put("value", basWrkIotype.getStoreName());
+ result.add(map);
+ }
+ return R.ok(result);
+ }
+
+ @RequestMapping(value = "/store/check/column/auth")
+ @ManagerAuth
+ public R query(@RequestBody JSONObject param) {
+ Wrapper<StoreType> wrapper = new EntityWrapper<StoreType>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val"));
+ if (null != storeTypeService.selectOne(wrapper)) {
+ return R.parse(BaseRes.REPEAT).add(getComment(BasWrkIotype.class, String.valueOf(param.get("key"))));
+ }
+ return R.ok();
+ }
+
+
+ @RequestMapping(value = "/storeTypeQuery/auth")
+ @ManagerAuth
+ public R query3(String condition) {
EntityWrapper<StoreType> wrapper = new EntityWrapper<>();
wrapper.like("store_name", condition);
wrapper.eq("status", 1);
@@ -136,15 +191,4 @@
}
return R.ok(result);
}
-
- @RequestMapping(value = "/storeType/check/column/auth")
- @ManagerAuth
- public R query(@RequestBody JSONObject param) {
- Wrapper<StoreType> wrapper = new EntityWrapper<StoreType>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val"));
- if (null != storeTypeService.selectOne(wrapper)) {
- return R.parse(BaseRes.REPEAT).add(getComment(DocType.class, String.valueOf(param.get("key"))));
- }
- return R.ok();
- }
-
}
diff --git a/src/main/java/com/zy/asrs/controller/WorkController.java b/src/main/java/com/zy/asrs/controller/WorkController.java
index 6de7c6e..e55cfd7 100644
--- a/src/main/java/com/zy/asrs/controller/WorkController.java
+++ b/src/main/java/com/zy/asrs/controller/WorkController.java
@@ -37,19 +37,19 @@
@RequestMapping("/available/put/site")
@ManagerAuth()
- public R availablePutSite(){
+ public R availablePutSite() {
return R.ok().add(basDevpService.getAvailableInSite());
}
@RequestMapping("/available/empty/put/site")
@ManagerAuth()
- public R availableEmptyPutSite(){
+ public R availableEmptyPutSite() {
return R.ok().add(basDevpService.getAvailableEmptyInSite());
}
@RequestMapping("/available/take/site")
@ManagerAuth()
- public R availableTakeSite(){
+ public R availableTakeSite() {
List<Map<String, Object>> result = new ArrayList<>();
List<Integer> outSite = basDevpService.getAvailableOutSite(101);
for (Integer siteId : outSite) {
@@ -77,13 +77,13 @@
@RequestMapping("/available/take/check/site")
@ManagerAuth()
- public R availableTakeCheckSite(){
+ public R availableTakeCheckSite() {
return R.ok().add(basDevpService.getAvailableOutSite(107));
}
@RequestMapping("/available/empty/take/site")
@ManagerAuth()
- public R availableEmptyTakeSite(){
+ public R availableEmptyTakeSite() {
return R.ok().add(basDevpService.getAvailableEmptyOutSite());
}
@@ -93,14 +93,24 @@
try {
String locNo = workService.startupFullPutStore(fullStoreParam, getUserId());
return R.ok("鍏ュ簱鍚姩鎴愬姛").add(locNo);
- } catch (Exception e){
- return R.error("鍏ュ簱鍚姩澶辫触==>"+e.getMessage());
+ } catch (Exception e) {
+ return R.error("鍏ュ簱鍚姩澶辫触==>" + e.getMessage());
}
}
@RequestMapping("/plate/out/start")
@ManagerAuth(memo = "鍑哄簱浣滀笟")
public R fullStoreTakeStart(@RequestBody StockOutParam param) {
+ workService.startupFullTakeStore(param, getUserId());
+ return R.ok("鍑哄簱鍚姩鎴愬姛");
+ }
+
+ @RequestMapping("/plate/out/start/v2")
+ @ManagerAuth(memo = "鍑哄簱浣滀笟2")
+ public R fullStoreTakeStartV2(@RequestBody StockOutParam param) {
+ if (Cools.isEmpty(param.getItemId())) {
+ return R.error("杞叆浠撳簱涓嶈兘涓虹┖");
+ }
workService.startupFullTakeStore(param, getUserId());
return R.ok("鍑哄簱鍚姩鎴愬姛");
}
@@ -136,10 +146,10 @@
@RequestMapping("/mat/turn/over/out/start")
@ManagerAuth(memo = "鍝佸彿绉讳氦")
public R turnMatLocDetl(@RequestBody EmptyPlateOutParam param) {
- if (Cools.isEmpty(param) || Cools.isEmpty(param.getLocDetls(),param.getMatId()) || Cools.isEmpty(param.getLocDetls().get(0)) || Cools.isEmpty(param.getLocDetls().get(0).getMatnr())){
+ if (Cools.isEmpty(param) || Cools.isEmpty(param.getLocDetls(), param.getMatId()) || Cools.isEmpty(param.getLocDetls().get(0)) || Cools.isEmpty(param.getLocDetls().get(0).getMatnr())) {
return R.error("鍙傛暟涓虹┖");
}
- if (param.getLocDetls().size()>1){
+ if (param.getLocDetls().size() > 1) {
return R.error("璇峰崟鏉℃暟鎹慨鏀癸紝璋ㄦ厧鎿嶄綔锛�");
}
workService.turnMatLocDetl(param, getUserId());
@@ -156,7 +166,7 @@
@RequestMapping("/hand/control/wrkMast")
@ManagerAuth(memo = "鎵嬪姩澶勭悊宸ヤ綔妗�")
public R handControlWrkMast(@RequestParam String workNo,
- @RequestParam Integer type){
+ @RequestParam Integer type) {
if (type == 1) {
workService.completeWrkMast(workNo, getUserId());
return R.ok("宸ヤ綔妗e凡瀹屾垚");
diff --git a/src/main/java/com/zy/asrs/entity/param/StockOutParam.java b/src/main/java/com/zy/asrs/entity/param/StockOutParam.java
index baa0a71..2de9baa 100644
--- a/src/main/java/com/zy/asrs/entity/param/StockOutParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/StockOutParam.java
@@ -16,6 +16,9 @@
private Integer outSite;
//
+ private String itemId;
+
+ //
private String checkId;
// 鐗╂枡缂栧彿闆嗗悎
diff --git a/src/main/java/com/zy/asrs/service/WorkService.java b/src/main/java/com/zy/asrs/service/WorkService.java
index 0ebeebc..148b496 100644
--- a/src/main/java/com/zy/asrs/service/WorkService.java
+++ b/src/main/java/com/zy/asrs/service/WorkService.java
@@ -38,7 +38,7 @@
* @param locDetls 寰呭嚭搴撶墿鏂�
* @param ioType 鍏ュ嚭搴撶被鍨�
*/
- void stockOut(BasDevp staNo, List<LocDetlDto> locDetls, IoWorkType ioWorkType, Long userId,String checkOrderNo);
+ void stockOut(BasDevp staNo, List<LocDetlDto> locDetls, IoWorkType ioWorkType, Long userId,String checkOrderNo,String itemId);
void stockOut(BasDevp staNo, TaskDto taskDto, Long userId);
diff --git a/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java
index 63e04d5..221dee2 100644
--- a/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java
@@ -114,17 +114,19 @@
}
break;
case "閲囪喘鍒拌揣":
- process1 = processCGDH(orderDetls);
- List<Object> cg = new ArrayList<>();
- cg.add(process1);
- //鍙戦�佽姹�
- response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, purchasein, JSONObject.toJSONString(cg));
- if (!Cools.isEmpty(response) && response.isSuccess()) {
- log.info("閲囪喘鍒拌揣response:{}", response);
- step = 10;
- } else {
- remark = response.getMessage() + "--" + response.getErrorStack().substring(0, 100);
- }
+ //涓嶉渶瑕佷笂鎶ヤ簡
+ step = 10;
+// process1 = processCGDH(orderDetls);
+// List<Object> cg = new ArrayList<>();
+// cg.add(process1);
+// //鍙戦�佽姹�
+// response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, purchasein, JSONObject.toJSONString(cg));
+// if (!Cools.isEmpty(response) && response.isSuccess()) {
+// log.info("閲囪喘鍒拌揣response:{}", response);
+// step = 10;
+// } else {
+// remark = response.getMessage() + "--" + response.getErrorStack().substring(0, 100);
+// }
break;
case "杞簱-鍑哄簱":
if (step == 1) {
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 93c21e4..fb4a88e 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -189,6 +189,9 @@
public void startupFullTakeStore(StockOutParam param, Long userId) {
// 鐩爣绔欑偣鐘舵�佹娴�
BasDevp staNo = basDevpService.checkSiteStatus(param.getOutSite());
+ if (Cools.isEmpty(param.getItemId())) {
+ throw new CoolException("鎵�鍏ヤ粨搴撲笉鑳戒负绌�");
+ }
// 鑾峰彇搴撲綅鏄庣粏
List<LocDetlDto> locDetlDtos = new ArrayList<>();
for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) {
@@ -208,7 +211,7 @@
LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetlDtos.get(0).getLocDetl().getLocNo()));
if (locMast.getLocSts().equals("F") || locMast.getLocSts().equals("D")) {
// 鍚姩鍑哄簱寮�濮� 101.鍑哄簱
- stockOut(staNo, locDetlDtos, null, userId, null);
+ stockOut(staNo, locDetlDtos, null, userId, null, param.getItemId());
} else {
throw new CoolException("鎵�閫夊簱浣嶅瓨鍦ㄧ姸鎬佷笉涓篎銆丏鐨勫簱浣嶏紝搴撲綅鍙凤細" + locMast.getLocNo() + " 銆佸綋鍓嶇姸鎬侊細" + locMast.getLocSts() + "-" + locMast.getLocSts$());
}
@@ -297,7 +300,7 @@
@Override
@Transactional
- public void stockOut(BasDevp staNo, List<LocDetlDto> locDetlDtos, IoWorkType ioWorkType, Long userId, String checkOrderNo) {
+ public void stockOut(BasDevp staNo, List<LocDetlDto> locDetlDtos, IoWorkType ioWorkType, Long userId, String checkOrderNo, String itemId) {
Date now = new Date();
// 鍚堝苟鍚岀被椤�
Set<String> locNos = new HashSet<>();
@@ -369,6 +372,7 @@
wrkMast.setAppeTime(now);
wrkMast.setModiUser(userId);
wrkMast.setModiTime(now);
+ wrkMast.setPacked(itemId);
if (!wrkMastService.insert(wrkMast)) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐ワ紝鍑哄簱搴撲綅鍙凤細" + dto.getLocNo());
}
@@ -740,7 +744,7 @@
LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetlDtos.get(0).getLocDetl().getLocNo()));
if (locMast.getLocSts().equals("F")) {
// 鍚姩鍑哄簱寮�濮� 107.鐩樼偣鍑哄簱
- stockOut(staNo, locDetlDtos, IoWorkType.CHECK_OUT, userId, param.getCheckId());
+ stockOut(staNo, locDetlDtos, IoWorkType.CHECK_OUT, userId, param.getCheckId(), null);
} else {
throw new CoolException("鎵�閫夊簱浣嶅瓨鍦ㄧ姸鎬佷笉涓篎鐨勫簱浣嶏紝搴撲綅鍙凤細" + locMast.getLocNo() + " 銆佸綋鍓嶇姸鎬侊細" + locMast.getLocSts() + "-" + locMast.getLocSts$());
}
diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
index 6eaf9a2..aaa1f36 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -2,6 +2,9 @@
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
+import com.core.common.DateUtils;
+import com.core.common.SnowflakeIdWorker;
+import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
import com.zy.asrs.service.*;
import com.zy.asrs.task.AbstractHandler;
@@ -42,6 +45,13 @@
private OrderDetlPakoutService orderDetlPakoutService;
@Autowired
private OrderService orderService;
+ @Autowired
+ private StoreTypeService storeTypeService;
+ @Autowired
+ private SnowflakeIdWorker snowflakeIdWorker;
+ @Autowired
+ private DocTypeService docTypeService;
+
public ReturnT<String> start(WrkMast wrkMast) {
// 4.鍏ュ簱瀹屾垚
@@ -204,6 +214,66 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("鎷f枡鍏ュ簱 ===>> 宸ヤ綔鏄庣粏妗d负绌�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
}
+
+
+
+ // 鍒ゆ柇鏄惁涓鸿浆搴撳嚭搴�
+ StoreType storeType = null;
+ Order order = null;
+ if (!Cools.isEmpty(wrkMast.getPacked())) {
+ storeType = storeTypeService.selectById(wrkMast.getPacked());
+ if (null != storeType) {
+ DocType docType = docTypeService.selectOne(new EntityWrapper<DocType>().eq("doc_name", "杞簱-鍑哄簱"));
+ String convert = DateUtils.convert(now, DateUtils.yyyyMMdd);
+ order = new Order(
+ String.valueOf(snowflakeIdWorker.nextId()), // 缂栧彿[闈炵┖]
+ convert + "_" + wrkMast.getPacked() + "_" + wrkMast.getWrkNo(), // 璁㈠崟缂栧彿
+ DateUtils.convert(now), // 鍗曟嵁鏃ユ湡
+ docType.getDocId(), // 鍗曟嵁绫诲瀷
+ storeType.getStoreId(), // 椤圭洰缂栧彿
+ storeType.getStoreName(), //
+ null, // 璋冩嫧椤圭洰缂栧彿
+ null, // 鍒濆绁ㄦ嵁鍙�
+ null, // 绁ㄦ嵁鍙�
+ null, // 瀹㈡埛缂栧彿
+ null, // 瀹㈡埛
+ null, // 鑱旂郴鏂瑰紡
+ wrkMast.getAppeUser$(), // 鎿嶄綔浜哄憳
+ null, // 鍚堣閲戦
+ null, // 浼樻儬鐜�
+ null, // 浼樻儬閲戦
+ null, // 閿�鍞垨閲囪喘璐圭敤鍚堣
+ null, // 瀹炰粯閲戦
+ null, // 浠樻绫诲瀷
+ null, // 涓氬姟鍛�
+ null, // 缁撶畻澶╂暟
+ null, // 閭垂鏀粯绫诲瀷
+ null, // 閭垂
+ null, // 浠樻鏃堕棿
+ null, // 鍙戣揣鏃堕棿
+ null, // 鐗╂祦鍚嶇О
+ null, // 鐗╂祦鍗曞彿
+ 1L, // 璁㈠崟鐘舵��
+ 4, // 鐘舵��
+ wrkMast.getAppeUser(), // 娣诲姞浜哄憳
+ now, // 娣诲姞鏃堕棿
+ wrkMast.getAppeUser(), // 淇敼浜哄憳
+ now, // 淇敼鏃堕棿
+ null, // 澶囨敞
+ docType.getPakin() == 1 ? 1 : 2
+ );
+ if (!orderService.insert(order)) {
+ throw new CoolException("淇濆瓨璁㈠崟涓绘。澶辫触");
+ }
+ }
+
+ }
+
+
+
+
+
+
for (WrkDetl wrkDetl : wrkDetls53) {
LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
@@ -443,30 +513,98 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("鍏ㄦ澘鍑哄簱 ===>> 宸ヤ綔鏄庣粏妗d负绌�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
}
- for (WrkDetl wrkDetl : wrkDetls101) {
- // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
- //addOrderDetlQty(wrkMast, wrkDetl);
- OrderDetlPakout orderDetlPakout;
- if (!Cools.isEmpty(wrkDetl.getThreeCode())) {
- orderDetlPakout = orderDetlPakoutService.selectById(Long.parseLong(wrkDetl.getThreeCode()));
- } else {
- orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
- if (orderDetlPakout == null) {
- orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null, wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
+ // 鍒ゆ柇鏄惁涓鸿浆搴撳嚭搴�
+ StoreType storeType = null;
+ Order order = null;
+ if (!Cools.isEmpty(wrkMast.getPacked())) {
+ storeType = storeTypeService.selectById(wrkMast.getPacked());
+ if (null != storeType) {
+ DocType docType = docTypeService.selectOne(new EntityWrapper<DocType>().eq("doc_name", "杞簱-鍑哄簱"));
+ String convert = DateUtils.convert(now, DateUtils.yyyyMMdd);
+ order = new Order(
+ String.valueOf(snowflakeIdWorker.nextId()), // 缂栧彿[闈炵┖]
+ convert + "_" + wrkMast.getPacked() + "_" + wrkMast.getWrkNo(), // 璁㈠崟缂栧彿
+ DateUtils.convert(now), // 鍗曟嵁鏃ユ湡
+ docType.getDocId(), // 鍗曟嵁绫诲瀷
+ storeType.getStoreId(), // 椤圭洰缂栧彿
+ storeType.getStoreName(), //
+ null, // 璋冩嫧椤圭洰缂栧彿
+ null, // 鍒濆绁ㄦ嵁鍙�
+ null, // 绁ㄦ嵁鍙�
+ null, // 瀹㈡埛缂栧彿
+ null, // 瀹㈡埛
+ null, // 鑱旂郴鏂瑰紡
+ wrkMast.getAppeUser$(), // 鎿嶄綔浜哄憳
+ null, // 鍚堣閲戦
+ null, // 浼樻儬鐜�
+ null, // 浼樻儬閲戦
+ null, // 閿�鍞垨閲囪喘璐圭敤鍚堣
+ null, // 瀹炰粯閲戦
+ null, // 浠樻绫诲瀷
+ null, // 涓氬姟鍛�
+ null, // 缁撶畻澶╂暟
+ null, // 閭垂鏀粯绫诲瀷
+ null, // 閭垂
+ null, // 浠樻鏃堕棿
+ null, // 鍙戣揣鏃堕棿
+ null, // 鐗╂祦鍚嶇О
+ null, // 鐗╂祦鍗曞彿
+ 1L, // 璁㈠崟鐘舵��
+ 4, // 鐘舵��
+ wrkMast.getAppeUser(), // 娣诲姞浜哄憳
+ now, // 娣诲姞鏃堕棿
+ wrkMast.getAppeUser(), // 淇敼浜哄憳
+ now, // 淇敼鏃堕棿
+ null, // 澶囨敞
+ docType.getPakin() == 1 ? 1 : 2
+ );
+ if (!orderService.insert(order)) {
+ throw new CoolException("淇濆瓨璁㈠崟涓绘。澶辫触");
}
}
- try {
- if (!Cools.isEmpty(orderDetlPakout)) {
- if (!orderDetlPakoutService.increaseQtyById(orderDetlPakout.getId(), wrkDetl.getAnfme())) {
-// exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
-// wrkMast.getWrkNo(), wrkMast.getLocNo());
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return FAIL.setMsg("鍏ㄦ澘鍑哄簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
+ }
+ for (WrkDetl wrkDetl : wrkDetls101) {
+ if (storeType != null) {
+ OrderDetl orderDetl = new OrderDetl();
+ orderDetl.sync(wrkDetl);
+ orderDetl.setOrderId(order.getId());
+ orderDetl.setOrderNo(order.getOrderNo());
+ orderDetl.setCreateBy(order.getCreateBy());
+ orderDetl.setCreateTime(now);
+ orderDetl.setUpdateBy(order.getCreateBy());
+ orderDetl.setUpdateTime(now);
+ orderDetl.setStatus(1);
+ orderDetl.setQty(wrkDetl.getAnfme());
+ if (!orderDetlService.insert(orderDetl)) {
+ throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
+ }
+ } else {
+ // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
+ //addOrderDetlQty(wrkMast, wrkDetl);
+ OrderDetlPakout orderDetlPakout;
+ if (!Cools.isEmpty(wrkDetl.getThreeCode())) {
+ orderDetlPakout = orderDetlPakoutService.selectById(Long.parseLong(wrkDetl.getThreeCode()));
+ } else {
+ orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
+ if (orderDetlPakout == null) {
+ orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null, wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
}
}
- } catch (Exception ignore) {
+
+ try {
+ if (!Cools.isEmpty(orderDetlPakout)) {
+ if (!orderDetlPakoutService.increaseQtyById(orderDetlPakout.getId(), wrkDetl.getAnfme())) {
+// exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
+// wrkMast.getWrkNo(), wrkMast.getLocNo());
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+ return FAIL.setMsg("鍏ㄦ澘鍑哄簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
+ }
+ }
+ } catch (Exception ignore) {
+ }
}
+
}
// 鍒犻櫎宸ヤ綔妗f簮搴撲綅鐨勫簱瀛樻槑缁�
if (!locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()))) {
diff --git a/src/main/webapp/static/js/pakStore/stockOut.js b/src/main/webapp/static/js/pakStore/stockOut.js
index d9b2580..333e006 100644
--- a/src/main/webapp/static/js/pakStore/stockOut.js
+++ b/src/main/webapp/static/js/pakStore/stockOut.js
@@ -71,6 +71,7 @@
layer.msg('璇峰厛鎻愬彇鍟嗗搧搴撳瓨', {icon: 2});
} else {
var staNo = $("#staNoSelect").val();
+ var itemId = $("#itemId").val();
if (staNo === "" || staNo === null){
layer.msg("璇烽�夋嫨鍑哄簱鍙�", {icon: 2});
return;
diff --git a/src/main/webapp/static/js/pakStore/stockOutZKCK.js b/src/main/webapp/static/js/pakStore/stockOutZKCK.js
new file mode 100644
index 0000000..75fb7a1
--- /dev/null
+++ b/src/main/webapp/static/js/pakStore/stockOutZKCK.js
@@ -0,0 +1,183 @@
+var locDetlLayerIdx;
+var locDetlData = [];
+function getCol() {
+ var cols = [
+ {field: 'count', align: 'center',title: '鍑哄簱鏁伴噺', edit:'text', width: 130, style:'color: blue;font-weight: bold'}
+ ,{field: 'anfme', align: 'center',title: '搴撳瓨鏁伴噺'}
+ ,{field: 'locNo$', align: 'center',title: '搴撲綅鍙�'}
+ ];
+ arrRemove(detlCols, 'field', 'anfme');
+ cols.push.apply(cols, detlCols);
+ cols.push({fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width: 80})
+ return cols;
+}
+
+layui.config({
+ base: baseUrl + "/static/layui/lay/modules/"
+}).use(['table','laydate', 'form', 'admin'], function() {
+ var table = layui.table;
+ var $ = layui.jquery;
+ var layer = layui.layer;
+ var form = layui.form;
+ var admin = layui.admin;
+
+ tableIns = table.render({
+ elem: '#chooseData',
+ headers: {token: localStorage.getItem('token')},
+ data: [],
+ even: true,
+ toolbar: '#toolbar',
+ cellMinWidth: 50,
+ limit: 500,
+ cols: [getCol()],
+ done: function(res, curr, count) {
+ limit();
+ getOutBound();
+ }
+ });
+
+ // 椤甸潰淇敼
+ table.on('edit(chooseData)', function (obj) {
+ let index = obj.tr.attr("data-index");
+ let data = locDetlData[index];
+ let modify = true;
+ if (obj.field === 'count'){
+ let vle = Number(obj.value);
+ if (isNaN(vle)) {
+ layer.msg("璇疯緭鍏ユ暟瀛�", {icon: 2});
+ modify = false;
+ } else {
+ if (vle <= 0) {
+ layer.msg("鏁伴噺蹇呴』澶т簬闆�", {icon: 2});
+ modify = false;
+ }
+ if (vle > Number(data.anfme)) {
+ layer.msg("鍑哄簱鏁伴噺涓嶅緱澶т簬搴撳瓨鏁伴噺", {icon: 2});
+ modify = false;
+ }
+ }
+ }
+ if (modify) {
+ data[obj.field] = obj.value;
+ }
+ tableIns.reload({data: locDetlData});
+ });
+
+ // 鐩戝惉澶村伐鍏锋爮浜嬩欢
+ table.on('toolbar(chooseData)', function (obj) {
+ switch (obj.event) {
+ case 'outbound':
+ if (locDetlData.length === 0){
+ layer.msg('璇峰厛鎻愬彇鍟嗗搧搴撳瓨', {icon: 2});
+ } else {
+ var staNo = $("#staNoSelect").val();
+ var itemId = $("#itemId").val();
+ if (staNo === "" || staNo === null){
+ layer.msg("璇烽�夋嫨鍑哄簱鍙�", {icon: 2});
+ return;
+ }
+ if (itemId === "" || itemId === null){
+ layer.msg("璇烽�夋嫨鍏ュ簱浠撳簱", {icon: 2});
+ return;
+ }
+ let param = {
+ outSite: staNo,
+ itemId: itemId,
+ locDetls: locDetlData
+ }
+ $.ajax({
+ url: baseUrl+"/plate/out/start/v2",
+ headers: {'token': localStorage.getItem('token')},
+ data: JSON.stringify(param),
+ contentType:'application/json;charset=UTF-8',
+ method: 'POST',
+ success: function (res) {
+ if (res.code === 200){
+ locDetlData = [];
+ tableIns.reload({data: locDetlData,done:function (res) {limit();getOutBound();}});
+ layer.msg(res.msg, {icon: 1});
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ } else {
+ layer.msg(res.msg, {icon: 2})
+ }
+ }
+ });
+ }
+ break;
+ }
+ });
+
+ // 鐩戝惉琛屽伐鍏蜂簨浠�
+ table.on('tool(chooseData)', function(obj){
+ switch (obj.event) {
+ case 'remove':
+ let index = obj.tr.attr("data-index");
+ locDetlData.splice(index, 1);
+ tableIns.reload({data: locDetlData});
+ break;
+ }
+ });
+
+ // 鑾峰彇鍑哄簱鍙�
+ function getOutBound(){
+ $.ajax({
+ url: baseUrl+"/available/take/site",
+ headers: {'token': localStorage.getItem('token')},
+ method: 'POST',
+ async: false,
+ success: function (res) {
+ if (res.code === 200){
+ var tpl = $("#takeSiteSelectTemplate").html();
+ var template = Handlebars.compile(tpl);
+ var html = template(res);
+ $('#staNoSelect').append(html);
+ form.render('select');
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ }else {
+ layer.msg(res.msg)
+ }
+ }
+ })
+ }
+
+
+ $(document).on('click','#mat-query', function () {
+ let loadIndex = layer.msg('璇锋眰涓�...', {icon: 16, shade: 0.01, time: false});
+ locDetlLayerIdx = layer.open({
+ type: 2,
+ title: false,
+ closeBtn: false,
+ maxmin: false,
+ area: ['90%', '85%'],
+ shadeClose: true,
+ content: 'locDetlQuery.html',
+ success: function(layero, index){
+ layer.close(loadIndex);
+ }
+ });
+ })
+
+})
+
+// 娣诲姞琛ㄦ牸鏁版嵁
+function addTableData(data) {
+ for (var i=0;i<data.length;i++){
+ let pass = false;
+ for (var j=0;j<locDetlData.length;j++){
+ if (data[i].matnr === locDetlData[j].matnr && data[i].batch === locDetlData[j].batch && data[i].locNo$ === locDetlData[j].locNo$) {
+ pass = true;
+ break;
+ }
+ }
+ if (pass) {
+ data.splice(i--, 1);
+ } else {
+ data[i]["count"] = data[i]["anfme"];
+ }
+ }
+ locDetlData.push.apply(locDetlData, data);
+ tableIns.reload({data: locDetlData});
+ layer.close(locDetlLayerIdx);
+}
diff --git a/src/main/webapp/views/order/order.html b/src/main/webapp/views/order/order.html
index 88ea115..aaa9ffe 100644
--- a/src/main/webapp/views/order/order.html
+++ b/src/main/webapp/views/order/order.html
@@ -163,8 +163,8 @@
<div class="layui-form-item">
<label class="layui-form-label">鍑哄簱浠撳簱锛�</label>
<div class="layui-input-block cool-auto-complete">
- <input class="layui-input" name="defNumber" placeholder="璇疯緭鍏ュ叆搴撲粨搴�" style="display: none">
- <input id="cstmr" name="cstmr" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏ュ崟鎹被鍨�" onfocus=this.blur() lay-verType="tips" lay-verify="required">
+ <input class="layui-input" name="defNumber" placeholder="璇疯緭鍏ュ嚭搴撲粨搴�" style="display: none">
+ <input id="cstmr" name="cstmr" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏ュ嚭搴撲粨搴�" onfocus=this.blur() lay-verType="tips" lay-verify="required">
<div class="cool-auto-complete-window">
<input class="cool-auto-complete-window-input" data-key="storeTypeQuery2BystoreType" onkeyup="autoLoad(this.getAttribute('data-key'))">
<select class="cool-auto-complete-window-select" data-key="storeTypeQuery2BystoreTypeSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple">
@@ -176,7 +176,7 @@
<label class="layui-form-label">鍏ュ簱浠撳簱锛�</label>
<div class="layui-input-block cool-auto-complete">
<input class="layui-input" name="itemId" placeholder="璇疯緭鍏ュ叆搴撲粨搴�" style="display: none">
- <input id="itemName" name="itemName" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏ュ崟鎹被鍨�" onfocus=this.blur() lay-verType="tips" lay-verify="required">
+ <input id="itemName" name="itemName" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏ュ叆搴撲粨搴�" onfocus=this.blur() lay-verType="tips" lay-verify="required">
<div class="cool-auto-complete-window">
<input class="cool-auto-complete-window-input" data-key="storeTypeQueryBystoreType" onkeyup="autoLoad(this.getAttribute('data-key'))">
<select class="cool-auto-complete-window-select" data-key="storeTypeQueryBystoreTypeSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple">
diff --git a/src/main/webapp/views/pakStore/stockOut.html b/src/main/webapp/views/pakStore/stockOut.html
index 3e02f19..1906e66 100644
--- a/src/main/webapp/views/pakStore/stockOut.html
+++ b/src/main/webapp/views/pakStore/stockOut.html
@@ -30,6 +30,7 @@
width: 100px;
font-size: 13px;
}
+
.layui-btn-container .layui-form-select {
display: inline-block;
width: 150px;
@@ -94,15 +95,17 @@
<!-- 澶撮儴 -->
<script type="text/html" id="toolbar">
<div class="layui-form">
- <div class="layui-btn-container">
+ <div class=" layui-inline layui-btn-container">
<!-- 1.閫夋嫨鍑哄簱鍙� -->
<span id="staNoSpan">鍑哄簱鍙o細</span>
<select id="staNoSelect" lay-verify="required">
<option value="">璇烽�夋嫨绔欑偣</option>
</select>
- <!-- 2.鍚姩鍑哄簱 -->
- <button class="layui-btn layui-btn-lg" id="btn-outbound" lay-event="outbound">鍚姩鍑哄簱</button>
</div>
+
+
+ <!-- 2.鍚姩鍑哄簱 -->
+ <button class="layui-btn layui-btn-lg" id="btn-outbound" lay-event="outbound">鍚姩鍑哄簱</button>
</div>
</script>
diff --git a/src/main/webapp/views/pakStore/stockOutZKCK.html b/src/main/webapp/views/pakStore/stockOutZKCK.html
new file mode 100644
index 0000000..8a0231b
--- /dev/null
+++ b/src/main/webapp/views/pakStore/stockOutZKCK.html
@@ -0,0 +1,145 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="utf-8">
+ <title></title>
+ <meta name="renderer" content="webkit">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+ <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+ <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
+ <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all">
+ <link rel="stylesheet" href="../../static/css/cool.css" media="all">
+ <link rel="stylesheet" href="../../static/css/common.css" media="all">
+ <style>
+ html {
+ height: 100%;
+ padding: 10px;
+ background-color: #f1f1f1;
+ box-sizing: border-box;
+ }
+ body {
+ background-color: #fff;
+ border-radius: 5px;
+ box-shadow: 0 0 3px rgba(0,0,0,.3);
+ padding-bottom: 20px;
+ }
+
+ #staNoSpan {
+ text-align: center;
+ display: inline-block;
+ width: 100px;
+ font-size: 13px;
+ }
+
+ .layui-btn-container .layui-form-select {
+ display: inline-block;
+ width: 150px;
+ height: 30px;
+ }
+ .layui-btn-container .layui-form-select.layui-form-selected {
+ display: inline-block;
+ width: 150px;
+ }
+ .layui-btn-container .layui-select-title input {
+ font-size: 13px;
+ }
+ .layui-btn-container .layui-anim.layui-anim-upbit dd {
+ font-size: 13px;
+ }
+
+ #btn-outbound {
+ margin-left: 60px;
+ display: none;
+ }
+
+ /*----------------------------------*/
+ .function-area {
+ padding: 20px 50px;
+ }
+ .function-btn {
+ font-size: 16px;
+ padding: 1px 2px;
+ width: 100px;
+ height: 50px;
+ border-color: #2b425b;
+ border-radius: 4px;
+ border-width: 2px;
+ background: none;
+ border-style: solid;
+ transition: 0.4s;
+ cursor: pointer;
+ letter-spacing: 1.5px;
+ }
+ .function-btn:hover {
+ background-color: #2b425b;
+ color: #fff;
+ }
+
+ #mat-query {
+ display: none;
+ }
+ </style>
+</head>
+<body>
+
+<!-- 鍔熻兘鍖� -->
+<div class="function-area">
+ <button id="mat-query" class="function-btn">鎻愬彇搴撳瓨</button>
+</div>
+
+<hr>
+
+<!-- 琛ㄦ牸 -->
+<div style="padding-bottom: 5px; margin-bottom: 45px">
+
+ <!-- 澶撮儴 -->
+ <script type="text/html" id="toolbar">
+ <div class="layui-form">
+ <div class=" layui-inline layui-btn-container">
+ <!-- 1.閫夋嫨鍑哄簱鍙� -->
+ <span id="staNoSpan">鍑哄簱鍙o細</span>
+ <select id="staNoSelect" lay-verify="required">
+ <option value="">璇烽�夋嫨绔欑偣</option>
+ </select>
+ </div>
+
+ <div class="layui-inline">
+ <label style="width: 100px" class="layui-form-label">鍏ュ簱浠撳簱锛�</label>
+ <div class="layui-input-block cool-auto-complete">
+ <input class="layui-input" name="itemId" id="itemId" placeholder="璇疯緭鍏ュ叆搴撲粨搴�" style="display: none">
+ <input style="width: 200px" id="itemName" name="itemName" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏ュ叆搴撲粨搴�" onfocus=this.blur() lay-verType="tips" lay-verify="required">
+ <div class="cool-auto-complete-window">
+ <input class="cool-auto-complete-window-input" data-key="storeTypeQueryBystoreType" onkeyup="autoLoad(this.getAttribute('data-key'))">
+ <select class="cool-auto-complete-window-select" data-key="storeTypeQueryBystoreTypeSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple">
+ </select>
+ </div>
+ </div>
+ </div>
+ <!-- 2.鍚姩鍑哄簱 -->
+ <button class="layui-btn layui-btn-lg" id="btn-outbound" lay-event="outbound">鍚姩鍑哄簱</button>
+ </div>
+ </script>
+
+ <!-- 琛� -->
+ <script type="text/html" id="operate">
+ <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="remove">绉婚櫎</a>
+ </script>
+
+ <table class="layui-table" id="chooseData" lay-filter="chooseData"></table>
+</div>
+
+<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
+<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/handlebars/handlebars-v4.5.3.js"></script>
+<script type="text/javascript" src="../../static/js/pakStore/stockOutZKCK.js" charset="utf-8"></script>
+
+<script type="text/template" id="takeSiteSelectTemplate">
+ {{#each data}}
+ <option value="{{siteId}}">{{desc}}</option>
+ {{/each}}
+</script>
+</body>
+</html>
+
--
Gitblit v1.9.1