| 新建文件夹/WIDESEA_WMSServer/ClassLibrary2/MaterielInfoService.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 新建文件夹/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/DeliveryOrderServices.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 新建文件夹/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/NewBusiness.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 新建文件夹/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/extend/Check.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 新建文件夹/WMS/src/extension/outbound/outboundOrder.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 新建文件夹/WMS/src/extension/stock/Dt_Inventory_Batch.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
н¨Îļþ¼Ð/WIDESEA_WMSServer/ClassLibrary2/MaterielInfoService.cs
@@ -44,12 +44,13 @@ // é»è®¤æ¥è¯¢è¿å»24å°æ¶çæ°æ® SearchDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); } string getDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); // 请æ±åæ° var requestData = new { searchDate = SearchDate }; SearchDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); // åèµ·è¯·æ± var result = HttpHelper.Post(url, requestData.ToJsonString()); @@ -64,6 +65,7 @@ } if (response.data.Count < 1) { SearchDate = getDate; return responseContent.OK("æ æ°è¯åæ°æ®"); } @@ -98,7 +100,7 @@ }).ToList(); // 䏿¬¡æ§æ¹éæå ¥æ°æ®åº BaseDal.AddData(entityList); SearchDate = getDate; //ProductSynchronous(); return responseContent.OK("忥æå"); } н¨Îļþ¼Ð/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/DeliveryOrderServices.cs
@@ -60,6 +60,11 @@ _materielInfoService = materielInfoService; _locationInfoService = locationInfoService; } public override WebResponseContent UpdateData(SaveModel saveModel) { return base.UpdateData(saveModel); } #region å建åºåºå /// <summary> /// å建åºåºå @@ -431,7 +436,9 @@ if (orderDetailLK != null) { #region æ·»å åºåºä»»å¡ãä¿®æ¹åºåä¿¡æ¯ Dt_InventoryInfo inventoryInfo = dt_InventoryInfos.Where(x => x.WarehouseCode == WareCodeLK).First(); Dt_InventoryInfo? inventoryInfo = dt_InventoryInfos.FirstOrDefault(x => x.WarehouseCode == WareCodeLK); if (inventoryInfo == null) throw new Exception($"æªæ¾å°ç©æç¼å·ã{detail.goods_no}ãå¨ç«åºä¸çåºåä¿¡æ¯"); inventoryInfo.AvailableQuantity -= orderDetailLK.Order_qty; inventoryInfo.OutboundQuantity += orderDetailLK.Order_qty; Dt_SupplyTask supplyTask = new Dt_SupplyTask() н¨Îļþ¼Ð/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/NewBusiness.cs
@@ -23,24 +23,35 @@ try { var url = "http://121.37.118.63:80/GYZ2/95fck/inOrder"; string GetOutOrderDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); if (string.IsNullOrEmpty(SearchInOrderDate)) SearchInOrderDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); var requestData = new { searchDate = SearchInOrderDate }; SearchInOrderDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); //SearchInOrderDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); var result = HttpHelper.Post(url, requestData.ToJsonString()); var response = JsonConvert.DeserializeObject<UpstreamResponse<UpstreamOrderInfo>>(result); if (response == null || response.resultCode != "0") return content; if (response.data.Count < 1) return content; if (response.data.Count < 1) { SearchInOrderDate = GetOutOrderDate; return content; } var ordernos = response.data.Select(x => x.order_no).ToList(); var existingOrderNos = _cabinOrderServices.Repository.QueryData(x => ordernos.Contains(x.Order_no)).Select(x => x.Order_no).Distinct().ToList(); var newOrders = response.data.Where(order => !existingOrderNos.Contains(order.order_no)).ToList(); if (newOrders.Count < 1) return content; if (newOrders.Count < 1) { SearchInOrderDate = GetOutOrderDate; return content; } int messQty = 0; foreach (var order in newOrders) { try { if (order.order_type == "1") { _cabinOrderServices.CreateInboundOrder(order); content = _cabinOrderServices.CreateInboundOrder(order); if (!content.Status) messQty++; } else if (order.order_type == "3")//å ¥åºéæ { @@ -63,12 +74,14 @@ }; upstramOutOrderInfo.details.Add(detail); } _deliveryOrderServices.CreateOutboundOrder(upstramOutOrderInfo); #endregion content = _deliveryOrderServices.CreateOutboundOrder(upstramOutOrderInfo); if (!content.Status) messQty++; } else if (order.order_type == "5")//æ¥æº¢å ¥åº { _cabinOrderServices.CreateCheckInOrder(order); content = _cabinOrderServices.CreateCheckInOrder(order); if (!content.Status) messQty++; } } catch (Exception ex) @@ -76,6 +89,7 @@ continue; } } if (messQty == 0) SearchInOrderDate = GetOutOrderDate; return content.OK(); } catch (Exception ex) @@ -94,24 +108,33 @@ try { var url = "http://121.37.118.63:80/GYZ2/95fck/outOrder"; string GetOutOrderDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); if (string.IsNullOrEmpty(SearchOutOrderDate)) SearchOutOrderDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); var requestData = new { searchDate = SearchOutOrderDate }; SearchOutOrderDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); var result = HttpHelper.Post(url, requestData.ToJsonString()); var response = JsonConvert.DeserializeObject<UpstreamResponse<UpstramOutOrderInfo>>(result); if (response == null || response.resultCode != "0") return content; if (response.data.Count < 1) return content; if (response.data.Count < 1) { SearchOutOrderDate = GetOutOrderDate; return content; } var ordernos = response.data.Select(x => x.order_no).ToList(); var existingOutOrderNos = _deliveryOrderServices.Repository.QueryData(x => ordernos.Contains(x.Out_no)).Select(x => x.Out_no).Distinct().ToList(); var newOutOrders = response.data.Where(outorder => !existingOutOrderNos.Contains(outorder.order_no)).ToList(); if (newOutOrders.Count < 1) return content; if (newOutOrders.Count < 1) { SearchOutOrderDate = GetOutOrderDate; return content; } int messQty = 0; foreach (var outorder in newOutOrders) { if (outorder.order_type == "1")// æ£å¸¸åºåºå { _deliveryOrderServices.CreateOutboundOrder(outorder); content = _deliveryOrderServices.CreateOutboundOrder(outorder); if (!content.Status) messQty++; } else if (outorder.order_type == "2")//åºåºéè´§ { @@ -135,13 +158,16 @@ order.details.Add(detail); } #endregion _cabinOrderServices.CreateInboundOrder(order); content = _cabinOrderServices.CreateInboundOrder(order); if (!content.Status) messQty++; } else if (outorder.order_type == "6")//æ¥æåºåº { _deliveryOrderServices.CreateCheckOutOrder(outorder); content = _deliveryOrderServices.CreateCheckOutOrder(outorder); if (!content.Status) messQty++; } } if (messQty == 0) SearchOutOrderDate = GetOutOrderDate; } catch (Exception ex) { н¨Îļþ¼Ð/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/extend/Check.cs
@@ -44,14 +44,21 @@ { foreach (var items in inventoryInfos.GroupBy(x => x.WarehouseCode)) { Dt_DeliveryOrder deliveryOrder = new Dt_DeliveryOrder() Dt_DeliveryOrder? deliveryOrder = deliveryOrders.Where(x => x.Warehouse_no == items.Key).FirstOrDefault(); bool isNull = false; if (deliveryOrder == null) { Out_no = item.MaterielCode + "_" + item.BatchNo, Out_type = "20", OutStatus = "æ°å»º", Warehouse_no = items.Key, Details = new List<Dt_DeliveryOrderDetail>() }; isNull = true; deliveryOrder = new Dt_DeliveryOrder() { //Out_no = item.MaterielCode + "_" + item.BatchNo, Out_no = $"PD{items.Key}{DateTime.Now.ToString("yyMMddHHmmss")}", Out_type = "20", OutStatus = "æ°å»º", Warehouse_no = items.Key, Details = new List<Dt_DeliveryOrderDetail>() }; } var Status = items.Key == "001" ? 0 : 2;//夿æ¯å¦ä¸ºç«åºåºå Dt_DeliveryOrderDetail deliveryOrderDetail = new Dt_DeliveryOrderDetail() { @@ -66,7 +73,7 @@ Reservoirarea = items.Key }; deliveryOrder.Details.Add(deliveryOrderDetail); deliveryOrders.Add(deliveryOrder); if (isNull) deliveryOrders.Add(deliveryOrder); #region å建çç¹ä»»å¡ foreach (var inventory in items) { н¨Îļþ¼Ð/WMS/src/extension/outbound/outboundOrder.js
@@ -2,79 +2,106 @@ //æ¤jsæä»¶æ¯ç¨æ¥èªå®ä¹æ©å±ä¸å¡ä»£ç ï¼å¯ä»¥æ©å±ä¸äºèªå®ä¹é¡µé¢æè éæ°é ç½®çæç代ç import gridBody from './extend/outOrderDetail.vue' import http from '../../api/http'; import { el } from 'element-plus/es/locales.mjs'; let extension = { components: { //æ¥è¯¢ç颿©å±ç»ä»¶ gridHeader: '', gridBody: gridBody, gridFooter: '', //æ°å»ºãç¼è¾å¼¹åºæ¡æ©å±ç»ä»¶ modelHeader: '', modelBody: '', modelFooter: '' components: { //æ¥è¯¢ç颿©å±ç»ä»¶ gridHeader: '', gridBody: gridBody, gridFooter: '', //æ°å»ºãç¼è¾å¼¹åºæ¡æ©å±ç»ä»¶ modelHeader: '', modelBody: '', modelFooter: '' }, tableAction: '', //æå®æå¼ 表çæé(è¿éå¡«å表å,é»è®¤ä¸ç¨å¡«å) buttons: { view: [], box: [], detail: [] }, //æ©å±çæé® methods: { //ä¸é¢è¿äºæ¹æ³å¯ä»¥ä¿çä¹å¯ä»¥å é¤ onInit() { //æ©å±é¡µé¢åå§åæä½ let Bt = this.buttons.find(x => x.value == "Complete") if (Bt) { Bt.onClick = function () { let rows = this.$refs.table.getSelected(); if (rows.length == 0) return this.$error("è¯·éæ©æ°æ®!"); if (rows.length > 1) return this.$error("åªè½éæ©ä¸æ¡æ°æ®") const id = rows[0].id; //const allIds = rows.map(item => item.id); // è¿éæ·»å ä½ çä¸å¡é»è¾ this.http.post(`/api/DeliveryOrder/FinishOutOrder?key=${id}`).then((x) => { if (x.status) { this.$Message.success('æä½æå'); this.refresh(); } else { return this.$error(x.message); } }); } } }, tableAction: '', //æå®æå¼ 表çæé(è¿éå¡«å表å,é»è®¤ä¸ç¨å¡«å) buttons: { view: [], box: [], detail: [] }, //æ©å±çæé® methods: { //ä¸é¢è¿äºæ¹æ³å¯ä»¥ä¿çä¹å¯ä»¥å é¤ onInit() { //æ©å±é¡µé¢åå§åæä½ let Bt=this.buttons.find(x=>x.value=="Complete") if(Bt){ Bt.onClick = function () { let rows = this.$refs.table.getSelected(); if (rows.length == 0) return this.$error("è¯·éæ©æ°æ®!"); if (rows.length>1)return this.$error("åªè½éæ©ä¸æ¡æ°æ®") const id=rows[0].id; //const allIds = rows.map(item => item.id); // è¿éæ·»å ä½ çä¸å¡é»è¾ this.http.post(`/api/DeliveryOrder/FinishOutOrder?key=${id}`).then((x) => { if (x.status) { this.$Message.success('æä½æå'); this.refresh(); } else { return this.$error(x.message); onInited() { //æ¡æ¶åå§åé ç½®å //妿è¦é ç½®æç»è¡¨,卿¤æ¹æ³æä½ //this.detailOptions.columns.forEach(column=>{ }); this.buttons.forEach(x => {//nameæ¹ä¸ºè¦éèçæé®åå if (x.name == 'ç¼ è¾') { x.hidden = true; } }) }, searchBefore(param) { //ç颿¥è¯¢å,å¯ä»¥ç»param.wheresæ·»å æ¥è¯¢åæ° //è¿åfalseï¼åä¸ä¼æ§è¡æ¥è¯¢ return true; }, searchAfter(result) { //æ¥è¯¢åï¼resultè¿åçæ¥è¯¢æ°æ®,å¯ä»¥å¨æ¾ç¤ºå°è¡¨æ ¼åå¤çè¡¨æ ¼çå¼ return true; }, addBefore(formData) { //æ°å»ºä¿ååformData为对象ï¼å æ¬æç»è¡¨ï¼å¯ä»¥ç»ç»è¡¨å设置å¼ï¼èªå·±è¾åºçformDataçå¼ return true; }, updateBefore(formData) { //ç¼è¾ä¿ååformData为对象ï¼å æ¬æç»è¡¨ãå é¤è¡çId return true; }, rowClick({ row, column, event }) { //æ¥è¯¢çé¢ç¹å»è¡äºä»¶ this.$refs.table.$refs.table.toggleRowSelection(row); //åå»è¡æ¶éä¸å½åè¡; }, modelOpenAfter(row) { //ç¹å»ç¼è¾ãæ°å»ºæé®å¼¹åºæ¡åï¼å¯ä»¥å¨æ¤å¤åé»è¾ï¼å¦ï¼ä»åå°è·åæ°æ® //(1)夿æ¯ç¼è¾è¿æ¯æ°å»ºæä½ï¼ this.currentAction=='Add'; //(2)ç»å¼¹åºæ¡è®¾ç½®é»è®¤å¼ //(3)this.editFormFields.åæ®µ='xxx'; //妿éè¦ç»ä¸ææ¡è®¾ç½®é»è®¤å¼ï¼è¯·éåthis.editFormOptionsæ¾å°å段é 置对åºdata屿§çkeyå¼ //ç䏿就æè¾åºçï¼console.log(this.editFormOptions) this.editFormOptions.forEach((editForm) => { editForm.forEach((x) => { x.readonly = true }) }) this.detailOptions.buttons.forEach((btn) => { if (btn.name != 'æ·»å è¡') { btn.hidden = true; //æè 设置åªè¯» //btn.readonly=true; } }); } } }, onInited() { //æ¡æ¶åå§åé ç½®å //妿è¦é ç½®æç»è¡¨,卿¤æ¹æ³æä½ //this.detailOptions.columns.forEach(column=>{ }); }, searchBefore(param) { //ç颿¥è¯¢å,å¯ä»¥ç»param.wheresæ·»å æ¥è¯¢åæ° //è¿åfalseï¼åä¸ä¼æ§è¡æ¥è¯¢ return true; }, searchAfter(result) { //æ¥è¯¢åï¼resultè¿åçæ¥è¯¢æ°æ®,å¯ä»¥å¨æ¾ç¤ºå°è¡¨æ ¼åå¤çè¡¨æ ¼çå¼ return true; }, addBefore(formData) { //æ°å»ºä¿ååformData为对象ï¼å æ¬æç»è¡¨ï¼å¯ä»¥ç»ç»è¡¨å设置å¼ï¼èªå·±è¾åºçformDataçå¼ return true; }, updateBefore(formData) { //ç¼è¾ä¿ååformData为对象ï¼å æ¬æç»è¡¨ãå é¤è¡çId return true; }, rowClick({ row, column, event }) { //æ¥è¯¢çé¢ç¹å»è¡äºä»¶ this.$refs.table.$refs.table.toggleRowSelection(row); //åå»è¡æ¶éä¸å½åè¡; }, modelOpenAfter(row) { //ç¹å»ç¼è¾ãæ°å»ºæé®å¼¹åºæ¡åï¼å¯ä»¥å¨æ¤å¤åé»è¾ï¼å¦ï¼ä»åå°è·åæ°æ® //(1)夿æ¯ç¼è¾è¿æ¯æ°å»ºæä½ï¼ this.currentAction=='Add'; //(2)ç»å¼¹åºæ¡è®¾ç½®é»è®¤å¼ //(3)this.editFormFields.åæ®µ='xxx'; //妿éè¦ç»ä¸ææ¡è®¾ç½®é»è®¤å¼ï¼è¯·éåthis.editFormOptionsæ¾å°å段é 置对åºdata屿§çkeyå¼ //ç䏿就æè¾åºçï¼console.log(this.editFormOptions) if (row.out_type == "20") { this.detail.columns.forEach((x) => { if (x.field == "order_Outqty") { x.title = "çç¹æ°é", x.edit = true } }) } else { } } }; export default extension; } }; export default extension; н¨Îļþ¼Ð/WMS/src/extension/stock/Dt_Inventory_Batch.js
@@ -28,7 +28,7 @@ .post("api/DeliveryOrder/CreateCheckOrder", allIds) .then((x) => { if (x.status) { this.$Message.success('çç¹ä»»å¡å®æ'); this.$Message.success('å建çç¹åæå'); this.refresh(); } else { return this.$error(x.message);