LA24030_LuLiPackageLine_Web/src/api/main/WmsOrder/mes_BatchOrderUPI_New.ts | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/mes_BatchOrderUPI_New/component/editDialog.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/mes_BatchOrderUPI_New/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/Mes_BatchOrderUPI_New/Dto/Mes_BatchOrderUPI_NewInput.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/Mes_BatchOrderUPI_New/Dto/Mes_BatchOrderUPI_NewOutput.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/Mes_BatchOrderUPI_New/Mes_BatchOrderUPI_NewService.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
LA24030_LuLiPackageLine_Wms/Admin.NET.Web.Entry/wwwroot/ExcelTemplateFile/批次数据导入模板.xlsx | 补丁 | 查看 | 原始文档 | blame | 历史 |
LA24030_LuLiPackageLine_Web/src/api/main/WmsOrder/mes_BatchOrderUPI_New.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,78 @@ import request from '/@/utils/request'; enum Api { AddMes_BatchOrderUPI_New = '/api/mes_BatchOrderUPI_New/add', DeleteMes_BatchOrderUPI_New = '/api/mes_BatchOrderUPI_New/delete', UpdateMes_BatchOrderUPI_New = '/api/mes_BatchOrderUPI_New/update', PageMes_BatchOrderUPI_New = '/api/mes_BatchOrderUPI_New/page', ListMes_BatchOrderUPI_New = '/api/mes_BatchOrderUPI_New/list', DetailMes_BatchOrderUPI_New = '/api/mes_BatchOrderUPI_New/detail', ImportExcelMes_BatchOrderUPI_New = '/api/mes_BatchOrderUPI_New/importExcel', DownloadExcelTemplateMes_BatchOrderUPI_New = '/api/mes_BatchOrderUPI_New/downloadExcelTemplate', } // å¢å æ¹æ¬¡æ°æ® export const addMes_BatchOrderUPI_New = (params?: any) => request({ url: Api.AddMes_BatchOrderUPI_New, method: 'post', data: params }); // å 餿¹æ¬¡æ°æ® export const deleteMes_BatchOrderUPI_New = (params?: any) => request({ url: Api.DeleteMes_BatchOrderUPI_New, method: 'post', data: params }); // ç¼è¾æ¹æ¬¡æ°æ® export const updateMes_BatchOrderUPI_New = (params?: any) => request({ url: Api.UpdateMes_BatchOrderUPI_New, method: 'post', data: params }); // å¯¼å ¥æ¹æ¬¡æ°æ® export const importExcelMes_BatchOrderUPI_New = (params?: any) => request({ url: Api.ImportExcelMes_BatchOrderUPI_New, method: 'post', data: params }); // ä¸è½½å¯¼å ¥æ¹æ¬¡æ°æ®æ¨¡æ¿ export const downloadExcelTemplateMes_BatchOrderUPI_New = (params?: any) => request({ url: Api.DownloadExcelTemplateMes_BatchOrderUPI_New, method: 'get', data: params, responseType: 'blob' }); // å页æ¥è¯¢æ¹æ¬¡æ°æ® export const pageMes_BatchOrderUPI_New = (params?: any) => request({ url: Api.PageMes_BatchOrderUPI_New, method: 'post', data: params }); // ä¸å页æ¥è¯¢æ¹æ¬¡æ°æ® export const listMes_BatchOrderUPI_New = (params?: any) => request({ url: Api.ListMes_BatchOrderUPI_New, method: 'get', data: params }); // è¯¦æ æ¹æ¬¡æ°æ® export const detailMes_BatchOrderUPI_New = (id: any) => request({ url: Api.DetailMes_BatchOrderUPI_New, method: 'get', data: { id } }); LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/mes_BatchOrderUPI_New/component/editDialog.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,322 @@ <template> <div class="mes_BatchOrderUPI_New-container"> <el-dialog v-model="isShowDialog" :width="800" draggable="" :close-on-click-modal="false"> <template #header> <div style="color: #fff"> <!--<el-icon size="16" style="margin-right: 3px; display: inline; vertical-align: middle"> <ele-Edit /> </el-icon>--> <span>{{ props.title }}</span> </div> </template> <el-form :model="ruleForm" ref="ruleFormRef" label-width="auto" :rules="rules" v-loading="loading"> <el-row :gutter="35"> <el-form-item v-show="false"> <el-input v-model="ruleForm.id" /> </el-form-item> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="æå¨åºå" prop="areaCode"> <el-select clearable v-model="ruleForm.areaCode" placeholder="è¯·éæ©æå¨åºå"> <el-option v-for="(item,index) in getEnumAreaCodeData" :key="index" :value="item.value" :label="`${item.describe}`"></el-option> </el-select> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="æ¿æç¶æ" prop="upiStatus"> <el-select clearable v-model="ruleForm.upiStatus" placeholder="è¯·éæ©æ¿æç¶æ"> <el-option v-for="(item,index) in getEnumUpiStatusData" :key="index" :value="item.value" :label="`${item.describe}`"></el-option> </el-select> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="æ¹æ¬¡å·" prop="planNo"> <el-input v-model="ruleForm.planNo" placeholder="请è¾å ¥æ¹æ¬¡å·" maxlength="50" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="订åå·" prop="orderId"> <el-input v-model="ruleForm.orderId" placeholder="请è¾å ¥è®¢åå·" maxlength="50" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="é¨ä»¶æ¡ç " prop="uPI"> <el-input v-model="ruleForm.uPI" placeholder="请è¾å ¥é¨ä»¶æ¡ç " maxlength="50" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="é¨ä»¶åç§°" prop="detailName"> <el-input v-model="ruleForm.detailName" placeholder="请è¾å ¥é¨ä»¶åç§°" maxlength="50" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="é¿" prop="length"> <el-input v-model="ruleForm.length" placeholder="请è¾å ¥é¿" maxlength="53" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="宽" prop="width"> <el-input v-model="ruleForm.width" placeholder="请è¾å ¥å®½" maxlength="53" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="å" prop="thk"> <el-input v-model="ruleForm.thk" placeholder="请è¾å ¥å" maxlength="53" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="é¨ä»¶çº¹ç" prop="matgrid"> <el-input v-model="ruleForm.matgrid" placeholder="请è¾å ¥é¨ä»¶çº¹ç" maxlength="50" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="æ¯å¦å°è¾¹" prop="isEB"> <el-input-number v-model="ruleForm.isEB" placeholder="请è¾å ¥æ¯å¦å°è¾¹" clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="æå设å¤ç¼å·" prop="dRNum"> <el-input-number v-model="ruleForm.dRNum" placeholder="请è¾å ¥æå设å¤ç¼å·" clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="æ¯å¦ä¼åå è£ " prop="isPA"> <el-input-number v-model="ruleForm.isPA" placeholder="请è¾å ¥æ¯å¦ä¼åå è£ " clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="é¯åå¾å·" prop="materialIndeX"> <el-input-number v-model="ruleForm.materialIndeX" placeholder="请è¾å ¥é¯åå¾å·" clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="å è£ å·" prop="packageCode"> <el-input v-model="ruleForm.packageCode" placeholder="请è¾å ¥å è£ å·" maxlength="50" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="å è£ Xåæ " prop="machineXCenter"> <el-input v-model="ruleForm.machineXCenter" placeholder="请è¾å ¥å è£ Xåæ " maxlength="53" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="å è£ Yåæ " prop="machineYCenter"> <el-input v-model="ruleForm.machineYCenter" placeholder="请è¾å ¥å è£ Yåæ " maxlength="53" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="å è£ Zåæ " prop="machineZCenter"> <el-input v-model="ruleForm.machineZCenter" placeholder="请è¾å ¥å è£ Zåæ " maxlength="53" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="屿°" prop="sequence"> <el-input-number v-model="ruleForm.sequence" placeholder="请è¾å ¥å±æ°" clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="次åº" prop="shelf"> <el-input-number v-model="ruleForm.shelf" placeholder="请è¾å ¥æ¬¡åº" clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="转åè§åº¦" prop="rotation"> <el-input v-model="ruleForm.rotation" placeholder="请è¾å ¥è½¬åè§åº¦" maxlength="53" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="纸箱é¿" prop="info1"> <el-input v-model="ruleForm.info1" placeholder="请è¾å ¥çº¸ç®±é¿" maxlength="53" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="纸箱宽" prop="info2"> <el-input v-model="ruleForm.info2" placeholder="请è¾å ¥çº¸ç®±å®½" maxlength="53" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> <el-form-item label="纸箱é«" prop="info3"> <el-input v-model="ruleForm.info3" placeholder="请è¾å ¥çº¸ç®±é«" maxlength="53" show-word-limit clearable /> </el-form-item> </el-col> </el-row> </el-form> <template #footer> <span class="dialog-footer"> <el-button @click="cancel">å æ¶</el-button> <el-button type="primary" @click="submit" :disabled="disabled_btn">ç¡® å®</el-button> </span> </template> </el-dialog> </div> </template> <style scoped> :deep(.el-select), :deep(.el-input-number) { width: 100%; } </style> <script lang="ts" setup> import { ref,onMounted } from "vue"; import { getDictDataItem as di, getDictDataList as dl } from '/@/utils/dict-utils'; import { ElMessage } from "element-plus"; import type { FormRules } from "element-plus"; import { addMes_BatchOrderUPI_New, updateMes_BatchOrderUPI_New, detailMes_BatchOrderUPI_New } from "/@/api/main/WmsOrder/mes_BatchOrderUPI_New"; import { getAPI } from '/@/utils/axios-utils'; import { SysEnumApi } from '/@/api-services/api'; const getEnumAreaCodeData = ref<any>([]); const getEnumUpiStatusData = ref<any>([]); //ç¶çº§ä¼ 鿥çåæ° var props = defineProps({ title: { type: String, default: "", }, }); //ç¶çº§ä¼ 鿥ç彿°ï¼ç¨äºåè° const emit = defineEmits(["reloadTable"]); const ruleFormRef = ref(); const isShowDialog = ref(false); const loading = ref(false); const disabled_btn = ref(false); const ruleForm = ref<any>({}); //èªè¡æ·»å å ¶ä»è§å const rules = ref<FormRules>({ upiStatus: [{required: true, message: 'è¯·éæ©æ¿æç¶æï¼', trigger: 'change',},], planNo: [{required: true, message: '请è¾å ¥æ¹æ¬¡å·ï¼', trigger: 'blur',},], orderId: [{required: true, message: '请è¾å ¥è®¢åå·ï¼', trigger: 'blur',},], uPI: [{required: true, message: '请è¾å ¥é¨ä»¶æ¡ç ï¼', trigger: 'blur',},], detailName: [{required: true, message: '请è¾å ¥é¨ä»¶åç§°ï¼', trigger: 'blur',},], length: [{required: true, message: '请è¾å ¥é¿ï¼', trigger: 'blur',},], width: [{required: true, message: '请è¾å ¥å®½ï¼', trigger: 'blur',},], thk: [{required: true, message: '请è¾å ¥åï¼', trigger: 'blur',},], packageCode: [{required: true, message: '请è¾å ¥å è£ å·ï¼', trigger: 'blur',},], isDelete: [{required: true, message: 'è¯·éæ©è½¯å é¤ï¼', trigger: 'change',},], }); /* * æå¼å¼¹çª * @param flag æ è®°ï¼1æ°å¢ 2ç¼è¾ 3æ¥çï¼ * @param row è¡æ°æ® */ const openDialog = async (flag: number,row: any) => { // ruleForm.value = JSON.parse(JSON.stringify(row)); // æ¹ç¨detailè·åææ°æ°æ®æ¥ç¼è¾ let rowData = JSON.parse(JSON.stringify(row)); if (rowData.id) ruleForm.value = (await detailMes_BatchOrderUPI_New(rowData.id)).data.result; else { ruleForm.value = rowData; } isShowDialog.value = true; }; // å ³éå¼¹çª const closeDialog = () => { emit("reloadTable"); isShowDialog.value = false; }; // åæ¶ const cancel = () => { isShowDialog.value = false; }; // æäº¤ const submit = async () => { disabled_btn.value = true; ruleFormRef.value.validate(async (isValid: boolean, fields?: any) => { if (isValid) { loading.value = true; let values = ruleForm.value; let ret={}; let title='æ°å¢'; if (ruleForm.value.id == undefined || ruleForm.value.id == null || ruleForm.value.id == "" || ruleForm.value.id == 0) { ret = await addMes_BatchOrderUPI_New(values); } else { title='ç¼è¾'; ret = await updateMes_BatchOrderUPI_New(values); } loading.value = false; disabled_btn.value = false; if(ret.data.type=="success"){ ElMessage.success(title+'æå'); closeDialog(); } } else { disabled_btn.value = false; ElMessage({ message: `表åæ${Object.keys(fields).length}å¤éªè¯å¤±è´¥ï¼è¯·ä¿®æ¹ååæäº¤`, type: "error", }); } }); }; // 页é¢å è½½æ¶ onMounted(async () => { getEnumAreaCodeData.value = (await getAPI(SysEnumApi).apiSysEnumEnumDataListGet('AreaCodeEnum')).data.result ?? []; getEnumUpiStatusData.value = (await getAPI(SysEnumApi).apiSysEnumEnumDataListGet('UpiStatusEnum')).data.result ?? []; }); //å°å±æ§æè 彿°æ´é²ç»ç¶ç»ä»¶ defineExpose({ openDialog }); </script> LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/mes_BatchOrderUPI_New/index.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,446 @@ <template> <div class="mes_BatchOrderUPI_New-container"> <el-card shadow="hover" :body-style="{ paddingBottom: '0' }"> <el-form :model="queryParamsMes_BatchOrderUPI_New" ref="queryForm" labelWidth="90"> <el-row> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10"> <el-form-item label="å ³é®å"> <el-input v-model="queryParamsMes_BatchOrderUPI_New.searchKey" clearable="" placeholder="æ¹æ¬¡å·,订åå·,é¨ä»¶æ¡ç ,é¨ä»¶åç§°,é¨ä»¶çº¹ç,å è£ å·,å建人,ä¿®æ¹äºº"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="æå¨åºå"> <el-select clearable="" v-model="queryParamsMes_BatchOrderUPI_New.areaCode" placeholder="è¯·éæ©æå¨åºå"> <el-option v-for="(item,index) in getEnumAreaCodeData_Index" :key="index" :value="item.value" :label="`${item.describe}`" /> </el-select> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="æ¿æç¶æ"> <el-select clearable="" v-model="queryParamsMes_BatchOrderUPI_New.upiStatus" placeholder="è¯·éæ©æ¿æç¶æ"> <el-option v-for="(item,index) in getEnumUpiStatusData_Index" :key="index" :value="item.value" :label="`${item.describe}`" /> </el-select> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="æ¹æ¬¡å·"> <el-input v-model="queryParamsMes_BatchOrderUPI_New.planNo" clearable="" placeholder="请è¾å ¥æ¹æ¬¡å·"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="订åå·"> <el-input v-model="queryParamsMes_BatchOrderUPI_New.orderId" clearable="" placeholder="请è¾å ¥è®¢åå·"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="é¨ä»¶æ¡ç "> <el-input v-model="queryParamsMes_BatchOrderUPI_New.uPI" clearable="" placeholder="请è¾å ¥é¨ä»¶æ¡ç "/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="é¨ä»¶åç§°"> <el-input v-model="queryParamsMes_BatchOrderUPI_New.detailName" clearable="" placeholder="请è¾å ¥é¨ä»¶åç§°"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="é¿"> <el-input v-model="queryParamsMes_BatchOrderUPI_New.length" clearable="" placeholder="请è¾å ¥é¿"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="宽"> <el-input v-model="queryParamsMes_BatchOrderUPI_New.width" clearable="" placeholder="请è¾å ¥å®½"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="å"> <el-input v-model="queryParamsMes_BatchOrderUPI_New.thk" clearable="" placeholder="请è¾å ¥å"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="é¨ä»¶çº¹ç"> <el-input v-model="queryParamsMes_BatchOrderUPI_New.matgrid" clearable="" placeholder="请è¾å ¥é¨ä»¶çº¹ç"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="æ¯å¦å°è¾¹"> <el-input-number v-model="queryParamsMes_BatchOrderUPI_New.isEB" clearable="" placeholder="请è¾å ¥æ¯å¦å°è¾¹"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="æå设å¤ç¼å·"> <el-input-number v-model="queryParamsMes_BatchOrderUPI_New.dRNum" clearable="" placeholder="请è¾å ¥æå设å¤ç¼å·"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="æ¯å¦ä¼åå è£ "> <el-input-number v-model="queryParamsMes_BatchOrderUPI_New.isPA" clearable="" placeholder="请è¾å ¥æ¯å¦ä¼åå è£ "/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="é¯åå¾å·"> <el-input-number v-model="queryParamsMes_BatchOrderUPI_New.materialIndeX" clearable="" placeholder="请è¾å ¥é¯åå¾å·"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="å è£ å·"> <el-input v-model="queryParamsMes_BatchOrderUPI_New.packageCode" clearable="" placeholder="请è¾å ¥å è£ å·"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="å è£ Xåæ "> <el-input v-model="queryParamsMes_BatchOrderUPI_New.machineXCenter" clearable="" placeholder="请è¾å ¥å è£ Xåæ "/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="å è£ Yåæ "> <el-input v-model="queryParamsMes_BatchOrderUPI_New.machineYCenter" clearable="" placeholder="请è¾å ¥å è£ Yåæ "/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="å è£ Zåæ "> <el-input v-model="queryParamsMes_BatchOrderUPI_New.machineZCenter" clearable="" placeholder="请è¾å ¥å è£ Zåæ "/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="屿°"> <el-input-number v-model="queryParamsMes_BatchOrderUPI_New.sequence" clearable="" placeholder="请è¾å ¥å±æ°"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="次åº"> <el-input-number v-model="queryParamsMes_BatchOrderUPI_New.shelf" clearable="" placeholder="请è¾å ¥æ¬¡åº"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="转åè§åº¦"> <el-input v-model="queryParamsMes_BatchOrderUPI_New.rotation" clearable="" placeholder="请è¾å ¥è½¬åè§åº¦"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="纸箱é¿"> <el-input v-model="queryParamsMes_BatchOrderUPI_New.info1" clearable="" placeholder="请è¾å ¥çº¸ç®±é¿"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="纸箱宽"> <el-input v-model="queryParamsMes_BatchOrderUPI_New.info2" clearable="" placeholder="请è¾å ¥çº¸ç®±å®½"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New"> <el-form-item label="纸箱é«"> <el-input v-model="queryParamsMes_BatchOrderUPI_New.info3" clearable="" placeholder="请è¾å ¥çº¸ç®±é«"/> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb10"> <el-form-item> <el-button-group style="display: flex; align-items: center;"> <el-button type="primary" icon="ele-Search" @click="handleQueryMes_BatchOrderUPI_New" v-auth="'mes_BatchOrderUPI_New:page'" :disabled="disabled_btnMes_BatchOrderUPI_New"> æ¥è¯¢ </el-button> <el-button icon="ele-Refresh" @click="resetMes_BatchOrderUPI_New"> éç½® </el-button> <el-button icon="ele-ZoomIn" @click="changeAdvanceQueryUIMes_BatchOrderUPI_New" v-if="!showAdvanceQueryUIMes_BatchOrderUPI_New" style="margin-left:5px;"> é«çº§æ¥è¯¢ </el-button> <el-button icon="ele-ZoomOut" @click="changeAdvanceQueryUIMes_BatchOrderUPI_New" v-if="showAdvanceQueryUIMes_BatchOrderUPI_New" style="margin-left:5px;"> éè </el-button> <el-button type="primary" style="margin-left:5px;" icon="ele-Plus" @click="openAddMes_BatchOrderUPI_New" v-auth="'mes_BatchOrderUPI_New:add'"> æ°å¢ </el-button> <el-button type="primary" style="margin-left:5px;" icon="ele-Upload" @click="openImportExcelMes_BatchOrderUPI_New" v-auth="'mes_BatchOrderUPI_New:importExcel'" > å¯¼å ¥ </el-button> <el-button type="primary" style="margin-left:5px;" icon="ele-Download" @click="handleExportExcelMes_BatchOrderUPI_New" v-auth="'mes_BatchOrderUPI_New:exportExcel'" > å¯¼åº </el-button> </el-button-group> </el-form-item> </el-col> </el-row> </el-form> </el-card> <el-card class="full-table" shadow="hover" style="margin-top: 5px"> <el-table ref="tableRefMes_BatchOrderUPI_New" :data="tableDataMes_BatchOrderUPI_New" style="width: 100%" v-loading="loadingMes_BatchOrderUPI_New" tooltip-effect="light" row-key="id" @sort-change="sortChangeMes_BatchOrderUPI_New" border=""> <el-table-column type="index" label="åºå·" width="55" align="center"/> <el-table-column prop="areaCode" label="æå¨åºå" show-overflow-tooltip="" > <template #default="scope"> <el-tag>{{ getEnumDesc(scope.row.areaCode, getEnumAreaCodeData_Index)}}</el-tag> </template> </el-table-column> <el-table-column prop="upiStatus" label="æ¿æç¶æ" show-overflow-tooltip="" > <template #default="scope"> <el-tag>{{ getEnumDesc(scope.row.upiStatus, getEnumUpiStatusData_Index)}}</el-tag> </template> </el-table-column> <el-table-column prop="planNo" label="æ¹æ¬¡å·" show-overflow-tooltip="" /> <el-table-column prop="orderId" label="订åå·" show-overflow-tooltip="" /> <el-table-column prop="uPI" label="é¨ä»¶æ¡ç " show-overflow-tooltip="" /> <el-table-column prop="detailName" label="é¨ä»¶åç§°" show-overflow-tooltip="" /> <el-table-column prop="length" label="é¿" show-overflow-tooltip="" /> <el-table-column prop="width" label="宽" show-overflow-tooltip="" /> <el-table-column prop="thk" label="å" show-overflow-tooltip="" /> <el-table-column prop="matgrid" label="é¨ä»¶çº¹ç" show-overflow-tooltip="" /> <el-table-column prop="isEB" label="æ¯å¦å°è¾¹" show-overflow-tooltip="" /> <el-table-column prop="dRNum" label="æå设å¤ç¼å·" show-overflow-tooltip="" /> <el-table-column prop="isPA" label="æ¯å¦ä¼åå è£ " show-overflow-tooltip="" /> <el-table-column prop="materialIndeX" label="é¯åå¾å·" show-overflow-tooltip="" /> <el-table-column prop="packageCode" label="å è£ å·" show-overflow-tooltip="" /> <el-table-column prop="machineXCenter" label="å è£ Xåæ " show-overflow-tooltip="" /> <el-table-column prop="machineYCenter" label="å è£ Yåæ " show-overflow-tooltip="" /> <el-table-column prop="machineZCenter" label="å è£ Zåæ " show-overflow-tooltip="" /> <el-table-column prop="sequence" label="屿°" show-overflow-tooltip="" /> <el-table-column prop="shelf" label="次åº" show-overflow-tooltip="" /> <el-table-column prop="rotation" label="转åè§åº¦" show-overflow-tooltip="" /> <el-table-column prop="info1" label="纸箱é¿" show-overflow-tooltip="" /> <el-table-column prop="info2" label="纸箱宽" show-overflow-tooltip="" /> <el-table-column prop="info3" label="纸箱é«" show-overflow-tooltip="" /> <el-table-column prop="createTime" label="å建æ¶é´" width="130" :formatter="formatDate_T_Time" show-overflow-tooltip="" /> <el-table-column prop="updateTime" label="ä¿®æ¹æ¶é´" width="130" :formatter="formatDate_T_Time" show-overflow-tooltip="" /> <el-table-column prop="createUserName" label="å建人" show-overflow-tooltip="" /> <el-table-column prop="updateUserName" label="ä¿®æ¹äºº" show-overflow-tooltip="" /> <el-table-column label="æä½" width="140" align="center" fixed="right" show-overflow-tooltip="" v-if="auth('mes_BatchOrderUPI_New:update') || auth('mes_BatchOrderUPI_New:delete')"> <template #default="scope"> <el-button icon="ele-Edit" size="small" text="" type="primary" @click="openEditMes_BatchOrderUPI_New(scope.row)" v-auth="'mes_BatchOrderUPI_New:update'"> ç¼è¾ </el-button> <el-button icon="ele-Delete" size="small" text="" type="primary" @click="delMes_BatchOrderUPI_New(scope.row)" v-auth="'mes_BatchOrderUPI_New:delete'"> å é¤ </el-button> </template> </el-table-column> </el-table> <el-pagination v-model:currentPage="tableParamsMes_BatchOrderUPI_New.page" v-model:page-size="tableParamsMes_BatchOrderUPI_New.pageSize" :total="tableParamsMes_BatchOrderUPI_New.total" :page-sizes="[10, 20, 50, 100, 200, 500]" small="" background="" @size-change="handleSizeChangeMes_BatchOrderUPI_New" @current-change="handleCurrentChangeMes_BatchOrderUPI_New" layout="total, sizes, prev, pager, next, jumper" /> <printDialogMes_BatchOrderUPI_New ref="printDialogRefMes_BatchOrderUPI_New" :title="printMes_BatchOrderUPI_NewTitle" @reloadTable="handleQueryMes_BatchOrderUPI_New" /> <editDialogMes_BatchOrderUPI_New ref="editDialogRefMes_BatchOrderUPI_New" :title="editMes_BatchOrderUPI_NewTitle" @reloadTable="handleQueryMes_BatchOrderUPI_New" /> <importExcelDialog ref="importExcelDialogRefMes_BatchOrderUPI_New" :title="importExcelTitleMes_BatchOrderUPI_New" @parentUploadFun="handleImportExcelMes_BatchOrderUPI_New" @parentDownFun="handleDownExcelMes_BatchOrderUPI_New" /> </el-card> </div> </template> <script lang="ts" setup="" name="mes_BatchOrderUPI_New"> import { ref,onMounted } from "vue"; import { ElMessageBox, ElMessage } from "element-plus"; import { auth } from '/@/utils/authFunction'; import { getDictDataItem as di, getDictDataList as dl } from '/@/utils/dict-utils'; import { formatDate,formatDate_T_Date,formatDate_T_Time,defaultTimeRange } from '/@/utils/formatTime'; import importExcelDialog from '/@/components/importExcel/index.vue' //å¼å ¥å¯¼å ¥ç»ä»¶ import { exportPageExcel } from '/@/utils/exportPageExcel' //å¼å ¥å¯¼åºæ¹æ³ import printDialogMes_BatchOrderUPI_New from '/@/views/system/print/component/hiprint/preview.vue' import editDialogMes_BatchOrderUPI_New from '/@/views/main/WmsOrder/mes_BatchOrderUPI_New/component/editDialog.vue' import { pageMes_BatchOrderUPI_New, deleteMes_BatchOrderUPI_New,importExcelMes_BatchOrderUPI_New,downloadExcelTemplateMes_BatchOrderUPI_New } from '/@/api/main/WmsOrder/mes_BatchOrderUPI_New'; import { getAPI } from '/@/utils/axios-utils'; import { SysEnumApi } from '/@/api-services/api'; import commonFunction from '/@/utils/commonFunction'; const getEnumAreaCodeData_Index = ref<any>([]); const getEnumUpiStatusData_Index = ref<any>([]); const { getEnumDesc } = commonFunction(); /***************************************************[æ¹æ¬¡æ°æ®æä½]å¼å§***************************************************/ const showAdvanceQueryUIMes_BatchOrderUPI_New = ref(false); const tableRefMes_BatchOrderUPI_New = ref(null); const printDialogRefMes_BatchOrderUPI_New = ref(); const editDialogRefMes_BatchOrderUPI_New = ref(); const loadingMes_BatchOrderUPI_New = ref(false); const disabled_btnMes_BatchOrderUPI_New = ref(false); const tableDataMes_BatchOrderUPI_New = ref<any>([]); const queryParamsMes_BatchOrderUPI_New = ref<any>({}); const tableParamsMes_BatchOrderUPI_New = ref({ page: 1, pageSize: 10, total: 0, }); const printMes_BatchOrderUPI_NewTitle = ref(""); const editMes_BatchOrderUPI_NewTitle = ref(""); // æ¹åé«çº§æ¥è¯¢çæ§ä»¶æ¾ç¤ºç¶æ const changeAdvanceQueryUIMes_BatchOrderUPI_New = () => { showAdvanceQueryUIMes_BatchOrderUPI_New.value = !showAdvanceQueryUIMes_BatchOrderUPI_New.value; } // æ¥è¯¢æ¹æ¬¡æ°æ® const handleQueryMes_BatchOrderUPI_New = async () => { loadingMes_BatchOrderUPI_New.value = true; disabled_btnMes_BatchOrderUPI_New.value = true; var res = await pageMes_BatchOrderUPI_New(Object.assign(queryParamsMes_BatchOrderUPI_New.value, tableParamsMes_BatchOrderUPI_New.value)); if(res.data.type=="success"){ tableDataMes_BatchOrderUPI_New.value = res.data.result?.items ?? []; tableParamsMes_BatchOrderUPI_New.value.total = res.data.result?.total; } loadingMes_BatchOrderUPI_New.value = false; disabled_btnMes_BatchOrderUPI_New.value = false; }; // éç½®æ¹æ¬¡æ°æ®æ¥è¯¢ const resetMes_BatchOrderUPI_New = async () => { queryParamsMes_BatchOrderUPI_New.value = {} }; // æ¹æ¬¡æ°æ®åæåº const sortChangeMes_BatchOrderUPI_New = async (column: any) => { queryParamsMes_BatchOrderUPI_New.value.field = column.prop; queryParamsMes_BatchOrderUPI_New.value.order = column.order; await handleQueryMes_BatchOrderUPI_New(); }; // æå¼æ°å¢æ¹æ¬¡æ°æ®é¡µé¢ const openAddMes_BatchOrderUPI_New = () => { editMes_BatchOrderUPI_NewTitle.value = 'æ·»å æ¹æ¬¡æ°æ®'; editDialogRefMes_BatchOrderUPI_New.value.openDialog(1,{}); }; // æå¼æå°æ¹æ¬¡æ°æ®é¡µé¢ const openPrintMes_BatchOrderUPI_New = async (row: any) => { printMes_BatchOrderUPI_NewTitle.value = 'æå°æ¹æ¬¡æ°æ®'; } // æå¼ç¼è¾æ¹æ¬¡æ°æ®é¡µé¢ const openEditMes_BatchOrderUPI_New = (row: any) => { editMes_BatchOrderUPI_NewTitle.value = 'ç¼è¾æ¹æ¬¡æ°æ®'; editDialogRefMes_BatchOrderUPI_New.value.openDialog(2,row); }; // å 餿¹æ¬¡æ°æ® const delMes_BatchOrderUPI_New = (row: any) => { ElMessageBox.confirm(`ç¡®å®è¦å é¤å?`, "æç¤º", { confirmButtonText: "ç¡®å®", cancelButtonText: "åæ¶", type: "warning", }) .then(async () => { loadingMes_BatchOrderUPI_New.value = true; var ret = await deleteMes_BatchOrderUPI_New(row); if(ret.data.type=="success"){ ElMessage.success("å 餿å"); } loadingMes_BatchOrderUPI_New.value = false; handleQueryMes_BatchOrderUPI_New(); }) .catch(() => {}); }; // æ¹åæ¹æ¬¡æ°æ®é¡µé¢å®¹é const handleSizeChangeMes_BatchOrderUPI_New = (val: number) => { tableParamsMes_BatchOrderUPI_New.value.pageSize = val; handleQueryMes_BatchOrderUPI_New(); }; // æ¹åæ¹æ¬¡æ°æ®é¡µç åºå· const handleCurrentChangeMes_BatchOrderUPI_New = (val: number) => { tableParamsMes_BatchOrderUPI_New.value.page = val; handleQueryMes_BatchOrderUPI_New(); }; /***************************************************[æ¹æ¬¡æ°æ®æä½]ç»æ***************************************************/ /***************************************************[æ¹æ¬¡æ°æ®å¯¼å ¥]å¼å§***************************************************/ const importExcelTitleMes_BatchOrderUPI_New = ref(""); const importExcelDialogRefMes_BatchOrderUPI_New = ref(); //æå¼å¯¼å ¥çé¢ const openImportExcelMes_BatchOrderUPI_New = () => { importExcelTitleMes_BatchOrderUPI_New.value = 'å¯¼å ¥æ¹æ¬¡æ°æ®'; importExcelDialogRefMes_BatchOrderUPI_New.value.openDialog({}); }; //å¯¼å ¥æ°æ® const handleImportExcelMes_BatchOrderUPI_New = async (formData:Blob) => { var result = await importExcelMes_BatchOrderUPI_New(formData); importExcelDialogRefMes_BatchOrderUPI_New.value.callBackUploadFun(result.data);//åè°å¯¼å ¥å页é¢çæ¹æ³ if(result.data.type=="success"){ handleQueryMes_BatchOrderUPI_New(); } }; //ä¸è½½å¯¼å ¥æ¨¡æ¿ const handleDownExcelMes_BatchOrderUPI_New = async () => { var result = await downloadExcelTemplateMes_BatchOrderUPI_New(); importExcelDialogRefMes_BatchOrderUPI_New.value.callBackDownFun(result);//åè°å¯¼å ¥å页é¢çæ¹æ³ }; /***************************************************[æ¹æ¬¡æ°æ®å¯¼å ¥]ç»æ***************************************************/ /***************************************************[æ¹æ¬¡æ°æ®å¯¼åº]å¼å§***************************************************/ //å®ä¹å½å页é¢çæ¹æ³ç» const functionMapMes_BatchOrderUPI_New = { getEnumAreaCodeData_Index, getEnumUpiStatusData_Index, formatDate_T_Date, formatDate_T_Time }; //ç¹å»å¯¼åºæé® const handleExportExcelMes_BatchOrderUPI_New = async (formData:Blob) => { loadingMes_BatchOrderUPI_New.value = true; disabled_btnMes_BatchOrderUPI_New.value = true; var new_tableParamsMes_BatchOrderUPI_New=JSON.parse(JSON.stringify(tableParamsMes_BatchOrderUPI_New.value)); new_tableParamsMes_BatchOrderUPI_New.page = 1; new_tableParamsMes_BatchOrderUPI_New.pageSize = 100000; var res = await pageMes_BatchOrderUPI_New(Object.assign(queryParamsMes_BatchOrderUPI_New.value, new_tableParamsMes_BatchOrderUPI_New)); if(res.data.type=="success"){ exportExcelMes_BatchOrderUPI_New(res.data.result?.items ?? []); } loadingMes_BatchOrderUPI_New.value = false; disabled_btnMes_BatchOrderUPI_New.value = false; }; //å¯¼åº const exportExcelMes_BatchOrderUPI_New = async (exportDataList:Array) => { exportPageExcel(exportDataList, tableRefMes_BatchOrderUPI_New,"æ¹æ¬¡æ°æ®",functionMapMes_BatchOrderUPI_New); }; /***************************************************[æ¹æ¬¡æ°æ®å¯¼åº]ç»æ***************************************************/ // æ¹æ¬¡æ°æ®é¡µé¢å è½½æ¶ onMounted(async () => { getEnumAreaCodeData_Index.value = (await getAPI(SysEnumApi).apiSysEnumEnumDataListGet('AreaCodeEnum')).data.result ?? []; getEnumUpiStatusData_Index.value = (await getAPI(SysEnumApi).apiSysEnumEnumDataListGet('UpiStatusEnum')).data.result ?? []; }); handleQueryMes_BatchOrderUPI_New(); </script> <style scoped> :deep(.el-input), :deep(.el-select), :deep(.el-input-number) { width: 100%; } </style> LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/Mes_BatchOrderUPI_New/Dto/Mes_BatchOrderUPI_NewInput.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,393 @@ using Admin.NET.Core; using System.ComponentModel.DataAnnotations; namespace Admin.NET.Application; /// <summary> /// æ¹æ¬¡æ°æ®åºç¡è¾å ¥åæ° /// </summary> public class Mes_BatchOrderUPI_NewBaseInput { /// <summary> /// æå¨åºå /// </summary> public virtual Admin.NET.Application.AreaCodeEnum? AreaCode { get; set; } /// <summary> /// æ¿æç¶æ /// </summary> public virtual Admin.NET.Application.UpiStatusEnum UpiStatus { get; set; } /// <summary> /// æ¹æ¬¡å· /// </summary> public virtual string PlanNo { get; set; } /// <summary> /// 订åå· /// </summary> public virtual string OrderId { get; set; } /// <summary> /// é¨ä»¶æ¡ç /// </summary> public virtual string UPI { get; set; } /// <summary> /// é¨ä»¶åç§° /// </summary> public virtual string DetailName { get; set; } /// <summary> /// é¿ /// </summary> public virtual float Length { get; set; } /// <summary> /// 宽 /// </summary> public virtual float Width { get; set; } /// <summary> /// å /// </summary> public virtual float Thk { get; set; } /// <summary> /// é¨ä»¶çº¹ç /// </summary> public virtual string Matgrid { get; set; } /// <summary> /// æ¯å¦å°è¾¹ /// </summary> public virtual int? IsEB { get; set; } /// <summary> /// æå设å¤ç¼å· /// </summary> public virtual int? DRNum { get; set; } /// <summary> /// æ¯å¦ä¼åå è£ /// </summary> public virtual int? IsPA { get; set; } /// <summary> /// é¯åå¾å· /// </summary> public virtual int? MaterialIndeX { get; set; } /// <summary> /// å è£ å· /// </summary> public virtual string PackageCode { get; set; } /// <summary> /// å è£ Xåæ /// </summary> public virtual float? MachineXCenter { get; set; } /// <summary> /// å è£ Yåæ /// </summary> public virtual float? MachineYCenter { get; set; } /// <summary> /// å è£ Zåæ /// </summary> public virtual float? MachineZCenter { get; set; } /// <summary> /// 屿° /// </summary> public virtual int? Sequence { get; set; } /// <summary> /// æ¬¡åº /// </summary> public virtual int? Shelf { get; set; } /// <summary> /// 转åè§åº¦ /// </summary> public virtual float? Rotation { get; set; } /// <summary> /// çº¸ç®±é¿ /// </summary> public virtual float? Info1 { get; set; } /// <summary> /// 纸箱宽 /// </summary> public virtual float? Info2 { get; set; } /// <summary> /// çº¸ç®±é« /// </summary> public virtual float? Info3 { get; set; } /// <summary> /// å建æ¶é´ /// </summary> public virtual DateTime? CreateTime { get; set; } /// <summary> /// ä¿®æ¹æ¶é´ /// </summary> public virtual DateTime? UpdateTime { get; set; } /// <summary> /// å建人Id /// </summary> public virtual long? CreateUserId { get; set; } /// <summary> /// å建人 /// </summary> public virtual string CreateUserName { get; set; } /// <summary> /// ä¿®æ¹äººId /// </summary> public virtual long? UpdateUserId { get; set; } /// <summary> /// ä¿®æ¹äºº /// </summary> public virtual string UpdateUserName { get; set; } /// <summary> /// 软å é¤ /// </summary> public virtual bool IsDelete { get; set; } } /// <summary> /// æ¹æ¬¡æ°æ®å页æ¥è¯¢è¾å ¥åæ° /// </summary> public class Mes_BatchOrderUPI_NewInput : BasePageInput { /// <summary> /// å ³é®åæ¥è¯¢ /// </summary> public string? SearchKey { get; set; } /// <summary> /// æå¨åºå /// </summary> public Admin.NET.Application.AreaCodeEnum? AreaCode { get; set; } /// <summary> /// æ¿æç¶æ /// </summary> public Admin.NET.Application.UpiStatusEnum? UpiStatus { get; set; } /// <summary> /// æ¹æ¬¡å· /// </summary> public string? PlanNo { get; set; } /// <summary> /// 订åå· /// </summary> public string? OrderId { get; set; } /// <summary> /// é¨ä»¶æ¡ç /// </summary> public string? UPI { get; set; } /// <summary> /// é¨ä»¶åç§° /// </summary> public string? DetailName { get; set; } /// <summary> /// é¿ /// </summary> public float? Length { get; set; } /// <summary> /// 宽 /// </summary> public float? Width { get; set; } /// <summary> /// å /// </summary> public float? Thk { get; set; } /// <summary> /// é¨ä»¶çº¹ç /// </summary> public string? Matgrid { get; set; } /// <summary> /// æ¯å¦å°è¾¹ /// </summary> public int? IsEB { get; set; } /// <summary> /// æå设å¤ç¼å· /// </summary> public int? DRNum { get; set; } /// <summary> /// æ¯å¦ä¼åå è£ /// </summary> public int? IsPA { get; set; } /// <summary> /// é¯åå¾å· /// </summary> public int? MaterialIndeX { get; set; } /// <summary> /// å è£ å· /// </summary> public string? PackageCode { get; set; } /// <summary> /// å è£ Xåæ /// </summary> public float? MachineXCenter { get; set; } /// <summary> /// å è£ Yåæ /// </summary> public float? MachineYCenter { get; set; } /// <summary> /// å è£ Zåæ /// </summary> public float? MachineZCenter { get; set; } /// <summary> /// 屿° /// </summary> public int? Sequence { get; set; } /// <summary> /// æ¬¡åº /// </summary> public int? Shelf { get; set; } /// <summary> /// 转åè§åº¦ /// </summary> public float? Rotation { get; set; } /// <summary> /// çº¸ç®±é¿ /// </summary> public float? Info1 { get; set; } /// <summary> /// 纸箱宽 /// </summary> public float? Info2 { get; set; } /// <summary> /// çº¸ç®±é« /// </summary> public float? Info3 { get; set; } } /// <summary> /// æ¹æ¬¡æ°æ®å¢å è¾å ¥åæ° /// </summary> public class AddMes_BatchOrderUPI_NewInput : Mes_BatchOrderUPI_NewBaseInput { /// <summary> /// æ¿æç¶æ /// </summary> [Required(ErrorMessage = "æ¿æç¶æä¸è½ä¸ºç©º")] public override Admin.NET.Application.UpiStatusEnum UpiStatus { get; set; } /// <summary> /// æ¹æ¬¡å· /// </summary> [Required(ErrorMessage = "æ¹æ¬¡å·ä¸è½ä¸ºç©º")] public override string PlanNo { get; set; } /// <summary> /// 订åå· /// </summary> [Required(ErrorMessage = "订åå·ä¸è½ä¸ºç©º")] public override string OrderId { get; set; } /// <summary> /// é¨ä»¶æ¡ç /// </summary> [Required(ErrorMessage = "é¨ä»¶æ¡ç ä¸è½ä¸ºç©º")] public override string UPI { get; set; } /// <summary> /// é¨ä»¶åç§° /// </summary> [Required(ErrorMessage = "é¨ä»¶åç§°ä¸è½ä¸ºç©º")] public override string DetailName { get; set; } /// <summary> /// é¿ /// </summary> [Required(ErrorMessage = "é¿ä¸è½ä¸ºç©º")] public override float Length { get; set; } /// <summary> /// 宽 /// </summary> [Required(ErrorMessage = "宽ä¸è½ä¸ºç©º")] public override float Width { get; set; } /// <summary> /// å /// </summary> [Required(ErrorMessage = "åä¸è½ä¸ºç©º")] public override float Thk { get; set; } /// <summary> /// å è£ å· /// </summary> [Required(ErrorMessage = "å è£ å·ä¸è½ä¸ºç©º")] public override string PackageCode { get; set; } /// <summary> /// 软å é¤ /// </summary> [Required(ErrorMessage = "软å é¤ä¸è½ä¸ºç©º")] public override bool IsDelete { get; set; } } /// <summary> /// æ¹æ¬¡æ°æ®å é¤è¾å ¥åæ° /// </summary> public class DeleteMes_BatchOrderUPI_NewInput : BaseIdInput { } /// <summary> /// æ¹æ¬¡æ°æ®æ´æ°è¾å ¥åæ° /// </summary> public class UpdateMes_BatchOrderUPI_NewInput : AddMes_BatchOrderUPI_NewInput { /// <summary> /// 主é®Id /// </summary> [Required(ErrorMessage = "主é®Idä¸è½ä¸ºç©º")] public long Id { get; set; } } /// <summary> /// æ¹æ¬¡æ°æ®ä¸»é®æ¥è¯¢è¾å ¥åæ° /// </summary> public class QueryByIdMes_BatchOrderUPI_NewInput : DeleteMes_BatchOrderUPI_NewInput { } LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/Mes_BatchOrderUPI_New/Dto/Mes_BatchOrderUPI_NewOutput.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,170 @@ namespace Admin.NET.Application; /// <summary> /// æ¹æ¬¡æ°æ®è¾åºåæ° /// </summary> public class Mes_BatchOrderUPI_NewOutput { /// <summary> /// 主é®Id /// </summary> public long? Id { get; set; } /// <summary> /// æå¨åºå /// </summary> public Admin.NET.Application.AreaCodeEnum? AreaCode { get; set; } /// <summary> /// æ¿æç¶æ /// </summary> public Admin.NET.Application.UpiStatusEnum UpiStatus { get; set; } /// <summary> /// æ¹æ¬¡å· /// </summary> public string PlanNo { get; set; } /// <summary> /// 订åå· /// </summary> public string OrderId { get; set; } /// <summary> /// é¨ä»¶æ¡ç /// </summary> public string UPI { get; set; } /// <summary> /// é¨ä»¶åç§° /// </summary> public string DetailName { get; set; } /// <summary> /// é¿ /// </summary> public float Length { get; set; } /// <summary> /// 宽 /// </summary> public float Width { get; set; } /// <summary> /// å /// </summary> public float Thk { get; set; } /// <summary> /// é¨ä»¶çº¹ç /// </summary> public string Matgrid { get; set; } /// <summary> /// æ¯å¦å°è¾¹ /// </summary> public int? IsEB { get; set; } /// <summary> /// æå设å¤ç¼å· /// </summary> public int? DRNum { get; set; } /// <summary> /// æ¯å¦ä¼åå è£ /// </summary> public int? IsPA { get; set; } /// <summary> /// é¯åå¾å· /// </summary> public int? MaterialIndeX { get; set; } /// <summary> /// å è£ å· /// </summary> public string PackageCode { get; set; } /// <summary> /// å è£ Xåæ /// </summary> public float? MachineXCenter { get; set; } /// <summary> /// å è£ Yåæ /// </summary> public float? MachineYCenter { get; set; } /// <summary> /// å è£ Zåæ /// </summary> public float? MachineZCenter { get; set; } /// <summary> /// 屿° /// </summary> public int? Sequence { get; set; } /// <summary> /// æ¬¡åº /// </summary> public int? Shelf { get; set; } /// <summary> /// 转åè§åº¦ /// </summary> public float? Rotation { get; set; } /// <summary> /// çº¸ç®±é¿ /// </summary> public float? Info1 { get; set; } /// <summary> /// 纸箱宽 /// </summary> public float? Info2 { get; set; } /// <summary> /// çº¸ç®±é« /// </summary> public float? Info3 { get; set; } /// <summary> /// å建æ¶é´ /// </summary> public DateTime? CreateTime { get; set; } /// <summary> /// ä¿®æ¹æ¶é´ /// </summary> public DateTime? UpdateTime { get; set; } /// <summary> /// å建人Id /// </summary> public long? CreateUserId { get; set; } /// <summary> /// å建人 /// </summary> public string CreateUserName { get; set; } /// <summary> /// ä¿®æ¹äººId /// </summary> public long? UpdateUserId { get; set; } /// <summary> /// ä¿®æ¹äºº /// </summary> public string UpdateUserName { get; set; } /// <summary> /// 软å é¤ /// </summary> public bool IsDelete { get; set; } } LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/Mes_BatchOrderUPI_New/Mes_BatchOrderUPI_NewService.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,561 @@ using Admin.NET.Core.Service; using Admin.NET.Application.Entity; using Microsoft.AspNetCore.Http; using System.Data; using System.Web; using System.Text; namespace Admin.NET.Application; /// <summary> /// æ¹æ¬¡æ°æ®æå¡ /// </summary> [ApiDescriptionSettings(ApplicationConst.WmsOrderGroupName, Order = 100)] public class Mes_BatchOrderUPI_NewService : IDynamicApiController, ITransient { private readonly SqlSugarRepository<Mes_BatchOrderUPI_New> _rep; public Mes_BatchOrderUPI_NewService(SqlSugarRepository<Mes_BatchOrderUPI_New> rep) { _rep = rep; } /// <summary> /// å页æ¥è¯¢æ¹æ¬¡æ°æ® /// </summary> /// <param name="input"></param> /// <returns></returns> [HttpPost] [ApiDescriptionSettings(Name = "Page")] [Description("Mes_BatchOrderUPI_New/Page")] public async Task<SqlSugarPagedList<Mes_BatchOrderUPI_NewOutput>> Page(Mes_BatchOrderUPI_NewInput input) { var query = CommonPageFilter(input); return await query.OrderBuilder(input, "", "Id").ToPagedListAsync(input.Page, input.PageSize); } /// <summary> /// ä¸å页æ¥è¯¢æ¹æ¬¡æ°æ® /// </summary> /// <param name="input"></param> /// <returns></returns> [HttpGet] [ApiDescriptionSettings(Name = "List")] [Description("Mes_BatchOrderUPI_New/List")] public async Task<List<Mes_BatchOrderUPI_NewOutput>> List([FromQuery] Mes_BatchOrderUPI_NewInput input) { var query = CommonPageFilter(input); return await query.OrderBuilder(input, "", "Id").Select<Mes_BatchOrderUPI_NewOutput>().ToListAsync(); } /// <summary> /// å¢å æ¹æ¬¡æ°æ® /// </summary> /// <param name="input"></param> /// <returns></returns> [HttpPost] [ApiDescriptionSettings(Name = "Add")] [Description("Mes_BatchOrderUPI_New/Add")] public async Task<long> Add(AddMes_BatchOrderUPI_NewInput input) { var entity = input.Adapt<Mes_BatchOrderUPI_New>(); //é夿§éªè¯ await CheckExist(entity); await _rep.InsertAsync(entity); return entity.Id; } /// <summary> /// å 餿¹æ¬¡æ°æ® /// </summary> /// <param name="input"></param> /// <returns></returns> [HttpPost] [ApiDescriptionSettings(Name = "Delete")] [Description("Mes_BatchOrderUPI_New/Delete")] public async Task Delete(DeleteMes_BatchOrderUPI_NewInput input) { var entity = await _rep.GetFirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002); //await _rep.FakeDeleteAsync(entity); //åå é¤ await _rep.DeleteAsync(entity); //çå é¤ } /// <summary> /// æ´æ°æ¹æ¬¡æ°æ® /// </summary> /// <param name="input"></param> /// <returns></returns> [HttpPost] [ApiDescriptionSettings(Name = "Update")] [Description("Mes_BatchOrderUPI_New/Update")] public async Task Update(UpdateMes_BatchOrderUPI_NewInput input) { var entity = input.Adapt<Mes_BatchOrderUPI_New>(); //é夿§éªè¯ await CheckExist(entity, true); await _rep.AsUpdateable(entity).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync(); } /// <summary> /// è·åæ¹æ¬¡æ°æ® /// </summary> /// <param name="input"></param> /// <returns></returns> [HttpGet] [ApiDescriptionSettings(Name = "Detail")] [Description("Mes_BatchOrderUPI_New/Detail")] public async Task<Mes_BatchOrderUPI_New> Detail([FromQuery] QueryByIdMes_BatchOrderUPI_NewInput input) { return await _rep.GetFirstAsync(u => u.Id == input.Id); } #region å¯¼å ¥ /// <summary> /// Excel模æ¿å¯¼å ¥æ¹æ¬¡æ°æ®åè½ /// </summary> /// <param name="file">Excelæ¨¡æ¿æä»¶</param> /// <returns>å¯¼å ¥çè®°å½æ°</returns> [HttpPost] [ApiDescriptionSettings(Name = "ImportExcel")] [Description("Mes_BatchOrderUPI_New/ImportExcel")] public async Task<int> ImportExcelAsync(IFormFile file) { int _HeadStartLine = 2;//第1è¡æ¯è¯´æ,第2è¡æ¯åå int _DataStartLine = 3;//第3è¡å¼å§æ¯æ°æ® DataTable importDataTable = ExcelUtil.ImportExcelToDataTable(file, _HeadStartLine, _DataStartLine); var addList = await CommonImport(importDataTable, _DataStartLine); await _rep.InsertRangeAsync(addList); return addList.Count; } /// <summary> /// DataTable转æ¢å®ä½å¯¹è±¡å表 /// </summary> /// <param name="dataTable"></param> /// <param name="dataStartLine">模çååå¼å§è¡</param> /// <returns></returns> private async Task<List<Mes_BatchOrderUPI_New>> CommonImport(DataTable dataTable, int dataStartLine) { var details = new List<Mes_BatchOrderUPI_New>(); int index = dataStartLine;//模çååå¼å§è¡ foreach (System.Data.DataRow row in dataTable.Rows) { index++; //å¯¼å ¥æ¨¡çå®å¶å代ç ï¼æ¿æ¢æ¨¡ç使ç¨ï¼ var addItem = new Mes_BatchOrderUPI_New(); #region å®ä¹åé var _AreaCode = "";//æå¨åºå var _UpiStatus = "";//æ¿æç¶æ var _PlanNo = "";//æ¹æ¬¡å· var _OrderId = "";//订åå· var _UPI = "";//é¨ä»¶æ¡ç var _DetailName = "";//é¨ä»¶åç§° var _Length = "";//é¿ var _Width = "";//宽 var _Thk = "";//å var _Matgrid = "";//é¨ä»¶çº¹ç var _IsEB = "";//æ¯å¦å°è¾¹ var _DRNum = "";//æå设å¤ç¼å· var _IsPA = "";//æ¯å¦ä¼åå è£ var _MaterialIndeX = "";//é¯åå¾å· var _PackageCode = "";//å è£ å· var _MachineXCenter = "";//å è£ Xåæ var _MachineYCenter = "";//å è£ Yåæ var _MachineZCenter = "";//å è£ Zåæ var _Sequence = "";//屿° var _Shelf = "";//æ¬¡åº var _Rotation = "";//转åè§åº¦ var _Info1 = "";//çº¸ç®±é¿ var _Info2 = "";//纸箱宽 var _Info3 = "";//çº¸ç®±é« #endregion #region åå¼ _AreaCode = row["æå¨åºå"]?.ToString(); _UpiStatus = row["æ¿æç¶æ"]?.ToString(); _PlanNo = row["æ¹æ¬¡å·"]?.ToString(); _OrderId = row["订åå·"]?.ToString(); _UPI = row["é¨ä»¶æ¡ç "]?.ToString(); _DetailName = row["é¨ä»¶åç§°"]?.ToString(); _Length = row["é¿"]?.ToString(); _Width = row["宽"]?.ToString(); _Thk = row["å"]?.ToString(); _Matgrid = row["é¨ä»¶çº¹ç"]?.ToString(); _IsEB = row["æ¯å¦å°è¾¹"]?.ToString(); _DRNum = row["æå设å¤ç¼å·"]?.ToString(); _IsPA = row["æ¯å¦ä¼åå è£ "]?.ToString(); _MaterialIndeX = row["é¯åå¾å·"]?.ToString(); _PackageCode = row["å è£ å·"]?.ToString(); _MachineXCenter = row["å è£ Xåæ "]?.ToString(); _MachineYCenter = row["å è£ Yåæ "]?.ToString(); _MachineZCenter = row["å è£ Zåæ "]?.ToString(); _Sequence = row["屿°"]?.ToString(); _Shelf = row["次åº"]?.ToString(); _Rotation = row["转åè§åº¦"]?.ToString(); _Info1 = row["纸箱é¿"]?.ToString(); _Info2 = row["纸箱宽"]?.ToString(); _Info3 = row["纸箱é«"]?.ToString(); #endregion #region éªè¯ if (!string.IsNullOrEmpty(_AreaCode)) { Admin.NET.Application.AreaCodeEnum enumAreaCode = default(Admin.NET.Application.AreaCodeEnum); if (!Enum.TryParse<Admin.NET.Application.AreaCodeEnum>(_AreaCode, out enumAreaCode) && !string.IsNullOrEmpty(_AreaCode)) { throw Oops.Oh($"第{index}è¡[æå¨åºå]{_AreaCode}å¼ä¸æ£ç¡®ï¼"); } else { addItem.AreaCode = enumAreaCode; } } if (string.IsNullOrEmpty(_UpiStatus)) { throw Oops.Oh($"第{index}è¡[æ¿æç¶æ]{_UpiStatus}ä¸è½ä¸ºç©ºï¼"); } if (!string.IsNullOrEmpty(_UpiStatus)) { Admin.NET.Application.UpiStatusEnum enumUpiStatus = default(Admin.NET.Application.UpiStatusEnum); if (!Enum.TryParse<Admin.NET.Application.UpiStatusEnum>(_UpiStatus, out enumUpiStatus) && !string.IsNullOrEmpty(_UpiStatus)) { throw Oops.Oh($"第{index}è¡[æ¿æç¶æ]{_UpiStatus}å¼ä¸æ£ç¡®ï¼"); } else { addItem.UpiStatus = enumUpiStatus; } } if (string.IsNullOrEmpty(_PlanNo)) { throw Oops.Oh($"第{index}è¡[æ¹æ¬¡å·]{_PlanNo}ä¸è½ä¸ºç©ºï¼"); } if (!string.IsNullOrEmpty(_PlanNo)) { addItem.PlanNo = (string)(_PlanNo.Trim()); } if (string.IsNullOrEmpty(_OrderId)) { throw Oops.Oh($"第{index}è¡[订åå·]{_OrderId}ä¸è½ä¸ºç©ºï¼"); } if (!string.IsNullOrEmpty(_OrderId)) { addItem.OrderId = (string)(_OrderId.Trim()); } if (string.IsNullOrEmpty(_UPI)) { throw Oops.Oh($"第{index}è¡[é¨ä»¶æ¡ç ]{_UPI}ä¸è½ä¸ºç©ºï¼"); } if (!string.IsNullOrEmpty(_UPI)) { addItem.UPI = (string)(_UPI.Trim()); } if (string.IsNullOrEmpty(_DetailName)) { throw Oops.Oh($"第{index}è¡[é¨ä»¶åç§°]{_DetailName}ä¸è½ä¸ºç©ºï¼"); } if (!string.IsNullOrEmpty(_DetailName)) { addItem.DetailName = (string)(_DetailName.Trim()); } if (string.IsNullOrEmpty(_Length)) { throw Oops.Oh($"第{index}è¡[é¿]{_Length}ä¸è½ä¸ºç©ºï¼"); } //if(!string.IsNullOrEmpty(_Length)) //{ // addItem.Length = (float)(_Length.Trim()); // } //if (string.IsNullOrEmpty(_Width)) //{ // throw Oops.Oh($"第{index}è¡[宽]{_Width}ä¸è½ä¸ºç©ºï¼"); //} //if(!string.IsNullOrEmpty(_Width)) //{ // addItem.Width = (float)(_Width.Trim()); // } //if (string.IsNullOrEmpty(_Thk)) //{ // throw Oops.Oh($"第{index}è¡[å]{_Thk}ä¸è½ä¸ºç©ºï¼"); //} //if(!string.IsNullOrEmpty(_Thk)) //{ // addItem.Thk = (float)(_Thk.Trim()); // } if (!string.IsNullOrEmpty(_Matgrid)) { addItem.Matgrid = (string)(_Matgrid.Trim()); } if (!string.IsNullOrEmpty(_IsEB)) { if (!int.TryParse(_IsEB, out int outIsEB) && !string.IsNullOrEmpty(_IsEB)) { throw Oops.Oh($"第{index}è¡[æ¯å¦å°è¾¹]{_IsEB}å¼ä¸æ£ç¡®ï¼"); } if (outIsEB <= 0 && !string.IsNullOrEmpty(_IsEB)) { throw Oops.Oh($"第{index}è¡[æ¯å¦å°è¾¹]{_IsEB}å¼ä¸è½å°äºçäº0ï¼"); } else { addItem.IsEB = outIsEB; } } if (!string.IsNullOrEmpty(_DRNum)) { if (!int.TryParse(_DRNum, out int outDRNum) && !string.IsNullOrEmpty(_DRNum)) { throw Oops.Oh($"第{index}è¡[æå设å¤ç¼å·]{_DRNum}å¼ä¸æ£ç¡®ï¼"); } if (outDRNum <= 0 && !string.IsNullOrEmpty(_DRNum)) { throw Oops.Oh($"第{index}è¡[æå设å¤ç¼å·]{_DRNum}å¼ä¸è½å°äºçäº0ï¼"); } else { addItem.DRNum = outDRNum; } } if (!string.IsNullOrEmpty(_IsPA)) { if (!int.TryParse(_IsPA, out int outIsPA) && !string.IsNullOrEmpty(_IsPA)) { throw Oops.Oh($"第{index}è¡[æ¯å¦ä¼åå è£ ]{_IsPA}å¼ä¸æ£ç¡®ï¼"); } if (outIsPA <= 0 && !string.IsNullOrEmpty(_IsPA)) { throw Oops.Oh($"第{index}è¡[æ¯å¦ä¼åå è£ ]{_IsPA}å¼ä¸è½å°äºçäº0ï¼"); } else { addItem.IsPA = outIsPA; } } if (!string.IsNullOrEmpty(_MaterialIndeX)) { if (!int.TryParse(_MaterialIndeX, out int outMaterialIndeX) && !string.IsNullOrEmpty(_MaterialIndeX)) { throw Oops.Oh($"第{index}è¡[é¯åå¾å·]{_MaterialIndeX}å¼ä¸æ£ç¡®ï¼"); } if (outMaterialIndeX <= 0 && !string.IsNullOrEmpty(_MaterialIndeX)) { throw Oops.Oh($"第{index}è¡[é¯åå¾å·]{_MaterialIndeX}å¼ä¸è½å°äºçäº0ï¼"); } else { addItem.MaterialIndeX = outMaterialIndeX; } } if (string.IsNullOrEmpty(_PackageCode)) { throw Oops.Oh($"第{index}è¡[å è£ å·]{_PackageCode}ä¸è½ä¸ºç©ºï¼"); } if (!string.IsNullOrEmpty(_PackageCode)) { addItem.PackageCode = (string)(_PackageCode.Trim()); } //if(!string.IsNullOrEmpty(_MachineXCenter)) //{ // addItem.MachineXCenter = (float)(_MachineXCenter.Trim()); // } //if(!string.IsNullOrEmpty(_MachineYCenter)) //{ // addItem.MachineYCenter = (float)(_MachineYCenter.Trim()); // } //if(!string.IsNullOrEmpty(_MachineZCenter)) //{ // addItem.MachineZCenter = (float)(_MachineZCenter.Trim()); // } if (!string.IsNullOrEmpty(_Sequence)) { if (!int.TryParse(_Sequence, out int outSequence) && !string.IsNullOrEmpty(_Sequence)) { throw Oops.Oh($"第{index}è¡[屿°]{_Sequence}å¼ä¸æ£ç¡®ï¼"); } if (outSequence <= 0 && !string.IsNullOrEmpty(_Sequence)) { throw Oops.Oh($"第{index}è¡[屿°]{_Sequence}å¼ä¸è½å°äºçäº0ï¼"); } else { addItem.Sequence = outSequence; } } if (!string.IsNullOrEmpty(_Shelf)) { if (!int.TryParse(_Shelf, out int outShelf) && !string.IsNullOrEmpty(_Shelf)) { throw Oops.Oh($"第{index}è¡[次åº]{_Shelf}å¼ä¸æ£ç¡®ï¼"); } if (outShelf <= 0 && !string.IsNullOrEmpty(_Shelf)) { throw Oops.Oh($"第{index}è¡[次åº]{_Shelf}å¼ä¸è½å°äºçäº0ï¼"); } else { addItem.Shelf = outShelf; } } //if(!string.IsNullOrEmpty(_Rotation)) //{ // addItem.Rotation = (float)(_Rotation.Trim()); // } //if(!string.IsNullOrEmpty(_Info1)) //{ // addItem.Info1 = (float)(_Info1.Trim()); // } //if(!string.IsNullOrEmpty(_Info2)) //{ // addItem.Info2 = (float)(_Info2.Trim()); // } //if(!string.IsNullOrEmpty(_Info3)) //{ // addItem.Info3 = (float)(_Info3.Trim()); // } #endregion details.Add(addItem); } //éªé await CheckExisitForImport(details); return details; } /// <summary> /// æ ¹æ®çæ¬ä¸è½½æ¹æ¬¡æ°æ®çExcelå¯¼å ¥æ¨¡æ¿ /// </summary> /// <returns>ä¸è½½çæ¨¡æ¿æä»¶</returns> [HttpGet] [ApiDescriptionSettings(Name = "DownloadExcelTemplate")] [Description("Mes_BatchOrderUPI_New/DownloadExcelTemplate")] public IActionResult DownloadExcelTemplate() { string _path = TemplateConst.EXCEL_TEMPLATEFILE_å¯¼å ¥æ¨¡çè·¯å¾ + $"\\æ¹æ¬¡æ°æ®{TemplateConst.EXCEL_TEMPLATEFILE_å¯¼å ¥æ¨¡çåç§°åç¼}.xlsx"; var fileName = HttpUtility.UrlEncode($"å¯¼å ¥æ¨¡æ¿(æ¹æ¬¡æ°æ®).xlsx", Encoding.GetEncoding("UTF-8")); return new FileStreamResult(new FileStream(_path, FileMode.Open), "application/octet-stream") { FileDownloadName = fileName }; } #endregion #region ç§ææ¹æ³ /// <summary> /// å ¬å ±æ¥è¯¢æ¹æ¬¡æ°æ®æ¡ä»¶ /// </summary> /// <param name="input"></param> /// <returns></returns> private ISugarQueryable<Mes_BatchOrderUPI_NewOutput> CommonPageFilter(Mes_BatchOrderUPI_NewInput input) { var query = _rep.AsQueryable() .WhereIF(!string.IsNullOrWhiteSpace(input.SearchKey), u => u.PlanNo.Contains(input.SearchKey.Trim()) || u.OrderId.Contains(input.SearchKey.Trim()) || u.UPI.Contains(input.SearchKey.Trim()) || u.DetailName.Contains(input.SearchKey.Trim()) || u.Matgrid.Contains(input.SearchKey.Trim()) || u.PackageCode.Contains(input.SearchKey.Trim()) || u.CreateUserName.Contains(input.SearchKey.Trim()) || u.UpdateUserName.Contains(input.SearchKey.Trim()) ) .WhereIF(input.AreaCode.HasValue, u => u.AreaCode == input.AreaCode) .WhereIF(input.UpiStatus.HasValue, u => u.UpiStatus == input.UpiStatus) .WhereIF(!string.IsNullOrWhiteSpace(input.PlanNo), u => u.PlanNo.Contains(input.PlanNo.Trim())) .WhereIF(!string.IsNullOrWhiteSpace(input.OrderId), u => u.OrderId.Contains(input.OrderId.Trim())) .WhereIF(!string.IsNullOrWhiteSpace(input.UPI), u => u.UPI.Contains(input.UPI.Trim())) .WhereIF(!string.IsNullOrWhiteSpace(input.DetailName), u => u.DetailName.Contains(input.DetailName.Trim())) .WhereIF(!string.IsNullOrWhiteSpace(input.Matgrid), u => u.Matgrid.Contains(input.Matgrid.Trim())) .WhereIF(input.IsEB > 0, u => u.IsEB == input.IsEB) .WhereIF(input.DRNum > 0, u => u.DRNum == input.DRNum) .WhereIF(input.IsPA > 0, u => u.IsPA == input.IsPA) .WhereIF(input.MaterialIndeX > 0, u => u.MaterialIndeX == input.MaterialIndeX) .WhereIF(!string.IsNullOrWhiteSpace(input.PackageCode), u => u.PackageCode.Contains(input.PackageCode.Trim())) .WhereIF(input.Sequence > 0, u => u.Sequence == input.Sequence) .WhereIF(input.Shelf > 0, u => u.Shelf == input.Shelf) .Select<Mes_BatchOrderUPI_NewOutput>(); return query; } /// <summary> /// é夿§éªè¯ /// </summary> /// <param name="input">éªè¯å¯¹è±¡</param> /// <param name="isEdit">æ¯å¦æ¯ç¼è¾</param> /// <returns></returns> private async Task CheckExist(Mes_BatchOrderUPI_New input, bool isEdit = false) { //没æé ç½®ç»åæ ¡éªï¼ä¸éè¦éªé //没æé ç½®åç¬æ ¡éªï¼ä¸éè¦éªé } /// <summary> /// æ ¹æ®ç»åæ ¡éªååç¬æ ¡éªéªè¯æ°æ®æ¯å¦å·²åå¨-å¯¼å ¥æ¶éªè¯ /// </summary> /// <param name="inputs"></param> /// <returns></returns> private async Task CheckExisitForImport(List<Mes_BatchOrderUPI_New> inputs) { if (inputs?.Count <= 0) { throw Oops.Oh($"å¯¼å ¥æ°æ®ä¸è½ä¸ºç©º"); } //æ ¹æ®ç»åæ ¡éªéªè¯è¡¨æ ¼ä¸ä¸æ¯å¦å·²åå¨ç¸åæ°æ® //æ ¹æ®åç¬æ ¡éªéªè¯è¡¨æ ¼ä¸ä¸æ¯å¦å·²åå¨ç¸åæ°æ® } #endregion } LA24030_LuLiPackageLine_Wms/Admin.NET.Web.Entry/wwwroot/ExcelTemplateFile/Åú´ÎÊý¾Ýµ¼ÈëÄ£°å.xlsxBinary files differ