From 3eced4f79a9cf7b211e86b26b8c8ca20ae3f4576 Mon Sep 17 00:00:00 2001
From: xiejun <xiejun@vci-tech.com>
Date: 星期一, 29 一月 2024 09:44:59 +0800
Subject: [PATCH] 获取集团分类根节点前端传null传入后端直接改为空字符串bug修复
---
Source/UBCS-WEB/src/views/code/code.vue | 1152 +++++++++++++++++++++++++++++++++++----------------------
1 files changed, 706 insertions(+), 446 deletions(-)
diff --git a/Source/UBCS-WEB/src/views/code/code.vue b/Source/UBCS-WEB/src/views/code/code.vue
index 52edda4..3043cc7 100644
--- a/Source/UBCS-WEB/src/views/code/code.vue
+++ b/Source/UBCS-WEB/src/views/code/code.vue
@@ -1,150 +1,148 @@
<template>
- <basic-container class="code-total" style="height: 100%">
+ <basic-container class="code-total" style=" height: 100%">
<!-- 缂栫爜瑙勫垯淇℃伅灞曠ず鍖哄煙 -->
<basic-container class="code-rule-container">
- <p
- style="
+ <div style="height: 40vh;overflow: auto;">
+ <p
+ style="
margin-top: -5px;
margin-bottom: 4px;
font-weight: 570;
font-size: 19px;
color: #0e2d5f;
"
- >
- 缂栫爜瑙勫垯
- </p>
- <avue-crud
- ref="crud"
- v-model="ruleForm"
- :before-open="beforeOpen"
- :data="data"
- :option="optionRule"
- :page.sync="page"
- :permission="permissionList"
- :table-loading="loading"
- class="code-rule-crud"
- @row-click="codeRuleRowClick"
- @row-update="rowUpdate"
- @row-save="rowSave"
- @search-change="searchChange"
- @search-reset="searchReset"
- @selection-change="selectionChange"
- @current-change="currentChange"
- @size-change="sizeChange"
- @refresh-change="refreshChange"
- @on-load="onLoad"
- >
- <!-- 琛ㄦ牸鍐呮搷浣滄寜閽� -->
- <template slot="menu" slot-scope="scope">
- <el-button
- v-show="scope.row.lcStatus == 'Editing' ? true : false"
- icon="el-icon-edit"
- plain
- size="small"
- type="text"
- @click="openEdit(scope.row)"
+ >
+ 缂栫爜瑙勫垯
+ </p>
+ <avue-crud
+ ref="crud"
+ v-model="ruleForm"
+ :before-open="beforeOpen"
+ :data="data"
+ :option="optionRule"
+ :page.sync="page"
+ :permission="permissionList"
+ :table-loading="loading"
+ class="code-rule-crud"
+ @row-click="codeRuleRowClick"
+ @row-update="rowUpdate"
+ @row-save="rowSave"
+ @search-change="searchChange"
+ @search-reset="searchReset"
+ @selection-change="selectionChange"
+ @current-change="currentChange"
+ @size-change="sizeChange"
+ @refresh-change="refreshChange"
+ @on-load="onLoad"
+ >
+ <!-- 琛ㄦ牸鍐呮搷浣滄寜閽� -->
+ <template slot="menu" slot-scope="scope">
+ <el-button v-if="permissionList.editBtn && (scope.row.lcStatus == 'Editing' ? true : false)"
+ icon="el-icon-edit"
+ plain
+ size="small"
+ type="text"
+ @click="openEdit(scope.row)"
>缂� 杈�
- </el-button>
- <el-button
- v-show="scope.row.lcStatus == 'Editing' ? true : false"
- :loading="releadDisabled"
- icon="el-icon-position"
- plain
- size="small"
- type="text"
- @click="enableOrDeactivatse(scope.row.oid, 'release')"
+ </el-button>
+ <el-button v-if="permissionList.releaseBtn && (scope.row.lcStatus == 'Editing' ? true : false)"
+ :loading="releadDisabled"
+ icon="el-icon-position"
+ plain
+ size="small"
+ type="text"
+ @click="enableOrDeactivatse(scope.row.oid, 'release')"
>鍙� 甯�
- </el-button>
- <el-button
- v-show="scope.row.lcStatus == 'Released' ? true : false"
- icon="el-icon-video-pause"
- plain
- size="small"
- type="text"
- @click="enableOrDeactivatse(scope.row.oid, 'disable')"
+ </el-button>
+ <el-button v-if="permissionList.deactivateBtn && (scope.row.lcStatus == 'Released' ? true : false)"
+ icon="el-icon-video-pause"
+ plain
+ size="small"
+ type="text"
+ @click="enableOrDeactivatse(scope.row.oid, 'disable')"
>鍋� 鐢�
- </el-button>
- <el-button
- v-show="scope.row.lcStatus == 'Disabled' ? true : false"
- icon="el-icon-video-play"
- plain
- size="small"
- type="text"
- @click="enableOrDeactivatse(scope.row.oid, 'enable')"
+ </el-button>
+ <el-button v-if="permissionList.enableBtn && (scope.row.lcStatus == 'Disabled' ? true : false)"
+ icon="el-icon-video-play"
+ plain
+ size="small"
+ type="text"
+ @click="enableOrDeactivatse(scope.row.oid, 'enable')"
>鍚� 鐢�
- </el-button>
- </template>
- <!-- 琛ㄦ牸涓婃柟鎸夐挳鍖哄煙 -->
- <template slot="menuLeft" slot-scope="scope">
- <el-button
- icon="el-icon-delete"
- plain
- size="small"
- type="danger"
- @click="handleDelete"
- >
- 鍒� 闄�
- </el-button>
- <el-button
- icon="el-icon-search"
- plain
- size="small"
- type="primary"
- @click="openAdvancedQuery('codeRule')"
- >
- 楂樼骇鏌ヨ
- </el-button>
- <el-button
- icon="icon-kelong"
- plain
- size="small"
- @click="openCodeRuleDialog"
- >
- 鍏� 闅�
- </el-button>
- <el-button
- icon="icon-lianjiekelong"
- plain
- size="small"
- style="font-size: 12px"
- @click="openOtherCodeRuleDialog"
- >
- 浠庡叾浠栬鍒欎腑鍏嬮殕鐮佹
- </el-button>
- <el-button
- icon="el-icon-s-help"
- plain
- size="small"
- @click="handleRange"
- >
- 浣跨敤鑼冨洿
- </el-button>
- <el-button
- icon="icon-qingkong"
- plain
- size="small"
- @click="clearAllCodeSec"
- >
- 娓呯┖鐮佸��
- </el-button>
- <el-button
- icon="el-icon-guide"
- plain
- size="small"
- @click="escapeOwner"
- >
- 杞Щ鎵�鏈夎��
- </el-button>
- <el-button
- icon="el-icon-data-analysis"
- plain
- size="small"
- @click="maxSerialNum"
- >
- 鏈�澶ф祦姘村彿
- </el-button>
- </template>
- </avue-crud>
+ </el-button>
+ </template>
+ <!-- 琛ㄦ牸涓婃柟鎸夐挳鍖哄煙 -->
+ <template slot="menuLeft" slot-scope="scope">
+ <el-button v-if="permissionList.rulDelBtn"
+ icon="el-icon-delete"
+ plain
+ size="small"
+ type="danger"
+ @click="handleDelete"
+ >
+ 鍒� 闄�
+ </el-button>
+ <el-button v-if="permissionList.advancedQueryBtn"
+ icon="el-icon-search"
+ plain
+ size="small"
+ type="primary"
+ @click="openAdvancedQuery('codeRule')">
+ 楂樼骇鏌ヨ
+ </el-button>
+ <el-button v-if="permissionList.cloneBtn"
+ icon="icon-kelong"
+ plain
+ size="small"
+ @click="openCodeRuleDialog"
+ >
+ 鍏� 闅�
+ </el-button>
+ <el-button v-if="permissionList.otherCloneBtn"
+ icon="icon-lianjiekelong"
+ plain
+ size="small"
+ style="font-size: 12px"
+ @click="openOtherCodeRuleDialog"
+ >
+ 浠庡叾浠栬鍒欎腑鍏嬮殕鐮佹
+ </el-button>
+ <el-button v-if="permissionList.usescopeBtn"
+ icon="el-icon-s-help"
+ plain
+ size="small"
+ @click="handleRange"
+ >
+ 浣跨敤鑼冨洿
+ </el-button>
+ <el-button v-if="permissionList.clearBtn"
+ icon="icon-qingkong"
+ plain
+ size="small"
+ @click="clearAllCodeSec"
+ >
+ 娓呯┖鐮佸��
+ </el-button>
+ <el-button v-if="permissionList.escapeOwnerBtn"
+ icon="el-icon-guide"
+ plain
+ size="small"
+ @click="escapeOwner"
+ >
+ 杞Щ鎵�鏈夎��
+ </el-button>
+ <el-button v-if="permissionList.maxSerialnumBtn"
+ icon="el-icon-data-analysis"
+ plain
+ size="small"
+ @click="maxSerialNum"
+ >
+ 鏈�澶ф祦姘村彿
+ </el-button>
+ </template>
+ </avue-crud>
+ </div>
+
</basic-container>
<!-- 楂樼骇鏌ヨ瀵硅瘽妗� -->
@@ -178,15 +176,15 @@
<!-- 缂栫爜瑙勫垯,鍏嬮殕瀵硅瘽妗� -->
<clone-rule-dialog
- :visible.sync="cloneSettingBox"
:ruleData="selectionList[0]"
+ :visible.sync="cloneSettingBox"
@refreshRuleTable="onLoad">
</clone-rule-dialog>
<!-- 缂栫爜瑙勫垯,浠庡叾浠栬鍒欏厠闅嗗璇濇 -->
<clone-other-basic-sec-dialog
- :visible.sync="cloneOtherCodeRuleSettingBox"
:quiltCloneCodeRule="selectionList[0]"
+ :visible.sync="cloneOtherCodeRuleSettingBox"
@refreshRuleTable="onLoad">
</clone-other-basic-sec-dialog>
@@ -194,9 +192,9 @@
<el-dialog
:visible.sync="escapeOwnerVisible"
append-to-body
+ class="avue-dialog avue-dialog--top"
title="杞Щ鎵�鏈夎��"
width="30%"
- class= "avue-dialog avue-dialog--top"
>
<el-select v-model="ruleOwner" class="selects" placeholder="璇烽�夋嫨">
<el-option
@@ -222,114 +220,107 @@
<!-- 鍩虹鐮佹灞曠ず鍖哄煙 -->
<basic-container class="code-basicsec-container">
- <p
- style="
- margin-top: -5px;
+ <div style="height: 38.5vh;overflow: auto">
+ <p
+ style="margin-top: -5px;
margin-bottom: 4px;
font-weight: 570;
font-size: 19px;
- color: #0e2d5f;
- "
- >
- 鐮佹绠$悊
- </p>
- <avue-crud
- ref="crudBasic"
- :data="basicData"
- :option="optionBasic"
- :permission="permissionList"
- :table-loading="loadingBasic"
- class="code-basic-crud"
- @row-click="codeBasicSecRowClick"
- @search-change="basicSearchChange"
- @search-reset="basicSearchReset"
- @selection-change="selectionBasicChange"
- @refresh-change="refreshChangeBasicSec"
- >
- <!-- 鍩虹鐮佹琛ㄦ牸鍐呮搷浣滄寜閽� -->
- <template slot="menu" slot-scope="scope">
- <el-button
- v-show="currentRuleLcStatus != 'Editing'"
- icon="el-icon-view"
- plain
- size="small"
- type="text"
- @click="openBasicDialog('view', scope.row)"
+ color: #0e2d5f;">
+ 鐮佹绠$悊
+ </p>
+ <avue-crud
+ ref="crudBasic"
+ :data="basicData"
+ :option="optionBasic"
+ :permission="basicPermissionList"
+ :table-loading="loadingBasic"
+ class="code-basic-crud"
+ @row-click="codeBasicSecRowClick"
+ @search-change="basicSearchChange"
+ @search-reset="basicSearchReset"
+ @selection-change="selectionBasicChange"
+ @refresh-change="refreshChangeBasicSec"
+ >
+ <!-- 鍩虹鐮佹琛ㄦ牸鍐呮搷浣滄寜閽� -->
+ <template slot="menu" slot-scope="scope">
+ <el-button v-if="basicPermissionList.viewBtn && currentRuleLcStatus != 'Editing'"
+ icon="el-icon-view"
+ plain
+ size="small"
+ type="text"
+ @click="openBasicDialog('view', scope.row)"
>鏌ョ湅
- </el-button>
- <el-button
- v-show="currentRuleLcStatus === 'Editing'"
- icon="el-icon-edit"
- plain
- size="small"
- type="text"
- @click="openBasicDialog('edit', scope.row)"
+ </el-button>
+ <el-button v-if="basicPermissionList.editBtn && currentRuleLcStatus === 'Editing'"
+ icon="el-icon-edit"
+ plain
+ size="small"
+ type="text"
+ @click="openBasicDialog('edit', scope.row)"
>缂栬緫
- </el-button>
- <el-button
- v-show="
- scope.row.secType === 'codeclassifysec' ||
- scope.row.secType == 'codefixedsec'
- "
- icon="el-icon-setting"
- plain
- size="small"
- type="text"
- @click="openBasicSecCodeValueMgr(scope.row)"
+ </el-button>
+ <el-button
+ v-if="basicPermissionList.basicMgrBtn && (scope.row.secType === 'codeclassifysec' || scope.row.secType == 'codefixedsec')"
+ icon="el-icon-setting"
+ plain
+ size="small"
+ type="text"
+ @click="openBasicSecCodeValueMgr(scope.row)"
>鐮佸�肩鐞�
- </el-button>
- <el-button
- v-show="scope.row.orderNum > 1"
- icon="el-icon-arrow-up"
- plain
- size="small"
- type="text"
- @click="upOrderNum(scope.row)"
+ </el-button>
+ <el-button v-if="basicPermissionList.basicMoveupBtn && scope.row.orderNum > 1"
+ icon="el-icon-arrow-up"
+ plain
+ size="small"
+ type="text"
+ @click="upOrderNum(scope.row)"
>涓婄Щ
- </el-button>
- <el-button
- icon="el-icon-arrow-down"
- plain
- size="small"
- type="text"
- @click="downOrderNum(scope.row)"
+ </el-button>
+ <el-button v-if="basicPermissionList.basicDownBtn"
+ icon="el-icon-arrow-down"
+ plain
+ size="small"
+ type="text"
+ @click="downOrderNum(scope.row)"
>涓嬬Щ
- </el-button>
- </template>
+ </el-button>
+ </template>
- <!-- 鍩虹鐮佹琛ㄦ牸宸︿笂鏂规寜閽尯鍩� -->
- <template slot="menuLeft" slot-scope="scope">
- <el-button
- :disabled="selectionList.length <= 0"
- icon="el-icon-plus"
- size="small"
- type="primary"
- @click="openAddBasicCodeSec"
- >
- 鏂� 澧�
- </el-button>
- <el-button
- :disabled="selectionList.length <= 0"
- icon="el-icon-delete"
- plain
- size="small"
- type="danger"
- @click="deleteBasicCode(scope.row)"
- >
- 鍒� 闄�
- </el-button>
- <el-button
- :disabled="selectionList.length <= 0"
- icon="el-icon-search"
- plain
- size="small"
- type="primary"
- @click="openAdvancedQuery('codeBasicSec')"
- >
- 楂樼骇鏌ヨ
- </el-button>
- </template>
- </avue-crud>
+ <!-- 鍩虹鐮佹琛ㄦ牸宸︿笂鏂规寜閽尯鍩� -->
+ <template slot="menuLeft" slot-scope="scope">
+ <el-button v-if="basicPermissionList.addBtn"
+ :disabled="selectionList.length <= 0"
+ icon="el-icon-plus"
+ size="small"
+ type="primary"
+ @click="openAddBasicCodeSec"
+ >
+ 鏂� 澧�
+ </el-button>
+ <el-button v-if="basicPermissionList.basicDelBtn"
+ :disabled="selectionList.length <= 0"
+ icon="el-icon-delete"
+ plain
+ size="small"
+ type="danger"
+ @click="deleteBasicCode(scope.row)"
+ >
+ 鍒� 闄�
+ </el-button>
+ <el-button v-if="basicPermissionList.basicAdvancedQueryBtn"
+ :disabled="selectionList.length <= 0"
+ icon="el-icon-search"
+ plain
+ size="small"
+ type="primary"
+ @click="openAdvancedQuery('codeBasicSec')"
+ >
+ 楂樼骇鏌ヨ
+ </el-button>
+ </template>
+ </avue-crud>
+ </div>
</basic-container>
<!-- 鐮佹鐮佸�肩鐞嗗璇濇 -->
@@ -377,7 +368,7 @@
size="mini"
type="primary"
@click="codeClassifyValueOpetion('up')"
- >涓婄Щ
+ >涓婄Щ
</el-button>
<el-button
class="button"
@@ -385,7 +376,7 @@
size="mini"
type="primary"
@click="codeClassifyValueOpetion('down')"
- >涓嬬Щ
+ >涓嬬Щ
</el-button>
</div>
</basic-container>
@@ -413,16 +404,14 @@
margin-top: 20px;
display: flex;
align-items: center;
- justify-content: center;
- "
- >
+ justify-content: center;">
<el-button
class="button"
icon="el-icon-circle-plus"
size="mini"
type="primary"
@click="addCodeSecValue('codeclassifyvaluesec')"
- >娣诲姞
+ >娣诲姞
</el-button>
<el-button
:disabled="selectedFixedOrCodeclassifyValue == ''"
@@ -432,7 +421,7 @@
size="mini"
type="success"
@click="editCodeSecValue('codeclassifyvaluesec')"
- >淇敼
+ >淇敼
</el-button>
<el-button
:disabled="selectedFixedOrCodeclassifyValue == ''"
@@ -441,7 +430,7 @@
size="mini"
type="danger"
@click="delCodeSecValue('codeclassifyvaluesec')"
- >鍒犻櫎
+ >鍒犻櫎
</el-button>
<el-button
class="button"
@@ -450,7 +439,7 @@
size="mini"
type="warning"
@click="clearFixedOrClassifyForm('codeclassifyvaluesec')"
- >鍙栨秷
+ >鍙栨秷
</el-button>
</div>
</basic-container>
@@ -479,21 +468,21 @@
size="mini"
type="text"
@click="codeFixedValueOpetion('up', scope.row)"
- >涓婄Щ
+ >涓婄Щ
</el-button>
<el-button
icon="el-icon-arrow-down"
size="mini"
type="text"
@click="codeFixedValueOpetion('down', scope.row)"
- >涓嬬Щ
+ >涓嬬Щ
</el-button>
<el-button
icon="el-icon-minus"
size="mini"
type="text"
@click="codeFixedValueOpetion('remove', scope.row)"
- >绉婚櫎
+ >绉婚櫎
</el-button>
</template>
</avue-crud>
@@ -505,7 +494,7 @@
size="mini"
type="primary"
@click="saveCodeFixedOrClassifyValueOption('fixedValue')"
- >淇濆瓨
+ >淇濆瓨
</el-button>
</div>
</basic-container>
@@ -549,7 +538,7 @@
size="mini"
type="primary"
@click="addCodeSecValue('codefixedsec')"
- >娣诲姞
+ >娣诲姞
</el-button>
<el-button
:disabled="selectedFixedOrCodeclassifyValue == ''"
@@ -559,7 +548,7 @@
size="mini"
type="success"
@click="editCodeSecValue('codefixedsec')"
- >淇敼
+ >淇敼
</el-button>
<el-button
:disabled="selectedFixedOrCodeclassifyValue == ''"
@@ -568,7 +557,7 @@
size="mini"
type="danger"
@click="delCodeSecValue('codefixedsec')"
- >鍒犻櫎
+ >鍒犻櫎
</el-button>
<el-button
class="button"
@@ -577,7 +566,7 @@
size="mini"
type="warning"
@click="clearFixedOrClassifyForm('codefixedsec')"
- >鍙栨秷
+ >鍙栨秷
</el-button>
</div>
</basic-container>
@@ -591,17 +580,17 @@
:title="basicSecDialogTitle"
:visible.sync="addBasicCodeSettingBox"
append-to-body
- class="avue-dialog avue-dialog--top"
+ class="avue-dialog avue-dialog--top add-basicsec-dialog"
destroy-on-close
lock-scroll
- style="height: 100vh"
+ style="height: 105vh"
top="-3%"
width="900px"
@close="clearBasicAddForm"
>
<!-- 绗竴灞傚璇濇,娣诲姞鐮佹淇℃伅瀵硅瘽妗嗕腑鐨勫唴瀹� -->
- <div class="add-basicsec-total" style="overflow-y: auto; height: 58vh">
- <el-form :model="form" class="add-basicsec-form">
+ <div class="add-basicsec-total">
+ <el-form :model="form" :rules="rules" class="add-basicsec-form">
<span class="left">
<el-form-item
:label-width="leftFormLabelWidth"
@@ -629,7 +618,7 @@
<el-form-item
:label-width="leftFormLabelWidth"
- label="鐮佹绫诲瀷"
+ label="鐮佹绫诲瀷:"
required
>
<el-select
@@ -644,6 +633,40 @@
:label="item.itemName"
:value="item.itemValue"
>
+ </el-option>
+ </el-select>
+ </el-form-item>
+
+ <el-form-item
+ :label-width="leftFormLabelWidth"
+ label="鍓嶇紑:">
+ <!-- <el-input
+ v-model="form.prefixCode"
+ :readonly="basicSecOnlyRead"
+ ></el-input> -->
+ <el-select v-model="form.prefixCode" :disabled="basicSecOnlyRead" clearable>
+ <el-option
+ v-for="(option, index) in preFixOrSuffixChars"
+ :key="index"
+ :label="option.label"
+ :value="option.value">
+ </el-option>
+ </el-select>
+ </el-form-item>
+
+ <el-form-item
+ :label-width="leftFormLabelWidth"
+ label="鍚庣紑:">
+ <!-- <el-input
+ v-model="form.suffixCode"
+ :readonly="basicSecOnlyRead">
+ </el-input> -->
+ <el-select v-model="form.suffixCode" :disabled="basicSecOnlyRead" clearable>
+ <el-option
+ v-for="(option, index) in preFixOrSuffixChars"
+ :key="index"
+ :label="option.label"
+ :value="option.value">
</el-option>
</el-select>
</el-form-item>
@@ -665,12 +688,12 @@
:disabled="basicSecOnlyRead"
style="margin-right: 20px"
></el-switch>
- <el-input-number
+ <!-- <el-input-number
v-show="form.serialDependFlag"
v-model="form.serialDependOrder"
:readonly="basicSecOnlyRead"
controls-position="right"
- ></el-input-number>
+ ></el-input-number> -->
</el-form-item>
<el-form-item :label-width="leftFormLabelWidth" label="鏄惁涓虹┖:">
@@ -829,13 +852,13 @@
:disabled="basicSecOnlyRead"
filterable
placeholder="璇烽�夋嫨"
- @blur="inputSelectBlur"
+ clearable
>
<el-option
v-for="item in enumParam.codeFillSeparator"
- :key="item.itemValue"
- :label="item.itemName"
- :value="item.itemValue"
+ :key="item.lable"
+ :label="item.lable"
+ :value="item.value"
>
</el-option>
</el-select>
@@ -876,10 +899,19 @@
:label-width="rightFormLabelWidth"
label="鑷畾涔夌殑娴佹按绠楁硶:"
>
- <el-input
- v-model="form.customCodeSerialClass"
- :readonly="basicSecOnlyRead"
- ></el-input>
+ <template>
+ <vciWebRefer
+ ref="refer"
+ :display="true"
+ :referConfig="this.referConfig || {}"
+ :serialType="form.serialType"
+ :text="form.customCodeSerialClassText"
+ :value="form.customCodeSerialClass"
+ @setReferValue="setReferValue"
+ ></vciWebRefer>
+ </template>
+
+
</el-form-item>
</div>
<!-- 灞傜骇鐮佹 -->
@@ -893,6 +925,7 @@
v-model="form.codeLevelType"
:disabled="basicSecOnlyRead"
placeholder="璇烽�夋嫨"
+ @change="changeLevelType"
>
<el-option
v-for="item in enumParam.codeLevelType"
@@ -911,6 +944,7 @@
ref="codeLevelValue"
v-model.number="form.codeLevelValue"
:readonly="basicSecOnlyRead"
+ :disabled="form.codeLevelType != 'code_level_special'"
></el-input>
</el-form-item>
<el-form-item
@@ -1012,7 +1046,7 @@
<el-form-item
:label-width="rightFormLabelWidth"
label="鏃ユ湡鏍煎紡:"
- required
+ prop="Dateformat"
>
<el-input
ref="codeDateFormatStr"
@@ -1124,13 +1158,13 @@
:disabled="basicSecOnlyRead"
filterable
placeholder="璇烽�夋嫨"
- @blur="inputSelectBlur"
+ clearable
>
<el-option
v-for="item in enumParam.codeFillSeparator"
- :key="item.itemValue"
- :label="item.itemName"
- :value="item.itemValue"
+ :key="item.lable"
+ :label="item.lable"
+ :value="item.value"
>
</el-option>
</el-select>
@@ -1140,13 +1174,14 @@
</el-form>
</div>
<!-- 绗竴灞傚璇濇鐨勬寜閽拰鍒嗛殧绾挎潯 -->
- <el-divider class="horizontal-line" direction="horizontal"></el-divider>
+ <!-- <el-divider class="horizontal-line" direction="horizontal"></el-divider> -->
<div slot="footer" class="dialog-footer">
<el-button
:disabled="!showbtn"
- type="primary"
:loading="isLoadingSecCodeAddBtn"
- @click="saveOrEditBasicCode">淇� 瀛�</el-button>
+ type="primary"
+ @click="saveOrEditBasicCode">淇� 瀛�
+ </el-button>
<el-button @click="addBasicCodeSettingBox = false">鍙� 娑�</el-button>
</div>
@@ -1201,9 +1236,7 @@
</el-row>
</div>
<div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="selectedListClassifyLinkAttr"
- >纭� 瀹�</el-button
- >
+ <el-button type="primary" @click="selectedListClassifyLinkAttr">纭� 瀹�</el-button>
<el-button @click="isShowSelectAttrOption = false">鍙� 娑�</el-button>
</div>
</el-dialog>
@@ -1245,11 +1278,13 @@
</avue-crud>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="saveSelectedParentClassify"
- >淇� 瀛�</el-button
+ >淇� 瀛�
+ </el-button
>
<el-button
@click="parentClsfyParams.isShowParentClassifySettingBox = false"
- >鍙� 娑�</el-button
+ >鍙� 娑�
+ </el-button
>
</div>
</el-dialog>
@@ -1270,6 +1305,9 @@
>
</refer-config-dialog>
</el-dialog>
+
+ <!--鑷畾涔夋祦姘村弬鐓х粍浠�-->
+
</basic-container>
</template>
@@ -1294,7 +1332,7 @@
addSave,
refDataGridClassifySec,
} from "@/api/code/codebasic";
-import { listClassifyLinkAttr } from "@/api/code/codeclassify";
+import {listClassifyLinkAttr} from "@/api/code/codeclassify";
import {
gridCodeFixedValue,
addSaveCodeFixedValue,
@@ -1309,7 +1347,9 @@
deleteCodeClassifyValue,
saveCodeClassifyValueOrder,
} from "@/api/code/codeClassifyValue";
-import { getDictionary } from "@/api/omd/enum";
+import { getSelectList, getRegexStr } from "@/api/code/codeCharcter"
+import {getDictionary} from "@/api/omd/enum";
+// import {getDictionaryBiz} from "@/api/system/dictbiz";
import optionBasic from "@/const/code/codebasic";
import optionRule from "@/const/code/mdmrule";
import attrOption from "@/const/code/selectAttrOptionDialog";
@@ -1317,14 +1357,88 @@
import classisyValueTreeOption from "@/const/code/classisyValueTreeDialog";
import parentClassifyParentOption from "@/const/code/parentClassifyParentOptionDialog";
import fixedValueOption from "@/const/code/fixedValueMgrDialog";
-import { mapGetters } from "vuex";
-import { getByRoleUserList } from "@/api/system/user";
+import {mapGetters} from "vuex";
+import {getByRoleUserList} from "@/api/system/user";
import func from "@/util/func";
+import secTypeEnum from '@/enumpack/CodeSecTypeEnum';
+import vciWebRefer from "../../components/refer/vciWebRefer";
export default {
+ components: {vciWebRefer},
data() {
return {
- crudOption:{...optionRule},
+ rules: {
+ Dateformat: [
+ {
+ required: true,
+ trigger: 'blur',
+ validator: (rule, value, callback) => {
+ const Formats = [
+ 'yy',
+ 'yyyy',
+ 'yy-MM',
+ 'yyMM',
+ 'yyyy-MM',
+ 'yyyyMM',
+ 'yy-MM-dd',
+ 'yyMMdd',
+ 'yyyy-MM-dd',
+ 'yyyyMMdd',
+ 'yyyy-MM-dd HH:mm:ss',
+ 'yy-MM-dd HH:mm:ss',
+ 'HH:mm:ss',
+ 'yyyyMMdd HH:mm:ss',
+ 'yyMMdd HH:mm:ss',
+ 'yyyy-MM-dd HHmmss',
+ 'yy-MM-dd HHmmss',
+ 'yyyyMMdd HHmmss',
+ 'yyMMdd HHmmss',
+ 'HHmmss'
+ ];
+ if (!Formats.includes(this.form.codeDateFormatStr)) {
+ return callback(new Error('璇疯緭鍏ユ纭棩鏈熸牸寮忥紝渚嬪yyyy-MM-dd锛堝苟鍖哄垎澶у皬鍐欙級锛�'));
+ }
+ callback();
+ }
+ }
+ ]
+ },
+ referConfig: {
+ title: '鑷畾涔夋祦姘村弬鐓�',
+ showField: 'customCodeSerialClassText',
+ field: 'customCodeSerialClass',
+ fieldMap: {
+ serialType: "serialType"
+ },
+ placeholder: '璇烽�夋嫨鑷畾涔夋祦姘�',
+ options: {
+ // 璁剧疆榛樿鐨勫睘鎬�
+ url: 'api/ubcs-code/codeSerialAlgorithmController/gridCodeSerialAlgorithm',
+ textField: 'name',
+ valueField: 'classFullName',
+ isMuti: false,
+ type: "grid",
+ method: 'get',
+ tableConfig: {
+ page: {
+ limit: 15,
+ page: 1
+ },
+ cols: [
+ {title: '绠楁硶缂栧彿', field: 'id', width: 200},
+ {title: '绠楁硶鍚嶇О', field: 'name', width: 150},
+ {title: '绫诲叏璺緞', field: 'classFullName', width: 300},
+ {title: '绫诲瀷', field: 'serialType', width: 300},
+ {title: '鎻忚堪', field: 'description'}
+ ],
+ queryColumns: [
+ // {field: 'id', title: '绠楁硶缂栧彿'},
+ // {field: 'name', title: '绠楁硶鍚嶇О'}
+ ]
+ }
+ }
+ },
+ crudOption: {...optionRule},
ruleForm: {},
query: {},
loading: true,
@@ -1547,8 +1661,10 @@
secType: "codefixedsec", //鐮佹绫诲瀷
description: "", //鎻忚堪
serialDependFlag: false, //鏄惁娴佹按渚濊禆
- serialDependOrder: "", //娴佹按渚濊禆椤哄簭
+ //serialDependOrder: "", //娴佹按渚濊禆椤哄簭
nullableFlag: false, //鏄惁涓虹┖
+ prefixCode: "", //鍓嶇紑
+ suffixCode: "", //鍚庣紑
displayFlag: false, //
componentCodeFlag: false, //鏄惁鍙備笌缂栫爜
pkCodeRule: "", //鎵�灞炵紪鐮佽鍒�
@@ -1581,17 +1697,44 @@
//寮曠敤鐮佹涓弬鐓ч厤缃粍浠剁浉鍏冲弬鏁�
referConfigOption: {},
referConfigVisble: false,
+
+ preFixOrSuffixChars: [], //鍓嶅悗缂�瀛楃鍒楄〃
+
};
},
computed: {
...mapGetters(["permission"]),
permissionList() {
return {
- addBtn: this.vaildData(this.permission.codeRule_add, true),
- viewBtn: this.vaildData(this.permission.codeRule_view, false),
- delBtn: this.vaildData(this.permission.plCodeRule_delete, false),
- editBtn: this.vaildData(this.permission.codeRule_edit, true),
+ // 缂栫爜瑙勫垯鐩稿叧鎸夐挳
+ addBtn: this.vaildData(this.permission.code_rule.code_rule_add, false),
+ //viewBtn: this.vaildData(this.permission.code_rule.code_rule_view, false),
+ rulDelBtn: this.vaildData(this.permission.code_rule.code_rule_delete, false),
+ editBtn: this.vaildData(this.permission.code_rule.code_rule_edit, false),
+ deactivateBtn: this.vaildData(this.permission.code_rule.code_rule_deactivate, false),
+ enableBtn: this.vaildData(this.permission.code_rule.code_rule_enable, false),
+ releaseBtn: this.vaildData(this.permission.code_rule.code_rule_release, false),
+ advancedQueryBtn: this.vaildData(this.permission.code_rule.code_rule_advanced_query, false),
+ cloneBtn: this.vaildData(this.permission.code_rule.code_rule_clone, false),
+ otherCloneBtn: this.vaildData(this.permission.code_rule.code_rule_other_clone, false),
+ usescopeBtn: this.vaildData(this.permission.code_rule.code_rule_usescope, false),
+ clearBtn: this.vaildData(this.permission.code_rule.code_rule_clear, false),
+ escapeOwnerBtn: this.vaildData(this.permission.code_rule.code_rule_escape_owner, false),
+ maxSerialnumBtn: this.vaildData(this.permission.code_rule.code_rule_max_serialnum, false),
};
+ },
+ basicPermissionList() {
+ return {
+ // 鍩虹鐮佹鐩稿叧鎸夐挳
+ addBtn: this.vaildData(this.permission.code_rule.code_basic_add, false),
+ editBtn: this.vaildData(this.permission.code_rule.code_basic_edit, false),
+ viewBtn: this.vaildData(this.permission.code_rule.code_basic_view, false),
+ basicDelBtn: this.vaildData(this.permission.code_rule.code_basic_delete, false),
+ basicAdvancedQueryBtn: this.vaildData(this.permission.code_rule.code_basic_advanced_query, false),
+ basicMgrBtn: this.vaildData(this.permission.code_rule.code_basic_mgr, false),
+ basicMoveupBtn: this.vaildData(this.permission.code_rule.code_basic_moveup, false),
+ basicDownBtn: this.vaildData(this.permission.code_rule.code_basic_down, false),
+ }
},
},
watch: {},
@@ -1605,8 +1748,26 @@
this.$refs.crudBasic.doLayout();
});
},
+ // 鐢熷懡閽╁瓙鍑芥暟
+ beforeDestroy() {
+ // 娓呴櫎鎸囧畾缂撳瓨
+ localStorage.removeItem('codeSecType');
+ localStorage.removeItem('codeSecLength');
+ localStorage.removeItem('codeFillType');
+ localStorage.removeItem('codeLevelType');
+ localStorage.removeItem('codeCutType');
+ localStorage.removeItem('codeGetValueType');
+ },
methods: {
+ //鑷畾涔夋祦姘村け鐒�
+ setReferValue(data) {
+ if (data.field) {
+ this.form[data.field] = data.value || "";
+ this.form[data.showField] = data.text || "";
+ this.form.serialType = data.rawData[0].serialType || "";
+ }
+ },
/** 杞Щ瑙勫垯鎵�鏈夎�呭璇濇 */
escapeOwner() {
if (this.selectionList.length === 0) {
@@ -1647,11 +1808,11 @@
if (JSON.stringify(conditionMaps) != "{}") {
if (this.advancedQueryParam.currentOpen == "codeRule") {
this.query = conditionMaps;
+ // console.log(this.query);
this.onLoad(this.page);
} else {
this.sendGridCodeBasicSec(conditionMaps, true);
}
- //console.log(conditionMaps);
}
},
/* 鍏紡缂栬緫妗嗗唴瀹规敼鍙�,瀛愮粍浠剁紪杈戝畬鍏紡涔嬪悗鍐呭鍥炴樉鏃惰皟鐢� */
@@ -1660,12 +1821,12 @@
},
/* 寮曠敤鐮佹鍙傜収閰嶇疆,瀛愮粍浠跺~瀹屽弬鐓ч厤缃箣鍚庡唴瀹瑰洖鏄炬椂璋冪敤 */
setReferConfigValue(content) {
- // console.log(content.referTypeName);
this.form.referBtmId = content.referType || "";
this.form.referBtmName = content.referTypeName || content.referType;
//杞崲鎴怞SON瀛楃涓茶繘琛岀埗缁勪欢鍥炴樉
let submitFormJson = JSON.stringify(content);
this.form.referConfig = submitFormJson || "";
+ // debugger;
},
/** 寮曠敤鐮佹涓恒�愬弬鐓у紩鐢ㄧ殑涓氬姟绫诲瀷銆戦�夊彇鍊间箣鍚庣殑鍐呭鍥炴樉鏃惰皟鐢� */
echoReferBtmType(content) {
@@ -1677,7 +1838,6 @@
/** 鐖跺垎绫婚�夋嫨瀵硅瘽妗嗭紝绗簩灞傚祵濂楀璇濇锛屽強鍏剁浉鍏虫柟娉� */
/** 淇濆瓨褰撳墠鐖跺垎绫荤爜娈电殑閫変腑琛岋紝骞惰繘琛屽洖鏄� */
saveSelectedParentClassify() {
- //console.log(this.parentClsfyParams.parentClassifySelectionList.length);
if (this.parentClsfyParams.parentClassifySelectionList.length != 1) {
this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�!");
return false;
@@ -1745,7 +1905,6 @@
page.pageSize,
conditionMaps
).then((res) => {
- //console.log(res.data);
const data = res.data.data;
parentClsParam.parentClassifyDataPage.total = data.total;
parentClsParam.parentClassifyData = data.records;
@@ -1763,7 +1922,6 @@
/** 鍔犺浇鍒嗙被杩炴帴灞炴�ц〃鏍兼暟鎹� */
loadlistClassifyLinkAttr() {
let attrParam = this.selectAttrParams;
- //console.log(this.currentSelectTreeData);
this.selectAttrParams.selectAttrOptionLoading = true;
let conditionMaps = {};
if (attrParam.selectAttrQeury) {
@@ -1781,7 +1939,6 @@
this.$nextTick(() => {
this.$refs[attrParam.ref].doLayout();
});
- //console.log(data.data);
this.selectAttrParams.selectAttrData = data.data;
this.selectAttrParams.selectAttrOptionLoading = false;
// 灏嗘悳绱㈡鍐呭缃┖
@@ -1849,24 +2006,25 @@
/** 鍔犺浇鍥哄畾鐮佹鐮佸�艰〃鏁版嵁*/
loadFixedValueTableData(row) {
this.fixedValueOptionLoading = true;
- gridCodeFixedValue(1, -1, { codeFixedSecOid: row.oid }).then((res) => {
+ gridCodeFixedValue(1, -1, {codeFixedSecOid: row.oid}).then((res) => {
this.fixedValueData = res.data.data.records;
- //console.log(this.fixedValueData);
this.fixedValueOptionLoading = false;
});
},
/** 鍗曞嚮鍥哄畾鐮佹鐨勭爜鍊艰〃涓鏃惰Е鍙戠殑浜嬩欢*/
selectedCodeValueRow(row) {
- //console.log(row);
this.selectedFixedOrCodeclassifyValue = row;
this.codeFixdForm.id = row.id;
this.codeFixdForm.description = row.description;
this.codeFixdForm.codeFixedSecOid = row.codefixedsecoid;
},
/** 鏂板鐮佸��*/
- addCodeSecValue(condition) {
+ async addCodeSecValue(condition) {
if (condition === "codefixedsec") {
if (!this.tipsCodeSecValueMessage(this.codeFixdForm.id)) {
+ return;
+ }
+ if(!await this.regexCharacter(this.codeFixdForm.id)){
return;
}
this.codeFixdForm.codeFixedSecOid = this.codefixedsecOrCodeclassifysec.oid;
@@ -1891,9 +2049,11 @@
if (!this.tipsCodeSecValueMessage(this.codeClassifyForm.id)) {
return;
}
+ if(!await this.regexCharacter(this.codeClassifyForm.id)){
+ return;
+ }
this.codeClassifyForm.codeClassifySecOid =
this.codefixedsecOrCodeclassifysec.oid;
- // console.log(this.codeClassifyForm);
addSaveCodeClassifyValue(this.codeClassifyForm).then(
() => {
this.loadClassifyValueData({
@@ -1914,40 +2074,13 @@
);
}
},
- /** 娓呯┖鐮佸�艰〃鍗� */
- clearFixedOrClassifyForm(condition) {
- //鐐瑰嚮鍙栨秷鏃舵竻绌鸿〃鍗曚笌褰撳墠閫変腑鐨勭爜鍊硷紝骞剁鐢ㄦ寜閽�
- this.selectedFixedOrCodeclassifyValue = "";
- //console.log(condition);
- if (condition === "close") {
- this.codeFixdForm = this.$options.data().codeFixdForm;
- this.codeClassifyForm = this.$options.data().codeClassifyForm;
- }
- if (condition === "codefixedsec") {
- this.codeFixdForm.description = "";
- this.codeFixdForm.codeFixedSecOid = "";
- } else {
- this.codeClassifyForm = this.$options.data().codeClassifyForm;
- }
- },
- /** 娣诲姞鎴栦慨鏀圭爜鍊间箣鍓嶅鐮佸�奸暱搴︽牴鎹鍒欒繘琛屾牎楠� */
- tipsCodeSecValueMessage(id) {
- if (id.trim() == "") {
- this.$message.warning("鐮佸�间笉鑳戒负绌猴紒");
- return false;
- }
- if (id.trim().length > this.codefixedsecOrCodeclassifysec.codeSecLength) {
- this.$message.warning(
- "鐮佸�奸暱搴︿笉鑳藉ぇ浜�" + this.codefixedsecOrCodeclassifysec.codeSecLength
- );
- return false;
- }
- return true;
- },
/** 淇敼鐮佸�� */
- editCodeSecValue(condition) {
+ async editCodeSecValue(condition) {
if (condition == "codefixedsec") {
if (!this.tipsCodeSecValueMessage(this.codeFixdForm.id)) {
+ return;
+ }
+ if(!await this.regexCharacter(this.codeFixdForm.id)){
return;
}
//浠ュ墠鏄洿鎺ユ妸褰撳墠閫変腑琛岀殑鎵�鏈夋暟鎹兘杩涜鎻愪氦锛屼絾鍏跺疄鍙渶瑕佷紶杈撲竴浜涘繀瑕佸弬鏁板嵆鍙紝杩欏効鍋氫簡淇敼锛岄渶瑕佷紶鍏朵粬鍙傛暟鐨勮鑷娣诲姞
@@ -1957,7 +2090,7 @@
description: this.codeFixdForm.description,
id: this.codeFixdForm.id,
codeFixedSecOid:
- this.selectedFixedOrCodeclassifyValue.codefixedsecoid,
+ this.selectedFixedOrCodeclassifyValue.codefixedsecoid,
};
editCodeFixedValue(editData).then(
() => {
@@ -1975,6 +2108,9 @@
);
} else {
if (!this.tipsCodeSecValueMessage(this.codeClassifyForm.id)) {
+ return;
+ }
+ if(!await this.regexCharacter(this.codeClassifyForm.id)){
return;
}
this.codeClassifyForm.oid =
@@ -2004,6 +2140,54 @@
}
);
}
+ },
+ /**
+ * 鍙敤瀛楃闆嗙爜鍊兼鍒欐牎楠�
+ * @return true:婊¤冻闄愬埗锛宖alse锛氫笉婊¤冻闄愬埗
+ */
+ async regexCharacter(str){
+ var regex = null;
+ // 鑾峰彇鍒伴厤缃ソ鐨勫彲鐢ㄥ瓧绗︽鍒�
+ await getRegexStr({codeRuleId: this.selectionList[0].oid,chartType: "charset"}).then(res=>{
+ // console.log(res.data.data);
+ regex = new RegExp(res.data.data);
+ });
+ // console.log(regex);
+ // console.log(regex.test(str));
+ if(regex != "" && !regex.test(str)){
+ this.$message.warning("娣诲姞鐨勭爜鍊兼湭鍦ㄥ彲鐢ㄥ瓧绗﹂泦涓厤缃紒");
+ return false;
+ }
+ return true;
+ },
+ /** 娓呯┖鐮佸�艰〃鍗� */
+ clearFixedOrClassifyForm(condition) {
+ //鐐瑰嚮鍙栨秷鏃舵竻绌鸿〃鍗曚笌褰撳墠閫変腑鐨勭爜鍊硷紝骞剁鐢ㄦ寜閽�
+ this.selectedFixedOrCodeclassifyValue = "";
+ if (condition === "close") {
+ this.codeFixdForm = this.$options.data().codeFixdForm;
+ this.codeClassifyForm = this.$options.data().codeClassifyForm;
+ }
+ if (condition === "codefixedsec") {
+ this.codeFixdForm.description = "";
+ this.codeFixdForm.codeFixedSecOid = "";
+ } else {
+ this.codeClassifyForm = this.$options.data().codeClassifyForm;
+ }
+ },
+ /** 娣诲姞鎴栦慨鏀圭爜鍊间箣鍓嶅鐮佸�奸暱搴︽牴鎹鍒欒繘琛屾牎楠� */
+ tipsCodeSecValueMessage(id) {
+ if (id.trim() == "") {
+ this.$message.warning("鐮佸�间笉鑳戒负绌猴紒");
+ return false;
+ }
+ if (id.trim().length > this.codefixedsecOrCodeclassifysec.codeSecLength) {
+ this.$message.warning(
+ "鐮佸�奸暱搴︿笉鑳藉ぇ浜�" + this.codefixedsecOrCodeclassifysec.codeSecLength
+ );
+ return false;
+ }
+ return true;
},
/** 鍒犻櫎鐮佸�� */
delCodeSecValue(condition) {
@@ -2312,6 +2496,12 @@
queryField: "lcStatus",
comboxKey: "codeSearchLCStatus",
},
+ {
+ data: [],
+ title: "鎵�鏈夎��",
+ fieldType: "text",
+ queryField: "ownerText",
+ },
];
} else {
this.advancedQueryParam.options = [
@@ -2329,6 +2519,8 @@
},
{
data: [],
+
+
title: "鎻忚堪",
fieldType: "text",
queryField: "description",
@@ -2372,7 +2564,7 @@
},
/** 淇敼瑙勫垯鐘舵��:鍚敤銆佸仠鐢ㄣ�佸彂甯� */
updateStatus(oid, update) {
- updateStatus({ oid: oid, ts: new Date().getTime, update: update }).then(
+ updateStatus({oid: oid, ts: new Date().getTime, update: update}).then(
() => {
this.releadDisabled = false;
this.onLoad(this.page);
@@ -2389,14 +2581,14 @@
/** 鍙戝竷缂栫爜瑙勫垯 */
async enableOrDeactivatse(oid, update) {
if (update === "release") {
- this.releadDisabled = true;
// 閬垮厤鐢ㄦ埛閲嶅鐐瑰嚮鎸夐挳
+ this.releadDisabled = true;
await checkLikeCodeRule(oid)
.then((res) => {
//console.log(res)
if (res.data.data.success) {
this.updateStatus(oid, update);
- }else {
+ } else {
this.$confirm(res.data.data.msg, "鎻愮ず", {
distinguishCancelAndClose: true,
confirmButtonText: "缁х画鍙戝竷",
@@ -2412,15 +2604,14 @@
this.releadDisabled = false;
});
}
- })
- .catch((error) => {
+ }).catch((error) => {
this.releadDisabled = false;
});
+ this.releadDisabled = false;
} else {
this.updateStatus(oid, update);
}
},
-
/** 鎵撳紑缂栫爜瑙勫垯鍏嬮殕瀵硅瘽妗�*/
openCodeRuleDialog() {
if (!this.tipsMessage(this.selectionList)) {
@@ -2428,7 +2619,6 @@
}
this.cloneSettingBox = true;
},
-
/** 鎵撳紑浠庡叾浠栫紪鐮佽鍒欎腑鍏嬮殕鐮佹瀵硅瘽妗�*/
openOtherCodeRuleDialog() {
if (!this.tipsMessage(this.selectionList)) {
@@ -2459,7 +2649,7 @@
})
.then(() => {
let ts = new Date(currentData.ts).getTime();
- return clearAllCode({ oid: currentData.oid, ts: ts });
+ return clearAllCode({oid: currentData.oid, ts: ts});
})
.then(() => {
this.this.onLoad(this.page);
@@ -2471,7 +2661,6 @@
},
/** 娣诲姞*/
rowSave(row, done, loading) {
- console.log(row);
add(row).then(
() => {
this.onLoad(this.page);
@@ -2522,7 +2711,7 @@
// 鍙敮鎸佹瘡娆″崟鏉¤褰曞垹闄�
let oid = this.selectionList[0].oid;
let ts = new Date(this.selectionList[0].ts).getTime();
- return remove({ oid: oid, ts: ts });
+ return remove({oid: oid, ts: ts});
})
.then(() => {
this.onLoad(this.page);
@@ -2602,7 +2791,11 @@
},
onLoad(page, params = {}) {
this.loading = true;
- gridCodeRule(page.currentPage, page.pageSize, params).then((res) => {
+ gridCodeRule(
+ page.currentPage,
+ page.pageSize,
+ Object.assign({}, params, this.query),
+ ).then((res) => {
//console.log(res.data);
const data = res.data.data;
this.page.total = data.total;
@@ -2657,19 +2850,29 @@
this.basicSecDialogTitle = "淇敼鐮佹淇℃伅";
this.showbtn = true;
this.basicSecOnlyRead = false;
- //涓篺orm缁戝畾鍊�
} else {
this.basicSecDialogTitle = "鏌ョ湅鐮佹淇℃伅";
this.showbtn = false;
this.basicSecOnlyRead = true;
}
//console.log(this.form);
+ //涓篺orm缁戝畾鍊�
this.changeSectypeFormItems(condition == "add" ? null : row);
+ // 鑾峰彇鍓嶅悗缂�鍙敤瀛楃
+ this.loadPreOrSuffixChars();
+ // 琛ヤ綅鏃跺瓧绗�
+ // this.loadCodeFillSeparator();
this.addBasicCodeSettingBox = true;
+ },
+ /** 鑾峰彇鍓嶅悗缂�瀛楃 */
+ loadPreOrSuffixChars(){
+ getSelectList({codeRuleId: this.selectionList[0].oid,chartType: "prefix"}).then(res=>{
+ this.preFixOrSuffixChars = res.data.data;
+ // console.log(this.preFixOrSuffixChars);
+ })
},
/** 鏂板鍩虹鐮佹*/
async saveOrEditBasicCode() {
- this.isLoadingSecCodeAddBtn = true;
if (
this.selectionList[0].oid == null ||
this.selectionList[0].oid == ""
@@ -2677,25 +2880,28 @@
this.$message.warning("缂哄け蹇呰鍙傛暟锛岃閲嶆柊閫夋嫨缂栫爜瑙勫垯鍚庡啀璇�!");
return;
}
+ if (!this.checkForm()) {
+ return;
+ }
+ this.isLoadingSecCodeAddBtn = true;
this.form.pkCodeRule = this.selectionList[0].oid;
if (this.form.oid == "" || this.form.oid == null) {
- if (this.checkForm()) {
- await addSave(this.form).then(
- () => {
- this.$message({
- type: "success",
- message: "鎿嶄綔鎴愬姛!",
- });
- },
- (error) => {
- window.console.log(error);
- }
- );
- // 鍏抽棴瀵硅瘽妗�
- this.addBasicCodeSettingBox = false;
- }
- // 鐐瑰嚮鏂板鍩虹鐮佹,鍏抽棴绐楀彛涔嬪悗瑙﹀彂閲嶆柊鍔犺浇
- this.loadBasic(this.selectionList[0]);
+ await addSave(this.form).then(
+ () => {
+ this.$message({
+ type: "success",
+ message: "鎿嶄綔鎴愬姛!",
+ });
+ // console.log(this.form)
+ // 鍏抽棴瀵硅瘽妗�
+ this.addBasicCodeSettingBox = false;
+ // 鐐瑰嚮鏂板鍩虹鐮佹,鍏抽棴绐楀彛涔嬪悗瑙﹀彂閲嶆柊鍔犺浇
+ this.loadBasic(this.selectionList[0]);
+ },
+ (error) => {
+ window.console.log(error);
+ }
+ );
} else {
// 鍙兘鍙傜収寮曠敤鐨勪笟鍔$被鍨嬩細鍙戠敓鏀瑰彉鎵�浠ヨ繖鍎跨洿鎺ュreferConfig鐨刯son杩涜鏀瑰彉
if (
@@ -2709,21 +2915,38 @@
// let referValueInfo = JSON.parse(this.form.referValueInfo);
// referValueInfo.referType = this.form.referBtmId;
}
- editSave(this.form).then(
+ let oldBasicSec = this.selectionBasicList.slice(-1)[0];
+ let secType = this.form.secType;
+ Vue.set(this.form, 'isClearValue', false);
+ if ((oldBasicSec.secType == "codefixedsec" || oldBasicSec.secType === "codeclassifysec") && oldBasicSec.secType != secType) {
+ await this.$confirm("鐮佹绫诲瀷鐢便��" + oldBasicSec.secTypeText + "銆戯紝淇敼涓�" + "銆�" + secTypeEnum.getTextByValue(secType) + "銆戯紝璇烽棶鏄惁闇�瑕佹竻绌哄叧鑱旂殑鐮佸�硷紵", "鎻愮ず", {
+ distinguishCancelAndClose: true,
+ closeOnClickModal: false,
+ confirmButtonText: "娓呯┖鐮佸��",
+ cancelButtonText: "淇濈暀鐮佸��",
+ }).then(() => {
+ // 娓呯┖鐮佸��
+ this.form.isClearValue = true;
+ }).catch(action => {
+ this.form.isClearValue = false;
+ });
+ }
+ await editSave(this.form).then(
() => {
this.$message({
type: "success",
message: "鎿嶄綔鎴愬姛!",
});
+ this.loadBasic(this.selectionList[0]);
+ // 鍏抽棴瀵硅瘽妗�
+ this.addBasicCodeSettingBox = false;
},
(error) => {
window.console.log(error);
}
);
- this.loadBasic(this.selectionList[0]);
- // 鍏抽棴瀵硅瘽妗�
- this.addBasicCodeSettingBox = false;
}
+ // 鍙栨秷淇濆瓨鎸夐挳鍔犺浇鏁堟灉
this.isLoadingSecCodeAddBtn = false;
},
/** 鍥犱负elementui鐨勮〃鍗曟牎楠岃缃笉涓婃墍浠ラ噰鐢ㄥ垽鏂殑鏂瑰紡鏉ュ仛琛ㄥ崟妫�楠屾柟寮�*/
@@ -2875,6 +3098,32 @@
this.$refs.codeDateFormatStr.$el.querySelector("input").focus();
return false;
}
+ const Formats = [
+ 'yy',
+ 'yyyy',
+ 'yy-MM',
+ 'yyMM',
+ 'yyyy-MM',
+ 'yyyyMM',
+ 'yy-MM-dd',
+ 'yyMMdd',
+ 'yyyy-MM-dd',
+ 'yyyyMMdd',
+ 'yyyy-MM-dd HH:mm:ss',
+ 'yy-MM-dd HH:mm:ss',
+ 'HH:mm:ss',
+ 'yyyyMMdd HH:mm:ss',
+ 'yyMMdd HH:mm:ss',
+ 'yyyy-MM-dd HHmmss',
+ 'yy-MM-dd HHmmss',
+ 'yyyyMMdd HHmmss',
+ 'yyMMdd HHmmss',
+ 'HHmmss'
+ ];
+ if (!Formats.includes(this.form.codeDateFormatStr)) {
+ this.$message.warning('璇锋鏌ユ棩鏈熸牸寮忥紒');
+ return;
+ }
} else if (this.form.secType === "codeclassifysec") {
//鍒嗙被鐮佹
if (form.codeSecLengthType == "") {
@@ -2920,6 +3169,12 @@
}
return true;
},
+ /** 灞傜骇鐮佹閫夋嫨涓烘渶灏忓眰绾ф椂娓呯┖灞傜骇鐨勫�� */
+ changeLevelType(){
+ if(this.form.codeLevelType === 'code_level_min'){
+ this.form.codeLevelValue = '';
+ }
+ },
/** 鍒ゆ柇鏁版嵁鏄惁閫夋嫨浠ュ強鍙兘閫夋嫨鍗曟潯鏁版嵁*/
tipsMessage(list) {
if (list.length != 1) {
@@ -2933,6 +3188,10 @@
if (!this.tipsMessage(this.selectionBasicList)) {
return;
}
+ if (this.selectionList.slice(-1)[0].lcStatus != "Editing") {
+ this.$message.warning('缂栫爜瑙勫垯鐘舵�佷笉鏄�"缂栬緫涓�"锛屼笉鍏佽鍒犻櫎鐮佹!');
+ return;
+ }
let oid = this.selectionBasicList[0].oid;
this.$confirm("鏄惁鍒犻櫎杩欐潯鏁版嵁锛熷鏋滆寮曠敤灏嗕笉鑳借鍒犻櫎锛�", {
confirmButtonText: "纭畾",
@@ -2941,7 +3200,7 @@
})
.then(() => {
let ts = new Date(this.selectionBasicList[0].ts).getTime();
- return deleteData({ oid: oid, ts: ts });
+ return deleteData({oid: oid, ts: ts});
})
.then(() => {
this.loadBasic({
@@ -2965,7 +3224,7 @@
//瀛樺偍褰撳墠鍏宠仈鐨勭紪鐮佽鍒欑浉鍏充俊鎭�
this.currentCodeRuleOid = row.oid;
this.currentRuleLcStatus = row.lcStatus;
- this.sendGridCodeBasicSec({ pkCodeRule: row.oid }, false);
+ this.sendGridCodeBasicSec({pkCodeRule: row.oid}, false);
}
},
/** 鍙戦�佸姞杞藉熀纭�鐮佹鐨勮姹�*/
@@ -3022,7 +3281,7 @@
},
basicSearchReset() {
this.sendGridCodeBasicSec(
- { pkCodeRule: this.selectionList[this.selectionList.length - 1].oid },
+ {pkCodeRule: this.selectionList[this.selectionList.length - 1].oid},
false
);
},
@@ -3066,7 +3325,7 @@
return;
}
downOrderNum(row.oid).then(() => {
- this.loadBasic({ oid: codeRuleOid });
+ this.loadBasic({oid: codeRuleOid});
this.$message({
type: "success",
message: "鎿嶄綔鎴愬姛!",
@@ -3075,7 +3334,7 @@
},
/** 鍩虹鐮佹鍒锋柊鏃舵煡璇�*/
refreshChangeBasicSec() {
- this.loadBasic(this.selectionList.at(-1));
+ this.loadBasic(this.selectionList.slice(-1)[0]);
},
/** 鎿嶄綔鍩虹鐮佹涓悳绱㈡竻绌虹瓑鎸夐挳鐨勬樉绀�/闅愯棌*/
hideBasicTable(hideBoolean) {
@@ -3143,50 +3402,37 @@
this.form.referConfig = "";
}
},
- /** 琛ヤ綅鏃剁殑瀛楃锛屽疄鐜板彲杈撳彲閫�*/
- inputSelectBlur(e) {
+ /** 琛ヤ綅鏃剁殑瀛楃锛屽疄鐜板彲杈撳彲閫� TODO:鍥犱负澧炲姞浜嗗彲鐢ㄥ瓧绗﹂泦鎺у埗锛屾墍浠ヨ繖鍎垮純鐢ㄤ簡鍙敤瀛楃闆嗙殑鏁堟灉*/
+ /*inputSelectBlur(e) {
if (e.target.value) {
this.form.codeFillSeparator = e.target.value;
}
- },
+ },*/
/** 鐮佹绫诲瀷鏀瑰彉鏃讹紝澧炲姞瀵瑰簲鐨刦orm琛ㄥ崟涓殑灞炴��*/
changeSectypeFormItems(row) {
- //console.log(row);
+ //console.log(row)
if (
func.isEmpty(this.enumParam.secTypeList) ||
this.enumParam.secTypeList.length == 0
) {
this.loadCodeSecType();
}
- if (row != null) {
- this.form = {
- oid: row.oid,
- id: row.id, //缂栧彿,
- name: row.name, //鍚嶇О
- secType: row.secType, //鐮佹绫诲瀷
- description: row.description, //鎻忚堪
- serialDependFlag: row.serialDependFlag == "true" ? true : false, //鏄惁娴佹按渚濊禆
- serialDependOrder: row.serialDependOrder, //娴佹按渚濊禆椤哄簭
- nullableFlag: row.nullableFlag == "true" ? true : false, //鏄惁涓虹┖
- displayFlag: row.displayFlag == "true" ? true : false,
- componentCodeFlag: row.componentCodeFlag == "true" ? true : false, //鏄惁鍙備笌缂栫爜
- pkCodeRule: row.pkCodeRule, //鎵�灞炵紪鐮佽鍒�
- };
- } else {
- this.form = {
- id: this.form.id, //缂栧彿
- name: this.form.name, //鍚嶇О
- secType: this.form.secType, //鐮佹绫诲瀷
- description: this.form.description, //鎻忚堪
- serialDependFlag: this.form.serialDependFlag, //鏄惁娴佹按渚濊禆
- serialDependOrder: this.form.serialDependOrder, //娴佹按渚濊禆椤哄簭
- nullableFlag: this.form.nullableFlag, //鏄惁涓虹┖
- displayFlag: this.form.displayFlag, //
- componentCodeFlag: this.form.componentCodeFlag, //鏄惁鍙備笌缂栫爜
- pkCodeRule: this.form.pkCodeRule, //鎵�灞炵紪鐮佽鍒�
- };
- //console.log(this.form);
- }
+ this.form = {
+ oid: row != null ? row.oid : this.form.oid,
+ id: row != null ? row.id : this.form.id, //缂栧彿,
+ name: row != null ? row.name : this.form.name, //鍚嶇О
+ secType: row != null ? row.secType : this.form.secType, //鐮佹绫诲瀷
+ description: row != null ? row.description : this.form.description, //鎻忚堪
+ serialDependFlag: this.isNullJsonBoolean(row, this.form, 'serialDependFlag'), //鏄惁娴佹按渚濊禆
+ //serialDependOrder: row != null ? row.serialDependOrder : this.form.serialDependOrder, //娴佹按渚濊禆椤哄簭
+ nullableFlag: this.isNullJsonBoolean(row, this.form, 'nullableFlag'), //鏄惁涓虹┖
+ displayFlag: this.isNullJsonBoolean(row, this.form, 'displayFlag'),
+ componentCodeFlag: this.isNullJsonBoolean(row, this.form, 'componentCodeFlag'), //鏄惁鍙備笌缂栫爜
+ pkCodeRule: row != null ? row.pkCodeRule : this.form.pkCodeRule, //鎵�灞炵紪鐮佽鍒�
+ prefixCode: row != null ? row.prefixCode : this.form.prefixCode, //鍓嶇紑
+ suffixCode: row != null ? row.suffixCode : this.form.suffixCode, //鍚庣紑
+ // customCodeSerialClass: row != null ? row.customCodeSerialClass : this.form.customCodeSerialClass
+ };
if (this.form.secType === "codefixedsec") {
//鍥哄畾鐮佹
this.form = Object.assign({}, this.form, {
@@ -3229,8 +3475,8 @@
row != null && row.serialStart != "" ? row.serialStart : 1, //娴佹按鍙疯捣濮嬪��
serialStep: row != null && row.serialStep != "" ? row.serialStep : 1, //娴佹按鐨勬闀�
codeFillType: row != null && row.codeFillType != ""
- ? row.codeFillType
- : "code_fill_left", //缂栫爜琛ヤ綅鏂瑰紡
+ ? row.codeFillType
+ : "code_fill_left", //缂栫爜琛ヤ綅鏂瑰紡
// codeFillSeparatorSelect: row!=null&&row.codeFillSeparatorSelect != '' ? row.codeFillSeparatorSelect:0, //琛ヤ綅鏃剁殑瀛楃锛岄�変腑鐨勪笅鎷夋鐨勪笅鏍�
codeFillSeparator:
row != null && row.codeFillSeparator != ""
@@ -3243,16 +3489,14 @@
codeFillFlag:
row != null && row.codeFillFlag != ""
? row.codeFillFlag == "true"
- ? true
- : false
+ ? true
+ : false
: false, //娴佹按鏄惁琛ョ爜
customCodeSerialClass:
row != null && row.customCodeSerialClass != ""
? row.customCodeSerialClass
: "", //鑷畾涔夋祦姘寸畻娉�
});
- console.log(this.form);
- console.log(this.enumParam.codeFillType);
this.loadCodeFillType();
this.loadCodeFillSeparator();
} else if (this.form.secType === "codelevelsec") {
@@ -3298,7 +3542,6 @@
: "", //鏃ユ湡鏍煎紡
});
} else if (this.form.secType === "codeclassifysec") {
- //console.log(this.form);
//鍒嗙被鐮佹
this.form = Object.assign({}, this.form, {
codeSecLengthType:
@@ -3310,8 +3553,8 @@
matchClassifyValueFlag:
row != null && row.matchClassifyValueFlag != ""
? row.matchClassifyValueFlag == "true"
- ? true
- : false
+ ? true
+ : false
: false, //鏄惁鑷姩鍖归厤鍊�
parentClassifySecOid:
row != null && row.parentClassifySecOid != ""
@@ -3341,15 +3584,23 @@
this.loadCodeFillType();
this.loadCodeFillSeparator();
}
- // console.log(this.form);
+ },
+ // 鍒ゆ柇Boolean鍊兼槸鍚︿负绌猴紝骞朵笖瀵箂tr绫诲瀷甯冨皵鍊艰繘琛岃浆鎹�
+ isNullJsonBoolean(row, form, attr) {
+ //console.log(row[attr],form[attr]);
+ if (row != null) {
+ return JSON.parse(row[attr]);
+ } else {
+ return form[attr];
+ }
},
/** 绗竴娆¤姹傜殑鏋氫妇鏁版嵁鏀剧紦瀛�*/
getLocalStorageEnum(enumKey) {
let enumCach = JSON.parse(localStorage.getItem(enumKey));
if (enumCach == null) {
- getDictionary({ code: enumKey }).then((res) => {
+ getDictionary({code: enumKey}).then((res) => {
enumCach = res.data.data;
- localStorage.setItem(enumKey, JSON.stringify(res.data.data));
+ localStorage.setItem(enumKey, JSON.stringify(enumCach));
});
}
return enumCach;
@@ -3359,7 +3610,7 @@
this.loadCodeSecType();
this.loadCodeSecLength();
this.loadCodeFillType();
- this.loadCodeFillSeparator();
+ // this.loadCodeFillSeparator();
this.loadCodeLevelType();
this.loadCodeCutType();
this.loadCodeGetValueType();
@@ -3376,16 +3627,16 @@
this.enumParam.codeFillType = this.getLocalStorageEnum("codeFillType") || [];
},
loadCodeFillSeparator() {
- let enumCach = JSON.parse(localStorage.getItem("codeFillSeparator"));
- if (enumCach == null) {
- getDictionary("codeFillSeparator").then((res) => {
- this.enumParam.codeFillSeparator = res.data.data;
- localStorage.setItem(
- "codeFillSeparator",
- JSON.stringify(res.data.data)
- );
- });
- }
+ //let enumCach = JSON.parse(localStorage.getItem("codeFillSeparator"));
+ //if (enumCach == null) {
+ getSelectList({codeRuleId: this.selectionList[0].oid,chartType: "fillerChar"}).then((res) => {
+ this.enumParam.codeFillSeparator = res.data.data;
+ //console.log(this.enumParam.codeFillSeparator);
+ // localStorage.setItem(
+ // "codeFillSeparator",
+ // JSON.stringify(res.data.data)
+ // );
+ });
},
loadCodeLevelType() {
this.enumParam.codeLevelType = this.getLocalStorageEnum("codeLevelType") || [];
@@ -3398,9 +3649,12 @@
},
// 鏈�澶ф祦姘村彿
maxSerialNum() {
- console.log(this.selectionList);
- if (this.selectionList.length === 0) {
+ if (this.selectionList.length <= 0) {
this.$message.warning("璇烽�夋嫨涓�鏉$紪鐮佽鍒欙紒");
+ return;
+ }
+ if (this.selectionList.length > 1) {
+ this.$message.warning("鍙兘閫夋嫨涓�鏉$紪鐮佽鍒欙紒");
return;
}
this.maxSerial.visible = true;
@@ -3415,10 +3669,6 @@
font-size: 12px !important;
}
-.code-rule-crud > .avue-crud__search,
-.code-basic-crud > .avue-crud__search {
- margin-bottom: -15px;
-}
.clone-input-textarea > .el-form-item__content {
width: 495px;
@@ -3482,11 +3732,11 @@
}
.left
- > .el-form-item
- > .el-form-item__content
- > .el-input-number
- > .el-input
- > .el-input__inner {
+> .el-form-item
+> .el-form-item__content
+> .el-input-number
+> .el-input
+> .el-input__inner {
width: 120px;
}
@@ -3496,8 +3746,14 @@
}
/** 鏂板鐮佹 */
+.add-basicsec-dialog > .el-dialog > .el-dialog__body {
+ padding: 20px 20px 4px;
+ margin-bottom: 30px;
+}
+
.add-basicsec-total {
width: 100%;
+ height: 500px;
}
.add-basicsec-total .el-input__inner,
@@ -3516,9 +3772,11 @@
.add-basicsec-form > .el-divider--vertical {
width: 2px;
- height: 100%;
- margin: 0 auto;
- /* position: fixed; */
+ height: 78%;
+ position: absolute;
+ top: 50%;
+ left: 50%;
+ transform: translate(-50%, -50%);
}
.left {
@@ -3529,13 +3787,14 @@
.right {
/* float: right; */
- margin-right: 2vw;
+ /* margin-right: 1vw; */
height: 100%;
width: auto;
}
-.right > .el-form > .el-form-item {
- margin-bottom: 8px;
+.add-basicsec-form > .left > .el-form-item,
+.add-basicsec-form > .right > div > .el-form-item {
+ margin-bottom: 12px;
}
/* 瀵硅瘽妗嗗簳閮ㄦ寜閽竟妗嗘牱寮� */
@@ -3552,4 +3811,5 @@
/* .code-total > .basic-container__card {
height: 100%;
} */
+
</style>
--
Gitblit v1.9.3