From 021edcd84d6601249e008141b3027549f864155f Mon Sep 17 00:00:00 2001 From: wanshenmean <cathay_xy@163.com> Date: 星期一, 11 十一月 2024 17:30:40 +0800 Subject: [PATCH] 24-11-11.01 --- Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/MOM/ProductionModel.vue | 68 ++++++ Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/GlobalUsing.cs | 3 Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs | 43 ++- Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/MOM/Extend/Add.vue | 76 ++++++ Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo.cs | 13 + Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicRepository/Production/IProductionRepository.cs | 12 + Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/ResultTrayCellsStatus.cs | 30 ++ Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Production/ProductionService.cs | 10 Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs | 129 ----------- Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/MOM/ProductionModel.cs | 79 +++++++ Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/ProductionController.cs | 17 + Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Core/HostedService/SeedDataHostedService.cs | 2 Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/WIDESEA_WMSServer.csproj.user | 4 Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs | 40 ++- Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/TrayCellUnbindDto.cs | 0 Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/TrayCellsStatusDto.cs | 0 Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicRepository/Production/ProductionRepository.cs | 15 + Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/CellStateDto.cs | 0 Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/TrayUnbindDto.cs | 0 Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/ResponeAgingInputDto.cs | 25 ++ Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Production/IProductionService.cs | 5 Code Management/WMS/WIDESEA_WMSClient/src/router/tables.js | 8 Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/MOM/ProductionModel.js | 77 +++++++ 23 files changed, 481 insertions(+), 175 deletions(-) diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs index ced741e..3bd8816 100644 --- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs +++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs @@ -196,26 +196,30 @@ } } + #region 杈撻�佺嚎璇锋眰鍏ュ簱涓嬩竴鍦板潃 + /// <summary> /// 杈撻�佺嚎璇锋眰鍏ュ簱涓嬩竴鍦板潃 /// </summary> /// <param name="conveyorLine">杈撻�佺嚎瀹炰緥瀵硅薄</param> /// <param name="command">璇诲彇鐨勮姹備俊鎭�</param> /// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param> - public void RequestInNextAddress(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode) - { - Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode); - if (task != null) - { - Dt_Task? newTask = _taskService.UpdatePosition(task.TaskNum, task.CurrentAddress); - if (newTask != null) - { - ConveyorLineTaskCommand taskCommand = _mapper.Map<ConveyorLineTaskCommand>(newTask); - taskCommand.InteractiveSignal = command.InteractiveSignal; - conveyorLine.SendCommand(taskCommand, childDeviceCode); - } - } - } + //public void RequestInNextAddress(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode) + //{ + // Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode); + // if (task != null) + // { + // Dt_Task? newTask = _taskService.UpdatePosition(task.TaskNum, task.CurrentAddress); + // if (newTask != null) + // { + // ConveyorLineTaskCommand taskCommand = _mapper.Map<ConveyorLineTaskCommand>(newTask); + // taskCommand.InteractiveSignal = command.InteractiveSignal; + // conveyorLine.SendCommand(taskCommand, childDeviceCode); + // } + // } + //} + + #endregion /// <summary> /// 杈撻�佺嚎鍏ュ簱瀹屾垚 @@ -234,7 +238,7 @@ //conveyorLine.SetValue(ConveyorLineDBName.WriteInteractiveSignal, 0, childDeviceCode); WebResponseContent content = _taskService.UpdateTaskStatusToNext(task); - Console.Out.WriteLine(content.Serialize()); + //Console.Out.WriteLine(content.Serialize()); } } @@ -304,13 +308,11 @@ taskCommand.TargetAddress = 0; } - conveyorLine.SendCommand(taskCommand, childDeviceCode); ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); content = _taskService.UpdateTaskStatusToNext(task); } } - /// <summary> /// 鐩戞祴绌烘墭鐩樺疄鐩樺嚭搴� @@ -332,7 +334,6 @@ } catch (Exception) { - } } @@ -345,6 +346,7 @@ if (tasks.Count < index) { #region 璋冪敤WMS鑾峰彇鍑哄簱浠诲姟 + WMSTaskDTO taskDTO = new WMSTaskDTO(); object dynamic = new { @@ -362,6 +364,7 @@ return; taskDTO = JsonConvert.DeserializeObject<WMSTaskDTO>(content.Data.ToString()); + #endregion CreateAndSendTask(taskDTO); @@ -380,6 +383,7 @@ } return content; } + /// <summary> /// 杈撻�佺嚎浜や簰瀹屾垚 /// </summary> diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs index fea5ff2..e9d9278 100644 --- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs +++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs @@ -48,9 +48,7 @@ CommonStackerCrane commonStackerCrane = (CommonStackerCrane)context.JobDetail.JobDataMap.Get("JobParams"); if (commonStackerCrane != null) { - //EqptRun(commonStackerCrane); //EqptAlive(commonStackerCrane); - //EqptStatus(commonStackerCrane); //Console.Out.WriteLine(commonStackerCrane.DeviceName); if (!commonStackerCrane.IsEventSubscribed) { @@ -301,54 +299,6 @@ return stackerCraneTaskCommand; } - /// <summary> - /// 璁惧涓嶮OM绯荤粺瀵规帴锛岃澶囦笂绾� - /// </summary> - /// <param name="commonStackerCrane"></param> - public async void EqptRun(CommonStackerCrane commonStackerCrane) - { - if (!commonStackerCrane.StackerOnline) - { - RequestEqptRunDto request = new RequestEqptRunDto() - { - EmployeeNo = "T00001", - EquipmentCode = commonStackerCrane.DeviceCode, - RequestTime = DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss.fffZ"), - SessionId = Guid.NewGuid().ToString(), - Software = commonStackerCrane.DeviceName, - Password = "12345", - EquipmentModel = "1" - }; - var respone = await HttpHelper.PostAsync("http://ts-momapp01:12020/api/MachineIntegration/EqptRun", request.ToJsonString()); - if (respone != null) - { - var result = JsonConvert.DeserializeObject<ResponseEqptRunDto>(respone); - if (result != null && result.Success) - { - var process = _processRepository.QueryData(x => x.EquipmentName == commonStackerCrane.DeviceCode).FirstOrDefault(); - if (process == null) - { - ResponeRunDto runDto = JsonConvert.DeserializeObject<ResponeRunDto>(respone); - process = new Dt_EquipmentProcess() - { - EquipmentName = commonStackerCrane.DeviceCode, - EquipmentType = new string(commonStackerCrane.DeviceName.TakeWhile(c => !char.IsDigit(c)).ToArray()), - WipOrderNo = runDto.WipOrderNo, - ProductDesc = runDto.ProductDesc, - ProcessValue = JsonConvert.SerializeObject(result) - }; - var isResult = await _processRepository.AddDataAsync(process) > 0; - } - else - { - process.ProcessValue = JsonConvert.SerializeObject(result); - var isResult = await _processRepository.UpdateDataAsync(process); - } - commonStackerCrane.StackerOnline = true; - } - } - } - } /// <summary> /// 璁惧蹇冭烦 @@ -381,84 +331,5 @@ } } - /// <summary> - /// 璁惧鐘舵�� - /// </summary> - /// <param name="commonStackerCrane"></param> - public async void EqptStatus(CommonStackerCrane commonStackerCrane) - { - string code = string.Empty; - RequestAlertDto requestAlert = new RequestAlertDto() - { - EmployeeNo = "T00001", - EquipmentCode = commonStackerCrane.DeviceCode, - RequestTime = DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss.fffZ"), - SessionId = Guid.NewGuid().ToString(), - Software = commonStackerCrane.DeviceName, - AlertInfo = new List<AlertInfoDto>() - }; - switch (commonStackerCrane.Status) - { - case DeviceStatus.Idle: - code = "Waiting"; - break; - - case DeviceStatus.Working: - code = "Running"; - break; - - case DeviceStatus.Fault: - code = "Alerting"; - var alert = new AlertInfoDto() - { - AlertCode = "1001", - AlertDescription = commonStackerCrane.StackerCraneStatusDes, - AlertReset = "1" - }; - requestAlert.AlertInfo.Add(alert); - - await HttpHelper.PostAsync("http://ts-momapp01:12020/api/MachineIntegration/EqptAlive", requestAlert.ToJsonString()); - - break; - - case DeviceStatus.Unkonw: - code = "Down"; - break; - - case DeviceStatus.Offline: - code = "Maintenance"; - break; - - default: - break; - } - if (code != "Alerting") - { - requestAlert.AlertInfo = new List<AlertInfoDto>(); - var alert = new AlertInfoDto() - { - AlertCode = "1001", - AlertDescription = commonStackerCrane.StackerCraneStatusDes, - AlertReset = "0" - }; - var S= await HttpHelper.PostAsync("http://ts-momapp01:12020/api/MachineIntegration/EqptAlive", requestAlert.ToJsonString()); - WriteInfo("EqptAlive", S); - } - RequestEqptStatusDto requestEqptStatus = new RequestEqptStatusDto() - { - EmployeeNo = "T00001", - EquipmentCode = "ECH001-B", - RequestTime = DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss.fffZ"), - SessionId = Guid.NewGuid().ToString(), - Software = commonStackerCrane.DeviceName, - ChangeTime = DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss.fffZ"), - Description = commonStackerCrane.StackerCraneStatusDes, - LocationID = "NA", - ReasonCode = "123", - StatusCode = code - }; - var respone = await HttpHelper.PostAsync("http://ts-momapp01:12020/api/MachineIntegration/EqptStatus", requestEqptStatus.ToJsonString()); - WriteInfo("EqptStatus", respone); - } } } \ No newline at end of file diff --git a/Code Management/WMS/WIDESEA_WMSClient/src/router/tables.js b/Code Management/WMS/WIDESEA_WMSClient/src/router/tables.js index dd63472..b0fb6fe 100644 --- a/Code Management/WMS/WIDESEA_WMSClient/src/router/tables.js +++ b/Code Management/WMS/WIDESEA_WMSClient/src/router/tables.js @@ -216,6 +216,14 @@ meta: { keepAlive: false } + }, + { + path: '/ProductionModel', + name: 'ProductionModel', + component: () => import('@/views/widesea_wms/MOM/ProductionModel.vue'), + meta: { + keepAlive: false + } } ] export default tables diff --git a/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/MOM/Extend/Add.vue b/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/MOM/Extend/Add.vue new file mode 100644 index 0000000..230e978 --- /dev/null +++ b/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/MOM/Extend/Add.vue @@ -0,0 +1,76 @@ +<template> + <div> + <vol-box v-model="showDetialBox" :lazy="true" :height="350" :width="600" :padding="15" title="鏂欐灞炴�х淮鎶�"> + <el-form :inline="true" :model="TrayBarcodePropertys" label-width="auto" class="demo-form-inline"> + <el-form-item label="鏂欐灞炴��:"> + <el-input v-model="TrayBarcodePropertys.TrayBarcodeProperty" placeholder="鏂欐灞炴��" /> + </el-form-item> + <el-form-item label="鎵樼洏瀹归噺:"> + <el-input v-model="TrayBarcodePropertys.Capacity" placeholder="鎵樼洏瀹归噺" /> + </el-form-item> + <el-button @click="addProductType" type="primary">娣诲姞浜у搧宸ュ簭</el-button> + <el-button @click="save" type="success">鎻愪氦鏁版嵁</el-button> + <el-row> + <el-col :span="12"> + <el-form-item label="宸ュ簭:" v-for="(input, index) in TrayBarcodePropertys.ProcessCodes" + :key="index"> + <el-input v-model="input.ProcessCode" placeholder="宸ュ簭" /> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="浜у搧绫诲瀷:" v-for="(input, index) in TrayBarcodePropertys.ProductTypes" + :key="index"> + <el-input v-model="input.ProductType" placeholder="浜у搧绫诲瀷" /> + </el-form-item> + </el-col> + </el-row> + </el-form> + </vol-box> + </div> +</template> + +<script> +import VolBox from "@/components/basic/VolBox.vue"; +import http from "@/../src/api/http.js"; +export default { + components: { VolBox }, + data() { + return { + showDetialBox: false, + TrayBarcodePropertys: { + TrayBarcodeProperty: '', + Capacity: 0, + ProcessCodes: [{ ProcessCode: '', }], + ProductTypes: [{ ProductType: '', }] + } + } + }, + methods: { + addProductType() { + this.TrayBarcodePropertys.ProductTypes.push({ ProductType: '' }) + this.TrayBarcodePropertys.ProcessCodes.push({ ProcessCode: '' }) + }, + open() { + this.showDetialBox = true + }, + save() { + console.log(this.TrayBarcodePropertys) + let data = ({...this.TrayBarcodePropertys, ProcessCodes:JSON.stringify(this.TrayBarcodePropertys.ProcessCodes) , ProductTypes:JSON.stringify(this.TrayBarcodePropertys.ProductTypes)}); + + debugger; + http.post('api/Production/AddData', data).then(res => { + if (res.code == 200) { + // ElMessage.success(res.msg) + this.$message.success('娣诲姞鎴愬姛') + this.$parent.load(); + } else { + // ElMessage.error(res.msg) + this.$message.error(x.message) + } + }) + } + } +} +</script> + +<style lang="scss" scoped></style> \ No newline at end of file diff --git a/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/MOM/ProductionModel.js b/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/MOM/ProductionModel.js new file mode 100644 index 0000000..85acb05 --- /dev/null +++ b/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/MOM/ProductionModel.js @@ -0,0 +1,77 @@ +/***************************************************************************************** +** Author:jxx 2022 +** QQ:283591387 +**瀹屾暣鏂囨。瑙侊細http://v2.volcore.xyz/document/api 銆愪唬鐮佺敓鎴愰〉闈iewGrid銆� +**甯哥敤绀轰緥瑙侊細http://v2.volcore.xyz/document/vueDev +**鍚庡彴鎿嶄綔瑙侊細http://v2.volcore.xyz/document/netCoreDev +*****************************************************************************************/ +//姝s鏂囦欢鏄敤鏉ヨ嚜瀹氫箟鎵╁睍涓氬姟浠g爜锛屽彲浠ユ墿灞曚竴浜涜嚜瀹氫箟椤甸潰鎴栬�呴噸鏂伴厤缃敓鎴愮殑浠g爜 +import gridBody from "./Extend/Add.vue"; //鑷畾涔夋墿灞曟煡璇㈢晫闈腑琛ㄦ牸浣撶粍浠� + +let extension = { + components: { + //鏌ヨ鐣岄潰鎵╁睍缁勪欢 + gridHeader: '', + gridBody: gridBody, + gridFooter: '', + //鏂板缓銆佺紪杈戝脊鍑烘鎵╁睍缁勪欢 + modelHeader: '', + modelBody: '', + modelFooter: '' + }, + tableAction: '', //鎸囧畾鏌愬紶琛ㄧ殑鏉冮檺(杩欓噷濉啓琛ㄥ悕,榛樿涓嶇敤濉啓) + buttons: { view: [], box: [], detail: [] }, //鎵╁睍鐨勬寜閽� + 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 () { + console.log("馃殌 ~ onInit ~ gridBody:", gridBody) + this.$refs.gridBody.open(); + } + }); + + //绀轰緥锛氳缃慨鏀规柊寤恒�佺紪杈戝脊鍑烘瀛楁鏍囩鐨勯暱搴� + this.boxOptions.labelWidth = 150; + }, + onInited() { + //妗嗘灦鍒濆鍖栭厤缃悗 + //濡傛灉瑕侀厤缃槑缁嗚〃,鍦ㄦ鏂规硶鎿嶄綔 + //this.detailOptions.columns.forEach(column=>{ }); + }, + searchBefore(param) { + //鐣岄潰鏌ヨ鍓�,鍙互缁檖aram.wheres娣诲姞鏌ヨ鍙傛暟 + //杩斿洖false锛屽垯涓嶄細鎵ц鏌ヨ + return true; + }, + searchAfter(result) { + //鏌ヨ鍚庯紝result杩斿洖鐨勬煡璇㈡暟鎹�,鍙互鍦ㄦ樉绀哄埌琛ㄦ牸鍓嶅鐞嗚〃鏍肩殑鍊� + return true; + }, + addBefore(formData) { + //鏂板缓淇濆瓨鍓峟ormData涓哄璞★紝鍖呮嫭鏄庣粏琛紝鍙互缁欑粰琛ㄥ崟璁剧疆鍊硷紝鑷繁杈撳嚭鐪媐ormData鐨勫�� + return true; + }, + updateBefore(formData) { + //缂栬緫淇濆瓨鍓峟ormData涓哄璞★紝鍖呮嫭鏄庣粏琛ㄣ�佸垹闄よ鐨処d + return true; + }, + rowClick({ row, column, event }) { + //鏌ヨ鐣岄潰鐐瑰嚮琛屼簨浠� + this.$refs.table.$refs.table.toggleRowSelection(row); //鍗曞嚮琛屾椂閫変腑褰撳墠琛�; + }, + modelOpenAfter(row) { + //鐐瑰嚮缂栬緫銆佹柊寤烘寜閽脊鍑烘鍚庯紝鍙互鍦ㄦ澶勫啓閫昏緫锛屽锛屼粠鍚庡彴鑾峰彇鏁版嵁 + //(1)鍒ゆ柇鏄紪杈戣繕鏄柊寤烘搷浣滐細 this.currentAction=='Add'; + //(2)缁欏脊鍑烘璁剧疆榛樿鍊� + //(3)this.editFormFields.瀛楁='xxx'; + //濡傛灉闇�瑕佺粰涓嬫媺妗嗚缃粯璁ゅ�硷紝璇烽亶鍘唗his.editFormOptions鎵惧埌瀛楁閰嶇疆瀵瑰簲data灞炴�х殑key鍊� + //鐪嬩笉鎳傚氨鎶婅緭鍑虹湅锛歝onsole.log(this.editFormOptions) + } + } +}; +export default extension; diff --git a/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/MOM/ProductionModel.vue b/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/MOM/ProductionModel.vue new file mode 100644 index 0000000..1a82e6e --- /dev/null +++ b/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/MOM/ProductionModel.vue @@ -0,0 +1,68 @@ +<!-- +*Author锛歫xx + *Contact锛�283591387@qq.com + *浠g爜鐢辨鏋剁敓鎴�,浠讳綍鏇存敼閮藉彲鑳藉鑷磋浠g爜鐢熸垚鍣ㄨ鐩� + *涓氬姟璇峰湪@/extension/widesea_wms/material/Dt_MaterielInfo.js姝ゅ缂栧啓 + --> + <template> + <view-grid ref="grid" :columns="columns" :detail="detail" :editFormFields="editFormFields" + :editFormOptions="editFormOptions" :searchFormFields="searchFormFields" :searchFormOptions="searchFormOptions" + :table="table" :extend="extend"> + </view-grid> +</template> +<script> +import extend from "./ProductionModel.js"; +import { ref, defineComponent } from "vue"; +export default defineComponent({ + setup() { + const table = ref({ + key: 'materielID', + footer: "Foots", + cnName: '鏂欐灞炴��', + name: 'ProductionModel', + url: "/Production/", + sortName: "MaterielID" + }); + const editFormFields = ref({ + "TrayBarcodeProperty": "", + "Capacity": "", + + }); + const editFormOptions = ref([ + [ + { "title": "鏂欐灞炴��", "field": "TrayBarcodeProperty", type: "text" }, + { "title": "鎵樼洏瀹归噺", "field": "Capacity", type: "text" }, + ] + ]); + const searchFormFields = ref({}); + const searchFormOptions = ref([ + [ + { "title": "鏂欐灞炴��", "field": "TrayBarcodeProperty", type: "text" }, + { "title": "鎵樼洏瀹归噺", "field": "Capacity", type: "text" }, + ] + ]); + const columns = ref([{ field: 'id', title: 'ID', type: 'int', width: 110, hidden: true, readonly: true, require: true, align: 'left' }, + { field: 'trayBarcodeProperty', title: '鏂欐灞炴��', type: 'string', width: 110, align: 'left', sort: true }, + { field: 'processCodes', title: '宸ュ簭闆嗗悎', type: 'string', width: 120, align: 'left' }, + { field: 'productTypes', title: '鐗╂枡缂栫爜/宸ヨ壓鍨嬪彿闆嗗悎', type: 'string', width: 110, align: 'left' }, + { field: 'capacity', title: '鎵樼洏瀹归噺', type: 'string', width: 110, align: 'left' }]); + const detail = ref({ + cnName: "#detailCnName", + table: "#detailTable", + columns: [], + sortName: "", + key: "" + }); + return { + table, + extend, + editFormFields, + editFormOptions, + searchFormFields, + searchFormOptions, + columns, + detail, + }; + }, +}); +</script> diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Core/HostedService/SeedDataHostedService.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Core/HostedService/SeedDataHostedService.cs index 21bbef2..fe41350 100644 --- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Core/HostedService/SeedDataHostedService.cs +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Core/HostedService/SeedDataHostedService.cs @@ -49,7 +49,7 @@ { // 浣跨敤 myScopedService 鎵ц浠诲姟 - //await DBSeed.SeedAsync(_dbContext, _webRootPath); + await DBSeed.SeedAsync(_dbContext, _webRootPath); //澶氱鎴� 鍚屾 //await DBSeed.TenantSeedAsync(_dbContext); diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellStateDto.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/CellStateDto.cs similarity index 100% rename from Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellStateDto.cs rename to Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/CellStateDto.cs diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/ResultTrayCellsStatus.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/ResultTrayCellsStatus.cs similarity index 76% rename from Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/ResultTrayCellsStatus.cs rename to Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/ResultTrayCellsStatus.cs index b83fc36..48d00df 100644 --- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/ResultTrayCellsStatus.cs +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/ResultTrayCellsStatus.cs @@ -1,5 +1,8 @@ 锘縩amespace WIDESEA_DTO.MOM { + /// <summary> + /// 鎵樼洏鐢佃姱鐘舵�� + /// </summary> public class ResultTrayCellsStatus : BasicResult { /// <summary> @@ -11,9 +14,22 @@ /// 鐢佃姱鍒楄〃 /// </summary> public List<SerialNoDto> SerialNos { get; set; } = new List<SerialNoDto>(); + + /// <summary> + /// 缁戝畾浠g爜 + /// </summary> public string BindCode { get; set; } - public string TrayStatus { get; set; } + /// <summary> + /// 鐢熶骇浜х嚎 + /// </summary> + public string ProductionLine { get; set; } + + /// <summary> + /// 褰撳墠宸ヨ壓宸ュ簭浠g爜 + /// </summary> + public string ProcessCode { get; set; } + /// <summary> /// 鏂欐灞炴�у垪琛� /// </summary> @@ -35,7 +51,7 @@ /// </summary> public int PositionNo { get; set; } - public string BindCode { get; set; } + //public string BindCode { get; set; } /// <summary> /// 鐢佃姱鐘舵�� @@ -58,8 +74,10 @@ /// </summary> public List<ProcessCodes> ProcessCodes { get; set; } = new List<ProcessCodes>(); + /// <summary> + /// 鎵樼洏瀹归噺 + /// </summary> public double Capacity { get; set; } - /// <summary> /// 閫傜敤鐗╂枡缂栫爜/宸ヨ壓鍨嬪彿 @@ -69,7 +87,6 @@ public class ProcessCodes { - /// <summary> /// 宸ュ簭 /// </summary> @@ -78,8 +95,9 @@ public class ProductTypes { - + /// <summary> + /// 閫傜敤鐗╂枡缂栫爜/宸ヨ壓鍨嬪彿 + /// </summary> public string ProductType { get; set; } - } } \ No newline at end of file diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/TrayCellUnbindDto.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/TrayCellUnbindDto.cs similarity index 100% rename from Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/TrayCellUnbindDto.cs rename to Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/TrayCellUnbindDto.cs diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/TrayCellsStatusDto.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/TrayCellsStatusDto.cs similarity index 100% rename from Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/TrayCellsStatusDto.cs rename to Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/TrayCellsStatusDto.cs diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/TrayUnbindDto.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/TrayUnbindDto.cs similarity index 100% rename from Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/TrayUnbindDto.cs rename to Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/CellState/TrayUnbindDto.cs diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/ResponeAgingInputDto.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/ResponeAgingInputDto.cs index f209253..fa19cf6 100644 --- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/ResponeAgingInputDto.cs +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/MOM/ResponeAgingInputDto.cs @@ -6,6 +6,9 @@ namespace WIDESEA_DTO.MOM { + /// <summary> + /// 鍏ュ簱 + /// </summary> public class ResponeAgingInputDto : BasicResult { /// <summary> @@ -19,8 +22,30 @@ public string BindCode { get; set; } /// <summary> + /// 鐢熶骇浜х嚎 + /// </summary> + public string ProductionLine { get; set; } + + /// <summary> /// 鍏宠仈宸ュ簭杩斿洖鏃堕棿锛岃褰曟敞娑叉垨闈欑疆鏃堕暱銆� /// </summary> public string LinedProcessFeedbackTime { get; set; } + + /// <summary> + /// 鍙傛暟鐗堟湰淇℃伅 + /// </summary> + public string ParamVersion { get; set; } + + /// <summary> + /// 鏄惁闇�瑕佽鍙栧弬鏁� + /// </summary> + public bool ParamRefreshFlag { get; set; } + + /// <summary> + /// 鍙傛暟淇℃伅鏁扮粍 + /// </summary> + public List<ParameterInfoDto> ParameterInfo { get; set; } = new List<ParameterInfoDto>(); } + + } \ No newline at end of file diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo.cs index cdefd49..cf5a9ca 100644 --- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo.cs +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicModel/DtStockInfo.cs @@ -41,6 +41,15 @@ [SugarColumn(IsNullable = true, ColumnDescription = "澶囨敞")] public string Remark { get; set; } + /// <summary> + /// 鍏宠仈宸ュ簭杩斿洖鏃堕棿锛堟敞娑瞈闈欑疆鏃堕暱锛� + /// </summary> + public string LinedProcessFeedbackTime { get; set; } + + /// <summary> + /// 鍏宠仈宸ュ簭杩斿洖鏃堕棿锛堟敞娑瞈闈欑疆鏃堕暱锛� + /// </summary> + public string LinedProcessFeedbackTimes { get; set; } /// <summary> /// 鍖哄煙缂栫爜 @@ -59,7 +68,7 @@ /// 璐т綅鏁版嵁 /// </summary> [SugarColumn(ColumnName = "LocationInfo")] - [Navigate(NavigateType.OneToOne,nameof(LocationCode), nameof(DtLocationInfo.LocationCode))] + [Navigate(NavigateType.OneToOne, nameof(LocationCode), nameof(DtLocationInfo.LocationCode))] public DtLocationInfo? LocationInfo { get; set; } } -} +} \ No newline at end of file diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/MOM/ProductionModel.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/MOM/ProductionModel.cs new file mode 100644 index 0000000..082f39f --- /dev/null +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/MOM/ProductionModel.cs @@ -0,0 +1,79 @@ +锘縰sing Newtonsoft.Json; +using SqlSugar; +using WIDESEA_Core.DB.Models; + +namespace WIDESEA_Model.Models +{ + /// <summary> + /// 琛ㄧず鐢熶骇杩囩▼涓殑鏂欐灞炴�у拰鐩稿叧宸ュ簭淇℃伅鐨勬ā鍨嬨�� + /// </summary> + [SugarTable("ProductionModel", "鏂欐灞炴��")] + public class ProductionModel : BaseEntity + { + /// <summary> + /// 澶� 娉�:涓婚敭锛岃嚜鍔ㄥ闀� + /// </summary> + [SugarColumn(ColumnName = "Id", IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭锛岃嚜鍔ㄥ闀�")] + public int Id { get; set; } + + /// <summary> + /// 鏂欐灞炴�э紝鐢ㄤ簬鏍囪瘑鏂欐鐨勫敮涓�灞炴�с�� + /// </summary> + [SugarColumn(ColumnName = "TrayBarcodeProperty", ColumnDescription = "鏂欐灞炴��", IsNullable = false)] + public string TrayBarcodeProperty { get; set; } + + /// <summary> + /// 宸ュ簭闆嗗悎锛屽寘鍚墍鏈夌浉鍏崇殑宸ュ簭浠g爜銆� + /// </summary> + [SugarColumn(ColumnName = "ProcessCodes", ColumnDescription = "宸ュ簭闆嗗悎", IsNullable = false, Length = int.MaxValue)] + public string ProcessCodes { get; set; } + + /// <summary> + /// 閫傜敤鐗╂枡缂栫爜/宸ヨ壓鍨嬪彿闆嗗悎锛屽寘鍚墍鏈夌浉鍏崇殑鐗╂枡缂栫爜鎴栧伐鑹哄瀷鍙枫�� + /// </summary> + [SugarColumn(ColumnName = "ProductTypes", ColumnDescription = "閫傜敤鐗╂枡缂栫爜", IsNullable = false, Length = int.MaxValue)] + public string ProductTypes { get; set; } + + /// <summary> + /// 鎵樼洏瀹归噺锛岃〃绀烘枡妗嗗彲浠ユ壙杞界殑鏈�澶х墿鍝佹暟閲忋�� + /// </summary> + [SugarColumn(ColumnName = "Capacity", ColumnDescription = "鎵樼洏瀹归噺", IsNullable = false)] + public int Capacity { get; set; } + + /// <summary> + /// 鑾峰彇鎴栬缃伐搴忛泦鍚堬紝鍙嶅簭鍒楀寲JSON瀛楃涓蹭负List<ProcessCodes>銆� + /// </summary> + [SugarColumn(IsIgnore = true)] + public List<ProcessCodesDTO> GetProcessCodes + { + get { return JsonConvert.DeserializeObject<List<ProcessCodesDTO>>(ProcessCodes); } + set { ProcessCodes = JsonConvert.SerializeObject(value); } + } + + /// <summary> + /// 鑾峰彇鎴栬缃�傜敤鐗╂枡缂栫爜/宸ヨ壓鍨嬪彿闆嗗悎锛屽弽搴忓垪鍖朖SON瀛楃涓蹭负List<string>銆� + /// </summary> + [SugarColumn(IsIgnore = true)] + public List<ProductTypesDTO> GetProductTypes + { + get { return JsonConvert.DeserializeObject<List<ProductTypesDTO>>(ProductTypes); } + set { ProductTypes = JsonConvert.SerializeObject(value); } + } + } + + public class ProcessCodesDTO + { + /// <summary> + /// 宸ュ簭 + /// </summary> + public string ProcessCode { get; set; } + } + + public class ProductTypesDTO + { + /// <summary> + /// 閫傜敤鐗╂枡缂栫爜/宸ヨ壓鍨嬪彿 + /// </summary> + public string ProductType { get; set; } + } +} \ No newline at end of file diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicRepository/Production/IProductionRepository.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicRepository/Production/IProductionRepository.cs new file mode 100644 index 0000000..62463d0 --- /dev/null +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicRepository/Production/IProductionRepository.cs @@ -0,0 +1,12 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace WIDESEA_StorageBasicRepository +{ + public interface IProductionRepository : IRepository<ProductionModel> + { + } +} diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicRepository/Production/ProductionRepository.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicRepository/Production/ProductionRepository.cs new file mode 100644 index 0000000..a58f43f --- /dev/null +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicRepository/Production/ProductionRepository.cs @@ -0,0 +1,15 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace WIDESEA_StorageBasicRepository +{ + public class ProductionRepository : RepositoryBase<ProductionModel>, IProductionRepository + { + public ProductionRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage) + { + } + } +} diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Production/IProductionService.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Production/IProductionService.cs new file mode 100644 index 0000000..edb2e8d --- /dev/null +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Production/IProductionService.cs @@ -0,0 +1,5 @@ +锘縩amespace WIDESEA_StorageBasicServices; + +public interface IProductionService : IService<ProductionModel> +{ +} \ No newline at end of file diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Production/ProductionService.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Production/ProductionService.cs new file mode 100644 index 0000000..2724493 --- /dev/null +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Production/ProductionService.cs @@ -0,0 +1,10 @@ +锘縰sing WIDESEA_StorageBasicRepository; + +namespace WIDESEA_StorageBasicServices; + +public class ProductionService : ServiceBase<ProductionModel, IProductionRepository>, IProductionService +{ + public ProductionService(IProductionRepository BaseDal) : base(BaseDal) + { + } +} \ No newline at end of file diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs index 5367dc9..2236c93 100644 --- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs @@ -34,6 +34,7 @@ private readonly IProcessApplyService _processApplyService; //宸ヨ壓璺嚎 private readonly IDt_AreaInfoRepository _areaInfoRepository; //鍖哄煙 private readonly IAgingInOrOutInputService _agingInOrOutInputService; //闈欑疆\闄堝寲 + private readonly IProductionRepository _productionRepository; //鐢熶骇 public Dt_TaskService(IDt_TaskRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, @@ -54,7 +55,8 @@ IProcessApplyService processApplyService, IDt_AreaInfoRepository areaInfoRepository, IAgingInOrOutInputService agingInOrOutInputService, - IStockInfoDetailRepository stockInfoDetailRepository) : base(BaseDal) + IStockInfoDetailRepository stockInfoDetailRepository, + IProductionRepository productionRepository) : base(BaseDal) { _unitOfWorkManage = unitOfWorkManage; _outOrderRepository = outOrderRepository; @@ -75,6 +77,7 @@ _areaInfoRepository = areaInfoRepository; _agingInOrOutInputService = agingInOrOutInputService; _stockInfoDetailRepository = stockInfoDetailRepository; + _productionRepository = productionRepository; } #region 澶栭儴鎺ュ彛鏂规硶 @@ -452,7 +455,16 @@ var result = JsonConvert.DeserializeObject<ResultTrayCellsStatus>(content.Data.ToString()); if (result.SerialNos.Count <= 0) return content.Error(result.MOMMessage); + + // TODO 鑾峰彇鏈湴鏂欐灞炴�т笌鏁寸洏鐢佃姱灞炴�ц幏鍙栫殑鍊艰繘琛屽姣旓紝濡傛灉涓�鑷村垯缁х画锛屽惁鍒欒繑鍥為敊璇俊鎭� + var productions = await _productionRepository.QueryDataAsync(x => result.TrayBarcodePropertys.Select(x => x.TrayBarcodeProperty).ToList().Contains(x.TrayBarcodeProperty)); + if (productions.Count <= 0) + return content.Error("鏂欐灞炴�т笉瀛樺湪"); + + // 璋冪敤CreateBoxingInfo鏂规硶锛屽垱寤虹粍鐩樹俊鎭� + var boxing = await CreateBoxingInfo(result, input.PalletCode); + if (boxing == null) return content.Error("缁勭洏澶辫触"); // 璋冪敤GetProcessApplyAsync鏂规硶锛岃幏鍙栧伐鑹鸿矾绾� ProcessApplyDto process = await GetProcessApplyAsync(result); @@ -460,11 +472,18 @@ // 濡傛灉process涓簄ull锛屽垯杩斿洖content if (process == null) return content; - // 璋冪敤GetProcessResponseAsync鏂规硶锛岃幏鍙栧伐鑹哄搷搴� - var processResponse = await GetProcessResponseAsync(process, input.Position); + // 璋冪敤_processApplyService.GetProcessApplyAsync鏂规硶锛岃幏鍙栧伐鑹虹敵璇� + content = await _processApplyService.GetProcessApplyAsync(process); + // 濡傛灉鐘舵�佷负false锛屽垯杩斿洖null + if (!content.Status) return content.Error("宸ヨ壓鐢宠澶辫触"); + + //// 璋冪敤GetProcessResponseAsync鏂规硶锛岃幏鍙栧伐鑹哄搷搴� + //var processResponse = await GetProcessResponseAsync(process, input.Position); + + List<string> strings = input.Position == "1088" ? new List<string>() { "CHSC01" } : new List<string>() { "JZSC01" }; // 璋冪敤CreateNewTask鏂规硶锛屽垱寤烘柊浠诲姟 - content = await CreateNewTask(input, processResponse); + content = await CreateNewTask(input, strings); if (content.Status) { var isBox = await _boxingInfoRepository.AddDataNavAsync(boxing); @@ -564,7 +583,7 @@ SerialNumber = serialNoObj.SerialNo, OrderNo = serialNoObj.PositionNo.ToString(), Status = serialNoObj.SerialNoStatus, - MaterielCode = serialNoObj.BindCode, + MaterielCode = result.BindCode, Remark = result.TrayBarcodePropertys.ToJsonString(), }).ToList() }; @@ -1184,20 +1203,12 @@ /// <param name="areaId">鍖哄煙ID</param> /// <param name="content">鍝嶅簲鍐呭</param> /// <returns></returns> - private async Task<WebResponseContent> CreateNewTask(RequestTaskDto input, List<Dt_EquipmentProcess> process = null, int flag = 0) + private async Task<WebResponseContent> CreateNewTask(RequestTaskDto input, List<string> process = null, int flag = 0) { WebResponseContent content = new WebResponseContent(); - List<string> strings = new List<string>(); - if (process != null) - { - strings = process.Select(x => x.EquipmentName).ToList(); - } - else - { - strings = input.Position.Split(',').ToList(); - } + // 鑾峰彇鐩爣鍦板潃 - string ToAddress = await GetRoadWayAsync(strings); + string ToAddress = await GetRoadWayAsync(process); // 鍒涘缓鏂颁换鍔″疄渚� var task = new Dt_Task diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/ProductionController.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/ProductionController.cs new file mode 100644 index 0000000..b6fb594 --- /dev/null +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/ProductionController.cs @@ -0,0 +1,17 @@ +锘� +namespace WIDESEA_WMSServer.Controllers +{ + [Route("api/[controller]")] + [ApiController] + public class ProductionController : ApiBaseController<IProductionService, ProductionModel> + { + public ProductionController(IProductionService service) : base(service) + { + } + + public override ActionResult AddData([FromBody] ProductionModel options) + { + return base.AddData(options); + } + } +} \ No newline at end of file diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/GlobalUsing.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/GlobalUsing.cs index aa2f49c..16392e6 100644 --- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/GlobalUsing.cs +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/GlobalUsing.cs @@ -12,4 +12,5 @@ global using WIDESEA_Model.Models.System; global using WIDESEA_Core.Authorization; global using WIDESEA_Core.Utilities; -global using WIDESEA_Model; \ No newline at end of file +global using WIDESEA_Model; +global using WIDESEA_StorageBasicServices; \ No newline at end of file diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/WIDESEA_WMSServer.csproj.user b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/WIDESEA_WMSServer.csproj.user index 8814900..c3bce0e 100644 --- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/WIDESEA_WMSServer.csproj.user +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/WIDESEA_WMSServer.csproj.user @@ -1,8 +1,8 @@ 锘�<?xml version="1.0" encoding="utf-8"?> <Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> - <Controller_SelectedScaffolderID>MvcControllerEmptyScaffolder</Controller_SelectedScaffolderID> - <Controller_SelectedScaffolderCategoryPath>root/Common/MVC/Controller</Controller_SelectedScaffolderCategoryPath> + <Controller_SelectedScaffolderID>ApiControllerEmptyScaffolder</Controller_SelectedScaffolderID> + <Controller_SelectedScaffolderCategoryPath>root/Common/Api</Controller_SelectedScaffolderCategoryPath> <NameOfLastUsedPublishProfile>D:\Git\BaiBuLiKu\Code Management\WMS\WIDESEA_WMSServer\WIDESEA_WMSServer\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile> </PropertyGroup> </Project> \ No newline at end of file -- Gitblit v1.9.3