From 5e610f4c9d9870b393720bc5fcc856e97bc2ea4b Mon Sep 17 00:00:00 2001 From: zongzhibin <zongzhibin@weben-smart.com> Date: 周三, 27 11月 2024 09:36:26 +0800 Subject: [PATCH] Merge branch 'master' of http://222.71.245.114:9086/r/LA24030-LuLI_PackageLine --- LA24030_LuLiPackageLine_Web/src/views/main/PrintCenter/wmsRecordPrint/component/editDialog.vue | 298 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 298 insertions(+), 0 deletions(-) diff --git a/LA24030_LuLiPackageLine_Web/src/views/main/PrintCenter/wmsRecordPrint/component/editDialog.vue b/LA24030_LuLiPackageLine_Web/src/views/main/PrintCenter/wmsRecordPrint/component/editDialog.vue new file mode 100644 index 0000000..6564ec7 --- /dev/null +++ b/LA24030_LuLiPackageLine_Web/src/views/main/PrintCenter/wmsRecordPrint/component/editDialog.vue @@ -0,0 +1,298 @@ +锘�<template> + <div class="wmsRecordPrint-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="printType"> + <el-select clearable v-model="ruleForm.printType" placeholder="璇烽�夋嫨鎵撳嵃绫诲瀷"> + <el-option v-for="(item,index) in getEnumPrintTypeData" :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="printSource"> + <el-select clearable v-model="ruleForm.printSource" placeholder="璇烽�夋嫨鎵撳嵃鏉ユ簮"> + <el-option v-for="(item,index) in getEnumPrintSourceData" :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="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="info4"> + <el-input v-model="ruleForm.info4" placeholder="璇疯緭鍏ラ攢鍞悎鍚屽崟鍙�" maxlength="60" 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="info5"> + <el-input v-model="ruleForm.info5" placeholder="璇疯緭鍏ョ敓浜у崟鍙�" maxlength="60" 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="info6"> + <el-input v-model="ruleForm.info6" placeholder="璇疯緭鍏ョ鍑犲寘" maxlength="60" 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="info7"> + <el-input v-model="ruleForm.info7" placeholder="璇疯緭鍏ョ粡閿�搴楀悕绉�" maxlength="60" 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="info8"> + <el-input v-model="ruleForm.info8" placeholder="璇疯緭鍏ヤ骇鍝佸悕绉�" maxlength="60" 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="info10"> + <el-input v-model="ruleForm.info10" placeholder="璇疯緭鍏ュ鎴峰悕绉�" maxlength="60" 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="鑷彁or鍙戣揣" prop="info11"> + <el-input v-model="ruleForm.info11" placeholder="璇疯緭鍏ヨ嚜鎻恛r鍙戣揣" maxlength="60" 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="info12"> + <el-input v-model="ruleForm.info12" placeholder="璇疯緭鍏ュ寘瑁呴儴浠舵�绘暟閲�" maxlength="60" 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="info13"> + <el-input v-model="ruleForm.info13" placeholder="璇疯緭鍏ュ寘瑁呴潰绉�" maxlength="60" 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="info14"> + <el-input v-model="ruleForm.info14" placeholder="璇疯緭鍏ラ儴浠跺悕绉�" maxlength="60" 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="info15"> + <el-input-number v-model="ruleForm.info15" 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="info16"> + <el-input v-model="ruleForm.info16" placeholder="璇疯緭鍏ラ儴浠跺昂瀵�" maxlength="60" 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="printSheetNum"> + <el-input-number v-model="ruleForm.printSheetNum" 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="printNum"> + <el-input-number v-model="ruleForm.printNum" 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="printStatus"> + <el-select clearable v-model="ruleForm.printStatus" placeholder="璇烽�夋嫨鎵撳嵃鐘舵��"> + <el-option v-for="(item,index) in getEnumPrintStatusData" :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="isAllowPrint"> + <el-switch v-model="ruleForm.isAllowPrint" active-text="鏄�" inactive-text="鍚�" /> + + </el-form-item> + + </el-col> + <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> + <el-form-item label="澶囨敞" prop="remarks"> + <el-input v-model="ruleForm.remarks" placeholder="璇疯緭鍏ュ娉�" maxlength="255" 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 { addWmsRecordPrint, updateWmsRecordPrint, detailWmsRecordPrint } from "/@/api/main/PrintCenter/wmsRecordPrint"; + import { getAPI } from '/@/utils/axios-utils'; + import { SysEnumApi } from '/@/api-services/api'; + + const getEnumPrintTypeData = ref<any>([]); + const getEnumPrintSourceData = ref<any>([]); + const getEnumPrintStatusData = 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>({ + printType: [{required: true, message: '璇烽�夋嫨鎵撳嵃绫诲瀷锛�', trigger: 'change',},], + printSource: [{required: true, message: '璇烽�夋嫨鎵撳嵃鏉ユ簮锛�', trigger: 'change',},], + packageCode: [{required: true, message: '璇疯緭鍏ュ寘瑁呭彿锛�', trigger: 'blur',},], + printSheetNum: [{required: true, message: '璇疯緭鍏ユ墦鍗板紶鏁帮紒', trigger: 'blur',},], + printNum: [{required: true, message: '璇疯緭鍏ユ墦鍗版鏁帮紒', trigger: 'blur',},], + printStatus: [{required: true, message: '璇烽�夋嫨鎵撳嵃鐘舵�侊紒', trigger: 'change',},], + isAllowPrint: [{required: true, message: '璇烽�夋嫨鏄惁鍏佽鎵撳嵃锛�', trigger: 'change',},], + 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 detailWmsRecordPrint(rowData.id)).data.result; + else { + ruleForm.value = rowData; + ruleForm.value.isAllowPrint = false;//蹇呭~锛岃祴鍊奸粯璁ゅ�� + } + 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 addWmsRecordPrint(values); + } else { + title='缂栬緫'; + ret = await updateWmsRecordPrint(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 () => { + getEnumPrintTypeData.value = (await getAPI(SysEnumApi).apiSysEnumEnumDataListGet('PrintTypeEnum')).data.result ?? []; + getEnumPrintSourceData.value = (await getAPI(SysEnumApi).apiSysEnumEnumDataListGet('PrintSourceEnum')).data.result ?? []; + getEnumPrintStatusData.value = (await getAPI(SysEnumApi).apiSysEnumEnumDataListGet('PrintStatuEnum')).data.result ?? []; + }); + + //灏嗗睘鎬ф垨鑰呭嚱鏁版毚闇茬粰鐖剁粍浠� + defineExpose({ openDialog }); +</script> + + + + -- Gitblit v1.9.3