Merge branch 'master' of http://115.159.85.185:8098/r/ZhongRui/ALDbanyunxiangmu
# Conflicts:
# 项目代码/WIDESEA_WMSClient/src/extension/inbound/extend/Pallet.vue
# 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderController.cs
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | |
| | | //æ¤jsæä»¶æ¯ç¨æ¥èªå®ä¹æ©å±ä¸å¡ä»£ç ï¼å¯ä»¥æ©å±ä¸äºèªå®ä¹é¡µé¢æè
éæ°é
ç½®çæç代ç |
| | | |
| | | let extension = { |
| | | components: { |
| | | //æ¥è¯¢ç颿©å±ç»ä»¶ |
| | | gridHeader: '', |
| | | gridBody: '', |
| | | gridFooter: '', |
| | | //æ°å»ºãç¼è¾å¼¹åºæ¡æ©å±ç»ä»¶ |
| | | modelHeader: '', |
| | | modelBody: '', |
| | | modelFooter: '' |
| | | }, |
| | | tableAction: '', //æå®æå¼ 表çæé(è¿éå¡«å表å,é»è®¤ä¸ç¨å¡«å) |
| | | buttons: { view: [], box: [], detail: [] }, //æ©å±çæé® |
| | | methods: { |
| | | //ä¸é¢è¿äºæ¹æ³å¯ä»¥ä¿çä¹å¯ä»¥å é¤ |
| | | onInit() { |
| | | }, |
| | | 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) |
| | | } |
| | | } |
| | | }; |
| | | export default extension; |
| | | |
| | |
| | | class="custom-input" |
| | | > |
| | | <template slot="prepend"> |
| | | <span> æç®±æ¡ç </span> |
| | | <span> æç®±ç </span> |
| | | </template> |
| | | <template slot="append"> |
| | | <el-button |
| | |
| | | path: '/materielToMes', |
| | | name: 'Dt_MaterielToMes', |
| | | component: () => import('@/views/inbound/Dt_MaterielToMes.vue') |
| | | }, |
| | | { |
| | | path: '/allocateOrder', |
| | | name: 'Dt_AllocateOrder', |
| | | component: () => import('@/views/inbound/Dt_AllocateOrder.vue') |
| | | } |
| | | ] |
| | | |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <view-grid |
| | | ref="gridRef" |
| | | :columns="columns" |
| | | :detail="detail" |
| | | :editFormFields="editFormFields" |
| | | :editFormOptions="editFormOptions" |
| | | :searchFormFields="searchFormFields" |
| | | :searchFormOptions="searchFormOptions" |
| | | :table="table" |
| | | :extend="extend" |
| | | > |
| | | </view-grid> |
| | | </template> |
| | | |
| | | <script> |
| | | import extend from "@/extension/inbound/Dt_AllocateOrder.js"; |
| | | import ViewGrid from '@/components/basic/ViewGrid/ViewGrid.vue'; |
| | | import { ref, defineComponent } from "vue"; |
| | | |
| | | export default defineComponent({ |
| | | components: { |
| | | viewGrid: ViewGrid, |
| | | PalletDialog |
| | | }, |
| | | setup() { |
| | | // è¡¨æ ¼åºç¡é
ç½®ï¼å¯¹é½è°æ¨åå®ä½ |
| | | const table = ref({ |
| | | key: "id", |
| | | footer: "Foots", |
| | | cnName: "è°æ¨å", |
| | | name: "allocateOrder", |
| | | url: "/allocateOrder/", // å端æ¥å£è·¯å¾éä¸è°æ¨åæ¥å£å¹é
|
| | | sortName: "id", |
| | | }); |
| | | |
| | | // ç¼è¾è¡¨ååæ®µï¼å¯¹åºDt_AllocateOrderå¯ç¼è¾å±æ§ |
| | | const editFormFields = ref({ |
| | | orderNo: "", |
| | | upperOrderNo: "", |
| | | supplierId: "", |
| | | orderType: "", |
| | | businessType: "", |
| | | fromWarehouse: "", |
| | | toWarehouse: "", |
| | | isBatch: false, |
| | | factoryArea: "", |
| | | remark: "", |
| | | }); |
| | | |
| | | // ç¼è¾è¡¨åé
ç½®ï¼æå®ä½å段类å设置ç»ä»¶ |
| | | const editFormOptions = ref([ |
| | | [ |
| | | { |
| | | title: "åæ®ç¼å·", |
| | | field: "orderNo", |
| | | type: "string", |
| | | required: true, |
| | | }, |
| | | { |
| | | title: "ä¸çº§åæ®ç¼å·", |
| | | field: "upperOrderNo", |
| | | type: "string", |
| | | }, |
| | | { |
| | | title: "ä¾åºåID", |
| | | field: "supplierId", |
| | | type: "string", |
| | | required: true, |
| | | }, |
| | | { |
| | | title: "订åç±»å", |
| | | field: "orderType", |
| | | type: "select", |
| | | dataKey: "allocateOrderType", // è°æ¨åä¸å±æä¸¾key |
| | | data: [], |
| | | required: true, |
| | | }, |
| | | ], |
| | | [ |
| | | { |
| | | title: "ä¸å¡ç±»å", |
| | | field: "businessType", |
| | | type: "string", |
| | | required: true, |
| | | }, |
| | | { |
| | | title: "æ¥æºä»åº", |
| | | field: "fromWarehouse", |
| | | type: "select", |
| | | dataKey: "warehouses", // ä»åºæä¸¾keyï¼å¤ç¨æåç¬é
ç½®ï¼ |
| | | data: [], |
| | | required: true, |
| | | }, |
| | | { |
| | | title: "ç®æ ä»åº", |
| | | field: "toWarehouse", |
| | | type: "select", |
| | | dataKey: "warehouses", |
| | | data: [], |
| | | required: true, |
| | | }, |
| | | { |
| | | title: "æ¯å¦æ¹æ¬¡", |
| | | field: "isBatch", |
| | | type: "checkbox", |
| | | }, |
| | | ], |
| | | [ |
| | | { |
| | | title: "ååº", |
| | | field: "factoryArea", |
| | | type: "string", |
| | | required: true, |
| | | }, |
| | | { |
| | | title: "夿³¨", |
| | | field: "remark", |
| | | type: "textarea", |
| | | }, |
| | | ], |
| | | ]); |
| | | |
| | | // æç´¢è¡¨ååæ®µï¼å¯¹åºDt_AllocateOrderæ¥è¯¢å±æ§ |
| | | const searchFormFields = ref({ |
| | | orderNo: "", |
| | | upperOrderNo: "", |
| | | supplierId: "", |
| | | orderType: "", |
| | | orderStatus: "", |
| | | createType: "", |
| | | businessType: "", |
| | | fromWarehouse: "", |
| | | toWarehouse: "", |
| | | factoryArea: "", |
| | | creater: "", |
| | | createDate: "", |
| | | }); |
| | | |
| | | // æç´¢è¡¨åé
ç½®ï¼ææ¥è¯¢éæ±è®¾ç½®å段类å |
| | | const searchFormOptions = ref([ |
| | | [ |
| | | { title: "åæ®ç¼å·", field: "orderNo", type: "like" }, |
| | | { title: "ä¸çº§åæ®ç¼å·", field: "upperOrderNo", type: "like" }, |
| | | { title: "ä¾åºåID", field: "supplierId", type: "like" }, |
| | | { |
| | | title: "订åç±»å", |
| | | field: "orderType", |
| | | type: "select", |
| | | dataKey: "allocateOrderType", |
| | | data: [], |
| | | }, |
| | | ], |
| | | [ |
| | | { |
| | | title: "åæ®ç¶æ", |
| | | field: "orderStatus", |
| | | type: "select", |
| | | dataKey: "allocateOrderStatus", |
| | | data: [], |
| | | }, |
| | | { |
| | | title: "å建类å", |
| | | field: "createType", |
| | | type: "select", |
| | | dataKey: "createType", |
| | | data: [], |
| | | }, |
| | | { title: "ä¸å¡ç±»å", field: "businessType", type: "like" }, |
| | | ], |
| | | [ |
| | | { title: "æ¥æºä»åº", field: "fromWarehouse", type: "like" }, |
| | | { title: "ç®æ ä»åº", field: "toWarehouse", type: "like" }, |
| | | { title: "ååº", field: "factoryArea", type: "like" }, |
| | | ], |
| | | [ |
| | | { title: "å建è
", field: "creater", type: "like" }, |
| | | { title: "å建æ¶é´", field: "createDate", type: "datetime" }, |
| | | ], |
| | | ]); |
| | | |
| | | // ä¸»è¡¨æ ¼åé
ç½®ï¼å®å
¨å¯¹é½Dt_AllocateOrderåæ®µ |
| | | const columns = ref([ |
| | | { |
| | | field: "id", |
| | | title: "Id", |
| | | type: "int", |
| | | width: 90, |
| | | hidden: true, |
| | | readonly: true, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "orderNo", |
| | | title: "åæ®ç¼å·", |
| | | type: "string", |
| | | width: 120, |
| | | align: "left", |
| | | link: true, |
| | | }, |
| | | { |
| | | field: "upperOrderNo", |
| | | title: "ä¸çº§åæ®ç¼å·", |
| | | type: "string", |
| | | width: 150, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "supplierId", |
| | | title: "ä¾åºåID", |
| | | type: "string", |
| | | width: 120, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "orderType", |
| | | title: "订åç±»å", |
| | | type: "int", |
| | | width: 120, |
| | | align: "left", |
| | | bind: { key: "allocateOrderType", data: [] }, |
| | | }, |
| | | { |
| | | field: "orderStatus", |
| | | title: "åæ®ç¶æ", |
| | | type: "int", |
| | | width: 120, |
| | | align: "left", |
| | | bind: { key: "allocateOrderStatus", data: [] }, |
| | | }, |
| | | { |
| | | field: "createType", |
| | | title: "å建æ¹å¼", |
| | | type: "int", |
| | | width: 120, |
| | | align: "left", |
| | | bind: { key: "createType", data: [] }, |
| | | }, |
| | | { |
| | | field: "businessType", |
| | | title: "ä¸å¡ç±»å", |
| | | type: "string", |
| | | width: 120, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "fromWarehouse", |
| | | title: "æ¥æºä»åº", |
| | | type: "string", |
| | | width: 120, |
| | | align: "left", |
| | | bind: { key: "warehouses", data: [] }, |
| | | }, |
| | | { |
| | | field: "toWarehouse", |
| | | title: "ç®æ ä»åº", |
| | | type: "string", |
| | | width: 120, |
| | | align: "left", |
| | | bind: { key: "warehouses", data: [] }, |
| | | }, |
| | | { |
| | | field: "isBatch", |
| | | title: "æ¯å¦æ¹æ¬¡", |
| | | type: "bool", |
| | | width: 100, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "factoryArea", |
| | | title: "ååº", |
| | | type: "string", |
| | | width: 100, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "creater", |
| | | title: "å建人", |
| | | type: "string", |
| | | width: 90, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "createDate", |
| | | title: "å建æ¶é´", |
| | | type: "datetime", |
| | | width: 160, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "modifier", |
| | | title: "ä¿®æ¹äºº", |
| | | type: "string", |
| | | width: 100, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "modifyDate", |
| | | title: "ä¿®æ¹æ¶é´", |
| | | type: "datetime", |
| | | width: 160, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "remark", |
| | | title: "夿³¨", |
| | | type: "string", |
| | | width: 100, |
| | | align: "left", |
| | | }, |
| | | ]); |
| | | |
| | | const detail = ref({ |
| | | cnName: "è°æ¨åæç»", |
| | | table: "AllocateOrderDetail", |
| | | columns: [ |
| | | { |
| | | field: "id", |
| | | title: "Id", |
| | | type: "int", |
| | | width: 90, |
| | | hidden: true, |
| | | readonly: true, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "orderId", |
| | | title: "è°æ¨å主é®", |
| | | type: "int", |
| | | width: 90, |
| | | align: "left", |
| | | hidden: true, |
| | | }, |
| | | { |
| | | field: "materielCode", |
| | | title: "ç©æç¼ç ", |
| | | type: "select", |
| | | width: 150, |
| | | align: "left", |
| | | required: true, |
| | | dataKey: "materielCodes", // ç©æç¼ç æä¸¾key |
| | | data: [], |
| | | }, |
| | | { |
| | | field: "materielName", // å®ä½ä¸æ è¯¥åæ®µï¼éå端å
³èè¿åæè°æ´ä¸ºbindæ å° |
| | | title: "ç©æåç§°", |
| | | type: "string", |
| | | width: 100, |
| | | align: "left", |
| | | bind: { key: "MaterielNames", data: [] }, |
| | | }, |
| | | { |
| | | field: "batchNo", |
| | | title: "æ¹æ¬¡å·", |
| | | type: "string", |
| | | width: 90, |
| | | align: "left", |
| | | required: true, |
| | | }, |
| | | { |
| | | field: "orderQuantity", |
| | | title: "è®¢åæ°é", |
| | | type: "decimal", |
| | | width: 90, |
| | | align: "left", |
| | | edit: { type: "number" }, |
| | | required: true, |
| | | }, |
| | | { |
| | | field: "receiptQuantity", |
| | | title: "æ¶è´§æ°é", |
| | | type: "decimal", |
| | | width: 90, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "overInQuantity", |
| | | title: "è¶
é¢å
¥åºæ°é", |
| | | type: "decimal", |
| | | width: 120, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "orderDetailStatus", |
| | | title: "æç»ç¶æ", |
| | | type: "int", |
| | | width: 120, |
| | | align: "left", |
| | | bind: { key: "allocateDetailStatus", data: [] }, |
| | | }, |
| | | { |
| | | field: "unit", |
| | | title: "åä½", |
| | | type: "string", |
| | | width: 80, |
| | | align: "left", |
| | | required: true, |
| | | }, |
| | | { |
| | | field: "lineNo", |
| | | title: "è¡å·", |
| | | type: "string", |
| | | width: 80, |
| | | align: "left", |
| | | required: true, |
| | | }, |
| | | { |
| | | field: "warehouseCode", |
| | | title: "ä»åºç¼ç ", |
| | | type: "string", |
| | | width: 120, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "barcode", |
| | | title: "æ¡å½¢ç ", |
| | | type: "string", |
| | | width: 150, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "barcodeQty", |
| | | title: "æ¡å½¢ç æ°é", |
| | | type: "decimal", |
| | | width: 120, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "barcodeUnit", |
| | | title: "æ¡å½¢ç åä½", |
| | | type: "string", |
| | | width: 120, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "creater", |
| | | title: "å建人", |
| | | type: "string", |
| | | width: 90, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "createDate", |
| | | title: "å建æ¶é´", |
| | | type: "datetime", |
| | | width: 160, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "remark", |
| | | title: "夿³¨", |
| | | type: "string", |
| | | width: 100, |
| | | align: "left", |
| | | }, |
| | | ], |
| | | sortName: "id", |
| | | key: "id", |
| | | }); |
| | | |
| | | return { |
| | | table, |
| | | extend, |
| | | editFormFields, |
| | | editFormOptions, |
| | | searchFormFields, |
| | | searchFormOptions, |
| | | columns, |
| | | detail, |
| | | palletVisible, |
| | | currentPalletDocNo, |
| | | handleOpenPalletDialog, |
| | | handlePalletBackSuccess, |
| | | gridRef |
| | | }; |
| | | }, |
| | | }); |
| | | </script> |
| | |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "palletCode", |
| | | title: "æçç¼å·", |
| | | type: "string", |
| | | width: 150, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "materielCode", |
| | | title: "ç©æç¼å·", |
| | | type: "string", |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using WIDESEA_Core.DB.Models; |
| | | |
| | | namespace WIDESEA_DTO.Stock |
| | | { |
| | | public class StockInfoDetailWithPalletDto : BaseEntity |
| | | { |
| | | public int Id { get; set; } |
| | | public int StockId { get; set; } |
| | | public string MaterielCode { get; set; } |
| | | public string MaterielName { get; set; } |
| | | public string OrderNo { get; set; } |
| | | public string BatchNo { get; set; } |
| | | public string ProductionDate { get; set; } |
| | | public string EffectiveDate { get; set; } |
| | | public string SerialNumber { get; set; } |
| | | public decimal StockQuantity { get; set; } |
| | | public decimal OutboundQuantity { get; set; } |
| | | public int Status { get; set; } |
| | | public string Unit { get; set; } |
| | | public string InboundOrderRowNo { get; set; } |
| | | public string SupplyCode { get; set; } |
| | | public string WarehouseCode { get; set; } |
| | | public string Barcode { get; set; } |
| | | public string BusinessType { get; set; } |
| | | public string Remark { get; set; } |
| | | public string Creater { get; set; } |
| | | public DateTime CreateDate { get; set; } |
| | | public string Modifier { get; set; } |
| | | public DateTime? ModifyDate { get; set; } |
| | | |
| | | // 主表æçç¼å·ï¼åç«¯éæ¾ç¤ºçåæ®µï¼ |
| | | public string PalletCode { get; set; } |
| | | } |
| | | } |
| | |
| | | using WIDESEA_Core.BaseRepository; |
| | | using WIDESEA_Core; |
| | | using WIDESEA_Core.BaseRepository; |
| | | using WIDESEA_Core.BaseServices; |
| | | using WIDESEA_DTO.Stock; |
| | | using WIDESEA_Model.Models; |
| | | |
| | | namespace WIDESEA_IStockService |
| | |
| | | |
| | | bool ExistBarcodes(string barcode); |
| | | bool ExistBarcodes(List<string> barcodes); |
| | | |
| | | PageGridData<StockInfoDetailWithPalletDto> GetPageData2(PageDataOptions options); |
| | | } |
| | | } |
| | |
| | | using WIDESEA_Core.BaseRepository; |
| | | using SqlSugar; |
| | | using WIDESEA_Core; |
| | | using WIDESEA_Core.BaseRepository; |
| | | using WIDESEA_Core.BaseServices; |
| | | using WIDESEA_Core.HttpContextUser; |
| | | using WIDESEA_DTO.Stock; |
| | | using WIDESEA_IStockService; |
| | | using WIDESEA_Model.Models; |
| | | |
| | |
| | | { |
| | | public partial class StockInfoDetailService : ServiceBase<Dt_StockInfoDetail, IRepository<Dt_StockInfoDetail>>, IStockInfoDetailService |
| | | { |
| | | public StockInfoDetailService(IRepository<Dt_StockInfoDetail> BaseDal) : base(BaseDal) |
| | | public StockInfoDetailService(IRepository<Dt_StockInfoDetail> BaseDal, IRepository<Dt_StockInfo> stockinfoRepository) : base(BaseDal) |
| | | { |
| | | _stockinfoRepository = stockinfoRepository; |
| | | } |
| | | |
| | | public IRepository<Dt_StockInfo> _stockinfoRepository; |
| | | public IRepository<Dt_StockInfoDetail> Repository => BaseDal; |
| | | |
| | | public bool ExistBarcodes(string barcode) |
| | |
| | | |
| | | public bool ExistBarcodes(List<string> barcodes) |
| | | { |
| | | return BaseDal.QueryFirst(x =>!string.IsNullOrEmpty( x.Barcode) && barcodes.Contains(x.Barcode)) != null; |
| | | return BaseDal.QueryFirst(x => !string.IsNullOrEmpty(x.Barcode) && barcodes.Contains(x.Barcode)) != null; |
| | | } |
| | | |
| | | public PageGridData<StockInfoDetailWithPalletDto> GetPageData2(PageDataOptions options) |
| | | { |
| | | PageGridData<Dt_StockInfoDetail> lists = base.GetPageData (options); |
| | | |
| | | List<int> stockIds = lists.Rows.Select(detail => detail.StockId).Distinct().ToList(); |
| | | var stocks= _stockinfoRepository.QueryData(x => stockIds.Contains(x.Id)).ToList(); |
| | | |
| | | |
| | | List<StockInfoDetailWithPalletDto> dtoList = lists.Rows |
| | | .Select(detail => new StockInfoDetailWithPalletDto |
| | | { |
| | | |
| | | Id = detail.Id, |
| | | StockId = detail.StockId, |
| | | MaterielCode = detail.MaterielCode, |
| | | MaterielName = detail.MaterielName, |
| | | OrderNo = detail.OrderNo, |
| | | BatchNo = detail.BatchNo, |
| | | ProductionDate = detail.ProductionDate, |
| | | EffectiveDate = detail.EffectiveDate, |
| | | SerialNumber = detail.SerialNumber, |
| | | StockQuantity = detail.StockQuantity, |
| | | OutboundQuantity = detail.OutboundQuantity, |
| | | Status = detail.Status, |
| | | Unit = detail.Unit, |
| | | InboundOrderRowNo = detail.InboundOrderRowNo, |
| | | SupplyCode = detail.SupplyCode, |
| | | WarehouseCode = detail.WarehouseCode, |
| | | Barcode = detail.Barcode, |
| | | BusinessType = detail.BusinessType, |
| | | Remark = detail.Remark, |
| | | Creater = detail.Creater, |
| | | CreateDate = detail.CreateDate, |
| | | Modifier = detail.Modifier, |
| | | ModifyDate = detail.ModifyDate, |
| | | PalletCode= stocks |
| | | .FirstOrDefault(stock => stock.Id == detail.StockId)? |
| | | .PalletCode ?? "æ æçç¼å·" |
| | | }) |
| | | .ToList(); |
| | | |
| | | return new PageGridData<StockInfoDetailWithPalletDto> { Rows = dtoList, Total = lists.Total, Summary = lists.Summary }; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | [HttpPost, Route("ReceiveInboundOrder"), AllowAnonymous, MethodParamsValidate] |
| | | public async Task<WebResponseContent> ReceiveInboundOrder([FromBody] InboundRequestModel model) |
| | | { |
| | | if(model.inBounds == null || !model.inBounds.Any()) |
| | | { |
| | | return WebResponseContent.Instance.Error("å
¥åºåä¸è½ä¸ºç©º"); |
| | | } |
| | | |
| | | _logger.LogInformation("InboundOrderController ReceiveInboundOrder: " + JsonConvert.SerializeObject(model)); |
| | | List<Dt_InboundOrder> inboundOrders = new List<Dt_InboundOrder>(); |
| | |
| | | using Microsoft.AspNetCore.Http; |
| | | using Microsoft.AspNetCore.Mvc; |
| | | using WIDESEA_Core; |
| | | using WIDESEA_Core.BaseController; |
| | | using WIDESEA_DTO.Stock; |
| | | using WIDESEA_IStockService; |
| | | using WIDESEA_Model.Models; |
| | | |
| | |
| | | public StockInfoDetailController(IStockInfoDetailService service) : base(service) |
| | | { |
| | | } |
| | | |
| | | [HttpPost, Route("GetPageData")] |
| | | public override ActionResult GetPageData([FromBody] PageDataOptions options) |
| | | { |
| | | |
| | | var result = Service.GetPageData2(options); |
| | | |
| | | |
| | | return Json(result); |
| | | } |
| | | } |
| | | } |