From 387731cab892804912e68cb91e6fb804411c4756 Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期一, 27 十月 2025 23:32:16 +0800
Subject: [PATCH] 优化与ERP出库单逻辑,增加打印程序
---
项目代码/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/CodeChunks.db | 0
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/InboundOrderController.cs | 5
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs | 287 ++
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_ProductionOutboundOrder.cs | 30
项目代码/PDA/pages/task/Outbound.vue | 237 +-
项目代码/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStockDetail.js | 17
项目代码/Print/Print/Services/DLL/FastReport.Bars.dll | 0
项目代码/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Allocate/AllocateoutOrderDetail.vue | 12
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtBoxingInfo_Hty.cs | 7
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_OrderOutDetailsRepository.cs | 12
项目代码/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db | 0
项目代码/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db-shm | 0
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo_Hty.cs | 7
项目代码/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json | 239 +-
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskService/Task/IDt_TaskService.cs | 9
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/StockInfoDetailService.cs | 40
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Task/TaskController.cs | 8
项目代码/Print/Print/Services/PrintService.cs | 92 +
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_用友生产领料单一览表_ST.cs | 3
项目代码/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Allocate/AllocateStockSelect.vue | 5
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtBoxingInfo.cs | 7
项目代码/PDA/pages.json | 27
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/StockInfoService.cs | 442 ++--
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_OrderOutDetailsService.cs | 23
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_OrderOutDetailsRepository.cs | 8
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_OrderOutDetailsService.cs | 11
项目代码/Print/Print/Print/Controllers/PrintController.cs | 111 +
项目代码/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Production/ProductionStockSelect.vue | 1
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_AllocateOutboundOrderService.cs | 4
项目代码/Print/Print/.vs/Print/v17/DocumentLayout.backup.json | 119 +
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_OrderOutDetails.cs | 75
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_InboundOrderService.cs | 7
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_采购入成品入库自动打印清单_ST.cs | 4
项目代码/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/CodeChunks.db-shm | 0
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_InboundOrderService.cs | 22
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_AllocateOutboundOrderDetail.cs | 11
项目代码/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-shm | 0
项目代码/Print/Print/.vs/Print/config/applicationhost.config | 1011 ++++++++++++
项目代码/Print/Print/Print/frx/MaterMode.frx | 51
项目代码/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/extend/StockView.vue | 371 ++++
项目代码/PDA/pages/task/Inbound.vue | 104
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/GenerateOutTaskDto.cs | 1
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_ProductionOutboundOrderService.cs | 2
项目代码/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/SemanticSymbols.db | 0
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_IStorageBasicService/Boxing/IBoxingInfoService.cs | 3
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo.cs | 6
项目代码/Print/Print/Print/appsettings.Development.json | 8
项目代码/Print/Print/Print/frx/InboundOrder.frx | 97 +
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_AllocateOutboundOrder.cs | 34
项目代码/Print/Print/Services/DLL/FastReport.dll | 0
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/AllocateOutboundOrderController.cs | 2
项目代码/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-wal | 0
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_ProductionOutboundOrderDetail.cs | 11
项目代码/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-shm | 0
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/ProductionOutboundOrderController.cs | 2
项目代码/Print/Print/Print/Print.csproj | 19
项目代码/WMS/WIDESEA_WMSClient/src/views/widesea_wms/Order/AllocateOutboundOrder.vue | 2
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/BoxingInfoController.cs | 21
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_用友工程发货单一览表_ST.cs | 3
项目代码/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/CodeChunks.db-wal | 0
项目代码/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStock.jsx | 157 +
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/GetStockSelectViewDto.cs | 4
项目代码/Print/Print/Services/IPrintService.cs | 14
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs | 286 +-
项目代码/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json | 239 +-
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_DTO/ERP/Basic.cs | 24
项目代码/Print/Print/.vs/Print/v17/DocumentLayout.json | 119 +
项目代码/Print/Print/Print.sln | 25
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/StockInfoController.cs | 15
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Basic/GroupPlate.cs | 8
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_用友电控柜调拨一览表_ST.cs | 2
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Boxing/BoxingInfoService.cs | 175 ++
项目代码/Print/Print/Services/Services.csproj | 17
项目代码/Print/Print/Print/Program.cs | 22
项目代码/Print/Print/Print/Properties/launchSettings.json | 31
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_采购及成品入库清单_ST.cs | 4
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/StockSelectViewDTO.cs | 3
/dev/null | 24
项目代码/PDA/pages/Allocate/AllocateOutorderboxing.vue | 70
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_OrderOutDetails_Hty.cs | 75
项目代码/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db-wal | 0
项目代码/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db | 0
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_IStorageBasicService/Stock/IStockInfoService.cs | 14
项目代码/Print/Print/Print/appsettings.json | 10
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfoDetail.cs | 6
项目代码/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-wal | 0
项目代码/WMS/WIDESEA_WMSClient/src/views/widesea_wms/stock/Dt_BillGroupStock.vue | 9
87 files changed, 3,914 insertions(+), 1,069 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages.json"
index 8efc258..2ceb658 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages.json"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages.json"
@@ -54,20 +54,6 @@
"navigationBarTitleText": "鍑哄簱",
"enablePullDownRefresh": false
}
- },
- {
- "path": "pages/OtherOrder/OtherOutboundOrder",
- "style": {
- "navigationBarTitleText": "鍏朵粬鍑哄簱鍗曟嵁",
- "enablePullDownRefresh": false
- }
- },
- {
- "path": "pages/OtherOrder/OtherOutorderboxing",
- "style": {
- "navigationBarTitleText": "鍏朵粬鍑哄簱鍗曟嵁鏄庣粏",
- "enablePullDownRefresh": false
- }
},{
"path": "pages/Production/ProductionOutboundOrder",
"style": {
@@ -79,19 +65,6 @@
"path": "pages/Production/ProductionOutorderboxing",
"style": {
"navigationBarTitleText": "鐢熶骇棰嗘枡鍗曟槑缁�",
- "enablePullDownRefresh": false
- }
- },{
- "path": "pages/Inventory/InventoryOutboundOrder",
- "style": {
- "navigationBarTitleText": "鐩樼偣鍑哄簱鍗曟嵁",
- "enablePullDownRefresh": false
- }
- },
- {
- "path": "pages/Inventory/InventoryOutorderboxing",
- "style": {
- "navigationBarTitleText": "鐩樼偣鍑哄簱鍗曟嵁鏄庣粏",
"enablePullDownRefresh": false
}
},{
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/Allocate/AllocateOutorderboxing.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/Allocate/AllocateOutorderboxing.vue"
index 2daffbe..2b88b98 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/Allocate/AllocateOutorderboxing.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/Allocate/AllocateOutorderboxing.vue"
@@ -4,36 +4,40 @@
</uni-segmented-control> -->
<view class="content">
<!-- <view v-if="current === 0" class="headerstyle"> -->
- <view class="itemstyle">
- <u-sticky>
- <view style="background-color: #ffffff;">
- <uni-search-bar @confirm="search" v-model="searchValue"></uni-search-bar>
- </view>
- </u-sticky>
- <uni-forms label-width="50">
- <uni-forms-item label="鍑哄簱鍖哄煙"><uni-data-select v-model="value"
- :localdata="range"></uni-data-select></uni-forms-item>
- </uni-forms>
- <uni-list :border="true">
- <uni-list-item direction="column" v-for="(item,index) in orderInfo" :key="item.dtlId">
- <template v-slot:body>
- <view class="uni-list-box">
- <button type="primary" style="position: absolute;right: 1%;" size="mini"
- @click="OutBound(item.id)">鍑哄簱</button>
- <view class="uni-content">
- <view style="font-size: 18px;">鍗曟嵁缂栧彿锛歿{orderNo}}</view>
- <view style="font-size: 18px;">鐗╂枡缂栫爜锛歿{item.materielCode}}</view>
- <view style="font-size: 18px;">鐗╂枡鍚嶇О锛歿{item.materielName}}</view>
- <view style="font-size: 18px;">鍗曟嵁鏁伴噺锛歿{item.orderQuantity}}</view>
- <!-- <view style="font-size: 18px;">宸插垎閰嶆暟閲忥細{{item.processQty}}</view> -->
- <view style="font-size: 18px;">鍑哄簱鏁伴噺锛歿{item.overOutQuantity}}</view>
- </view>
+ <view class="itemstyle">
+ <u-sticky>
+ <view style="background-color: #ffffff;">
+ <uni-search-bar @confirm="search" v-model="searchValue"></uni-search-bar>
+ </view>
+ </u-sticky>
+ <uni-forms label-width="50">
+ <uni-forms-item label="鍑哄簱鍖哄煙"><uni-data-select v-model="value"
+ :localdata="range"></uni-data-select></uni-forms-item>
+ <uni-forms-item label="璋冩嫧浠撳簱">
+ <uni-easyinput type="text" :focus="!istrue" v-model="Warehouse" placeholder="璇疯緭鍏ヨ皟鎷ㄤ粨搴�"
+ ref='midInput' />
+ </uni-forms-item>
+ </uni-forms>
+ <uni-list :border="true">
+ <uni-list-item direction="column" v-for="(item,index) in orderInfo" :key="item.dtlId">
+ <template v-slot:body>
+ <view class="uni-list-box">
+ <button type="primary" style="position: absolute;right: 1%;" size="mini"
+ @click="OutBound(item.id)">鍑哄簱</button>
+ <view class="uni-content">
+ <view style="font-size: 18px;">鍗曟嵁缂栧彿锛歿{orderNo}}</view>
+ <view style="font-size: 18px;">鐗╂枡缂栫爜锛歿{item.materielCode}}</view>
+ <view style="font-size: 18px;">鐗╂枡鍚嶇О锛歿{item.materielName}}</view>
+ <view style="font-size: 18px;">鍗曟嵁鏁伴噺锛歿{item.orderQuantity}}</view>
+ <!-- <view style="font-size: 18px;">宸插垎閰嶆暟閲忥細{{item.processQty}}</view> -->
+ <view style="font-size: 18px;">鍑哄簱鏁伴噺锛歿{item.overOutQuantity}}</view>
</view>
- </template>
- </uni-list-item>
- </uni-list>
- </view>
- <u-toast ref="uToast" />
+ </view>
+ </template>
+ </uni-list-item>
+ </uni-list>
+ </view>
+ <u-toast ref="uToast" />
<!-- </view> -->
</view>
</view>
@@ -56,7 +60,8 @@
orderIds: [],
orderInfo: [],
searchValue: "",
- value:"2",
+ value: "2",
+ Warehouse:"",
label: "",
range: [],
orderDetail: {},
@@ -108,11 +113,12 @@
}
},
OutBound(id) {
- this.orderIds=[];
+ this.orderIds = [];
this.orderIds.push(id);
var postData = {
AreaId: this.value,
- orderIds: this.orderIds
+ orderIds: this.orderIds,
+ Warehouse:this.Warehouse,
};
console.log(postData);
this.$u.post('/api/AllocateOutboundOrder/GenerateAllocateOutboundTask', postData).then(res => {
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/Inventory/InventoryOutboundOrder.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/Inventory/InventoryOutboundOrder.vue"
deleted file mode 100644
index dc3acf6..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/Inventory/InventoryOutboundOrder.vue"
+++ /dev/null
@@ -1,204 +0,0 @@
-<template>
- <view>
- <u-sticky>
- <view style="background-color: #ffffff;">
- <uni-search-bar @confirm="search" v-model="searchValue"></uni-search-bar>
- </view>
- </u-sticky>
- <uni-list :border="true">
- <uni-list-item direction="column" clickable @click="groupClick(item.id,item.upperOrderNo)" link :to="page+item.orderNo"
- v-for="item in allReceivingOrders" :key="item.orderNo">
- <template v-slot:body>
- <!-- <uni-group margin-top="20">
- <view> 鍗曞彿:{{item.orderNo}} </view>
- <view> 涓婃父鍗曞彿:{{item.upperOrderNo}} </view>
- <view> 鐗╂枡缂栫爜:{{item.materielCode}} </view>
- <view> 鍗曟嵁鏁伴噺:{{item.orderQuantity}} </view>
- <view> 宸插嚭搴撴暟閲�:{{item.overOutQuantity}} </view>
- </uni-group> -->
- <uni-group margin-top="20">
- <view class="flex-row">
- <view class="label">鍗曞彿:</view>
- <view class="value">{{item.orderNo}}</view>
- </view>
- <view class="flex-row">
- <view class="label">涓婃父鍗曞彿:</view>
- <view class="value">{{item.upperOrderNo}}</view>
- </view>
- <view class="flex-row">
- <view class="label">鍒涘缓鏃堕棿:</view>
- <view class="value">{{item.createDate}}</view>
- </view>
- </uni-group>
- </template>
- </uni-list-item>
-
- </uni-list>
- <uni-load-more :status="status" v-if="loadVisible"></uni-load-more>
-
- <u-back-top :scroll-top="scrollTop" top="400"></u-back-top>
- </view>
-</template>
-
-<script>
- export default {
- data() {
- return {
- page: "/pages/Inventory/InventoryOutorderboxing?orderNo=",
- loadVisible: false,
- istrue:false,
- searchValue: "",
- status: "more",
- allReceivingOrders: [],
- pageNo: 1,
- scrollTop: 0
- }
- },
- onLoad(res) {
- this.getData();
- },
- onReachBottom() {
- this.pageNo += 1;
- this.getData();
- },
- onPageScroll(e) {
- this.scrollTop = e.scrollTop;
- },
- methods: {
- search(res) {
- this.getData();
- },
- groupClick(Id,orderNo) {
- window.location="/pages/Inventory/InventoryOutorderboxing?Id="+Id+"&orderNo="+orderNo;
- },
- getData() {
- var postData = {
- orderNo: this.searchValue,
- pageNo: this.pageNo
- }
- this.$u.post('/api/InventoryOutboundOrder/GetInventoryOutboundOrder', postData).then((res) => {
- if (res.status) {
- if (this.searchValue == '') {
- this.allReceivingOrders = this.allReceivingOrders.concat(res.data);
- if (this.allReceivingOrders.length > 3) {
- this.loadVisible = true;
- } else {
- this.loadVisible = false;
- }
- } else {
- this.allReceivingOrders = res.data;
- if (this.allReceivingOrders.length > 3) {
- this.loadVisible = true;
- } else {
- this.loadVisible = false;
- }
- }
- }
- })
- }
- }
- }
-</script>
-
-<style lang="scss">
- @import '@/common/uni-ui.scss';
-
- page {
- display: flex;
- flex-direction: column;
- box-sizing: border-box;
- background-color: #efeff4;
- min-height: 100%;
- height: auto;
- }
-
- .tips {
- color: #67c23a;
- font-size: 14px;
- line-height: 40px;
- text-align: center;
- background-color: #f0f9eb;
- height: 0;
- opacity: 0;
- transform: translateY(-100%);
- transition: all 0.3s;
- }
-
- .tips-ani {
- transform: translateY(0);
- height: 40px;
- opacity: 1;
- }
-
- .content {
- width: 100%;
- display: flex;
- }
-
- .list-picture {
- width: 100%;
- height: 145px;
- }
-
- .thumb-image {
- width: 100%;
- height: 100%;
- }
-
- .ellipsis {
- display: flex;
- overflow: hidden;
- }
-
- .uni-ellipsis-1 {
- overflow: hidden;
- white-space: nowrap;
- text-overflow: ellipsis;
- }
-
- .uni-ellipsis-2 {
- overflow: hidden;
- text-overflow: ellipsis;
- display: -webkit-box;
- -webkit-line-clamp: 2;
- -webkit-box-orient: vertical;
- }
-
- .customcss {
- display: flex;
- position: fixed;
- width: 100%;
- top: 10px;
- text-align: center;
- z-index: 999;
- left: 30px;
- height: 20%;
- }
-
- .footer {
- padding-top: 50%;
- }
-
- .flex-row {
- display: flex;
- justify-content: space-between;
- /* 宸﹀彸瀵归綈 */
- align-items: center;
- /* 鍨傜洿灞呬腑 */
- padding: 10rpx 0;
- }
-
- .label {
- color: #666;
- width: 200rpx;
- /* 鍥哄畾鏍囩瀹藉害 */
- text-align: left;
- }
-
- .value {
- flex: 1;
- text-align: right;
- color: #333;
- font-weight: bold;
- }
-</style>
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/Inventory/InventoryOutorderboxing.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/Inventory/InventoryOutorderboxing.vue"
deleted file mode 100644
index 25c8828..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/Inventory/InventoryOutorderboxing.vue"
+++ /dev/null
@@ -1,178 +0,0 @@
-<template>
- <view>
- <!-- <uni-segmented-control :current="current" :values="items" @clickItem="onClickItem">
- </uni-segmented-control> -->
- <view class="content">
- <!-- <view v-if="current === 0" class="headerstyle"> -->
- <view class="itemstyle">
- <u-sticky>
- <view style="background-color: #ffffff;">
- <uni-search-bar @confirm="search" v-model="searchValue"></uni-search-bar>
- </view>
- </u-sticky>
- <uni-forms label-width="50">
- <uni-forms-item label="鍑哄簱鍖哄煙"><uni-data-select v-model="value"
- :localdata="range"></uni-data-select></uni-forms-item>
- </uni-forms>
- <uni-list :border="true">
- <uni-list-item direction="column" v-for="(item,index) in orderInfo" :key="item.dtlId">
- <template v-slot:body>
- <view class="uni-list-box">
- <button type="primary" style="position: absolute;right: 1%;" size="mini"
- @click="OutBound(item.id)">鍑哄簱</button>
- <view class="uni-content">
- <view style="font-size: 18px;">鍗曟嵁缂栧彿锛歿{orderNo}}</view>
- <view style="font-size: 18px;">鐗╂枡缂栫爜锛歿{item.materielCode}}</view>
- <view style="font-size: 18px;">鐗╂枡鍚嶇О锛歿{item.materielName}}</view>
- <view style="font-size: 18px;">鍗曟嵁鏁伴噺锛歿{item.orderQuantity}}</view>
- <!-- <view style="font-size: 18px;">宸插垎閰嶆暟閲忥細{{item.processQty}}</view> -->
- <view style="font-size: 18px;">鍑哄簱鏁伴噺锛歿{item.overOutQuantity}}</view>
- </view>
- </view>
- </template>
- </uni-list-item>
- </uni-list>
- </view>
- <u-toast ref="uToast" />
- <!-- </view> -->
- </view>
- </view>
- </view>
-</template>
-
-<script>
- import {
- config
- } from '../../common/config';
- const innerAudioContext = uni.createInnerAudioContext();
- export default {
- data() {
- return {
- items: ['鐩存帴鍑哄簱'],
- current: 0,
- orderNo: "",
- Id: 0,
- AreaId: "",
- orderIds: [],
- orderInfo: [],
- searchValue: "",
- value:"2",
- label: "",
- range: [],
- orderDetail: {},
- focus: false,
- key: [],
- materielCode: "",
- }
- },
- onShow() {},
- onLoad(res) {
- this.focus = false;
- this.addressFocus = false;
- this.Id = res.Id;
- this.orderNo = res.orderNo;
- this.range = config.OutArea;
- this.getData();
- },
- methods: {
- groupClick(materielCode, id) {
- // window.location="/pages/materielGroup/OutOrderDetail?materielCode="+materielCode+"&id="+id;
- // console.log(materielCode,id)
- },
- search() {
- this.getData();
- },
- getData() {
- var id = this.Id
- var postData = {
- id: id,
- searchValue: this.searchValue,
- };
- this.$u.post('/api/InventoryOutboundOrder/GetInventoryOutboundOrderDetail', postData).then((res) => {
- if (res.status) {
- this.orderInfo = res.data;
- // if (this.orderDetail.length > 3) {
- // this.loadVisible = true;
- // }
- }
- })
- },
- onClickItem(e) {
- this.focus = false;
- this.addressFocus = false;
- if (this.current !== e.currentIndex) {
- this.current = e.currentIndex;
- if (this.current == 2) {
- this.getData();
- }
- }
- },
- OutBound(id) {
- this.orderIds=[];
- this.orderIds.push(id);
- var postData = {
- AreaId: this.value,
- orderIds: this.orderIds
- };
- console.log(postData);
- this.$u.post('/api/InventoryOutboundOrder/GenerateInventoryOutboundTask', postData).then(res => {
- if (res.status) {
- this.items = [];
- uni.$showMsg(res.message);
- setTimeout(() => {
- this.addressFocus = false;
- }, 200);
- } else {
- this.$refs.uToast.show({
- title: res.message,
- type: "error"
- })
- }
- }).catch(err => {
- this.$refs.uToast.show({
- title: err.message,
- type: "error"
- })
- })
- },
- click(e) {
- if (this.key.find(x => x.id == e.id)) {
- this.key.map((item, index) => {
- if (item.id == e.id) {
- this.key.splice(index, 1);
- }
- })
- } else {
- this.key.push(e.id);
- }
- }
- }
- }
-</script>
-
-<style lang="scss">
- @import '@/common/uni-ui.scss';
-
- .flex-row {
- display: flex;
- justify-content: space-between;
- /* 宸﹀彸瀵归綈 */
- align-items: center;
- /* 鍨傜洿灞呬腑 */
- padding: 10rpx 0;
- }
-
- .label {
- color: #666;
- width: 200rpx;
- /* 鍥哄畾鏍囩瀹藉害 */
- text-align: left;
- }
-
- .value {
- flex: 1;
- text-align: right;
- color: #333;
- font-weight: bold;
- }
-</style>
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/OtherOrder/OtherOutboundOrder.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/OtherOrder/OtherOutboundOrder.vue"
deleted file mode 100644
index 4534f12..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/OtherOrder/OtherOutboundOrder.vue"
+++ /dev/null
@@ -1,204 +0,0 @@
-<template>
- <view>
- <u-sticky>
- <view style="background-color: #ffffff;">
- <uni-search-bar @confirm="search" v-model="searchValue"></uni-search-bar>
- </view>
- </u-sticky>
- <uni-list :border="true">
- <uni-list-item direction="column" clickable @click="groupClick(item.id,item.upperOrderNo)" link :to="page+item.orderNo"
- v-for="item in allReceivingOrders" :key="item.orderNo">
- <template v-slot:body>
- <!-- <uni-group margin-top="20">
- <view> 鍗曞彿:{{item.orderNo}} </view>
- <view> 涓婃父鍗曞彿:{{item.upperOrderNo}} </view>
- <view> 鐗╂枡缂栫爜:{{item.materielCode}} </view>
- <view> 鍗曟嵁鏁伴噺:{{item.orderQuantity}} </view>
- <view> 宸插嚭搴撴暟閲�:{{item.overOutQuantity}} </view>
- </uni-group> -->
- <uni-group margin-top="20">
- <view class="flex-row">
- <view class="label">鍗曞彿:</view>
- <view class="value">{{item.orderNo}}</view>
- </view>
- <view class="flex-row">
- <view class="label">涓婃父鍗曞彿:</view>
- <view class="value">{{item.upperOrderNo}}</view>
- </view>
- <view class="flex-row">
- <view class="label">鍒涘缓鏃堕棿:</view>
- <view class="value">{{item.createDate}}</view>
- </view>
- </uni-group>
- </template>
- </uni-list-item>
-
- </uni-list>
- <uni-load-more :status="status" v-if="loadVisible"></uni-load-more>
-
- <u-back-top :scroll-top="scrollTop" top="400"></u-back-top>
- </view>
-</template>
-
-<script>
- export default {
- data() {
- return {
- page: "/pages/OtherOrder/OtherOutorderboxing?orderNo=",
- loadVisible: false,
- istrue:false,
- searchValue: "",
- status: "more",
- allReceivingOrders: [],
- pageNo: 1,
- scrollTop: 0
- }
- },
- onLoad(res) {
- this.getData();
- },
- onReachBottom() {
- this.pageNo += 1;
- this.getData();
- },
- onPageScroll(e) {
- this.scrollTop = e.scrollTop;
- },
- methods: {
- search(res) {
- this.getData();
- },
- groupClick(Id,orderNo) {
- window.location="/pages/OtherOrder/OtherOutorderboxing?Id="+Id+"&orderNo="+orderNo;
- },
- getData() {
- var postData = {
- orderNo: this.searchValue,
- pageNo: this.pageNo
- }
- this.$u.post('/api/OtherOutboundOrder/GetOtherOutboundOrder', postData).then((res) => {
- if (res.status) {
- if (this.searchValue == '') {
- this.allReceivingOrders = this.allReceivingOrders.concat(res.data);
- if (this.allReceivingOrders.length > 3) {
- this.loadVisible = true;
- } else {
- this.loadVisible = false;
- }
- } else {
- this.allReceivingOrders = res.data;
- if (this.allReceivingOrders.length > 3) {
- this.loadVisible = true;
- } else {
- this.loadVisible = false;
- }
- }
- }
- })
- }
- }
- }
-</script>
-
-<style lang="scss">
- @import '@/common/uni-ui.scss';
-
- page {
- display: flex;
- flex-direction: column;
- box-sizing: border-box;
- background-color: #efeff4;
- min-height: 100%;
- height: auto;
- }
-
- .tips {
- color: #67c23a;
- font-size: 14px;
- line-height: 40px;
- text-align: center;
- background-color: #f0f9eb;
- height: 0;
- opacity: 0;
- transform: translateY(-100%);
- transition: all 0.3s;
- }
-
- .tips-ani {
- transform: translateY(0);
- height: 40px;
- opacity: 1;
- }
-
- .content {
- width: 100%;
- display: flex;
- }
-
- .list-picture {
- width: 100%;
- height: 145px;
- }
-
- .thumb-image {
- width: 100%;
- height: 100%;
- }
-
- .ellipsis {
- display: flex;
- overflow: hidden;
- }
-
- .uni-ellipsis-1 {
- overflow: hidden;
- white-space: nowrap;
- text-overflow: ellipsis;
- }
-
- .uni-ellipsis-2 {
- overflow: hidden;
- text-overflow: ellipsis;
- display: -webkit-box;
- -webkit-line-clamp: 2;
- -webkit-box-orient: vertical;
- }
-
- .customcss {
- display: flex;
- position: fixed;
- width: 100%;
- top: 10px;
- text-align: center;
- z-index: 999;
- left: 30px;
- height: 20%;
- }
-
- .footer {
- padding-top: 50%;
- }
-
- .flex-row {
- display: flex;
- justify-content: space-between;
- /* 宸﹀彸瀵归綈 */
- align-items: center;
- /* 鍨傜洿灞呬腑 */
- padding: 10rpx 0;
- }
-
- .label {
- color: #666;
- width: 200rpx;
- /* 鍥哄畾鏍囩瀹藉害 */
- text-align: left;
- }
-
- .value {
- flex: 1;
- text-align: right;
- color: #333;
- font-weight: bold;
- }
-</style>
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/OtherOrder/OtherOutorderboxing.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/OtherOrder/OtherOutorderboxing.vue"
deleted file mode 100644
index 027615b..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/OtherOrder/OtherOutorderboxing.vue"
+++ /dev/null
@@ -1,178 +0,0 @@
-<template>
- <view>
- <!-- <uni-segmented-control :current="current" :values="items" @clickItem="onClickItem">
- </uni-segmented-control> -->
- <view class="content">
- <!-- <view v-if="current === 0" class="headerstyle"> -->
- <view class="itemstyle">
- <u-sticky>
- <view style="background-color: #ffffff;">
- <uni-search-bar @confirm="search" v-model="searchValue"></uni-search-bar>
- </view>
- </u-sticky>
- <uni-forms label-width="50">
- <uni-forms-item label="鍑哄簱鍖哄煙"><uni-data-select v-model="value"
- :localdata="range"></uni-data-select></uni-forms-item>
- </uni-forms>
- <uni-list :border="true">
- <uni-list-item direction="column" v-for="(item,index) in orderInfo" :key="item.dtlId">
- <template v-slot:body>
- <view class="uni-list-box">
- <button type="primary" style="position: absolute;right: 1%;" size="mini"
- @click="OutBound(item.id)">鍑哄簱</button>
- <view class="uni-content">
- <view style="font-size: 18px;">鍗曟嵁缂栧彿锛歿{orderNo}}</view>
- <view style="font-size: 18px;">鐗╂枡缂栫爜锛歿{item.materielCode}}</view>
- <view style="font-size: 18px;">鐗╂枡鍚嶇О锛歿{item.materielName}}</view>
- <view style="font-size: 18px;">鍗曟嵁鏁伴噺锛歿{item.orderQuantity}}</view>
- <!-- <view style="font-size: 18px;">宸插垎閰嶆暟閲忥細{{item.processQty}}</view> -->
- <view style="font-size: 18px;">鍑哄簱鏁伴噺锛歿{item.overOutQuantity}}</view>
- </view>
- </view>
- </template>
- </uni-list-item>
- </uni-list>
- </view>
- <u-toast ref="uToast" />
- <!-- </view> -->
- </view>
- </view>
- </view>
-</template>
-
-<script>
- import {
- config
- } from '../../common/config';
- const innerAudioContext = uni.createInnerAudioContext();
- export default {
- data() {
- return {
- items: ['鐩存帴鍑哄簱'],
- current: 0,
- orderNo: "",
- Id: 0,
- AreaId: "",
- orderIds: [],
- orderInfo: [],
- searchValue: "",
- value:"2",
- label: "",
- range: [],
- orderDetail: {},
- focus: false,
- key: [],
- materielCode: "",
- }
- },
- onShow() {},
- onLoad(res) {
- this.focus = false;
- this.addressFocus = false;
- this.Id = res.Id;
- this.orderNo = res.orderNo;
- this.range = config.OutArea;
- this.getData();
- },
- methods: {
- groupClick(materielCode, id) {
- // window.location="/pages/materielGroup/OutOrderDetail?materielCode="+materielCode+"&id="+id;
- // console.log(materielCode,id)
- },
- search() {
- this.getData();
- },
- getData() {
- var id = this.Id
- var postData = {
- id: id,
- searchValue: this.searchValue,
- };
- this.$u.post('/api/OtherOutboundOrder/GetOtherOutboundOrderDetail', postData).then((res) => {
- if (res.status) {
- this.orderInfo = res.data;
- // if (this.orderDetail.length > 3) {
- // this.loadVisible = true;
- // }
- }
- })
- },
- onClickItem(e) {
- this.focus = false;
- this.addressFocus = false;
- if (this.current !== e.currentIndex) {
- this.current = e.currentIndex;
- if (this.current == 2) {
- this.getData();
- }
- }
- },
- OutBound(id) {
- this.orderIds=[];
- this.orderIds.push(id);
- var postData = {
- AreaId: this.value,
- orderIds: this.orderIds
- };
- console.log(postData);
- this.$u.post('/api/OtherOutboundOrder/GenerateOtherOutboundTask', postData).then(res => {
- if (res.status) {
- this.items = [];
- uni.$showMsg(res.message);
- setTimeout(() => {
- this.addressFocus = false;
- }, 200);
- } else {
- this.$refs.uToast.show({
- title: res.message,
- type: "error"
- })
- }
- }).catch(err => {
- this.$refs.uToast.show({
- title: err.message,
- type: "error"
- })
- })
- },
- click(e) {
- if (this.key.find(x => x.id == e.id)) {
- this.key.map((item, index) => {
- if (item.id == e.id) {
- this.key.splice(index, 1);
- }
- })
- } else {
- this.key.push(e.id);
- }
- }
- }
- }
-</script>
-
-<style lang="scss">
- @import '@/common/uni-ui.scss';
-
- .flex-row {
- display: flex;
- justify-content: space-between;
- /* 宸﹀彸瀵归綈 */
- align-items: center;
- /* 鍨傜洿灞呬腑 */
- padding: 10rpx 0;
- }
-
- .label {
- color: #666;
- width: 200rpx;
- /* 鍥哄畾鏍囩瀹藉害 */
- text-align: left;
- }
-
- .value {
- flex: 1;
- text-align: right;
- color: #333;
- font-weight: bold;
- }
-</style>
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/task/Inbound.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/task/Inbound.vue"
index 67d40ce..6aaf79b 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/task/Inbound.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/task/Inbound.vue"
@@ -37,16 +37,31 @@
<uni-easyinput type="text" placeholder="璇锋壂鎻忓绠辨爣绛�" ref='midInput' :focus="focus" v-model="materSn"
@input="snInput" />
</uni-forms-item>
- <uni-list>
- <!-- <uni-list-item direction="column" v-for="item in InBoundOrder" :key="item.matCode">
- <template v-slot:body>
- <view class="uni-list-box">
- <view class="uni-content">
- <view class="uni-title-sub uni-ellipsis-2">璁㈠崟鍞竴缂栫爜锛歿{item.orderNo}}</view>
- </view>
+ <view v-if="group.length" class="scan-result">
+ <uni-card v-for="(item, index) in group" :key="item.orderNo">
+ <view class="info-grid">
+ <view class="info-row">
+ <text class="label">璁㈠崟缂栫爜锛�</text>
+ <text>{{ item.orderNo }}</text>
</view>
- </template>
- </uni-list-item> -->
+ <br>
+ <view class="info-row">
+ <text class="label">浠撳簱鍚嶇О锛�</text>
+ <text>{{ item.warehouseName }}</text>
+ </view><br>
+ <view class="info-row">
+ <text class="label">鐗╂枡缂栫爜锛�</text>
+ <text>{{ item.materialNo }}</text>
+ </view><br>
+ <uni-forms-item label="缁勭洏鏁伴噺">
+ <uni-easyinput v-model="item.quantity" type="number" />
+ </uni-forms-item>
+ </view>
+ <uni-icons type="trash" class="delete-icon" @click="removeScanItem(item.orderNo)" />
+ </uni-card>
+ </view>
+
+ <!-- <uni-list>
<uni-list-item direction="column" v-for="(item,index) in InBoundOrder" :key="item.sn">
<template v-slot:body>
<view class="uni-list-box">
@@ -56,10 +71,20 @@
<view class="uni-content">
<view class="uni-title-sub uni-ellipsis-2">璁㈠崟鍞竴缂栫爜锛歿{item.orderNo}}</view>
</view>
+ <view class="uni-content">
+ <view class="uni-title-sub uni-ellipsis-2">浠撳簱锛歿{item.warehouseName}}</view>
+ </view>
+ <view class="uni-content">
+ <view class="uni-title-sub uni-ellipsis-2">鐗╂枡缂栫爜锛歿{item.materialNo}}</view>
+ </view>
+ <uni-forms-item label="鏁伴噺">
+ <uni-easyinput type="text" :focus="barcodefocus" @input="quantity"
+ v-model="PalletCode2" placeholder="鏁伴噺" ref='midInput' />
+ </uni-forms-item>
</view>
</template>
</uni-list-item>
- </uni-list>
+ </uni-list> -->
</uni-forms>
<button @click="GroupPlate" type="primary" size="default" style="margin-top: 2%;">缁勭洏</button>
</view>
@@ -92,15 +117,15 @@
istrue: false,
barcodefocus: false,
range: [],
+ group: [],
AreaId: 0,
+ quantity: "",
SourceAddress: "",
TargetAddress: "",
PalletCode1: "",
PalletCode2: "",
PalletCode3: "",
materSn: "",
- InBoundOrder: [],
- OrderNos: [],
items: ['鍏ュ簱', '缁勭洏', '瑙g洏'],
current: 0
}
@@ -132,7 +157,6 @@
"TargetAddress": this.TargetAddress,
"AreaId": this.AreaId,
}
- console.log(param);
this.$u.post('/api/Task/RequestInboundTaskAsync', param).then(res => {
if (res.status) {
this.$refs.luToast.show({
@@ -162,17 +186,16 @@
}
var param = {
"PalletCode": this.PalletCode2,
- "OrderNos": this.OrderNos
+ "groups": this.group
}
- this.$u.post('/api/StockInfo/AddGroupPlateAsync', param).then(res => {
+ this.$u.post('/api/BoxingInfo/AddGroupPlateAsync', param).then(res => {
if (res.status) {
this.$refs.luToast.show({
title: res.message,
type: "success"
})
this.PalletCode2 = "";
- this.InBoundOrder = [];
- this.OrderNos = [];
+ this.group = [];
this.barcodefocus = false;
} else {
this.$refs.luToast.show({
@@ -182,8 +205,8 @@
}
})
},
-
- SolvePlate(){
+
+ SolvePlate() {
if (this.PalletCode3.length <= 0) {
this.$refs.luToast.show({
title: "璇疯緭鍏ユ墭鐩樻潯鐮�",
@@ -223,16 +246,26 @@
var matObj = {
orderNo: this.materSn,
}
- var temp = this.InBoundOrder.find(x => x.orderNo == matObj.orderNo);
+ var temp = this.group.find(x => x.orderNo == matObj.orderNo);
if (!temp) {
- this.InBoundOrder.push(matObj);
- this.OrderNos.push(this.materSn);
- setTimeout(this.updateFocus, 200);
- setTimeout(() => {
- this.voiceSpeech('../../static/success.mp3');
- }, 100);
+ this.$u.post('/api/InboundOrder/GetInboundOrderInfo?orderNo=' + this.materSn, "").then(
+ res => {
+ if (res.status) {
+ this.group.push(res.data);
+ setTimeout(this.updateFocus, 200);
+ setTimeout(() => {
+ this.voiceSpeech('../../static/success.mp3');
+ }, 100);
+ } else {
+ this.$refs.luToast.show({
+ title: res.message,
+ type: "error"
+ })
+ }
+ })
+
} else {
- this.$refs.uToast.show({
+ this.$refs.luToast.show({
title: "鎵爜閲嶅",
type: "error"
})
@@ -244,20 +277,9 @@
})
},
- deleteList(res) {
- this.InBoundOrder.map((item, index) => {
- console.log(res, item);
- if (item.orderNo == res) {
- this.InBoundOrder.splice(index, 1);
- }
- })
- this.OrderNos.map((item, index) => {
- if (item == res) {
- this.OrderNos.splice(index, 1);
- }
- })
- },
-
+ removeScanItem(orderNo) {
+ this.group = this.group.filter(item => item.orderNo !== orderNo);
+ }
}
}
</script>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/task/Outbound.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/task/Outbound.vue"
index 4f75041..2c70164 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/task/Outbound.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/PDA/pages/task/Outbound.vue"
@@ -1,48 +1,47 @@
<template>
<view>
- <uni-segmented-control :current="current" :values="items" @clickItem="onClickItem">
- </uni-segmented-control>
- <view v-show="current === 0">
- <view style="padding: 5%;">
- <uni-forms label-width="120">
- <uni-forms-item label="鎵樼洏缂栫爜">
- <uni-easyinput type="text" :focus="!istrue" @input="carNoInputChange" v-model="PalletCode"
- placeholder="璇疯緭鍏ユ墭鐩樼紪鐮�" ref='midInput' />
- </uni-forms-item>
- <uni-forms-item label="鎼繍璧风偣">
- <uni-easyinput type="text" :focus="istrue" v-model="SourceAddress"
- placeholder="璇疯緭鍏GV鎼繍璧风偣" ref='midInput' />
- </uni-forms-item>
- <uni-forms-item label="鎼繍缁堢偣">
- <uni-easyinput type="text" :focus="!istrue" @input="carNoInputChange" v-model="TargetAddress"
- placeholder="璇疯緭鍏GV鎼繍缁堢偣" ref='midInput' />
- </uni-forms-item>
- </uni-forms>
- <button @click="InboundTask" type="primary" size="default" style="margin-top: 2%;">鎼繍</button>
- <u-toast ref="InboundTaskluToast" />
+ <u-sticky>
+ <view style="background-color: #ffffff;">
+ <uni-search-bar @confirm="search" v-model="searchValue"></uni-search-bar>
</view>
- </view>
- <view v-show="current === 1">
- <view style="padding: 5%;">
- <uni-forms label-width="120">
- <uni-forms-item label="鎵� 鐩� 缂� 鐮�">
- <uni-easyinput type="text" :focus="barcodefocus" @input="inputChangebarcode" v-model="Barcode"
- placeholder="璇疯緭鍏ユ墭鐩樼紪鐮�" ref='midInput' />
- </uni-forms-item>
- <uni-forms-item label="璺ㄦゼ灞傝捣鐐�">
- <uni-easyinput type="text" :focus="barcodefocus" v-model="StartAddress"
- placeholder="璇疯緭鍏ヨ法妤煎眰璧风偣" ref='midInput' />
- </uni-forms-item>
- <uni-forms-item label="璺ㄦゼ灞傜粓鐐�">
- <uni-easyinput type="text" :focus="barcodefocus" v-model="EndAddress"
- placeholder="璇疯緭鍏ヨ法妤煎眰缁堢偣" ref='midInput' />
- </uni-forms-item>
- </uni-forms>
- <button @click="OutboundTask" type="primary" size="default" style="margin-top: 2%;">涓嬪彂浠诲姟</button>
- <u-toast ref="OutboundTaskluToast" />
- </view>
- </view>
- </view>
+ </u-sticky>
+ <uni-list :border="true">
+ <uni-list-item direction="column" clickable
+ v-for="item in allReceivingOrders" :key="item.orderNo">
+ <template v-slot:body>
+ <uni-group margin-top="20">
+ <view class="flex-row">
+ <view class="label">鎵樼洏鏉$爜:</view>
+ <view class="value">{{item.palletCode}}</view>
+ </view>
+ <view class="flex-row">
+ <view class="label">璐т綅缂栫爜:</view>
+ <view class="value">{{item.locationCode}}</view>
+ </view>
+ <view class="flex-row">
+ <view class="label">鐗╂枡缂栫爜:</view>
+ <view class="value">{{item.materielCode}}</view>
+ </view>
+ <view class="flex-row">
+ <view class="label">鐗╂枡鍚嶇О:</view>
+ <view class="value">{{item.materielName}}</view>
+ </view>
+ <view class="flex-row">
+ <view class="label">搴撳瓨鏁伴噺:</view>
+ <view class="value">{{item.quantity}}</view>
+ </view>
+ <view>
+ <button @click="Outbound(item.palletCode)" type="primary" size="default" style="margin-top: 2%;">鍑哄簱</button>
+ </view>
+ </uni-group>
+ </template>
+ </uni-list-item>
+
+ </uni-list>
+ <!-- <uni-load-more :status="status" v-if="loadVisible"></uni-load-more>
+
+ <u-back-top :scroll-top="scrollTop" top="400"></u-back-top> -->
+ <u-toast ref="luToast" />
</view>
</template>
@@ -50,88 +49,72 @@
export default {
data() {
return {
+ page: "/pages/Production/ProductionOutorderboxing?orderNo=",
+ loadVisible: false,
istrue: false,
- barcodefocus: false,
- range: [],
- EndAddress: "",
- StartAddress: "",
- Barcode: "",
- TargetAddress:"",
- PalletCode: "",
- SourceAddress: "",
- items: ['鎼繍', '璺ㄦゼ灞�'],
- current: 0
+ searchValue: "",
+ status: "more",
+ allReceivingOrders: [],
+ pageNo: 1,
+ scrollTop: 0
}
},
+ onLoad(res) {
+ this.getData();
+ },
+ onReachBottom() {
+ this.pageNo += 1;
+ this.getData();
+ },
+ onPageScroll(e) {
+ this.scrollTop = e.scrollTop;
+ },
methods: {
- onClickItem(e) {
- if (this.current != e.currentIndex) {
- this.current = e.currentIndex;
- }
+ search(res) {
+ this.getData();
},
- InboundTask() {
- if (this.PalletCode.length <= 0 && this.Point.length) {
- this.$refs.InboundTaskluToast.show({
- title: "鎵樼洏缂栫爜璺熺粦瀹氳揣浣嶄笉鑳戒负绌�",
- type: "error"
- })
- return;
+ getData() {
+ var postData = {
+ orderNo: this.searchValue,
+ pageNo: this.pageNo
}
- var param = {
- "PalletCode": this.PalletCode,
- "Position": this.SourceAddress,
- "TargetAddress":this.TargetAddress
- }
- console.log(param);
- this.$u.post('/api/Task/RequestAGVCarryTaskAsync', param).then(res => {
+ this.$u.post('/api/StockInfo/GetStockView', postData).then((res) => {
if (res.status) {
- this.$refs.InboundTaskluToast.show({
+ if (this.searchValue == '') {
+ this.allReceivingOrders = this.allReceivingOrders.concat(res.data);
+ if (this.allReceivingOrders.length > 3) {
+ this.loadVisible = true;
+ } else {
+ this.loadVisible = false;
+ }
+ } else {
+ this.allReceivingOrders = res.data;
+ if (this.allReceivingOrders.length > 3) {
+ this.loadVisible = true;
+ } else {
+ this.loadVisible = false;
+ }
+ }
+ }
+ })
+ },
+
+ Outbound(palletCode) {
+ this.$u.post('/api/Task/OutBoundTaskAsync?palletCode='+palletCode, "").then((res) => {
+ if (res.status) {
+ this.$refs.luToast.show({
title: res.message,
type: "success"
})
- this.PalletCode = "";
- this.SourceAddress = "";
- this.TargetAddress="";
- this.istrue = false;
+ this.getData();
} else {
- this.$refs.InboundTaskluToast.show({
+ this.$refs.luToast.show({
title: res.message,
type: "error"
})
}
})
- },
- OutboundTask() {
- if (this.EndAddress.length <= 0 && this.Barcode.length) {
- this.$refs.OutboundTaskluToast.show({
- title: "璇疯緭鍏ヨ捣鐐圭珯鍙�",
- type: "error"
- })
- return;
- }
- var param = {
- "PalletCode": this.Barcode,
- "Position": this.StartAddress,
- "TargetAddress":this.EndAddress
- }
- this.$u.post('/api/Task/RequestAcrossFloorTaskAsync', param).then(res => {
- if (res.status) {
- this.$refs.OutboundTaskluToast.show({
- title: res.message,
- type: "success"
- })
- this.Barcode = "";
- this.EndAddress = "";
- this.StartAddress="";
- this.barcodefocus = false;
- } else {
- this.$refs.OutboundTaskluToast.show({
- title: res.message,
- type: "error"
- })
- }
- })
- },
+ }
}
}
</script>
@@ -199,4 +182,42 @@
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
+
+ .customcss {
+ display: flex;
+ position: fixed;
+ width: 100%;
+ top: 10px;
+ text-align: center;
+ z-index: 999;
+ left: 30px;
+ height: 20%;
+ }
+
+ .footer {
+ padding-top: 50%;
+ }
+
+ .flex-row {
+ display: flex;
+ justify-content: space-between;
+ /* 宸﹀彸瀵归綈 */
+ align-items: center;
+ /* 鍨傜洿灞呬腑 */
+ padding: 10rpx 0;
+ }
+
+ .label {
+ color: #666;
+ width: 200rpx;
+ /* 鍥哄畾鏍囩瀹藉害 */
+ text-align: left;
+ }
+
+ .value {
+ flex: 1;
+ text-align: right;
+ color: #333;
+ font-weight: bold;
+ }
</style>
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/CodeChunks.db" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/CodeChunks.db"
new file mode 100644
index 0000000..4f71c13
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/CodeChunks.db"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/CodeChunks.db-shm" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/CodeChunks.db-shm"
new file mode 100644
index 0000000..f76fa36
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/CodeChunks.db-shm"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/CodeChunks.db-wal" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/CodeChunks.db-wal"
new file mode 100644
index 0000000..d314225
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/CodeChunks.db-wal"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/SemanticSymbols.db" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/SemanticSymbols.db"
new file mode 100644
index 0000000..d81fab1
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/SemanticSymbols.db"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-shm" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-shm"
new file mode 100644
index 0000000..14e92bd
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-shm"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-wal" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-wal"
new file mode 100644
index 0000000..2f5ea1d
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-wal"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/config/applicationhost.config" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/config/applicationhost.config"
new file mode 100644
index 0000000..223dc4c
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/config/applicationhost.config"
@@ -0,0 +1,1011 @@
+锘�<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ IIS configuration sections.
+
+ For schema documentation, see
+ %IIS_BIN%\config\schema\IIS_schema.xml.
+
+ Please make a backup of this file before making any changes to it.
+
+ NOTE: The following environment variables are available to be used
+ within this file and are understood by the IIS Express.
+
+ %IIS_USER_HOME% - The IIS Express home directory for the user
+ %IIS_SITES_HOME% - The default home directory for sites
+ %IIS_BIN% - The location of the IIS Express binaries
+ %SYSTEMDRIVE% - The drive letter of %IIS_BIN%
+
+-->
+
+<configuration>
+
+ <!--
+
+ The <configSections> section controls the registration of sections.
+ Section is the basic unit of deployment, locking, searching and
+ containment for configuration settings.
+
+ Every section belongs to one section group.
+ A section group is a container of logically-related sections.
+
+ Sections cannot be nested.
+ Section groups may be nested.
+
+ <section
+ name="" [Required, Collection Key] [XML name of the section]
+ allowDefinition="Everywhere" [MachineOnly|MachineToApplication|AppHostOnly|Everywhere] [Level where it can be set]
+ overrideModeDefault="Allow" [Allow|Deny] [Default delegation mode]
+ allowLocation="true" [true|false] [Allowed in location tags]
+ />
+
+ The recommended way to unlock sections is by using a location tag:
+ <location path="Default Web Site" overrideMode="Allow">
+ <system.webServer>
+ <asp />
+ </system.webServer>
+ </location>
+
+ -->
+ <configSections>
+ <sectionGroup name="system.applicationHost">
+ <section name="applicationPools" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
+ <section name="configHistory" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
+ <section name="customMetadata" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
+ <section name="listenerAdapters" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
+ <section name="log" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
+ <section name="serviceAutoStartProviders" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
+ <section name="sites" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
+ <section name="webLimits" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
+ </sectionGroup>
+
+ <sectionGroup name="system.webServer">
+ <section name="asp" overrideModeDefault="Deny" />
+ <section name="caching" overrideModeDefault="Allow" />
+ <section name="cgi" overrideModeDefault="Deny" />
+ <section name="defaultDocument" overrideModeDefault="Allow" />
+ <section name="directoryBrowse" overrideModeDefault="Allow" />
+ <section name="fastCgi" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
+ <section name="globalModules" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
+ <section name="handlers" overrideModeDefault="Deny" />
+ <section name="httpCompression" overrideModeDefault="Allow" allowDefinition="Everywhere" />
+ <section name="httpErrors" overrideModeDefault="Allow" />
+ <section name="httpLogging" overrideModeDefault="Deny" />
+ <section name="httpProtocol" overrideModeDefault="Allow" />
+ <section name="httpRedirect" overrideModeDefault="Allow" />
+ <section name="httpTracing" overrideModeDefault="Deny" />
+ <section name="isapiFilters" allowDefinition="MachineToApplication" overrideModeDefault="Deny" />
+ <section name="modules" allowDefinition="MachineToApplication" overrideModeDefault="Deny" />
+ <section name="applicationInitialization" allowDefinition="MachineToApplication" overrideModeDefault="Allow" />
+ <section name="odbcLogging" overrideModeDefault="Deny" />
+ <sectionGroup name="security">
+ <section name="access" overrideModeDefault="Deny" />
+ <section name="applicationDependencies" overrideModeDefault="Deny" />
+ <sectionGroup name="authentication">
+ <section name="anonymousAuthentication" overrideModeDefault="Deny" />
+ <section name="basicAuthentication" overrideModeDefault="Deny" />
+ <section name="clientCertificateMappingAuthentication" overrideModeDefault="Deny" />
+ <section name="digestAuthentication" overrideModeDefault="Deny" />
+ <section name="iisClientCertificateMappingAuthentication" overrideModeDefault="Deny" />
+ <section name="windowsAuthentication" overrideModeDefault="Deny" />
+ </sectionGroup>
+ <section name="authorization" overrideModeDefault="Allow" />
+ <section name="ipSecurity" overrideModeDefault="Deny" />
+ <section name="dynamicIpSecurity" overrideModeDefault="Deny" />
+ <section name="isapiCgiRestriction" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
+ <section name="requestFiltering" overrideModeDefault="Allow" />
+ </sectionGroup>
+ <section name="serverRuntime" overrideModeDefault="Deny" />
+ <section name="serverSideInclude" overrideModeDefault="Deny" />
+ <section name="staticContent" overrideModeDefault="Allow" />
+ <sectionGroup name="tracing">
+ <section name="traceFailedRequests" overrideModeDefault="Allow" />
+ <section name="traceProviderDefinitions" overrideModeDefault="Deny" />
+ </sectionGroup>
+ <section name="urlCompression" overrideModeDefault="Allow" />
+ <section name="validation" overrideModeDefault="Allow" />
+ <sectionGroup name="webdav">
+ <section name="globalSettings" overrideModeDefault="Deny" />
+ <section name="authoring" overrideModeDefault="Deny" />
+ <section name="authoringRules" overrideModeDefault="Deny" />
+ </sectionGroup>
+ <sectionGroup name="rewrite">
+ <section name="allowedServerVariables" overrideModeDefault="Deny" />
+ <section name="rules" overrideModeDefault="Allow" />
+ <section name="outboundRules" overrideModeDefault="Allow" />
+ <section name="globalRules" overrideModeDefault="Deny" allowDefinition="AppHostOnly" />
+ <section name="providers" overrideModeDefault="Allow" />
+ <section name="rewriteMaps" overrideModeDefault="Allow" />
+ </sectionGroup>
+ <section name="webSocket" overrideModeDefault="Deny" />
+ </sectionGroup>
+ </configSections>
+
+ <configProtectedData>
+ <providers>
+ <add name="IISWASOnlyRsaProvider" type="" description="Uses RsaCryptoServiceProvider to encrypt and decrypt" keyContainerName="iisWasKey" cspProviderName="" useMachineContainer="true" useOAEP="false" />
+ <add name="AesProvider" type="Microsoft.ApplicationHost.AesProtectedConfigurationProvider" description="Uses an AES session key to encrypt and decrypt" keyContainerName="iisConfigurationKey" cspProviderName="" useOAEP="false" useMachineContainer="true" sessionKey="AQIAAA5mAAAApAAA/HKxkz6alrlAPez0IUgujj/6k3WxCDriHp6jvpv3yEZmo7h6SMzGLxo4mTrIQVHSkB7tmElHKfUFTzE2BWF7nFWHY6Z6qmGBauFzwJMwESjril7Gjz69RBFH259HQ6aRDq9Xfx7U7H4HtdmnKNqGjgl/hwPQBGeIlWiDh+sYv3vKB0QU971tjX6H2B+9armlnC8UOuA6JYMDMI/VLLL16sng0fWAy5JYe0YVABVjiAWDW264RZW9Tr1Oax4qHZKg+SdjULxeOc2YmpX+d0yeITo1HkPF1hN1gHpIPIUDo05ilHUNfR3OkjVCIQK4cFKCq1s8NH+y+13MxUC4Fn1AlQ==" />
+ <add name="IISWASOnlyAesProvider" type="Microsoft.ApplicationHost.AesProtectedConfigurationProvider" description="Uses an AES session key to encrypt and decrypt" keyContainerName="iisWasKey" cspProviderName="" useOAEP="false" useMachineContainer="true" sessionKey="AQIAAA5mAAAApAAALmU8lTC+v2qtfQiiiquvvLpUQqKLEXs+jSKoWCM/uPhyB++k4dwug19mGidNK5FYiWK2KYE1yhjVJcbp12E98Q0R2nT7eBiCMY2JairxQ591rqABK7keGaIjwH7PwGzSpILl3RJ4YFvJ/7ZXEJxeDZIjW8ZxWVXx+/VyHs9U3WguLEkgMUX3jrxJi8LouxaIVPJAv/YQ1ZCWs8zImitxX/C/7o7yaIxznfsN5nGQzQfpUDPeby99aw2zPVTtZI2LaWIBON8guABvZ6JtJVDWmfdK6sodbnwdZkr6/Z2rfvamT1dC1SpQrGG7ulR/f9/GXvCaW10ZVKxekBF/CYlNMg==" />
+ </providers>
+ </configProtectedData>
+
+ <system.applicationHost>
+
+ <applicationPools>
+ <add name="Clr4IntegratedAppPool" managedRuntimeVersion="v4.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
+ <add name="Clr4ClassicAppPool" managedRuntimeVersion="v4.0" managedPipelineMode="Classic" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
+ <add name="Clr2IntegratedAppPool" managedRuntimeVersion="v2.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
+ <add name="Clr2ClassicAppPool" managedRuntimeVersion="v2.0" managedPipelineMode="Classic" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
+ <add name="UnmanagedClassicAppPool" managedRuntimeVersion="" managedPipelineMode="Classic" autoStart="true" />
+ <applicationPoolDefaults managedRuntimeVersion="v4.0">
+ <processModel loadUserProfile="true" setProfileEnvironment="false" />
+ </applicationPoolDefaults>
+ </applicationPools>
+
+ <!--
+
+ The <listenerAdapters> section defines the protocols with which the
+ Windows Process Activation Service (WAS) binds.
+
+ -->
+ <listenerAdapters>
+ <add name="http" />
+ </listenerAdapters>
+
+ <sites>
+ <site name="WebSite1" id="1" serverAutoStart="true">
+ <application path="/">
+ <virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" />
+ </application>
+ <bindings>
+ <binding protocol="http" bindingInformation=":8080:localhost" />
+ </bindings>
+ </site>
+ <siteDefaults>
+ <!-- To enable logging, please change the below attribute "enabled" to "true" -->
+ <logFile logFormat="W3C" directory="%AppData%\Microsoft\IISExpressLogs" enabled="false"/>
+ <traceFailedRequestsLogging directory="%AppData%\Microsoft" enabled="false" maxLogFileSizeKB="1024" />
+ </siteDefaults>
+ <applicationDefaults applicationPool="Clr4IntegratedAppPool" />
+ <virtualDirectoryDefaults allowSubDirConfig="true" />
+ </sites>
+
+ <webLimits />
+
+ </system.applicationHost>
+
+ <system.webServer>
+
+ <serverRuntime />
+
+ <asp scriptErrorSentToBrowser="true">
+ <cache diskTemplateCacheDirectory="%TEMP%\iisexpress\ASP Compiled Templates" />
+ <limits />
+ </asp>
+
+ <caching enabled="true" enableKernelCache="true">
+ </caching>
+
+ <cgi />
+
+ <defaultDocument enabled="true">
+ <files>
+ <add value="Default.htm" />
+ <add value="Default.asp" />
+ <add value="index.htm" />
+ <add value="index.html" />
+ <add value="iisstart.htm" />
+ <add value="default.aspx" />
+ </files>
+ </defaultDocument>
+
+ <directoryBrowse enabled="false" />
+
+ <fastCgi />
+
+ <!--
+
+ The <globalModules> section defines all native-code modules.
+ To enable a module, specify it in the <modules> section.
+
+ -->
+ <globalModules>
+ <add name="HttpLoggingModule" image="%IIS_BIN%\loghttp.dll" />
+ <add name="UriCacheModule" image="%IIS_BIN%\cachuri.dll" />
+ <add name="TokenCacheModule" image="%IIS_BIN%\cachtokn.dll" />
+ <add name="DynamicCompressionModule" image="%IIS_BIN%\compdyn.dll" />
+ <add name="StaticCompressionModule" image="%IIS_BIN%\compstat.dll" />
+ <add name="DefaultDocumentModule" image="%IIS_BIN%\defdoc.dll" />
+ <add name="DirectoryListingModule" image="%IIS_BIN%\dirlist.dll" />
+ <add name="ProtocolSupportModule" image="%IIS_BIN%\protsup.dll" />
+ <add name="HttpRedirectionModule" image="%IIS_BIN%\redirect.dll" />
+ <add name="ServerSideIncludeModule" image="%IIS_BIN%\iis_ssi.dll" />
+ <add name="StaticFileModule" image="%IIS_BIN%\static.dll" />
+ <add name="AnonymousAuthenticationModule" image="%IIS_BIN%\authanon.dll" />
+ <add name="CertificateMappingAuthenticationModule" image="%IIS_BIN%\authcert.dll" />
+ <add name="UrlAuthorizationModule" image="%IIS_BIN%\urlauthz.dll" />
+ <add name="BasicAuthenticationModule" image="%IIS_BIN%\authbas.dll" />
+ <add name="WindowsAuthenticationModule" image="%IIS_BIN%\authsspi.dll" />
+ <add name="IISCertificateMappingAuthenticationModule" image="%IIS_BIN%\authmap.dll" />
+ <add name="IpRestrictionModule" image="%IIS_BIN%\iprestr.dll" />
+ <add name="DynamicIpRestrictionModule" image="%IIS_BIN%\diprestr.dll" />
+ <add name="RequestFilteringModule" image="%IIS_BIN%\modrqflt.dll" />
+ <add name="CustomLoggingModule" image="%IIS_BIN%\logcust.dll" />
+ <add name="CustomErrorModule" image="%IIS_BIN%\custerr.dll" />
+ <add name="FailedRequestsTracingModule" image="%IIS_BIN%\iisfreb.dll" />
+ <add name="RequestMonitorModule" image="%IIS_BIN%\iisreqs.dll" />
+ <add name="IsapiModule" image="%IIS_BIN%\isapi.dll" />
+ <add name="IsapiFilterModule" image="%IIS_BIN%\filter.dll" />
+ <add name="CgiModule" image="%IIS_BIN%\cgi.dll" />
+ <add name="FastCgiModule" image="%IIS_BIN%\iisfcgi.dll" />
+<!-- <add name="WebDAVModule" image="%IIS_BIN%\webdav.dll" /> -->
+ <add name="RewriteModule" image="%IIS_BIN%\rewrite.dll" />
+ <add name="ConfigurationValidationModule" image="%IIS_BIN%\validcfg.dll" />
+ <add name="WebSocketModule" image="%IIS_BIN%\iiswsock.dll" />
+ <add name="WebMatrixSupportModule" image="%IIS_BIN%\webmatrixsup.dll" />
+ <add name="ManagedEngine" image="%windir%\Microsoft.NET\Framework\v2.0.50727\webengine.dll" preCondition="integratedMode,runtimeVersionv2.0,bitness32" />
+ <add name="ManagedEngine64" image="%windir%\Microsoft.NET\Framework64\v2.0.50727\webengine.dll" preCondition="integratedMode,runtimeVersionv2.0,bitness64" />
+ <add name="ManagedEngineV4.0_32bit" image="%windir%\Microsoft.NET\Framework\v4.0.30319\webengine4.dll" preCondition="integratedMode,runtimeVersionv4.0,bitness32" />
+ <add name="ManagedEngineV4.0_64bit" image="%windir%\Microsoft.NET\Framework64\v4.0.30319\webengine4.dll" preCondition="integratedMode,runtimeVersionv4.0,bitness64" />
+ <add name="ApplicationInitializationModule" image="%IIS_BIN%\warmup.dll" />
+ </globalModules>
+
+ <httpCompression directory="%TEMP%">
+ <scheme name="gzip" dll="%IIS_BIN%\gzip.dll" />
+ <dynamicTypes>
+ <add mimeType="text/*" enabled="true" />
+ <add mimeType="message/*" enabled="true" />
+ <add mimeType="application/x-javascript" enabled="true" />
+ <add mimeType="application/javascript" enabled="true" />
+ <add mimeType="*/*" enabled="false" />
+ </dynamicTypes>
+ <staticTypes>
+ <add mimeType="text/*" enabled="true" />
+ <add mimeType="message/*" enabled="true" />
+ <add mimeType="application/javascript" enabled="true" />
+ <add mimeType="application/atom+xml" enabled="true" />
+ <add mimeType="application/xaml+xml" enabled="true" />
+ <add mimeType="image/svg+xml" enabled="true" />
+ <add mimeType="*/*" enabled="false" />
+ </staticTypes>
+ </httpCompression>
+
+ <httpErrors lockAttributes="allowAbsolutePathsWhenDelegated,defaultPath">
+ <error statusCode="401" prefixLanguageFilePath="%IIS_BIN%\custerr" path="401.htm" />
+ <error statusCode="403" prefixLanguageFilePath="%IIS_BIN%\custerr" path="403.htm" />
+ <error statusCode="404" prefixLanguageFilePath="%IIS_BIN%\custerr" path="404.htm" />
+ <error statusCode="405" prefixLanguageFilePath="%IIS_BIN%\custerr" path="405.htm" />
+ <error statusCode="406" prefixLanguageFilePath="%IIS_BIN%\custerr" path="406.htm" />
+ <error statusCode="412" prefixLanguageFilePath="%IIS_BIN%\custerr" path="412.htm" />
+ <error statusCode="500" prefixLanguageFilePath="%IIS_BIN%\custerr" path="500.htm" />
+ <error statusCode="501" prefixLanguageFilePath="%IIS_BIN%\custerr" path="501.htm" />
+ <error statusCode="502" prefixLanguageFilePath="%IIS_BIN%\custerr" path="502.htm" />
+ </httpErrors>
+
+ <httpLogging dontLog="false" />
+
+ <httpProtocol>
+ <customHeaders>
+ <clear />
+ <add name="X-Powered-By" value="ASP.NET" />
+ </customHeaders>
+ <redirectHeaders>
+ <clear />
+ </redirectHeaders>
+ </httpProtocol>
+
+ <httpRedirect enabled="false" />
+
+ <httpTracing />
+
+ <isapiFilters>
+ <filter name="ASP.Net_2.0.50727-64" path="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_filter.dll" enableCache="true" preCondition="bitness64,runtimeVersionv2.0" />
+ <filter name="ASP.Net_2.0.50727.0" path="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_filter.dll" enableCache="true" preCondition="bitness32,runtimeVersionv2.0" />
+ <filter name="ASP.Net_2.0_for_v1.1" path="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_filter.dll" enableCache="true" preCondition="runtimeVersionv1.1" />
+ <filter name="ASP.Net_4.0_32bit" path="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_filter.dll" enableCache="true" preCondition="bitness32,runtimeVersionv4.0" />
+ <filter name="ASP.Net_4.0_64bit" path="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_filter.dll" enableCache="true" preCondition="bitness64,runtimeVersionv4.0" />
+ </isapiFilters>
+
+ <odbcLogging />
+
+ <security>
+
+ <access sslFlags="None" />
+
+ <applicationDependencies>
+ <application name="Active Server Pages" groupId="ASP" />
+ </applicationDependencies>
+
+ <authentication>
+
+ <anonymousAuthentication enabled="true" userName="" />
+
+ <basicAuthentication enabled="false" />
+
+ <clientCertificateMappingAuthentication enabled="false" />
+
+ <digestAuthentication enabled="false" />
+
+ <iisClientCertificateMappingAuthentication enabled="false">
+ </iisClientCertificateMappingAuthentication>
+
+ <windowsAuthentication enabled="false">
+ <providers>
+ <add value="Negotiate" />
+ <add value="NTLM" />
+ </providers>
+ </windowsAuthentication>
+
+ </authentication>
+
+ <authorization>
+ <add accessType="Allow" users="*" />
+ </authorization>
+
+ <ipSecurity allowUnlisted="true" />
+
+ <isapiCgiRestriction notListedIsapisAllowed="true" notListedCgisAllowed="true">
+ <add path="%windir%\Microsoft.NET\Framework64\v4.0.30319\webengine4.dll" allowed="true" groupId="ASP.NET_v4.0" description="ASP.NET_v4.0" />
+ <add path="%windir%\Microsoft.NET\Framework\v4.0.30319\webengine4.dll" allowed="true" groupId="ASP.NET_v4.0" description="ASP.NET_v4.0" />
+ <add path="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" allowed="true" groupId="ASP.NET v2.0.50727" description="ASP.NET v2.0.50727" />
+ <add path="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" allowed="true" groupId="ASP.NET v2.0.50727" description="ASP.NET v2.0.50727" />
+ </isapiCgiRestriction>
+
+ <requestFiltering>
+ <fileExtensions allowUnlisted="true" applyToWebDAV="true">
+ <add fileExtension=".asa" allowed="false" />
+ <add fileExtension=".asax" allowed="false" />
+ <add fileExtension=".ascx" allowed="false" />
+ <add fileExtension=".master" allowed="false" />
+ <add fileExtension=".skin" allowed="false" />
+ <add fileExtension=".browser" allowed="false" />
+ <add fileExtension=".sitemap" allowed="false" />
+ <add fileExtension=".config" allowed="false" />
+ <add fileExtension=".cs" allowed="false" />
+ <add fileExtension=".csproj" allowed="false" />
+ <add fileExtension=".vb" allowed="false" />
+ <add fileExtension=".vbproj" allowed="false" />
+ <add fileExtension=".webinfo" allowed="false" />
+ <add fileExtension=".licx" allowed="false" />
+ <add fileExtension=".resx" allowed="false" />
+ <add fileExtension=".resources" allowed="false" />
+ <add fileExtension=".mdb" allowed="false" />
+ <add fileExtension=".vjsproj" allowed="false" />
+ <add fileExtension=".java" allowed="false" />
+ <add fileExtension=".jsl" allowed="false" />
+ <add fileExtension=".ldb" allowed="false" />
+ <add fileExtension=".dsdgm" allowed="false" />
+ <add fileExtension=".ssdgm" allowed="false" />
+ <add fileExtension=".lsad" allowed="false" />
+ <add fileExtension=".ssmap" allowed="false" />
+ <add fileExtension=".cd" allowed="false" />
+ <add fileExtension=".dsprototype" allowed="false" />
+ <add fileExtension=".lsaprototype" allowed="false" />
+ <add fileExtension=".sdm" allowed="false" />
+ <add fileExtension=".sdmDocument" allowed="false" />
+ <add fileExtension=".mdf" allowed="false" />
+ <add fileExtension=".ldf" allowed="false" />
+ <add fileExtension=".ad" allowed="false" />
+ <add fileExtension=".dd" allowed="false" />
+ <add fileExtension=".ldd" allowed="false" />
+ <add fileExtension=".sd" allowed="false" />
+ <add fileExtension=".adprototype" allowed="false" />
+ <add fileExtension=".lddprototype" allowed="false" />
+ <add fileExtension=".exclude" allowed="false" />
+ <add fileExtension=".refresh" allowed="false" />
+ <add fileExtension=".compiled" allowed="false" />
+ <add fileExtension=".msgx" allowed="false" />
+ <add fileExtension=".vsdisco" allowed="false" />
+ <add fileExtension=".rules" allowed="false" />
+ </fileExtensions>
+ <verbs allowUnlisted="true" applyToWebDAV="true" />
+ <hiddenSegments applyToWebDAV="true">
+ <add segment="web.config" />
+ <add segment="bin" />
+ <add segment="App_code" />
+ <add segment="App_GlobalResources" />
+ <add segment="App_LocalResources" />
+ <add segment="App_WebReferences" />
+ <add segment="App_Data" />
+ <add segment="App_Browsers" />
+ </hiddenSegments>
+ </requestFiltering>
+
+ </security>
+
+ <serverSideInclude ssiExecDisable="false" />
+
+ <staticContent lockAttributes="isDocFooterFileName">
+ <mimeMap fileExtension=".323" mimeType="text/h323" />
+ <mimeMap fileExtension=".3g2" mimeType="video/3gpp2" />
+ <mimeMap fileExtension=".3gp2" mimeType="video/3gpp2" />
+ <mimeMap fileExtension=".3gp" mimeType="video/3gpp" />
+ <mimeMap fileExtension=".3gpp" mimeType="video/3gpp" />
+ <mimeMap fileExtension=".aac" mimeType="audio/aac" />
+ <mimeMap fileExtension=".aaf" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".aca" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".accdb" mimeType="application/msaccess" />
+ <mimeMap fileExtension=".accde" mimeType="application/msaccess" />
+ <mimeMap fileExtension=".accdt" mimeType="application/msaccess" />
+ <mimeMap fileExtension=".acx" mimeType="application/internet-property-stream" />
+ <mimeMap fileExtension=".adt" mimeType="audio/vnd.dlna.adts" />
+ <mimeMap fileExtension=".adts" mimeType="audio/vnd.dlna.adts" />
+ <mimeMap fileExtension=".afm" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".ai" mimeType="application/postscript" />
+ <mimeMap fileExtension=".aif" mimeType="audio/x-aiff" />
+ <mimeMap fileExtension=".aifc" mimeType="audio/aiff" />
+ <mimeMap fileExtension=".aiff" mimeType="audio/aiff" />
+ <mimeMap fileExtension=".appcache" mimeType="text/cache-manifest" />
+ <mimeMap fileExtension=".application" mimeType="application/x-ms-application" />
+ <mimeMap fileExtension=".art" mimeType="image/x-jg" />
+ <mimeMap fileExtension=".asd" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".asf" mimeType="video/x-ms-asf" />
+ <mimeMap fileExtension=".asi" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".asm" mimeType="text/plain" />
+ <mimeMap fileExtension=".asr" mimeType="video/x-ms-asf" />
+ <mimeMap fileExtension=".asx" mimeType="video/x-ms-asf" />
+ <mimeMap fileExtension=".atom" mimeType="application/atom+xml" />
+ <mimeMap fileExtension=".au" mimeType="audio/basic" />
+ <mimeMap fileExtension=".avi" mimeType="video/avi" />
+ <mimeMap fileExtension=".axs" mimeType="application/olescript" />
+ <mimeMap fileExtension=".bas" mimeType="text/plain" />
+ <mimeMap fileExtension=".bcpio" mimeType="application/x-bcpio" />
+ <mimeMap fileExtension=".bin" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".bmp" mimeType="image/bmp" />
+ <mimeMap fileExtension=".c" mimeType="text/plain" />
+ <mimeMap fileExtension=".cab" mimeType="application/vnd.ms-cab-compressed" />
+ <mimeMap fileExtension=".calx" mimeType="application/vnd.ms-office.calx" />
+ <mimeMap fileExtension=".cat" mimeType="application/vnd.ms-pki.seccat" />
+ <mimeMap fileExtension=".cdf" mimeType="application/x-cdf" />
+ <mimeMap fileExtension=".chm" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".class" mimeType="application/x-java-applet" />
+ <mimeMap fileExtension=".clp" mimeType="application/x-msclip" />
+ <mimeMap fileExtension=".cmx" mimeType="image/x-cmx" />
+ <mimeMap fileExtension=".cnf" mimeType="text/plain" />
+ <mimeMap fileExtension=".cod" mimeType="image/cis-cod" />
+ <mimeMap fileExtension=".cpio" mimeType="application/x-cpio" />
+ <mimeMap fileExtension=".cpp" mimeType="text/plain" />
+ <mimeMap fileExtension=".crd" mimeType="application/x-mscardfile" />
+ <mimeMap fileExtension=".crl" mimeType="application/pkix-crl" />
+ <mimeMap fileExtension=".crt" mimeType="application/x-x509-ca-cert" />
+ <mimeMap fileExtension=".csh" mimeType="application/x-csh" />
+ <mimeMap fileExtension=".css" mimeType="text/css" />
+ <mimeMap fileExtension=".csv" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".cur" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".dcr" mimeType="application/x-director" />
+ <mimeMap fileExtension=".deploy" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".der" mimeType="application/x-x509-ca-cert" />
+ <mimeMap fileExtension=".dib" mimeType="image/bmp" />
+ <mimeMap fileExtension=".dir" mimeType="application/x-director" />
+ <mimeMap fileExtension=".disco" mimeType="text/xml" />
+ <mimeMap fileExtension=".dll" mimeType="application/x-msdownload" />
+ <mimeMap fileExtension=".dll.config" mimeType="text/xml" />
+ <mimeMap fileExtension=".dlm" mimeType="text/dlm" />
+ <mimeMap fileExtension=".doc" mimeType="application/msword" />
+ <mimeMap fileExtension=".docm" mimeType="application/vnd.ms-word.document.macroEnabled.12" />
+ <mimeMap fileExtension=".docx" mimeType="application/vnd.openxmlformats-officedocument.wordprocessingml.document" />
+ <mimeMap fileExtension=".dot" mimeType="application/msword" />
+ <mimeMap fileExtension=".dotm" mimeType="application/vnd.ms-word.template.macroEnabled.12" />
+ <mimeMap fileExtension=".dotx" mimeType="application/vnd.openxmlformats-officedocument.wordprocessingml.template" />
+ <mimeMap fileExtension=".dsp" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".dtd" mimeType="text/xml" />
+ <mimeMap fileExtension=".dvi" mimeType="application/x-dvi" />
+ <mimeMap fileExtension=".dvr-ms" mimeType="video/x-ms-dvr" />
+ <mimeMap fileExtension=".dwf" mimeType="drawing/x-dwf" />
+ <mimeMap fileExtension=".dwp" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".dxr" mimeType="application/x-director" />
+ <mimeMap fileExtension=".eml" mimeType="message/rfc822" />
+ <mimeMap fileExtension=".emz" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".eot" mimeType="application/vnd.ms-fontobject" />
+ <mimeMap fileExtension=".eps" mimeType="application/postscript" />
+ <mimeMap fileExtension=".esd" mimeType="application/vnd.ms-cab-compressed" />
+ <mimeMap fileExtension=".etx" mimeType="text/x-setext" />
+ <mimeMap fileExtension=".evy" mimeType="application/envoy" />
+ <mimeMap fileExtension=".exe" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".exe.config" mimeType="text/xml" />
+ <mimeMap fileExtension=".fdf" mimeType="application/vnd.fdf" />
+ <mimeMap fileExtension=".fif" mimeType="application/fractals" />
+ <mimeMap fileExtension=".fla" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".flr" mimeType="x-world/x-vrml" />
+ <mimeMap fileExtension=".flv" mimeType="video/x-flv" />
+ <mimeMap fileExtension=".gif" mimeType="image/gif" />
+ <mimeMap fileExtension=".glb" mimeType="model/gltf-binary" />
+ <mimeMap fileExtension=".gtar" mimeType="application/x-gtar" />
+ <mimeMap fileExtension=".gz" mimeType="application/x-gzip" />
+ <mimeMap fileExtension=".h" mimeType="text/plain" />
+ <mimeMap fileExtension=".hdf" mimeType="application/x-hdf" />
+ <mimeMap fileExtension=".hdml" mimeType="text/x-hdml" />
+ <mimeMap fileExtension=".hhc" mimeType="application/x-oleobject" />
+ <mimeMap fileExtension=".hhk" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".hhp" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".hlp" mimeType="application/winhlp" />
+ <mimeMap fileExtension=".hqx" mimeType="application/mac-binhex40" />
+ <mimeMap fileExtension=".hta" mimeType="application/hta" />
+ <mimeMap fileExtension=".htc" mimeType="text/x-component" />
+ <mimeMap fileExtension=".htm" mimeType="text/html" />
+ <mimeMap fileExtension=".html" mimeType="text/html" />
+ <mimeMap fileExtension=".htt" mimeType="text/webviewhtml" />
+ <mimeMap fileExtension=".hxt" mimeType="text/html" />
+ <mimeMap fileExtension=".ico" mimeType="image/x-icon" />
+ <mimeMap fileExtension=".ics" mimeType="text/calendar" />
+ <mimeMap fileExtension=".ief" mimeType="image/ief" />
+ <mimeMap fileExtension=".iii" mimeType="application/x-iphone" />
+ <mimeMap fileExtension=".inf" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".ins" mimeType="application/x-internet-signup" />
+ <mimeMap fileExtension=".isp" mimeType="application/x-internet-signup" />
+ <mimeMap fileExtension=".IVF" mimeType="video/x-ivf" />
+ <mimeMap fileExtension=".jar" mimeType="application/java-archive" />
+ <mimeMap fileExtension=".java" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".jck" mimeType="application/liquidmotion" />
+ <mimeMap fileExtension=".jcz" mimeType="application/liquidmotion" />
+ <mimeMap fileExtension=".jfif" mimeType="image/pjpeg" />
+ <mimeMap fileExtension=".jpb" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".jpe" mimeType="image/jpeg" />
+ <mimeMap fileExtension=".jpeg" mimeType="image/jpeg" />
+ <mimeMap fileExtension=".jpg" mimeType="image/jpeg" />
+ <mimeMap fileExtension=".js" mimeType="application/javascript" />
+ <mimeMap fileExtension=".json" mimeType="application/json" />
+ <mimeMap fileExtension=".jsonld" mimeType="application/ld+json" />
+ <mimeMap fileExtension=".jsx" mimeType="text/jscript" />
+ <mimeMap fileExtension=".latex" mimeType="application/x-latex" />
+ <mimeMap fileExtension=".less" mimeType="text/css" />
+ <mimeMap fileExtension=".lit" mimeType="application/x-ms-reader" />
+ <mimeMap fileExtension=".lpk" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".lsf" mimeType="video/x-la-asf" />
+ <mimeMap fileExtension=".lsx" mimeType="video/x-la-asf" />
+ <mimeMap fileExtension=".lzh" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".m13" mimeType="application/x-msmediaview" />
+ <mimeMap fileExtension=".m14" mimeType="application/x-msmediaview" />
+ <mimeMap fileExtension=".m1v" mimeType="video/mpeg" />
+ <mimeMap fileExtension=".m2ts" mimeType="video/vnd.dlna.mpeg-tts" />
+ <mimeMap fileExtension=".m3u" mimeType="audio/x-mpegurl" />
+ <mimeMap fileExtension=".m4a" mimeType="audio/mp4" />
+ <mimeMap fileExtension=".m4v" mimeType="video/mp4" />
+ <mimeMap fileExtension=".man" mimeType="application/x-troff-man" />
+ <mimeMap fileExtension=".manifest" mimeType="application/x-ms-manifest" />
+ <mimeMap fileExtension=".map" mimeType="text/plain" />
+ <mimeMap fileExtension=".mdb" mimeType="application/x-msaccess" />
+ <mimeMap fileExtension=".mdp" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".me" mimeType="application/x-troff-me" />
+ <mimeMap fileExtension=".mht" mimeType="message/rfc822" />
+ <mimeMap fileExtension=".mhtml" mimeType="message/rfc822" />
+ <mimeMap fileExtension=".mid" mimeType="audio/mid" />
+ <mimeMap fileExtension=".midi" mimeType="audio/mid" />
+ <mimeMap fileExtension=".mix" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".mmf" mimeType="application/x-smaf" />
+ <mimeMap fileExtension=".mno" mimeType="text/xml" />
+ <mimeMap fileExtension=".mny" mimeType="application/x-msmoney" />
+ <mimeMap fileExtension=".mov" mimeType="video/quicktime" />
+ <mimeMap fileExtension=".movie" mimeType="video/x-sgi-movie" />
+ <mimeMap fileExtension=".mp2" mimeType="video/mpeg" />
+ <mimeMap fileExtension=".mp3" mimeType="audio/mpeg" />
+ <mimeMap fileExtension=".mp4" mimeType="video/mp4" />
+ <mimeMap fileExtension=".mp4v" mimeType="video/mp4" />
+ <mimeMap fileExtension=".mpa" mimeType="video/mpeg" />
+ <mimeMap fileExtension=".mpe" mimeType="video/mpeg" />
+ <mimeMap fileExtension=".mpeg" mimeType="video/mpeg" />
+ <mimeMap fileExtension=".mpg" mimeType="video/mpeg" />
+ <mimeMap fileExtension=".mpp" mimeType="application/vnd.ms-project" />
+ <mimeMap fileExtension=".mpv2" mimeType="video/mpeg" />
+ <mimeMap fileExtension=".ms" mimeType="application/x-troff-ms" />
+ <mimeMap fileExtension=".msi" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".mso" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".mvb" mimeType="application/x-msmediaview" />
+ <mimeMap fileExtension=".mvc" mimeType="application/x-miva-compiled" />
+ <mimeMap fileExtension=".nc" mimeType="application/x-netcdf" />
+ <mimeMap fileExtension=".nsc" mimeType="video/x-ms-asf" />
+ <mimeMap fileExtension=".nws" mimeType="message/rfc822" />
+ <mimeMap fileExtension=".ocx" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".oda" mimeType="application/oda" />
+ <mimeMap fileExtension=".odc" mimeType="text/x-ms-odc" />
+ <mimeMap fileExtension=".ods" mimeType="application/oleobject" />
+ <mimeMap fileExtension=".oga" mimeType="audio/ogg" />
+ <mimeMap fileExtension=".ogg" mimeType="video/ogg" />
+ <mimeMap fileExtension=".ogv" mimeType="video/ogg" />
+ <mimeMap fileExtension=".one" mimeType="application/onenote" />
+ <mimeMap fileExtension=".onea" mimeType="application/onenote" />
+ <mimeMap fileExtension=".onetoc" mimeType="application/onenote" />
+ <mimeMap fileExtension=".onetoc2" mimeType="application/onenote" />
+ <mimeMap fileExtension=".onetmp" mimeType="application/onenote" />
+ <mimeMap fileExtension=".onepkg" mimeType="application/onenote" />
+ <mimeMap fileExtension=".osdx" mimeType="application/opensearchdescription+xml" />
+ <mimeMap fileExtension=".otf" mimeType="font/otf" />
+ <mimeMap fileExtension=".p10" mimeType="application/pkcs10" />
+ <mimeMap fileExtension=".p12" mimeType="application/x-pkcs12" />
+ <mimeMap fileExtension=".p7b" mimeType="application/x-pkcs7-certificates" />
+ <mimeMap fileExtension=".p7c" mimeType="application/pkcs7-mime" />
+ <mimeMap fileExtension=".p7m" mimeType="application/pkcs7-mime" />
+ <mimeMap fileExtension=".p7r" mimeType="application/x-pkcs7-certreqresp" />
+ <mimeMap fileExtension=".p7s" mimeType="application/pkcs7-signature" />
+ <mimeMap fileExtension=".pbm" mimeType="image/x-portable-bitmap" />
+ <mimeMap fileExtension=".pcx" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".pcz" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".pdf" mimeType="application/pdf" />
+ <mimeMap fileExtension=".pfb" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".pfm" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".pfx" mimeType="application/x-pkcs12" />
+ <mimeMap fileExtension=".pgm" mimeType="image/x-portable-graymap" />
+ <mimeMap fileExtension=".pko" mimeType="application/vnd.ms-pki.pko" />
+ <mimeMap fileExtension=".pma" mimeType="application/x-perfmon" />
+ <mimeMap fileExtension=".pmc" mimeType="application/x-perfmon" />
+ <mimeMap fileExtension=".pml" mimeType="application/x-perfmon" />
+ <mimeMap fileExtension=".pmr" mimeType="application/x-perfmon" />
+ <mimeMap fileExtension=".pmw" mimeType="application/x-perfmon" />
+ <mimeMap fileExtension=".png" mimeType="image/png" />
+ <mimeMap fileExtension=".pnm" mimeType="image/x-portable-anymap" />
+ <mimeMap fileExtension=".pnz" mimeType="image/png" />
+ <mimeMap fileExtension=".pot" mimeType="application/vnd.ms-powerpoint" />
+ <mimeMap fileExtension=".potm" mimeType="application/vnd.ms-powerpoint.template.macroEnabled.12" />
+ <mimeMap fileExtension=".potx" mimeType="application/vnd.openxmlformats-officedocument.presentationml.template" />
+ <mimeMap fileExtension=".ppam" mimeType="application/vnd.ms-powerpoint.addin.macroEnabled.12" />
+ <mimeMap fileExtension=".ppm" mimeType="image/x-portable-pixmap" />
+ <mimeMap fileExtension=".pps" mimeType="application/vnd.ms-powerpoint" />
+ <mimeMap fileExtension=".ppsm" mimeType="application/vnd.ms-powerpoint.slideshow.macroEnabled.12" />
+ <mimeMap fileExtension=".ppsx" mimeType="application/vnd.openxmlformats-officedocument.presentationml.slideshow" />
+ <mimeMap fileExtension=".ppt" mimeType="application/vnd.ms-powerpoint" />
+ <mimeMap fileExtension=".pptm" mimeType="application/vnd.ms-powerpoint.presentation.macroEnabled.12" />
+ <mimeMap fileExtension=".pptx" mimeType="application/vnd.openxmlformats-officedocument.presentationml.presentation" />
+ <mimeMap fileExtension=".prf" mimeType="application/pics-rules" />
+ <mimeMap fileExtension=".prm" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".prx" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".ps" mimeType="application/postscript" />
+ <mimeMap fileExtension=".psd" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".psm" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".psp" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".pub" mimeType="application/x-mspublisher" />
+ <mimeMap fileExtension=".qt" mimeType="video/quicktime" />
+ <mimeMap fileExtension=".qtl" mimeType="application/x-quicktimeplayer" />
+ <mimeMap fileExtension=".qxd" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".ra" mimeType="audio/x-pn-realaudio" />
+ <mimeMap fileExtension=".ram" mimeType="audio/x-pn-realaudio" />
+ <mimeMap fileExtension=".rar" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".ras" mimeType="image/x-cmu-raster" />
+ <mimeMap fileExtension=".rf" mimeType="image/vnd.rn-realflash" />
+ <mimeMap fileExtension=".rgb" mimeType="image/x-rgb" />
+ <mimeMap fileExtension=".rm" mimeType="application/vnd.rn-realmedia" />
+ <mimeMap fileExtension=".rmi" mimeType="audio/mid" />
+ <mimeMap fileExtension=".roff" mimeType="application/x-troff" />
+ <mimeMap fileExtension=".rpm" mimeType="audio/x-pn-realaudio-plugin" />
+ <mimeMap fileExtension=".rtf" mimeType="application/rtf" />
+ <mimeMap fileExtension=".rtx" mimeType="text/richtext" />
+ <mimeMap fileExtension=".scd" mimeType="application/x-msschedule" />
+ <mimeMap fileExtension=".sct" mimeType="text/scriptlet" />
+ <mimeMap fileExtension=".sea" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".setpay" mimeType="application/set-payment-initiation" />
+ <mimeMap fileExtension=".setreg" mimeType="application/set-registration-initiation" />
+ <mimeMap fileExtension=".sgml" mimeType="text/sgml" />
+ <mimeMap fileExtension=".sh" mimeType="application/x-sh" />
+ <mimeMap fileExtension=".shar" mimeType="application/x-shar" />
+ <mimeMap fileExtension=".sit" mimeType="application/x-stuffit" />
+ <mimeMap fileExtension=".sldm" mimeType="application/vnd.ms-powerpoint.slide.macroEnabled.12" />
+ <mimeMap fileExtension=".sldx" mimeType="application/vnd.openxmlformats-officedocument.presentationml.slide" />
+ <mimeMap fileExtension=".smd" mimeType="audio/x-smd" />
+ <mimeMap fileExtension=".smi" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".smx" mimeType="audio/x-smd" />
+ <mimeMap fileExtension=".smz" mimeType="audio/x-smd" />
+ <mimeMap fileExtension=".snd" mimeType="audio/basic" />
+ <mimeMap fileExtension=".snp" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".spc" mimeType="application/x-pkcs7-certificates" />
+ <mimeMap fileExtension=".spl" mimeType="application/futuresplash" />
+ <mimeMap fileExtension=".spx" mimeType="audio/ogg" />
+ <mimeMap fileExtension=".src" mimeType="application/x-wais-source" />
+ <mimeMap fileExtension=".ssm" mimeType="application/streamingmedia" />
+ <mimeMap fileExtension=".sst" mimeType="application/vnd.ms-pki.certstore" />
+ <mimeMap fileExtension=".stl" mimeType="application/vnd.ms-pki.stl" />
+ <mimeMap fileExtension=".sv4cpio" mimeType="application/x-sv4cpio" />
+ <mimeMap fileExtension=".sv4crc" mimeType="application/x-sv4crc" />
+ <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
+ <mimeMap fileExtension=".svgz" mimeType="image/svg+xml" />
+ <mimeMap fileExtension=".swf" mimeType="application/x-shockwave-flash" />
+ <mimeMap fileExtension=".t" mimeType="application/x-troff" />
+ <mimeMap fileExtension=".tar" mimeType="application/x-tar" />
+ <mimeMap fileExtension=".tcl" mimeType="application/x-tcl" />
+ <mimeMap fileExtension=".tex" mimeType="application/x-tex" />
+ <mimeMap fileExtension=".texi" mimeType="application/x-texinfo" />
+ <mimeMap fileExtension=".texinfo" mimeType="application/x-texinfo" />
+ <mimeMap fileExtension=".tgz" mimeType="application/x-compressed" />
+ <mimeMap fileExtension=".thmx" mimeType="application/vnd.ms-officetheme" />
+ <mimeMap fileExtension=".thn" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".tif" mimeType="image/tiff" />
+ <mimeMap fileExtension=".tiff" mimeType="image/tiff" />
+ <mimeMap fileExtension=".toc" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".tr" mimeType="application/x-troff" />
+ <mimeMap fileExtension=".trm" mimeType="application/x-msterminal" />
+ <mimeMap fileExtension=".ts" mimeType="video/vnd.dlna.mpeg-tts" />
+ <mimeMap fileExtension=".tsv" mimeType="text/tab-separated-values" />
+ <mimeMap fileExtension=".ttf" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".tts" mimeType="video/vnd.dlna.mpeg-tts" />
+ <mimeMap fileExtension=".txt" mimeType="text/plain" />
+ <mimeMap fileExtension=".u32" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".uls" mimeType="text/iuls" />
+ <mimeMap fileExtension=".ustar" mimeType="application/x-ustar" />
+ <mimeMap fileExtension=".vbs" mimeType="text/vbscript" />
+ <mimeMap fileExtension=".vcf" mimeType="text/x-vcard" />
+ <mimeMap fileExtension=".vcs" mimeType="text/plain" />
+ <mimeMap fileExtension=".vdx" mimeType="application/vnd.ms-visio.viewer" />
+ <mimeMap fileExtension=".vml" mimeType="text/xml" />
+ <mimeMap fileExtension=".vsd" mimeType="application/vnd.visio" />
+ <mimeMap fileExtension=".vss" mimeType="application/vnd.visio" />
+ <mimeMap fileExtension=".vst" mimeType="application/vnd.visio" />
+ <mimeMap fileExtension=".vsto" mimeType="application/x-ms-vsto" />
+ <mimeMap fileExtension=".vsw" mimeType="application/vnd.visio" />
+ <mimeMap fileExtension=".vsx" mimeType="application/vnd.visio" />
+ <mimeMap fileExtension=".vtx" mimeType="application/vnd.visio" />
+ <mimeMap fileExtension=".wasm" mimeType="application/wasm" />
+ <mimeMap fileExtension=".wav" mimeType="audio/wav" />
+ <mimeMap fileExtension=".wax" mimeType="audio/x-ms-wax" />
+ <mimeMap fileExtension=".wbmp" mimeType="image/vnd.wap.wbmp" />
+ <mimeMap fileExtension=".wcm" mimeType="application/vnd.ms-works" />
+ <mimeMap fileExtension=".wdb" mimeType="application/vnd.ms-works" />
+ <mimeMap fileExtension=".webm" mimeType="video/webm" />
+ <mimeMap fileExtension=".wks" mimeType="application/vnd.ms-works" />
+ <mimeMap fileExtension=".wm" mimeType="video/x-ms-wm" />
+ <mimeMap fileExtension=".wma" mimeType="audio/x-ms-wma" />
+ <mimeMap fileExtension=".wmd" mimeType="application/x-ms-wmd" />
+ <mimeMap fileExtension=".wmf" mimeType="application/x-msmetafile" />
+ <mimeMap fileExtension=".wml" mimeType="text/vnd.wap.wml" />
+ <mimeMap fileExtension=".wmlc" mimeType="application/vnd.wap.wmlc" />
+ <mimeMap fileExtension=".wmls" mimeType="text/vnd.wap.wmlscript" />
+ <mimeMap fileExtension=".wmlsc" mimeType="application/vnd.wap.wmlscriptc" />
+ <mimeMap fileExtension=".wmp" mimeType="video/x-ms-wmp" />
+ <mimeMap fileExtension=".wmv" mimeType="video/x-ms-wmv" />
+ <mimeMap fileExtension=".wmx" mimeType="video/x-ms-wmx" />
+ <mimeMap fileExtension=".wmz" mimeType="application/x-ms-wmz" />
+ <mimeMap fileExtension=".woff" mimeType="font/x-woff" />
+ <mimeMap fileExtension=".woff2" mimeType="application/font-woff2" />
+ <mimeMap fileExtension=".wps" mimeType="application/vnd.ms-works" />
+ <mimeMap fileExtension=".wri" mimeType="application/x-mswrite" />
+ <mimeMap fileExtension=".wrl" mimeType="x-world/x-vrml" />
+ <mimeMap fileExtension=".wrz" mimeType="x-world/x-vrml" />
+ <mimeMap fileExtension=".wsdl" mimeType="text/xml" />
+ <mimeMap fileExtension=".wtv" mimeType="video/x-ms-wtv" />
+ <mimeMap fileExtension=".wvx" mimeType="video/x-ms-wvx" />
+ <mimeMap fileExtension=".x" mimeType="application/directx" />
+ <mimeMap fileExtension=".xaf" mimeType="x-world/x-vrml" />
+ <mimeMap fileExtension=".xaml" mimeType="application/xaml+xml" />
+ <mimeMap fileExtension=".xap" mimeType="application/x-silverlight-app" />
+ <mimeMap fileExtension=".xbap" mimeType="application/x-ms-xbap" />
+ <mimeMap fileExtension=".xbm" mimeType="image/x-xbitmap" />
+ <mimeMap fileExtension=".xdr" mimeType="text/plain" />
+ <mimeMap fileExtension=".xht" mimeType="application/xhtml+xml" />
+ <mimeMap fileExtension=".xhtml" mimeType="application/xhtml+xml" />
+ <mimeMap fileExtension=".xla" mimeType="application/vnd.ms-excel" />
+ <mimeMap fileExtension=".xlam" mimeType="application/vnd.ms-excel.addin.macroEnabled.12" />
+ <mimeMap fileExtension=".xlc" mimeType="application/vnd.ms-excel" />
+ <mimeMap fileExtension=".xlm" mimeType="application/vnd.ms-excel" />
+ <mimeMap fileExtension=".xls" mimeType="application/vnd.ms-excel" />
+ <mimeMap fileExtension=".xlsb" mimeType="application/vnd.ms-excel.sheet.binary.macroEnabled.12" />
+ <mimeMap fileExtension=".xlsm" mimeType="application/vnd.ms-excel.sheet.macroEnabled.12" />
+ <mimeMap fileExtension=".xlsx" mimeType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
+ <mimeMap fileExtension=".xlt" mimeType="application/vnd.ms-excel" />
+ <mimeMap fileExtension=".xltm" mimeType="application/vnd.ms-excel.template.macroEnabled.12" />
+ <mimeMap fileExtension=".xltx" mimeType="application/vnd.openxmlformats-officedocument.spreadsheetml.template" />
+ <mimeMap fileExtension=".xlw" mimeType="application/vnd.ms-excel" />
+ <mimeMap fileExtension=".xml" mimeType="text/xml" />
+ <mimeMap fileExtension=".xof" mimeType="x-world/x-vrml" />
+ <mimeMap fileExtension=".xpm" mimeType="image/x-xpixmap" />
+ <mimeMap fileExtension=".xps" mimeType="application/vnd.ms-xpsdocument" />
+ <mimeMap fileExtension=".xsd" mimeType="text/xml" />
+ <mimeMap fileExtension=".xsf" mimeType="text/xml" />
+ <mimeMap fileExtension=".xsl" mimeType="text/xml" />
+ <mimeMap fileExtension=".xslt" mimeType="text/xml" />
+ <mimeMap fileExtension=".xsn" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".xtp" mimeType="application/octet-stream" />
+ <mimeMap fileExtension=".xwd" mimeType="image/x-xwindowdump" />
+ <mimeMap fileExtension=".z" mimeType="application/x-compress" />
+ <mimeMap fileExtension=".zip" mimeType="application/x-zip-compressed" />
+ </staticContent>
+
+ <tracing>
+
+ <traceFailedRequests>
+ <add path="*">
+ <traceAreas>
+ <add provider="ASP" verbosity="Verbose" />
+ <add provider="ASPNET" areas="Infrastructure,Module,Page,AppServices" verbosity="Verbose" />
+ <add provider="ISAPI Extension" verbosity="Verbose" />
+ <add provider="WWW Server" areas="Authentication,Security,Filter,StaticFile,CGI,Compression,Cache,RequestNotifications,Module,Rewrite,WebSocket" verbosity="Verbose" />
+ </traceAreas>
+ <failureDefinitions statusCodes="200-999" />
+ </add>
+ </traceFailedRequests>
+
+ <traceProviderDefinitions>
+ <add name="WWW Server" guid="{3a2a4e84-4c21-4981-ae10-3fda0d9b0f83}">
+ <areas>
+ <clear />
+ <add name="Authentication" value="2" />
+ <add name="Security" value="4" />
+ <add name="Filter" value="8" />
+ <add name="StaticFile" value="16" />
+ <add name="CGI" value="32" />
+ <add name="Compression" value="64" />
+ <add name="Cache" value="128" />
+ <add name="RequestNotifications" value="256" />
+ <add name="Module" value="512" />
+ <add name="Rewrite" value="1024" />
+ <add name="FastCGI" value="4096" />
+ <add name="WebSocket" value="16384" />
+ </areas>
+ </add>
+ <add name="ASP" guid="{06b94d9a-b15e-456e-a4ef-37c984a2cb4b}">
+ <areas>
+ <clear />
+ </areas>
+ </add>
+ <add name="ISAPI Extension" guid="{a1c2040e-8840-4c31-ba11-9871031a19ea}">
+ <areas>
+ <clear />
+ </areas>
+ </add>
+ <add name="ASPNET" guid="{AFF081FE-0247-4275-9C4E-021F3DC1DA35}">
+ <areas>
+ <add name="Infrastructure" value="1" />
+ <add name="Module" value="2" />
+ <add name="Page" value="4" />
+ <add name="AppServices" value="8" />
+ </areas>
+ </add>
+ </traceProviderDefinitions>
+
+ </tracing>
+
+ <urlCompression />
+
+ <validation />
+ <webdav>
+ <globalSettings>
+ <propertyStores>
+ <add name="webdav_simple_prop" image="%IIS_BIN%\webdav_simple_prop.dll" image32="%IIS_BIN%\webdav_simple_prop.dll" />
+ </propertyStores>
+ <lockStores>
+ <add name="webdav_simple_lock" image="%IIS_BIN%\webdav_simple_lock.dll" image32="%IIS_BIN%\webdav_simple_lock.dll" />
+ </lockStores>
+
+ </globalSettings>
+ <authoring>
+ <locks enabled="true" lockStore="webdav_simple_lock" />
+ </authoring>
+ <authoringRules />
+ </webdav>
+ <webSocket />
+ <applicationInitialization />
+
+ </system.webServer>
+ <location path="" overrideMode="Allow">
+ <system.webServer>
+ <modules>
+ <add name="IsapiFilterModule" lockItem="true" />
+ <add name="BasicAuthenticationModule" lockItem="true" />
+ <add name="IsapiModule" lockItem="true" />
+ <add name="HttpLoggingModule" lockItem="true" />
+ <add name="DynamicCompressionModule" lockItem="true" />
+ <add name="StaticCompressionModule" lockItem="true" />
+ <add name="DefaultDocumentModule" lockItem="true" />
+ <add name="DirectoryListingModule" lockItem="true" />
+ <add name="ProtocolSupportModule" lockItem="true" />
+ <add name="HttpRedirectionModule" lockItem="true" />
+ <add name="ServerSideIncludeModule" lockItem="true" />
+ <add name="StaticFileModule" lockItem="true" />
+ <add name="AnonymousAuthenticationModule" lockItem="true" />
+ <add name="CertificateMappingAuthenticationModule" lockItem="true" />
+ <add name="UrlAuthorizationModule" lockItem="true" />
+ <add name="WindowsAuthenticationModule" lockItem="true" />
+ <add name="IISCertificateMappingAuthenticationModule" lockItem="true" />
+ <add name="WebMatrixSupportModule" lockItem="true" />
+ <add name="IpRestrictionModule" lockItem="true" />
+ <add name="DynamicIpRestrictionModule" lockItem="true" />
+ <add name="RequestFilteringModule" lockItem="true" />
+ <add name="CustomLoggingModule" lockItem="true" />
+ <add name="CustomErrorModule" lockItem="true" />
+ <add name="FailedRequestsTracingModule" lockItem="true" />
+ <add name="CgiModule" lockItem="true" />
+ <add name="FastCgiModule" lockItem="true" />
+<!-- <add name="WebDAVModule" /> -->
+ <add name="RewriteModule" />
+ <add name="OutputCache" type="System.Web.Caching.OutputCacheModule" preCondition="managedHandler" />
+ <add name="Session" type="System.Web.SessionState.SessionStateModule" preCondition="managedHandler" />
+ <add name="WindowsAuthentication" type="System.Web.Security.WindowsAuthenticationModule" preCondition="managedHandler" />
+ <add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" preCondition="managedHandler" />
+ <add name="DefaultAuthentication" type="System.Web.Security.DefaultAuthenticationModule" preCondition="managedHandler" />
+ <add name="RoleManager" type="System.Web.Security.RoleManagerModule" preCondition="managedHandler" />
+ <add name="UrlAuthorization" type="System.Web.Security.UrlAuthorizationModule" preCondition="managedHandler" />
+ <add name="FileAuthorization" type="System.Web.Security.FileAuthorizationModule" preCondition="managedHandler" />
+ <add name="AnonymousIdentification" type="System.Web.Security.AnonymousIdentificationModule" preCondition="managedHandler" />
+ <add name="Profile" type="System.Web.Profile.ProfileModule" preCondition="managedHandler" />
+ <add name="UrlMappingsModule" type="System.Web.UrlMappingsModule" preCondition="managedHandler" />
+ <add name="ApplicationInitializationModule" lockItem="true" />
+ <add name="WebSocketModule" lockItem="true" />
+ <add name="ServiceModel-4.0" type="System.ServiceModel.Activation.ServiceHttpModule,System.ServiceModel.Activation,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35" preCondition="managedHandler,runtimeVersionv4.0" />
+ <add name="ConfigurationValidationModule" lockItem="true" />
+ <add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="managedHandler,runtimeVersionv4.0" />
+ <add name="ScriptModule-4.0" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="managedHandler,runtimeVersionv4.0" />
+ </modules>
+ <handlers accessPolicy="Read, Script">
+<!-- <add name="WebDAV" path="*" verb="PROPFIND,PROPPATCH,MKCOL,PUT,COPY,DELETE,MOVE,LOCK,UNLOCK" modules="WebDAVModule" resourceType="Unspecified" requireAccess="None" /> -->
+ <add name="AXD-ISAPI-4.0_64bit" path="*.axd" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
+ <add name="PageHandlerFactory-ISAPI-4.0_64bit" path="*.aspx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
+ <add name="SimpleHandlerFactory-ISAPI-4.0_64bit" path="*.ashx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
+ <add name="WebServiceHandlerFactory-ISAPI-4.0_64bit" path="*.asmx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
+ <add name="HttpRemotingHandlerFactory-rem-ISAPI-4.0_64bit" path="*.rem" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
+ <add name="HttpRemotingHandlerFactory-soap-ISAPI-4.0_64bit" path="*.soap" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
+ <add name="svc-ISAPI-4.0_64bit" path="*.svc" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" />
+ <add name="rules-ISAPI-4.0_64bit" path="*.rules" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" />
+ <add name="xoml-ISAPI-4.0_64bit" path="*.xoml" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" />
+ <add name="xamlx-ISAPI-4.0_64bit" path="*.xamlx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" />
+ <add name="aspq-ISAPI-4.0_64bit" path="*.aspq" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
+ <add name="cshtm-ISAPI-4.0_64bit" path="*.cshtm" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
+ <add name="cshtml-ISAPI-4.0_64bit" path="*.cshtml" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
+ <add name="vbhtm-ISAPI-4.0_64bit" path="*.vbhtm" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
+ <add name="vbhtml-ISAPI-4.0_64bit" path="*.vbhtml" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
+ <add name="AXD-ISAPI-4.0_32bit" path="*.axd" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
+ <add name="PageHandlerFactory-ISAPI-4.0_32bit" path="*.aspx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
+ <add name="SimpleHandlerFactory-ISAPI-4.0_32bit" path="*.ashx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
+ <add name="WebServiceHandlerFactory-ISAPI-4.0_32bit" path="*.asmx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
+ <add name="HttpRemotingHandlerFactory-rem-ISAPI-4.0_32bit" path="*.rem" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
+ <add name="HttpRemotingHandlerFactory-soap-ISAPI-4.0_32bit" path="*.soap" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
+ <add name="svc-ISAPI-4.0_32bit" path="*.svc" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" />
+ <add name="rules-ISAPI-4.0_32bit" path="*.rules" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" />
+ <add name="xoml-ISAPI-4.0_32bit" path="*.xoml" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" />
+ <add name="xamlx-ISAPI-4.0_32bit" path="*.xamlx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" />
+ <add name="aspq-ISAPI-4.0_32bit" path="*.aspq" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
+ <add name="cshtm-ISAPI-4.0_32bit" path="*.cshtm" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
+ <add name="cshtml-ISAPI-4.0_32bit" path="*.cshtml" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
+ <add name="vbhtm-ISAPI-4.0_32bit" path="*.vbhtm" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
+ <add name="vbhtml-ISAPI-4.0_32bit" path="*.vbhtml" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
+ <add name="TraceHandler-Integrated-4.0" path="trace.axd" verb="GET,HEAD,POST,DEBUG" type="System.Web.Handlers.TraceHandler" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="WebAdminHandler-Integrated-4.0" path="WebAdmin.axd" verb="GET,DEBUG" type="System.Web.Handlers.WebAdminHandler" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="AssemblyResourceLoader-Integrated-4.0" path="WebResource.axd" verb="GET,DEBUG" type="System.Web.Handlers.AssemblyResourceLoader" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="PageHandlerFactory-Integrated-4.0" path="*.aspx" verb="GET,HEAD,POST,DEBUG" type="System.Web.UI.PageHandlerFactory" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="SimpleHandlerFactory-Integrated-4.0" path="*.ashx" verb="GET,HEAD,POST,DEBUG" type="System.Web.UI.SimpleHandlerFactory" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="WebServiceHandlerFactory-Integrated-4.0" path="*.asmx" verb="GET,HEAD,POST,DEBUG" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="HttpRemotingHandlerFactory-rem-Integrated-4.0" path="*.rem" verb="GET,HEAD,POST,DEBUG" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="HttpRemotingHandlerFactory-soap-Integrated-4.0" path="*.soap" verb="GET,HEAD,POST,DEBUG" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="svc-Integrated-4.0" path="*.svc" verb="*" type="System.ServiceModel.Activation.ServiceHttpHandlerFactory, System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="rules-Integrated-4.0" path="*.rules" verb="*" type="System.ServiceModel.Activation.ServiceHttpHandlerFactory, System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="xoml-Integrated-4.0" path="*.xoml" verb="*" type="System.ServiceModel.Activation.ServiceHttpHandlerFactory, System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="xamlx-Integrated-4.0" path="*.xamlx" verb="GET,HEAD,POST,DEBUG" type="System.Xaml.Hosting.XamlHttpHandlerFactory, System.Xaml.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="aspq-Integrated-4.0" path="*.aspq" verb="GET,HEAD,POST,DEBUG" type="System.Web.HttpForbiddenHandler" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="cshtm-Integrated-4.0" path="*.cshtm" verb="GET,HEAD,POST,DEBUG" type="System.Web.HttpForbiddenHandler" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="cshtml-Integrated-4.0" path="*.cshtml" verb="GET,HEAD,POST,DEBUG" type="System.Web.HttpForbiddenHandler" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="vbhtm-Integrated-4.0" path="*.vbhtm" verb="GET,HEAD,POST,DEBUG" type="System.Web.HttpForbiddenHandler" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="vbhtml-Integrated-4.0" path="*.vbhtml" verb="GET,HEAD,POST,DEBUG" type="System.Web.HttpForbiddenHandler" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="ScriptHandlerFactoryAppServices-Integrated-4.0" path="*_AppService.axd" verb="*" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="ScriptResourceIntegrated-4.0" path="*ScriptResource.axd" verb="GET,HEAD" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" preCondition="integratedMode,runtimeVersionv4.0" />
+ <add name="ASPClassic" path="*.asp" verb="GET,HEAD,POST" modules="IsapiModule" scriptProcessor="%IIS_BIN%\asp.dll" resourceType="File" />
+ <add name="SecurityCertificate" path="*.cer" verb="GET,HEAD,POST" modules="IsapiModule" scriptProcessor="%IIS_BIN%\asp.dll" resourceType="File" />
+ <add name="ISAPI-dll" path="*.dll" verb="*" modules="IsapiModule" resourceType="File" requireAccess="Execute" allowPathInfo="true" />
+ <add name="TraceHandler-Integrated" path="trace.axd" verb="GET,HEAD,POST,DEBUG" type="System.Web.Handlers.TraceHandler" preCondition="integratedMode,runtimeVersionv2.0" />
+ <add name="WebAdminHandler-Integrated" path="WebAdmin.axd" verb="GET,DEBUG" type="System.Web.Handlers.WebAdminHandler" preCondition="integratedMode,runtimeVersionv2.0" />
+ <add name="AssemblyResourceLoader-Integrated" path="WebResource.axd" verb="GET,DEBUG" type="System.Web.Handlers.AssemblyResourceLoader" preCondition="integratedMode,runtimeVersionv2.0" />
+ <add name="PageHandlerFactory-Integrated" path="*.aspx" verb="GET,HEAD,POST,DEBUG" type="System.Web.UI.PageHandlerFactory" preCondition="integratedMode,runtimeVersionv2.0" />
+ <add name="SimpleHandlerFactory-Integrated" path="*.ashx" verb="GET,HEAD,POST,DEBUG" type="System.Web.UI.SimpleHandlerFactory" preCondition="integratedMode,runtimeVersionv2.0" />
+ <add name="WebServiceHandlerFactory-Integrated" path="*.asmx" verb="GET,HEAD,POST,DEBUG" type="System.Web.Services.Protocols.WebServiceHandlerFactory,System.Web.Services,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a" preCondition="integratedMode,runtimeVersionv2.0" />
+ <add name="HttpRemotingHandlerFactory-rem-Integrated" path="*.rem" verb="GET,HEAD,POST,DEBUG" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory,System.Runtime.Remoting,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089" preCondition="integratedMode,runtimeVersionv2.0" />
+ <add name="HttpRemotingHandlerFactory-soap-Integrated" path="*.soap" verb="GET,HEAD,POST,DEBUG" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory,System.Runtime.Remoting,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089" preCondition="integratedMode,runtimeVersionv2.0" />
+ <add name="AXD-ISAPI-2.0" path="*.axd" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" responseBufferLimit="0" />
+ <add name="PageHandlerFactory-ISAPI-2.0" path="*.aspx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" responseBufferLimit="0" />
+ <add name="SimpleHandlerFactory-ISAPI-2.0" path="*.ashx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" responseBufferLimit="0" />
+ <add name="WebServiceHandlerFactory-ISAPI-2.0" path="*.asmx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" responseBufferLimit="0" />
+ <add name="HttpRemotingHandlerFactory-rem-ISAPI-2.0" path="*.rem" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" responseBufferLimit="0" />
+ <add name="HttpRemotingHandlerFactory-soap-ISAPI-2.0" path="*.soap" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" responseBufferLimit="0" />
+ <add name="AXD-ISAPI-2.0-64" path="*.axd" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" responseBufferLimit="0" />
+ <add name="PageHandlerFactory-ISAPI-2.0-64" path="*.aspx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" responseBufferLimit="0" />
+ <add name="SimpleHandlerFactory-ISAPI-2.0-64" path="*.ashx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" responseBufferLimit="0" />
+ <add name="WebServiceHandlerFactory-ISAPI-2.0-64" path="*.asmx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" responseBufferLimit="0" />
+ <add name="HttpRemotingHandlerFactory-rem-ISAPI-2.0-64" path="*.rem" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" responseBufferLimit="0" />
+ <add name="HttpRemotingHandlerFactory-soap-ISAPI-2.0-64" path="*.soap" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" responseBufferLimit="0" />
+ <add name="CGI-exe" path="*.exe" verb="*" modules="CgiModule" resourceType="File" requireAccess="Execute" allowPathInfo="true" />
+ <add name="SSINC-stm" path="*.stm" verb="GET,HEAD,POST" modules="ServerSideIncludeModule" resourceType="File" />
+ <add name="SSINC-shtm" path="*.shtm" verb="GET,HEAD,POST" modules="ServerSideIncludeModule" resourceType="File" />
+ <add name="SSINC-shtml" path="*.shtml" verb="GET,HEAD,POST" modules="ServerSideIncludeModule" resourceType="File" />
+ <add name="TRACEVerbHandler" path="*" verb="TRACE" modules="ProtocolSupportModule" requireAccess="None" />
+ <add name="OPTIONSVerbHandler" path="*" verb="OPTIONS" modules="ProtocolSupportModule" requireAccess="None" />
+ <add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
+ <add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
+ <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" responseBufferLimit="0" />
+ <add name="StaticFile" path="*" verb="*" modules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule" resourceType="Either" requireAccess="Read" />
+ </handlers>
+ </system.webServer>
+ </location>
+</configuration>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/v17/DocumentLayout.backup.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/v17/DocumentLayout.backup.json"
new file mode 100644
index 0000000..f6ec3cf
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/v17/DocumentLayout.backup.json"
@@ -0,0 +1,119 @@
+{
+ "Version": 1,
+ "WorkspaceRootPath": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\",
+ "Documents": [
+ {
+ "AbsoluteMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\print\\print\\print\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|solutionrelative:print\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\print\\print\\print\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
+ "RelativeMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|solutionrelative:print\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\print\\print\\print\\properties\\launchsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
+ "RelativeMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|solutionrelative:print\\properties\\launchsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\print\\print\\print\\controllers\\printcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|solutionrelative:print\\controllers\\printcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\print\\print\\print\\print.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|",
+ "RelativeMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|solutionrelative:print\\print.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Program Files\\dotnet\\sdk\\9.0.305\\Sdks\\Microsoft.NET.Sdk\\targets\\Microsoft.NET.Sdk.DefaultItems.Shared.targets||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|"
+ }
+ ],
+ "DocumentGroupContainers": [
+ {
+ "Orientation": 0,
+ "VerticalTabListWidth": 256,
+ "DocumentGroups": [
+ {
+ "DockedWidth": 200,
+ "SelectedChildIndex": 5,
+ "Children": [
+ {
+ "$type": "Document",
+ "DocumentIndex": 2,
+ "Title": "launchSettings.json",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Properties\\launchSettings.json",
+ "RelativeDocumentMoniker": "Print\\Properties\\launchSettings.json",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Properties\\launchSettings.json",
+ "RelativeToolTip": "Print\\Properties\\launchSettings.json",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAA8AAAAdAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
+ "WhenOpened": "2025-10-27T15:18:55.248Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 1,
+ "Title": "appsettings.json",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\appsettings.json",
+ "RelativeDocumentMoniker": "Print\\appsettings.json",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\appsettings.json",
+ "RelativeToolTip": "Print\\appsettings.json",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAAYAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
+ "WhenOpened": "2025-10-27T15:10:05.634Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 4,
+ "Title": "Print",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Print.csproj",
+ "RelativeDocumentMoniker": "Print\\Print.csproj",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Print.csproj",
+ "RelativeToolTip": "Print\\Print.csproj",
+ "ViewState": "AgIAAAAAAAAAAAAAAADwvwMAAAAjAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000758|",
+ "WhenOpened": "2025-10-27T15:05:26.959Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 5,
+ "Title": "Microsoft.NET.Sdk.DefaultItems.Shared.targets",
+ "DocumentMoniker": "C:\\Program Files\\dotnet\\sdk\\9.0.305\\Sdks\\Microsoft.NET.Sdk\\targets\\Microsoft.NET.Sdk.DefaultItems.Shared.targets",
+ "ToolTip": "C:\\Program Files\\dotnet\\sdk\\9.0.305\\Sdks\\Microsoft.NET.Sdk\\targets\\Microsoft.NET.Sdk.DefaultItems.Shared.targets",
+ "ViewState": "AgIAANgAAAAAAAAAAAAAAPkAAAAEAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003801|",
+ "WhenOpened": "2025-10-27T14:59:32.084Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 3,
+ "Title": "PrintController.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Controllers\\PrintController.cs",
+ "RelativeDocumentMoniker": "Print\\Controllers\\PrintController.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Controllers\\PrintController.cs",
+ "RelativeToolTip": "Print\\Controllers\\PrintController.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABgAAAAQAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-10-27T13:23:53.618Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 0,
+ "Title": "Program.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Program.cs",
+ "RelativeDocumentMoniker": "Print\\Program.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Program.cs*",
+ "RelativeToolTip": "Print\\Program.cs*",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABQAAAARAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-10-27T13:22:35.704Z",
+ "EditorCaption": ""
+ }
+ ]
+ }
+ ]
+ }
+ ]
+}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/v17/DocumentLayout.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/v17/DocumentLayout.json"
new file mode 100644
index 0000000..61dc947
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/.vs/Print/v17/DocumentLayout.json"
@@ -0,0 +1,119 @@
+{
+ "Version": 1,
+ "WorkspaceRootPath": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\",
+ "Documents": [
+ {
+ "AbsoluteMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\print\\print\\print\\properties\\launchsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
+ "RelativeMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|solutionrelative:print\\properties\\launchsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\print\\print\\print\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
+ "RelativeMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|solutionrelative:print\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\print\\print\\print\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|solutionrelative:print\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\print\\print\\print\\controllers\\printcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|solutionrelative:print\\controllers\\printcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\print\\print\\print\\print.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|",
+ "RelativeMoniker": "D:0:0:{4445573A-3465-4A75-A024-D5D47B85A1BD}|Print\\Print.csproj|solutionrelative:print\\print.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Program Files\\dotnet\\sdk\\9.0.305\\Sdks\\Microsoft.NET.Sdk\\targets\\Microsoft.NET.Sdk.DefaultItems.Shared.targets||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|"
+ }
+ ],
+ "DocumentGroupContainers": [
+ {
+ "Orientation": 0,
+ "VerticalTabListWidth": 256,
+ "DocumentGroups": [
+ {
+ "DockedWidth": 200,
+ "SelectedChildIndex": 0,
+ "Children": [
+ {
+ "$type": "Document",
+ "DocumentIndex": 0,
+ "Title": "launchSettings.json",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Properties\\launchSettings.json",
+ "RelativeDocumentMoniker": "Print\\Properties\\launchSettings.json",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Properties\\launchSettings.json",
+ "RelativeToolTip": "Print\\Properties\\launchSettings.json",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABAAAAAuAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
+ "WhenOpened": "2025-10-27T15:18:55.248Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 1,
+ "Title": "appsettings.json",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\appsettings.json",
+ "RelativeDocumentMoniker": "Print\\appsettings.json",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\appsettings.json",
+ "RelativeToolTip": "Print\\appsettings.json",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAAYAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
+ "WhenOpened": "2025-10-27T15:10:05.634Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 4,
+ "Title": "Print",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Print.csproj",
+ "RelativeDocumentMoniker": "Print\\Print.csproj",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Print.csproj",
+ "RelativeToolTip": "Print\\Print.csproj",
+ "ViewState": "AgIAAAAAAAAAAAAAAADwvwMAAAAjAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000758|",
+ "WhenOpened": "2025-10-27T15:05:26.959Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 5,
+ "Title": "Microsoft.NET.Sdk.DefaultItems.Shared.targets",
+ "DocumentMoniker": "C:\\Program Files\\dotnet\\sdk\\9.0.305\\Sdks\\Microsoft.NET.Sdk\\targets\\Microsoft.NET.Sdk.DefaultItems.Shared.targets",
+ "ToolTip": "C:\\Program Files\\dotnet\\sdk\\9.0.305\\Sdks\\Microsoft.NET.Sdk\\targets\\Microsoft.NET.Sdk.DefaultItems.Shared.targets",
+ "ViewState": "AgIAANgAAAAAAAAAAAAAAPkAAAAEAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003801|",
+ "WhenOpened": "2025-10-27T14:59:32.084Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 3,
+ "Title": "PrintController.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Controllers\\PrintController.cs",
+ "RelativeDocumentMoniker": "Print\\Controllers\\PrintController.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Controllers\\PrintController.cs",
+ "RelativeToolTip": "Print\\Controllers\\PrintController.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAABgAAAAQAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-10-27T13:23:53.618Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 2,
+ "Title": "Program.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Program.cs",
+ "RelativeDocumentMoniker": "Print\\Program.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\Print\\Print\\Print\\Program.cs",
+ "RelativeToolTip": "Print\\Program.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAA8AAAAXAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-10-27T13:22:35.704Z",
+ "EditorCaption": ""
+ }
+ ]
+ }
+ ]
+ }
+ ]
+}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print.sln" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print.sln"
new file mode 100644
index 0000000..f43258e
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print.sln"
@@ -0,0 +1,25 @@
+锘�
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.14.36518.9 d17.14
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Print", "Print\Print.csproj", "{4445573A-3465-4A75-A024-D5D47B85A1BD}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {4445573A-3465-4A75-A024-D5D47B85A1BD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {4445573A-3465-4A75-A024-D5D47B85A1BD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {4445573A-3465-4A75-A024-D5D47B85A1BD}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {4445573A-3465-4A75-A024-D5D47B85A1BD}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {697A1DD9-EEEB-4013-BE71-204D14855F47}
+ EndGlobalSection
+EndGlobal
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/Controllers/PrintController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/Controllers/PrintController.cs"
new file mode 100644
index 0000000..258b1eb
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/Controllers/PrintController.cs"
@@ -0,0 +1,111 @@
+锘縰sing FastReport;
+using FastReport.Barcode;
+using FastReport.Table;
+using Microsoft.AspNetCore.Authorization;
+using Microsoft.AspNetCore.Mvc;
+
+namespace Print.Controllers
+{
+ [ApiController]
+ [Route("[controller]")]
+ public class PrintController : Controller
+ {//{
+ // private readonly IPrintService _print;
+ // public PrintController(IPrintService print)
+ // {
+ // _print = print;
+ // }
+ [HttpGet, HttpPost, Route("PrintInboundOrder"), AllowAnonymous]
+ public object PrintInboundOrder([FromBody] InboundOrder inbound)
+ {
+ try
+ {
+ string ReportPathmater = System.IO.Directory.GetCurrentDirectory();
+ string MFile = string.Empty;
+ MFile = ReportPathmater + "\\frx\\MaterMode.frx";
+ Report report = new Report();
+ report.Load(MFile);
+ report.PrintSettings.ShowDialog = false;
+ System.Drawing.Printing.PrinterSettings oitem = new System.Drawing.Printing.PrinterSettings();
+ BarcodeObject OrderNoObj = report.FindObject("OrderNo") as BarcodeObject;
+ if (OrderNoObj != null)
+ {
+ OrderNoObj.Text = inbound.OrderNo;
+ }
+ TableCell UpperOrderNoObj = report.FindObject("UpperOrderNo") as TableCell;
+ if (UpperOrderNoObj != null)
+ {
+ UpperOrderNoObj.Text = inbound.UpperOrderNo;
+ }
+ TableCell WarehouseNameObj = report.FindObject("WarehouseName") as TableCell;
+ if (WarehouseNameObj != null)
+ {
+ WarehouseNameObj.Text = inbound.WarehouseName;
+ }
+ TableCell MaterialNoObj = report.FindObject("MaterialNo") as TableCell;
+ if (MaterialNoObj != null)
+ {
+ MaterialNoObj.Text = inbound.MaterialNo;
+ }
+ TableCell MaterialNameObj = report.FindObject("MaterialName") as TableCell;
+ if (MaterialNameObj != null)
+ {
+ MaterialNameObj.Text = inbound.MaterialName;
+ }
+ TableCell SpecsObj = report.FindObject("Specs") as TableCell;
+ if (SpecsObj != null)
+ {
+ SpecsObj.Text = inbound.Specs;
+ }
+ TableCell UnitObj = report.FindObject("Unit") as TableCell;
+ if (UnitObj != null)
+ {
+ UnitObj.Text = inbound.Unit;
+ }
+ TableCell QuantityObj = report.FindObject("Quantity") as TableCell;
+ if (QuantityObj != null)
+ {
+ QuantityObj.Text = inbound.Quantity.ToString();
+ }
+ TableCell ProductDrawingNumberObj = report.FindObject("ProductDrawingNumber") as TableCell;
+ if (ProductDrawingNumberObj != null)
+ {
+ ProductDrawingNumberObj.Text = inbound.ProductDrawingNumber;
+ }
+ TableCell DatetimeObj = report.FindObject("Datetime") as TableCell;
+ if (DatetimeObj != null)
+ {
+ DatetimeObj.Text = inbound.Datetime;
+ }
+ TableCell WeightObj = report.FindObject("Weight") as TableCell;
+ if (WeightObj != null)
+ {
+ WeightObj.Text = inbound.Weight.ToString();
+ }
+ report.Print();
+ report.Dispose();
+ return true;
+ return new { code = 200, status = false };
+ }
+ catch (Exception ex)
+ {
+ return ex.Message;
+ }
+ }
+ public class InboundOrder
+ {
+ public string OrderNo { get; set; }
+ public string UpperOrderNo { get; set; }
+ public string WarehouseName { get; set; }
+ public string MaterialNo { get; set; }
+ public string MaterialName { get; set; }
+ public string Specs { get; set; }
+ public string Unit { get; set; }
+ public decimal Quantity { get; set; }
+ public string ProductDrawingNumber { get; set; }
+ public string Datetime { get; set; }
+ public decimal Weight { get; set; }
+ }
+ }
+
+}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/Print.csproj" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/Print.csproj"
new file mode 100644
index 0000000..3193781
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/Print.csproj"
@@ -0,0 +1,19 @@
+锘�<Project Sdk="Microsoft.NET.Sdk.Web">
+
+ <PropertyGroup>
+ <TargetFramework>net6.0-windows</TargetFramework>
+ <Nullable>enable</Nullable>
+ <ImplicitUsings>enable</ImplicitUsings>
+ </PropertyGroup>
+
+ <ItemGroup>
+ <PackageReference Include="FastReport.Net.Demo" Version="2026.1.2" />
+ <PackageReference Include="Swashbuckle.AspNetCore" Version="6.5.0" />
+ </ItemGroup>
+
+ <ItemGroup>
+ <Folder Include="frx\" />
+ </ItemGroup>
+
+
+</Project>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/Program.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/Program.cs"
new file mode 100644
index 0000000..abb13ad
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/Program.cs"
@@ -0,0 +1,22 @@
+using FastReport.DataVisualization.Charting;
+
+var builder = WebApplication.CreateBuilder(args);
+
+builder.Services.AddControllers();
+builder.Services.AddEndpointsApiExplorer();
+builder.Services.AddSwaggerGen();
+var app = builder.Build();
+
+
+app.UseSwagger().UseSwaggerUI(c =>
+{
+ c.SwaggerEndpoint("/swagger/v1/swagger.json", "API V1");
+ c.RoutePrefix = "";
+});
+app.UseHttpsRedirection();
+
+app.UseAuthorization();
+
+app.MapControllers();
+app.UseRouting();
+app.Run();
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/Properties/launchSettings.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/Properties/launchSettings.json"
new file mode 100644
index 0000000..339e638
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/Properties/launchSettings.json"
@@ -0,0 +1,31 @@
+锘縶
+ "$schema": "https://json.schemastore.org/launchsettings.json",
+ "iisSettings": {
+ "windowsAuthentication": false,
+ "anonymousAuthentication": true,
+ "iisExpress": {
+ "applicationUrl": "http://localhost:39740",
+ "sslPort": 0
+ }
+ },
+ "profiles": {
+ "Print": {
+ "commandName": "Project",
+ "dotnetRunMessages": true,
+ "launchBrowser": true,
+ //"launchUrl": "swagger",
+ "applicationUrl": "http://localhost:5230",
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ }
+ },
+ "IIS Express": {
+ "commandName": "IISExpress",
+ "launchBrowser": true,
+ //"launchUrl": "swagger",
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ }
+ }
+ }
+}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/appsettings.Development.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/appsettings.Development.json"
new file mode 100644
index 0000000..0c208ae
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/appsettings.Development.json"
@@ -0,0 +1,8 @@
+{
+ "Logging": {
+ "LogLevel": {
+ "Default": "Information",
+ "Microsoft.AspNetCore": "Warning"
+ }
+ }
+}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/appsettings.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/appsettings.json"
new file mode 100644
index 0000000..bb8ce9a
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/appsettings.json"
@@ -0,0 +1,10 @@
+{
+ "Logging": {
+ "LogLevel": {
+ "Default": "Information",
+ "Microsoft.AspNetCore": "Warning"
+ }
+ },
+ "AllowedHosts": "*",
+ "urls": "http://*:8098"
+}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/frx/InboundOrder.frx" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/frx/InboundOrder.frx"
new file mode 100644
index 0000000..3823db2
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/frx/InboundOrder.frx"
@@ -0,0 +1,97 @@
+锘�<?xml version="1.0" encoding="utf-8"?>
+<Report ScriptLanguage="CSharp" ReportInfo.Created="10/27/2025 21:29:39" ReportInfo.Modified="10/27/2025 22:05:20" ReportInfo.CreatorVersion="2013.2.5.0">
+ <Dictionary/>
+ <ReportPage Name="Page1">
+ <ReportTitleBand Name="ReportTitle1" Width="718.2" Height="434.7">
+ <TableObject Name="Table1" Width="340.2" Height="368.55" Border.Lines="All">
+ <TableColumn Name="Column1" Width="60.48"/>
+ <TableColumn Name="Column2" Width="60.48"/>
+ <TableColumn Name="Column3" Width="60.48"/>
+ <TableColumn Name="Column4" Width="69.93"/>
+ <TableColumn Name="Column5" Width="88.83"/>
+ <TableRow Name="Row1" Height="60.48">
+ <TableCell Name="Cell1" Border.Lines="All" Font="瀹嬩綋, 9pt" ColSpan="2" RowSpan="3">
+ <BarcodeObject Name="OrderNo" Width="116" Height="134" Barcode="QR Code" Barcode.ErrorCorrection="L" Barcode.Encoding="UTF8" Barcode.QuietZone="true"/>
+ </TableCell>
+ <TableCell Name="Cell2" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell3" Border.Lines="All" Text="璁㈠崟:" VertAlign="Center" Font="寰蒋闆呴粦, 12pt" RowSpan="2"/>
+ <TableCell Name="UpperOrderNo" Border.Lines="All" Font="瀹嬩綋, 9pt" ColSpan="2" RowSpan="2"/>
+ <TableCell Name="Cell5" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row2" Height="32.13">
+ <TableCell Name="Cell6" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell7" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell8" Text="浠撳簱锛�" HorzAlign="Center" VertAlign="Center" Font="寰蒋闆呴粦, 12pt"/>
+ <TableCell Name="Cell9" Font="瀹嬩綋, 9pt" ColSpan="2"/>
+ <TableCell Name="Cell10" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row3" Height="41.58">
+ <TableCell Name="Cell11" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell12" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell13" Border.Lines="All" Text="浠撳簱锛�" VertAlign="Center" Font="寰蒋闆呴粦, 12pt"/>
+ <TableCell Name="WarehouseName" Border.Lines="All" Font="瀹嬩綋, 9pt" ColSpan="2"/>
+ <TableCell Name="Cell15" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row4" Height="32.13">
+ <TableCell Name="Cell16" Border.Lines="All" Text="鏂欏彿锛�" VertAlign="Center" Font="寰蒋闆呴粦, 12pt"/>
+ <TableCell Name="MaterialNo" Border.Lines="All" Font="瀹嬩綋, 9pt" ColSpan="4"/>
+ <TableCell Name="Cell18" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell19" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell20" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row5" Height="32.13">
+ <TableCell Name="Cell21" Border.Lines="All" Text="鍚嶇О锛�" VertAlign="Center" Font="寰蒋闆呴粦, 12pt"/>
+ <TableCell Name="MaterialName" Border.Lines="All" Font="瀹嬩綋, 9pt" ColSpan="4"/>
+ <TableCell Name="Cell23" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell24" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell25" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row6" Height="28.35">
+ <TableCell Name="Cell26" Border.Lines="All" Text="瑙勬牸锛�" VertAlign="Center" Font="寰蒋闆呴粦, 12pt"/>
+ <TableCell Name="Specs" Border.Lines="All" Font="瀹嬩綋, 9pt" ColSpan="4"/>
+ <TableCell Name="Cell28" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell29" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell30" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row7" Height="28.35">
+ <TableCell Name="Cell31" Border.Lines="All" Text="鍗曚綅锛�" VertAlign="Center" Font="寰蒋闆呴粦, 12pt"/>
+ <TableCell Name="Unit" Border.Lines="All" Font="瀹嬩綋, 9pt" ColSpan="4"/>
+ <TableCell Name="Cell33" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell34" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell35" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row8" Height="28.35">
+ <TableCell Name="Cell36" Border.Lines="All" Text="鏁伴噺锛�" VertAlign="Center" Font="寰蒋闆呴粦, 12pt"/>
+ <TableCell Name="Quantity" Border.Lines="All" Font="瀹嬩綋, 9pt" ColSpan="4"/>
+ <TableCell Name="Cell38" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell39" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell40" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row9" Height="28.35">
+ <TableCell Name="Cell41" Border.Lines="All" Text="鍥惧彿锛�" VertAlign="Center" Font="寰蒋闆呴粦, 12pt"/>
+ <TableCell Name="ProductDrawingNumber" Font="瀹嬩綋, 9pt" ColSpan="4"/>
+ <TableCell Name="Cell43" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell44" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell45" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row10" Height="28.35">
+ <TableCell Name="Cell46" Border.Lines="All" Text="鏃ユ湡" VertAlign="Center" Font="寰蒋闆呴粦, 12pt"/>
+ <TableCell Name="Datetime" Border.Lines="All" Font="瀹嬩綋, 9pt" ColSpan="4"/>
+ <TableCell Name="Cell48" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell49" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell50" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row11" Height="28.35">
+ <TableCell Name="Cell51" Text="閲嶉噺锛�" VertAlign="Center" Font="寰蒋闆呴粦, 12pt"/>
+ <TableCell Name="Weight" Border.Lines="All" Font="瀹嬩綋, 9pt" ColSpan="4"/>
+ <TableCell Name="Cell53" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell54" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell55" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ </TableObject>
+ </ReportTitleBand>
+ <PageHeaderBand Name="PageHeader1" Top="438.7" Width="718.2" Height="28.35"/>
+ <DataBand Name="Data1" Top="471.05" Width="718.2" Height="75.6"/>
+ <PageFooterBand Name="PageFooter1" Top="550.65" Width="718.2" Height="274.05"/>
+ </ReportPage>
+</Report>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/frx/MaterMode.frx" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/frx/MaterMode.frx"
new file mode 100644
index 0000000..2dd09c2
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Print/frx/MaterMode.frx"
@@ -0,0 +1,51 @@
+锘�<?xml version="1.0" encoding="utf-8"?>
+<Report ScriptLanguage="CSharp" ReportInfo.Created="09/04/2018 15:16:31" ReportInfo.Modified="03/31/2023 17:19:45" ReportInfo.CreatorVersion="2013.2.5.0" PrintSettings.Collate="false">
+ <Dictionary/>
+ <ReportPage Name="Page1" PaperWidth="80" PaperHeight="55" LeftMargin="0" TopMargin="0" RightMargin="1" BottomMargin="0" FirstPageSource="256" OtherPagesSource="256">
+ <DataBand Name="Data1" Width="298.62" Height="207.9">
+ <TableObject Name="Table1" Left="9.45" Top="28.35" Width="274.05" Height="170.1" Border.Lines="All">
+ <TableColumn Name="Column1" Width="78.75"/>
+ <TableColumn Name="Column2" Width="97.65"/>
+ <TableColumn Name="Column3" Width="97.65"/>
+ <TableRow Name="Row1" Height="24.3">
+ <TableCell Name="Cell1" Border.Lines="All" Text="璁㈠崟鍙�" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell2" Border.Lines="All" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt" ColSpan="2"/>
+ <TableCell Name="Cell3" HorzAlign="Center" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row2" Height="24.3">
+ <TableCell Name="Cell6" Border.Lines="All" Text="渚涘簲鍟嗗悕绉�" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell7" Border.Lines="All" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt" ColSpan="2"/>
+ <TableCell Name="Cell8" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row3" Height="24.3">
+ <TableCell Name="Cell11" Border.Lines="All" Text="鐗╂枡缂栧彿" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell12" Border.Lines="All" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt" ColSpan="2"/>
+ <TableCell Name="Cell13" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row4" Height="24.3">
+ <TableCell Name="Cell14" Border.Lines="All" Text="鍚嶇О/鍨嬪彿" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell15" Border.Lines="All" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt" ColSpan="2"/>
+ <TableCell Name="Cell16" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row5" Height="24.3">
+ <TableCell Name="Cell17" Border.Lines="All" Text="鐗╂枡鏁伴噺" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell18" Border.Lines="All" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell19" Font="瀹嬩綋, 9pt" RowSpan="3">
+ <BarcodeObject Name="Barcode1" Left="18.9" Top="9.45" Width="62.75" Height="62.75" AutoSize="false" Text="N|401.00000160-0|05.05.0017|20230325|2312|100|SZSOFAR202302170030.00104" ShowText="false" Barcode="QR Code" Barcode.ErrorCorrection="L" Barcode.Encoding="UTF8" Barcode.QuietZone="true"/>
+ </TableCell>
+ </TableRow>
+ <TableRow Name="Row6" Height="24.3">
+ <TableCell Name="Cell20" Border.Lines="All" Text="鐢熶骇鎵规" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell21" Border.Lines="All" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell22" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ <TableRow Name="Row7" Height="24.3">
+ <TableCell Name="Cell23" Border.Lines="All" Text="渚涜揣鏃ユ湡" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell24" Border.Lines="All" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt"/>
+ <TableCell Name="Cell25" Font="瀹嬩綋, 9pt"/>
+ </TableRow>
+ </TableObject>
+ <TextObject Name="Text1" Left="160.65" Top="9.45" Width="94.5" Height="18.9" Text="鍐呯鏍囩-鎷�" HorzAlign="Center" VertAlign="Center" Font="瀹嬩綋, 9pt"/>
+ </DataBand>
+ </ReportPage>
+</Report>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/DLL/FastReport.Bars.dll" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/DLL/FastReport.Bars.dll"
new file mode 100644
index 0000000..3e9eb6c
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/DLL/FastReport.Bars.dll"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/DLL/FastReport.dll" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/DLL/FastReport.dll"
new file mode 100644
index 0000000..6665f27
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/DLL/FastReport.dll"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/IPrintService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/IPrintService.cs"
new file mode 100644
index 0000000..e0917c9
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/IPrintService.cs"
@@ -0,0 +1,14 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using static Services.PrintService;
+
+namespace Services
+{
+ public interface IPrintService
+ {
+ object print(InboundOrder inbound);
+ }
+}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/PrintService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/PrintService.cs"
new file mode 100644
index 0000000..f6f4296
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/PrintService.cs"
@@ -0,0 +1,92 @@
+锘縰sing FastReport;
+using FastReport.Barcode;
+using FastReport.Table;
+
+namespace Services
+{
+ public class PrintService:IPrintService
+ {
+ public object print(InboundOrder inbound)
+ {
+ string ReportPathmater = System.IO.Directory.GetCurrentDirectory();
+ string MFile = string.Empty;
+ MFile = ReportPathmater + "\\frx\\MaterMode.frx";
+ Report report = new Report();
+ report.Load(MFile);
+ report.PrintSettings.ShowDialog = false;
+ System.Drawing.Printing.PrinterSettings oitem = new System.Drawing.Printing.PrinterSettings();
+ BarcodeObject OrderNoObj = report.FindObject("OrderNo") as BarcodeObject;
+ if (OrderNoObj != null)
+ {
+ OrderNoObj.Text = inbound.OrderNo;
+ }
+ TableCell UpperOrderNoObj = report.FindObject("UpperOrderNo") as TableCell;
+ if (UpperOrderNoObj != null)
+ {
+ UpperOrderNoObj.Text = inbound.UpperOrderNo;
+ }
+ TableCell WarehouseNameObj = report.FindObject("WarehouseName") as TableCell;
+ if (WarehouseNameObj != null)
+ {
+ WarehouseNameObj.Text = inbound.WarehouseName;
+ }
+ TableCell MaterialNoObj = report.FindObject("MaterialNo") as TableCell;
+ if (MaterialNoObj != null)
+ {
+ MaterialNoObj.Text = inbound.MaterialNo;
+ }
+ TableCell MaterialNameObj = report.FindObject("MaterialName") as TableCell;
+ if (MaterialNameObj != null)
+ {
+ MaterialNameObj.Text = inbound.MaterialName;
+ }
+ TableCell SpecsObj = report.FindObject("Specs") as TableCell;
+ if (SpecsObj != null)
+ {
+ SpecsObj.Text = inbound.Specs;
+ }
+ TableCell UnitObj = report.FindObject("Unit") as TableCell;
+ if (UnitObj != null)
+ {
+ UnitObj.Text = inbound.Unit;
+ }
+ TableCell QuantityObj = report.FindObject("Quantity") as TableCell;
+ if (QuantityObj != null)
+ {
+ QuantityObj.Text = inbound.Quantity.ToString();
+ }
+ TableCell ProductDrawingNumberObj = report.FindObject("ProductDrawingNumber") as TableCell;
+ if (ProductDrawingNumberObj != null)
+ {
+ ProductDrawingNumberObj.Text = inbound.ProductDrawingNumber;
+ }
+ TableCell DatetimeObj = report.FindObject("Datetime") as TableCell;
+ if (DatetimeObj != null)
+ {
+ DatetimeObj.Text = inbound.Datetime;
+ }
+ TableCell WeightObj = report.FindObject("Weight") as TableCell;
+ if (WeightObj != null)
+ {
+ WeightObj.Text = inbound.Weight.ToString();
+ }
+ report.Print();
+ report.Dispose();
+ return true;
+ }
+ public class InboundOrder
+ {
+ public string OrderNo { get; set; }
+ public string UpperOrderNo { get; set; }
+ public string WarehouseName { get; set; }
+ public string MaterialNo { get; set; }
+ public string MaterialName { get; set; }
+ public string Specs { get; set; }
+ public string Unit { get; set; }
+ public decimal Quantity { get; set; }
+ public string ProductDrawingNumber { get; set; }
+ public string Datetime { get; set; }
+ public decimal Weight { get; set; }
+ }
+ }
+}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/Services.csproj" "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/Services.csproj"
new file mode 100644
index 0000000..818d18c
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/Print/Print/Services/Services.csproj"
@@ -0,0 +1,17 @@
+锘�<Project Sdk="Microsoft.NET.Sdk">
+
+ <PropertyGroup>
+ <TargetFramework>net6.0</TargetFramework>
+ <ImplicitUsings>enable</ImplicitUsings>
+ <Nullable>enable</Nullable>
+ </PropertyGroup>
+
+ <ItemGroup>
+ <PackageReference Include="FastReport.Net.Demo" Version="2026.1.2" />
+ </ItemGroup>
+ <ItemGroup>
+ <Reference Include="FastReport.Bars">
+ <HintPath>..\DLL\FastReport.Bars.dll</HintPath>
+ </Reference>
+ </ItemGroup>
+</Project>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Allocate/AllocateStockSelect.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Allocate/AllocateStockSelect.vue"
index 2e83148..975db43 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Allocate/AllocateStockSelect.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Allocate/AllocateStockSelect.vue"
@@ -30,6 +30,9 @@
<el-option label="涓�妤糀GV鍏ュ簱缂撳瓨鍖�" value="4" />
</el-select>
</el-form-item>
+ <el-form-item label="璋冩嫧鍑哄簱" prop="areaId">
+ <el-input style="width: 310px" v-model="form.Warehouse" placeholder="璇疯緭鍏ヨ皟鎷ㄤ粨搴�"></el-input>
+ </el-form-item>
</el-form>
</div>
<div class="box-table" style="margin-top: 1%">
@@ -65,6 +68,7 @@
form: {
TargetAddress: "",
areaId: "2",
+ Warehouse:""
},
row: null,
showDetialBox: false,
@@ -132,6 +136,7 @@
"orderIds":this.ids,
"stockViews": this.selection,
"AreaId": this.form.areaId,
+ "Warehouse":this.form.Warehouse,
}
console.log(param);
this.http
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Allocate/AllocateoutOrderDetail.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Allocate/AllocateoutOrderDetail.vue"
index c30b851..8861a7b 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Allocate/AllocateoutOrderDetail.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Allocate/AllocateoutOrderDetail.vue"
@@ -30,6 +30,9 @@
<el-option label="涓�妤糀GV鍏ュ簱缂撳瓨鍖�" value="4" />
</el-select>
</el-form-item>
+ <el-form-item label="璋冩嫧鍑哄簱" prop="Warehouse">
+ <el-input style="width: 310px" v-model="Warehouse" placeholder="璇疯緭鍏ヨ皟鎷ㄤ粨搴�"></el-input>
+ </el-form-item>
</el-form>
</div>
<div class="box-table" style="margin-top: 1%">
@@ -63,13 +66,14 @@
<script>
import VolBox from "@/components/basic/VolBox.vue";
import VolForm from "@/components/basic/VolForm.vue";
-import StockSelect from "./OtherStockSelect.vue";
+import StockSelect from "./AllocateStockSelect.vue";
export default {
components: { VolBox, VolForm, StockSelect },
data() {
return {
row: null,
areaId: "2",
+ Warehouse:"",
showDetialBox: false,
flag: false,
MaterialCode:"",
@@ -262,6 +266,7 @@
var param = {
"orderIds":keys,
"AreaId": this.areaId,
+ "Warehouse":this.Warehouse,
}
this.http
.post("api/AllocateOutboundOrder/GenerateAllocateOutboundTask", param, "鏁版嵁澶勭悊涓�")
@@ -282,10 +287,7 @@
},
getButtonEnable(propName, row) {
if (propName == "assignStock") {
- if (
- row.orderDetailStatus !== 0 &&
- row.orderDetailStatus !== 60 &&
- row.orderDetailStatus !== 70
+ if (row.orderDetailStatus !== 0 &&row.orderDetailStatus !== 60 &&row.orderDetailStatus !== 70
) {
return true;
} else {
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Production/ProductionStockSelect.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Production/ProductionStockSelect.vue"
index 4eb924b..518767d 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Production/ProductionStockSelect.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/Order/Production/ProductionStockSelect.vue"
@@ -81,6 +81,7 @@
title: "鐗╂枡鍚嶇О",
type: "string",
width: 150,
+
},
{
prop: "palletCode",
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStock.jsx" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStock.jsx"
index 7fb1009..26c485c 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStock.jsx"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStock.jsx"
@@ -26,52 +26,82 @@
methods: {
//涓嬮潰杩欎簺鏂规硶鍙互淇濈暀涔熷彲浠ュ垹闄�
onInit() {
- // let OtherOutBoundbtn=this.buttons.find(x=>x.value=='OtherOutBound');
- // if(OtherOutBoundbtn){
- // OtherOutBoundbtn.onClick=function(){
- // let row = this.$refs.table.getSelected() //鑾峰彇閫変腑鐨勮
- // if (row <= 0) {
- // //濡傛灉娌℃湁閫変腑琛�
- // this.$Message.error('璇烽�夋嫨涓�琛屾暟鎹�')
- // return;
- // }
- // let palletCode = row[0].palletCode
- // this.http.get(`/api/Task/CompleteTaskAsync?taskNum=${taskNum}`, {}, "姝e湪瀹屾垚浠诲姟").then((res) => {
- // //绀轰緥锛氳皟鐢ㄥ悗鍙版帴鍙�
- // if (res.status) {
- // this.$Message.success('浠诲姟瀹屾垚');
- // this.refresh();
- // } else {
- // this.$Message.error(res.message) //閿欒鎻愮ず
- // this.refresh();
- // }
- // })
- // }
- // }
- this.columns.push({
- field: '鎿嶄綔',
- title: '鎿嶄綔',
- width: 90,
- fixed: 'right',
- align: 'center',
- formatter: (row) => {
- return (
- '<i style="cursor: pointer;color: #2d8cf0;"class="el-icon-view">鍏朵粬鍑哄簱</i>'
- );
- },
- click: (row) => {
- console.log(row);
- this.http.post(`/api/Task/OtherOutBoundTaskAsync?palletCode=${row.palletCode}`, {}, "姝e湪鐢熸垚浠诲姟").then((res) => {
- //绀轰緥锛氳皟鐢ㄥ悗鍙版帴鍙�
- if (res.status) {
- this.$Message.success(row[0].palletCode+"鍑哄簱鎴愬姛");
- this.refresh();
- } else {
- this.$Message.error(res.message) //閿欒鎻愮ず
- this.refresh();
- }
- })
+
+ this.detailOptions.buttons.unshift({
+ name: '鍏朵粬鍑哄簱', //鎸夐挳鍚嶇О
+ icon: '', //鎸夐挳鍥炬爣vue2鐗堟湰瑙乮view鏂囨。icon锛寁ue3鐗堟湰瑙乪lement ui鏂囨。icon(娉ㄦ剰涓嶆槸element puls鏂囨。)
+ type: 'primary', //鎸夐挳鏍峰紡vue2鐗堟湰瑙乮view鏂囨。button锛寁ue3鐗堟湰瑙乪lement ui鏂囨。button
+ // onClick: function () {
+ // // this.$Message.success('鐐瑰嚮浜嗘寜閽�');
+ // let row = this.$refs.table.getSelected() //鑾峰彇閫変腑鐨勮
+ // if (row <= 0) {
+ // //濡傛灉娌℃湁閫変腑琛�
+ // this.$Message.error('璇烽�夋嫨涓�琛屾暟鎹�')
+ // return
+ // }
+ // let taskNum = row[0].taskNum
+ // this.http.get(`/api/Task/CompleteTaskAsync?taskNum=${taskNum}`, {}, "姝e湪瀹屾垚浠诲姟").then((res) => {
+ // //绀轰緥锛氳皟鐢ㄥ悗鍙版帴鍙�
+ // if (res.status) {
+ // this.$Message.success('浠诲姟瀹屾垚')
+ // } else {
+ // this.$Message.error(res.message) //閿欒鎻愮ず
+ // }
+ // })
+ // }
+ onClick: () => {
+ let row = this.$refs.table.getSelected()
+ console.log(row);
+ }
+ });
+ this.detailOptions.buttons.unshift({
+ name: '鐩樼偣鍑哄簱', //鎸夐挳鍚嶇О
+ icon: '', //鎸夐挳鍥炬爣vue2鐗堟湰瑙乮view鏂囨。icon锛寁ue3鐗堟湰瑙乪lement ui鏂囨。icon(娉ㄦ剰涓嶆槸element puls鏂囨。)
+ type: 'primary', //鎸夐挳鏍峰紡vue2鐗堟湰瑙乮view鏂囨。button锛寁ue3鐗堟湰瑙乪lement ui鏂囨。button
+ onClick: function (e) {
+ // this.$Message.success('鐐瑰嚮浜嗘寜閽�');
+ console.log(e);
+ let row = this.$refs.table.getSelected() //鑾峰彇閫変腑鐨勮
+ if (row <= 0) {
+ //濡傛灉娌℃湁閫変腑琛�
+ this.$Message.error('璇烽�夋嫨涓�琛屾暟鎹�')
+ return
}
+ let taskNum = row[0].taskNum
+ this.http.get(`/api/Task/CompleteTaskAsync?taskNum=${taskNum}`, {}, "姝e湪瀹屾垚浠诲姟").then((res) => {
+ //绀轰緥锛氳皟鐢ㄥ悗鍙版帴鍙�
+ if (res.status) {
+ this.$Message.success('浠诲姟瀹屾垚')
+ } else {
+ this.$Message.error(res.message) //閿欒鎻愮ず
+ }
+ })
+ }
+ });
+ this.columns.push({
+ field: '鎿嶄綔',
+ title: '鎿嶄綔',
+ width: 90,
+ fixed: 'right',
+ align: 'center',
+ formatter: (row) => {
+ return (
+ '<i style="cursor: pointer;color: #2d8cf0;"class="el-icon-view">鐩樼偣鍑哄簱</i>'
+ );
+ },
+ click: (row) => {
+ console.log(row);
+ this.http.post(`/api/Task/OutBoundTaskAsync?palletCode=${row.palletCode}`, {}, "姝e湪鐢熸垚浠诲姟").then((res) => {
+ //绀轰緥锛氳皟鐢ㄥ悗鍙版帴鍙�
+ if (res.status) {
+ this.$Message.success(row[0].palletCode + "鍑哄簱鎴愬姛");
+ this.refresh();
+ } else {
+ this.$Message.error(res.message) //閿欒鎻愮ず
+ this.refresh();
+ }
+ })
+ }
});
// this.columns.push({
// title: "鎿嶄綔",
@@ -125,7 +155,7 @@
'6': '浜屾ゼB5-G5缂撳瓨鍖�',
};
column.formatter = (row) => {
- return floorMap[row?.locationInfo?.areaId] || ''
+ return floorMap[row?.locationInfo?.areaId] || ''
}
}
if (column.field == 'locationStatus') {
@@ -168,10 +198,41 @@
},
rowClick({ row, column, event }) {
//鏌ヨ鐣岄潰鐐瑰嚮琛屼簨浠�
- // this.$refs.table.$refs.table.toggleRowSelection(row) //鍗曞嚮琛屾椂閫変腑褰撳墠琛�;
+ this.$refs.table.$refs.table.toggleRowSelection(row) //鍗曞嚮琛屾椂閫変腑褰撳墠琛�;
},
modelOpenAfter(row) {
-
+ const isAdd = this.currentAction == 'Add';//鍒ゆ柇鏄惁涓烘柊寤烘搷浣�
+ //闅愯棌鏄庣粏琛ㄦ寜閽�
+ this.detailOptions.buttons.forEach((btn) => {
+ if (btn.name == '娣诲姞琛�') {
+ btn.hidden = true;
+ //鎴栬�呰缃彧璇�
+ //btn.readonly=true;
+ }
+ });
+ const isDel = this.currentAction == 'Add';//鍒ゆ柇鏄惁涓烘柊寤烘搷浣�
+ //闅愯棌鏄庣粏琛ㄦ寜閽�
+ this.detailOptions.buttons.forEach((btn) => {
+ if (btn.name == '鍒犻櫎琛�') {
+ btn.hidden = true;
+ //鎴栬�呰缃彧璇�
+ //btn.readonly=true;
+ }
+ });
+ this.detailOptions.buttons.forEach((btn) => {
+ if (btn.name == '瀵煎叆') {
+ btn.hidden = true;
+ //鎴栬�呰缃彧璇�
+ //btn.readonly=true;
+ }
+ });
+ this.detailOptions.buttons.forEach((btn) => {
+ if (btn.name == '瀵煎嚭') {
+ btn.hidden = true;
+ //鎴栬�呰缃彧璇�
+ //btn.readonly=true;
+ }
+ });
//鐐瑰嚮缂栬緫銆佹柊寤烘寜閽脊鍑烘鍚庯紝鍙互鍦ㄦ澶勫啓閫昏緫锛屽锛屼粠鍚庡彴鑾峰彇鏁版嵁
//(1)鍒ゆ柇鏄紪杈戣繕鏄柊寤烘搷浣滐細 this.currentAction=='Add';
//(2)缁欏脊鍑烘璁剧疆榛樿鍊�
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStockDetail.js" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStockDetail.js"
index 07d83af..450ee02 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStockDetail.js"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStockDetail.js"
@@ -23,25 +23,12 @@
methods: {
//涓嬮潰杩欎簺鏂规硶鍙互淇濈暀涔熷彲浠ュ垹闄�
onInit() { //妗嗘灦鍒濆鍖栭厤缃墠锛�
- //绀轰緥锛氬湪鎸夐挳鐨勬渶鍓嶉潰娣诲姞涓�涓寜閽�
- // this.buttons.unshift({ //涔熷彲浠ョ敤push鎴栬�卻plice鏂规硶鏉ヤ慨鏀筨uttons鏁扮粍
- // name: '鎸夐挳', //鎸夐挳鍚嶇О
- // icon: 'el-icon-document', //鎸夐挳鍥炬爣vue2鐗堟湰瑙乮view鏂囨。icon锛寁ue3鐗堟湰瑙乪lement ui鏂囨。icon(娉ㄦ剰涓嶆槸element puls鏂囨。)
- // type: 'primary', //鎸夐挳鏍峰紡vue2鐗堟湰瑙乮view鏂囨。button锛寁ue3鐗堟湰瑙乪lement ui鏂囨。button
- // onClick: function () {
- // this.$Message.success('鐐瑰嚮浜嗘寜閽�');
- // }
- // });
+
//绀轰緥锛氳缃慨鏀规柊寤恒�佺紪杈戝脊鍑烘瀛楁鏍囩鐨勯暱搴�
this.boxOptions.labelWidth = 150;
- // openModel1 = function (row) {
- // palletCode.value = row.palletCode;
- // searchFormFields.value.stockId = row.id;
- // model1.value = true;
- // this.$refs.gridHeader.openModel1();
- // }
+
},
onInited() {
//妗嗘灦鍒濆鍖栭厤缃悗
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/extend/StockView.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/extend/StockView.vue"
new file mode 100644
index 0000000..fc339f1
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/extend/StockView.vue"
@@ -0,0 +1,371 @@
+<template>
+ <div>
+ <vol-box v-model="showDetialBox" :lazy="true" width="85%" :padding="15" title="鍗曟嵁鏄庣粏淇℃伅">
+ <div class="box-head">
+ <el-alert :closable="false" style="width: 100%">
+ <el-row>
+ <el-col :span="16">
+ <span>宸查�変腑 {{ selection.length }} 椤�</span>
+ </el-col>
+ <el-col :span="8">
+ <el-link type="primary" size="small" style="float: right; height: 20px; margin-right: 10px"
+ @click="outbound">鐩存帴鍑哄簱</el-link>
+ <el-link type="primary" size="small" style="float: right; height: 20px; margin-right: 10px"
+ @click="getData">鍒锋柊</el-link></el-col>
+ </el-row>
+ </el-alert>
+ </div>
+ <div class="search-form">
+ <label style="margin-left: 10px">鐗╂枡缂栧彿锛�</label>
+ <el-input style="width: 310px" v-model="MaterialCode"></el-input>
+ <el-button size="small" type="primary" @click="getData">鎼滅储</el-button>
+
+ </div>
+ <div style="margin-top:10px;width:400px">
+ <el-form ref="form" :model="form" label-width="90px">
+ <el-form-item label="鍑哄簱鍖哄煙" prop="areaId">
+ <el-select v-model="areaId" placeholder="璇烽�夋嫨鍑哄簱鍖哄煙">
+ <el-option label="涓�妤糀GV鍑哄簱缂撳瓨鍖�" value="2" />
+ <el-option label="涓�妤糀GV绔嬪簱缂撳瓨鍖�" value="3" />
+ <el-option label="涓�妤糀GV鍏ュ簱缂撳瓨鍖�" value="4" />
+ </el-select>
+ </el-form-item>
+ </el-form>
+ </div>
+ <div class="box-table" style="margin-top: 1%">
+ <el-table ref="singleTable" :data="tableData" style="width: 100%; height: 630px" highlight-current-row
+ @current-change="handleCurrentChange" height="500px" @row-click="handleRowClick"
+ @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55"> </el-table-column>
+ <el-table-column label="搴忓彿" type="index" fixed="left" width="55" align="center"></el-table-column>
+ <el-table-column v-for="(item, index) in tableColumns.filter((x) => !x.hidden)" :key="index" :prop="item.prop"
+ :label="item.title" :width="item.width" align="center">
+ <template #default="scoped">
+ <div v-if="item.type == 'icon'">
+ <el-tooltip class="item" effect="dark" :content="item.title" placement="bottom"><el-link type="primary"
+ :disabled="getButtonEnable(item.prop, scoped.row)" @click="tableButtonClick(scoped.row, item)"><i
+ :class="item.icon" style="font-size: 22px"></i></el-link></el-tooltip>
+ </div>
+
+ <div v-else-if="item.type == 'tag'">
+ <el-tag size="small">
+ {{ getDictionary(scoped.row, item) }}
+ </el-tag>
+ </div>
+ </template>
+ </el-table-column>
+ </el-table>
+ </div>
+ </vol-box>
+ </div>
+</template>
+<script>
+import VolBox from "@/components/basic/VolBox.vue";
+import VolForm from "@/components/basic/VolForm.vue";
+export default {
+ components: { VolBox, VolForm, StockSelect },
+ data() {
+ return {
+ row: null,
+ areaId: "2",
+ showDetialBox: false,
+ flag: false,
+ MaterialCode:"",
+ currentRow: null,
+ selection: [],
+ tableData: [],
+ tableColumns: [
+ {
+ prop: "id",
+ title: "Id",
+ type: "int",
+ width: 90,
+ hidden: true,
+ },
+ {
+ prop: "orderId",
+ title: "鍑哄簱鍗曚富閿�",
+ type: "string",
+ width: 90,
+ hidden: true,
+ },
+ {
+ prop: "materielCode",
+ title: "鐗╂枡缂栧彿",
+ type: "string",
+ width: 150,
+ },
+ {
+ prop: "materielName",
+ title: "鐗╂枡鍚嶇О",
+ type: "string",
+ width: 150,
+ },
+ {
+ prop: "demandClassification",
+ title: "闇�姹傚垎绫�",
+ type: "string",
+ width: 150,
+ },
+ {
+ prop: "orderQuantity",
+ title: "鍗曟嵁鏁伴噺",
+ type: "string",
+ width: 90,
+ },
+ {
+ prop: "lockQuantity",
+ title: "閿佸畾鏁伴噺",
+ type: "int",
+ width: 90,
+ hidden: true,
+ },
+ {
+ prop: "overOutQuantity",
+ title: "宸插嚭鏁伴噺",
+ type: "string",
+ width: 90,
+ },
+ {
+ prop: "orderDetailStatus",
+ title: "璁㈠崟鏄庣粏鐘舵��",
+ type: "tag",
+ width: 120,
+ bindKey: "OrderStateEmun"
+ },
+ {
+ prop: "creater",
+ title: "鍒涘缓浜�",
+ type: "string",
+ width: 90,
+ },
+ {
+ prop: "createDate",
+ title: "鍒涘缓鏃堕棿",
+ type: "datetime",
+ width: 160,
+ },
+ {
+ prop: "modifier",
+ title: "淇敼浜�",
+ type: "string",
+ width: 100,
+ },
+ {
+ prop: "modifyDate",
+ title: "淇敼鏃堕棿",
+ type: "datetime",
+ width: 160,
+ },
+ {
+ prop: "remark",
+ title: "澶囨敞",
+ type: "string",
+ },
+ ],
+ paginations: {
+ sort: "id",
+ order: "desc",
+ Foots: "",
+ total: 0,
+ // 2020.08.29澧炲姞鑷畾涔夊垎椤垫潯澶у皬
+ sizes: [30, 60, 100, 120],
+ size: 30, // 榛樿鍒嗛〉澶у皬
+ Wheres: [],
+ page: 1,
+ rows: 30,
+ },
+ searchFormOptions: [
+ [
+ {
+ title: "鍗曟嵁缂栧彿",
+ field: "allocation_code",
+ type: "like",
+ },
+ {
+ title: "鍗曟嵁绫诲瀷",
+ field: "allocation_type",
+ type: "select",
+ dataKey: "OrderType",
+ data: [],
+ },
+ {
+ title: "鍗曟嵁鐘舵��",
+ field: "allocation_state",
+ type: "select",
+ dataKey: "OrderState",
+ data: [],
+ },
+ ],
+ ],
+ searchFormFields: {
+ allocation_code: "",
+ allocation_type: "",
+ allocation_state: "",
+ },
+ dictionaryList: null,
+ };
+ },
+ methods: {
+ open(row) {
+ this.row = row;
+ this.showDetialBox = true;
+ this.getDictionaryData();
+ this.getData();
+ },
+ getData() {
+ var wheres = [{ name: "orderId", value: this.row.id},{name: "materielCode",value:this.MaterialCode,DisplayType:"text"}];
+ console.log(JSON.stringify(wheres));
+ var param = {
+ page: this.paginations.page,
+ rows: this.paginations.rows,
+ sort: this.paginations.sort,
+ order: this.paginations.order,
+ wheres: JSON.stringify(wheres), // 鏌ヨ鏉′欢锛屾牸寮忎负[{ name: "瀛楁", value: "xx" }]
+ };
+ this.http
+ .post("api/ProductionOutboundOrderDetail/GetPageData", param, "鏌ヨ涓�")
+ .then((x) => {
+ this.tableData = x.rows;
+ });
+ },
+ tableButtonClick(row, column) {
+ if (column.prop == "assignStock") {
+ if (row.overOutQuantity > row.orderQuantity) {
+ this.$message.error("璇ュ崟鎹凡娌℃湁鏁伴噺鍙嚭搴�");
+ return;
+ }
+ this.$refs.child.open(row);
+ }
+ },
+ outbound() {
+ if (this.selection.length === 0) {
+ return this.$message.error("璇烽�夋嫨鍗曟嵁鏄庣粏");
+ }
+ var keys = this.selection.map((item) => item.id); // 鑾峰彇閫変腑琛岀殑id
+ var param = {
+ "orderIds":keys,
+ "AreaId": this.areaId,
+ }
+ this.http
+ .post("api/ProductionOutboundOrder/GeneratetProductOutboundTask", param, "鏁版嵁澶勭悊涓�")
+ .then((x) => {
+ if (!x.status) return this.$message.error(x.message);
+ this.$message.success("鎿嶄綔鎴愬姛");
+ this.showDetialBox = false;
+ this.$emit("parentCall", ($vue) => {
+ $vue.getData();
+ });
+ });
+ },
+ setCurrent(row) {
+ this.$refs.singleTable.setCurrentRow(row);
+ },
+ handleCurrentChange(val) {
+ this.currentRow = val;
+ },
+ getButtonEnable(propName, row) {
+ if (propName == "assignStock") {
+ if (
+ row.orderDetailStatus !== 0 &&
+ row.orderDetailStatus !== 60 &&
+ row.orderDetailStatus !== 70
+ ) {
+ return true;
+ } else {
+ return false;
+ }
+ }
+ return false;
+ },
+ parentCall(fun) {
+ if (typeof fun != "function") {
+ return console.log("鎵╁睍缁勪欢闇�瑕佷紶鍏ヤ竴涓洖璋冩柟娉曟墠鑳借幏鍙栫埗绾ue瀵硅薄");
+ }
+ fun(this);
+ },
+ handleRowClick(row) {
+ this.$refs.singleTable.toggleRowSelection(row);
+ },
+ handleSelectionChange(val) {
+ this.selection = val;
+ },
+ getDictionaryData() {
+ if (this.dictionaryList) {
+ return;
+ }
+ var param = [];
+ this.tableColumns.forEach((x) => {
+ if (x.type == "tag" && x.bindKey != "") {
+ param.push(x.bindKey);
+ }
+ });
+ this.http
+ .post("api/Sys_Dictionary/GetVueDictionary", param, "鏌ヨ涓�")
+ .then((x) => {
+ if (x.length > 0) {
+ this.dictionaryList = x;
+ }
+ });
+ },
+ getDictionary(row, column) {
+ if (this.dictionaryList) {
+ var item = this.dictionaryList.find((x) => x.dicNo == column.bindKey);
+ if (item) {
+ var dicItem = item.data.find((x) => x.key == row[column.prop]);
+ if (dicItem) {
+ return dicItem.value;
+ } else {
+ return row[column.prop];
+ }
+ } else {
+ return row[column.prop];
+ }
+ }
+ },
+ },
+};
+</script>
+<style scoped>
+.text-button {
+ border: 0px;
+}
+</style>
+
+<style>
+.text-button:hover {
+ background-color: #f0f9eb !important;
+}
+
+.el-table .warning-row {
+ background: oldlace;
+}
+
+.box-table .el-table tbody tr:hover>td {
+ background-color: #d8e0d4 !important;
+ /* color: #ffffff; */
+}
+
+.box-table .el-table tbody tr.current-row>td {
+ background-color: #f0f9eb !important;
+ /* color: #ffffff; */
+}
+
+.el-table .success-row {
+ background: #f0f9eb;
+}
+
+.box-table .el-table {
+ border: 1px solid #ebeef5;
+}
+
+.search-form {
+ display: flex;
+ padding: 10px;
+ line-height: 34px;
+
+ button {
+ margin-left: 10px;
+ }
+}
+</style>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/views/widesea_wms/Order/AllocateOutboundOrder.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/views/widesea_wms/Order/AllocateOutboundOrder.vue"
index 800279d..19422b5 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/views/widesea_wms/Order/AllocateOutboundOrder.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/views/widesea_wms/Order/AllocateOutboundOrder.vue"
@@ -12,7 +12,7 @@
</view-grid>
</template>
<script>
-import extend from "@/extension/widesea_wms/Order/OtherOutboundOrder.js";
+import extend from "@/extension/widesea_wms/Order/AllocateOutboundOrder.js";
import { ref, defineComponent } from "vue";
export default defineComponent({
setup() {
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/views/widesea_wms/stock/Dt_BillGroupStock.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/views/widesea_wms/stock/Dt_BillGroupStock.vue"
index dab4e3c..3318e6e 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/views/widesea_wms/stock/Dt_BillGroupStock.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/views/widesea_wms/stock/Dt_BillGroupStock.vue"
@@ -117,6 +117,15 @@
align: "left",
},
{
+ field: "outboundQuantity",
+ title: "鍑哄簱鏁伴噺",
+ type: "int",
+ width: 90,
+ align: "left",
+ edit: { type: "int" },
+ required: true,
+ },
+ {
field: "unit",
title: "鍗曚綅",
type: "int",
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/CodeChunks.db" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/CodeChunks.db"
deleted file mode 100644
index 6e2c489..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/CodeChunks.db"
+++ /dev/null
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db"
deleted file mode 100644
index a68acb8..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.13.441.19478/SemanticSymbols.db"
+++ /dev/null
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db"
index acdba4a..fc62026 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db-shm" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db-shm"
index 201824e..a01f40a 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db-shm"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db-shm"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db-wal" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db-wal"
index ee79a80..f170e06 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db-wal"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/CodeChunks.db-wal"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db"
index 5234a83..801943a 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-shm" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-shm"
index 3277f24..6b32195 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-shm"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-shm"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-wal" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-wal"
index ff58d32..ae407b7 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-wal"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/CopilotIndices/17.14.1231.31060/SemanticSymbols.db-wal"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json"
index 4d0d54c..ba4d524 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.backup.json"
@@ -3,48 +3,44 @@
"WorkspaceRootPath": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\",
"Documents": [
{
- "AbsoluteMoniker": "D:0:0:{9912BD12-4CF7-4A91-8203-47C9C125004C}|WIDESEA_StorageTaskServices\\WIDESEA_StorageTaskServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_storagetaskservices\\aspnetcoreschedule.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9912BD12-4CF7-4A91-8203-47C9C125004C}|WIDESEA_StorageTaskServices\\WIDESEA_StorageTaskServices.csproj|solutionrelative:widesea_storagetaskservices\\aspnetcoreschedule.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{4BDE58B2-5B2E-480B-932F-D63C2A7D557C}|WIDESEA_StorageBasicServices\\WIDESEA_StorageBasicServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_storagebasicservices\\stock\\stockinfodetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{4BDE58B2-5B2E-480B-932F-D63C2A7D557C}|WIDESEA_StorageBasicServices\\WIDESEA_StorageBasicServices.csproj|solutionrelative:widesea_storagebasicservices\\stock\\stockinfodetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_core\\baserepository\\repositorybase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|solutionrelative:widesea_core\\baserepository\\repositorybase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_model\\models\\order\\dt_productionoutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|solutionrelative:widesea_model\\models\\order\\dt_productionoutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_model\\models\\order\\dt_otheroutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|solutionrelative:widesea_model\\models\\order\\dt_otheroutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_model\\models\\order\\dt_inventoryoutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|solutionrelative:widesea_model\\models\\order\\dt_inventoryoutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_model\\models\\order\\dt_allocateoutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|solutionrelative:widesea_model\\models\\order\\dt_allocateoutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_core\\baserepository\\irepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|solutionrelative:widesea_core\\baserepository\\irepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{20D16B32-8186-420C-B3B7-58B183FC09CF}|WIDESEA_OrderServices\\WIDESEA_OrderServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_orderservices\\dt_productionoutboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{20D16B32-8186-420C-B3B7-58B183FC09CF}|WIDESEA_OrderServices\\WIDESEA_OrderServices.csproj|solutionrelative:widesea_orderservices\\dt_productionoutboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{4BDE58B2-5B2E-480B-932F-D63C2A7D557C}|WIDESEA_StorageBasicServices\\WIDESEA_StorageBasicServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_storagebasicservices\\stock\\stockinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{4BDE58B2-5B2E-480B-932F-D63C2A7D557C}|WIDESEA_StorageBasicServices\\WIDESEA_StorageBasicServices.csproj|solutionrelative:widesea_storagebasicservices\\stock\\stockinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
+ "AbsoluteMoniker": "D:0:0:{986CA639-B3B4-4D4F-B12B-3D8FBA48B2B1}|WIDESEA_IStorageTaskService\\WIDESEA_IStorageTaskServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_istoragetaskservice\\task\\idt_taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{986CA639-B3B4-4D4F-B12B-3D8FBA48B2B1}|WIDESEA_IStorageTaskService\\WIDESEA_IStorageTaskServices.csproj|solutionrelative:widesea_istoragetaskservice\\task\\idt_taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
"AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_wmsserver\\controllers\\task\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|solutionrelative:widesea_wmsserver\\controllers\\task\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{20D16B32-8186-420C-B3B7-58B183FC09CF}|WIDESEA_OrderServices\\WIDESEA_OrderServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_orderservices\\dt_otheroutboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{20D16B32-8186-420C-B3B7-58B183FC09CF}|WIDESEA_OrderServices\\WIDESEA_OrderServices.csproj|solutionrelative:widesea_orderservices\\dt_otheroutboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
"AbsoluteMoniker": "D:0:0:{9912BD12-4CF7-4A91-8203-47C9C125004C}|WIDESEA_StorageTaskServices\\WIDESEA_StorageTaskServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_storagetaskservices\\task\\dt_taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{9912BD12-4CF7-4A91-8203-47C9C125004C}|WIDESEA_StorageTaskServices\\WIDESEA_StorageTaskServices.csproj|solutionrelative:widesea_storagetaskservices\\task\\dt_taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{929DF936-042C-4EEC-8722-A831FC2F0AEA}|WIDESEA_DTO\\WIDESEA_DTO.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_dto\\stock\\stockselectviewdto.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{929DF936-042C-4EEC-8722-A831FC2F0AEA}|WIDESEA_DTO\\WIDESEA_DTO.csproj|solutionrelative:widesea_dto\\stock\\stockselectviewdto.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{B8B1C352-0398-4A54-B202-D774D48367EB}|WIDESEA_IStorageBasicService\\WIDESEA_IStorageBasicServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_istoragebasicservice\\stock\\istockinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{B8B1C352-0398-4A54-B202-D774D48367EB}|WIDESEA_IStorageBasicService\\WIDESEA_IStorageBasicServices.csproj|solutionrelative:widesea_istoragebasicservice\\stock\\istockinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{929DF936-042C-4EEC-8722-A831FC2F0AEA}|WIDESEA_DTO\\WIDESEA_DTO.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_dto\\stock\\getstockselectviewdto.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{929DF936-042C-4EEC-8722-A831FC2F0AEA}|WIDESEA_DTO\\WIDESEA_DTO.csproj|solutionrelative:widesea_dto\\stock\\getstockselectviewdto.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{929DF936-042C-4EEC-8722-A831FC2F0AEA}|WIDESEA_DTO\\WIDESEA_DTO.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_dto\\order\\outboundordergetdto.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{929DF936-042C-4EEC-8722-A831FC2F0AEA}|WIDESEA_DTO\\WIDESEA_DTO.csproj|solutionrelative:widesea_dto\\order\\outboundordergetdto.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
@@ -54,149 +50,136 @@
"DocumentGroups": [
{
"DockedWidth": 200,
- "SelectedChildIndex": 5,
+ "SelectedChildIndex": 0,
"Children": [
{
"$type": "Document",
- "DocumentIndex": 4,
- "Title": "Dt_InventoryOutboundOrder.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_InventoryOutboundOrder.cs",
- "RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Order\\Dt_InventoryOutboundOrder.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_InventoryOutboundOrder.cs",
- "RelativeToolTip": "WIDESEA_Model\\Models\\Order\\Dt_InventoryOutboundOrder.cs",
- "ViewState": "AgIAAC0AAAAAAAAAAAAcwDwAAABCAAAAAAAAAA==",
+ "DocumentIndex": 0,
+ "Title": "StockInfoDetailService.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageBasicServices\\Stock\\StockInfoDetailService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_StorageBasicServices\\Stock\\StockInfoDetailService.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageBasicServices\\Stock\\StockInfoDetailService.cs",
+ "RelativeToolTip": "WIDESEA_StorageBasicServices\\Stock\\StockInfoDetailService.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAADwvyQAAAAVAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T08:47:34.235Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 5,
- "Title": "Dt_AllocateOutboundOrder.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_AllocateOutboundOrder.cs",
- "RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Order\\Dt_AllocateOutboundOrder.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_AllocateOutboundOrder.cs",
- "RelativeToolTip": "WIDESEA_Model\\Models\\Order\\Dt_AllocateOutboundOrder.cs",
- "ViewState": "AgIAACgAAAAAAAAAAAAYwDwAAABBAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T08:47:15.317Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 6,
- "Title": "IRepository.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\BaseRepository\\IRepository.cs",
- "RelativeDocumentMoniker": "WIDESEA_Core\\BaseRepository\\IRepository.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\BaseRepository\\IRepository.cs",
- "RelativeToolTip": "WIDESEA_Core\\BaseRepository\\IRepository.cs",
- "ViewState": "AgIAADQAAAAAAAAAAAAWwD4AAAAfAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T08:34:10.267Z",
+ "WhenOpened": "2025-10-27T08:40:33.442Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
- "Title": "RepositoryBase.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\BaseRepository\\RepositoryBase.cs",
- "RelativeDocumentMoniker": "WIDESEA_Core\\BaseRepository\\RepositoryBase.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\BaseRepository\\RepositoryBase.cs",
- "RelativeToolTip": "WIDESEA_Core\\BaseRepository\\RepositoryBase.cs",
- "ViewState": "AgIAAEUDAAAAAAAAAAAMwIgDAAAAAAAAAAAAAA==",
+ "Title": "Dt_ProductionOutboundOrderDetailService.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_OrderServices\\Dt_ProductionOutboundOrderDetailService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_OrderServices\\Dt_ProductionOutboundOrderDetailService.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_OrderServices\\Dt_ProductionOutboundOrderDetailService.cs",
+ "RelativeToolTip": "WIDESEA_OrderServices\\Dt_ProductionOutboundOrderDetailService.cs",
+ "ViewState": "AgIAAAwAAAAAAAAAAADwvzsAAAAJAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T08:33:31.849Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 7,
- "Title": "StockInfoService.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
- "RelativeDocumentMoniker": "WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
- "RelativeToolTip": "WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
- "ViewState": "AgIAADoAAAAAAAAAAAAAwI4AAACyAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T08:02:50.452Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 0,
- "Title": "AspNetCoreSchedule.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageTaskServices\\AspNetCoreSchedule.cs",
- "RelativeDocumentMoniker": "WIDESEA_StorageTaskServices\\AspNetCoreSchedule.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageTaskServices\\AspNetCoreSchedule.cs",
- "RelativeToolTip": "WIDESEA_StorageTaskServices\\AspNetCoreSchedule.cs",
- "ViewState": "AgIAALQAAAAAAAAAAAAIwN0AAAAdAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T07:56:23.944Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 2,
- "Title": "Dt_ProductionOutboundOrder.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_ProductionOutboundOrder.cs",
- "RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Order\\Dt_ProductionOutboundOrder.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_ProductionOutboundOrder.cs",
- "RelativeToolTip": "WIDESEA_Model\\Models\\Order\\Dt_ProductionOutboundOrder.cs",
- "ViewState": "AgIAABkAAAAAAAAAAAAqwD0AAABRAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T08:47:48.082Z",
+ "WhenOpened": "2025-10-27T08:39:14.828Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 3,
- "Title": "Dt_OtherOutboundOrder.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_OtherOutboundOrder.cs",
- "RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Order\\Dt_OtherOutboundOrder.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_OtherOutboundOrder.cs",
- "RelativeToolTip": "WIDESEA_Model\\Models\\Order\\Dt_OtherOutboundOrder.cs",
- "ViewState": "AgIAAEcAAAAAAAAAAAAUwGEAAAA+AAAAAAAAAA==",
+ "Title": "IDt_TaskService.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStorageTaskService\\Task\\IDt_TaskService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_IStorageTaskService\\Task\\IDt_TaskService.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStorageTaskService\\Task\\IDt_TaskService.cs",
+ "RelativeToolTip": "WIDESEA_IStorageTaskService\\Task\\IDt_TaskService.cs",
+ "ViewState": "AgIAAIYAAAAAAAAAAAAhwKMAAAAbAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T08:47:40.565Z",
+ "WhenOpened": "2025-10-27T08:33:02.897Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 7,
+ "Title": "IStockInfoService.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStorageBasicService\\Stock\\IStockInfoService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_IStorageBasicService\\Stock\\IStockInfoService.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStorageBasicService\\Stock\\IStockInfoService.cs",
+ "RelativeToolTip": "WIDESEA_IStorageBasicService\\Stock\\IStockInfoService.cs",
+ "ViewState": "AgIAAAYAAAAAAAAAAAAAACAAAAAEAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-10-27T07:22:34.074Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 6,
+ "Title": "StockSelectViewDTO.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_DTO\\Stock\\StockSelectViewDTO.cs",
+ "RelativeDocumentMoniker": "WIDESEA_DTO\\Stock\\StockSelectViewDTO.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_DTO\\Stock\\StockSelectViewDTO.cs",
+ "RelativeToolTip": "WIDESEA_DTO\\Stock\\StockSelectViewDTO.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAuwAoAAAAhAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-10-27T07:18:23.086Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 9,
- "Title": "Dt_OtherOutboundOrderService.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_OrderServices\\Dt_OtherOutboundOrderService.cs",
- "RelativeDocumentMoniker": "WIDESEA_OrderServices\\Dt_OtherOutboundOrderService.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_OrderServices\\Dt_OtherOutboundOrderService.cs",
- "RelativeToolTip": "WIDESEA_OrderServices\\Dt_OtherOutboundOrderService.cs",
- "ViewState": "AgIAALYAAAAAAAAAAAAYwMEAAABAAAAAAAAAAA==",
+ "Title": "OutboundOrderGetDTO.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_DTO\\Order\\OutboundOrderGetDTO.cs",
+ "RelativeDocumentMoniker": "WIDESEA_DTO\\Order\\OutboundOrderGetDTO.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_DTO\\Order\\OutboundOrderGetDTO.cs",
+ "RelativeToolTip": "WIDESEA_DTO\\Order\\OutboundOrderGetDTO.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAsAAAAIAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T07:48:16.97Z",
+ "WhenOpened": "2025-10-27T07:06:24.72Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 8,
+ "Title": "GetStockSelectViewDto.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_DTO\\Stock\\GetStockSelectViewDto.cs",
+ "RelativeDocumentMoniker": "WIDESEA_DTO\\Stock\\GetStockSelectViewDto.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_DTO\\Stock\\GetStockSelectViewDto.cs",
+ "RelativeToolTip": "WIDESEA_DTO\\Stock\\GetStockSelectViewDto.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAuwAoAAAAiAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-10-27T07:06:35.323Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 2,
+ "Title": "StockInfoService.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
+ "RelativeToolTip": "WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
+ "ViewState": "AgIAALgAAAAAAAAAAAAvwH4BAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-10-27T07:05:30.599Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 4,
"Title": "TaskController.cs",
"DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\Task\\TaskController.cs",
"RelativeDocumentMoniker": "WIDESEA_WMSServer\\Controllers\\Task\\TaskController.cs",
"ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\Task\\TaskController.cs",
"RelativeToolTip": "WIDESEA_WMSServer\\Controllers\\Task\\TaskController.cs",
- "ViewState": "AgIAAH4AAAAAAAAAAIAwwJwAAAAaAAAAAAAAAA==",
+ "ViewState": "AgIAAFEAAAAAAAAAAAAvwGEAAAAoAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T07:47:38.514Z",
+ "WhenOpened": "2025-10-27T03:18:50.535Z",
"EditorCaption": ""
},
{
"$type": "Document",
- "DocumentIndex": 10,
+ "DocumentIndex": 5,
"Title": "Dt_TaskService.cs",
"DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs",
"RelativeDocumentMoniker": "WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs",
"ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs",
"RelativeToolTip": "WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs",
- "ViewState": "AgIAAH8DAAAAAAAAAAAAAEoEAAAAAAAAAAAAAA==",
+ "ViewState": "AgIAAEkIAAAAAAAAAAArwGMIAAA7AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T07:04:34.588Z",
+ "WhenOpened": "2025-10-27T02:19:21.099Z",
"EditorCaption": ""
}
]
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json"
index 8473a40..1419ef0 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/v17/DocumentLayout.json"
@@ -3,48 +3,44 @@
"WorkspaceRootPath": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\",
"Documents": [
{
- "AbsoluteMoniker": "D:0:0:{9912BD12-4CF7-4A91-8203-47C9C125004C}|WIDESEA_StorageTaskServices\\WIDESEA_StorageTaskServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_storagetaskservices\\aspnetcoreschedule.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{9912BD12-4CF7-4A91-8203-47C9C125004C}|WIDESEA_StorageTaskServices\\WIDESEA_StorageTaskServices.csproj|solutionrelative:widesea_storagetaskservices\\aspnetcoreschedule.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{4BDE58B2-5B2E-480B-932F-D63C2A7D557C}|WIDESEA_StorageBasicServices\\WIDESEA_StorageBasicServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_storagebasicservices\\stock\\stockinfodetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{4BDE58B2-5B2E-480B-932F-D63C2A7D557C}|WIDESEA_StorageBasicServices\\WIDESEA_StorageBasicServices.csproj|solutionrelative:widesea_storagebasicservices\\stock\\stockinfodetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_core\\baserepository\\repositorybase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|solutionrelative:widesea_core\\baserepository\\repositorybase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_model\\models\\order\\dt_productionoutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|solutionrelative:widesea_model\\models\\order\\dt_productionoutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_model\\models\\order\\dt_otheroutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|solutionrelative:widesea_model\\models\\order\\dt_otheroutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_model\\models\\order\\dt_inventoryoutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|solutionrelative:widesea_model\\models\\order\\dt_inventoryoutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_model\\models\\order\\dt_allocateoutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{00CE9885-9F24-4B6C-A7E8-0DE8C9ED7128}|WIDESEA_Model\\WIDESEA_Model.csproj|solutionrelative:widesea_model\\models\\order\\dt_allocateoutboundorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
- "AbsoluteMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_core\\baserepository\\irepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{111BD7AA-9749-4506-9772-79F9EF14754C}|WIDESEA_Core\\WIDESEA_Core.csproj|solutionrelative:widesea_core\\baserepository\\irepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{20D16B32-8186-420C-B3B7-58B183FC09CF}|WIDESEA_OrderServices\\WIDESEA_OrderServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_orderservices\\dt_productionoutboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{20D16B32-8186-420C-B3B7-58B183FC09CF}|WIDESEA_OrderServices\\WIDESEA_OrderServices.csproj|solutionrelative:widesea_orderservices\\dt_productionoutboundorderdetailservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{4BDE58B2-5B2E-480B-932F-D63C2A7D557C}|WIDESEA_StorageBasicServices\\WIDESEA_StorageBasicServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_storagebasicservices\\stock\\stockinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{4BDE58B2-5B2E-480B-932F-D63C2A7D557C}|WIDESEA_StorageBasicServices\\WIDESEA_StorageBasicServices.csproj|solutionrelative:widesea_storagebasicservices\\stock\\stockinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
+ "AbsoluteMoniker": "D:0:0:{986CA639-B3B4-4D4F-B12B-3D8FBA48B2B1}|WIDESEA_IStorageTaskService\\WIDESEA_IStorageTaskServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_istoragetaskservice\\task\\idt_taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{986CA639-B3B4-4D4F-B12B-3D8FBA48B2B1}|WIDESEA_IStorageTaskService\\WIDESEA_IStorageTaskServices.csproj|solutionrelative:widesea_istoragetaskservice\\task\\idt_taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
"AbsoluteMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_wmsserver\\controllers\\task\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{D81A65B5-47D1-40C1-8FDE-7D24FF003F51}|WIDESEA_WMSServer\\WIDESEA_WMSServer.csproj|solutionrelative:widesea_wmsserver\\controllers\\task\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{20D16B32-8186-420C-B3B7-58B183FC09CF}|WIDESEA_OrderServices\\WIDESEA_OrderServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_orderservices\\dt_otheroutboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{20D16B32-8186-420C-B3B7-58B183FC09CF}|WIDESEA_OrderServices\\WIDESEA_OrderServices.csproj|solutionrelative:widesea_orderservices\\dt_otheroutboundorderservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
- },
- {
"AbsoluteMoniker": "D:0:0:{9912BD12-4CF7-4A91-8203-47C9C125004C}|WIDESEA_StorageTaskServices\\WIDESEA_StorageTaskServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_storagetaskservices\\task\\dt_taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{9912BD12-4CF7-4A91-8203-47C9C125004C}|WIDESEA_StorageTaskServices\\WIDESEA_StorageTaskServices.csproj|solutionrelative:widesea_storagetaskservices\\task\\dt_taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{929DF936-042C-4EEC-8722-A831FC2F0AEA}|WIDESEA_DTO\\WIDESEA_DTO.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_dto\\stock\\stockselectviewdto.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{929DF936-042C-4EEC-8722-A831FC2F0AEA}|WIDESEA_DTO\\WIDESEA_DTO.csproj|solutionrelative:widesea_dto\\stock\\stockselectviewdto.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{B8B1C352-0398-4A54-B202-D774D48367EB}|WIDESEA_IStorageBasicService\\WIDESEA_IStorageBasicServices.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_istoragebasicservice\\stock\\istockinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{B8B1C352-0398-4A54-B202-D774D48367EB}|WIDESEA_IStorageBasicService\\WIDESEA_IStorageBasicServices.csproj|solutionrelative:widesea_istoragebasicservice\\stock\\istockinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{929DF936-042C-4EEC-8722-A831FC2F0AEA}|WIDESEA_DTO\\WIDESEA_DTO.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_dto\\stock\\getstockselectviewdto.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{929DF936-042C-4EEC-8722-A831FC2F0AEA}|WIDESEA_DTO\\WIDESEA_DTO.csproj|solutionrelative:widesea_dto\\stock\\getstockselectviewdto.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{929DF936-042C-4EEC-8722-A831FC2F0AEA}|WIDESEA_DTO\\WIDESEA_DTO.csproj|e:\\get\\duiduojiliku\\\u9879\u76EE\u4EE3\u7801\\wms\\widesea_wmsserver\\widesea_dto\\order\\outboundordergetdto.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{929DF936-042C-4EEC-8722-A831FC2F0AEA}|WIDESEA_DTO\\WIDESEA_DTO.csproj|solutionrelative:widesea_dto\\order\\outboundordergetdto.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
@@ -54,149 +50,136 @@
"DocumentGroups": [
{
"DockedWidth": 200,
- "SelectedChildIndex": 5,
+ "SelectedChildIndex": 0,
"Children": [
{
"$type": "Document",
- "DocumentIndex": 4,
- "Title": "Dt_InventoryOutboundOrder.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_InventoryOutboundOrder.cs",
- "RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Order\\Dt_InventoryOutboundOrder.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_InventoryOutboundOrder.cs",
- "RelativeToolTip": "WIDESEA_Model\\Models\\Order\\Dt_InventoryOutboundOrder.cs",
- "ViewState": "AgIAAC0AAAAAAAAAAAAcwDwAAABCAAAAAAAAAA==",
+ "DocumentIndex": 0,
+ "Title": "StockInfoDetailService.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageBasicServices\\Stock\\StockInfoDetailService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_StorageBasicServices\\Stock\\StockInfoDetailService.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageBasicServices\\Stock\\StockInfoDetailService.cs",
+ "RelativeToolTip": "WIDESEA_StorageBasicServices\\Stock\\StockInfoDetailService.cs",
+ "ViewState": "AgIAAAUAAAAAAAAAAAAwwCQAAAAVAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T08:47:34.235Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 5,
- "Title": "Dt_AllocateOutboundOrder.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_AllocateOutboundOrder.cs",
- "RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Order\\Dt_AllocateOutboundOrder.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_AllocateOutboundOrder.cs",
- "RelativeToolTip": "WIDESEA_Model\\Models\\Order\\Dt_AllocateOutboundOrder.cs",
- "ViewState": "AgIAACgAAAAAAAAAAAAYwDwAAABBAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T08:47:15.317Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 6,
- "Title": "IRepository.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\BaseRepository\\IRepository.cs",
- "RelativeDocumentMoniker": "WIDESEA_Core\\BaseRepository\\IRepository.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\BaseRepository\\IRepository.cs",
- "RelativeToolTip": "WIDESEA_Core\\BaseRepository\\IRepository.cs",
- "ViewState": "AgIAADQAAAAAAAAAAAAWwD4AAAAfAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T08:34:10.267Z",
+ "WhenOpened": "2025-10-27T08:40:33.442Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
- "Title": "RepositoryBase.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\BaseRepository\\RepositoryBase.cs",
- "RelativeDocumentMoniker": "WIDESEA_Core\\BaseRepository\\RepositoryBase.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Core\\BaseRepository\\RepositoryBase.cs",
- "RelativeToolTip": "WIDESEA_Core\\BaseRepository\\RepositoryBase.cs",
- "ViewState": "AgIAAEUDAAAAAAAAAAAMwIgDAAAAAAAAAAAAAA==",
+ "Title": "Dt_ProductionOutboundOrderDetailService.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_OrderServices\\Dt_ProductionOutboundOrderDetailService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_OrderServices\\Dt_ProductionOutboundOrderDetailService.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_OrderServices\\Dt_ProductionOutboundOrderDetailService.cs",
+ "RelativeToolTip": "WIDESEA_OrderServices\\Dt_ProductionOutboundOrderDetailService.cs",
+ "ViewState": "AgIAAAwAAAAAAAAAAADwvzsAAAAJAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T08:33:31.849Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 7,
- "Title": "StockInfoService.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
- "RelativeDocumentMoniker": "WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
- "RelativeToolTip": "WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
- "ViewState": "AgIAADoAAAAAAAAAAAAAwI4AAACyAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T08:02:50.452Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 0,
- "Title": "AspNetCoreSchedule.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageTaskServices\\AspNetCoreSchedule.cs",
- "RelativeDocumentMoniker": "WIDESEA_StorageTaskServices\\AspNetCoreSchedule.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageTaskServices\\AspNetCoreSchedule.cs",
- "RelativeToolTip": "WIDESEA_StorageTaskServices\\AspNetCoreSchedule.cs",
- "ViewState": "AgIAAAgBAAAAAAAAAAAIwDkBAAAXAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T07:56:23.944Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 2,
- "Title": "Dt_ProductionOutboundOrder.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_ProductionOutboundOrder.cs",
- "RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Order\\Dt_ProductionOutboundOrder.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_ProductionOutboundOrder.cs",
- "RelativeToolTip": "WIDESEA_Model\\Models\\Order\\Dt_ProductionOutboundOrder.cs",
- "ViewState": "AgIAABkAAAAAAAAAAAAqwD0AAABRAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T08:47:48.082Z",
+ "WhenOpened": "2025-10-27T08:39:14.828Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 3,
- "Title": "Dt_OtherOutboundOrder.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_OtherOutboundOrder.cs",
- "RelativeDocumentMoniker": "WIDESEA_Model\\Models\\Order\\Dt_OtherOutboundOrder.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_Model\\Models\\Order\\Dt_OtherOutboundOrder.cs",
- "RelativeToolTip": "WIDESEA_Model\\Models\\Order\\Dt_OtherOutboundOrder.cs",
- "ViewState": "AgIAAEcAAAAAAAAAAAAUwGEAAAA+AAAAAAAAAA==",
+ "Title": "IDt_TaskService.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStorageTaskService\\Task\\IDt_TaskService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_IStorageTaskService\\Task\\IDt_TaskService.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStorageTaskService\\Task\\IDt_TaskService.cs",
+ "RelativeToolTip": "WIDESEA_IStorageTaskService\\Task\\IDt_TaskService.cs",
+ "ViewState": "AgIAAIYAAAAAAAAAAAAhwKMAAAAbAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T08:47:40.565Z",
+ "WhenOpened": "2025-10-27T08:33:02.897Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 7,
+ "Title": "IStockInfoService.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStorageBasicService\\Stock\\IStockInfoService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_IStorageBasicService\\Stock\\IStockInfoService.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_IStorageBasicService\\Stock\\IStockInfoService.cs",
+ "RelativeToolTip": "WIDESEA_IStorageBasicService\\Stock\\IStockInfoService.cs",
+ "ViewState": "AgIAAAYAAAAAAAAAAAAAACAAAAAEAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-10-27T07:22:34.074Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 6,
+ "Title": "StockSelectViewDTO.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_DTO\\Stock\\StockSelectViewDTO.cs",
+ "RelativeDocumentMoniker": "WIDESEA_DTO\\Stock\\StockSelectViewDTO.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_DTO\\Stock\\StockSelectViewDTO.cs",
+ "RelativeToolTip": "WIDESEA_DTO\\Stock\\StockSelectViewDTO.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAuwAoAAAAhAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-10-27T07:18:23.086Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 9,
- "Title": "Dt_OtherOutboundOrderService.cs",
- "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_OrderServices\\Dt_OtherOutboundOrderService.cs",
- "RelativeDocumentMoniker": "WIDESEA_OrderServices\\Dt_OtherOutboundOrderService.cs",
- "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_OrderServices\\Dt_OtherOutboundOrderService.cs",
- "RelativeToolTip": "WIDESEA_OrderServices\\Dt_OtherOutboundOrderService.cs",
- "ViewState": "AgIAALYAAAAAAAAAAAAYwMEAAABAAAAAAAAAAA==",
+ "Title": "OutboundOrderGetDTO.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_DTO\\Order\\OutboundOrderGetDTO.cs",
+ "RelativeDocumentMoniker": "WIDESEA_DTO\\Order\\OutboundOrderGetDTO.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_DTO\\Order\\OutboundOrderGetDTO.cs",
+ "RelativeToolTip": "WIDESEA_DTO\\Order\\OutboundOrderGetDTO.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAsAAAAIAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T07:48:16.97Z",
+ "WhenOpened": "2025-10-27T07:06:24.72Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 8,
+ "Title": "GetStockSelectViewDto.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_DTO\\Stock\\GetStockSelectViewDto.cs",
+ "RelativeDocumentMoniker": "WIDESEA_DTO\\Stock\\GetStockSelectViewDto.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_DTO\\Stock\\GetStockSelectViewDto.cs",
+ "RelativeToolTip": "WIDESEA_DTO\\Stock\\GetStockSelectViewDto.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAuwAoAAAAiAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-10-27T07:06:35.323Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 2,
+ "Title": "StockInfoService.cs",
+ "DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
+ "RelativeDocumentMoniker": "WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
+ "ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
+ "RelativeToolTip": "WIDESEA_StorageBasicServices\\Stock\\StockInfoService.cs",
+ "ViewState": "AgIAALgAAAAAAAAAAAAvwH4BAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-10-27T07:05:30.599Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 4,
"Title": "TaskController.cs",
"DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\Task\\TaskController.cs",
"RelativeDocumentMoniker": "WIDESEA_WMSServer\\Controllers\\Task\\TaskController.cs",
"ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_WMSServer\\Controllers\\Task\\TaskController.cs",
"RelativeToolTip": "WIDESEA_WMSServer\\Controllers\\Task\\TaskController.cs",
- "ViewState": "AgIAAH4AAAAAAAAAAIAwwJwAAAAaAAAAAAAAAA==",
+ "ViewState": "AgIAAFEAAAAAAAAAAAAvwGEAAAAoAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T07:47:38.514Z",
+ "WhenOpened": "2025-10-27T03:18:50.535Z",
"EditorCaption": ""
},
{
"$type": "Document",
- "DocumentIndex": 10,
+ "DocumentIndex": 5,
"Title": "Dt_TaskService.cs",
"DocumentMoniker": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs",
"RelativeDocumentMoniker": "WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs",
"ToolTip": "E:\\GET\\DuiDuoJiLiKu\\\u9879\u76EE\u4EE3\u7801\\WMS\\WIDESEA_WMSServer\\WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs",
"RelativeToolTip": "WIDESEA_StorageTaskServices\\Task\\Dt_TaskService.cs",
- "ViewState": "AgIAAH8DAAAAAAAAAAAAAEoEAAAAAAAAAAAAAA==",
+ "ViewState": "AgIAAEkIAAAAAAAAAAArwGMIAAA7AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-10-24T07:04:34.588Z",
+ "WhenOpened": "2025-10-27T02:19:21.099Z",
"EditorCaption": ""
}
]
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Basic/GroupPlate.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Basic/GroupPlate.cs"
index a8f150c..782b283 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Basic/GroupPlate.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Basic/GroupPlate.cs"
@@ -11,5 +11,13 @@
public string palletCode { get; set; }
public List<string> OrderNos { get; set; }
+
+ public List<GroupPlateInfo> groups { get; set; }
+ }
+ public class GroupPlateInfo
+ {
+ public string orderNo { get; set; }
+
+ public decimal quantity { get; set; }
}
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/ERP/Basic.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/ERP/Basic.cs"
index 6b72cfd..eaf318a 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/ERP/Basic.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/ERP/Basic.cs"
@@ -118,7 +118,7 @@
/// <summary>
/// 鏁伴噺
/// </summary>
- public string Qty { get; set; }
+ public decimal Qty { get; set; }
/// <summary>
/// 鍙楃泭閮ㄩ棬缂栧彿
@@ -172,12 +172,12 @@
/// <summary>
/// 鏁伴噺
/// </summary>
- public string Qty { get; set; }
+ public decimal Qty { get; set; }
/// <summary>
/// 鎴愭湰鍗曚环
/// </summary>
- public string CostPrice { get; set; }
+ public decimal CostPrice { get; set; }
}
/// <summary>
@@ -268,24 +268,24 @@
public class returnMaterialList
{
/// <summary>
- /// 鏂欏搧缂栫爜
+ /// 澶囨枡鏄庣粏ID
/// </summary>
- public string ItemCode { get; set; }
+ public string PickListID { get; set; }
/// <summary>
- /// 璋冨叆瀛樺偍鍦扮偣缂栫爜
+ /// 璋冨瓨鍌ㄥ湴鐐圭紪鐮�
/// </summary>
- public string TransInWHCode { get; set; }
+ public string WhCode { get; set; }
/// <summary>
- /// 鏁伴噺
+ /// 閫�鏂欐暟閲�
/// </summary>
- public float TransInQty { get; set; }
+ public decimal RecedeQty { get; set; }
/// <summary>
- /// 璋冨嚭瀛樺偍鍦扮偣缂栫爜
+ /// 閫�鏂欏師鍥�
/// </summary>
- public string TransOutWHCode { get; set; }
+ public int RecedeReason { get; set; }
}
/// <summary>
@@ -308,7 +308,7 @@
/// <summary>
/// 璋冩嫧鏄庣粏
/// </summary>
- public List<returnMaterialList> issueList { get; set; }
+ public List<returnMaterialList> returnMaterialList { get; set; }
/// <summary>
/// 鏄惁瀹℃牳
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/GenerateOutTaskDto.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/GenerateOutTaskDto.cs"
index 64dd2dd..09517c5 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/GenerateOutTaskDto.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/GenerateOutTaskDto.cs"
@@ -16,6 +16,7 @@
public string TargetAddress { get; set; }
public string AreaId { get; set; }
+ public string Warehouse { get; set; }
}
public class StockViewDTO
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/GetStockSelectViewDto.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/GetStockSelectViewDto.cs"
index d9c0b9e..4d27b2f 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/GetStockSelectViewDto.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/GetStockSelectViewDto.cs"
@@ -9,7 +9,7 @@
public class GetStockSelectViewDto
{
public string materielCode { get; set; }
- public string materielName { get; set; }
- public string demandClassification { get; set; }
+
+ public int pageNo { get; set; }
}
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/StockSelectViewDTO.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/StockSelectViewDTO.cs"
index d0a9a2c..25510e2 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/StockSelectViewDTO.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Stock/StockSelectViewDTO.cs"
@@ -8,6 +8,7 @@
{
public class StockSelectViewDTO
{
+ public int Id { get; set; }
public string MaterielCode { get; set; }
public string MaterielName { get; set; }
@@ -17,5 +18,7 @@
public string PalletCode { get; set; }
public string LocationCode { get; set; }
+
+ public decimal Quantity { get; set; }
}
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_InventoryOutboundOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_InventoryOutboundOrderDetailRepository.cs"
deleted file mode 100644
index ac4c22a..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_InventoryOutboundOrderDetailRepository.cs"
+++ /dev/null
@@ -1,8 +0,0 @@
-锘縰sing WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models.Order;
-
-namespace WIDESEA_IOrderRepository;
-
-public interface IDt_InventoryOutboundOrderDetailRepository : IRepository<Dt_InventoryOutboundOrderDetail>
-{
-}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_InventoryOutboundOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_InventoryOutboundOrderRepository.cs"
deleted file mode 100644
index a0bd69f..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_InventoryOutboundOrderRepository.cs"
+++ /dev/null
@@ -1,8 +0,0 @@
-锘縰sing WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models.Order;
-
-namespace WIDESEA_IOrderRepository;
-
-public interface IDt_InventoryOutboundOrderRepository : IRepository<Dt_InventoryOutboundOrder>
-{
-}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_OrderOutDetailsRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_OrderOutDetailsRepository.cs"
new file mode 100644
index 0000000..4326937
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_OrderOutDetailsRepository.cs"
@@ -0,0 +1,8 @@
+锘縰sing WIDESEA_Core.BaseRepository;
+using WIDESEA_Model.Models.Order;
+
+namespace WIDESEA_IOrderRepository;
+
+public interface IDt_OrderOutDetailsRepository : IRepository<Dt_OrderOutDetails>
+{
+}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_OtherOutboundOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_OtherOutboundOrderDetailRepository.cs"
deleted file mode 100644
index f88d344..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_OtherOutboundOrderDetailRepository.cs"
+++ /dev/null
@@ -1,8 +0,0 @@
-锘縰sing WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models.Order;
-
-namespace WIDESEA_IOrderRepository;
-
-public interface IDt_OtherOutboundOrderDetailRepository : IRepository<Dt_OtherOutboundOrderDetail>
-{
-}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_OtherOutboundOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_OtherOutboundOrderRepository.cs"
deleted file mode 100644
index 5c70716..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderRepository/IDt_OtherOutboundOrderRepository.cs"
+++ /dev/null
@@ -1,8 +0,0 @@
-锘縰sing WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models.Order;
-
-namespace WIDESEA_IOrderRepository;
-
-public interface IDt_OtherOutboundOrderRepository : IRepository<Dt_OtherOutboundOrder>
-{
-}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_InboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_InboundOrderService.cs"
index 89afa9c..af43aa9 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_InboundOrderService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_InboundOrderService.cs"
@@ -1,4 +1,5 @@
-锘縰sing WIDESEA_Core.BaseServices;
+锘縰sing WIDESEA_Core;
+using WIDESEA_Core.BaseServices;
using WIDESEA_DTO;
using WIDESEA_Model.Models.Order;
@@ -6,6 +7,6 @@
public interface IDt_InboundOrderService : IService<Dt_InboundOrder>
{
-
-
+
+ WebResponseContent GetInboundOrderInfo(string OrderNo);
}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_InventoryOutboundOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_InventoryOutboundOrderDetailService.cs"
deleted file mode 100644
index 14d148e..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_InventoryOutboundOrderDetailService.cs"
+++ /dev/null
@@ -1,11 +0,0 @@
-锘縰sing WIDESEA_Core.BaseServices;
-using WIDESEA_DTO;
-using WIDESEA_Model.Models.Order;
-
-namespace WIDESEA_IOrderServices;
-
-public interface IDt_InventoryOutboundOrderDetailService : IService<Dt_InventoryOutboundOrderDetail>
-{
-
-
-}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_InventoryOutboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_InventoryOutboundOrderService.cs"
deleted file mode 100644
index b3ae3b7..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_InventoryOutboundOrderService.cs"
+++ /dev/null
@@ -1,22 +0,0 @@
-锘縰sing WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO;
-using WIDESEA_DTO.Order;
-using WIDESEA_DTO.Stock;
-using WIDESEA_Model.Models.Order;
-
-namespace WIDESEA_IOrderServices;
-
-public interface IDt_InventoryOutboundOrderService : IService<Dt_InventoryOutboundOrder>
-{
- WebResponseContent GetInventoryOutboundOrder(OutboundOrderGetDTO outboundOrderGetDTO);
-
- WebResponseContent GetInventoryOutboundOrderDetail(OutboundOrderGetDTO outboundOrderGetDTO);
-
- /// <summary>
- /// 鏍规嵁璇锋眰鍑哄簱浠诲姟
- /// </summary>
- /// <param name="requestOut"></param>
- /// <returns></returns>
- Task<WebResponseContent> GenerateInventoryOutboundTask(GenerateOutTaskDto requestOut);
-}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_OrderOutDetailsService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_OrderOutDetailsService.cs"
new file mode 100644
index 0000000..2102684
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_OrderOutDetailsService.cs"
@@ -0,0 +1,11 @@
+锘縰sing WIDESEA_Core.BaseServices;
+using WIDESEA_DTO;
+using WIDESEA_Model.Models.Order;
+
+namespace WIDESEA_IOrderServices;
+
+public interface IDt_OrderOutDetailsService : IService<Dt_OrderOutDetails>
+{
+
+
+}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_OtherOutboundOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_OtherOutboundOrderDetailService.cs"
deleted file mode 100644
index 58e6342..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_OtherOutboundOrderDetailService.cs"
+++ /dev/null
@@ -1,11 +0,0 @@
-锘縰sing WIDESEA_Core.BaseServices;
-using WIDESEA_DTO;
-using WIDESEA_Model.Models.Order;
-
-namespace WIDESEA_IOrderServices;
-
-public interface IDt_OtherOutboundOrderDetailService : IService<Dt_OtherOutboundOrderDetail>
-{
-
-
-}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_OtherOutboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_OtherOutboundOrderService.cs"
deleted file mode 100644
index 968a395..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IOrderServices/IDt_OtherOutboundOrderService.cs"
+++ /dev/null
@@ -1,22 +0,0 @@
-锘縰sing WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO;
-using WIDESEA_DTO.Order;
-using WIDESEA_DTO.Stock;
-using WIDESEA_Model.Models.Order;
-
-namespace WIDESEA_IOrderServices;
-
-public interface IDt_OtherOutboundOrderService : IService<Dt_OtherOutboundOrder>
-{
- WebResponseContent GetOtherOutboundOrder(OutboundOrderGetDTO outboundOrderGetDTO);
-
- WebResponseContent GetOtherOutboundOrderDetail(OutboundOrderGetDTO outboundOrderGetDTO);
-
- /// <summary>
- /// 鏍规嵁璇锋眰鍑哄簱浠诲姟
- /// </summary>
- /// <param name="requestOut"></param>
- /// <returns></returns>
- Task<WebResponseContent> GenerateOtherOutboundTask(GenerateOutTaskDto requestOut);
-}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageBasicService/Boxing/IBoxingInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageBasicService/Boxing/IBoxingInfoService.cs"
index 7cf9f4b..c31d8c5 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageBasicService/Boxing/IBoxingInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageBasicService/Boxing/IBoxingInfoService.cs"
@@ -5,4 +5,7 @@
public interface IBoxingInfoService : IService<DtBoxingInfo>
{
+ Task<WebResponseContent> AddGroupPlateAsync(GroupPlate groupPlate);
+
+ Task<WebResponseContent> DeleteGroupPlateAsync(GroupPlate groupPlate);
}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageBasicService/Stock/IStockInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageBasicService/Stock/IStockInfoService.cs"
index 978c813..0f2ab58 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageBasicService/Stock/IStockInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageBasicService/Stock/IStockInfoService.cs"
@@ -6,11 +6,12 @@
public interface IStockInfoService : IService<DtStockInfo>
{
/// <summary>
- /// 鏍规嵁鐗╂枡缂栫爜鑾峰彇搴撳瓨鍙敤閲忚鍥�
+ /// 搴撳瓨瑙嗗浘
/// </summary>
- /// <param name="materielCode"></param>
+ /// <param name="viewDto"></param>
/// <returns></returns>
List<StockSelectViewDTO> GetStockSelectViews(GetStockSelectViewDto viewDto);
+
List<DtLocationInfo> GetStockLocations(List<DtLocationInfo>? locations);
@@ -28,10 +29,7 @@
/// <returns></returns>
Task<WebResponseContent> DeleteGroupPlateAsync(GroupPlate groupPlate);
- /// <summary>
- /// 鏍规嵁璇锋眰鍑哄簱浠诲姟
- /// </summary>
- /// <param name="requestOut"></param>
- /// <returns></returns>
- Task<WebResponseContent> GenerateOutboundTask(GenerateOutTaskDto requestOut);
+
+ WebResponseContent GetStockView(GetStockSelectViewDto viewDto);
+
}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskService/Task/IDt_TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskService/Task/IDt_TaskService.cs"
index 3ff679a..ebc390a 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskService/Task/IDt_TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskService/Task/IDt_TaskService.cs"
@@ -96,7 +96,11 @@
/// </summary>
/// <param name="palletCode"></param>
/// <returns></returns>
- Task<WebResponseContent> OtherOutBoundTaskAsync(string palletCode);
+ Task<WebResponseContent> OutBoundTaskAsync(string palletCode);
+
+ (List<DtLocationStatusChangeRecord>, List<DtLocationInfo>) GetlcoationState(List<Dt_Task> tasks, int StatusChangeTypeEnum);
+
+ (List<DtLocationStatusChangeRecord>, List<DtLocationInfo>) GetlcoationState(Dt_Task task, int StatusChangeTypeEnum);
/// <summary>
@@ -155,4 +159,7 @@
(List<DtLocationStatusChangeRecord>, List<DtLocationInfo>) UpdateLocationStatus(DtLocationInfo location, LocationEnum locationStatus, int taskNum, int StatusChangeType);
(List<DtLocationStatusChangeRecord>, List<DtLocationInfo>) UpdateLocationStatus(string locationCode, LocationEnum locationStatus, int taskNum, int StatusChangeType);
+
+
+ bool LocationIsOutBound(DtLocationInfo location);
}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtBoxingInfo.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtBoxingInfo.cs"
index 56f77b4..b6fc21c 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtBoxingInfo.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtBoxingInfo.cs"
@@ -28,11 +28,10 @@
public string LocationCode { get; set; }
/// <summary>
- /// 鏄惁婊$洏
+ /// 鏄惁鏁村嚭
/// </summary>
- [Required]
- [SugarColumn(IsNullable = true, ColumnDescription = "鏄惁婊$洏")]
- public bool IsFull { get; set; } = true;
+ [SugarColumn(IsNullable = true, ColumnDescription = "鏄惁鏁村嚭")]
+ public bool IsFullExit { get; set; } = true;
/// <summary>
/// 鐘舵��
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtBoxingInfo_Hty.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtBoxingInfo_Hty.cs"
index edc5b84..c0a30a7 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtBoxingInfo_Hty.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtBoxingInfo_Hty.cs"
@@ -29,11 +29,10 @@
public string LocationCode { get; set; }
/// <summary>
- /// 鏄惁婊$洏
+ /// 鏄惁鏁村嚭
/// </summary>
- [Required]
- [SugarColumn(IsNullable = true, ColumnDescription = "鏄惁婊$洏")]
- public bool IsFull { get; set; } = true;
+ [SugarColumn(IsNullable = true, ColumnDescription = "鏄惁鏁村嚭")]
+ public bool IsFullExit { get; set; } = true;
/// <summary>
/// 鐘舵��
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo.cs"
index 1396f41..4d1a0c8 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo.cs"
@@ -33,10 +33,10 @@
public string LocationCode { get; set; }
/// <summary>
- /// 鏄惁婊$洏
+ /// 鏄惁鏁村嚭
/// </summary>
- [SugarColumn(IsNullable = true, ColumnDescription = "鏄惁婊$洏")]
- public bool IsFull { get; set; } = true;
+ [SugarColumn(IsNullable = true, ColumnDescription = "鏄惁鏁村嚭")]
+ public bool IsFullExit { get; set; } = true;
/// <summary>
/// 鐘舵��
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfoDetail.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfoDetail.cs"
index d2cb05b..a061515 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfoDetail.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfoDetail.cs"
@@ -51,7 +51,7 @@
public string Warehouse { get; set; }
/// <summary>
- /// 鍗曟嵁缂栧彿 / 閫氶亾
+ /// 鍗曟嵁缂栧彿
/// </summary>
[Required]
[SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鍗曟嵁缂栧彿")]
@@ -108,8 +108,8 @@
public string Date { get; set; }
/// <summary>
- /// 澶囨敞
+ /// 璋冩嫧浠撳簱
/// </summary>
- [SugarColumn(IsNullable = true, ColumnDescription = "澶囨敞")]
+ [SugarColumn(IsNullable = true, ColumnDescription = "璋冩嫧浠撳簱")]
public string Remark { get; set; }
}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo_Hty.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo_Hty.cs"
index 1527ec0..a51a63f 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo_Hty.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo_Hty.cs"
@@ -29,11 +29,10 @@
public string LocationCode { get; set; }
/// <summary>
- /// 鏄惁婊$洏
+ /// 鏄惁鏁村嚭
/// </summary>
- [Required]
- [SugarColumn(IsNullable = true, ColumnDescription = "鏄惁婊$洏")]
- public bool IsFull { get; set; } = true;
+ [SugarColumn(IsNullable = true, ColumnDescription = "鏄惁鏁村嚭")]
+ public bool IsFullExit { get; set; } = true;
/// <summary>
/// 鐘舵��
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\347\224\250\345\217\213\345\267\245\347\250\213\345\217\221\350\264\247\345\215\225\344\270\200\350\247\210\350\241\250_ST.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\347\224\250\345\217\213\345\267\245\347\250\213\345\217\221\350\264\247\345\215\225\344\270\200\350\247\210\350\241\250_ST.cs"
index b12e8f8..97a764e 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\347\224\250\345\217\213\345\267\245\347\250\213\345\217\221\350\264\247\345\215\225\344\270\200\350\247\210\350\241\250_ST.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\347\224\250\345\217\213\345\267\245\347\250\213\345\217\221\350\264\247\345\215\225\344\270\200\350\247\210\350\241\250_ST.cs"
@@ -15,7 +15,7 @@
public string 瀛愪欢鏂欏彿 { get; set; }
public string 瀛愪欢鍝佸悕 { get; set; }
public string 瀛愪欢瑙勬牸 { get; set; }
- public string 瀛愪欢鍗曢噸 { get; set; }
+ public decimal 瀛愪欢鍗曢噸 { get; set; }
public string 瀛愪欢鍗曚綅 { get; set; }
public string 鐢ㄥ弸鏉愯川 { get; set; }
public string 鎵ц鏍囧噯鍙� { get; set; }
@@ -25,5 +25,6 @@
public decimal 瀛愪欢鏈彂鏁伴噺 { get; set; }
public string 鐘舵�� { get; set; }
public string 璁㈠崟鏂欏彿 { get; set; }
+ public string 璁㈠崟瑙勬牸 { get; set; }
}
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\347\224\250\345\217\213\347\224\237\344\272\247\351\242\206\346\226\231\345\215\225\344\270\200\350\247\210\350\241\250_ST.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\347\224\250\345\217\213\347\224\237\344\272\247\351\242\206\346\226\231\345\215\225\344\270\200\350\247\210\350\241\250_ST.cs"
index 79d1be1..f1833c6 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\347\224\250\345\217\213\347\224\237\344\272\247\351\242\206\346\226\231\345\215\225\344\270\200\350\247\210\350\241\250_ST.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\347\224\250\345\217\213\347\224\237\344\272\247\351\242\206\346\226\231\345\215\225\344\270\200\350\247\210\350\241\250_ST.cs"
@@ -15,7 +15,7 @@
public string 瀛愪欢鏂欏彿 { get; set; }
public string 瀛愪欢鍝佸悕 { get; set; }
public string 瀛愪欢瑙勬牸 { get; set; }
- public string 瀛愪欢鍗曢噸 { get; set; }
+ public decimal 瀛愪欢鍗曢噸 { get; set; }
public string 瀛愪欢鍗曚綅 { get; set; }
public string 鐢ㄥ弸鏉愯川 { get; set; }
public string 鎵ц鏍囧噯鍙� { get; set; }
@@ -25,5 +25,6 @@
public decimal 瀛愪欢鏈彂鏁伴噺 { get; set; }
public string 鐘舵�� { get; set; }
public string 璁㈠崟鏂欏彿 { get; set; }
+ //public string 璁㈠崟瑙勬牸 { get; set; }
}
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\347\224\250\345\217\213\347\224\265\346\216\247\346\237\234\350\260\203\346\213\250\344\270\200\350\247\210\350\241\250_ST.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\347\224\250\345\217\213\347\224\265\346\216\247\346\237\234\350\260\203\346\213\250\344\270\200\350\247\210\350\241\250_ST.cs"
index 901c599..28aacdf 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\347\224\250\345\217\213\347\224\265\346\216\247\346\237\234\350\260\203\346\213\250\344\270\200\350\247\210\350\241\250_ST.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\347\224\250\345\217\213\347\224\265\346\216\247\346\237\234\350\260\203\346\213\250\344\270\200\350\247\210\350\241\250_ST.cs"
@@ -15,7 +15,7 @@
public string 瀛愪欢鏂欏彿 { get; set; }
public string 瀛愪欢鍝佸悕 { get; set; }
public string 瀛愪欢瑙勬牸 { get; set; }
- public string 瀛愪欢鍗曢噸 { get; set; }
+ public decimal 瀛愪欢鍗曢噸 { get; set; }
public string 瀛愪欢鍗曚綅 { get; set; }
public string 鐢ㄥ弸鏉愯川 { get; set; }
public string 鎵ц鏍囧噯鍙� { get; set; }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\351\207\207\350\264\255\345\205\245\346\210\220\345\223\201\345\205\245\345\272\223\350\207\252\345\212\250\346\211\223\345\215\260\346\270\205\345\215\225_ST.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\351\207\207\350\264\255\345\205\245\346\210\220\345\223\201\345\205\245\345\272\223\350\207\252\345\212\250\346\211\223\345\215\260\346\270\205\345\215\225_ST.cs"
index f1588ef..dd672fc 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\351\207\207\350\264\255\345\205\245\346\210\220\345\223\201\345\205\245\345\272\223\350\207\252\345\212\250\346\211\223\345\215\260\346\270\205\345\215\225_ST.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\351\207\207\350\264\255\345\205\245\346\210\220\345\223\201\345\205\245\345\272\223\350\207\252\345\212\250\346\211\223\345\215\260\346\270\205\345\215\225_ST.cs"
@@ -23,5 +23,9 @@
public string 鐢ㄥ弸鏉愯川 { get; set; }
public decimal 鍏ュ簱鏁伴噺 { get; set; }
public string 鍗曟嵁鐘舵�� { get; set; }
+
+ public string 鎵ц鏍囧噯鍙� { get; set; }
+ public string 鍞竴ID { get; set; }
+ public string 鏂欏彿ID { get; set; }
}
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\351\207\207\350\264\255\345\217\212\346\210\220\345\223\201\345\205\245\345\272\223\346\270\205\345\215\225_ST.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\351\207\207\350\264\255\345\217\212\346\210\220\345\223\201\345\205\245\345\272\223\346\270\205\345\215\225_ST.cs"
index 5941262..3c0c4c9 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\351\207\207\350\264\255\345\217\212\346\210\220\345\223\201\345\205\245\345\272\223\346\270\205\345\215\225_ST.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/ERP/WMS_\351\207\207\350\264\255\345\217\212\346\210\220\345\223\201\345\205\245\345\272\223\346\270\205\345\215\225_ST.cs"
@@ -11,6 +11,7 @@
public string 鍗曞彿 { get; set; }
public string 闇�姹傚垎绫� { get; set; }
public string 鍗曟嵁绫诲瀷 { get; set; }
+ public string 鍏ュ簱浠撳簱缂栫爜 { get; set; }
public string 鍏ュ簱浠撳簱鍚嶇О { get; set; }
public string 鏃ユ湡 { get; set; }
public int 琛屽彿 { get; set; }
@@ -23,5 +24,8 @@
public string 鐢ㄥ弸鏉愯川 { get; set; }
public decimal 鍏ュ簱鏁伴噺 { get; set; }
public string 鍗曟嵁鐘舵�� { get; set; }
+ public string 鎵ц鏍囧噯鍙� { get; set; }
+ public string 鍞竴ID { get; set; }
+ public string 鏂欏彿ID { get; set; }
}
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_AllocateOutboundOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_AllocateOutboundOrder.cs"
index 6928021..f5167c5 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_AllocateOutboundOrder.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_AllocateOutboundOrder.cs"
@@ -28,7 +28,35 @@
/// </summary>
[SugarColumn(ColumnName = "UpperOrderNo", Length = 255)]
public string UpperOrderNo { get; set; }
-
+
+ /// <summary>
+ /// 闇�姹傚垎绫�
+ /// </summary>
+
+ [SugarColumn(ColumnName = "OrderName", Length = 255)]
+ public string OrderName { get; set; }
+
+ /// <summary>
+ /// 闇�姹傚垎绫�
+ /// </summary>
+
+ [SugarColumn(ColumnName = "DemandClassification", Length = 255)]
+ public string DemandClassification { get; set; }
+
+ /// <summary>
+ /// 璁㈠崟鏂欏彿
+ /// </summary>
+
+ [SugarColumn(ColumnName = "OrderPartNumber", Length = 255)]
+ public string OrderPartNumber { get; set; }
+
+ /// <summary>
+ /// 璁㈠崟瑙勬牸
+ /// </summary>
+
+ [SugarColumn(ColumnName = "OrderSpec", Length = 255)]
+ public string OrderSpec { get; set; }
+
/// <summary>
/// 鍗曟嵁绫诲瀷
/// </summary>
@@ -56,10 +84,10 @@
public string Remark { get; set; }
/// <summary>
- /// 璋冩嫧鍑哄簱璁㈠崟鏄庣粏
+ /// 鐢熶骇棰嗘枡鍑哄簱璁㈠崟鏄庣粏
/// </summary>
[SugarColumn(ColumnName = "Dt_AllocateOutboundOrderDetail")]
- [Navigate(NavigateType.OneToMany, nameof(Dt_AllocateOutboundOrderDetail.OrderId))]
+ [Navigate(NavigateType.OneToMany, nameof(Dt_AllocateOutboundOrderDetail.OrderId),nameof(Id))]
public List<Dt_AllocateOutboundOrderDetail>? Details { get; set; }
}
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_AllocateOutboundOrderDetail.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_AllocateOutboundOrderDetail.cs"
index 95580fc..578a0ec 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_AllocateOutboundOrderDetail.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_AllocateOutboundOrderDetail.cs"
@@ -36,11 +36,16 @@
public string MaterielName { get; set; }
/// <summary>
- /// 闇�姹傚垎绫�
+ /// 瑙勬牸
/// </summary>
+ [SugarColumn(ColumnName = "Specs", Length = 255)]
+ public string Specs { get; set; }
- [SugarColumn(ColumnName = "DemandClassification", Length = 255)]
- public string DemandClassification { get; set; }
+ /// <summary>
+ /// 鍗曢噸
+ /// </summary>
+ [SugarColumn(ColumnName = "Weight")]
+ public decimal Weight { get; set; }
/// <summary>
/// 鍑哄簱鏁伴噺
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_InventoryOutboundOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_InventoryOutboundOrder.cs"
deleted file mode 100644
index bd6855c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_InventoryOutboundOrder.cs"
+++ /dev/null
@@ -1,65 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models.Order
-{
- /// <summary>
- /// 鐩樼偣鍑哄簱鍗�
- ///</summary>
- [SugarTable("Dt_InventoryOutboundOrder")]
- public class Dt_InventoryOutboundOrder : BaseEntity
- {
- [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
- public int Id { get; set; }
-
- /// <summary>
- /// 鍗曟嵁缂栧彿
- /// </summary>
- [SugarColumn(ColumnName = "OrderNo", Length = 255)]
- public string OrderNo { get; set; }
-
- /// <summary>
- /// 涓婃父鍗曟嵁缂栧彿
- /// </summary>
- [SugarColumn(ColumnName = "UpperOrderNo", Length = 255)]
- public string UpperOrderNo { get; set; }
-
- /// <summary>
- /// 鍗曟嵁绫诲瀷
- /// </summary>
-
- [SugarColumn(ColumnName = "OrderType")]
- public int OrderType { get; set; }
-
- /// <summary>
- /// 鍗曟嵁鐘舵��
- /// </summary>
- [SugarColumn(ColumnName = "OrderStatus")]
- public int OrderStatus { get; set; }
-
-
- /// <summary>
- /// 鍒涘缓鏂瑰紡
- /// </summary>
- [SugarColumn(ColumnName = "CreateType")]
- public int CreateType { get; set; }
-
- /// <summary>
- /// 澶囨敞
- /// </summary>
- [SugarColumn(ColumnName = "Remark", Length = 255)]
- public string Remark { get; set; }
-
- /// <summary>
- /// 鐩樼偣鍑哄簱璁㈠崟鏄庣粏
- /// </summary>
- [SugarColumn(ColumnName = "Dt_InventoryOutboundOrderDetail")]
- [Navigate(NavigateType.OneToMany, nameof(Dt_InventoryOutboundOrderDetail.OrderId))]
- public List<Dt_InventoryOutboundOrderDetail>? Details { get; set; }
- }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_InventoryOutboundOrderDetail.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_InventoryOutboundOrderDetail.cs"
deleted file mode 100644
index d9b6508..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_InventoryOutboundOrderDetail.cs"
+++ /dev/null
@@ -1,76 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models.Order
-{
- /// <summary>
- /// 鐩樼偣鍑哄簱鍗曟嵁鏄庣粏琛�
- ///</summary>
- [SugarTable("Dt_InventoryOutboundOrderDetail")]
- public class Dt_InventoryOutboundOrderDetail : BaseEntity
- {
- [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
- public int Id { get; set; }
-
- /// <summary>
- /// 鍑哄簱鍗曟嵁涓婚敭ID
- /// </summary>
- [SugarColumn(ColumnName = "OrderId", Length = 255)]
- public int OrderId { get; set; }
-
- /// <summary>
- /// 鐗╂枡缂栫爜
- /// </summary>
- [SugarColumn(ColumnName = "MaterielCode", Length = 255)]
- public string MaterielCode { get; set; }
-
- /// <summary>
- /// 鐗╂枡鍚嶇О
- /// </summary>
- [SugarColumn(ColumnName = "MaterielName", Length = 255)]
- public string MaterielName { get; set; }
-
- /// <summary>
- /// 闇�姹傚垎绫�
- /// </summary>
-
- [SugarColumn(ColumnName = "DemandClassification", Length = 255)]
- public string DemandClassification { get; set; }
-
- /// <summary>
- /// 鍑哄簱鏁伴噺
- /// </summary>
- [SugarColumn(ColumnName = "OrderQuantity")]
- public decimal OrderQuantity { get; set; }
-
-
- /// <summary>
- /// 鏈嚭搴撴暟閲�
- /// </summary>
- [SugarColumn(ColumnName = "NotOutQuantity")]
- public decimal NotOutQuantity { get; set; }
-
- /// <summary>
- /// 宸插嚭搴撴暟閲�
- /// </summary>
- [SugarColumn(ColumnName = "OverOutQuantity")]
- public decimal OverOutQuantity { get; set; }
-
- /// <summary>
- /// 鍗曟嵁鏄庣粏鐘舵��
- /// </summary>
- [SugarColumn(ColumnName = "OrderDetailStatus")]
- public int OrderDetailStatus { get; set; }
-
- /// <summary>
- /// 澶囨敞
- /// </summary>
- [SugarColumn(ColumnName = "Remark", Length = 255)]
- public string Remark { get; set; }
- }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_OrderOutDetails.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_OrderOutDetails.cs"
new file mode 100644
index 0000000..4612682
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_OrderOutDetails.cs"
@@ -0,0 +1,75 @@
+锘縰sing SqlSugar;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEA_Core.DB.Models;
+
+namespace WIDESEA_Model.Models.Order
+{
+ /// <summary>
+ /// 鍑哄簱鍗曟嵁璇︽儏
+ ///</summary>
+ [SugarTable("Dt_OrderOutDetails")]
+ public class Dt_OrderOutDetails : BaseEntity
+ {
+ [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
+ public int Id { get; set; }
+
+ /// <summary>
+ /// 鍗曟嵁缂栧彿
+ /// </summary>
+ [SugarColumn(ColumnName = "OrderNo", Length = 255)]
+ public string OrderNo { get; set; }
+
+ /// <summary>
+ /// 鎵樼洏缂栫爜
+ /// </summary>
+ [SugarColumn(ColumnName = "PalletCode", Length = 255)]
+ public string PalletCode { get; set; }
+
+ /// <summary>
+ /// 鍗曟嵁绫诲瀷
+ /// </summary>
+ [SugarColumn(ColumnName = "OrderType", Length = 255)]
+ public int OrderType { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡缂栫爜
+ /// </summary>
+ [SugarColumn(ColumnName = "MaterielCode", Length = 255)]
+ public string MaterielCode { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡鍚嶇О
+ /// </summary>
+ [SugarColumn(ColumnName = "MaterielName", Length = 255)]
+ public string MaterielName { get; set; }
+
+ /// <summary>
+ /// 鎵�鍦ㄤ粨搴�
+ /// </summary>
+ [SugarColumn(ColumnName = "Warehouse", Length = 255)]
+ public string Warehouse { get; set; }
+
+ /// <summary>
+ /// 璋冩嫧浠撳簱
+ /// </summary>
+ [SugarColumn(ColumnName = "AllocateWarehouse",Length =255)]
+ public string AllocateWarehouse { get; set; }
+
+ /// <summary>
+ /// 鍑哄簱鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "OutboundQuantity")]
+ public decimal OutboundQuantity { get; set; }
+
+ /// <summary>
+ /// 澶囨敞
+ /// </summary>
+ [SugarColumn(ColumnName = "Remark", Length = 255)]
+ public string Remark { get; set; }
+
+ }
+}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_OrderOutDetails_Hty.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_OrderOutDetails_Hty.cs"
new file mode 100644
index 0000000..32e57b2
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_OrderOutDetails_Hty.cs"
@@ -0,0 +1,75 @@
+锘縰sing SqlSugar;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEA_Core.DB.Models;
+
+namespace WIDESEA_Model.Models.Order
+{
+ /// <summary>
+ /// 鍑哄簱鍗曟嵁璇︽儏
+ ///</summary>
+ [SugarTable("Dt_OrderOutDetails_Hty")]
+ public class Dt_OrderOutDetails_Hty : BaseEntity
+ {
+ [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
+ public int Id { get; set; }
+
+ /// <summary>
+ /// 鍗曟嵁缂栧彿
+ /// </summary>
+ [SugarColumn(ColumnName = "OrderNo", Length = 255)]
+ public string OrderNo { get; set; }
+
+ /// <summary>
+ /// 鎵樼洏缂栫爜
+ /// </summary>
+ [SugarColumn(ColumnName = "PalletCode", Length = 255)]
+ public string PalletCode { get; set; }
+
+ /// <summary>
+ /// 鍗曟嵁绫诲瀷
+ /// </summary>
+ [SugarColumn(ColumnName = "OrderType", Length = 255)]
+ public int OrderType { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡缂栫爜
+ /// </summary>
+ [SugarColumn(ColumnName = "MaterielCode", Length = 255)]
+ public string MaterielCode { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡鍚嶇О
+ /// </summary>
+ [SugarColumn(ColumnName = "MaterielName", Length = 255)]
+ public string MaterielName { get; set; }
+
+ /// <summary>
+ /// 鎵�鍦ㄤ粨搴�
+ /// </summary>
+ [SugarColumn(ColumnName = "Warehouse", Length = 255)]
+ public string Warehouse { get; set; }
+
+ /// <summary>
+ /// 璋冩嫧浠撳簱
+ /// </summary>
+ [SugarColumn(ColumnName = "AllocateWarehouse",Length =255)]
+ public string AllocateWarehouse { get; set; }
+
+ /// <summary>
+ /// 鍑哄簱鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "OutboundQuantity")]
+ public decimal OutboundQuantity { get; set; }
+
+ /// <summary>
+ /// 澶囨敞
+ /// </summary>
+ [SugarColumn(ColumnName = "Remark", Length = 255)]
+ public string Remark { get; set; }
+
+ }
+}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_OtherOutboundOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_OtherOutboundOrder.cs"
deleted file mode 100644
index 57e2a31..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_OtherOutboundOrder.cs"
+++ /dev/null
@@ -1,102 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models.Order
-{
- /// <summary>
- /// 鍏朵粬鍑哄簱鍗�
- ///</summary>
- [SugarTable("Dt_OtherOutboundOrder")]
- public class Dt_OtherOutboundOrder : BaseEntity
- {
- [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
- public int Id { get; set; }
-
- /// <summary>
- /// 鍗曟嵁缂栧彿
- /// </summary>
- [SugarColumn(ColumnName = "OrderNo", Length = 255)]
- public string OrderNo { get; set; }
-
- /// <summary>
- /// 涓婃父鍗曟嵁缂栧彿
- /// </summary>
- [SugarColumn(ColumnName = "UpperOrderNo", Length = 255)]
- public string UpperOrderNo { get; set; }
-
- ///// <summary>
- ///// 鐗╂枡缂栫爜
- ///// </summary>
- //[SugarColumn(ColumnName = "MaterielCode", Length = 255)]
- //public string MaterielCode { get; set; }
-
- ///// <summary>
- ///// 鐗╂枡鍚嶇О
- ///// </summary>
- //[SugarColumn(ColumnName = "MaterielName", Length = 255)]
- //public string MaterielName { get; set; }
-
- ///// <summary>
- ///// 闇�姹傚垎绫�
- ///// </summary>
-
- //[SugarColumn(ColumnName = "DemandClassification", Length = 255)]
- //public string DemandClassification { get; set; }
-
- ///// <summary>
- ///// 鍑哄簱鏁伴噺
- ///// </summary>
- //[SugarColumn(ColumnName = "OrderQuantity")]
- //public decimal OrderQuantity { get; set; }
-
- ///// <summary>
- ///// 宸插嚭搴撴暟閲�
- ///// </summary>
- //[SugarColumn(ColumnName = "OverOutQuantity")]
- //public decimal OverOutQuantity { get; set; }
-
- ///// <summary>
- ///// 鏈嚭搴撴暟閲�
- ///// </summary>
- //[SugarColumn(ColumnName = "NotOutQuantity")]
- //public decimal NotOutQuantity { get; set; }
-
- /// <summary>
- /// 鍗曟嵁绫诲瀷
- /// </summary>
-
- [SugarColumn(ColumnName = "OrderType")]
- public int OrderType { get; set; }
-
- /// <summary>
- /// 鍗曟嵁鐘舵��
- /// </summary>
- [SugarColumn(ColumnName = "OrderStatus")]
- public int OrderStatus { get; set; }
-
-
- /// <summary>
- /// 鍒涘缓鏂瑰紡
- /// </summary>
- [SugarColumn(ColumnName = "CreateType")]
- public int CreateType { get; set; }
-
- /// <summary>
- /// 澶囨敞
- /// </summary>
- [SugarColumn(ColumnName = "Remark", Length = 255)]
- public string Remark { get; set; }
-
- /// <summary>
- /// 鍏朵粬鍑哄簱璁㈠崟鏄庣粏
- /// </summary>
- [SugarColumn(ColumnName = "Dt_OtherOutboundOrderDetail")]
- [Navigate(NavigateType.OneToMany, nameof(Dt_OtherOutboundOrderDetail.OrderId))]
- public List<Dt_OtherOutboundOrderDetail>? Details { get; set; }
- }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_OtherOutboundOrderDetail.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_OtherOutboundOrderDetail.cs"
deleted file mode 100644
index f8185b8..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_OtherOutboundOrderDetail.cs"
+++ /dev/null
@@ -1,76 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models.Order
-{
- /// <summary>
- /// 鍏朵粬鍑哄簱鍗曟嵁鏄庣粏琛�
- ///</summary>
- [SugarTable("Dt_OtherOutboundOrderDetail")]
- public class Dt_OtherOutboundOrderDetail : BaseEntity
- {
- [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
- public int Id { get; set; }
-
- /// <summary>
- /// 鍑哄簱鍗曟嵁涓婚敭ID
- /// </summary>
- [SugarColumn(ColumnName = "OrderId", Length = 255)]
- public int OrderId { get; set; }
-
- /// <summary>
- /// 鐗╂枡缂栫爜
- /// </summary>
- [SugarColumn(ColumnName = "MaterielCode", Length = 255)]
- public string MaterielCode { get; set; }
-
- /// <summary>
- /// 鐗╂枡鍚嶇О
- /// </summary>
- [SugarColumn(ColumnName = "MaterielName", Length = 255)]
- public string MaterielName { get; set; }
-
- /// <summary>
- /// 闇�姹傚垎绫�
- /// </summary>
-
- [SugarColumn(ColumnName = "DemandClassification", Length = 255)]
- public string DemandClassification { get; set; }
-
- /// <summary>
- /// 鍑哄簱鏁伴噺
- /// </summary>
- [SugarColumn(ColumnName = "OrderQuantity")]
- public decimal OrderQuantity { get; set; }
-
-
- /// <summary>
- /// 鏈嚭搴撴暟閲�
- /// </summary>
- [SugarColumn(ColumnName = "NotOutQuantity")]
- public decimal NotOutQuantity { get; set; }
-
- /// <summary>
- /// 宸插嚭搴撴暟閲�
- /// </summary>
- [SugarColumn(ColumnName = "OverOutQuantity")]
- public decimal OverOutQuantity { get; set; }
-
- /// <summary>
- /// 鍗曟嵁鏄庣粏鐘舵��
- /// </summary>
- [SugarColumn(ColumnName = "OrderDetailStatus")]
- public int OrderDetailStatus { get; set; }
-
- /// <summary>
- /// 澶囨敞
- /// </summary>
- [SugarColumn(ColumnName = "Remark", Length = 255)]
- public string Remark { get; set; }
- }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_ProductionOutboundOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_ProductionOutboundOrder.cs"
index 44d88e3..45589f4 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_ProductionOutboundOrder.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_ProductionOutboundOrder.cs"
@@ -30,6 +30,34 @@
public string UpperOrderNo { get; set; }
/// <summary>
+ /// 闇�姹傚垎绫�
+ /// </summary>
+
+ [SugarColumn(ColumnName = "OrderName", Length = 255)]
+ public string OrderName { get; set; }
+
+ /// <summary>
+ /// 闇�姹傚垎绫�
+ /// </summary>
+
+ [SugarColumn(ColumnName = "DemandClassification", Length = 255)]
+ public string DemandClassification { get; set; }
+
+ /// <summary>
+ /// 璁㈠崟鏂欏彿
+ /// </summary>
+
+ [SugarColumn(ColumnName = "OrderPartNumber", Length = 255)]
+ public string OrderPartNumber { get; set; }
+
+ /// <summary>
+ /// 璁㈠崟瑙勬牸
+ /// </summary>
+
+ [SugarColumn(ColumnName = "OrderSpec", Length = 255)]
+ public string OrderSpec { get; set; }
+
+ /// <summary>
/// 鍗曟嵁绫诲瀷
/// </summary>
@@ -59,7 +87,7 @@
/// 鐢熶骇棰嗘枡鍑哄簱璁㈠崟鏄庣粏
/// </summary>
[SugarColumn(ColumnName = "Dt_ProductionOutboundOrderDetail")]
- [Navigate(NavigateType.OneToMany, nameof(Dt_ProductionOutboundOrderDetail.OrderId))]
+ [Navigate(NavigateType.OneToMany, nameof(Dt_ProductionOutboundOrderDetail.OrderId), nameof(Id))]
public List<Dt_ProductionOutboundOrderDetail>? Details { get; set; }
}
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_ProductionOutboundOrderDetail.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_ProductionOutboundOrderDetail.cs"
index 87d105b..e785d02 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_ProductionOutboundOrderDetail.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Order/Dt_ProductionOutboundOrderDetail.cs"
@@ -36,11 +36,16 @@
public string MaterielName { get; set; }
/// <summary>
- /// 闇�姹傚垎绫�
+ /// 瑙勬牸
/// </summary>
+ [SugarColumn(ColumnName = "Specs", Length = 255)]
+ public string Specs { get; set; }
- [SugarColumn(ColumnName = "DemandClassification", Length = 255)]
- public string DemandClassification { get; set; }
+ /// <summary>
+ /// 鍗曢噸
+ /// </summary>
+ [SugarColumn(ColumnName = "Weight")]
+ public decimal Weight { get; set; }
/// <summary>
/// 鍑哄簱鏁伴噺
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_InventoryOutboundOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_InventoryOutboundOrderDetailRepository.cs"
deleted file mode 100644
index 58311e9..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_InventoryOutboundOrderDetailRepository.cs"
+++ /dev/null
@@ -1,12 +0,0 @@
-锘縰sing WIDESEA_Core.BaseRepository;
-using WIDESEA_IOrderRepository;
-using WIDESEA_Model.Models.Order;
-
-namespace WIDESEA_OrderRepository;
-
-public class Dt_InventoryOutboundOrderDetailRepository : RepositoryBase<Dt_InventoryOutboundOrderDetail>, IDt_InventoryOutboundOrderDetailRepository
-{
- public Dt_InventoryOutboundOrderDetailRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
- {
- }
-}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_InventoryOutboundOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_InventoryOutboundOrderRepository.cs"
deleted file mode 100644
index ddaff17..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_InventoryOutboundOrderRepository.cs"
+++ /dev/null
@@ -1,12 +0,0 @@
-锘縰sing WIDESEA_Core.BaseRepository;
-using WIDESEA_IOrderRepository;
-using WIDESEA_Model.Models.Order;
-
-namespace WIDESEA_OrderRepository;
-
-public class Dt_InventoryOutboundOrderRepository : RepositoryBase<Dt_InventoryOutboundOrder>, IDt_InventoryOutboundOrderRepository
-{
- public Dt_InventoryOutboundOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
- {
- }
-}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_OrderOutDetailsRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_OrderOutDetailsRepository.cs"
new file mode 100644
index 0000000..65bf0b1
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_OrderOutDetailsRepository.cs"
@@ -0,0 +1,12 @@
+锘縰sing WIDESEA_Core.BaseRepository;
+using WIDESEA_IOrderRepository;
+using WIDESEA_Model.Models.Order;
+
+namespace WIDESEA_OrderRepository;
+
+public class Dt_OrderOutDetailsRepository : RepositoryBase<Dt_OrderOutDetails>, IDt_OrderOutDetailsRepository
+{
+ public Dt_OrderOutDetailsRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
+ {
+ }
+}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_OtherOutboundOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_OtherOutboundOrderDetailRepository.cs"
deleted file mode 100644
index 2c99987..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_OtherOutboundOrderDetailRepository.cs"
+++ /dev/null
@@ -1,12 +0,0 @@
-锘縰sing WIDESEA_Core.BaseRepository;
-using WIDESEA_IOrderRepository;
-using WIDESEA_Model.Models.Order;
-
-namespace WIDESEA_OrderRepository;
-
-public class Dt_OtherOutboundOrderDetailRepository : RepositoryBase<Dt_OtherOutboundOrderDetail>, IDt_OtherOutboundOrderDetailRepository
-{
- public Dt_OtherOutboundOrderDetailRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
- {
- }
-}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_OtherOutboundOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_OtherOutboundOrderRepository.cs"
deleted file mode 100644
index 601182c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderRepository/Dt_OtherOutboundOrderRepository.cs"
+++ /dev/null
@@ -1,12 +0,0 @@
-锘縰sing WIDESEA_Core.BaseRepository;
-using WIDESEA_IOrderRepository;
-using WIDESEA_Model.Models.Order;
-
-namespace WIDESEA_OrderRepository;
-
-public class Dt_OtherOutboundOrderRepository : RepositoryBase<Dt_OtherOutboundOrder>, IDt_OtherOutboundOrderRepository
-{
- public Dt_OtherOutboundOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
- {
- }
-}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_AllocateOutboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_AllocateOutboundOrderService.cs"
index 233b91e..26b43f4 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_AllocateOutboundOrderService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_AllocateOutboundOrderService.cs"
@@ -159,7 +159,7 @@
if (result.Item1.Count <= 0)
{
- return content.Error("鏈壘鍒板簱瀛樺垎閰嶏紝璇风‘璁ゆ槸鍚﹀瓨鍦ㄥ簱瀛樻垨鍗曟嵁鏁伴噺宸插嚭瀹�");
+ return content.Error($"璁㈠崟{outboundOrder.UpperOrderNo}鐗╂枡缂栫爜{allocateoutboundOrderdetail.MaterielCode}鏈壘鍒板簱瀛樺垎閰嶏紝璇风‘璁ゆ槸鍚﹀瓨鍦ㄥ簱瀛樻垨鍗曟嵁鏁伴噺宸插嚭瀹�");
}
result.Item1.Distinct().ForEach(item =>
@@ -176,6 +176,8 @@
taskDtos.Add(task);
item.StockInfoDetails.Where(x => x.MaterielCode == allocateoutboundOrderdetail.MaterielCode).FirstOrDefault().Status = (int)StockStateEmun.鍑哄簱閿佸畾;
item.StockStatus = (int)StockStateEmun.鍑哄簱閿佸畾;
+ item.Remark = requestOut.Warehouse;
+ item.OrderNo = allocateoutboundOrderdetail.Id.ToString();
});
List<Dt_Task> taskNews = new List<Dt_Task>();
List<WMSTaskDTO> taskDTOs = new List<WMSTaskDTO>();
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_InboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_InboundOrderService.cs"
index f2f9ff9..3bd9217 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_InboundOrderService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_InboundOrderService.cs"
@@ -1,4 +1,5 @@
-锘縰sing WIDESEA_Core.BaseRepository;
+锘縰sing WIDESEA_Core;
+using WIDESEA_Core.BaseRepository;
using WIDESEA_Core.BaseServices;
using WIDESEA_IOrderRepository;
using WIDESEA_IOrderServices;
@@ -6,6 +7,7 @@
using WIDESEA_IStorageTaskServices;
using WIDESEA_Model.Models;
using WIDESEA_Model.Models.Order;
+using WIDESEA_OrderRepository;
namespace WIDESEA_OrderServices
{
@@ -19,5 +21,23 @@
_unitOfWorkManage = unitOfWorkManage;
}
+
+ public WebResponseContent GetInboundOrderInfo(string OrderNo)
+ {
+ WebResponseContent content=new WebResponseContent();
+ try
+ {
+ var InboundOrder = BaseDal.QueryFirst(x => x.OrderNo == OrderNo);
+ if (InboundOrder == null)
+ {
+ return content.Error($"鏈壘鍒拌鍗曞彿鏁版嵁璇蜂汉宸ョ‘璁�");
+ }
+ return content.OK(data: InboundOrder);
+ }
+ catch (Exception ex)
+ {
+ return content.Error(ex.Message);
+ }
+ }
}
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_InventoryOutboundOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_InventoryOutboundOrderDetailService.cs"
deleted file mode 100644
index 2895893..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_InventoryOutboundOrderDetailService.cs"
+++ /dev/null
@@ -1,62 +0,0 @@
-锘縰sing SqlSugar;
-using System.Linq.Expressions;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Helper;
-using WIDESEA_IOrderRepository;
-using WIDESEA_IOrderServices;
-using WIDESEA_IStorageTaskRepository;
-using WIDESEA_IStorageTaskServices;
-using WIDESEA_Model.Models;
-using WIDESEA_Model.Models.Order;
-
-namespace WIDESEA_OrderServices
-{
- public class Dt_InventoryOutboundOrderDetailService : ServiceBase<Dt_InventoryOutboundOrderDetail, IDt_InventoryOutboundOrderDetailRepository>, IDt_InventoryOutboundOrderDetailService
- {
- private readonly IUnitOfWorkManage _unitOfWorkManage;
-
- public Dt_InventoryOutboundOrderDetailService(IDt_InventoryOutboundOrderDetailRepository BaseDal,
- IUnitOfWorkManage unitOfWorkManage) : base(BaseDal)
- {
- _unitOfWorkManage = unitOfWorkManage;
-
- }
- public override PageGridData<Dt_InventoryOutboundOrderDetail> GetPageData(PageDataOptions options)
- {
- string wheres = ValidatePageOptions(options);
- //鑾峰彇鎺掑簭瀛楁
- Dictionary<string, OrderByType> orderbyDic = GetPageDataSort(options, TProperties);
- List<OrderByModel> orderByModels = new List<OrderByModel>();
- foreach (var item in orderbyDic)
- {
- OrderByModel orderByModel = new()
- {
- FieldName = item.Key,
- OrderByType = item.Value
- };
- orderByModels.Add(orderByModel);
- }
-
-
- int totalCount = 0;
- List<SearchParameters> searchParametersList = new List<SearchParameters>();
- if (!string.IsNullOrEmpty(options.Wheres))
- {
- try
- {
- searchParametersList = options.Wheres.DeserializeObject<List<SearchParameters>>();
- options.Filter = searchParametersList;
- }
- catch { }
- }
- var data = BaseDal.Db.Queryable<Dt_InventoryOutboundOrderDetail>()
- .WhereIF(!wheres.IsNullOrEmpty(), wheres)
- .OrderBy(orderByModels)
- .ToPageList(options.Page, options.Rows, ref totalCount);
- var x=new PageGridData<Dt_InventoryOutboundOrderDetail>(totalCount, data);
- return new PageGridData<Dt_InventoryOutboundOrderDetail>(totalCount, data);
- }
- }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_InventoryOutboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_InventoryOutboundOrderService.cs"
deleted file mode 100644
index bb9f4e2..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_InventoryOutboundOrderService.cs"
+++ /dev/null
@@ -1,368 +0,0 @@
-锘縰sing MailKit.Search;
-using Masuit.Tools;
-using System.Linq.Expressions;
-using WIDESEA_Common;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_DTO;
-using WIDESEA_DTO.Order;
-using WIDESEA_DTO.Stock;
-using WIDESEA_DTO.WMS;
-using WIDESEA_IOrderRepository;
-using WIDESEA_IOrderServices;
-using WIDESEA_IStorageBasicRepository;
-using WIDESEA_IStorageBasicService;
-using WIDESEA_IStorageTaskRepository;
-using WIDESEA_IStorageTaskServices;
-using WIDESEA_Model.Models;
-using WIDESEA_Model.Models.Order;
-using WIDESEA_OrderRepository;
-
-namespace WIDESEA_OrderServices
-{
- public class Dt_InventoryOutboundOrderService : ServiceBase<Dt_InventoryOutboundOrder, IDt_InventoryOutboundOrderRepository>, IDt_InventoryOutboundOrderService
- {
- private readonly IUnitOfWorkManage _unitOfWorkManage;
- private readonly IDt_InventoryOutboundOrderDetailRepository _inventoryoutboundOrderDetailRepository;
- private readonly IStockInfoDetailRepository _stockInfoDetailRepository;
- private readonly IStockInfoRepository _stockInfoRepository;
- private readonly IStockInfoService _stockInfoService;
- private readonly IDt_TaskService _taskService;
- private readonly ILocationInfoRepository _locationRepository;
- private readonly IDt_TaskRepository _taskRepository;
- private readonly ILocationStatusChangeRecordRepository _locationStatusChangeRecordRepository;
-
- public Dt_InventoryOutboundOrderService(IDt_InventoryOutboundOrderRepository BaseDal,
- IUnitOfWorkManage unitOfWorkManage,
- IDt_InventoryOutboundOrderDetailRepository inventoryoutboundOrderDetailRepository,
- IStockInfoDetailRepository stockInfoDetailRepository,
- IStockInfoRepository stockInfoRepository,
- IStockInfoService stockInfoService,
- IDt_TaskService taskService,
- ILocationInfoRepository locationRepository,
- IDt_TaskRepository taskRepository,
- ILocationStatusChangeRecordRepository locationStatusChangeRecordRepository) : base(BaseDal)
- {
- _unitOfWorkManage = unitOfWorkManage;
- _inventoryoutboundOrderDetailRepository = inventoryoutboundOrderDetailRepository;
- _stockInfoDetailRepository = stockInfoDetailRepository;
- _stockInfoRepository = stockInfoRepository;
- _stockInfoService = stockInfoService;
- _taskService = taskService;
- _locationRepository = locationRepository;
- _taskRepository = taskRepository;
- _locationStatusChangeRecordRepository = locationStatusChangeRecordRepository;
- }
-
- public override WebResponseContent AddData(SaveModel saveModel)
- {
- saveModel.MainData.Add("orderNo", GetOrderPintCode("OrderNoOut"));
- saveModel.MainData.Add("upperOrderNo", saveModel.MainData["orderNo"]);
- saveModel.MainData.Add("orderType", (int)OrderTypeEmun.鐩樼偣鍑哄簱鍗�);
- saveModel.MainData.Add("orderStatus", (int)OrderStateEmun.鏈紑濮�);
- saveModel.MainData.Add("createType", (int)OrderCreateTypeEmun.鎵嬪姩鍒涘缓);
- return base.AddData(saveModel);
- }
-
- public WebResponseContent GetInventoryOutboundOrder(OutboundOrderGetDTO outboundOrderGetDTO)
- {
- WebResponseContent content = new WebResponseContent();
- try
- {
- Expression<Func<Dt_InventoryOutboundOrder, bool>> expressionOrder = x => true;
- if (!string.IsNullOrEmpty(outboundOrderGetDTO.OrderNo))
- {
- expressionOrder = x => x.UpperOrderNo.Contains(outboundOrderGetDTO.OrderNo);
- }
- int count = 0;
- if (outboundOrderGetDTO.OrderNo == "")
- {
- count = BaseDal.QueryData(x => x.OrderStatus != (int)OrderStateEmun.宸插畬鎴�).ToList().Count();
- }
- else
- {
- count = BaseDal.QueryData(x => x.OrderStatus != (int)OrderStateEmun.宸插畬鎴� && x.UpperOrderNo == outboundOrderGetDTO.OrderNo).ToList().Count();
- }
-
- int maxPage = Convert.ToInt32(Math.Ceiling(count / 10.0));
- if (outboundOrderGetDTO.pageNo <= maxPage)
- {
- var outboundOrder = BaseDal.Db.Queryable<Dt_InventoryOutboundOrder>().Where(expressionOrder).OrderByDescending(x => x.CreateDate).Skip((outboundOrderGetDTO.pageNo - 1) * 10).Take(10).Select(x => new Dt_InventoryOutboundOrder
- {
- OrderNo = x.OrderNo,
- Id = x.Id,
- UpperOrderNo = x.UpperOrderNo,
- CreateDate = x.CreateDate,
- Creater = x.Creater
- }).ToList();
-
- content = WebResponseContent.Instance.OK(data: outboundOrder);
- }
- else
- {
- var outboundOrder = BaseDal.Db.Queryable<Dt_InventoryOutboundOrder>().Where(expressionOrder).OrderByDescending(x => x.CreateDate).Skip(0 * 10).Take(10).Select(x => new Dt_InventoryOutboundOrder
- {
- OrderNo = x.OrderNo,
- Id = x.Id,
- UpperOrderNo = x.UpperOrderNo,
- CreateDate = x.CreateDate,
- Creater = x.Creater
- }).ToList();
-
- content = WebResponseContent.Instance.OK(data: outboundOrder);
- }
- }
- catch (Exception ex)
- {
- content = WebResponseContent.Instance.Error($"鏌ヨ鍑哄簱鍗曟嵁閿欒,閿欒淇℃伅:{ex.Message}");
- }
- return content;
- }
-
- public WebResponseContent GetInventoryOutboundOrderDetail(OutboundOrderGetDTO outboundOrderGetDTO)
- {
- WebResponseContent content = new WebResponseContent();
- try
- {
- var otheroutboundOrder = BaseDal.QueryFirst(x => x.Id == outboundOrderGetDTO.id);
-
- Expression<Func<Dt_InventoryOutboundOrderDetail, bool>> expression = x => x.OrderId == otheroutboundOrder.Id;
- if (!string.IsNullOrEmpty(outboundOrderGetDTO.searchValue))
- {
- expression = x => x.OrderId == otheroutboundOrder.Id && x.MaterielCode.Contains(outboundOrderGetDTO.searchValue);
- }
-
- var otheroutboundOrderdetail = _inventoryoutboundOrderDetailRepository.Db.Queryable<Dt_InventoryOutboundOrderDetail>().Where(expression).Where(x => x.OrderQuantity > x.OverOutQuantity).Select(x => new Dt_InventoryOutboundOrderDetail { MaterielCode = x.MaterielCode, MaterielName = x.MaterielName, OrderQuantity = x.OrderQuantity, OverOutQuantity = x.OverOutQuantity, Id = x.Id }).ToList();
- content = WebResponseContent.Instance.OK(data: otheroutboundOrderdetail);
- }
- catch (Exception ex)
- {
- content = WebResponseContent.Instance.Error($"鏌ヨ鍑哄簱鍗曟嵁閿欒,閿欒淇℃伅:{ex.Message}");
- }
- return content;
- }
-
- #region 鏍规嵁鍗曟嵁鏄庣粏鐢熸垚鍑哄簱浠诲姟
-
- public async Task<WebResponseContent> GenerateInventoryOutboundTask(GenerateOutTaskDto requestOut)
- {
- WebResponseContent content = new WebResponseContent();
- try
- {
- foreach (var orderId in requestOut.orderIds)
- {
- List<RequestTaskDto> taskDtos = new List<RequestTaskDto>();
- Dt_InventoryOutboundOrderDetail outboundOrderdetail = _inventoryoutboundOrderDetailRepository.QueryFirst(x => x.Id == orderId);
- Dt_InventoryOutboundOrder outboundOrder = BaseDal.QueryFirst(x => x.Id == outboundOrderdetail.OrderId);
-
- (bool, string) checkResult = CheckSelectStockDeital(outboundOrderdetail, requestOut.stockViews, requestOut);
- if (!checkResult.Item1) throw new Exception(checkResult.Item2);
-
- else
- {
- var result = AssignStockOutbound(outboundOrderdetail, requestOut.stockViews);
-
- if (result.Item1.Count <= 0)
- {
- return content.Error("鏈壘鍒板簱瀛樺垎閰嶏紝璇风‘璁ゆ槸鍚﹀瓨鍦ㄥ簱瀛樻垨鍗曟嵁鏁伴噺宸插嚭瀹�");
- }
-
- result.Item1.Distinct().ForEach(item =>
- {
- RequestTaskDto task = new RequestTaskDto
- {
- TaskType = outboundOrder.OrderType,
- OrderNo = outboundOrder.OrderNo,
- MaterielCode = outboundOrderdetail.MaterielCode,
- Position = item.LocationCode,
- PalletCode = item.PalletCode,
- AreaId = Convert.ToInt32(requestOut.AreaId),
- };
- taskDtos.Add(task);
- item.StockInfoDetails.Where(x => x.MaterielCode == outboundOrderdetail.MaterielCode).FirstOrDefault().Status = (int)StockStateEmun.鍑哄簱閿佸畾;
- item.StockStatus = (int)StockStateEmun.鍑哄簱閿佸畾;
- });
- List<Dt_Task> taskNews = new List<Dt_Task>();
- List<WMSTaskDTO> taskDTOs = new List<WMSTaskDTO>();
- foreach (var item in taskDtos)
- {
- taskNews.Add(await _taskService.RequestOutboundTaskAsync(item));
-
- }
- List<DtLocationStatusChangeRecord> locationStatusChangeRecords = new List<DtLocationStatusChangeRecord>();
- List<DtLocationInfo> locations = new List<DtLocationInfo>();
- foreach (var item in taskNews)
- {
- taskDTOs.Add(CreateTaskDTO(item));
- var result1 = _taskService.UpdateLocationStatus(item.SourceAddress, LocationEnum.InStockDisable, item.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticOutbound);
- var result2 = _taskService.UpdateLocationStatus(item.TargetAddress, LocationEnum.Lock, item.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticOutbound);
- locationStatusChangeRecords.AddRange(result1.Item1);
- locationStatusChangeRecords.AddRange(result2.Item1);
- locations.AddRange(result1.Item2);
- locations.AddRange(result2.Item2);
- }
-
- await _unitOfWorkManage.UseTranAsync(async () =>
- {
- _taskRepository.AddData(taskNews);
- _stockInfoRepository.UpdateDataNav(result.Item1);
- await _locationStatusChangeRecordRepository.AddDataAsync(locationStatusChangeRecords);
- await _locationRepository.UpdateDataAsync(locations);
- _inventoryoutboundOrderDetailRepository.UpdateData(result.Item2);
- });
- content = await _taskService.SendWCSTask(taskDTOs);
- }
- }
- return content;
- }
- catch (Exception ex)
- {
- return content.Error(ex.Message);
- }
-
- }
- private WMSTaskDTO CreateTaskDTO(Dt_Task task)
- {
- return new WMSTaskDTO
- {
- TaskNum = task.TaskNum.Value,
- Grade = task.Grade.Value,
- PalletCode = task.PalletCode,
- RoadWay = task.Roadway,
- SourceAddress = task.SourceAddress,
- TargetAddress = task.TargetAddress,
- TaskState = task.TaskState,
- Id = 0,
- TaskType = task.TaskType,
- AGVTaskNum = task.AGVTaskNum,
- Remark = task.Remark
- };
- }
- public (List<DtStockInfo>, Dt_InventoryOutboundOrderDetail) AssignStockOutbound(Dt_InventoryOutboundOrderDetail inventoryOutboundOrderDetail, List<StockSelectViewDTO> stockSelectViews)
- {
- decimal originalNeedQuantity = inventoryOutboundOrderDetail.OrderQuantity - inventoryOutboundOrderDetail.OverOutQuantity;
-
- decimal needQuantity = originalNeedQuantity;
-
- List<DtStockInfo> outStocks = new List<DtStockInfo>();
- if (stockSelectViews != null && stockSelectViews.Count > 0)
- {
- outStocks = BaseDal.Db.Queryable<DtStockInfo>().Where(x => stockSelectViews.Select(x => x.PalletCode).ToList().Contains(x.PalletCode)).Includes(x => x.StockInfoDetails).ToList();
- }
- else
- {
- outStocks = GetStockInfos(inventoryOutboundOrderDetail.MaterielCode);
- }
-
- List<DtStockInfo> outStockNews = new List<DtStockInfo>();
-
- foreach (var item in outStocks)
- {
- var stockDetail = item.StockInfoDetails
- .Where(d => d.MaterielCode == inventoryOutboundOrderDetail.MaterielCode && d.Quantity > 0);
- if (needQuantity <= 0)
- {
- continue;
- }
- foreach (var detail in stockDetail)
- {
- if (detail != null)
- {
- if (needQuantity >= detail.Quantity)
- {
- if (detail.Quantity <= detail.OutboundQuantity)
- {
- continue;
- }
- needQuantity -= detail.Quantity;
- detail.OutboundQuantity = detail.Quantity;
- }
- else
- {
- if (detail.Quantity <= detail.OutboundQuantity)
- {
- continue;
- }
- detail.OutboundQuantity = needQuantity;
- needQuantity = 0;
- }
- outStockNews.Add(item);
- }
- }
-
- }
- inventoryOutboundOrderDetail.OverOutQuantity = inventoryOutboundOrderDetail.OrderQuantity - needQuantity;
-
- if (inventoryOutboundOrderDetail.OverOutQuantity != 0)
- {
- inventoryOutboundOrderDetail.OrderDetailStatus = (int)OrderStateEmun.寮�濮�;
- }
- return (outStockNews, inventoryOutboundOrderDetail);
- }
-
- private (bool, string) CheckSelectStockDeital(Dt_InventoryOutboundOrderDetail inventoryOutboundOrderDetail, List<StockSelectViewDTO> stockSelectViews, GenerateOutTaskDto requestOut)
- {
- if (inventoryOutboundOrderDetail == null)
- {
- return (false, "鏈壘鍒板嚭搴撳崟淇℃伅");
- }
- if (inventoryOutboundOrderDetail.OrderDetailStatus == (int)OrderStateEmun.宸插畬鎴�)
- {
- return (false, "璇ユ槑缁嗕笉鍙搷浣�");
- }
- if (stockSelectViews != null && stockSelectViews.Sum(x => x.UseableQuantity) > inventoryOutboundOrderDetail.OrderQuantity - inventoryOutboundOrderDetail.OverOutQuantity)
- {
- return (false, "閫夋嫨鏁伴噺瓒呭嚭鍗曟嵁鏁伴噺");
- }
- if (inventoryOutboundOrderDetail.OrderQuantity <= inventoryOutboundOrderDetail.OverOutQuantity)
- {
- return (false, "鍗曟嵁鏁伴噺宸插嚭搴撳畬鎴�");
- }
- return (true, "鎴愬姛");
- }
-
- public List<DtStockInfo> GetStockInfos(string materielCode)
- {
- var stocks = BaseDal.Db.Queryable<DtStockInfo>()
- .Includes(x => x.StockInfoDetails)
- .Includes(x => x.LocationInfo)
- .Where(x => x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && x.LocationInfo.EnalbeStatus == (int)EnableEnum.Enable)
- .Where(x => x.StockInfoDetails.Any(d => d.MaterielCode == materielCode && d.Quantity > 0)).ToList().OrderBy(x => x.CreateDate).ToList();
-
- if (stocks == null || stocks.Count() <= 0)
- {
- return stocks;
- }
-
- var locations = stocks.Select(s => s.LocationInfo).ToList();
- List<DtLocationInfo> locationInfos = _stockInfoService.GetStockLocations(locations).Distinct().ToList();
- stocks = stocks.Where(s => s.LocationInfo != null && locationInfos.Contains(s.LocationInfo)).ToList();
- return stocks;
- }
- #endregion 鏍规嵁鍗曟嵁鏄庣粏鐢熸垚鍑哄簱浠诲姟
-
-
- public string GetOrderPintCode(string printCode)
- {
- string PrintCode = "";
- var PrintSetting = SqlSugarHelper.DbWMS.Queryable<Dt_PrintSetting>().Where(x => x.PrintCode == printCode).ToList().FirstOrDefault();
-
- if (PrintSetting.Spare1 == DateTime.Now.ToString("yyyyMMdd"))
- {
- PrintCode = PrintSetting.Spare1 + PrintSetting.PrintNo.ToString().PadLeft(PrintSetting.Spare2, '0');
- PrintSetting.PrintNo = PrintSetting.PrintNo + 1;
- }
- else
- {
- PrintSetting.Spare1 = DateTime.Now.ToString("yyyyMMdd");
- PrintSetting.PrintNo = 2;
- PrintCode = PrintSetting.Spare1 + 1.ToString().PadLeft(PrintSetting.Spare2, '0');
- }
- SqlSugarHelper.DbWMS.Updateable(PrintSetting).ExecuteCommand();
- return PrintCode;
- }
- }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_OrderOutDetailsService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_OrderOutDetailsService.cs"
new file mode 100644
index 0000000..9229e34
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_OrderOutDetailsService.cs"
@@ -0,0 +1,23 @@
+锘縰sing WIDESEA_Core.BaseRepository;
+using WIDESEA_Core.BaseServices;
+using WIDESEA_IOrderRepository;
+using WIDESEA_IOrderServices;
+using WIDESEA_IStorageTaskRepository;
+using WIDESEA_IStorageTaskServices;
+using WIDESEA_Model.Models;
+using WIDESEA_Model.Models.Order;
+
+namespace WIDESEA_OrderServices
+{
+ public class Dt_OrderOutDetailsService : ServiceBase<Dt_OrderOutDetails, IDt_OrderOutDetailsRepository>, IDt_OrderOutDetailsService
+ {
+ private readonly IUnitOfWorkManage _unitOfWorkManage;
+
+ public Dt_OrderOutDetailsService(IDt_OrderOutDetailsRepository BaseDal,
+ IUnitOfWorkManage unitOfWorkManage) : base(BaseDal)
+ {
+ _unitOfWorkManage = unitOfWorkManage;
+
+ }
+ }
+}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_OtherOutboundOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_OtherOutboundOrderDetailService.cs"
deleted file mode 100644
index b04a472..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_OtherOutboundOrderDetailService.cs"
+++ /dev/null
@@ -1,62 +0,0 @@
-锘縰sing SqlSugar;
-using System.Linq.Expressions;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Helper;
-using WIDESEA_IOrderRepository;
-using WIDESEA_IOrderServices;
-using WIDESEA_IStorageTaskRepository;
-using WIDESEA_IStorageTaskServices;
-using WIDESEA_Model.Models;
-using WIDESEA_Model.Models.Order;
-
-namespace WIDESEA_OrderServices
-{
- public class Dt_OtherOutboundOrderDetailService : ServiceBase<Dt_OtherOutboundOrderDetail, IDt_OtherOutboundOrderDetailRepository>, IDt_OtherOutboundOrderDetailService
- {
- private readonly IUnitOfWorkManage _unitOfWorkManage;
-
- public Dt_OtherOutboundOrderDetailService(IDt_OtherOutboundOrderDetailRepository BaseDal,
- IUnitOfWorkManage unitOfWorkManage) : base(BaseDal)
- {
- _unitOfWorkManage = unitOfWorkManage;
-
- }
- public override PageGridData<Dt_OtherOutboundOrderDetail> GetPageData(PageDataOptions options)
- {
- string wheres = ValidatePageOptions(options);
- //鑾峰彇鎺掑簭瀛楁
- Dictionary<string, OrderByType> orderbyDic = GetPageDataSort(options, TProperties);
- List<OrderByModel> orderByModels = new List<OrderByModel>();
- foreach (var item in orderbyDic)
- {
- OrderByModel orderByModel = new()
- {
- FieldName = item.Key,
- OrderByType = item.Value
- };
- orderByModels.Add(orderByModel);
- }
-
-
- int totalCount = 0;
- List<SearchParameters> searchParametersList = new List<SearchParameters>();
- if (!string.IsNullOrEmpty(options.Wheres))
- {
- try
- {
- searchParametersList = options.Wheres.DeserializeObject<List<SearchParameters>>();
- options.Filter = searchParametersList;
- }
- catch { }
- }
- var data = BaseDal.Db.Queryable<Dt_OtherOutboundOrderDetail>()
- .WhereIF(!wheres.IsNullOrEmpty(), wheres)
- .OrderBy(orderByModels)
- .ToPageList(options.Page, options.Rows, ref totalCount);
- var x=new PageGridData<Dt_OtherOutboundOrderDetail>(totalCount, data);
- return new PageGridData<Dt_OtherOutboundOrderDetail>(totalCount, data);
- }
- }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_OtherOutboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_OtherOutboundOrderService.cs"
deleted file mode 100644
index 52fca6c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_OtherOutboundOrderService.cs"
+++ /dev/null
@@ -1,369 +0,0 @@
-锘縰sing MailKit.Search;
-using Masuit.Tools;
-using System.Linq.Expressions;
-using WIDESEA_Common;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_DTO;
-using WIDESEA_DTO.Order;
-using WIDESEA_DTO.Stock;
-using WIDESEA_DTO.WMS;
-using WIDESEA_IOrderRepository;
-using WIDESEA_IOrderServices;
-using WIDESEA_IStorageBasicRepository;
-using WIDESEA_IStorageBasicService;
-using WIDESEA_IStorageTaskRepository;
-using WIDESEA_IStorageTaskServices;
-using WIDESEA_Model.Models;
-using WIDESEA_Model.Models.Order;
-using WIDESEA_StorageTaskRepository;
-using WIDESEA_StorageTaskServices;
-
-namespace WIDESEA_OrderServices
-{
- public class Dt_OtherOutboundOrderService : ServiceBase<Dt_OtherOutboundOrder, IDt_OtherOutboundOrderRepository>, IDt_OtherOutboundOrderService
- {
- private readonly IUnitOfWorkManage _unitOfWorkManage;
- private readonly IDt_OtherOutboundOrderDetailRepository _outboundOrderDetailRepository;
- private readonly IStockInfoDetailRepository _stockInfoDetailRepository;
- private readonly IStockInfoRepository _stockInfoRepository;
- private readonly IStockInfoService _stockInfoService;
- private readonly IDt_TaskService _taskService;
- private readonly ILocationInfoRepository _locationRepository;
- private readonly IDt_TaskRepository _taskRepository;
- private readonly ILocationStatusChangeRecordRepository _locationStatusChangeRecordRepository;
-
- public Dt_OtherOutboundOrderService(IDt_OtherOutboundOrderRepository BaseDal,
- IUnitOfWorkManage unitOfWorkManage,
- IDt_OtherOutboundOrderDetailRepository outboundOrderDetailRepository,
- IStockInfoDetailRepository stockInfoDetailRepository,
- IStockInfoRepository stockInfoRepository,
- IStockInfoService stockInfoService,
- IDt_TaskService taskService,
- ILocationInfoRepository locationRepository,
- IDt_TaskRepository taskRepository,
- ILocationStatusChangeRecordRepository locationStatusChangeRecordRepository) : base(BaseDal)
- {
- _unitOfWorkManage = unitOfWorkManage;
- _outboundOrderDetailRepository = outboundOrderDetailRepository;
- _stockInfoDetailRepository = stockInfoDetailRepository;
- _stockInfoRepository = stockInfoRepository;
- _stockInfoService = stockInfoService;
- _taskService = taskService;
- _locationRepository = locationRepository;
- _taskRepository = taskRepository;
- _locationStatusChangeRecordRepository = locationStatusChangeRecordRepository;
- }
-
- public override WebResponseContent AddData(SaveModel saveModel)
- {
- saveModel.MainData.Add("orderNo", GetOrderPintCode("OrderNoOut"));
- saveModel.MainData.Add("upperOrderNo", saveModel.MainData["orderNo"]);
- saveModel.MainData.Add("orderType", (int)OrderTypeEmun.鍏朵粬鍑哄簱鍗�);
- saveModel.MainData.Add("orderStatus", (int)OrderStateEmun.鏈紑濮�);
- saveModel.MainData.Add("createType", (int)OrderCreateTypeEmun.鎵嬪姩鍒涘缓);
- return base.AddData(saveModel);
- }
-
-
- public WebResponseContent GetOtherOutboundOrder(OutboundOrderGetDTO outboundOrderGetDTO)
- {
- WebResponseContent content = new WebResponseContent();
- try
- {
- Expression<Func<Dt_OtherOutboundOrder, bool>> expressionOrder = x => true;
- if (!string.IsNullOrEmpty(outboundOrderGetDTO.OrderNo))
- {
- expressionOrder = x => x.UpperOrderNo.Contains(outboundOrderGetDTO.OrderNo);
- }
- int count = 0;
- if (outboundOrderGetDTO.OrderNo == "")
- {
- count = BaseDal.QueryData(x => x.OrderStatus != (int)OrderStateEmun.宸插畬鎴�).ToList().Count();
- }
- else
- {
- count = BaseDal.QueryData(x => x.OrderStatus != (int)OrderStateEmun.宸插畬鎴� && x.UpperOrderNo == outboundOrderGetDTO.OrderNo).ToList().Count();
- }
-
- int maxPage = Convert.ToInt32(Math.Ceiling(count / 10.0));
- if (outboundOrderGetDTO.pageNo <= maxPage)
- {
- var outboundOrder = BaseDal.Db.Queryable<Dt_OtherOutboundOrder>().Where(expressionOrder).OrderByDescending(x => x.CreateDate).Skip((outboundOrderGetDTO.pageNo - 1) * 10).Take(10).Select(x => new Dt_OtherOutboundOrder
- {
- OrderNo = x.OrderNo,
- Id = x.Id,
- UpperOrderNo = x.UpperOrderNo,
- CreateDate = x.CreateDate,
- Creater = x.Creater
- }).ToList();
-
- content = WebResponseContent.Instance.OK(data: outboundOrder);
- }
- else
- {
- var outboundOrder = BaseDal.Db.Queryable<Dt_OtherOutboundOrder>().Where(expressionOrder).OrderByDescending(x => x.CreateDate).Skip(0 * 10).Take(10).Select(x => new Dt_OtherOutboundOrder
- {
- OrderNo = x.OrderNo,
- Id = x.Id,
- UpperOrderNo = x.UpperOrderNo,
- CreateDate = x.CreateDate,
- Creater = x.Creater
- }).ToList();
-
- content = WebResponseContent.Instance.OK(data: outboundOrder);
- }
- }
- catch (Exception ex)
- {
- content = WebResponseContent.Instance.Error($"鏌ヨ鍑哄簱鍗曟嵁閿欒,閿欒淇℃伅:{ex.Message}");
- }
- return content;
- }
-
- public WebResponseContent GetOtherOutboundOrderDetail(OutboundOrderGetDTO outboundOrderGetDTO)
- {
- WebResponseContent content = new WebResponseContent();
- try
- {
- var otheroutboundOrder = BaseDal.QueryFirst(x => x.Id == outboundOrderGetDTO.id);
-
- Expression<Func<Dt_OtherOutboundOrderDetail, bool>> expression = x => x.OrderId == otheroutboundOrder.Id;
- if (!string.IsNullOrEmpty(outboundOrderGetDTO.searchValue))
- {
- expression = x => x.OrderId == otheroutboundOrder.Id && x.MaterielCode.Contains(outboundOrderGetDTO.searchValue);
- }
-
- var otheroutboundOrderdetail = _outboundOrderDetailRepository.Db.Queryable<Dt_OtherOutboundOrderDetail>().Where(expression).Where(x => x.OrderQuantity > x.OverOutQuantity).Select(x => new Dt_OtherOutboundOrderDetail { MaterielCode = x.MaterielCode, MaterielName = x.MaterielName, OrderQuantity = x.OrderQuantity, OverOutQuantity = x.OverOutQuantity, Id = x.Id }).ToList();
- content = WebResponseContent.Instance.OK(data: otheroutboundOrderdetail);
- }
- catch (Exception ex)
- {
- content = WebResponseContent.Instance.Error($"鏌ヨ鍑哄簱鍗曟嵁閿欒,閿欒淇℃伅:{ex.Message}");
- }
- return content;
- }
-
- #region 鏍规嵁鍗曟嵁鏄庣粏鐢熸垚鍑哄簱浠诲姟
-
- public async Task<WebResponseContent> GenerateOtherOutboundTask(GenerateOutTaskDto requestOut)
- {
- WebResponseContent content = new WebResponseContent();
- try
- {
- foreach (var orderId in requestOut.orderIds)
- {
- List<RequestTaskDto> taskDtos = new List<RequestTaskDto>();
- Dt_OtherOutboundOrderDetail outboundOrderdetail = _outboundOrderDetailRepository.QueryFirst(x => x.Id == orderId);
- Dt_OtherOutboundOrder outboundOrder = BaseDal.QueryFirst(x => x.Id == outboundOrderdetail.OrderId);
-
- (bool, string) checkResult = CheckSelectStockDeital(outboundOrderdetail, requestOut.stockViews, requestOut);
- if (!checkResult.Item1) throw new Exception(checkResult.Item2);
-
- else
- {
- var result = AssignStockOutbound(outboundOrderdetail, requestOut.stockViews);
-
- if (result.Item1.Count <= 0)
- {
- return content.Error("鏈壘鍒板簱瀛樺垎閰嶏紝璇风‘璁ゆ槸鍚﹀瓨鍦ㄥ簱瀛樻垨鍗曟嵁鏁伴噺宸插嚭瀹�");
- }
-
- result.Item1.Distinct().ForEach(item =>
- {
- RequestTaskDto task = new RequestTaskDto
- {
- TaskType = outboundOrder.OrderType,
- OrderNo = outboundOrder.OrderNo,
- MaterielCode = outboundOrderdetail.MaterielCode,
- Position = item.LocationCode,
- PalletCode = item.PalletCode,
- AreaId = Convert.ToInt32(requestOut.AreaId),
- };
- taskDtos.Add(task);
- item.StockInfoDetails.Where(x => x.MaterielCode == outboundOrderdetail.MaterielCode).FirstOrDefault().Status = (int)StockStateEmun.鍑哄簱閿佸畾;
- item.StockStatus = (int)StockStateEmun.鍑哄簱閿佸畾;
- });
- List<Dt_Task> taskNews = new List<Dt_Task>();
- List<WMSTaskDTO> taskDTOs = new List<WMSTaskDTO>();
- foreach (var item in taskDtos)
- {
- taskNews.Add(await _taskService.RequestOutboundTaskAsync(item));
-
- }
- List<DtLocationStatusChangeRecord> locationStatusChangeRecords = new List<DtLocationStatusChangeRecord>();
- List<DtLocationInfo> locations = new List<DtLocationInfo>();
- foreach (var item in taskNews)
- {
- taskDTOs.Add(CreateTaskDTO(item));
- var result1 = _taskService.UpdateLocationStatus(item.SourceAddress, LocationEnum.InStockDisable, item.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticOutbound);
- var result2 = _taskService.UpdateLocationStatus(item.TargetAddress, LocationEnum.Lock, item.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticOutbound);
- locationStatusChangeRecords.AddRange(result1.Item1);
- locationStatusChangeRecords.AddRange(result2.Item1);
- locations.AddRange(result1.Item2);
- locations.AddRange(result2.Item2);
- }
-
- await _unitOfWorkManage.UseTranAsync(async () =>
- {
- _taskRepository.AddData(taskNews);
- _stockInfoRepository.UpdateDataNav(result.Item1);
- await _locationStatusChangeRecordRepository.AddDataAsync(locationStatusChangeRecords);
- await _locationRepository.UpdateDataAsync(locations);
- _outboundOrderDetailRepository.UpdateData(result.Item2);
- });
- content = await _taskService.SendWCSTask(taskDTOs);
- }
- }
- return content;
- }
- catch (Exception ex)
- {
- return content.Error(ex.Message);
- }
-
- }
- private WMSTaskDTO CreateTaskDTO(Dt_Task task)
- {
- return new WMSTaskDTO
- {
- TaskNum = task.TaskNum.Value,
- Grade = task.Grade.Value,
- PalletCode = task.PalletCode,
- RoadWay = task.Roadway,
- SourceAddress = task.SourceAddress,
- TargetAddress = task.TargetAddress,
- TaskState = task.TaskState,
- Id = 0,
- TaskType = task.TaskType,
- AGVTaskNum = task.AGVTaskNum,
- Remark = task.Remark
- };
- }
- public (List<DtStockInfo>, Dt_OtherOutboundOrderDetail) AssignStockOutbound(Dt_OtherOutboundOrderDetail outboundOrderdetail, List<StockSelectViewDTO> stockSelectViews)
- {
- decimal originalNeedQuantity = outboundOrderdetail.OrderQuantity - outboundOrderdetail.OverOutQuantity;
-
- decimal needQuantity = originalNeedQuantity;
-
- List<DtStockInfo> outStocks = new List<DtStockInfo>();
- if (stockSelectViews != null && stockSelectViews.Count > 0)
- {
- outStocks = BaseDal.Db.Queryable<DtStockInfo>().Where(x => stockSelectViews.Select(x => x.PalletCode).ToList().Contains(x.PalletCode)).Includes(x => x.StockInfoDetails).ToList();
- }
- else
- {
- outStocks = GetStockInfos(outboundOrderdetail.MaterielCode);
- }
-
- List<DtStockInfo> outStockNews = new List<DtStockInfo>();
-
- foreach (var item in outStocks)
- {
- var stockDetail = item.StockInfoDetails
- .Where(d => d.MaterielCode == outboundOrderdetail.MaterielCode && d.Quantity > 0);
- if (needQuantity <= 0)
- {
- continue;
- }
- foreach (var detail in stockDetail)
- {
- if (detail != null)
- {
- if (needQuantity >= detail.Quantity)
- {
- if (detail.Quantity <= detail.OutboundQuantity)
- {
- continue;
- }
- needQuantity -= detail.Quantity;
- detail.OutboundQuantity = detail.Quantity;
- }
- else
- {
- if (detail.Quantity <= detail.OutboundQuantity)
- {
- continue;
- }
- detail.OutboundQuantity = needQuantity;
- needQuantity = 0;
- }
- outStockNews.Add(item);
- }
- }
-
- }
- outboundOrderdetail.OverOutQuantity = outboundOrderdetail.OrderQuantity - needQuantity;
-
- if (outboundOrderdetail.OverOutQuantity != 0)
- {
- outboundOrderdetail.OrderDetailStatus = (int)OrderStateEmun.寮�濮�;
- }
- return (outStockNews, outboundOrderdetail);
- }
-
- private (bool, string) CheckSelectStockDeital(Dt_OtherOutboundOrderDetail outboundOrderdetail, List<StockSelectViewDTO> stockSelectViews, GenerateOutTaskDto requestOut)
- {
- if (outboundOrderdetail == null)
- {
- return (false, "鏈壘鍒板嚭搴撳崟淇℃伅");
- }
- if (outboundOrderdetail.OrderDetailStatus == (int)OrderStateEmun.宸插畬鎴�)
- {
- return (false, "璇ユ槑缁嗕笉鍙搷浣�");
- }
- if (stockSelectViews != null && stockSelectViews.Sum(x => x.UseableQuantity) > outboundOrderdetail.OrderQuantity - outboundOrderdetail.OverOutQuantity)
- {
- return (false, "閫夋嫨鏁伴噺瓒呭嚭鍗曟嵁鏁伴噺");
- }
- if (outboundOrderdetail.OrderQuantity <= outboundOrderdetail.OverOutQuantity)
- {
- return (false, "鍗曟嵁鏁伴噺宸插嚭搴撳畬鎴�");
- }
- return (true, "鎴愬姛");
- }
-
- public List<DtStockInfo> GetStockInfos(string materielCode)
- {
- var stocks = BaseDal.Db.Queryable<DtStockInfo>()
- .Includes(x => x.StockInfoDetails)
- .Includes(x => x.LocationInfo)
- .Where(x => x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && x.LocationInfo.EnalbeStatus == (int)EnableEnum.Enable)
- .Where(x => x.StockInfoDetails.Any(d => d.MaterielCode == materielCode && d.Quantity > 0)).ToList().OrderBy(x => x.CreateDate).ToList();
-
- if (stocks == null || stocks.Count() <= 0)
- {
- return stocks;
- }
-
- var locations = stocks.Select(s => s.LocationInfo).ToList();
- List<DtLocationInfo> locationInfos = _stockInfoService.GetStockLocations(locations).Distinct().ToList();
- stocks = stocks.Where(s => s.LocationInfo != null && locationInfos.Contains(s.LocationInfo)).ToList();
- return stocks;
- }
- #endregion 鏍规嵁鍗曟嵁鏄庣粏鐢熸垚鍑哄簱浠诲姟
-
- public string GetOrderPintCode(string printCode)
- {
- string PrintCode = "";
- var PrintSetting = SqlSugarHelper.DbWMS.Queryable<Dt_PrintSetting>().Where(x => x.PrintCode == printCode).ToList().FirstOrDefault();
-
- if (PrintSetting.Spare1 == DateTime.Now.ToString("yyyyMMdd"))
- {
- PrintCode = PrintSetting.Spare1 + PrintSetting.PrintNo.ToString().PadLeft(PrintSetting.Spare2, '0');
- PrintSetting.PrintNo = PrintSetting.PrintNo + 1;
- }
- else
- {
- PrintSetting.Spare1 = DateTime.Now.ToString("yyyyMMdd");
- PrintSetting.PrintNo = 2;
- PrintCode = PrintSetting.Spare1 + 1.ToString().PadLeft(PrintSetting.Spare2, '0');
- }
- SqlSugarHelper.DbWMS.Updateable(PrintSetting).ExecuteCommand();
- return PrintCode;
- }
- }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_ProductionOutboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_ProductionOutboundOrderService.cs"
index 0b07035..6529c86 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_ProductionOutboundOrderService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OrderServices/Dt_ProductionOutboundOrderService.cs"
@@ -156,7 +156,7 @@
if (result.Item1.Count <= 0)
{
- return content.Error("鏈壘鍒板簱瀛樺垎閰嶏紝璇风‘璁ゆ槸鍚﹀瓨鍦ㄥ簱瀛樻垨鍗曟嵁鏁伴噺宸插嚭瀹�");
+ return content.Error($"璁㈠崟{outboundOrder.UpperOrderNo}鐗╂枡缂栫爜{outboundOrderdetail.MaterielCode}鏈壘鍒板簱瀛樺垎閰嶏紝璇风‘璁ゆ槸鍚﹀瓨鍦ㄥ簱瀛樻垨鍗曟嵁鏁伴噺宸插嚭瀹�");
}
result.Item1.Distinct().ForEach(item =>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Boxing/BoxingInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Boxing/BoxingInfoService.cs"
index 61e8777..e119110 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Boxing/BoxingInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Boxing/BoxingInfoService.cs"
@@ -3,18 +3,24 @@
using SqlSugar;
using System.ComponentModel.DataAnnotations;
using System.Linq.Expressions;
+using WIDESEA_Common;
using WIDESEA_Core.BaseRepository;
using WIDESEA_DTO.Basic;
using WIDESEA_IOrderRepository;
+using WIDESEA_OrderRepository;
namespace WIDESEA_StorageBasicService;
public class BoxingInfoService : ServiceBase<DtBoxingInfo, IBoxingInfoRepository>, IBoxingInfoService
{
private readonly IUnitOfWorkManage _unitOfWorkManage;
- public BoxingInfoService(IBoxingInfoRepository BaseDal,IUnitOfWorkManage unitOfWorkManage) : base(BaseDal)
+ private readonly ILocationStatusChangeRecordRepository _locationStatusChangeRecordRepository;
+ private readonly IDt_InboundOrderRepository _inboundOrderRepository;
+ public BoxingInfoService(IBoxingInfoRepository BaseDal,IUnitOfWorkManage unitOfWorkManage, ILocationStatusChangeRecordRepository locationStatusChangeRecordRepository, IDt_InboundOrderRepository inboundOrderRepository) : base(BaseDal)
{
_unitOfWorkManage = unitOfWorkManage;
+ _locationStatusChangeRecordRepository = locationStatusChangeRecordRepository;
+ _inboundOrderRepository = inboundOrderRepository;
}
public override PageGridData<DtBoxingInfo> GetPageData(PageDataOptions options)
{
@@ -52,4 +58,171 @@
new PageGridData<DtBoxingInfo>(totalCount, data);
return new PageGridData<DtBoxingInfo>(totalCount, data);
}
+
+ #region 缁勭洏
+ public async Task<WebResponseContent> AddGroupPlateAsync(GroupPlate groupPlate)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ if (groupPlate == null || groupPlate.groups.IsNullOrEmpty() || groupPlate.palletCode.IsNullOrEmpty())
+ {
+ return content.Error("鍙傛暟閿欒");
+ }
+ var info = await BaseDal.QueryFirstAsync(x => x.PalletCode == groupPlate.palletCode);
+ if (!info.IsNullOrEmpty())
+ {
+ content.Error("璇ユ墭鐩樺凡瀛樺湪缁勭洏");
+ }
+ else
+ {
+ List<DtBoxingInfoDetail> details = new List<DtBoxingInfoDetail>();
+ foreach (var item in groupPlate.groups)
+ {
+ var InboundOrder = _inboundOrderRepository.QueryFirst(x => x.OrderNo == item.orderNo);
+
+ if (InboundOrder != null)
+ {
+ var x = details.Where(x => x.MaterielCode == InboundOrder.MaterialNo && x.Warehouse == InboundOrder.WarehouseName && x.DrawingNumber == InboundOrder.ProductDrawingNumber && x.DemandClassification == InboundOrder.DemandClassification).FirstOrDefault();
+ if (x != null)
+ {
+ details.Remove(x);
+ x.MaterielCode = InboundOrder.MaterialNo;
+ x.MaterielName = InboundOrder.MaterialName;
+ x.DemandClassification = InboundOrder.DemandClassification;
+ x.Warehouse = InboundOrder.WarehouseName;
+ x.OrderNo = InboundOrder.UpperOrderNo;
+ x.Unit = InboundOrder.Unit;
+ x.Specs = InboundOrder.Specs;
+ x.Weight = InboundOrder.Weight;
+ x.Quantity = x.Quantity + item.quantity;
+ x.DrawingNumber = InboundOrder.ProductDrawingNumber;
+ x.Date = InboundOrder.Datetime;
+ details.Add(x);
+ }
+ else
+ {
+ DtBoxingInfoDetail detail = new DtBoxingInfoDetail()
+ {
+ MaterielCode = InboundOrder.MaterialNo,
+ MaterielName = InboundOrder.MaterialName,
+ DemandClassification = InboundOrder.DemandClassification,
+ Warehouse = InboundOrder.WarehouseName,
+ OrderNo = InboundOrder.UpperOrderNo,
+ Unit = InboundOrder.Unit,
+ Specs = InboundOrder.Specs,
+ Weight = InboundOrder.Weight,
+ Quantity = item.quantity,
+ DrawingNumber = InboundOrder.ProductDrawingNumber,
+ Date = InboundOrder.Datetime,
+ };
+ details.Add(detail);
+ }
+ }
+ else
+ {
+ return content.Error("鏈壘鍒板叆搴撳崟鎹俊鎭�");
+ }
+ }
+ DtBoxingInfo boxing = new DtBoxingInfo()
+ {
+ PalletCode = groupPlate.palletCode,
+ StockStatus = (int)StockStateEmun.缁勭洏鏆傚瓨,
+ BoxingInfoDetails = details
+ };
+ await BaseDal.AddDataNavAsync(boxing);
+ content.OK("缁勭洏鎴愬姛");
+ }
+ return content;
+ }
+ catch (Exception ex)
+ {
+ return content.Error(ex.Message);
+ }
+ }
+ #endregion
+
+ #region 瑙g洏
+ public async Task<WebResponseContent> DeleteGroupPlateAsync(GroupPlate groupPlate)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ if (groupPlate == null || groupPlate.palletCode.IsNullOrEmpty())
+ {
+ return content.Error("鍙傛暟閿欒");
+ }
+ var stock = await BaseDal.QueryFirstNavAsync(x => x.PalletCode == groupPlate.palletCode && x.StockStatus == (int)StockStateEmun.缁勭洏鏆傚瓨);
+ if (!stock.IsNullOrEmpty())
+ {
+ stock.StockStatus = (int)StockStateEmun.缁勭洏鎾ら攢;
+ DtStockInfo_Hty stockhty = stock.Adapt<DtStockInfo_Hty>();
+ stockhty.ModifyDate = DateTime.Now;
+ await _unitOfWorkManage.UseTranAsync(async () =>
+ {
+ await BaseDal.Db.DeleteNav<DtStockInfo>(x => x.Id == stock.Id)
+ .Include(x => x.StockInfoDetails)
+ .ExecuteCommandAsync();
+ await AddStockHtyAsync(stockhty);
+ });
+ content.OK("瑙g洏鎴愬姛");
+ }
+ else
+ {
+ content.Error("鏈壘鍒扮粍鐩樻暟鎹�");
+ }
+ return content;
+ }
+ catch (Exception ex)
+ {
+ return content.Error(ex.Message);
+ }
+ }
+ private async Task AddStockHtyAsync(DtStockInfo_Hty stockhty)
+ {
+ var isStockAdd = await SqlSugarHelper.DbWMS.InsertNav(stockhty).IncludesAllFirstLayer().ExecuteCommandAsync();
+ if (!isStockAdd)
+ {
+ throw new Exception("搴撳瓨鍘嗗彶淇℃伅娣诲姞澶辫触");
+ }
+ }
+
+ /// <summary>
+ /// 鎵归噺鍒犻櫎
+ /// </summary>
+ /// <param name="keys"></param>
+ /// <returns></returns>
+ public override WebResponseContent DeleteData(object[] keys)
+ {
+ try
+ {
+ List<DtStockInfo_Hty> stockInfos = new List<DtStockInfo_Hty>();
+ List<DtLocationInfo> locationInfos = new List<DtLocationInfo>();
+
+ foreach (var item in keys)
+ {
+ var stock = BaseDal.QueryFirstNavAsync(x => x.Id == item.ObjToInt()).Result;
+ var stockHty = stock.Adapt<DtStockInfo_Hty>();
+ stockInfos.Add(stockHty);
+
+ var location = SqlSugarHelper.DbWMS.Queryable<DtLocationInfo>().FirstAsync(x => x.LocationCode == stock.LocationCode).Result;
+ var lastStatus = location.LocationStatus;
+ location.LocationStatus = (int)LocationEnum.Free;
+ locationInfos.Add(location);
+ _locationStatusChangeRecordRepository.AddLocationStatusChangeRecord(location, lastStatus, (int)StatusChangeTypeEnum.ManualOperation, 0);
+ }
+ //var hty = BaseDal.Db.InsertNav(stockInfos)
+ // .Include(x => x.StockInfoDetails)
+ // .ExecuteCommand();
+ var isStockAdd = SqlSugarHelper.DbWMS.InsertNav(stockInfos).IncludesAllFirstLayer().ExecuteCommandAsync();
+
+ var locationd = SqlSugarHelper.DbWMS.Updateable(locationInfos).ExecuteCommandHasChange();
+ return base.DeleteData(keys);
+ }
+ catch (Exception ex)
+ {
+ return WebResponseContent.Instance.Error(ex.Message);
+ }
+ }
+ #endregion
}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/StockInfoDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/StockInfoDetailService.cs"
index 869a01d..c18b561 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/StockInfoDetailService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/StockInfoDetailService.cs"
@@ -1,8 +1,46 @@
-锘縩amespace WIDESEA_StorageBasicService;
+锘縰sing SqlSugar;
+using WIDESEA_Model.Models.Order;
+
+namespace WIDESEA_StorageBasicService;
public class StockInfoDetailService : ServiceBase<DtStockInfoDetail, IStockInfoDetailRepository>, IStockInfoDetailService
{
public StockInfoDetailService(IStockInfoDetailRepository BaseDal) : base(BaseDal)
{
}
+ public override PageGridData<DtStockInfoDetail> GetPageData(PageDataOptions options)
+ {
+ string wheres = ValidatePageOptions(options);
+ //鑾峰彇鎺掑簭瀛楁
+ Dictionary<string, OrderByType> orderbyDic = GetPageDataSort(options, TProperties);
+ List<OrderByModel> orderByModels = new List<OrderByModel>();
+ foreach (var item in orderbyDic)
+ {
+ OrderByModel orderByModel = new()
+ {
+ FieldName = item.Key,
+ OrderByType = item.Value
+ };
+ orderByModels.Add(orderByModel);
+ }
+
+
+ int totalCount = 0;
+ List<SearchParameters> searchParametersList = new List<SearchParameters>();
+ if (!string.IsNullOrEmpty(options.Wheres))
+ {
+ try
+ {
+ searchParametersList = options.Wheres.DeserializeObject<List<SearchParameters>>();
+ options.Filter = searchParametersList;
+ }
+ catch { }
+ }
+ var data = BaseDal.Db.Queryable<DtStockInfoDetail>()
+ .WhereIF(!wheres.IsNullOrEmpty(), wheres)
+ .OrderBy(orderByModels)
+ .ToPageList(options.Page, options.Rows, ref totalCount);
+ var x = new PageGridData<DtStockInfoDetail>(totalCount, data);
+ return new PageGridData<DtStockInfoDetail>(totalCount, data);
+ }
}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/StockInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/StockInfoService.cs"
index d10d516..5a9e697 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/StockInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/StockInfoService.cs"
@@ -16,6 +16,7 @@
using WIDESEA_Core.Enums;
using WIDESEA_DTO;
using WIDESEA_DTO.Basic;
+using WIDESEA_DTO.Order;
using WIDESEA_DTO.Stock;
using WIDESEA_DTO.WMS;
using WIDESEA_IOrderRepository;
@@ -31,33 +32,30 @@
private readonly ILocationStatusChangeRecordRepository _locationStatusChangeRecordRepository;
private readonly IDt_InboundOrderRepository _inboundOrderRepository;
private readonly IUnitOfWorkManage _unitOfWorkManage;
- private readonly IDt_OtherOutboundOrderRepository _OtheroutorderRepository;
- private readonly IDt_OtherOutboundOrderDetailRepository _OtheroutorderdetailRepository;
private readonly IStockInfoDetailRepository _stockInfoDetailRepository;
private readonly IDt_TaskService _taskService;
private readonly ILocationInfoRepository _locationRepository;
private readonly IDt_TaskRepository _taskRepository;
+ private readonly IDt_OrderOutDetailsRepository _outDetailsRepository;
public StockInfoService(IStockInfoRepository BaseDal,
ILocationStatusChangeRecordRepository locationStatusChangeRecordRepository,
IDt_InboundOrderRepository inboundOrderRepository,
IUnitOfWorkManage unitOfWorkManage,
- IDt_OtherOutboundOrderRepository OtheroutorderRepository,
- IDt_OtherOutboundOrderDetailRepository OtheroutorderdetailRepository,
IStockInfoDetailRepository stockInfoDetailRepository,
IDt_TaskService taskService,
ILocationInfoRepository locationRepository,
- IDt_TaskRepository taskRepository) : base(BaseDal)
+ IDt_TaskRepository taskRepository,
+ IDt_OrderOutDetailsRepository outDetailsRepository) : base(BaseDal)
{
_locationStatusChangeRecordRepository = locationStatusChangeRecordRepository;
_inboundOrderRepository = inboundOrderRepository;
_unitOfWorkManage = unitOfWorkManage;
- _OtheroutorderRepository = OtheroutorderRepository;
- _OtheroutorderdetailRepository = OtheroutorderdetailRepository;
_stockInfoDetailRepository = stockInfoDetailRepository;
_taskService = taskService;
_locationRepository = locationRepository;
_taskRepository = taskRepository;
+ _outDetailsRepository = outDetailsRepository;
}
/// <summary>
@@ -132,6 +130,57 @@
return new PageGridData<DtStockInfo>(totalCount, data);
}
+ public List<DtLocationInfo> GetStockLocations(List<DtLocationInfo>? locations)
+ {
+ List<DtLocationInfo> locationsNew = new List<DtLocationInfo>();
+ foreach (var item in locations)
+ {
+ if (item.AreaId == 1)
+ {
+ if (item.Depth == 2)
+ {
+ var locationLateral = _locationRepository.QueryFirst(x => x.Row == 1 && x.Column == item.Column && x.Layer == item.Layer);
+
+ if (locationLateral.LocationStatus == (int)LocationEnum.Lock && locationLateral.EnalbeStatus == 1)
+ {
+ locationsNew.Remove(item);
+ continue;
+ }
+ }
+ locationsNew.Add(item);
+ }
+ else if (item.AreaId == 2)
+ {
+ var locationLateral = _locationRepository.QueryData(x => x.Row == item.Row && x.Column > item.Column && x.Remark == item.Remark);
+
+ foreach (var Lateral in locationLateral)
+ {
+ if (Lateral.LocationStatus == (int)LocationEnum.Lock && Lateral.EnalbeStatus == 1)
+ {
+ locationsNew.Remove(item);
+ continue;
+ }
+ locationsNew.Add(item);
+ }
+ }
+
+ else if (item.AreaId == 5 || item.AreaId == 6)
+ {
+ var locationLateral = _locationRepository.QueryData(x => x.Row == item.Row && x.Column < item.Column && x.Remark == item.Remark);
+
+ foreach (var lateral in locationLateral)
+ {
+ if (lateral.LocationStatus == (int)LocationEnum.Lock && lateral.EnalbeStatus == 1)
+ {
+ locationsNew.Remove(item);
+ continue;
+ }
+ locationsNew.Add(item);
+ }
+ }
+ }
+ return locationsNew;
+ }
#region 搴撳瓨瑙嗗浘
public List<StockSelectViewDTO> GetStockSelectViews(GetStockSelectViewDto viewDto)
@@ -170,258 +219,175 @@
return result;
}
- public List<DtLocationInfo> GetStockLocations(List<DtLocationInfo>? locations)
- {
- List<DtLocationInfo> locationsNew = new List<DtLocationInfo>();
- foreach (var item in locations)
- {
- if (item.AreaId == 1)
- {
- if (item.Depth == 2)
- {
- var locationLateral = _locationRepository.QueryFirst(x => x.Row == 1 && x.Column == item.Column && x.Layer == item.Layer);
-
- if (locationLateral.LocationStatus == (int)LocationEnum.Lock && locationLateral.EnalbeStatus == 1)
- {
- locationsNew.Remove(item);
- continue;
- }
- locationsNew.Add(item);
- }
- }
- else if (item.AreaId == 2)
- {
- var locationLateral = _locationRepository.QueryData(x => x.Row == item.Row && x.Column > item.Column && x.Remark == item.Remark);
-
- foreach (var Lateral in locationLateral)
- {
- if (Lateral.LocationStatus == (int)LocationEnum.Lock && Lateral.EnalbeStatus == 1)
- {
- locationsNew.Remove(item);
- continue;
- }
- locationsNew.Add(item);
- }
- }
-
- else if (item.AreaId == 5 || item.AreaId == 6)
- {
- var locationLateral = _locationRepository.QueryData(x => x.Row == item.Row && x.Column < item.Column && x.Remark == item.Remark);
-
- foreach (var lateral in locationLateral)
- {
- if (lateral.LocationStatus == (int)LocationEnum.Lock && lateral.EnalbeStatus == 1)
- {
- locationsNew.Remove(item);
- continue;
- }
- locationsNew.Add(item);
- }
- }
- }
- return locationsNew;
- }
-
- #endregion
-
- #region 鏍规嵁鍗曟嵁鏄庣粏鐢熸垚鍑哄簱浠诲姟
-
- public async Task<WebResponseContent> GenerateOutboundTask(GenerateOutTaskDto requestOut)
+ public WebResponseContent GetStockView(GetStockSelectViewDto viewDto)
{
WebResponseContent content = new WebResponseContent();
try
{
- foreach (var orderId in requestOut.orderIds)
+ Expression<Func<DtStockInfoDetail, bool>> expressionOrder = x => true;
+ if (!string.IsNullOrEmpty(viewDto.materielCode))
{
- List<RequestTaskDto> taskDtos = new List<RequestTaskDto>();
- Dt_OtherOutboundOrderDetail outboundOrderdetail = _OtheroutorderdetailRepository.QueryFirst(x => x.Id == orderId);
- Dt_OtherOutboundOrder outboundOrder = _OtheroutorderRepository.QueryFirst(x => x.Id == outboundOrderdetail.OrderId);
-
- (bool, string) checkResult = CheckSelectStockDeital(outboundOrderdetail, requestOut.stockViews, requestOut);
- if (!checkResult.Item1) throw new Exception(checkResult.Item2);
-
- else
- {
- var result = AssignStockOutbound(outboundOrderdetail, requestOut.stockViews);
-
- if (result.Item1.Count <= 0)
- {
- return content.Error("鏈壘鍒板簱瀛樺垎閰嶏紝璇风‘璁ゆ槸鍚﹀瓨鍦ㄥ簱瀛樻垨鍗曟嵁鏁伴噺宸插嚭瀹�");
- }
-
- result.Item1.Distinct().ForEach(item =>
- {
- RequestTaskDto task = new RequestTaskDto
- {
- TaskType = outboundOrder.OrderType,
- OrderNo = outboundOrder.OrderNo,
- MaterielCode = outboundOrderdetail.MaterielCode,
- Position = item.LocationCode,
- PalletCode = item.PalletCode,
- AreaId = Convert.ToInt32(requestOut.AreaId),
- };
- taskDtos.Add(task);
- item.StockInfoDetails.Where(x => x.MaterielCode == outboundOrderdetail.MaterielCode).FirstOrDefault().Status = (int)StockStateEmun.鍑哄簱閿佸畾;
- item.StockStatus = (int)StockStateEmun.鍑哄簱閿佸畾;
- });
- List<Dt_Task> taskNews = new List<Dt_Task>();
- List<WMSTaskDTO> taskDTOs = new List<WMSTaskDTO>();
- foreach (var item in taskDtos)
- {
- taskNews.Add(await _taskService.RequestOutboundTaskAsync(item));
-
- }
- List<DtLocationStatusChangeRecord> locationStatusChangeRecords = new List<DtLocationStatusChangeRecord>();
- List<DtLocationInfo> locations = new List<DtLocationInfo>();
- foreach (var item in taskNews)
- {
- taskDTOs.Add(CreateTaskDTO(item));
- var result1 = _taskService.UpdateLocationStatus(item.SourceAddress, LocationEnum.InStockDisable, item.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticOutbound);
- var result2 = _taskService.UpdateLocationStatus(item.TargetAddress, LocationEnum.Lock, item.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticOutbound);
- locationStatusChangeRecords.AddRange(result1.Item1);
- locationStatusChangeRecords.AddRange(result2.Item1);
- locations.AddRange(result1.Item2);
- locations.AddRange(result2.Item2);
- }
-
- await _unitOfWorkManage.UseTranAsync(async () =>
- {
- _taskRepository.AddData(taskNews);
- BaseDal.UpdateDataNav(result.Item1);
- await _locationStatusChangeRecordRepository.AddDataAsync(locationStatusChangeRecords);
- await _locationRepository.UpdateDataAsync(locations);
- _OtheroutorderdetailRepository.UpdateData(result.Item2);
- });
- content = await _taskService.SendWCSTask(taskDTOs);
- }
+ expressionOrder = x => x.MaterielCode.Contains(viewDto.materielCode);
}
- return content;
+ int count = 0;
+ count = BaseDal.Db.Queryable<DtStockInfo>()
+ .Includes(x => x.StockInfoDetails)
+ .Includes(x => x.LocationInfo)
+ .Where(x => x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && x.LocationInfo.EnalbeStatus == (int)EnableEnum.Enable)
+ .WhereIF(!viewDto.materielCode.IsNullOrEmpty(), x => x.StockInfoDetails.Any(d => d.MaterielCode == viewDto.materielCode && d.Quantity > 0)).ToList().OrderBy(x => x.CreateDate).Count();
+
+
+ int maxPage = Convert.ToInt32(Math.Ceiling(count / 10.0));
+ if (viewDto.pageNo <= maxPage)
+ {
+ var stocks = BaseDal.Db.Queryable<DtStockInfo>()
+ .Includes(x => x.StockInfoDetails)
+ .Includes(x => x.LocationInfo)
+ .Where(x => x.LocationInfo.LocationStatus == (int)LocationEnum.InStock
+ && x.LocationInfo.EnalbeStatus == (int)EnableEnum.Enable)
+ .WhereIF(!viewDto.materielCode.IsNullOrEmpty(),
+ x => x.StockInfoDetails.Any(d => d.MaterielCode == viewDto.materielCode && d.Quantity > 0))
+ .Select(x => new DtStockInfo
+ {
+ Id = x.Id,
+ PalletCode = x.PalletCode,
+ LocationCode = x.LocationCode,
+ StockInfoDetails = x.StockInfoDetails
+ .OrderByDescending(d => d.CreateDate)
+ .Take(1)
+ .ToList(),
+ LocationInfo = x.LocationInfo
+ })
+ .OrderBy(x => x.CreateDate)
+ .ToList();
+
+ List<DtLocationInfo> locationInfos = new List<DtLocationInfo>();
+ List<DtStockInfo> stockNew = new List<DtStockInfo>();
+ if (stocks != null || stocks.Count() > 0)
+ {
+ var locations = stocks.Select(s => s.LocationInfo).ToList();
+ locationInfos = GetStockLocations(locations).Distinct().ToList();
+ stockNew = stocks.Where(s => s.LocationInfo != null && locationInfos.Contains(s.LocationInfo)).ToList();
+ }
+
+ var result = stockNew.Skip((maxPage-1) * 10).Take(10).Select(s => new StockSelectViewDTO
+ {
+ Id =s.Id,
+
+ MaterielCode = s.StockInfoDetails
+ .FirstOrDefault()?.MaterielCode ?? string.Empty,
+
+ MaterielName = s.StockInfoDetails
+ .FirstOrDefault()?.MaterielName ?? string.Empty,
+
+ Quantity = s.StockInfoDetails
+ .FirstOrDefault()?.Quantity ?? 0, // 澶勭悊绌哄�兼儏鍐�
+
+ PalletCode = s.PalletCode ?? string.Empty,
+
+ LocationCode = s.LocationInfo?.LocationCode ?? string.Empty
+ }).ToList();
+
+ content = WebResponseContent.Instance.OK(data: result);
+ }
+ else
+ {
+ var stocks = BaseDal.Db.Queryable<DtStockInfo>()
+ .Includes(x => x.StockInfoDetails)
+ .Includes(x => x.LocationInfo)
+ .Where(x => x.LocationInfo.LocationStatus == (int)LocationEnum.InStock
+ && x.LocationInfo.EnalbeStatus == (int)EnableEnum.Enable)
+ .WhereIF(!viewDto.materielCode.IsNullOrEmpty(),
+ x => x.StockInfoDetails.Any(d => d.MaterielCode == viewDto.materielCode && d.Quantity > 0))
+ .Select(x => new DtStockInfo
+ {
+ Id = x.Id,
+ PalletCode = x.PalletCode,
+ LocationCode = x.LocationCode,
+ StockInfoDetails = x.StockInfoDetails
+ .OrderByDescending(d => d.CreateDate)
+ .Take(1)
+ .ToList(),
+ LocationInfo = x.LocationInfo
+ })
+ .OrderBy(x => x.CreateDate)
+ .ToList();
+
+ List<DtLocationInfo> locationInfos = new List<DtLocationInfo>();
+ List<DtStockInfo> stockNew = new List<DtStockInfo>();
+ if (stocks != null || stocks.Count() > 0)
+ {
+ var locations = stocks.Select(s => s.LocationInfo).ToList();
+ locationInfos = GetStockLocations(locations).Distinct().ToList();
+ stockNew = stocks.Where(s => s.LocationInfo != null && locationInfos.Contains(s.LocationInfo)).ToList();
+ }
+
+ var result = stockNew.Skip(0 * 10).Take(10).Select(s => new StockSelectViewDTO
+ {
+ Id = s.Id,
+
+ MaterielCode = s.StockInfoDetails
+ .FirstOrDefault()?.MaterielCode ?? string.Empty,
+
+ MaterielName = s.StockInfoDetails
+ .FirstOrDefault()?.MaterielName ?? string.Empty,
+
+ Quantity = s.StockInfoDetails
+ .FirstOrDefault()?.Quantity ?? 0, // 澶勭悊绌哄�兼儏鍐�
+
+ PalletCode = s.PalletCode ?? string.Empty,
+
+ LocationCode = s.LocationInfo?.LocationCode ?? string.Empty
+ }).ToList();
+
+ content = WebResponseContent.Instance.OK(data: result);
+ }
}
catch (Exception ex)
{
- return content.Error(ex.Message);
+ content = WebResponseContent.Instance.Error($"鏌ヨ鍑哄簱鍗曟嵁閿欒,閿欒淇℃伅:{ex.Message}");
}
-
+ return content;
}
- private WMSTaskDTO CreateTaskDTO(Dt_Task task)
+
+ #endregion
+
+ #region 鍏朵粬鍑哄簱瑙嗗浘
+ public List<StockSelectViewDTO> GetOtherOutBoundView(int id)
{
- return new WMSTaskDTO
- {
- TaskNum = task.TaskNum.Value,
- Grade = task.Grade.Value,
- PalletCode = task.PalletCode,
- RoadWay = task.Roadway,
- SourceAddress = task.SourceAddress,
- TargetAddress = task.TargetAddress,
- TaskState = task.TaskState,
- Id = 0,
- TaskType = task.TaskType,
- AGVTaskNum = task.AGVTaskNum,
- Remark = task.Remark
- };
- }
- public (List<DtStockInfo>, Dt_OtherOutboundOrderDetail) AssignStockOutbound(Dt_OtherOutboundOrderDetail outboundOrderdetail, List<StockSelectViewDTO> stockSelectViews)
- {
- decimal originalNeedQuantity = outboundOrderdetail.OrderQuantity - outboundOrderdetail.OverOutQuantity;
+ DtStockInfo stock = BaseDal.Db.Queryable<DtStockInfo>()
+ .Includes(x => x.StockInfoDetails)
+ .Includes(x => x.LocationInfo)
+ .Where(x => x.Id == id)
+ .Where(x => x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && x.LocationInfo.EnalbeStatus == (int)EnableEnum.Enable).First();
- decimal needQuantity = originalNeedQuantity;
-
- List<DtStockInfo> outStocks = new List<DtStockInfo>();
- if (stockSelectViews != null && stockSelectViews.Count > 0)
+ List<DtLocationInfo> locationInfos = new List<DtLocationInfo>();
+ List<DtStockInfo> stockNew = new List<DtStockInfo>();
+ if (stock != null)
{
- outStocks = BaseDal.Db.Queryable<DtStockInfo>().Where(x => stockSelectViews.Select(x => x.PalletCode).ToList().Contains(x.PalletCode)).Includes(x => x.StockInfoDetails).ToList();
- }
- else
- {
- outStocks = GetStockInfos(outboundOrderdetail.MaterielCode);
- }
-
- List<DtStockInfo> outStockNews=new List<DtStockInfo>();
-
- foreach (var item in outStocks)
- {
- var stockDetail = item.StockInfoDetails
- .Where(d => d.MaterielCode == outboundOrderdetail.MaterielCode && d.Quantity > 0);
- if (needQuantity <= 0)
+ if (_taskService.LocationIsOutBound(stock.LocationInfo))
{
- continue;
+ return null;
}
- foreach (var detail in stockDetail)
- {
- if (detail != null)
- {
- if (needQuantity >= detail.Quantity)
- {
- if (detail.Quantity <= detail.OutboundQuantity)
- {
- continue;
- }
- needQuantity -= detail.Quantity;
- detail.OutboundQuantity = detail.Quantity;
- }
- else
- {
- if (detail.Quantity <= detail.OutboundQuantity)
- {
- continue;
- }
- detail.OutboundQuantity = needQuantity;
- needQuantity = 0;
- }
- outStockNews.Add(item);
- }
- }
-
}
- outboundOrderdetail.OverOutQuantity = outboundOrderdetail.OrderQuantity - needQuantity;
- if (outboundOrderdetail.OverOutQuantity != 0)
+ var result = stock.StockInfoDetails.Select(s => new StockSelectViewDTO
{
- outboundOrderdetail.OrderDetailStatus = (int)OrderStateEmun.寮�濮�;
- }
- return (outStockNews, outboundOrderdetail);
+ MaterielCode = s.MaterielCode ?? string.Empty,
+
+ MaterielName = s.MaterielName ?? string.Empty,
+
+ Quantity = s.Quantity, // 澶勭悊绌哄�兼儏鍐�
+
+ PalletCode = stock.PalletCode ?? string.Empty,
+
+ LocationCode = stock.LocationCode ?? string.Empty
+ }).ToList();
+
+ return result;
}
- private (bool, string) CheckSelectStockDeital(Dt_OtherOutboundOrderDetail outboundOrderdetail, List<StockSelectViewDTO> stockSelectViews, GenerateOutTaskDto requestOut)
- {
- if (outboundOrderdetail == null)
- {
- return (false, "鏈壘鍒板嚭搴撳崟淇℃伅");
- }
- if (outboundOrderdetail.OrderDetailStatus == (int)OrderStateEmun.宸插畬鎴�)
- {
- return (false, "璇ユ槑缁嗕笉鍙搷浣�");
- }
- if (stockSelectViews != null && stockSelectViews.Sum(x => x.UseableQuantity) > outboundOrderdetail.OrderQuantity - outboundOrderdetail.OverOutQuantity)
- {
- return (false, "閫夋嫨鏁伴噺瓒呭嚭鍗曟嵁鏁伴噺");
- }
- if (outboundOrderdetail.OrderQuantity <= outboundOrderdetail.OverOutQuantity)
- {
- return (false, "鍗曟嵁鏁伴噺宸插嚭搴撳畬鎴�");
- }
- return (true, "鎴愬姛");
- }
-
- public List<DtStockInfo> GetStockInfos(string materielCode)
- {
- var stocks = BaseDal.Db.Queryable<DtStockInfo>()
- .Includes(x => x.StockInfoDetails)
- .Includes(x => x.LocationInfo)
- .Where(x => x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && x.LocationInfo.EnalbeStatus == (int)EnableEnum.Enable)
- .Where(x => x.StockInfoDetails.Any(d => d.MaterielCode == materielCode && d.Quantity > 0)).ToList().OrderBy(x => x.CreateDate).ToList();
-
- if (stocks == null || stocks.Count() <= 0)
- {
- return stocks;
- }
-
- var locations = stocks.Select(s => s.LocationInfo).ToList();
- List<DtLocationInfo> locationInfos = GetStockLocations(locations).Distinct().ToList();
- stocks = stocks.Where(s => s.LocationInfo != null && locationInfos.Contains(s.LocationInfo)).ToList();
- return stocks;
- }
- #endregion 鏍规嵁鍗曟嵁鏄庣粏鐢熸垚鍑哄簱浠诲姟
+ #endregion
#region 缁勭洏
public async Task<WebResponseContent> AddGroupPlateAsync(GroupPlate groupPlate)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs"
index 6240332..d2824f8 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs"
@@ -1,4 +1,5 @@
-锘縰sing MailKit.Search;
+锘縰sing AngleSharp.Dom;
+using MailKit.Search;
using Masuit.Tools;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
@@ -30,14 +31,13 @@
private readonly ISys_ConfigService _configService;
private readonly ILocationInfoRepository _locationRepository;
private readonly IDt_InboundOrderRepository _inboundOrderRepository;
- private readonly IDt_OtherOutboundOrderRepository _otheroutboundorderRepository;
private readonly IDt_ProductionOutboundOrderRepository _productionoutboundorderRepository;
- private readonly IDt_InventoryOutboundOrderRepository _inventoryoutboundorderRepository;
private readonly IDt_AllocateOutboundOrderRepository _allocateoutboundorderRepository;
+ private readonly IUnitOfWorkManage _unitOfWorkManage;
private Timer _timer;
- public MyBackgroundService(ILogger<MyBackgroundService> logger, ILocationInfoRepository locationRepository, IStockInfoRepository stockInfoRepository, IDt_AreaInfoRepository areaInfoRepository, IDt_TaskRepository taskRepository, IDt_StationManagerRepository stationManagerRepository, ISys_ConfigService configService,IDt_InboundOrderRepository inboundOrderRepository, IDt_OtherOutboundOrderRepository otheroutboundorderRepository, IDt_AllocateOutboundOrderRepository allocateoutboundorderRepository, IDt_InventoryOutboundOrderRepository inventoryOutboundOrderRepository,IDt_ProductionOutboundOrderRepository productionOutboundOrderRepository)
+ public MyBackgroundService(ILogger<MyBackgroundService> logger, ILocationInfoRepository locationRepository, IStockInfoRepository stockInfoRepository, IDt_AreaInfoRepository areaInfoRepository, IDt_TaskRepository taskRepository, IDt_StationManagerRepository stationManagerRepository, ISys_ConfigService configService,IDt_InboundOrderRepository inboundOrderRepository,IDt_AllocateOutboundOrderRepository allocateoutboundorderRepository,IDt_ProductionOutboundOrderRepository productionOutboundOrderRepository,IUnitOfWorkManage unitOfWorkManage)
{
_logger = logger;
_locationRepository = locationRepository;
@@ -47,10 +47,9 @@
_stationManagerRepository = stationManagerRepository;
_configService = configService;
_inboundOrderRepository = inboundOrderRepository;
- _otheroutboundorderRepository = otheroutboundorderRepository;
_allocateoutboundorderRepository = allocateoutboundorderRepository;
- _inventoryoutboundorderRepository = inventoryOutboundOrderRepository;
_productionoutboundorderRepository = productionOutboundOrderRepository;
+ _unitOfWorkManage = unitOfWorkManage;
}
public Task StartAsync(CancellationToken cancellationToken)
@@ -130,121 +129,28 @@
}
#endregion
-
#region ERP鐢熶骇棰嗘枡鍗曞悓姝�
var productionOutOrder = _productionoutboundorderRepository.Db.Queryable<Dt_ProductionOutboundOrder>().Includes(x => x.Details).ToList();
- List<Dt_ProductionOutboundOrder> EngineeringoutboundOrderAdd = new List<Dt_ProductionOutboundOrder>();
- List<Dt_ProductionOutboundOrder> EngineeringoutboundOrderUpdate = new List<Dt_ProductionOutboundOrder>();
List<Dt_ProductionOutboundOrder> productionoutboundOrderAdd = new List<Dt_ProductionOutboundOrder>();
- List<Dt_ProductionOutboundOrder> productionoutboundOrderUpdate = new List<Dt_ProductionOutboundOrder>();
List<WMS_鐢ㄥ弸宸ョ▼鍙戣揣鍗曚竴瑙堣〃_ST> EngineeringERP = SqlSugarHelper.DBERP.Queryable<WMS_鐢ㄥ弸宸ョ▼鍙戣揣鍗曚竴瑙堣〃_ST>().Where(x => true).ToList();
List<WMS_鐢ㄥ弸鐢熶骇棰嗘枡鍗曚竴瑙堣〃_ST> productERP = SqlSugarHelper.DBERP.Queryable<WMS_鐢ㄥ弸鐢熶骇棰嗘枡鍗曚竴瑙堣〃_ST>().Where(x => true).ToList();
foreach (var item in EngineeringERP)
{
- var x = productionOutOrder.Where(x => x.UpperOrderNo == item.鍗曞彿).FirstOrDefault();
+ var x = productionOutOrder.Where(x => x.UpperOrderNo == item.鍗曞彿 && x.DemandClassification == item.闇�姹傚悕绉� && x.OrderPartNumber == item.璁㈠崟鏂欏彿 && x.OrderSpec == item.璁㈠崟瑙勬牸).FirstOrDefault();
if (x == null)
{
- if(productionoutboundOrderAdd.Where(x => x.UpperOrderNo == item.鍗曞彿).FirstOrDefault()==null)
+ if(productionoutboundOrderAdd.Where(x => x.UpperOrderNo == item.鍗曞彿 && x.DemandClassification == item.闇�姹傚悕绉� && x.OrderPartNumber == item.璁㈠崟鏂欏彿 && x.OrderSpec == item.璁㈠崟瑙勬牸).FirstOrDefault()==null)
{
Dt_ProductionOutboundOrder outOrder = new Dt_ProductionOutboundOrder()
{
OrderNo = GetOrderPintCode("OrderNoOut"),
UpperOrderNo = item.鍗曞彿,
- OrderStatus = (int)OrderStateEmun.鏈紑濮�,
- OrderType = (int)OrderTypeEmun.鐢熶骇棰嗘枡鍗�,
- CreateType = (int)OrderCreateTypeEmun.ERP鎺ㄩ��,
- Details = new List<Dt_ProductionOutboundOrderDetail>()
- {
- new Dt_ProductionOutboundOrderDetail()
- {
- MaterielCode = item.瀛愪欢鏂欏彿,
- MaterielName = item.瀛愪欢鍝佸悕,
- DemandClassification = item.闇�姹傚悕绉�,
- OrderQuantity = item.瀛愪欢瀹為檯鐢ㄩ噺,
- NotOutQuantity = item.瀛愪欢鏈彂鏁伴噺,
- OverOutQuantity = item.瀛愪欢鍙戞斁鏁伴噺,
- }
- }
- };
- EngineeringoutboundOrderAdd.Add(outOrder);
- }
- else
- {
- var existingOrder = EngineeringoutboundOrderAdd.Where(x => x.UpperOrderNo == item.鍗曞彿).FirstOrDefault();
- existingOrder.Details.Add(new Dt_ProductionOutboundOrderDetail()
- {
- MaterielCode = item.瀛愪欢鏂欏彿,
- MaterielName = item.瀛愪欢鍝佸悕,
+ OrderName = item.璁㈠崟鍝佸悕,
DemandClassification = item.闇�姹傚悕绉�,
- OrderQuantity = item.瀛愪欢瀹為檯鐢ㄩ噺,
- NotOutQuantity = item.瀛愪欢鏈彂鏁伴噺,
- OverOutQuantity = item.瀛愪欢鍙戞斁鏁伴噺,
- });
- }
- }
- //else
- //{
- // foreach (var detail in x.Details)
- // {
- // if (detail.MaterielCode != item.瀛愪欢鏂欏彿 && detail.MaterielName != item.瀛愪欢鍝佸悕)
- // {
- // if (EngineeringoutboundOrderUpdate.Where(o => o.UpperOrderNo == item.鍗曞彿).FirstOrDefault() == null)
- // {
- // x.Details = new List<Dt_ProductionOutboundOrderDetail>()
- // {
- // new Dt_ProductionOutboundOrderDetail()
- // {
- // MaterielCode = item.瀛愪欢鏂欏彿,
- // MaterielName = item.瀛愪欢鍝佸悕,
- // DemandClassification = item.闇�姹傚悕绉�,
- // OrderQuantity = item.瀛愪欢瀹為檯鐢ㄩ噺,
- // NotOutQuantity = item.瀛愪欢鏈彂鏁伴噺,
- // OverOutQuantity = item.瀛愪欢鍙戞斁鏁伴噺,
- // }
- // };
- // EngineeringoutboundOrderUpdate.Add(x);
- // }
- // else
- // {
- // var existingOrder = EngineeringoutboundOrderUpdate.Where(o => o.UpperOrderNo == item.鍗曞彿).FirstOrDefault();
- // existingOrder.Details.Add(new Dt_ProductionOutboundOrderDetail()
- // {
- // MaterielCode = item.瀛愪欢鏂欏彿,
- // MaterielName = item.瀛愪欢鍝佸悕,
- // DemandClassification = item.闇�姹傚悕绉�,
- // OrderQuantity = item.瀛愪欢瀹為檯鐢ㄩ噺,
- // NotOutQuantity = item.瀛愪欢鏈彂鏁伴噺,
- // OverOutQuantity = item.瀛愪欢鍙戞斁鏁伴噺,
- // });
- // }
- // }
- // }
- //}
- }
- if (EngineeringoutboundOrderAdd.Count > 0)
- {
- foreach (var order in EngineeringoutboundOrderAdd)
- {
- _productionoutboundorderRepository.AddDataNavAsync(order);
- }
- }
- if (EngineeringoutboundOrderUpdate.Count > 0)
- {
- _productionoutboundorderRepository.UpdateDataNav(EngineeringoutboundOrderUpdate);
- }
- foreach (var item in productERP)
- {
- var x = productionOutOrder.Where(x => x.UpperOrderNo == item.鍗曞彿).FirstOrDefault();
- if (x == null)
- {
- if (productionoutboundOrderAdd.Where(x => x.UpperOrderNo == item.鍗曞彿).FirstOrDefault() == null)
- {
- Dt_ProductionOutboundOrder outOrder = new Dt_ProductionOutboundOrder()
- {
- OrderNo = GetOrderPintCode("OrderNoOut"),
- UpperOrderNo = item.鍗曞彿,
+ OrderPartNumber = item.璁㈠崟鏂欏彿,
+ OrderSpec = item.璁㈠崟瑙勬牸,
OrderStatus = (int)OrderStateEmun.鏈紑濮�,
OrderType = (int)OrderTypeEmun.鐢熶骇棰嗘枡鍗�,
CreateType = (int)OrderCreateTypeEmun.ERP鎺ㄩ��,
@@ -254,7 +160,8 @@
{
MaterielCode = item.瀛愪欢鏂欏彿,
MaterielName = item.瀛愪欢鍝佸悕,
- DemandClassification = item.闇�姹傚悕绉�,
+ Specs = item.瀛愪欢瑙勬牸,
+ Weight = item.瀛愪欢鍗曢噸,
OrderQuantity = item.瀛愪欢瀹為檯鐢ㄩ噺,
NotOutQuantity = item.瀛愪欢鏈彂鏁伴噺,
OverOutQuantity = item.瀛愪欢鍙戞斁鏁伴噺,
@@ -270,67 +177,152 @@
{
MaterielCode = item.瀛愪欢鏂欏彿,
MaterielName = item.瀛愪欢鍝佸悕,
- DemandClassification = item.闇�姹傚悕绉�,
+ Specs = item.瀛愪欢瑙勬牸,
+ Weight = item.瀛愪欢鍗曢噸,
OrderQuantity = item.瀛愪欢瀹為檯鐢ㄩ噺,
NotOutQuantity = item.瀛愪欢鏈彂鏁伴噺,
OverOutQuantity = item.瀛愪欢鍙戞斁鏁伴噺,
});
}
}
- //else
- //{
- // foreach (var detail in x.Details)
- // {
- // if (productionoutboundOrderUpdate.Where(o => o.UpperOrderNo == item.鍗曞彿).FirstOrDefault() == null)
- // {
- // x.Details = new List<Dt_ProductionOutboundOrderDetail>()
- // {
- // new Dt_ProductionOutboundOrderDetail()
- // {
- // MaterielCode = item.瀛愪欢鏂欏彿,
- // MaterielName = item.瀛愪欢鍝佸悕,
- // DemandClassification = item.闇�姹傚悕绉�,
- // OrderQuantity = item.瀛愪欢瀹為檯鐢ㄩ噺,
- // NotOutQuantity = item.瀛愪欢鏈彂鏁伴噺,
- // OverOutQuantity = item.瀛愪欢鍙戞斁鏁伴噺,
- // }
- // };
- // productionoutboundOrderUpdate.Add(x);
- // }
- // else
- // {
- // var existingOrder = productionoutboundOrderUpdate.Where(o => o.UpperOrderNo == item.鍗曞彿).FirstOrDefault();
- // existingOrder.Details.Add(new Dt_ProductionOutboundOrderDetail()
- // {
- // MaterielCode = item.瀛愪欢鏂欏彿,
- // MaterielName = item.瀛愪欢鍝佸悕,
- // DemandClassification = item.闇�姹傚悕绉�,
- // OrderQuantity = item.瀛愪欢瀹為檯鐢ㄩ噺,
- // NotOutQuantity = item.瀛愪欢鏈彂鏁伴噺,
- // OverOutQuantity = item.瀛愪欢鍙戞斁鏁伴噺,
- // });
- // }
- // }
- //}
+ }
+ foreach (var item in productERP)
+ {
+ var x = productionOutOrder.Where(x => x.UpperOrderNo == item.鍗曞彿 && x.DemandClassification == item.闇�姹傚悕绉� && x.OrderPartNumber == item.璁㈠崟鏂欏彿).FirstOrDefault();
+ if (x == null)
+ {
+ if (productionoutboundOrderAdd.Where(x => x.UpperOrderNo == item.鍗曞彿 && x.DemandClassification == item.闇�姹傚悕绉� && x.OrderPartNumber == item.璁㈠崟鏂欏彿).FirstOrDefault() == null)
+ {
+ Dt_ProductionOutboundOrder outOrder = new Dt_ProductionOutboundOrder()
+ {
+ OrderNo = GetOrderPintCode("OrderNoOut"),
+ UpperOrderNo = item.鍗曞彿,
+ OrderName = item.璁㈠崟鍝佸悕,
+ DemandClassification = item.闇�姹傚悕绉�,
+ OrderPartNumber = item.璁㈠崟鏂欏彿,
+ //OrderSpec = item.璁㈠崟瑙勬牸,
+ OrderStatus = (int)OrderStateEmun.鏈紑濮�,
+ OrderType = (int)OrderTypeEmun.鐢熶骇棰嗘枡鍗�,
+ CreateType = (int)OrderCreateTypeEmun.ERP鎺ㄩ��,
+ Details = new List<Dt_ProductionOutboundOrderDetail>()
+ {
+ new Dt_ProductionOutboundOrderDetail()
+ {
+ MaterielCode = item.瀛愪欢鏂欏彿,
+ MaterielName = item.瀛愪欢鍝佸悕,
+ Specs = item.瀛愪欢瑙勬牸,
+ Weight = item.瀛愪欢鍗曢噸,
+ OrderQuantity = item.瀛愪欢瀹為檯鐢ㄩ噺,
+ NotOutQuantity = item.瀛愪欢鏈彂鏁伴噺,
+ OverOutQuantity = item.瀛愪欢鍙戞斁鏁伴噺,
+ }
+ }
+ };
+ productionoutboundOrderAdd.Add(outOrder);
+ }
+ else
+ {
+ var existingOrder = productionoutboundOrderAdd.Where(x => x.UpperOrderNo == item.鍗曞彿 && x.DemandClassification == item.闇�姹傚悕绉� && x.OrderPartNumber == item.璁㈠崟鏂欏彿).FirstOrDefault();
+ existingOrder.Details.Add(new Dt_ProductionOutboundOrderDetail()
+ {
+ MaterielCode = item.瀛愪欢鏂欏彿,
+ MaterielName = item.瀛愪欢鍝佸悕,
+ Specs = item.瀛愪欢瑙勬牸,
+ Weight = item.瀛愪欢鍗曢噸,
+ OrderQuantity = item.瀛愪欢瀹為檯鐢ㄩ噺,
+ NotOutQuantity = item.瀛愪欢鏈彂鏁伴噺,
+ OverOutQuantity = item.瀛愪欢鍙戞斁鏁伴噺,
+ });
+ }
+ }
+
}
+ #endregion
+
+ #region ERP璋冩嫧鍑哄簱鍗曞悓姝�
+
+ var allocateoutboundorder = _allocateoutboundorderRepository.Db.Queryable<Dt_AllocateOutboundOrder>().Includes(x => x.Details).ToList();
+
+ List<Dt_AllocateOutboundOrder> allocateoutboundorderAdd = new List<Dt_AllocateOutboundOrder>();
+ List<Dt_AllocateOutboundOrder> allocateoutboundorderUpdate = new List<Dt_AllocateOutboundOrder>();
+ List<WMS_鐢ㄥ弸鐢垫帶鏌滆皟鎷ㄤ竴瑙堣〃_ST> ERPallocateOrder = SqlSugarHelper.DBERP.Queryable<WMS_鐢ㄥ弸鐢垫帶鏌滆皟鎷ㄤ竴瑙堣〃_ST>().Where(x => true).ToList();
+ foreach (var item in ERPallocateOrder)
+ {
+ var x = allocateoutboundorder.Where(x => x.UpperOrderNo == item.鍗曞彿 && x.DemandClassification == item.闇�姹傚悕绉� && x.OrderPartNumber == item.璁㈠崟鏂欏彿 && x.OrderSpec == item.璁㈠崟瑙勬牸).FirstOrDefault();
+ if (x == null)
+ {
+ if (allocateoutboundorderAdd.Where(x => x.UpperOrderNo == item.鍗曞彿).FirstOrDefault() == null)
+ {
+ Dt_AllocateOutboundOrder outOrder = new Dt_AllocateOutboundOrder()
+ {
+ OrderNo = GetOrderPintCode("OrderNoOut"),
+ UpperOrderNo = item.鍗曞彿,
+ OrderName=item.璁㈠崟鍝佸悕,
+ DemandClassification=item.闇�姹傚悕绉�,
+ OrderPartNumber =item.璁㈠崟鏂欏彿,
+ OrderSpec =item.璁㈠崟瑙勬牸,
+ OrderStatus = (int)OrderStateEmun.鏈紑濮�,
+ OrderType = (int)OrderTypeEmun.璋冩嫧鍑哄簱鍗�,
+ CreateType = (int)OrderCreateTypeEmun.ERP鎺ㄩ��,
+ Details = new List<Dt_AllocateOutboundOrderDetail>()
+ {
+ new Dt_AllocateOutboundOrderDetail()
+ {
+ MaterielCode = item.瀛愪欢鏂欏彿,
+ MaterielName = item.瀛愪欢鍝佸悕,
+ Specs = item.瀛愪欢瑙勬牸,
+ Weight = item.瀛愪欢鍗曢噸,
+ OrderQuantity = item.瀛愪欢瀹為檯鐢ㄩ噺,
+ NotOutQuantity = item.瀛愪欢鏈彂鏁伴噺,
+ OverOutQuantity = item.瀛愪欢鍙戞斁鏁伴噺,
+ }
+ }
+ };
+ allocateoutboundorderAdd.Add(outOrder);
+ }
+ else
+ {
+ var existingOrder = allocateoutboundorderAdd.Where(x => x.UpperOrderNo == item.鍗曞彿 && x.DemandClassification == item.闇�姹傚悕绉� && x.OrderPartNumber == item.璁㈠崟鏂欏彿 && x.OrderSpec == item.璁㈠崟瑙勬牸).FirstOrDefault();
+ existingOrder.Details.Add(new Dt_AllocateOutboundOrderDetail()
+ {
+ MaterielCode = item.瀛愪欢鏂欏彿,
+ MaterielName = item.瀛愪欢鍝佸悕,
+ Specs = item.瀛愪欢瑙勬牸,
+ Weight = item.瀛愪欢鍗曢噸,
+ OrderQuantity = item.瀛愪欢瀹為檯鐢ㄩ噺,
+ NotOutQuantity = item.瀛愪欢鏈彂鏁伴噺,
+ OverOutQuantity = item.瀛愪欢鍙戞斁鏁伴噺,
+ });
+ }
+ }
+ }
+ #endregion
+
+ #region 鏁版嵁澶勭悊
+ _unitOfWorkManage.BeginTran();
if (productionoutboundOrderAdd.Count > 0)
{
- foreach (var order in productionoutboundOrderAdd)
- {
- _productionoutboundorderRepository.AddDataNavAsync(order);
- }
+ //foreach (var order in productionoutboundOrderAdd)
+ //{
+ // _productionoutboundorderRepository.AddDataNavAsync(order);
+ //}
+ SqlSugarHelper.DbWMS.InsertNav(productionoutboundOrderAdd).Include(x => x.Details).ExecuteCommandAsync();
}
- if (productionoutboundOrderUpdate.Count > 0)
+ if (allocateoutboundorderAdd.Count > 0)
{
- _productionoutboundorderRepository.UpdateDataNav(productionoutboundOrderUpdate);
+ SqlSugarHelper.DbWMS.InsertNav(allocateoutboundorderAdd).Include(x=>x.Details).ExecuteCommandAsync();
}
+ _unitOfWorkManage.CommitTran();
+
+
#endregion
}
catch (Exception ex)
{
+ _unitOfWorkManage.RollbackTran();
ConsoleHelper.WriteErrorLine($"閿欒淇℃伅锛�" + ex.Message);
}
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs"
index b6f7c0b..1738269 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs"
@@ -31,6 +31,8 @@
using WIDESEA_Model.Models;
using WIDESEA_Model.Models.Basic;
using WIDESEA_Model.Models.ERP;
+using WIDESEA_OrderRepository;
+using WIDESEA_StorageTaskRepository;
using WIDESEAWCS_BasicInfoRepository;
using WIDESEAWCS_QuartzJob.Models;
using static System.Collections.Specialized.BitVector32;
@@ -52,8 +54,6 @@
private readonly IDt_AreaInfoRepository _areaInfoRepository; //鍖哄煙
private readonly IDt_StationManagerRepository _stationManagerRepository;
private readonly ISys_ConfigService _configService;
- private readonly IDt_OtherOutboundOrderRepository _OtheroutorderRepository;
- private readonly IDt_OtherOutboundOrderDetailRepository _OtheroutorderdetailRepository;
public Dt_TaskService(IDt_TaskRepository BaseDal,
IUnitOfWorkManage unitOfWorkManage,
@@ -67,9 +67,7 @@
IDt_AreaInfoRepository areaInfoRepository,
IStockInfoDetailRepository stockInfoDetailRepository,
IDt_StationManagerRepository stationManagerRepository,
- ISys_ConfigService configService,
- IDt_OtherOutboundOrderRepository OtheroutorderRepository,
- IDt_OtherOutboundOrderDetailRepository OtheroutorderdetailRepository) : base(BaseDal)
+ ISys_ConfigService configService) : base(BaseDal)
{
_unitOfWorkManage = unitOfWorkManage;
_stockInfoRepository = stockInfoRepository;
@@ -83,8 +81,6 @@
_stockInfoDetailRepository = stockInfoDetailRepository;
_stationManagerRepository = stationManagerRepository;
_configService = configService;
- _OtheroutorderRepository = OtheroutorderRepository;
- _OtheroutorderdetailRepository = OtheroutorderdetailRepository;
}
#region 澶栭儴鎺ュ彛鏂规硶
@@ -104,20 +100,77 @@
taskHty.FinishTime = DateTime.Now;
taskHty.OperateType = App.User.UserName != null ? (int)OperateTypeEnum.浜哄伐瀹屾垚 : (int)OperateTypeEnum.鑷姩瀹屾垚;
taskHty.Creater = App.User.UserName != null ? App.User.UserName : "System";
-
- //DtStockInfo_Hty stockInfo_Hty = stock.Adapt<DtStockInfo_Hty>();
- //stockInfo_Hty.ModifyDate = DateTime.Now;
stock.ModifyDate = DateTime.Now;
stock.LocationCode = task.TargetAddress;
var result1 = UpdateLocationStatus(locationStart, LocationEnum.Free, task.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticOutbound);
var result2 = UpdateLocationStatus(locationEnd, LocationEnum.InStock, task.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticOutbound);
+
+ DtStockInfo_Hty stockInfo_Hty = null;
+ if (task.TaskType != (int)TaskOutboundTypeEnum.Outbound)
+ {
+ var stockDetailsToRemove = new List<DtStockInfoDetail>();
+
+ // 澶勭悊搴撳瓨鏄庣粏
+ if (stock.StockInfoDetails == null || !stock.StockInfoDetails.Any())
+ {
+ // 褰撳簱瀛樻槑缁嗕负绌烘椂锛屽皢鏁翠釜搴撳瓨绉诲叆鍘嗗彶琛�
+ stockInfo_Hty = CreateStockInfoHty(stock, null, true);
+ }
+ else
+ {
+ foreach (var item in stock.StockInfoDetails.ToList())
+ {
+ if (item.OutboundQuantity <= 0 || item.OutboundQuantity > item.Quantity)
+ {
+ throw new Exception($"鍑哄簱鏁伴噺寮傚父锛岀墿鏂� {item.MaterielCode} 鐨勫嚭搴撴暟閲� {item.OutboundQuantity} 涓嶅悎娉�");
+ }
+
+ if (item.OutboundQuantity == item.Quantity)
+ {
+ // 瀹屽叏鍑哄簱锛岀Щ鍏ュ巻鍙茶〃
+ if (stockInfo_Hty == null)
+ {
+ stockInfo_Hty = CreateStockInfoHty(stock, new List<DtStockInfoDetail> { item }, false);
+ }
+ else
+ {
+ stockInfo_Hty.StockInfoDetails.Add(CreateStockInfoDetailHty(item));
+ }
+ stockDetailsToRemove.Add(item);
+ }
+ else if (item.OutboundQuantity < item.Quantity && item.OutboundQuantity > 0)
+ {
+ // 閮ㄥ垎鍑哄簱锛屾洿鏂版暟閲�
+ item.Quantity -= item.OutboundQuantity;
+ item.OutboundQuantity = 0; // 閲嶇疆鍑哄簱鏁伴噺
+ }
+ }
+
+ // 绉婚櫎宸插畬鍏ㄥ嚭搴撶殑鏄庣粏
+ foreach (var item in stockDetailsToRemove)
+ {
+ stock.StockInfoDetails.Remove(item);
+ }
+ }
+ }
await _unitOfWorkManage.UseTranAsync(async () =>
{
- //await DeleteStockInfoAsync(stock.Id);
- //await DeleteStockInfoDetailsAsync(stock.StockInfoDetails);
- //await AddStockInfoHtyAsync(stockInfo_Hty);
- _stockInfoRepository.UpdateData(stock);
+ // 濡傛灉搴撳瓨鏄庣粏鍏ㄩ儴鍑哄簱瀹屾瘯锛屽垹闄ゅ師搴撳瓨璁板綍
+ if (stock.StockInfoDetails == null || !stock.StockInfoDetails.Any())
+ {
+ await _stockInfoRepository.DeleteDataAsync(stock);
+ }
+ else
+ {
+ _stockInfoRepository.UpdateData(stock);
+ }
+ // 娣诲姞鍘嗗彶璁板綍
+ if (stockInfo_Hty != null)
+ {
+ await AddStockInfoHtyAsync(stockInfo_Hty);
+ }
+
await _locationStatusChangeRecordRepository.AddDataAsync(result1.Item1);
await _locationStatusChangeRecordRepository.AddDataAsync(result2.Item1);
await _locationRepository.UpdateDataAsync(result1.Item2);
@@ -127,6 +180,7 @@
await AddTaskHtyAsync(taskHty);
});
content.OK("鍑哄簱瀹屾垚");
+
}
catch (Exception ex)
{
@@ -135,7 +189,54 @@
return content;
}
-
+ private DtStockInfo_Hty CreateStockInfoHty(DtStockInfo stock, List<DtStockInfoDetail> details, bool isFullExit)
+ {
+ var stockInfoHty = new DtStockInfo_Hty()
+ {
+ PalletCode = stock.PalletCode,
+ LocationCode = stock.LocationCode,
+ IsFullExit = isFullExit,
+ StockStatus = stock.StockStatus,
+ OrderNo = stock.OrderNo,
+ OrderType = stock.OrderType,
+ Remark = stock.Remark,
+ StockInfoDetails = new List<DtStockInfoDetail_Hty>()
+ };
+
+ if (details != null)
+ {
+ foreach (var detail in details)
+ {
+ stockInfoHty.StockInfoDetails.Add(CreateStockInfoDetailHty(detail));
+ }
+ }
+
+ return stockInfoHty;
+ }
+
+ /// <summary>
+ /// 鍒涘缓搴撳瓨鏄庣粏鍘嗗彶璁板綍
+ /// </summary>
+ private DtStockInfoDetail_Hty CreateStockInfoDetailHty(DtStockInfoDetail detail)
+ {
+ return new DtStockInfoDetail_Hty
+ {
+ MaterielCode = detail.MaterielCode,
+ MaterielName = detail.MaterielName,
+ DemandClassification = detail.DemandClassification,
+ Warehouse = detail.Warehouse,
+ OrderNo = detail.OrderNo,
+ Unit = detail.Unit,
+ Specs = detail.Specs,
+ Weight = detail.Weight,
+ Quantity = detail.Quantity,
+ OutboundQuantity = detail.OutboundQuantity,
+ Status = detail.Status,
+ DrawingNumber = detail.DrawingNumber,
+ Date = detail.Date,
+ Remark = detail.Remark
+ };
+ }
#endregion 鍑哄簱浠诲姟瀹屾垚
@@ -195,34 +296,35 @@
WebResponseContent content = new WebResponseContent();
try
{
- var stock = await _stockInfoRepository.QueryFirstNavAsync(x => x.PalletCode == task.PalletCode && x.StockStatus == (int)StockStateEmun.缁勭洏鏆傚瓨);
+ var boxinfo = await _boxingInfoRepository.QueryFirstNavAsync(x => x.PalletCode == task.PalletCode);
var locationStart = await _locationRepository.QueryFirstAsync(x => x.LocationCode == task.SourceAddress);
var locationEnd = await _locationRepository.QueryFirstAsync(x => x.LocationCode == task.TargetAddress);
- if (stock == null)
+ if (boxinfo == null)
{
return content.Error("鏈壘鍒扮粍鐩樻暟鎹�");
}
- stock.LocationCode = task.TargetAddress;
- stock.StockStatus = (int)StockStateEmun.宸插叆搴�;
+
+ var stock = CreateStock(boxinfo, task);
task.TaskState = (int)TaskInStatusEnum.InFinish;
var taskHty = task.Adapt<Dt_Task_Hty>();
taskHty.FinishTime = DateTime.Now;
taskHty.OperateType = App.User.UserName != null ? (int)OperateTypeEnum.浜哄伐瀹屾垚 : (int)OperateTypeEnum.鑷姩瀹屾垚;
taskHty.Creater = App.User.UserName != null ? App.User.UserName : "System";
- var result1 = UpdateLocationStatus(locationStart, LocationEnum.Free, task.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticInbound);
- var result2 = UpdateLocationStatus(locationEnd, LocationEnum.InStock, task.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticInbound);
+
+ var result1 = UpdateLocationStatus(task.SourceAddress, LocationEnum.InStockDisable, task.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticInbound);
+ var result2 = UpdateLocationStatus(task.TargetAddress, LocationEnum.Lock, task.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticInbound);
+
await _unitOfWorkManage.UseTranAsync(async () =>
{
- await _stockInfoRepository.UpdateDataAsync(stock);
+ await _stockInfoRepository.AddDataNavAsync(stock);
await DeleteTaskAsync(task.TaskId);
await AddTaskHtyAsync(taskHty);
- await _locationStatusChangeRecordRepository.AddDataAsync(result1.Item1);
await _locationStatusChangeRecordRepository.AddDataAsync(result2.Item1);
- await _locationRepository.UpdateDataAsync(result1.Item2);
+ await _locationStatusChangeRecordRepository.AddDataAsync(result1.Item1);
await _locationRepository.UpdateDataAsync(result2.Item2);
-
+ await _locationRepository.UpdateDataAsync(result1.Item2);
});
content.OK("鍏ュ簱瀹屾垚");
}
@@ -233,7 +335,21 @@
return content;
}
-
+ public DtStockInfo CreateStock(DtBoxingInfo boxingInfo,Dt_Task task)
+ {
+ var boxDetail = boxingInfo.BoxingInfoDetails.Adapt<List<DtStockInfoDetail>>();
+ boxDetail.ForEach(x => { x.Status = (int)StockStateEmun.宸插叆搴�; });
+ return new DtStockInfo()
+ {
+ PalletCode = task.PalletCode,
+ LocationCode = task.TargetAddress,
+ CreateDate = DateTime.Now,
+ Creater = "system",
+ IsFullExit = boxingInfo.IsFullExit,
+ StockInfoDetails = boxDetail,
+ StockStatus = (int)StockStateEmun.宸插叆搴�
+ };
+ }
#endregion 鍏ュ簱浠诲姟瀹屾垚
#region AGV鎼繍浠诲姟瀹屾垚
@@ -382,8 +498,9 @@
WebResponseContent content = new WebResponseContent();
try
{
- var stock = await _stockInfoRepository.QueryFirstNavAsync(x => x.PalletCode == taskDto.PalletCode && x.StockStatus == (int)StockStateEmun.缁勭洏鏆傚瓨);
- if (stock == null)
+ var boxingInfo = await _boxingInfoRepository.QueryFirstNavAsync(x => x.PalletCode == taskDto.PalletCode && x.StockStatus == (int)StockStateEmun.缁勭洏鏆傚瓨);
+
+ if (boxingInfo == null)
{
return content.Error("鎵樼洏淇℃伅涓嶅瓨鍦紝璇风‘璁ゆ墭鐩樺凡缁勭洏鎴愬姛");
}
@@ -471,7 +588,8 @@
await _locationRepository.UpdateDataAsync(result2.Item2);
BaseDal.AddData(taskNew);
});
- return content = await SendWCSTask(taskDTO);
+ //return content = await SendWCSTask(taskDTO);
+ return content.OK("鎴愬姛");
}
catch (Exception err)
{
@@ -622,29 +740,80 @@
#endregion
#region 璇锋眰鍑哄簱
- public async Task<WebResponseContent> OtherOutBoundTaskAsync(string palletCode)
+ public async Task<WebResponseContent> OutBoundTaskAsync(string palletCode)
{
WebResponseContent content = new WebResponseContent();
try
{
- DtStockInfo stcok = await _stockInfoRepository.QueryFirstAsync(x => x.PalletCode == palletCode);
+ DtStockInfo stcok = await _stockInfoRepository.QueryFirstNavAsync(x => x.PalletCode == palletCode);
if (stcok == null)
{
return content.Error("鎵樼洏淇℃伅涓嶅瓨鍦紝璇风‘璁ゆ墭鐩樺凡鍏ュ簱鎴愬姛");
}
+
+ if (stcok.LocationInfo.LocationStatus != (int)LocationEnum.InStock)
+ {
+ return content.Error("璇风‘璁ゅ簱瀛樿揣浣嶇姸鎬佹槸鍚︿负鏈夎揣");
+ }
+ var task = await BaseDal.QueryFirstAsync(x => x.PalletCode == palletCode);
+ if (task != null)
+ {
+ return content.Error("璇ユ墭鐩樺凡瀛樺湪浠诲姟");
+ }
+
var location = await _locationRepository.QueryFirstAsync(x => x.LocationCode == stcok.LocationCode);
if (location.AreaId == 2)
{
return content.Error("璇ユ墭鐩樺簱瀛樺凡鍦ㄥ嚭搴撶紦瀛樺尯");
}
- Dt_Task taskNew= await RequestOutboundTaskAsync(new RequestTaskDto { PalletCode = palletCode, AreaId = 2, Position = stcok.LocationCode, TaskType = (int)TaskOutboundTypeEnum.OutOther });
- return content.OK(data: taskNew);
+ Dt_Task taskNew = await RequestOutboundTaskAsync(new RequestTaskDto { PalletCode = palletCode, AreaId = 2, Position = stcok.LocationCode, TaskType = (int)TaskOutboundTypeEnum.Outbound });
+
+ var taskDto = CreateListTaskDTO(taskNew);
+ var result = GetlcoationState(taskNew, (int)StatusChangeTypeEnum.AutomaticOutbound);
+ await _unitOfWorkManage.UseTranAsync(async () =>
+ {
+ BaseDal.AddData(taskNew);
+ _stockInfoRepository.UpdateData(stcok);
+ await _locationStatusChangeRecordRepository.AddDataAsync(result.Item1);
+ await _locationRepository.UpdateDataAsync(result.Item2);
+ });
+ return content = await SendWCSTask(taskDto);
}
catch (Exception ex)
{
return content.Error(ex.Message);
}
+ }
+
+ public (List<DtLocationStatusChangeRecord>,List<DtLocationInfo>) GetlcoationState(Dt_Task task,int StatusChangeTypeEnum)
+ {
+ List<DtLocationStatusChangeRecord> locationStatusChangeRecords = new List<DtLocationStatusChangeRecord>();
+ List<DtLocationInfo> locations = new List<DtLocationInfo>();
+ var result1 = UpdateLocationStatus(task.SourceAddress, LocationEnum.InStockDisable, task.TaskNum.Value, StatusChangeTypeEnum);
+ var result2 = UpdateLocationStatus(task.TargetAddress, LocationEnum.Lock, task.TaskNum.Value, StatusChangeTypeEnum);
+ locationStatusChangeRecords.AddRange(result1.Item1);
+ locationStatusChangeRecords.AddRange(result2.Item1);
+ locations.AddRange(result1.Item2);
+ locations.AddRange(result2.Item2);
+
+ return (locationStatusChangeRecords,locations);
+ }
+
+ public (List<DtLocationStatusChangeRecord>, List<DtLocationInfo>) GetlcoationState(List<Dt_Task> tasks, int StatusChangeTypeEnum)
+ {
+ List<DtLocationStatusChangeRecord> locationStatusChangeRecords = new List<DtLocationStatusChangeRecord>();
+ List<DtLocationInfo> locations = new List<DtLocationInfo>();
+ foreach (var item in tasks)
+ {
+ var result1 = UpdateLocationStatus(item.SourceAddress, LocationEnum.InStockDisable, item.TaskNum.Value, StatusChangeTypeEnum);
+ var result2 = UpdateLocationStatus(item.TargetAddress, LocationEnum.Lock, item.TaskNum.Value, StatusChangeTypeEnum);
+ locationStatusChangeRecords.AddRange(result1.Item1);
+ locationStatusChangeRecords.AddRange(result2.Item1);
+ locations.AddRange(result1.Item2);
+ locations.AddRange(result2.Item2);
+ }
+ return (locationStatusChangeRecords, locations);
}
@@ -1188,8 +1357,11 @@
{
new issueList
{
+ //澶囨枡ID
PickListID = task.OrderNo,
+ //瀛樺偍鍦扮偣
WhCode = "204",
+ //棰嗘枡鏁伴噺
IssueQty = task.OrderNo,
}
}
@@ -1225,12 +1397,16 @@
businessDate = DateTime.Now.ToString("yyyy-MM-dd"),
isApproved = true,
- transferInList = stock.StockInfoDetails.Select(item => new transferInList
+ transferInList = stock.StockInfoDetails.Where(x => x.OutboundQuantity > 0).Select(item => new transferInList
{
+ //鐗╂枡缂栫爜
ItemCode = item.MaterielCode,
- TransInWHCode = item.Warehouse,
- TransInQty = item.Quantity,
- TransOutWHCode = "001",
+ //璋冨叆浠撳簱鍦板潃
+ TransInWHCode = item.Remark==""? item.Warehouse: item.Remark,
+ //璋冨叆鏁伴噺
+ TransInQty = item.OutboundQuantity,
+ // 璋冨嚭浠撳簱缂栫爜
+ TransOutWHCode = "201",
}).ToList()
};
return content.OK(data: allocate);
@@ -1251,7 +1427,7 @@
try
{
DtStockInfo stock = await _stockInfoRepository.QueryFirstNavAsync(x => x.PalletCode == palletCode);
- Allocate allocate = new Allocate
+ MixedSend send = new MixedSend
{
context = new Context
{
@@ -1264,15 +1440,18 @@
businessDate = DateTime.Now.ToString("yyyy-MM-dd"),
isApproved = true,
- transferInList = stock.StockInfoDetails.Select(item => new transferInList
+ miscShipList = stock.StockInfoDetails.Where(x => x.OutboundQuantity > 0).Select(item => new miscShipList
{
+ //鐗╂枡缂栫爜
ItemCode = item.MaterielCode,
- TransInWHCode = item.Warehouse,
- TransInQty = item.Quantity,
- TransOutWHCode = "001",
+ //瀛樺偍鍦扮偣缂栧彿
+ WhCode = item.Warehouse,
+ //鏉傚彂鏁伴噺
+ Qty = item.OutboundQuantity,
+ BenefitDeptCode = "0505",
}).ToList()
};
- return content.OK(data: allocate);
+ return content.OK(data: send);
}
catch (Exception ex)
{
@@ -1290,7 +1469,7 @@
try
{
DtStockInfo stock = await _stockInfoRepository.QueryFirstNavAsync(x => x.PalletCode == palletCode);
- Allocate allocate = new Allocate
+ MixedReceive allocate = new MixedReceive
{
context = new Context
{
@@ -1303,12 +1482,12 @@
businessDate = DateTime.Now.ToString("yyyy-MM-dd"),
isApproved = true,
- transferInList = stock.StockInfoDetails.Select(item => new transferInList
+ miscRcvList = stock.StockInfoDetails.Where(x => x.OutboundQuantity > 0).Select(item => new miscRcvList
{
ItemCode = item.MaterielCode,
- TransInWHCode = item.Warehouse,
- TransInQty = item.Quantity,
- TransOutWHCode = "001",
+ WhCode = item.Warehouse,
+ Qty = item.OutboundQuantity,
+ CostPrice = 0,
}).ToList()
};
return content.OK(data: allocate);
@@ -1329,7 +1508,7 @@
try
{
DtStockInfo stock = await _stockInfoRepository.QueryFirstNavAsync(x => x.PalletCode == palletCode);
- Allocate allocate = new Allocate
+ ReturnMaterials allocate = new ReturnMaterials
{
context = new Context
{
@@ -1342,12 +1521,12 @@
businessDate = DateTime.Now.ToString("yyyy-MM-dd"),
isApproved = true,
- transferInList = stock.StockInfoDetails.Select(item => new transferInList
+ returnMaterialList = stock.StockInfoDetails.Select(item => new returnMaterialList
{
- ItemCode = item.MaterielCode,
- TransInWHCode = item.Warehouse,
- TransInQty = item.Quantity,
- TransOutWHCode = "001",
+ PickListID = item.MaterielCode,
+ WhCode = item.Warehouse,
+ RecedeQty = item.OutboundQuantity,
+ RecedeReason = 1,
}).ToList()
};
return content.OK(data: allocate);
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/BoxingInfoController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/BoxingInfoController.cs"
index ecb9508..303203c 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/BoxingInfoController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/BoxingInfoController.cs"
@@ -9,4 +9,25 @@
public BoxingInfoController(IBoxingInfoService service) : base(service)
{
}
+ /// <summary>
+ /// 缁勭洏
+ /// </summary>
+ /// <param name="groupPlate"></param>
+ /// <returns></returns>
+ [HttpPost, HttpGet, Route("AddGroupPlateAsync"), AllowAnonymous]
+ public Task<WebResponseContent> AddGroupPlateAsync([FromBody] GroupPlate groupPlate)
+ {
+ return Service.AddGroupPlateAsync(groupPlate);
+ }
+
+ /// <summary>
+ /// 瑙g洏
+ /// </summary>
+ /// <param name="groupPlate"></param>
+ /// <returns></returns>
+ [HttpPost, HttpGet, Route("DeleteGroupPlateAsync"), AllowAnonymous]
+ public async Task<WebResponseContent> DeleteGroupPlateAsync([FromBody] GroupPlate groupPlate)
+ {
+ return await Service.DeleteGroupPlateAsync(groupPlate);
+ }
}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/StockInfoController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/StockInfoController.cs"
index bb09319..fcd0c9c 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/StockInfoController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/StockInfoController.cs"
@@ -12,13 +12,14 @@
{
}
+
/// <summary>
/// 鏍规嵁鐗╂枡缂栫爜鑾峰彇搴撳瓨鍙敤閲忚鍥�
/// </summary>
/// <param name="materielCode"></param>
/// <returns></returns>
[HttpPost, HttpGet, Route("GetStockSelectViews"), AllowAnonymous]
- public List<StockSelectViewDTO> GetStockSelectViews([FromBody]GetStockSelectViewDto viewDto)
+ public List<StockSelectViewDTO> GetStockSelectViews([FromBody] GetStockSelectViewDto viewDto)
{
return Service.GetStockSelectViews(viewDto);
}
@@ -45,10 +46,14 @@
return await Service.DeleteGroupPlateAsync(groupPlate);
}
- [HttpPost, HttpGet, Route("GenerateOutboundTask"), AllowAnonymous]
- public async Task<WebResponseContent> GenerateOutboundTask([FromBody] GenerateOutTaskDto requestOut)
+ /// <summary>
+ /// PDA鑾峰彇搴撳瓨瑙嗗浘
+ /// </summary>
+ /// <param name="groupPlate"></param>
+ /// <returns></returns>
+ [HttpPost, HttpGet, Route("GetStockView"), AllowAnonymous]
+ public WebResponseContent GetStockView([FromBody] GetStockSelectViewDto viewDto)
{
- return await Service.GenerateOutboundTask(requestOut);
+ return Service.GetStockView(viewDto);
}
-
}
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/AllocateOutboundOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/AllocateOutboundOrderController.cs"
index 6deb3d1..6cfd7a6 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/AllocateOutboundOrderController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/AllocateOutboundOrderController.cs"
@@ -44,7 +44,7 @@
/// <param name="requestOut"></param>
/// <returns></returns>
[HttpPost, HttpGet, Route("GenerateAllocateOutboundTask"), AllowAnonymous]
- public Task<WebResponseContent> GenerateAllocateOutboundTask(GenerateOutTaskDto requestOut)
+ public Task<WebResponseContent> GenerateAllocateOutboundTask([FromBody] GenerateOutTaskDto requestOut)
{
return Service.GenerateAllocateOutboundTask(requestOut);
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/InboundOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/InboundOrderController.cs"
index 4ae9456..6abc61d 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/InboundOrderController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/InboundOrderController.cs"
@@ -19,6 +19,11 @@
{
_httpContextAccessor = httpContextAccessor;
}
+ [HttpGet,HttpPost,Route("GetInboundOrderInfo"),AllowAnonymous]
+ public WebResponseContent GetInboundOrderInfo(string orderNo)
+ {
+ return Service.GetInboundOrderInfo(orderNo);
+ }
}
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/InventoryOutboundOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/InventoryOutboundOrderController.cs"
deleted file mode 100644
index b866586..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/InventoryOutboundOrderController.cs"
+++ /dev/null
@@ -1,52 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Mvc;
-using WIDESEA_BusinessServices;
-using WIDESEA_Core.BaseController;
-using WIDESEA_DTO.Order;
-using WIDESEA_DTO.Stock;
-using WIDESEA_IBusinessServices;
-using WIDESEA_IOrderServices;
-using WIDESEA_Model.Models;
-using WIDESEA_Model.Models.Basic;
-using WIDESEA_Model.Models.Order;
-using WIDESEAWCS_BasicInfoService;
-
-namespace WIDESEA_WMSServer.Controllers
-{
- [Route("api/InventoryOutboundOrder")]
- [ApiController]
- public class InventoryOutboundOrderController : ApiBaseController<IDt_InventoryOutboundOrderService, Dt_InventoryOutboundOrder>
- {
- private readonly IHttpContextAccessor _httpContextAccessor;
- public InventoryOutboundOrderController(IDt_InventoryOutboundOrderService service, IHttpContextAccessor httpContextAccessor) : base(service)
- {
- _httpContextAccessor = httpContextAccessor;
- }
-
- /// <summary>
- /// 鑾峰彇鍑哄簱鍗曟嵁淇℃伅
- /// </summary>
- /// <param name="outboundOrderGetDTO"></param>
- /// <returns></returns>
- [HttpPost, AllowAnonymous, Route("GetInventoryOutboundOrder")]
- public WebResponseContent GetInventoryOutboundOrder([FromBody] OutboundOrderGetDTO outboundOrderGetDTO)
- {
- return Service.GetInventoryOutboundOrder(outboundOrderGetDTO);
- }
-
- [HttpPost, HttpGet, AllowAnonymous, Route("GetInventoryOutboundOrderDetail")]
- public WebResponseContent GetInventoryOutboundOrderDetail([FromBody] OutboundOrderGetDTO outboundOrderGetDTO)
- {
- return Service.GetInventoryOutboundOrderDetail(outboundOrderGetDTO);
- }
- /// <summary>
- /// 鏍规嵁璇锋眰鍑哄簱浠诲姟
- /// </summary>
- /// <param name="requestOut"></param>
- /// <returns></returns>
- [HttpPost, HttpGet, Route("GenerateInventoryOutboundTask"), AllowAnonymous]
- public Task<WebResponseContent> GenerateInventoryOutboundTask(GenerateOutTaskDto requestOut)
- {
- return Service.GenerateInventoryOutboundTask(requestOut);
- }
- }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/InventoryOutboundOrderDetailController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/InventoryOutboundOrderDetailController.cs"
deleted file mode 100644
index 2be5ce0..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/InventoryOutboundOrderDetailController.cs"
+++ /dev/null
@@ -1,24 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Mvc;
-using WIDESEA_BusinessServices;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IBusinessServices;
-using WIDESEA_IOrderServices;
-using WIDESEA_Model.Models;
-using WIDESEA_Model.Models.Basic;
-using WIDESEA_Model.Models.Order;
-using WIDESEAWCS_BasicInfoService;
-
-namespace WIDESEA_WMSServer.Controllers
-{
- [Route("api/InventoryOutboundOrderDetail")]
- [ApiController]
- public class InventoryOutboundOrderDetailController : ApiBaseController<IDt_InventoryOutboundOrderDetailService, Dt_InventoryOutboundOrderDetail>
- {
- private readonly IHttpContextAccessor _httpContextAccessor;
- public InventoryOutboundOrderDetailController(IDt_InventoryOutboundOrderDetailService service, IHttpContextAccessor httpContextAccessor) : base(service)
- {
- _httpContextAccessor = httpContextAccessor;
- }
-
- }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/OtherOutboundOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/OtherOutboundOrderController.cs"
deleted file mode 100644
index fcea740..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/OtherOutboundOrderController.cs"
+++ /dev/null
@@ -1,53 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Mvc;
-using WIDESEA_BusinessServices;
-using WIDESEA_Core.BaseController;
-using WIDESEA_DTO.Order;
-using WIDESEA_DTO.Stock;
-using WIDESEA_IBusinessServices;
-using WIDESEA_IOrderServices;
-using WIDESEA_Model.Models;
-using WIDESEA_Model.Models.Basic;
-using WIDESEA_Model.Models.Order;
-using WIDESEAWCS_BasicInfoService;
-
-namespace WIDESEA_WMSServer.Controllers
-{
- [Route("api/OtherOutboundOrder")]
- [ApiController]
- public class OtherOutboundOrderController : ApiBaseController<IDt_OtherOutboundOrderService, Dt_OtherOutboundOrder>
- {
- private readonly IHttpContextAccessor _httpContextAccessor;
- public OtherOutboundOrderController(IDt_OtherOutboundOrderService service, IHttpContextAccessor httpContextAccessor) : base(service)
- {
- _httpContextAccessor = httpContextAccessor;
- }
-
- /// <summary>
- /// 鑾峰彇鍑哄簱鍗曟嵁淇℃伅
- /// </summary>
- /// <param name="outboundOrderGetDTO"></param>
- /// <returns></returns>
- [HttpPost, AllowAnonymous, Route("GetOtherOutboundOrder")]
- public WebResponseContent GetOtherOutboundOrder([FromBody]OutboundOrderGetDTO outboundOrderGetDTO)
- {
- return Service.GetOtherOutboundOrder(outboundOrderGetDTO);
- }
-
- [HttpPost,HttpGet, AllowAnonymous, Route("GetOtherOutboundOrderDetail")]
- public WebResponseContent GetOtherOutboundOrderDetail([FromBody] OutboundOrderGetDTO outboundOrderGetDTO)
- {
- return Service.GetOtherOutboundOrderDetail(outboundOrderGetDTO);
- }
- /// <summary>
- /// 鏍规嵁璇锋眰鍑哄簱浠诲姟
- /// </summary>
- /// <param name="requestOut"></param>
- /// <returns></returns>
- [HttpPost, HttpGet, Route("GenerateOtherOutboundTask"), AllowAnonymous]
- public Task<WebResponseContent> GenerateOtherOutboundTask(GenerateOutTaskDto requestOut)
- {
- return Service.GenerateOtherOutboundTask(requestOut);
- }
-
- }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/OtherOutboundOrderDetailController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/OtherOutboundOrderDetailController.cs"
deleted file mode 100644
index ea18d4f..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/OtherOutboundOrderDetailController.cs"
+++ /dev/null
@@ -1,24 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Mvc;
-using WIDESEA_BusinessServices;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IBusinessServices;
-using WIDESEA_IOrderServices;
-using WIDESEA_Model.Models;
-using WIDESEA_Model.Models.Basic;
-using WIDESEA_Model.Models.Order;
-using WIDESEAWCS_BasicInfoService;
-
-namespace WIDESEA_WMSServer.Controllers
-{
- [Route("api/OtherOutboundOrderDetail")]
- [ApiController]
- public class OtherOutboundOrderDetailController : ApiBaseController<IDt_OtherOutboundOrderDetailService, Dt_OtherOutboundOrderDetail>
- {
- private readonly IHttpContextAccessor _httpContextAccessor;
- public OtherOutboundOrderDetailController(IDt_OtherOutboundOrderDetailService service, IHttpContextAccessor httpContextAccessor) : base(service)
- {
- _httpContextAccessor = httpContextAccessor;
- }
-
- }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/ProductionOutboundOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/ProductionOutboundOrderController.cs"
index 99e461e..e091e68 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/ProductionOutboundOrderController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Order/ProductionOutboundOrderController.cs"
@@ -43,7 +43,7 @@
/// <param name="requestOut"></param>
/// <returns></returns>
[HttpPost, HttpGet, Route("GeneratetProductOutboundTask"), AllowAnonymous]
- public Task<WebResponseContent> GeneratetProductOutboundTask(GenerateOutTaskDto requestOut)
+ public Task<WebResponseContent> GeneratetProductOutboundTask([FromBody] GenerateOutTaskDto requestOut)
{
return Service.GeneratetProductOutboundTask(requestOut);
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Task/TaskController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Task/TaskController.cs"
index 6970330..97cca29 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Task/TaskController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Task/TaskController.cs"
@@ -87,15 +87,15 @@
}
/// <summary>
- /// 绌烘墭鐩樻弧鐩樺嚭搴撹姹�
+ /// 鍑哄簱鑷崇紦瀛樺尯
/// </summary>
/// <param name="request">璇锋眰鏁版嵁</param>
/// <returns></returns>
- [HttpPost, AllowAnonymous, Route("OtherOutBoundTaskAsync")]
+ [HttpPost, AllowAnonymous, Route("OutBoundTaskAsync")]
[TypeFilter(typeof(ThrottleFilter), Arguments = new object[] { 2 })]
- public Task<WebResponseContent> OtherOutBoundTaskAsync(string palletCode)
+ public Task<WebResponseContent> OutBoundTaskAsync(string palletCode)
{
- return Service.OtherOutBoundTaskAsync(palletCode);
+ return Service.OutBoundTaskAsync(palletCode);
}
/// <summary>
--
Gitblit v1.9.3