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