fujunling
2023-08-23 44246a2082c74db213faa0e2c97445ec1173068b
Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue
@@ -1,17 +1,27 @@
<template>
    <el-dialog title="最大流水号" width="30%" append-to-body="true" :visible.sync="visible">
    <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-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="dialogVisible = false">取 消</el-button>
            <el-button type="primary" @click="dialogVisible = false">确 定</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 +49,7 @@
        },
        selfColumnConfig: {
            handler(newval) {
                console.log('selfColumnConfig', newval)
                // console.log('selfColumnConfig', newval)
            },
            immediate: true,
            deep: true
@@ -51,11 +61,19 @@
            activeName: 'codePrice',
            codeApplyForm: {},
            secVOList: [],
            formModel: {
                maxSecNum: '',
                codeRuleOid: this.ruleOid,
                secDTOList: []
            },
            selfColumnType: {
                codefixedsec: "combox",
                codeclassifysec: "refer",
                codevariablesec: "text",
                codeattrsec: "text",
                codelevelsec: "text",
                coderefersec: "refer",
                codedatesec: "date",
            },
            selfColumnConfig: {
                function: {
@@ -74,6 +92,7 @@
                    label: "name",
                    maxlength: "codeSecLength",
                    data: "fixedValueVOList",
                    dateFormate: "codeDateFormatStr"
                },
                directVoluation: {
                    search: true,
@@ -86,24 +105,27 @@
        }
    },
    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);
                    });
@@ -113,14 +135,14 @@
            }
        },
        handleClick(tab, event) {
            console.log(event)
            // console.log(event)
        },
        getCodeApplyFormData(codeApplyForm) {
            this.codeApplyForm = codeApplyForm;
        },
        // 参照组件数据变更
        referConfigDataUpdate(data) {
            console.log(data)
            // console.log(data)
            const { field } = data;
            this.secVOList = this.secVOList.map((item) => {
                if (item.parentClassifySecOid === field) {
@@ -129,7 +151,7 @@
                }
                return item;
            });
            console.log(this.secVOList)
            // console.log(this.secVOList)
            this.$refs.CodeApply.templateRender(this.secVOList);
        },
        isRequired(item) {
@@ -150,7 +172,7 @@
            }
        },
        getReferConfig(item) {
            console.log(item)
            // console.log(item)
            let params = {};
            if (item.secType == "codeclassifysec") {
                params = {
@@ -199,7 +221,7 @@
            } else if (item.secType == "coderefersec") {
                params = JSON.parse(item.referValueInfo);
            }
            console.log(params)
            // console.log(params)
            return params;
        },