From f9a1f1b0a23bb8bc33a4a649f61f9efcce349279 Mon Sep 17 00:00:00 2001
From: 野心家 <1051256694@qq.com>
Date: 星期四, 10 八月 2023 13:20:01 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/controller/OrderController.java | 229 ++++++++++++
src/main/webapp/static/js/mat/mat.js | 71 +++
src/main/webapp/views/mat/mat.html | 39 ++
src/main/webapp/static/js/order/order.js | 231 ++++++++++++
src/main/java/com/zy/asrs/controller/MatController.java | 178 +++++++--
src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java | 247 ++++++------
src/main/webapp/views/order/order.html | 33 +
7 files changed, 868 insertions(+), 160 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/MatController.java b/src/main/java/com/zy/asrs/controller/MatController.java
index a8eb233..ede2e37 100644
--- a/src/main/java/com/zy/asrs/controller/MatController.java
+++ b/src/main/java/com/zy/asrs/controller/MatController.java
@@ -2,6 +2,7 @@
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
+import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
@@ -10,21 +11,26 @@
import com.core.annotations.ManagerAuth;
import com.core.common.*;
import com.core.exception.CoolException;
-import com.zy.asrs.entity.LocDetl;
-import com.zy.asrs.entity.Mat;
-import com.zy.asrs.entity.MatPrint;
-import com.zy.asrs.entity.OrderDetl;
+import com.zy.asrs.entity.*;
+import com.zy.asrs.entity.param.InFormIdParam;
import com.zy.asrs.entity.result.KeyValueVo;
+import com.zy.asrs.service.ApiLogService;
import com.zy.asrs.service.LocDetlService;
import com.zy.asrs.service.MatService;
+import com.zy.asrs.service.TagService;
+import com.zy.asrs.task.core.ReturnT;
+import com.zy.asrs.task.kingdee.handler.LoginAuthenticationHandler;
import com.zy.asrs.utils.MatExcelListener;
import com.zy.common.CodeRes;
import com.zy.common.config.AdminInterceptor;
import com.zy.common.entity.MatExcel;
import com.zy.common.utils.BarcodeUtils;
+import com.zy.common.utils.HttpHandler;
import com.zy.common.utils.QrCode;
import com.zy.common.web.BaseController;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@@ -34,26 +40,45 @@
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.net.URLEncoder;
+import java.text.SimpleDateFormat;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
import java.util.*;
@RestController
+@Slf4j
public class MatController extends BaseController {
+ @Value("${erp.address.URL}")
+ //绔彛
+ private String URL;
+
+ @Value("${erp.address.inaddress}")
+ //鍗曟嵁锛屽晢鍝佹。妗堝湴鍧�
+ private String inaddress;
+
+ @Autowired
+ private TagService tagService;
+
+ @Autowired
+ private ApiLogService apiLogService;
@Autowired
private MatService matService;
@Autowired
private LocDetlService locDetlService;
@Autowired
private SnowflakeIdWorker snowflakeIdWorker;
+ @Autowired
+ private LoginAuthenticationHandler loginAuthenticationHandler;
@RequestMapping(value = "/mat/auto/matnr/auth")
- public R autoMatnr(){
+ public R autoMatnr() {
return R.ok().add("YJ" + DateUtils.convert(new Date(), DateUtils.yyyyMMddHHmmsssss).substring(0, 16));
}
@RequestMapping(value = "/mat/list/pda/auth")
@ManagerAuth
- public R pdaList(@RequestParam(required = true)Long tagId){
+ public R pdaList(@RequestParam(required = true) Long tagId) {
EntityWrapper<Mat> wrapper = new EntityWrapper<>();
wrapper.eq("tag_id", tagId);
wrapper.orderBy("create_time", false);
@@ -63,7 +88,7 @@
@RequestMapping(value = "/mat/search/pda/auth")
@ManagerAuth
- public R pdaSearch(@RequestParam(required = false)String condition){
+ public R pdaSearch(@RequestParam(required = false) String condition) {
EntityWrapper<Mat> wrapper = new EntityWrapper<>();
if (!Cools.isEmpty(condition)) {
wrapper.like("matnr", condition).or().like("maktx", condition);
@@ -87,11 +112,11 @@
@RequestMapping(value = "/mat/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) {
Object tagId = param.get("tag_id");
if (Cools.isEmpty(tagId)) {
tagId = getOriginTag().getId();
@@ -104,10 +129,10 @@
}
- private void convert(Map<String, Object> map, EntityWrapper wrapper){
- for (Map.Entry<String, Object> entry : map.entrySet()){
+ private void convert(Map<String, Object> map, EntityWrapper 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]));
@@ -141,22 +166,101 @@
if (null != matService.selectByMatnr(mat.getMatnr())) {
return R.error("缂栧彿宸插瓨鍦�");
}
- Date now = new Date();
- mat.setCreateBy(getUserId());
- mat.setCreateTime(now);
- mat.setUpdateBy(getUserId());
- mat.setUpdateTime(now);
- mat.setStatus(1);
- if (!matService.insert(mat)) {
- throw new CoolException("娣诲姞澶辫触锛岃鑱旂郴绠$悊鍛�");
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ //鐧诲綍閲戣澏
+ ReturnT<String> start = loginAuthenticationHandler.start();
+
+ InFormIdParam inFormIdParam = new InFormIdParam();
+ inFormIdParam.setFormId("BD_MATERIAL");
+ inFormIdParam.setLimit(100);
+ inFormIdParam.setStartRow("0");
+ String FDocumentStatus = "C";
+ String FNumber=mat.getMatnr();
+ //鏉′欢鍜岄渶瑕佽幏寰楃殑缁撴灉鎷兼帴
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("FormId", inFormIdParam.getFormId());
+ jsonObject.put("Limit", inFormIdParam.getLimit());
+ jsonObject.put("StartRow", inFormIdParam.getStartRow());
+ jsonObject.put("FilterString", "FDocumentStatus='" + FDocumentStatus +"' and FNumber='"+FNumber+"' and FUseOrgId .FNumber='201'");
+ jsonObject.put("FieldKeys", "FName,FNumber,FCreateDate,FSpecification,FDocumentStatus");
+ JSONObject jsonObject1 = new JSONObject();
+ jsonObject1.put("data", jsonObject);
+ String add = jsonObject1.toJSONString();
+ //涓婃姤
+ String response = "";
+ boolean success = false;
+ try {
+ //鑾峰彇Cookie鍊�
+ HashMap<String, Object> headers = new HashMap<>();
+ headers.put("Cookie", start.getContent());
+ response = new HttpHandler.Builder()
+ .setHeaders(headers)
+ .setUri(URL)
+ .setPath(inaddress)
+ .setJson(add)
+ .build()
+ .doPost();
+ JSONArray data = JSON.parseArray(response);
+ if (data.getJSONArray(0).get(0).toString().length()<20) {
+ success = true;
+ JSONArray jsonArray = data.getJSONArray(0);
+ //鐢熸垚鍟嗗搧妗f
+ //鍟嗗搧缂栧彿
+ mat = matService.selectByMatnr(jsonArray.get(1).toString());
+ if (mat == null) {
+ mat = new Mat();
+ Tag tag = new Tag();
+ mat.setMatnr(jsonArray.get(1).toString());
+ mat.setMaktx(jsonArray.get(0).toString());
+ mat.setSpecs(jsonArray.get(3).toString());//瑙勬牸
+ mat.setTagId(20L);
+ //瀵圭編鍥芥椂闂磋繘琛岃浆鎹�
+ DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
+ DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
+ LocalDateTime dateTime = LocalDateTime.parse(jsonArray.get(2).toString(), formatter);
+ String format = dateFormat.format(dateTime);
+ Date date = sdf.parse(format);
+ mat.setCreateTime(date);//鍟嗗搧鍒涘缓鏃堕棿
+ mat.setUpdateTime(new Date());
+ mat.setStatus(1);
+ //鏈�鏂版姄鍙栧晢鍝佹椂闂�
+ tag.setCreateTime(date);
+ tagService.update(tag, new EntityWrapper<Tag>().eq("id", 20));
+ if (!matService.insert(mat)) {
+ throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+ } else {
+ log.info("鍚屾鏂扮墿鏂橻鍟嗗搧缂栧彿锛歿}]", mat.getMatnr());
+ }
+ }
+ }else {
+ throw new CoolException("娌℃湁鎵惧埌鎸囧畾鐗╂枡妗f锛岃鑱旂郴绠$悊鍛�");
+ }
+ } catch (Exception e) {
+ log.error("fail", e);
+// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+ } finally {
+ try {
+ // 淇濆瓨鎺ュ彛鏃ュ織
+ apiLogService.save(
+ "杞鏁版嵁",
+ URL + inaddress,
+ null,
+ "127.0.0.1",
+ add,
+ response,
+ success
+ );
+ } catch (Exception e) {
+ log.error("", e);
+ }
}
return R.ok();
}
- @RequestMapping(value = "/mat/update/auth")
- @ManagerAuth
- public R update(Mat mat){
- if (Cools.isEmpty(mat) || null==mat.getId()){
+ @RequestMapping(value = "/mat/update/auth")
+ @ManagerAuth
+ public R update(Mat mat) {
+ if (Cools.isEmpty(mat) || null == mat.getId()) {
return R.error();
}
mat.setUpdateBy(getUserId());
@@ -168,13 +272,13 @@
@RequestMapping(value = "/mat/delete/auth")
@ManagerAuth
@Transactional
- public R delete(@RequestParam String param){
+ public R delete(@RequestParam String param) {
List<Mat> list = JSONArray.parseArray(param, Mat.class);
- if (Cools.isEmpty(list)){
+ if (Cools.isEmpty(list)) {
return R.error();
}
- for (Mat entity : list){
+ for (Mat entity : list) {
LocDetl locDetl = locDetlService.selectByMatnr(entity.getMatnr());
if (!Cools.isEmpty(locDetl)) {
throw new CoolException("褰撳墠鐗╂枡鍦ㄥ簱锛屾棤娉曞垹闄わ紒");
@@ -188,7 +292,7 @@
@RequestMapping(value = "/mat/export/auth")
@ManagerAuth
- public R export(@RequestBody JSONObject param){
+ public R export(@RequestBody JSONObject param) {
EntityWrapper<Mat> wrapper = new EntityWrapper<>();
List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
Map<String, Object> map = excludeTrash(param.getJSONObject("mat"));
@@ -204,7 +308,7 @@
wrapper.like("matnr", condition).or().like("maktx", condition);
Page<Mat> page = matService.selectPage(new Page<>(0, 10), wrapper);
List<Map<String, Object>> result = new ArrayList<>();
- for (Mat mat : page.getRecords()){
+ for (Mat mat : page.getRecords()) {
Map<String, Object> map = new HashMap<>();
map.put("id", mat.getId());
map.put("value", mat.getMatnr() + "(" + mat.getMaktx() + ")");
@@ -217,7 +321,7 @@
@ManagerAuth
public R query(@RequestBody JSONObject param) {
Wrapper<Mat> wrapper = new EntityWrapper<Mat>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val"));
- if (null != matService.selectOne(wrapper)){
+ if (null != matService.selectOne(wrapper)) {
return R.parse(BaseRes.REPEAT).add(getComment(Mat.class, String.valueOf(param.get("key"))));
}
return R.ok();
@@ -244,7 +348,7 @@
, @RequestParam String param
, HttpServletResponse response) throws Exception {
AdminInterceptor.cors(response);
- if (Cools.isEmpty(param)){
+ if (Cools.isEmpty(param)) {
return R.parse(BaseRes.EMPTY);
}
BufferedImage img;
@@ -265,11 +369,11 @@
@RequestMapping(value = "/mat/print/auth")
@ManagerAuth(memo = "鍟嗗搧缂栫爜鎵撳嵃")
public R matCodePrint(@RequestParam(value = "param[]") String[] param) {
- if(Cools.isEmpty(param)) {
+ if (Cools.isEmpty(param)) {
return R.parse(CodeRes.EMPTY);
}
List<MatPrint> res = new ArrayList<>();
- for (String matnr : param){
+ for (String matnr : param) {
Mat mat = matService.selectByMatnr(matnr);
// 鎵撳嵃鏁版嵁娉ㄥ叆
MatPrint print = new MatPrint();
@@ -310,7 +414,7 @@
public R matExcelImport(MultipartFile file) throws IOException {
MatExcelListener listener = new MatExcelListener(getUserId());
EasyExcel.read(file.getInputStream(), MatExcel.class, listener).sheet().doRead();
- return R.ok("鎴愬姛鍚屾"+listener.getTotal()+"鏉″晢鍝佹暟鎹�");
+ return R.ok("鎴愬姛鍚屾" + listener.getTotal() + "鏉″晢鍝佹暟鎹�");
}
/*************************************** xm-select ***********************************************/
diff --git a/src/main/java/com/zy/asrs/controller/OrderController.java b/src/main/java/com/zy/asrs/controller/OrderController.java
index e65522e..3cb5159 100644
--- a/src/main/java/com/zy/asrs/controller/OrderController.java
+++ b/src/main/java/com/zy/asrs/controller/OrderController.java
@@ -1,5 +1,7 @@
package com.zy.asrs.controller;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
@@ -8,16 +10,25 @@
import com.core.common.*;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
+import com.zy.asrs.entity.param.InFormIdParam;
import com.zy.asrs.entity.param.OrderDomainParam;
import com.zy.asrs.service.*;
+import com.zy.asrs.task.core.ReturnT;
+import com.zy.asrs.task.kingdee.handler.LoginAuthenticationHandler;
import com.zy.common.model.DetlDto;
+import com.zy.common.utils.HttpHandler;
import com.zy.common.web.BaseController;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
+import java.text.SimpleDateFormat;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
import java.util.*;
-
+@Slf4j
@RestController
public class OrderController extends BaseController {
@@ -35,6 +46,26 @@
private WaitPakinService waitPakinService;
@Autowired
private LocDetlService locDetlService;
+ @Value("${erp.address.URL}")
+ //绔彛
+ private String URL;
+
+ @Value("${erp.address.inaddress}")
+ //鍗曟嵁锛屽晢鍝佹。妗堝湴鍧�
+ private String inaddress;
+
+ @Autowired
+ private ApiLogService apiLogService;
+
+ @Autowired
+ private LoginAuthenticationHandler loginAuthenticationHandler;
+
+ @Autowired
+ private MatService matService;
+
+ @Autowired
+ private TagService tagService;
+
@RequestMapping(value = "/order/nav/list/auth")
@ManagerAuth
@@ -426,6 +457,202 @@
return R.ok("璁㈠崟娣诲姞鎴愬姛");
}
+ @RequestMapping(value = "/order/form/KingDeeadd/authtest")
+ @ManagerAuth(memo = "鏍规嵁璁㈠崟绫诲瀷鍜岃鍗曠爜娣诲姞")
+ @Transactional
+ public R KingDeeformAddTest(@RequestBody OrderDomainParam param){
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ //鐧诲綍閲戣澏
+ ReturnT<String> start = loginAuthenticationHandler.start();
+ InFormIdParam inFormIdParam = new InFormIdParam();
+ //鏁伴噺瀛楁ncompatible types. Found: 'java.lang.Long', required: 'char, byte, short, int, Character, Byte, Short, Integer, String, or an enum'
+ String anfme =null;
+ int i=Long.valueOf(param.getDocType()).intValue();
+ switch (i){
+ //閲囪喘鍏ュ簱
+ case 13 : inFormIdParam.setFormId("STK_InStock");anfme ="FRealQty"; break;
+ //閲囪喘閫�鏂�
+ case 21 : inFormIdParam.setFormId("PUR_MRB");anfme ="FRMREALQTY"; break;
+ //鐢熶骇棰嗘枡
+ case 22 : inFormIdParam.setFormId("PRD_PickMtrl");anfme ="FActualQty"; break;
+ //鐢熶骇閫�鏂�
+ case 24 : inFormIdParam.setFormId("PRD_ReturnMtrl");anfme ="FQty"; break;
+ //鐢熶骇琛ユ枡
+ case 25 : inFormIdParam.setFormId("PRD_FeedMtrl");anfme ="FActualQty"; break;
+ //鐩存帴璋冩嫧鍗�
+ case 26 : inFormIdParam.setFormId("STK_TransferDirect");anfme ="FQty"; break;
+ //鐩樼泩鍗�
+ case 28 : inFormIdParam.setFormId("STK_StockCountGain");anfme ="FGainQty"; break;
+ //鐩樹簭鍗�
+ case 29 : inFormIdParam.setFormId("STK_StockCountLoss");anfme ="FLossQty"; break;
+ //鍏朵粬鍑哄簱
+ case 30 : inFormIdParam.setFormId("STK_MisDelivery");anfme ="FQty"; break;
+ //绠�鍗曠敓浜ч鏂�
+ case 31 : inFormIdParam.setFormId("SP_PickMtrl");anfme ="FActualQty"; break;
+ //绠�鍗曠敓浜ч��鏂�
+ case 32 : inFormIdParam.setFormId("SP_ReturnMtrl");anfme ="FQty"; break;
+ //閿�鍞嚭搴�
+ case 14 : inFormIdParam.setFormId("SAL_OUTSTOCK");anfme ="FRealQty"; break;
+ //閿�鍞��璐�
+ case 33 : inFormIdParam.setFormId("SAL_RETURNSTOCK");anfme ="FRealQty"; break;
+ }
+ inFormIdParam.setLimit(100);
+ inFormIdParam.setStartRow("0");
+ String FDocumentStatus = "B";
+
+ //鏉′欢鍜岄渶瑕佽幏寰楃殑缁撴灉鎷兼帴
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("FormId", inFormIdParam.getFormId());
+ jsonObject.put("Limit", inFormIdParam.getLimit());
+ jsonObject.put("StartRow", inFormIdParam.getStartRow());
+ //鍗曟嵁鐘舵��
+ FDocumentStatus="B";
+ //璁㈠崟鐮�
+ String orderNo= param.getOrderNo();
+ jsonObject.put("FilterString", "FBillNo='"+orderNo+"'and FStockId.Fname='绔嬪簱'"+" and FDocumentStatus='"+FDocumentStatus+"'");
+ jsonObject.put("FieldKeys", "FBillNo,FCreateDate,FMaterialId.FNumber,FMaterialId.FName,FMaterialId.FSpecification,"+anfme+",FDocumentStatus");
+ // FBillNo :鍗曟嵁缂栧彿锛�
+ // FCreateDate 锛氬崟鎹垱寤烘椂闂达紱
+ // FMaterialId.FNumber : 鐗╂枡缂栫爜锛�
+ // FMaterialName 锛氱墿鏂欏悕绉帮紱
+ // FMaterialId.FSpecification锛氱墿鏂欒鏍�
+ // anfme : 鐗╂枡鏁伴噺
+ // FDocumentStatus 锛氬崟鎹姸鎬侊紱
+ JSONObject jsonObject1 = new JSONObject();
+ jsonObject1.put("data", jsonObject);
+ String add = jsonObject1.toJSONString();
+
+ //涓婃姤
+ String response = "";
+ boolean success = false;
+ try {
+ //鑾峰彇Cookie鍊�
+ HashMap<String, Object> headers = new HashMap<>();
+ headers.put("Cookie", start.getContent());
+ response = new HttpHandler.Builder()
+ .setHeaders(headers)
+ .setUri(URL)
+ .setPath(inaddress)
+ .setJson(add)
+ .build()
+ .doPost();
+ JSONArray data = JSON.parseArray(response);
+ if(data.getJSONArray(0).get(0).toString().length()<20){
+ success = true;
+ for (int j = 0; j < data.size(); j++) {
+ JSONArray jsonArray = data.getJSONArray(j);
+ Order order = orderService.selectByNo(jsonArray.get(0).toString());
+ if (Cools.isEmpty(order)) {
+ DocType docType = docTypeService.selectById(param.getDocType());
+ Date now = new Date();
+ // 鍗曟嵁涓绘。
+ order = new Order(
+ String.valueOf(snowflakeIdWorker.nextId()), // 缂栧彿[闈炵┖]
+ jsonArray.get(0).toString(), // 璁㈠崟缂栧彿
+ DateUtils.convert(now), // 鍗曟嵁鏃ユ湡
+ docType.getDocId(), // 鍗曟嵁绫诲瀷
+ null, // 椤圭洰缂栧彿
+ null, //
+ null, // 璋冩嫧椤圭洰缂栧彿
+ null, // 鍒濆绁ㄦ嵁鍙�
+ null, // 绁ㄦ嵁鍙�
+ null, // 瀹㈡埛缂栧彿
+ null, // 瀹㈡埛
+ null, // 鑱旂郴鏂瑰紡
+ null, // 鎿嶄綔浜哄憳
+ null, // 鍚堣閲戦
+ null, // 浼樻儬鐜�
+ null, // 浼樻儬閲戦
+ null, // 閿�鍞垨閲囪喘璐圭敤鍚堣
+ null, // 瀹炰粯閲戦
+ null, // 浠樻绫诲瀷
+ null, // 涓氬姟鍛�
+ null, // 缁撶畻澶╂暟
+ null, // 閭垂鏀粯绫诲瀷
+ null, // 閭垂
+ null, // 浠樻鏃堕棿
+ null, // 鍙戣揣鏃堕棿
+ null, // 鐗╂祦鍚嶇О
+ null, // 鐗╂祦鍗曞彿
+ 1L, // 璁㈠崟鐘舵��
+ 1, // 鐘舵��
+ 9527L, // 娣诲姞浜哄憳
+ now, // 娣诲姞鏃堕棿
+ 9527L, // 淇敼浜哄憳
+ now, // 淇敼鏃堕棿
+ null // 澶囨敞
+ );
+ //瀵圭編鍥芥椂闂磋繘琛岃浆鎹�
+ DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
+ DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
+ LocalDateTime dateTime = LocalDateTime.parse(jsonArray.get(1).toString(), formatter);
+ String format = dateFormat.format(dateTime);
+ Date date = sdf.parse(format);
+ //鏈�鏂版姄鍙栨椂闂�
+ docType.setCreateTime(date);
+ docTypeService.update(docType, new EntityWrapper<DocType>().eq("doc_id", param.getDocType()));
+ if (!orderService.insert(order)) {
+ throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
+ }
+ }
+ //鐗╂枡缂栫爜
+ Mat mat = matService.selectByMatnr(jsonArray.get(2).toString());
+ if (Cools.isEmpty(mat)) {
+ throw new CoolException(jsonArray.get(2).toString() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧");
+ }
+ OrderDetl orderDetl1 = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("order_no", jsonArray.get(0).toString()).eq("matnr", jsonArray.get(2).toString()));
+ if (!Cools.isEmpty(orderDetl1)) {
+ continue;
+ }
+ DocType docType = docTypeService.selectById(param.getDocType());
+ OrderDetl orderDetl = new OrderDetl();
+ orderDetl.sync(mat);
+ orderDetl.setBatch(null);
+ orderDetl.setAnfme(Double.parseDouble(jsonArray.get(5).toString()));
+ orderDetl.setOrderId(order.getId());
+ orderDetl.setOrderNo(order.getOrderNo());
+ orderDetl.setCreateBy(9527L);
+ orderDetl.setCreateTime(new Date());
+ orderDetl.setUpdateBy(9527L);
+ orderDetl.setUpdateTime(new Date());
+ orderDetl.setStatus(1);
+ orderDetl.setQty(0.0D);
+ DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
+ DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
+ LocalDateTime dateTime = LocalDateTime.parse(jsonArray.get(1).toString(), formatter);
+ String format = dateFormat.format(dateTime);
+ Date date = sdf.parse(format);
+ //鏈�鏂版姄鍙栨椂闂�
+ docType.setCreateTime(date);
+ if (!orderDetlService.insert(orderDetl)) {
+ throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
+ }
+ }
+ }else{
+ throw new CoolException("娌℃湁鎵惧埌鎸囧畾璁㈠崟锛岃鑱旂郴绠$悊鍛�");
+ }
+ } catch (Exception e) {
+ log.error("fail", e);
+// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+ } finally {
+ try {
+ // 淇濆瓨鎺ュ彛鏃ュ織
+ apiLogService.save(
+ "杞鏁版嵁",
+ URL + inaddress,
+ null,
+ "127.0.0.1",
+ add,
+ response,
+ success
+ );
+ } catch (Exception e) {
+ log.error("", e);
+ }
+ }
+ return R.ok("璁㈠崟娣诲姞鎴愬姛");
+ }
+
diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
index ca000fd..bd7fc57 100644
--- a/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
+++ b/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
@@ -138,7 +138,7 @@
DocType docType= docTypeService.selectById(docName);
//鍗曟嵁鐘舵��
FDocumentStatus="B";
- jsonObject.put("FilterString", "FCreateDate>'"+sdf.format(docType.getCreateTime())+"' and FDocumentStatus='"+FDocumentStatus+"'");
+ jsonObject.put("FilterString", "FCreateDate>'"+sdf.format(docType.getCreateTime())+"'and FStockId.Fname='绔嬪簱'"+"' and FDocumentStatus='"+FDocumentStatus+"'");
jsonObject.put("FieldKeys", "FBillNo,FCreateDate,FMaterialId.FNumber,FMaterialId.FName,FMaterialId.FSpecification,"+anfme+",FDocumentStatus");
// FBillNo :鍗曟嵁缂栧彿锛�
// FCreateDate 锛氬崟鎹垱寤烘椂闂达紱
@@ -167,131 +167,134 @@
.build()
.doPost();
JSONArray data = JSON.parseArray(response);
- if(data.size()>0){
- success = true;
- }
- if(i==0){
- for (int j = 0; j < data.size(); j++) {
- JSONArray jsonArray = data.getJSONArray(j);
- //鐢熸垚鍟嗗搧妗f
- //鍟嗗搧缂栧彿
- Mat mat = matService.selectByMatnr(jsonArray.get(1).toString());
- if (mat == null) {
- mat = new Mat();
- Tag tag=new Tag();
- mat.setMatnr(jsonArray.get(1).toString());
- mat.setMaktx(jsonArray.get(0).toString());
- mat.setSpecs(jsonArray.get(3).toString());//瑙勬牸
- mat.setTagId(20L);
- //瀵圭編鍥芥椂闂磋繘琛岃浆鎹�
- DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
- DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
- LocalDateTime dateTime = LocalDateTime.parse(jsonArray.get(2).toString(), formatter);
- String format = dateFormat.format(dateTime);
- Date date = sdf.parse(format);
- mat.setCreateTime(date);//鍟嗗搧鍒涘缓鏃堕棿
- mat.setUpdateTime(new Date());
- mat.setStatus(1);
- //鏈�鏂版姄鍙栧晢鍝佹椂闂�
- tag.setCreateTime(date);
- tagService.update(tag,new EntityWrapper<Tag>().eq("id",20));
- if (!matService.insert(mat)) {
- throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+ if(data.size()>0) {
+ if (data.getJSONArray(0).get(0).toString().length()<20) {
+ if (i == 0) {
+ for (int j = 0; j < data.size(); j++) {
+ JSONArray jsonArray = data.getJSONArray(j);
+ //鐢熸垚鍟嗗搧妗f
+ //鍟嗗搧缂栧彿
+ Mat mat = matService.selectByMatnr(jsonArray.get(1).toString());
+ if (mat == null) {
+ mat = new Mat();
+ Tag tag = new Tag();
+ mat.setMatnr(jsonArray.get(1).toString());
+ mat.setMaktx(jsonArray.get(0).toString());
+ mat.setSpecs(jsonArray.get(3).toString());//瑙勬牸
+ mat.setTagId(20L);
+ //瀵圭編鍥芥椂闂磋繘琛岃浆鎹�
+ DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
+ DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
+ LocalDateTime dateTime = LocalDateTime.parse(jsonArray.get(2).toString(), formatter);
+ String format = dateFormat.format(dateTime);
+ Date date = sdf.parse(format);
+ mat.setCreateTime(date);//鍟嗗搧鍒涘缓鏃堕棿
+ mat.setUpdateTime(new Date());
+ mat.setStatus(1);
+ //鏈�鏂版姄鍙栧晢鍝佹椂闂�
+ tag.setCreateTime(date);
+ tagService.update(tag, new EntityWrapper<Tag>().eq("id", 20));
+ if (!matService.insert(mat)) {
+ throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+ } else {
+ log.info("鍚屾鏂扮墿鏂橻鍟嗗搧缂栧彿锛歿}]", mat.getMatnr());
+ }
+ }
+ }
} else {
- log.info("鍚屾鏂扮墿鏂橻鍟嗗搧缂栧彿锛歿}]", mat.getMatnr());
+ for (int j = 0; j < data.size(); j++) {
+ JSONArray jsonArray = data.getJSONArray(j);
+ Order order = orderService.selectByNo(jsonArray.get(0).toString());
+ if (Cools.isEmpty(order)) {
+ DocType docType = docTypeService.selectById(docName);
+ Date now = new Date();
+ // 鍗曟嵁涓绘。
+ order = new Order(
+ String.valueOf(snowflakeIdWorker.nextId()), // 缂栧彿[闈炵┖]
+ jsonArray.get(0).toString(), // 璁㈠崟缂栧彿
+ DateUtils.convert(now), // 鍗曟嵁鏃ユ湡
+ docType.getDocId(), // 鍗曟嵁绫诲瀷
+ null, // 椤圭洰缂栧彿
+ null, //
+ null, // 璋冩嫧椤圭洰缂栧彿
+ null, // 鍒濆绁ㄦ嵁鍙�
+ null, // 绁ㄦ嵁鍙�
+ null, // 瀹㈡埛缂栧彿
+ null, // 瀹㈡埛
+ null, // 鑱旂郴鏂瑰紡
+ null, // 鎿嶄綔浜哄憳
+ null, // 鍚堣閲戦
+ null, // 浼樻儬鐜�
+ null, // 浼樻儬閲戦
+ null, // 閿�鍞垨閲囪喘璐圭敤鍚堣
+ null, // 瀹炰粯閲戦
+ null, // 浠樻绫诲瀷
+ null, // 涓氬姟鍛�
+ null, // 缁撶畻澶╂暟
+ null, // 閭垂鏀粯绫诲瀷
+ null, // 閭垂
+ null, // 浠樻鏃堕棿
+ null, // 鍙戣揣鏃堕棿
+ null, // 鐗╂祦鍚嶇О
+ null, // 鐗╂祦鍗曞彿
+ 1L, // 璁㈠崟鐘舵��
+ 1, // 鐘舵��
+ 9527L, // 娣诲姞浜哄憳
+ now, // 娣诲姞鏃堕棿
+ 9527L, // 淇敼浜哄憳
+ now, // 淇敼鏃堕棿
+ null // 澶囨敞
+ );
+ //瀵圭編鍥芥椂闂磋繘琛岃浆鎹�
+ DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
+ DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
+ LocalDateTime dateTime = LocalDateTime.parse(jsonArray.get(1).toString(), formatter);
+ String format = dateFormat.format(dateTime);
+ Date date = sdf.parse(format);
+ //鏈�鏂版姄鍙栨椂闂�
+ docType.setCreateTime(date);
+ docTypeService.update(docType, new EntityWrapper<DocType>().eq("doc_id", docName));
+ if (!orderService.insert(order)) {
+ throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
+ }
+ }
+ //鐗╂枡缂栫爜
+ Mat mat = matService.selectByMatnr(jsonArray.get(2).toString());
+ if (Cools.isEmpty(mat)) {
+ throw new CoolException(jsonArray.get(2).toString() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧");
+ }
+ OrderDetl orderDetl1 = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("order_no", jsonArray.get(0).toString()).eq("matnr", jsonArray.get(2).toString()));
+ if (!Cools.isEmpty(orderDetl1)) {
+ continue;
+ }
+ DocType docType = docTypeService.selectById(docName);
+ OrderDetl orderDetl = new OrderDetl();
+ orderDetl.sync(mat);
+ orderDetl.setBatch(null);
+ orderDetl.setAnfme(Double.parseDouble(jsonArray.get(5).toString()));
+ orderDetl.setOrderId(order.getId());
+ orderDetl.setOrderNo(order.getOrderNo());
+ orderDetl.setCreateBy(9527L);
+ orderDetl.setCreateTime(new Date());
+ orderDetl.setUpdateBy(9527L);
+ orderDetl.setUpdateTime(new Date());
+ orderDetl.setStatus(1);
+ orderDetl.setQty(0.0D);
+ DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
+ DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
+ LocalDateTime dateTime = LocalDateTime.parse(jsonArray.get(1).toString(), formatter);
+ String format = dateFormat.format(dateTime);
+ Date date = sdf.parse(format);
+ //鏈�鏂版姄鍙栨椂闂�
+ docType.setCreateTime(date);
+ if (!orderDetlService.insert(orderDetl)) {
+ throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
+ }
+ }
}
- }
+ }else {
}
}else {
- for(int j=0;j<data.size();j++){
- JSONArray jsonArray = data.getJSONArray(j);
- Order order = orderService.selectByNo(jsonArray.get(0).toString());
- if (Cools.isEmpty(order)) {
- DocType docType = docTypeService.selectById(docName);
- Date now = new Date();
- // 鍗曟嵁涓绘。
- order = new Order(
- String.valueOf(snowflakeIdWorker.nextId()), // 缂栧彿[闈炵┖]
- jsonArray.get(0).toString(), // 璁㈠崟缂栧彿
- DateUtils.convert(now), // 鍗曟嵁鏃ユ湡
- docType.getDocId(), // 鍗曟嵁绫诲瀷
- null, // 椤圭洰缂栧彿
- null, //
- null, // 璋冩嫧椤圭洰缂栧彿
- null, // 鍒濆绁ㄦ嵁鍙�
- null, // 绁ㄦ嵁鍙�
- null, // 瀹㈡埛缂栧彿
- null, // 瀹㈡埛
- null, // 鑱旂郴鏂瑰紡
- null, // 鎿嶄綔浜哄憳
- null, // 鍚堣閲戦
- null, // 浼樻儬鐜�
- null, // 浼樻儬閲戦
- null, // 閿�鍞垨閲囪喘璐圭敤鍚堣
- null, // 瀹炰粯閲戦
- null, // 浠樻绫诲瀷
- null, // 涓氬姟鍛�
- null, // 缁撶畻澶╂暟
- null, // 閭垂鏀粯绫诲瀷
- null, // 閭垂
- null, // 浠樻鏃堕棿
- null, // 鍙戣揣鏃堕棿
- null, // 鐗╂祦鍚嶇О
- null, // 鐗╂祦鍗曞彿
- 1L, // 璁㈠崟鐘舵��
- 1, // 鐘舵��
- 9527L, // 娣诲姞浜哄憳
- now, // 娣诲姞鏃堕棿
- 9527L, // 淇敼浜哄憳
- now, // 淇敼鏃堕棿
- null // 澶囨敞
- );
- //瀵圭編鍥芥椂闂磋繘琛岃浆鎹�
- DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
- DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
- LocalDateTime dateTime = LocalDateTime.parse(jsonArray.get(1).toString(), formatter);
- String format = dateFormat.format(dateTime);
- Date date = sdf.parse(format);
- //鏈�鏂版姄鍙栨椂闂�
- docType.setCreateTime(date);
- docTypeService.update(docType,new EntityWrapper<DocType>().eq("doc_id",docName));
- if (!orderService.insert(order)) {
- throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
- }
- }
- //鐗╂枡缂栫爜
- Mat mat = matService.selectByMatnr(jsonArray.get(2).toString());
- if (Cools.isEmpty(mat)) {
- throw new CoolException(jsonArray.get(2).toString() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧");
- }
- OrderDetl orderDetl1=orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("order_no",jsonArray.get(0).toString()).eq("matnr",jsonArray.get(2).toString()));
- if(!Cools.isEmpty(orderDetl1)){
- continue;
- }
- DocType docType = docTypeService.selectById(docName);
- OrderDetl orderDetl = new OrderDetl();
- orderDetl.sync(mat);
- orderDetl.setBatch(null);
- orderDetl.setAnfme(Double.parseDouble(jsonArray.get(5).toString()));
- orderDetl.setOrderId(order.getId());
- orderDetl.setOrderNo(order.getOrderNo());
- orderDetl.setCreateBy(9527L);
- orderDetl.setCreateTime(new Date());
- orderDetl.setUpdateBy(9527L);
- orderDetl.setUpdateTime(new Date());
- orderDetl.setStatus(1);
- orderDetl.setQty(0.0D);
- DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
- DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
- LocalDateTime dateTime = LocalDateTime.parse(jsonArray.get(1).toString(), formatter);
- String format = dateFormat.format(dateTime);
- Date date = sdf.parse(format);
- //鏈�鏂版姄鍙栨椂闂�
- docType.setCreateTime(date);
- if (!orderDetlService.insert(orderDetl)) {
- throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
- }
- }
}
} catch (Exception e) {
log.error("fail", e);
diff --git a/src/main/webapp/static/js/mat/mat.js b/src/main/webapp/static/js/mat/mat.js
index 0fa6ccc..7638467 100644
--- a/src/main/webapp/static/js/mat/mat.js
+++ b/src/main/webapp/static/js/mat/mat.js
@@ -119,6 +119,9 @@
case 'addData':
showEditModel()
break;
+ case 'kingAddData':
+ KingShowEditModel()
+ break;
case 'deleteData':
var data = checkStatus.data;
if (data.length === 0){
@@ -309,6 +312,74 @@
});
}
+ function KingShowEditModel(mData) {
+ admin.open({
+ type: 1,
+ area: '600px',
+ title: '鎸囧畾娣诲姞鍟嗗搧',
+ content: $('#KingEditDialog').html(),
+ success: function (layero, dIndex) {
+ // 鍥炴樉琛ㄥ崟鏁版嵁
+ form.val('detail', mData);
+ // 鏂板鑷姩鐢熸垚鍟嗗搧缂栧彿
+ if (!mData) {
+ http.get(baseUrl + "/mat/auto/matnr/auth", null, function (res) {
+ $('#matnr1').val(res.data);
+ })
+ }
+ console.log("----------------------------------")
+ // 琛ㄥ崟鎻愪氦浜嬩欢
+ form.on('submit(editSubmit1)', function (data) {
+ console.log(data)
+ data.field.tagId = 20;
+ var loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/mat/KingDeeadd/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: data.field,
+ method: 'POST',
+ success: function (res) {
+ layer.close(loadIndex);
+ if (res.code === 200){
+ layer.close(dIndex);
+ layer.msg(res.msg, {icon: 1});
+ $(".layui-laypage-btn")[0].click();
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ }else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ })
+ return false;
+ });
+ // 娓叉煋涓嬫媺鏍�
+ var insXmSel = xmSelect.render({
+ el: '#tagSel',
+ height: '250px',
+ data: insTb.options.data,
+ initValue: mData ? [mData.tagId] : [],
+ model: {label: {type: 'text'}},
+ prop: {
+ name: 'name',
+ value: 'id'
+ },
+ radio: true,
+ clickClose: true,
+ tree: {
+ show: true,
+ indent: 15,
+ strict: false,
+ expandedKeys: true
+ }
+ });
+ // 寮圭獥涓嶅嚭鐜版粴鍔ㄦ潯
+ $(layero).children('.layui-layer-content').css('overflow', 'visible');
+ layui.form.render('select');
+ }
+ });
+ }
+
// 妯℃澘閫夋嫨
form.on('radio(selectTemplateRadio)', function (data) {
$('.template-preview').hide();
diff --git a/src/main/webapp/static/js/order/order.js b/src/main/webapp/static/js/order/order.js
index 7214d80..f7f277a 100644
--- a/src/main/webapp/static/js/order/order.js
+++ b/src/main/webapp/static/js/order/order.js
@@ -87,6 +87,11 @@
showEditModel();
});
+ // 娣诲姞鎸囧畾璁㈠崟
+ $("#KingOrderAddBtn").click(function () {
+ KingShowEditModel();
+ });
+
// 宸ュ叿鏉$偣鍑讳簨浠�
table.on('tool(order)', function (obj) {
var data = obj.data;
@@ -405,6 +410,232 @@
});
}
+ function KingShowEditModel(expTpe) {
+ console.log(expTpe)
+ admin.open({
+ type: 1,
+ title: '娣诲姞鎸囧畾鍗曟嵁',
+ content: $('#KingEditDialog').html(),
+ area: '1300px',
+ success: function (layero, dIndex) {
+ $(layero).children('.layui-layer-content').css('overflow', 'visible');
+ var isExpAdd = !expTpe;
+ // 鍥炴樉鏁版嵁
+ form.val('KingEditForm', expTpe);
+ if (expTpe) {
+ $('#orderNo').attr("disabled", "disabled");
+ }
+ // 琛ㄥ崟鎻愪氦浜嬩欢
+ form.on('submit(orderEditSubmit1)', function (data) {
+ let nList = admin.util.deepClone(xxDataList);
+ layer.load(2);
+ $.ajax({
+ url: baseUrl+"/order/form/KingDeeadd/authtest",
+ headers: {'token': localStorage.getItem('token')},
+ data: JSON.stringify({
+ orderId: Number(data.field.id),
+ docType: Number(data.field.docType),
+ orderNo: data.field.orderNo,
+ orderDetlList: nList
+ }),
+ contentType:'application/json;charset=UTF-8',
+ method: 'POST',
+ success: function (res) {
+ layer.closeAll('loading');
+ if (res.code === 200){
+ layer.close(dIndex);
+ $(".layui-laypage-btn")[0].click();
+ layer.msg(res.msg, {icon: 1});
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ }else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ })
+ return false;
+ });
+ // 鏄庣粏琛ㄦ牸
+ var xxDataList = [];
+ var tbOptions = {
+ elem: '#formSSXMTable',
+ headers: {token: localStorage.getItem('token')},
+ data: xxDataList,
+ page: true,
+ height: '350px;',
+ cellMinWidth: 100,
+ cols: [[
+ {type: 'numbers', title: '#'},
+ {field: 'matnr', title: '鍟嗗搧缂栫爜', width: 160},
+ {field: 'maktx', title: '鍟嗗搧鍚嶇О', width: 200},
+ {field: 'batch', title: '鎵瑰彿', edit: true},
+ {field: 'specs', title: '瑙勬牸'},
+ {field: 'anfme', title: '鏁伴噺(淇敼)', style: 'color: blue;font-weight: bold', edit: true, minWidth: 110, width: 110},
+ {field: 'workQty', title: '浣滀笟鏁伴噺', minWidth: 100, width: 100},
+ // {field: 'unit', title: '鍗曚綅', width: 80},
+ {field: 'memo', title: '澶囨敞' , edit: true},
+ {align: 'center', title: '鎿嶄綔', toolbar: '#formSSXMTableBar', minWidth: 80, width: 80, fixed: 'right'}
+ ]],
+ done: function (res) {
+ $(layero).find('.layui-table-view').css('margin', '0');
+ },
+ size: ''
+ };
+ if (!isExpAdd) {
+ $.ajax({
+ url: baseUrl+"/order/detl/all/auth?orderId=" + expTpe.id,
+ headers: {'token': localStorage.getItem('token')},
+ method: 'GET',
+ async: false,
+ success: function (res) {
+ if (res.code === 200){
+ xxDataList = res.data;
+ tbOptions.data = xxDataList;
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ }else {
+ layer.msg(res.msg, {icon: 2})
+ }
+ }
+ })
+ }
+ var insTbSSXM = table.render(tbOptions);
+ // 宸ュ叿鏉$偣鍑讳簨浠�
+ table.on('tool(formSSXMTable)', function (obj) {
+ var data = obj.data;
+ var layEvent = obj.event;
+ if (layEvent === 'edit') {
+ showEditModel2(data);
+ } else if (layEvent === 'del') {
+ if(data.workQty > 0){
+ layer.msg("宸插瓨鍦ㄤ綔涓氭暟閲忥紝涓嶈兘鍒犻櫎", {icon: 2});
+ return;
+ }
+ layer.confirm('纭畾瑕佸垹闄ゅ悧锛�', {
+ shade: .1,
+ skin: 'layui-layer-admin'
+ }, function (i) {
+ layer.close(i);
+ for (var j = 0; j < xxDataList.length; j++) {
+ if (xxDataList[j].matnr === data.matnr && xxDataList[j].batch === data.batch) {
+ xxDataList.splice(j, 1);
+ break;
+ }
+ }
+ insTbSSXM.reload({data: xxDataList, page: {curr: 1}});
+ });
+ }
+ });
+ // 鏄庣粏鏁版嵁淇敼
+ table.on('edit(formSSXMTable)', function (obj) {
+ let index = obj.tr.attr("data-index");
+ let data = xxDataList[index];
+ if (obj.field === 'anfme'){
+ let vle = Number(obj.value);
+ if (isNaN(vle)) {
+ layer.msg("璇疯緭鍏ユ暟瀛�", {icon: 2});
+ return false;
+ } else {
+ if (vle <= 0) {
+ layer.msg("鏁伴噺蹇呴』澶т簬闆�", {icon: 2});
+ // data[obj.field] = 0;
+ // insTbSSXM.reload({data: xxDataList});
+ return false;
+ }
+ if(obj.value < data.workQty){
+ layer.msg("杈撳叆鏁伴噺涓嶈兘灏忎簬浣滀笟涓暟閲�", {icon: 2});
+ // data[obj.field] = 0;
+ // insTbSSXM.reload({data: xxDataList});
+ return false;
+ }
+ }
+ }
+ data[obj.field] = obj.value;
+ insTbSSXM.reload({data: xxDataList});
+ });
+
+ $('#matAddBtnComment').click(function () {
+ showEditModel2();
+ });
+
+ // 鏄剧ず娣诲姞鏄庣粏琛ㄥ崟寮圭獥
+ function showEditModel2(exp) {
+ admin.open({
+ type: 1,
+ offset: '150px',
+ area: '680px',
+ title: (exp ? '淇敼' : '娣诲姞') + '鏄庣粏',
+ content: $('#matEditDialog').html(),
+ success: function (layero, dIndex) {
+ // 鍥炴樉鏁版嵁
+ form.val('matEditForm', exp);
+ // 琛ㄥ崟鎻愪氦浜嬩欢
+ form.on('submit(matEditSubmit)', function (data) {
+ let selectList = matXmSelect.getValue();
+ for (let i = 0; i<selectList.length; i++) {
+ let item = selectList[i];
+ // 鏌ヨ鐗╂枡璇︽儏
+ $.ajax({
+ url: baseUrl+"/mat/covert/"+item.value+"/auth",
+ headers: {'token': localStorage.getItem('token')},
+ method: 'GET',
+ async: false,
+ success: function (res) {
+ if (res.code === 200){
+ xxDataList.push(res.data);
+ insTbSSXM.reload({data: xxDataList, page: {curr: 1}});
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ }else {
+ layer.msg(res.msg, {icon: 2})
+ }
+ }
+ })
+ }
+ layer.close(dIndex);
+ return false;
+ });
+ // 娓叉煋鐗╂枡閫夋嫨
+ var matXmSelect = xmSelect.render({
+ el: '#mat',
+ style: {
+ width: '340px',
+ },
+ autoRow: true,
+ toolbar: { show: true },
+ filterable: true,
+ remoteSearch: true,
+ remoteMethod: function(val, cb, show){
+ $.ajax({
+ url: baseUrl+"/mat/all/get/kv",
+ headers: {'token': localStorage.getItem('token')},
+ data: {
+ condition: val
+ },
+ method: 'POST',
+ success: function (res) {
+ if (res.code === 200){
+ cb(res.data)
+ } else {
+ cb([]);
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ });
+ }
+ })
+
+ // 寮圭獥涓嶅嚭鐜版粴鍔ㄦ潯
+ $(layero).children('.layui-layer-content').css('overflow', 'visible');
+ layui.form.render('select');
+ }
+ });
+ }
+
+ }
+ });
+ }
+
// 鍒犻櫎鍗曟嵁
function doDel(orderId) {
layer.confirm('纭畾瑕佸垹闄ゅ悧锛�', {
diff --git a/src/main/webapp/views/mat/mat.html b/src/main/webapp/views/mat/mat.html
index 3c83dc8..f3fa219 100644
--- a/src/main/webapp/views/mat/mat.html
+++ b/src/main/webapp/views/mat/mat.html
@@ -122,6 +122,7 @@
<button class="layui-btn layui-btn-sm" id="btn-print-batch" lay-event="btnPrintBatch">鎵归噺鎵撳嵃</button>
<button class="layui-btn layui-btn-sm layui-btn-normal" id="btn-add" lay-event="addData">鏂板</button>
<button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-delete" lay-event="deleteData">鍒犻櫎</button>
+ <button class="layui-btn layui-btn-sm layui-btn-normal" id="king-btn-add" lay-event="kingAddData">娣诲姞鎸囧畾鐗╂枡</button>
<!-- 鍟嗗搧/鐗╂枡 鏁版嵁涓績 -->
<div class="dropdown-menu" style="float: right">
<button class="layui-btn layui-btn-primary layui-border-black icon-btn layui-btn-sm"> 鏁版嵁鍚屾 <i class="layui-icon layui-icon-drop"></i></button>
@@ -155,6 +156,44 @@
<script type="text/javascript" src="../../static/js/tagTree.js" charset="utf-8"></script>
<!-- 琛ㄥ崟寮圭獥 -->
+<script type="text/html" id="KingEditDialog">
+ <form id="KingDetail" lay-filter="detail" class="layui-form admin-form">
+ <input name="id" type="hidden">
+ <input name="uuid" type="hidden">
+ <input name="nodeId" type="hidden">
+ <input name="tag_id" type="hidden">
+ <input name="model" type="hidden">
+ <input name="name" type="hidden">
+ <input name="batch" type="hidden">
+ <input name="docId" type="hidden">
+ <input name="docNum" type="hidden">
+ <input name="custName" type="hidden">
+ <input name="itemNum" type="hidden">
+ <input name="count" type="hidden">
+ <input name="weight" type="hidden">
+ <input name="status" type="hidden">
+ <input name="createBy" type="hidden">
+ <input name="updateTime$" type="hidden">
+ <input name="updateBy" type="hidden">
+ <div class="layui-row">
+
+ <div class="layui-col-md6">
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">鍟嗗搧缂栧彿</label>
+ <div class="layui-input-block">
+ <input id="matnr1" name="matnr" placeholder="璇疯緭鍏ュ晢鍝佺紪鍙�" class="layui-input" lay-vertype="tips" lay-verify="required" required="">
+ </div>
+ </div>
+ </div>
+ </div>
+ <hr class="layui-bg-gray">
+ <div class="layui-form-item text-right">
+ <button class="layui-btn" lay-filter="editSubmit1" lay-submit="">淇濆瓨</button>
+ <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
+ </div>
+ </form>
+</script>
+
<script type="text/html" id="editDialog">
<form id="detail" lay-filter="detail" class="layui-form admin-form">
<input name="id" type="hidden">
diff --git a/src/main/webapp/views/order/order.html b/src/main/webapp/views/order/order.html
index 6f6141e..58c33b6 100644
--- a/src/main/webapp/views/order/order.html
+++ b/src/main/webapp/views/order/order.html
@@ -73,6 +73,8 @@
</button>
<button id="orderAddBtn" class="layui-btn icon-btn btn-add"><i class="layui-icon"></i>娣诲姞
</button>
+ <button id="KingOrderAddBtn" class="layui-btn icon-btn btn-add"><i class="layui-icon"></i>娣诲姞鎸囧畾璁㈠崟
+ </button>
</div>
</div>
</div>
@@ -163,6 +165,37 @@
</div>
</form>
</script>
+
+<!-- 琛ㄥ崟寮圭獥 -->
+<script type="text/html" id="KingEditDialog">
+ <form id="KingEditForm" lay-filter="editForm" class="layui-form model-form">
+ <input name="id" type="hidden"/>
+ <div class="layui-form-item">
+ <label class="layui-form-label">鍗曟嵁绫诲瀷锛�</label>
+ <div class="layui-input-block cool-auto-complete">
+ <input class="layui-input" name="docType" placeholder="璇疯緭鍏ュ崟鎹被鍨�" style="display: none">
+ <input id="docType$" name="docType$" 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="docTypeQueryBydocType" onkeyup="autoLoad(this.getAttribute('data-key'))">
+ <select class="cool-auto-complete-window-select" data-key="docTypeQueryBydocTypeSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple">
+ </select>
+ </div>
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label">鍗曟嵁缂栧彿锛�</label>
+ <div class="layui-input-block">
+ <input id="orderNo" name="orderNo" placeholder="杈撳叆鍗曟嵁缂栧彿" type="text" class="layui-input" maxlength="20" lay-verType="tips" />
+ <!-- lay-verify="required"-->
+ </div>
+ </div>
+ <div class="layui-form-item text-right">
+ <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
+ <button class="layui-btn" lay-filter="orderEditSubmit1" lay-submit>淇濆瓨</button>
+ </div>
+ </form>
+</script>
+
<!-- 琛ㄦ牸鎿嶄綔鍒� -->
<script type="text/html" id="formSSXMTableBar">
<!-- <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">淇敼</a>-->
--
Gitblit v1.9.1