From 230a76788e7b899f8b78908bc161b01c796de323 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期四, 07 九月 2023 09:02:55 +0800
Subject: [PATCH] 主数据固定码段 默认值更改
---
Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue | 111 +++++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 91 insertions(+), 20 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue b/Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue
index 9998cb7..b29e4d0 100644
--- a/Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue
+++ b/Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue
@@ -1,17 +1,26 @@
<template>
- <el-dialog title="鏈�澶ф祦姘村彿" width="30%" append-to-body="true" :visible.sync="visible">
+ <el-dialog title="鏈�澶ф祦姘村彿" width="30%" append-to-body="true" class="avue-dialog avue-dialog--top" top="-3%" :visible.sync="dialogVisible">
+ <el-form :label-position="right" ref="ruleForm" label-width="80px" :model="formModel" :rules="rules">
+ <el-form-item label="娴佹按鍙�" prop="maxSecNum">
+ <el-input v-model="formModel.maxSecNum"></el-input>
+ </el-form-item>
+ </el-form>
<el-tabs v-model="activeName" type="border-card" @tab-click="handleClick">
<el-tab-pane label="鏈�澶ф祦姘村彿" name="codeApply">
- <form-template v-bind="$attrs" type="add" :selfColumnType="selfColumnType" :selfColumnConfig="selfColumnConfig"
- ref="CodeApply" @getFormData="getCodeApplyFormData"
+ <form-template v-bind="$attrs" type="add" :selfColumnType="selfColumnType" :trendsSpan="24"
+ :selfColumnConfig="selfColumnConfig" ref="CodeApply" @getFormData="getCodeApplyFormData"
@referConfigDataUpdate="referConfigDataUpdate"></form-template>
</el-tab-pane>
</el-tabs>
+ <div slot="footer" class="dialog-footer">
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ <el-button type="primary" :loading="confirmLoadding" @click="comfirm">纭� 瀹�</el-button>
+ </div>
</el-dialog>
</template>
<script>
import FormTemplate from "@/components/FormTemplate/FormTemplate";
-import { getCodePrice } from "@/api/code/maxSerialNum.js"
+import { getCodePrice, saveMaxSerialNum } from "@/api/code/maxSerialNum.js"
export default {
name: 'maxSerialnumDialog',
components: {
@@ -39,7 +48,7 @@
},
selfColumnConfig: {
handler(newval) {
- console.log('selfColumnConfig', newval)
+ // console.log('selfColumnConfig', newval)
},
immediate: true,
deep: true
@@ -49,13 +58,27 @@
return {
dialogVisible: this.visible,
activeName: 'codePrice',
+ confirmLoadding: false,
codeApplyForm: {},
secVOList: [],
+ formModel: {
+ maxSecNum: '',
+ codeRuleOid: '',
+ secDTOList: []
+ },
+ rules: {
+ maxSecNum: [
+ { required: true, message: '璇疯緭鍏ユ祦姘村彿', trigger: 'blur' }
+ ],
+ },
selfColumnType: {
- codefixedsec: "combox",
- codeclassifysec: "refer",
- codevariablesec: "text",
- coderefersec: "refer",
+ codefixedsec: "combox",//鍥哄畾鐮佹
+ codeclassifysec: "refer",//鍒嗙被鐮佹
+ codevariablesec: "text",//鍙彉鐮佹
+ coderefersec: "refer",//寮曠敤鐮佹
+ codeattrsec: "text",
+ codelevelsec: "text",
+ codedatesec: "date"
},
selfColumnConfig: {
function: {
@@ -74,6 +97,7 @@
label: "name",
maxlength: "codeSecLength",
data: "fixedValueVOList",
+ dateFormate: "codeDateFormatStr"
},
directVoluation: {
search: true,
@@ -86,41 +110,89 @@
}
},
methods: {
+ // 鑾峰彇鐮佹
async apiGetCode() {
+ this.activeName = "codeApply";
const response = await getCodePrice({ ruleOid: this.ruleOid })
const res = response.data
if (res.success && res.code === 200) {
- console.log(response)
const typeList = [
"codefixedsec",
"codeclassifysec",
"codevariablesec",
"coderefersec",
+ "codeattrsec",
+ "codelevelsec",
+ "codedatesec"
];
this.secVOList = (res.data.secVOList || []).filter((item) =>
typeList.includes(item.secType)
);
- console.log(this.secVOList)
if (this.secVOList.length > 0) {
- // this.showCodeApply = true;
- this.activeName = "codePrice";
this.$nextTick(() => {
this.$refs.CodeApply.templateRender(this.secVOList);
});
} else {
- // this.showCodeApply = false;
+ this.$refs.CodeApply.loading = false;
}
}
},
handleClick(tab, event) {
- console.log(event)
+ // console.log(event)
},
getCodeApplyFormData(codeApplyForm) {
this.codeApplyForm = codeApplyForm;
},
+ // 鍙栨秷
+ cancel() {
+ this.dialogVisible = false
+ this.formModel['secDTOList'] = []
+ this.formModel['codeRuleOid'] = ''
+ this.formModel['maxSecNum'] = ''
+ this.$refs.ruleForm.clearValidate('maxSecNum')
+
+ },
+ // 纭
+ async comfirm() {
+ const objcodekey = Object.keys(this.codeApplyForm)
+ const filteredObj = objcodekey.reduce((acc, key) => {
+ const pattern = /[\u4e00-\u9fa5]/; // 鍖归厤涓枃瀛楃鐨勬鍒欒〃杈惧紡
+ const patterns = /\$/;
+ if (!pattern.test(key)&&!patterns.test(key)) {
+ acc[key] = this.codeApplyForm[key];
+ }
+ return acc;
+ }, {});
+
+ const arrCode = Object.entries(filteredObj).map(([key, value]) => {
+ return {
+ secOid: key,
+ secValue: value
+ }
+ })
+ this.formModel['secDTOList'] = arrCode
+ this.formModel['codeRuleOid'] = this.ruleOid
+ this.confirmLoadding = true
+ const rule = await this.$refs.CodeApply.validate()
+ this.$refs.ruleForm.validate(res => {
+ if (rule && res) {
+ saveMaxSerialNum(this.formModel).then(res => {
+ if (res.data.success) {
+ this.$message.success('鎿嶄綔鎴愬姛锛�');
+ this.confirmLoadding = false
+ this.cancel()
+ }
+ }).catch(error=>{
+ this.confirmLoadding = false
+ })
+ } else {
+ this.confirmLoadding = false
+ }
+ })
+
+ },
// 鍙傜収缁勪欢鏁版嵁鍙樻洿
referConfigDataUpdate(data) {
- console.log(data)
const { field } = data;
this.secVOList = this.secVOList.map((item) => {
if (item.parentClassifySecOid === field) {
@@ -129,7 +201,6 @@
}
return item;
});
- console.log(this.secVOList)
this.$refs.CodeApply.templateRender(this.secVOList);
},
isRequired(item) {
@@ -150,11 +221,11 @@
}
},
getReferConfig(item) {
- console.log(item)
let params = {};
if (item.secType == "codeclassifysec") {
params = {
isMuti: false,
+ valueField: 'id',
type: "grid",
tableConfig: {
limit: -1,
@@ -199,7 +270,7 @@
} else if (item.secType == "coderefersec") {
params = JSON.parse(item.referValueInfo);
}
- console.log(params)
+ // console.log(params)
return params;
},
@@ -228,4 +299,4 @@
},
}
}
-</script>
\ No newline at end of file
+</script>
--
Gitblit v1.9.3