From ab113ce9156d8ab54b3a4da9da6b3939875a928f Mon Sep 17 00:00:00 2001
From: zongzhibin <zongzhibin@weben-smart.com>
Date: 周五, 22 11月 2024 13:11:12 +0800
Subject: [PATCH] add
---
LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/mesPushPackageCode/component/editDialog.vue | 171 ++++++++
LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/mesPushPackageCode/index.vue | 289 ++++++++++++++
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Entity/WmsOrder/MesPushPackageCode.cs | 49 ++
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/MesPushPackageCodeService.cs | 331 ++++++++++++++++
LA24030_LuLiPackageLine_Wms/Admin.NET.Core/Service/Auth/SysAuthService.cs | 12
LA24030_LuLiPackageLine_Wms/Admin.NET.Web.Entry/wwwroot/ExcelTemplateFile/推送mes包装号导入模板.xlsx | 0
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/Dto/MesPushPackageCodeOutput.cs | 80 ++++
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/Dto/MesPushPackageCodeInput.cs | 172 ++++++++
LA24030_LuLiPackageLine_Web/src/api/main/WmsOrder/mesPushPackageCode.ts | 78 +++
9 files changed, 1,176 insertions(+), 6 deletions(-)
diff --git a/LA24030_LuLiPackageLine_Web/src/api/main/WmsOrder/mesPushPackageCode.ts b/LA24030_LuLiPackageLine_Web/src/api/main/WmsOrder/mesPushPackageCode.ts
new file mode 100644
index 0000000..7798b9b
--- /dev/null
+++ b/LA24030_LuLiPackageLine_Web/src/api/main/WmsOrder/mesPushPackageCode.ts
@@ -0,0 +1,78 @@
+锘縤mport request from '/@/utils/request';
+enum Api {
+ AddMesPushPackageCode = '/api/mesPushPackageCode/add',
+ DeleteMesPushPackageCode = '/api/mesPushPackageCode/delete',
+ UpdateMesPushPackageCode = '/api/mesPushPackageCode/update',
+ PageMesPushPackageCode = '/api/mesPushPackageCode/page',
+ ListMesPushPackageCode = '/api/mesPushPackageCode/list',
+ DetailMesPushPackageCode = '/api/mesPushPackageCode/detail',
+ ImportExcelMesPushPackageCode = '/api/mesPushPackageCode/importExcel',
+ DownloadExcelTemplateMesPushPackageCode = '/api/mesPushPackageCode/downloadExcelTemplate',
+}
+
+// 澧炲姞鎺ㄩ�乵es鍖呰鍙�
+export const addMesPushPackageCode = (params?: any) =>
+ request({
+ url: Api.AddMesPushPackageCode,
+ method: 'post',
+ data: params
+ });
+
+// 鍒犻櫎鎺ㄩ�乵es鍖呰鍙�
+export const deleteMesPushPackageCode = (params?: any) =>
+ request({
+ url: Api.DeleteMesPushPackageCode,
+ method: 'post',
+ data: params
+ });
+
+// 缂栬緫鎺ㄩ�乵es鍖呰鍙�
+export const updateMesPushPackageCode = (params?: any) =>
+ request({
+ url: Api.UpdateMesPushPackageCode,
+ method: 'post',
+ data: params
+ });
+
+// 瀵煎叆鎺ㄩ�乵es鍖呰鍙�
+export const importExcelMesPushPackageCode = (params?: any) =>
+ request({
+ url: Api.ImportExcelMesPushPackageCode,
+ method: 'post',
+ data: params
+ });
+
+// 涓嬭浇瀵煎叆鎺ㄩ�乵es鍖呰鍙锋ā鏉�
+export const downloadExcelTemplateMesPushPackageCode = (params?: any) =>
+ request({
+ url: Api.DownloadExcelTemplateMesPushPackageCode,
+ method: 'get',
+ data: params,
+ responseType: 'blob'
+ });
+
+
+// 鍒嗛〉鏌ヨ鎺ㄩ�乵es鍖呰鍙�
+export const pageMesPushPackageCode = (params?: any) =>
+ request({
+ url: Api.PageMesPushPackageCode,
+ method: 'post',
+ data: params
+ });
+
+// 涓嶅垎椤垫煡璇㈡帹閫乵es鍖呰鍙�
+export const listMesPushPackageCode = (params?: any) =>
+ request({
+ url: Api.ListMesPushPackageCode,
+ method: 'get',
+ data: params
+ });
+
+// 璇︽儏鎺ㄩ�乵es鍖呰鍙�
+export const detailMesPushPackageCode = (id: any) =>
+ request({
+ url: Api.DetailMesPushPackageCode,
+ method: 'get',
+ data: { id }
+ });
+
diff --git a/LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/mesPushPackageCode/component/editDialog.vue b/LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/mesPushPackageCode/component/editDialog.vue
new file mode 100644
index 0000000..d8d96f0
--- /dev/null
+++ b/LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/mesPushPackageCode/component/editDialog.vue
@@ -0,0 +1,171 @@
+锘�<template>
+ <div class="mesPushPackageCode-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="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="鎺ㄩ�佺姸鎬�" prop="pushStatus">
+ <el-input-number v-model="ruleForm.pushStatus" 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="pushNum">
+ <el-input-number v-model="ruleForm.pushNum" 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="apiMessage">
+ <el-input v-model="ruleForm.apiMessage" placeholder="璇疯緭鍏ユ帴鍙h繑鍥炲弬鏁�" 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="createOrgName">
+ <el-input v-model="ruleForm.createOrgName" placeholder="璇疯緭鍏ュ垱寤鸿�呴儴闂ㄥ悕绉�" maxlength="64" 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 { addMesPushPackageCode, updateMesPushPackageCode, detailMesPushPackageCode } from "/@/api/main/WmsOrder/mesPushPackageCode";
+
+ //鐖剁骇浼犻�掓潵鐨勫弬鏁�
+ 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>({
+ packageCode: [{required: true, message: '璇疯緭鍏ュ寘瑁呭彿锛�', trigger: 'blur',},],
+ pushStatus: [{required: true, message: '璇疯緭鍏ユ帹閫佺姸鎬侊紒', trigger: 'blur',},],
+ pushNum: [{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 detailMesPushPackageCode(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 addMesPushPackageCode(values);
+ } else {
+ title='缂栬緫';
+ ret = await updateMesPushPackageCode(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 () => {
+ });
+
+ //灏嗗睘鎬ф垨鑰呭嚱鏁版毚闇茬粰鐖剁粍浠�
+ defineExpose({ openDialog });
+</script>
+
+
+
+
diff --git a/LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/mesPushPackageCode/index.vue b/LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/mesPushPackageCode/index.vue
new file mode 100644
index 0000000..17c6b20
--- /dev/null
+++ b/LA24030_LuLiPackageLine_Web/src/views/main/WmsOrder/mesPushPackageCode/index.vue
@@ -0,0 +1,289 @@
+锘�<template>
+ <div class="mesPushPackageCode-container">
+ <el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+ <el-form :model="queryParamsMesPushPackageCode" 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="queryParamsMesPushPackageCode.searchKey" clearable="" placeholder="鍖呰鍙�,鎺ュ彛杩斿洖鍙傛暟,鍒涘缓浜�,淇敼浜�,鍒涘缓鑰呴儴闂ㄥ悕绉�"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMesPushPackageCode">
+ <el-form-item label="鍖呰鍙�">
+ <el-input v-model="queryParamsMesPushPackageCode.packageCode" clearable="" placeholder="璇疯緭鍏ュ寘瑁呭彿"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMesPushPackageCode">
+ <el-form-item label="鎺ㄩ�佺姸鎬�">
+ <el-input-number v-model="queryParamsMesPushPackageCode.pushStatus" clearable="" placeholder="璇疯緭鍏ユ帹閫佺姸鎬�"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMesPushPackageCode">
+ <el-form-item label="鎺ㄩ�佹鏁�">
+ <el-input-number v-model="queryParamsMesPushPackageCode.pushNum" clearable="" placeholder="璇疯緭鍏ユ帹閫佹鏁�"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMesPushPackageCode">
+ <el-form-item label="鎺ュ彛杩斿洖鍙傛暟">
+ <el-input v-model="queryParamsMesPushPackageCode.apiMessage" clearable="" placeholder="璇疯緭鍏ユ帴鍙h繑鍥炲弬鏁�"/>
+
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIMesPushPackageCode">
+ <el-form-item label="鍒涘缓鑰呴儴闂ㄥ悕绉�">
+ <el-input v-model="queryParamsMesPushPackageCode.createOrgName" 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="handleQueryMesPushPackageCode" v-auth="'mesPushPackageCode:page'" :disabled="disabled_btnMesPushPackageCode"> 鏌ヨ </el-button>
+ <el-button icon="ele-Refresh" @click="resetMesPushPackageCode"> 閲嶇疆 </el-button>
+ <el-button icon="ele-ZoomIn" @click="changeAdvanceQueryUIMesPushPackageCode" v-if="!showAdvanceQueryUIMesPushPackageCode" style="margin-left:5px;"> 楂樼骇鏌ヨ </el-button>
+ <el-button icon="ele-ZoomOut" @click="changeAdvanceQueryUIMesPushPackageCode" v-if="showAdvanceQueryUIMesPushPackageCode" style="margin-left:5px;"> 闅愯棌 </el-button>
+ <el-button type="primary" style="margin-left:5px;" icon="ele-Plus" @click="openAddMesPushPackageCode" v-auth="'mesPushPackageCode:add'"> 鏂板 </el-button>
+ <el-button type="primary" style="margin-left:5px;" icon="ele-Upload" @click="openImportExcelMesPushPackageCode" v-auth="'mesPushPackageCode:importExcel'" > 瀵煎叆 </el-button>
+ <el-button type="primary" style="margin-left:5px;" icon="ele-Download" @click="handleExportExcelMesPushPackageCode" v-auth="'mesPushPackageCode: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="tableRefMesPushPackageCode"
+ :data="tableDataMesPushPackageCode"
+ style="width: 100%"
+ v-loading="loadingMesPushPackageCode"
+ tooltip-effect="light"
+ row-key="id"
+ @sort-change="sortChangeMesPushPackageCode"
+ border="">
+ <el-table-column type="index" label="搴忓彿" width="55" align="center"/>
+ <el-table-column prop="packageCode" label="鍖呰鍙�" show-overflow-tooltip="" />
+ <el-table-column prop="pushStatus" label="鎺ㄩ�佺姸鎬�" show-overflow-tooltip="" />
+ <el-table-column prop="pushNum" label="鎺ㄩ�佹鏁�" show-overflow-tooltip="" />
+ <el-table-column prop="apiMessage" 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 prop="createOrgName" label="鍒涘缓鑰呴儴闂ㄥ悕绉�" show-overflow-tooltip="" />
+ <el-table-column label="鎿嶄綔" width="140" align="center" fixed="right" show-overflow-tooltip="" v-if="auth('mesPushPackageCode:update') || auth('mesPushPackageCode:delete')">
+ <template #default="scope">
+ <el-button icon="ele-Edit" size="small" text="" type="primary" @click="openEditMesPushPackageCode(scope.row)" v-auth="'mesPushPackageCode:update'"> 缂栬緫 </el-button>
+ <el-button icon="ele-Delete" size="small" text="" type="primary" @click="delMesPushPackageCode(scope.row)" v-auth="'mesPushPackageCode:delete'"> 鍒犻櫎 </el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <el-pagination
+ v-model:currentPage="tableParamsMesPushPackageCode.page"
+ v-model:page-size="tableParamsMesPushPackageCode.pageSize"
+ :total="tableParamsMesPushPackageCode.total"
+ :page-sizes="[10, 20, 50, 100, 200, 500]"
+ small=""
+ background=""
+ @size-change="handleSizeChangeMesPushPackageCode"
+ @current-change="handleCurrentChangeMesPushPackageCode"
+ layout="total, sizes, prev, pager, next, jumper"
+ />
+ <printDialogMesPushPackageCode
+ ref="printDialogRefMesPushPackageCode"
+ :title="printMesPushPackageCodeTitle"
+ @reloadTable="handleQueryMesPushPackageCode" />
+ <editDialogMesPushPackageCode
+ ref="editDialogRefMesPushPackageCode"
+ :title="editMesPushPackageCodeTitle"
+ @reloadTable="handleQueryMesPushPackageCode"
+ />
+ <importExcelDialog
+ ref="importExcelDialogRefMesPushPackageCode"
+ :title="importExcelTitleMesPushPackageCode"
+ @parentUploadFun="handleImportExcelMesPushPackageCode"
+ @parentDownFun="handleDownExcelMesPushPackageCode"
+ />
+ </el-card>
+ </div>
+</template>
+
+<script lang="ts" setup="" name="mesPushPackageCode">
+ 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 printDialogMesPushPackageCode from '/@/views/system/print/component/hiprint/preview.vue'
+ import editDialogMesPushPackageCode from '/@/views/main/WmsOrder/mesPushPackageCode/component/editDialog.vue'
+ import { pageMesPushPackageCode, deleteMesPushPackageCode,importExcelMesPushPackageCode,downloadExcelTemplateMesPushPackageCode } from '/@/api/main/WmsOrder/mesPushPackageCode';
+
+
+
+ /***************************************************[鎺ㄩ�乵es鍖呰鍙锋搷浣淽寮�濮�***************************************************/
+ const showAdvanceQueryUIMesPushPackageCode = ref(false);
+ const tableRefMesPushPackageCode = ref(null);
+ const printDialogRefMesPushPackageCode = ref();
+ const editDialogRefMesPushPackageCode = ref();
+ const loadingMesPushPackageCode = ref(false);
+ const disabled_btnMesPushPackageCode = ref(false);
+ const tableDataMesPushPackageCode = ref<any>([]);
+ const queryParamsMesPushPackageCode = ref<any>({});
+ const tableParamsMesPushPackageCode = ref({
+ page: 1,
+ pageSize: 10,
+ total: 0,
+ });
+
+ const printMesPushPackageCodeTitle = ref("");
+ const editMesPushPackageCodeTitle = ref("");
+
+ // 鏀瑰彉楂樼骇鏌ヨ鐨勬帶浠舵樉绀虹姸鎬�
+ const changeAdvanceQueryUIMesPushPackageCode = () => {
+ showAdvanceQueryUIMesPushPackageCode.value = !showAdvanceQueryUIMesPushPackageCode.value;
+ }
+
+ // 鏌ヨ鎺ㄩ�乵es鍖呰鍙�
+ const handleQueryMesPushPackageCode = async () => {
+ loadingMesPushPackageCode.value = true;
+ disabled_btnMesPushPackageCode.value = true;
+ var res = await pageMesPushPackageCode(Object.assign(queryParamsMesPushPackageCode.value, tableParamsMesPushPackageCode.value));
+ if(res.data.type=="success"){
+ tableDataMesPushPackageCode.value = res.data.result?.items ?? [];
+ tableParamsMesPushPackageCode.value.total = res.data.result?.total;
+ }
+ loadingMesPushPackageCode.value = false;
+ disabled_btnMesPushPackageCode.value = false;
+ };
+
+ // 閲嶇疆鎺ㄩ�乵es鍖呰鍙锋煡璇�
+ const resetMesPushPackageCode = async () => {
+ queryParamsMesPushPackageCode.value = {}
+ };
+
+ // 鎺ㄩ�乵es鍖呰鍙峰垪鎺掑簭
+ const sortChangeMesPushPackageCode = async (column: any) => {
+ queryParamsMesPushPackageCode.value.field = column.prop;
+ queryParamsMesPushPackageCode.value.order = column.order;
+ await handleQueryMesPushPackageCode();
+ };
+
+ // 鎵撳紑鏂板鎺ㄩ�乵es鍖呰鍙烽〉闈�
+ const openAddMesPushPackageCode = () => {
+ editMesPushPackageCodeTitle.value = '娣诲姞鎺ㄩ�乵es鍖呰鍙�';
+ editDialogRefMesPushPackageCode.value.openDialog(1,{});
+ };
+
+ // 鎵撳紑鎵撳嵃鎺ㄩ�乵es鍖呰鍙烽〉闈�
+ const openPrintMesPushPackageCode = async (row: any) => {
+ printMesPushPackageCodeTitle.value = '鎵撳嵃鎺ㄩ�乵es鍖呰鍙�';
+ }
+
+ // 鎵撳紑缂栬緫鎺ㄩ�乵es鍖呰鍙烽〉闈�
+ const openEditMesPushPackageCode = (row: any) => {
+ editMesPushPackageCodeTitle.value = '缂栬緫鎺ㄩ�乵es鍖呰鍙�';
+ editDialogRefMesPushPackageCode.value.openDialog(2,row);
+ };
+
+ // 鍒犻櫎鎺ㄩ�乵es鍖呰鍙�
+ const delMesPushPackageCode = (row: any) => {
+ ElMessageBox.confirm(`纭畾瑕佸垹闄ゅ悧?`, "鎻愮ず", {
+ confirmButtonText: "纭畾",
+ cancelButtonText: "鍙栨秷",
+ type: "warning",
+ })
+ .then(async () => {
+ loadingMesPushPackageCode.value = true;
+ var ret = await deleteMesPushPackageCode(row);
+ if(ret.data.type=="success"){
+ ElMessage.success("鍒犻櫎鎴愬姛");
+ }
+ loadingMesPushPackageCode.value = false;
+ handleQueryMesPushPackageCode();
+ })
+ .catch(() => {});
+ };
+
+ // 鏀瑰彉鎺ㄩ�乵es鍖呰鍙烽〉闈㈠閲�
+ const handleSizeChangeMesPushPackageCode = (val: number) => {
+ tableParamsMesPushPackageCode.value.pageSize = val;
+ handleQueryMesPushPackageCode();
+ };
+
+ // 鏀瑰彉鎺ㄩ�乵es鍖呰鍙烽〉鐮佸簭鍙�
+ const handleCurrentChangeMesPushPackageCode = (val: number) => {
+ tableParamsMesPushPackageCode.value.page = val;
+ handleQueryMesPushPackageCode();
+ };
+
+/***************************************************[鎺ㄩ�乵es鍖呰鍙锋搷浣淽缁撴潫***************************************************/
+/***************************************************[鎺ㄩ�乵es鍖呰鍙峰鍏寮�濮�***************************************************/
+const importExcelTitleMesPushPackageCode = ref("");
+const importExcelDialogRefMesPushPackageCode = ref();
+//鎵撳紑瀵煎叆鐣岄潰
+const openImportExcelMesPushPackageCode = () => {
+ importExcelTitleMesPushPackageCode.value = '瀵煎叆鎺ㄩ�乵es鍖呰鍙�';
+ importExcelDialogRefMesPushPackageCode.value.openDialog({});
+};
+//瀵煎叆鏁版嵁
+const handleImportExcelMesPushPackageCode = async (formData:Blob) => {
+ var result = await importExcelMesPushPackageCode(formData);
+ importExcelDialogRefMesPushPackageCode.value.callBackUploadFun(result.data);//鍥炶皟瀵煎叆瀛愰〉闈㈢殑鏂规硶
+ if(result.data.type=="success"){
+ handleQueryMesPushPackageCode();
+ }
+};
+//涓嬭浇瀵煎叆妯℃澘
+const handleDownExcelMesPushPackageCode = async () => {
+ var result = await downloadExcelTemplateMesPushPackageCode();
+ importExcelDialogRefMesPushPackageCode.value.callBackDownFun(result);//鍥炶皟瀵煎叆瀛愰〉闈㈢殑鏂规硶
+};
+/***************************************************[鎺ㄩ�乵es鍖呰鍙峰鍏缁撴潫***************************************************/
+/***************************************************[鎺ㄩ�乵es鍖呰鍙峰鍑篯寮�濮�***************************************************/
+//瀹氫箟褰撳墠椤甸潰鐨勬柟娉曠粍
+const functionMapMesPushPackageCode = {
+ formatDate_T_Date,
+ formatDate_T_Time
+};
+//鐐瑰嚮瀵煎嚭鎸夐挳
+const handleExportExcelMesPushPackageCode = async (formData:Blob) => {
+ loadingMesPushPackageCode.value = true;
+ disabled_btnMesPushPackageCode.value = true;
+ var new_tableParamsMesPushPackageCode=JSON.parse(JSON.stringify(tableParamsMesPushPackageCode.value));
+ new_tableParamsMesPushPackageCode.page = 1;
+ new_tableParamsMesPushPackageCode.pageSize = 100000;
+ var res = await pageMesPushPackageCode(Object.assign(queryParamsMesPushPackageCode.value, new_tableParamsMesPushPackageCode));
+ if(res.data.type=="success"){
+ exportExcelMesPushPackageCode(res.data.result?.items ?? []);
+ }
+ loadingMesPushPackageCode.value = false;
+ disabled_btnMesPushPackageCode.value = false;
+};
+//瀵煎嚭
+const exportExcelMesPushPackageCode = async (exportDataList:Array) => {
+ exportPageExcel(exportDataList, tableRefMesPushPackageCode,"鎺ㄩ�乵es鍖呰鍙�",functionMapMesPushPackageCode);
+};
+/***************************************************[鎺ㄩ�乵es鍖呰鍙峰鍑篯缁撴潫***************************************************/
+ // 鎺ㄩ�乵es鍖呰鍙烽〉闈㈠姞杞芥椂
+ onMounted(async () => {
+ });
+
+ handleQueryMesPushPackageCode();
+</script>
+<style scoped>
+:deep(.el-input),
+:deep(.el-select),
+:deep(.el-input-number) {
+ width: 100%;
+}
+</style>
+
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Entity/WmsOrder/MesPushPackageCode.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Entity/WmsOrder/MesPushPackageCode.cs
new file mode 100644
index 0000000..d1050ba
--- /dev/null
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Entity/WmsOrder/MesPushPackageCode.cs
@@ -0,0 +1,49 @@
+锘縰sing Admin.NET.Core;
+namespace Admin.NET.Application.Entity;
+
+/// <summary>
+/// 鎺ㄩ�乵es鍖呰鍙疯〃
+/// </summary>
+[SugarTable("mes_PushPackageCode", "鎺ㄩ�乵es鍖呰鍙疯〃")]
+public class MesPushPackageCode : EntityBase
+{
+ /// <summary>
+ /// 鍖呰鍙�
+ /// </summary>
+ [Required]
+ [SugarColumn(ColumnName = "PackageCode", ColumnDescription = "鍖呰鍙�", Length = 50)]
+ public string PackageCode { get; set; }
+
+ /// <summary>
+ /// 鎺ㄩ�佺姸鎬�
+ /// </summary>
+ [Required]
+ [SugarColumn(ColumnName = "PushStatus", ColumnDescription = "鎺ㄩ�佺姸鎬�")]
+ public int PushStatus { get; set; }
+
+ /// <summary>
+ /// 鎺ㄩ�佹鏁�
+ /// </summary>
+ [Required]
+ [SugarColumn(ColumnName = "PushNum", ColumnDescription = "鎺ㄩ�佹鏁�")]
+ public int PushNum { get; set; }
+
+ /// <summary>
+ /// 鎺ュ彛杩斿洖鍙傛暟
+ /// </summary>
+ [SugarColumn(ColumnName = "ApiMessage", ColumnDescription = "鎺ュ彛杩斿洖鍙傛暟", Length = 50)]
+ public string ApiMessage { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓鑰呴儴闂↖d
+ /// </summary>
+ [SugarColumn(ColumnName = "CreateOrgId", ColumnDescription = "鍒涘缓鑰呴儴闂↖d")]
+ public long? CreateOrgId { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓鑰呴儴闂ㄥ悕绉�
+ /// </summary>
+ [SugarColumn(ColumnName = "CreateOrgName", ColumnDescription = "鍒涘缓鑰呴儴闂ㄥ悕绉�", Length = 64)]
+ public string CreateOrgName { get; set; }
+
+}
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/Dto/MesPushPackageCodeInput.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/Dto/MesPushPackageCodeInput.cs
new file mode 100644
index 0000000..5e1c6fa
--- /dev/null
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/Dto/MesPushPackageCodeInput.cs
@@ -0,0 +1,172 @@
+锘縰sing Admin.NET.Core;
+using System.ComponentModel.DataAnnotations;
+
+namespace Admin.NET.Application;
+
+ /// <summary>
+ /// 鎺ㄩ�乵es鍖呰鍙峰熀纭�杈撳叆鍙傛暟
+ /// </summary>
+ public class MesPushPackageCodeBaseInput
+ {
+ /// <summary>
+ /// 鍖呰鍙�
+ /// </summary>
+ public virtual string PackageCode { get; set; }
+
+ /// <summary>
+ /// 鎺ㄩ�佺姸鎬�
+ /// </summary>
+ public virtual int PushStatus { get; set; }
+
+ /// <summary>
+ /// 鎺ㄩ�佹鏁�
+ /// </summary>
+ public virtual int PushNum { get; set; }
+
+ /// <summary>
+ /// 鎺ュ彛杩斿洖鍙傛暟
+ /// </summary>
+ public virtual string ApiMessage { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓鏃堕棿
+ /// </summary>
+ public virtual DateTime? CreateTime { get; set; }
+
+ /// <summary>
+ /// 淇敼鏃堕棿
+ /// </summary>
+ public virtual DateTime? UpdateTime { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓浜篒d
+ /// </summary>
+ public virtual long? CreateUserId { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓浜�
+ /// </summary>
+ public virtual string CreateUserName { get; set; }
+
+ /// <summary>
+ /// 淇敼浜篒d
+ /// </summary>
+ public virtual long? UpdateUserId { get; set; }
+
+ /// <summary>
+ /// 淇敼浜�
+ /// </summary>
+ public virtual string UpdateUserName { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓鑰呴儴闂↖d
+ /// </summary>
+ public virtual long? CreateOrgId { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓鑰呴儴闂ㄥ悕绉�
+ /// </summary>
+ public virtual string CreateOrgName { get; set; }
+
+ /// <summary>
+ /// 杞垹闄�
+ /// </summary>
+ public virtual bool IsDelete { get; set; }
+
+ }
+
+ /// <summary>
+ /// 鎺ㄩ�乵es鍖呰鍙峰垎椤垫煡璇㈣緭鍏ュ弬鏁�
+ /// </summary>
+ public class MesPushPackageCodeInput : BasePageInput
+ {
+ /// <summary>
+ /// 鍏抽敭瀛楁煡璇�
+ /// </summary>
+ public string? SearchKey { get; set; }
+
+ /// <summary>
+ /// 鍖呰鍙�
+ /// </summary>
+ public string? PackageCode { get; set; }
+
+ /// <summary>
+ /// 鎺ㄩ�佺姸鎬�
+ /// </summary>
+ public int? PushStatus { get; set; }
+
+ /// <summary>
+ /// 鎺ㄩ�佹鏁�
+ /// </summary>
+ public int? PushNum { get; set; }
+
+ /// <summary>
+ /// 鎺ュ彛杩斿洖鍙傛暟
+ /// </summary>
+ public string? ApiMessage { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓鑰呴儴闂ㄥ悕绉�
+ /// </summary>
+ public string? CreateOrgName { get; set; }
+
+ }
+
+ /// <summary>
+ /// 鎺ㄩ�乵es鍖呰鍙峰鍔犺緭鍏ュ弬鏁�
+ /// </summary>
+ public class AddMesPushPackageCodeInput : MesPushPackageCodeBaseInput
+ {
+ /// <summary>
+ /// 鍖呰鍙�
+ /// </summary>
+ [Required(ErrorMessage = "鍖呰鍙蜂笉鑳戒负绌�")]
+ public override string PackageCode { get; set; }
+
+ /// <summary>
+ /// 鎺ㄩ�佺姸鎬�
+ /// </summary>
+ [Required(ErrorMessage = "鎺ㄩ�佺姸鎬佷笉鑳戒负绌�")]
+ public override int PushStatus { get; set; }
+
+ /// <summary>
+ /// 鎺ㄩ�佹鏁�
+ /// </summary>
+ [Required(ErrorMessage = "鎺ㄩ�佹鏁颁笉鑳戒负绌�")]
+ public override int PushNum { get; set; }
+
+ /// <summary>
+ /// 杞垹闄�
+ /// </summary>
+ [Required(ErrorMessage = "杞垹闄や笉鑳戒负绌�")]
+ public override bool IsDelete { get; set; }
+
+ }
+
+ /// <summary>
+ /// 鎺ㄩ�乵es鍖呰鍙峰垹闄よ緭鍏ュ弬鏁�
+ /// </summary>
+ public class DeleteMesPushPackageCodeInput : BaseIdInput
+ {
+ }
+
+ /// <summary>
+ /// 鎺ㄩ�乵es鍖呰鍙锋洿鏂拌緭鍏ュ弬鏁�
+ /// </summary>
+ public class UpdateMesPushPackageCodeInput : AddMesPushPackageCodeInput
+ {
+ /// <summary>
+ /// 涓婚敭Id
+ /// </summary>
+ [Required(ErrorMessage = "涓婚敭Id涓嶈兘涓虹┖")]
+ public long Id { get; set; }
+
+ }
+
+ /// <summary>
+ /// 鎺ㄩ�乵es鍖呰鍙蜂富閿煡璇㈣緭鍏ュ弬鏁�
+ /// </summary>
+ public class QueryByIdMesPushPackageCodeInput : DeleteMesPushPackageCodeInput
+ {
+
+ }
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/Dto/MesPushPackageCodeOutput.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/Dto/MesPushPackageCodeOutput.cs
new file mode 100644
index 0000000..16b8c23
--- /dev/null
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/Dto/MesPushPackageCodeOutput.cs
@@ -0,0 +1,80 @@
+锘縩amespace Admin.NET.Application;
+
+/// <summary>
+/// 鎺ㄩ�乵es鍖呰鍙疯緭鍑哄弬鏁�
+/// </summary>
+public class MesPushPackageCodeOutput
+{
+ /// <summary>
+ /// 涓婚敭Id
+ /// </summary>
+ public long? Id { get; set; }
+
+ /// <summary>
+ /// 鍖呰鍙�
+ /// </summary>
+ public string PackageCode { get; set; }
+
+ /// <summary>
+ /// 鎺ㄩ�佺姸鎬�
+ /// </summary>
+ public int PushStatus { get; set; }
+
+ /// <summary>
+ /// 鎺ㄩ�佹鏁�
+ /// </summary>
+ public int PushNum { get; set; }
+
+ /// <summary>
+ /// 鎺ュ彛杩斿洖鍙傛暟
+ /// </summary>
+ public string ApiMessage { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓鏃堕棿
+ /// </summary>
+ public DateTime? CreateTime { get; set; }
+
+ /// <summary>
+ /// 淇敼鏃堕棿
+ /// </summary>
+ public DateTime? UpdateTime { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓浜篒d
+ /// </summary>
+ public long? CreateUserId { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓浜�
+ /// </summary>
+ public string CreateUserName { get; set; }
+
+ /// <summary>
+ /// 淇敼浜篒d
+ /// </summary>
+ public long? UpdateUserId { get; set; }
+
+ /// <summary>
+ /// 淇敼浜�
+ /// </summary>
+ public string UpdateUserName { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓鑰呴儴闂↖d
+ /// </summary>
+ public long? CreateOrgId { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓鑰呴儴闂ㄥ悕绉�
+ /// </summary>
+ public string CreateOrgName { get; set; }
+
+ /// <summary>
+ /// 杞垹闄�
+ /// </summary>
+ public bool IsDelete { get; set; }
+
+ }
+
+
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/MesPushPackageCodeService.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/MesPushPackageCodeService.cs
new file mode 100644
index 0000000..328032f
--- /dev/null
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/MesPushPackageCodeService.cs
@@ -0,0 +1,331 @@
+锘縰sing 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>
+/// 鎺ㄩ�乵es鍖呰鍙锋湇鍔�
+/// </summary>
+[ApiDescriptionSettings(ApplicationConst.WmsOrderGroupName, Order = 100)]
+public class MesPushPackageCodeService : IDynamicApiController, ITransient
+{
+ private readonly SqlSugarRepository<MesPushPackageCode> _rep;
+ public MesPushPackageCodeService(SqlSugarRepository<MesPushPackageCode> rep)
+ {
+ _rep = rep;
+ }
+
+ /// <summary>
+ /// 鍒嗛〉鏌ヨ鎺ㄩ�乵es鍖呰鍙�
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpPost]
+ [ApiDescriptionSettings(Name = "Page")]
+ [Description("MesPushPackageCode/Page")]
+ public async Task<SqlSugarPagedList<MesPushPackageCodeOutput>> Page(MesPushPackageCodeInput input)
+ {
+ var query = CommonPageFilter(input);
+ return await query.OrderBuilder(input, "", "Id").ToPagedListAsync(input.Page, input.PageSize);
+ }
+
+ /// <summary>
+ /// 涓嶅垎椤垫煡璇㈡帹閫乵es鍖呰鍙�
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpGet]
+ [ApiDescriptionSettings(Name = "List")]
+ [Description("MesPushPackageCode/List")]
+ public async Task<List<MesPushPackageCodeOutput>> List([FromQuery] MesPushPackageCodeInput input)
+ {
+ var query = CommonPageFilter(input);
+ return await query.OrderBuilder(input, "", "Id").Select<MesPushPackageCodeOutput>().ToListAsync();
+ }
+
+ /// <summary>
+ /// 澧炲姞鎺ㄩ�乵es鍖呰鍙�
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpPost]
+ [ApiDescriptionSettings(Name = "Add")]
+ [Description("MesPushPackageCode/Add")]
+ public async Task<long> Add(AddMesPushPackageCodeInput input)
+ {
+ var entity = input.Adapt<MesPushPackageCode>();
+
+ //閲嶅鎬ч獙璇�
+ await CheckExist(entity);
+
+ await _rep.InsertAsync(entity);
+ return entity.Id;
+ }
+
+ /// <summary>
+ /// 鍒犻櫎鎺ㄩ�乵es鍖呰鍙�
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpPost]
+ [ApiDescriptionSettings(Name = "Delete")]
+ [Description("MesPushPackageCode/Delete")]
+ public async Task Delete(DeleteMesPushPackageCodeInput 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>
+ /// 鏇存柊鎺ㄩ�乵es鍖呰鍙�
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpPost]
+ [ApiDescriptionSettings(Name = "Update")]
+ [Description("MesPushPackageCode/Update")]
+ public async Task Update(UpdateMesPushPackageCodeInput input)
+ {
+ var entity = input.Adapt<MesPushPackageCode>();
+
+ //閲嶅鎬ч獙璇�
+ await CheckExist(entity,true);
+
+ await _rep.AsUpdateable(entity).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync();
+ }
+
+ /// <summary>
+ /// 鑾峰彇鎺ㄩ�乵es鍖呰鍙�
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpGet]
+ [ApiDescriptionSettings(Name = "Detail")]
+ [Description("MesPushPackageCode/Detail")]
+ public async Task<MesPushPackageCode> Detail([FromQuery] QueryByIdMesPushPackageCodeInput input)
+ {
+ return await _rep.GetFirstAsync(u => u.Id == input.Id);
+ }
+
+
+
+
+
+ #region 瀵煎叆
+
+ /// <summary>
+ /// Excel妯℃澘瀵煎叆鎺ㄩ�乵es鍖呰鍙峰姛鑳�
+ /// </summary>
+ /// <param name="file">Excel妯℃澘鏂囦欢</param>
+ /// <returns>瀵煎叆鐨勮褰曟暟</returns>
+ [HttpPost]
+ [ApiDescriptionSettings(Name = "ImportExcel")]
+ [Description("MesPushPackageCode/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<MesPushPackageCode>> CommonImport(DataTable dataTable, int dataStartLine)
+ {
+ var details = new List<MesPushPackageCode>();
+ int index = dataStartLine;//妯$増鍒楀悕寮�濮嬭
+ foreach (System.Data.DataRow row in dataTable.Rows)
+ {
+ index++;
+ //瀵煎叆妯$増瀹氬埗鍖栦唬鐮侊紙鏇挎崲妯$増浣跨敤锛�
+
+ var addItem = new MesPushPackageCode();
+ #region 瀹氫箟鍙橀噺
+ var _PackageCode = "";//鍖呰鍙�
+ var _PushStatus = "";//鎺ㄩ�佺姸鎬�
+ var _PushNum = "";//鎺ㄩ�佹鏁�
+ var _ApiMessage = "";//鎺ュ彛杩斿洖鍙傛暟
+ var _CreateOrgName = "";//鍒涘缓鑰呴儴闂ㄥ悕绉�
+ #endregion
+
+
+ #region 鍙栧��
+ _PackageCode = row["鍖呰鍙�"]?.ToString() ;
+ _PushStatus = row["鎺ㄩ�佺姸鎬�"]?.ToString() ;
+ _PushNum = row["鎺ㄩ�佹鏁�"]?.ToString() ;
+ _ApiMessage = row["鎺ュ彛杩斿洖鍙傛暟"]?.ToString() ;
+ _CreateOrgName = row["鍒涘缓鑰呴儴闂ㄥ悕绉�"]?.ToString() ;
+ #endregion
+
+
+ #region 楠岃瘉
+
+ if (string.IsNullOrEmpty(_PackageCode))
+ {
+ throw Oops.Oh($"绗瑊index}琛孾鍖呰鍙穄{_PackageCode}涓嶈兘涓虹┖锛�");
+ }
+
+ if(!string.IsNullOrEmpty(_PackageCode))
+ {
+ addItem.PackageCode = (string)(_PackageCode.Trim());
+ }
+
+ if (string.IsNullOrEmpty(_PushStatus))
+ {
+ throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佺姸鎬乚{_PushStatus}涓嶈兘涓虹┖锛�");
+ }
+
+ if(!string.IsNullOrEmpty(_PushStatus))
+ {
+ if (!int.TryParse(_PushStatus, out int outPushStatus)&&!string.IsNullOrEmpty(_PushStatus))
+ {
+ throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佺姸鎬乚{_PushStatus}鍊间笉姝g‘锛�");
+ }
+ if (outPushStatus <= 0&&!string.IsNullOrEmpty(_PushStatus))
+ {
+ throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佺姸鎬乚{_PushStatus}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
+ }
+ else
+ {
+ addItem.PushStatus = outPushStatus;
+ }
+
+ }
+
+ if (string.IsNullOrEmpty(_PushNum))
+ {
+ throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佹鏁癩{_PushNum}涓嶈兘涓虹┖锛�");
+ }
+
+ if(!string.IsNullOrEmpty(_PushNum))
+ {
+ if (!int.TryParse(_PushNum, out int outPushNum)&&!string.IsNullOrEmpty(_PushNum))
+ {
+ throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佹鏁癩{_PushNum}鍊间笉姝g‘锛�");
+ }
+ if (outPushNum <= 0&&!string.IsNullOrEmpty(_PushNum))
+ {
+ throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佹鏁癩{_PushNum}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
+ }
+ else
+ {
+ addItem.PushNum = outPushNum;
+ }
+
+ }
+ if(!string.IsNullOrEmpty(_ApiMessage))
+ {
+ addItem.ApiMessage = (string)(_ApiMessage.Trim());
+ }
+ if(!string.IsNullOrEmpty(_CreateOrgName))
+ {
+ addItem.CreateOrgName = (string)(_CreateOrgName.Trim());
+ }
+ #endregion
+
+
+ details.Add(addItem);
+ }
+ //楠岄噸
+ await CheckExisitForImport(details);
+ return details;
+ }
+
+ /// <summary>
+ /// 鏍规嵁鐗堟湰涓嬭浇鎺ㄩ�乵es鍖呰鍙风殑Excel瀵煎叆妯℃澘
+ /// </summary>
+ /// <returns>涓嬭浇鐨勬ā鏉挎枃浠�</returns>
+ [HttpGet]
+ [ApiDescriptionSettings(Name = "DownloadExcelTemplate")]
+ [Description("MesPushPackageCode/DownloadExcelTemplate")]
+ public IActionResult DownloadExcelTemplate()
+ {
+ string _path = TemplateConst.EXCEL_TEMPLATEFILE_瀵煎叆妯$増璺緞 + $"\\鎺ㄩ�乵es鍖呰鍙穥TemplateConst.EXCEL_TEMPLATEFILE_瀵煎叆妯$増鍚嶇О鍚庣紑}.xlsx";
+ var fileName = HttpUtility.UrlEncode($"瀵煎叆妯℃澘(鎺ㄩ�乵es鍖呰鍙�).xlsx", Encoding.GetEncoding("UTF-8"));
+ return new FileStreamResult(new FileStream(_path, FileMode.Open), "application/octet-stream") { FileDownloadName = fileName };
+ }
+
+ #endregion
+
+ #region 绉佹湁鏂规硶
+
+ /// <summary>
+ /// 鍏叡鏌ヨ鎺ㄩ�乵es鍖呰鍙锋潯浠�
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ private ISugarQueryable<MesPushPackageCodeOutput> CommonPageFilter(MesPushPackageCodeInput input)
+ {
+ var query = _rep.AsQueryable()
+ .WhereIF(!string.IsNullOrWhiteSpace(input.SearchKey), u =>
+ u.PackageCode.Contains(input.SearchKey.Trim())
+ || u.ApiMessage.Contains(input.SearchKey.Trim())
+ || u.CreateUserName.Contains(input.SearchKey.Trim())
+ || u.UpdateUserName.Contains(input.SearchKey.Trim())
+ || u.CreateOrgName.Contains(input.SearchKey.Trim())
+ )
+ .WhereIF(!string.IsNullOrWhiteSpace(input.PackageCode), u => u.PackageCode.Contains(input.PackageCode.Trim()))
+ .WhereIF(input.PushStatus>0, u => u.PushStatus == input.PushStatus)
+ .WhereIF(input.PushNum>0, u => u.PushNum == input.PushNum)
+ .WhereIF(!string.IsNullOrWhiteSpace(input.ApiMessage), u => u.ApiMessage.Contains(input.ApiMessage.Trim()))
+ .WhereIF(!string.IsNullOrWhiteSpace(input.CreateOrgName), u => u.CreateOrgName.Contains(input.CreateOrgName.Trim()))
+ .Select<MesPushPackageCodeOutput>();
+ return query;
+ }
+
+ /// <summary>
+ /// 閲嶅鎬ч獙璇�
+ /// </summary>
+ /// <param name="input">楠岃瘉瀵硅薄</param>
+ /// <param name="isEdit">鏄惁鏄紪杈�</param>
+ /// <returns></returns>
+ private async Task CheckExist( MesPushPackageCode input,bool isEdit=false)
+ {
+
+
+
+ //娌℃湁閰嶇疆缁勫悎鏍¢獙锛屼笉闇�瑕侀獙閲�
+
+
+ //娌℃湁閰嶇疆鍗曠嫭鏍¢獙锛屼笉闇�瑕侀獙閲�
+ }
+
+ /// <summary>
+ /// 鏍规嵁缁勫悎鏍¢獙鍜屽崟鐙牎楠岄獙璇佹暟鎹槸鍚﹀凡瀛樺湪-瀵煎叆鏃堕獙璇�
+ /// </summary>
+ /// <param name="inputs"></param>
+ /// <returns></returns>
+ private async Task CheckExisitForImport(List<MesPushPackageCode> inputs)
+ {
+ if (inputs?.Count <= 0)
+ {
+ throw Oops.Oh($"瀵煎叆鏁版嵁涓嶈兘涓虹┖");
+ }
+ //鏍规嵁缁勫悎鏍¢獙楠岃瘉琛ㄦ牸涓腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�
+
+
+
+
+
+
+
+
+ //鏍规嵁鍗曠嫭鏍¢獙楠岃瘉琛ㄦ牸涓腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�
+
+
+
+ }
+ #endregion
+
+}
+
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Core/Service/Auth/SysAuthService.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Core/Service/Auth/SysAuthService.cs
index 7df3874..f163b10 100644
--- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Core/Service/Auth/SysAuthService.cs
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Core/Service/Auth/SysAuthService.cs
@@ -69,12 +69,12 @@
throw Oops.Oh(ErrorCodeEnum.D1027);
// 鏄惁寮�鍚獙璇佺爜
- if (await _sysConfigService.GetConfigValue<bool>(CommonConst.SysCaptcha))
- {
- // 鍒ゆ柇楠岃瘉鐮�
- if (!_captcha.Validate(input.CodeId.ToString(), input.Code))
- throw Oops.Oh(ErrorCodeEnum.D0008);
- }
+ //if (await _sysConfigService.GetConfigValue<bool>(CommonConst.SysCaptcha))
+ //{
+ // // 鍒ゆ柇楠岃瘉鐮�
+ // if (!_captcha.Validate(input.CodeId.ToString(), input.Code))
+ // throw Oops.Oh(ErrorCodeEnum.D0008);
+ //}
// 璐﹀彿鏄惁瀛樺湪
var user = await _sysUserRep.AsQueryable().Includes(t => t.SysOrg).ClearFilter().FirstAsync(u => u.Account.Equals(input.Account));
diff --git "a/LA24030_LuLiPackageLine_Wms/Admin.NET.Web.Entry/wwwroot/ExcelTemplateFile/\346\216\250\351\200\201mes\345\214\205\350\243\205\345\217\267\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" "b/LA24030_LuLiPackageLine_Wms/Admin.NET.Web.Entry/wwwroot/ExcelTemplateFile/\346\216\250\351\200\201mes\345\214\205\350\243\205\345\217\267\345\257\274\345\205\245\346\250\241\346\235\277.xlsx"
new file mode 100644
index 0000000..89c9d16
--- /dev/null
+++ "b/LA24030_LuLiPackageLine_Wms/Admin.NET.Web.Entry/wwwroot/ExcelTemplateFile/\346\216\250\351\200\201mes\345\214\205\350\243\205\345\217\267\345\257\274\345\205\245\346\250\241\346\235\277.xlsx"
Binary files differ
--
Gitblit v1.9.3