From 269904d54d259f5c6f8e776d98821187a72f9eb8 Mon Sep 17 00:00:00 2001 From: zhangxp <zhangxp@chicecm.com> Date: 星期三, 23 八月 2023 15:54:58 +0800 Subject: [PATCH] 最大流水号 --- Source/UBCS-WEB/src/views/code/code.vue | 1 Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue | 1 Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue | 73 +++++++++++++++++++++++++++++++----- Source/UBCS-WEB/src/api/code/maxSerialNum.js | 16 ++++---- 4 files changed, 71 insertions(+), 20 deletions(-) diff --git a/Source/UBCS-WEB/src/api/code/maxSerialNum.js b/Source/UBCS-WEB/src/api/code/maxSerialNum.js index 7b0a452..7e9ed4e 100644 --- a/Source/UBCS-WEB/src/api/code/maxSerialNum.js +++ b/Source/UBCS-WEB/src/api/code/maxSerialNum.js @@ -8,11 +8,11 @@ params: data }) } -// //淇濆瓨鏈�澶ф祦姘村彿 -// export const saveMaxSerialNum = (data) => { -// return request({ -// url: '/api/ubcs-code/ubcs-code/codeBasicSecController/getCodeRuleAndBasicSecByRuleOid', -// method: 'post', -// data: data -// }) -// } \ No newline at end of file +//淇濆瓨鏈�澶ф祦姘村彿 +export const saveMaxSerialNum = (data) => { + return request({ + url: '/api/ubcs-code/ubcs-code/codeBasicSecController/setMaxSerialNumberForCodeRule', + method: 'post', + data: data + }) + } \ No newline at end of file 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 4885780..6db53ba 100644 --- a/Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue +++ b/Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue @@ -1,27 +1,26 @@ <template> <el-dialog title="鏈�澶ф祦姘村彿" width="30%" append-to-body="true" :visible.sync="dialogVisible"> - <el-form :label-position="right" label-width="80px" :model="formModel"> - <el-form-item label="娴佹按鍙�"> + <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" - :trendsSpan="24" + <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="dialogVisible = false">鍙� 娑�</el-button> - <el-button type="primary" @click="dialogVisible = false">纭� 瀹�</el-button> + <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 ,saveMaxSerialNum} from "@/api/code/maxSerialNum.js" +import { getCodePrice, saveMaxSerialNum } from "@/api/code/maxSerialNum.js" export default { name: 'maxSerialnumDialog', components: { @@ -59,12 +58,18 @@ return { dialogVisible: this.visible, activeName: 'codePrice', + confirmLoadding: false, codeApplyForm: {}, secVOList: [], formModel: { maxSecNum: '', - codeRuleOid: this.ruleOid, + codeRuleOid: '', secDTOList: [] + }, + rules: { + maxSecNum: [ + { required: true, message: '璇疯緭鍏ユ祦姘村彿', trigger: 'blur' } + ], }, selfColumnType: { codefixedsec: "combox", @@ -125,7 +130,7 @@ ); if (this.secVOList.length > 0) { // this.showCodeApply = true; - + this.$nextTick(() => { this.$refs.CodeApply.templateRender(this.secVOList); }); @@ -140,6 +145,55 @@ 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() { + console.log(this.codeApplyForm) + const objcodekey = Object.keys(this.codeApplyForm) + console.log(objcodekey) + const filteredObj = objcodekey.reduce((acc, key) => { + const pattern = /[\u4e00-\u9fa5]/; // 鍖归厤涓枃瀛楃鐨勬鍒欒〃杈惧紡 + if (!pattern.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 + console.log(this.formModel) + this.confirmLoadding = true + const rule = await this.$refs.CodeApply.validate() + this.$refs.ruleForm.validate(res => { + if (rule && res) { + console.log(rule) + saveMaxSerialNum(this.formModel).then(res => { + if (res.data.success) { + this.$message.success('鎿嶄綔鎴愬姛锛�'); + this.confirmLoadding = false + this.cancel() + } + }) + } else { + this.confirmLoadding = false + } + }) + + }, // 鍙傜収缁勪欢鏁版嵁鍙樻洿 referConfigDataUpdate(data) { // console.log(data) @@ -151,7 +205,6 @@ } return item; }); - // console.log(this.secVOList) this.$refs.CodeApply.templateRender(this.secVOList); }, isRequired(item) { diff --git a/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue b/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue index 4639d3f..ab1ee06 100644 --- a/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue +++ b/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue @@ -176,7 +176,6 @@ hidden: (!this.controllerSecret) }]; } else { - debugger; this.option.column = this.options.tableConfig.cols.map(item => { if (item.field != 'LAY_TABLE_INDEX' && item.field != 'LAY_CHECKED') { return { diff --git a/Source/UBCS-WEB/src/views/code/code.vue b/Source/UBCS-WEB/src/views/code/code.vue index 1ee6b0d..4b4fadd 100644 --- a/Source/UBCS-WEB/src/views/code/code.vue +++ b/Source/UBCS-WEB/src/views/code/code.vue @@ -658,7 +658,6 @@ <div v-show="form.secType==='codedatesec' ? true:false"> <el-form-item label="鏃ユ湡鏍煎紡:" :label-width="rightFormLabelWidth" required> <el-input ref="codeDateFormatStr" v-model="form.codeDateFormatStr" :readonly="basicSecOnlyRead"></el-input> - <span style="font-size: 12px;color: red"><i class="el-icon-warning"></i><i>鏃ユ湡鏍煎紡璇烽伒瀹� <a style="color: red;text-decoration: underline" target="_blank" href="https://v2.avuejs.com/form/form-date/#%E6%97%A5%E6%9C%9F%E6%A0%BC%E5%BC%8F%E5%8C%96">璇ユ爣鍑�</a></i></span> </el-form-item> </div> <!-- 鍒嗙被鐮佹 --> -- Gitblit v1.9.3