From f6b61a485501f326debe52d77ea65d87fb34b37f Mon Sep 17 00:00:00 2001 From: 田源 <tianyuan@vci-tech.com> Date: 星期三, 05 三月 2025 17:57:09 +0800 Subject: [PATCH] 完善集成日志查询 --- Source/UBCS-WEB/src/views/code/code.vue | 854 +++++++++++++++++++++++++++++++++----------------------- 1 files changed, 497 insertions(+), 357 deletions(-) diff --git a/Source/UBCS-WEB/src/views/code/code.vue b/Source/UBCS-WEB/src/views/code/code.vue index 5487e28..60297f3 100644 --- a/Source/UBCS-WEB/src/views/code/code.vue +++ b/Source/UBCS-WEB/src/views/code/code.vue @@ -2,144 +2,146 @@ <basic-container class="code-total" style=" height: 100%"> <!-- 缂栫爜瑙勫垯淇℃伅灞曠ず鍖哄煙 --> <basic-container class="code-rule-container"> - <p - style=" + <div style="height: 49vh;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-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-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-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-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 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> + > + 缂栫爜瑙勫垯 + </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-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-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-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 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> <!-- 楂樼骇鏌ヨ瀵硅瘽妗� --> @@ -217,105 +219,107 @@ <!-- 鍩虹鐮佹灞曠ず鍖哄煙 --> <basic-container class="code-basicsec-container"> - <p - style="margin-top: -5px; + <div style="height: 29.3vh;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="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-if="basicPermissionList.editBtn && currentRuleLcStatus === 'Editing'" - icon="el-icon-edit" - plain - size="small" - type="text" - @click="openBasicDialog('edit', 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-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 v-if="basicPermissionList.basicDownBtn" - icon="el-icon-arrow-down" - plain - size="small" - type="text" - @click="downOrderNum(scope.row)" - >涓嬬Щ - </el-button> - </template> + 鐮佹绠$悊 + </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-if="basicPermissionList.editBtn && currentRuleLcStatus === 'Editing'" + icon="el-icon-edit" + plain + size="small" + type="text" + @click="openBasicDialog('edit', 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-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 v-if="basicPermissionList.basicDownBtn" + icon="el-icon-arrow-down" + plain + size="small" + type="text" + @click="downOrderNum(scope.row)" + >涓嬬Щ + </el-button> + </template> - <!-- 鍩虹鐮佹琛ㄦ牸宸︿笂鏂规寜閽尯鍩� --> - <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> + <!-- 鍩虹鐮佹琛ㄦ牸宸︿笂鏂规寜閽尯鍩� --> + <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> <!-- 鐮佹鐮佸�肩鐞嗗璇濇 --> @@ -379,18 +383,12 @@ <el-col :span="13"> <basic-container> <div class="box" style="height: 60vh; margin-bottom: -40px"> - <el-form> - <el-form-item :label-width="50" label="鐮佸��:" required> - <el-input - v-model="codeClassifyForm.id" - style="width: 18vw" - ></el-input> + <el-form label-width="55px"> + <el-form-item label="鍚嶇О:" required> + <el-input v-model="codeClassifyForm.name"></el-input> </el-form-item> - <el-form-item :label-width="50" label="鍚嶇О:" required> - <el-input - v-model="codeClassifyForm.name" - style="width: 18vw" - ></el-input> + <el-form-item label="鐮佸��:"> + <el-input v-model="codeClassifyForm.id"></el-input> </el-form-item> </el-form> </div> @@ -399,9 +397,7 @@ margin-top: 20px; display: flex; align-items: center; - justify-content: center; - " - > + justify-content: center;"> <el-button class="button" icon="el-icon-circle-plus" @@ -587,7 +583,7 @@ > <!-- 绗竴灞傚璇濇,娣诲姞鐮佹淇℃伅瀵硅瘽妗嗕腑鐨勫唴瀹� --> <div class="add-basicsec-total"> - <el-form :model="form" class="add-basicsec-form"> + <el-form :model="form" :rules="rules" class="add-basicsec-form"> <span class="left"> <el-form-item :label-width="leftFormLabelWidth" @@ -637,19 +633,35 @@ <el-form-item :label-width="leftFormLabelWidth" label="鍓嶇紑:"> - <el-input + <!-- <el-input v-model="form.prefixCode" :readonly="basicSecOnlyRead" - ></el-input> + ></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 + <!-- <el-input v-model="form.suffixCode" :readonly="basicSecOnlyRead"> - </el-input> + </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> <el-form-item :label-width="leftFormLabelWidth" label="鎻忚堪:"> @@ -669,12 +681,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="鏄惁涓虹┖:"> @@ -833,13 +845,13 @@ :disabled="basicSecOnlyRead" filterable placeholder="璇烽�夋嫨" - @blur="inputSelectBlur" + clearable > <el-option v-for="item in enumParam.codeFillSeparator" - :key="item.dictKey" - :label="item.dictValue" - :value="item.dictValue" + :key="item.lable" + :label="item.lable" + :value="item.value" > </el-option> </el-select> @@ -878,25 +890,20 @@ </el-form-item> <el-form-item :label-width="rightFormLabelWidth" - label="鑷畾涔夌殑娴佹按绠楁硶:" + label="鑷畾涔夋祦姘寸畻娉�:" > <template> <vciWebRefer ref="refer" - :referConfig="this.referConfig || {}" + :disabled="basicSecOnlyRead" :display="true" + :referConfig="this.referConfig || {}" + :serialType="form.serialType" + :text="form.customCodeSerialClassText" :value="form.customCodeSerialClass" - :text="form.customCodeSerialClass" @setReferValue="setReferValue" ></vciWebRefer> -<!-- <el-input--> -<!-- v-model="form.customCodeSerialClass"--> -<!-- :readonly="basicSecOnlyRead"--> -<!-- @focus="streamFocusHandler"--> -<!-- ></el-input>--> </template> - - </el-form-item> </div> <!-- 灞傜骇鐮佹 --> @@ -910,6 +917,7 @@ v-model="form.codeLevelType" :disabled="basicSecOnlyRead" placeholder="璇烽�夋嫨" + @change="changeLevelType" > <el-option v-for="item in enumParam.codeLevelType" @@ -928,6 +936,7 @@ ref="codeLevelValue" v-model.number="form.codeLevelValue" :readonly="basicSecOnlyRead" + :disabled="form.codeLevelType != 'code_level_special'" ></el-input> </el-form-item> <el-form-item @@ -1029,7 +1038,7 @@ <el-form-item :label-width="rightFormLabelWidth" label="鏃ユ湡鏍煎紡:" - required + prop="Dateformat" > <el-input ref="codeDateFormatStr" @@ -1141,13 +1150,13 @@ :disabled="basicSecOnlyRead" filterable placeholder="璇烽�夋嫨" - @blur="inputSelectBlur" + clearable > <el-option v-for="item in enumParam.codeFillSeparator" - :key="item.dictKey" - :label="item.dictValue" - :value="item.dictValue" + :key="item.lable" + :label="item.lable" + :value="item.value" > </el-option> </el-select> @@ -1289,8 +1298,6 @@ </refer-config-dialog> </el-dialog> - <!-- 鑷畾涔夋祦姘村弬鐓х粍浠�--> - </basic-container> </template> @@ -1331,8 +1338,9 @@ deleteCodeClassifyValue, saveCodeClassifyValueOrder, } from "@/api/code/codeClassifyValue"; +import { getSelectList, getRegexStr } from "@/api/code/codeCharcter" import {getDictionary} from "@/api/omd/enum"; -import {getDictionaryBiz} from "@/api/system/dictbiz"; +// import {getDictionaryBiz} from "@/api/system/dictbiz"; import optionBasic from "@/const/code/codebasic"; import optionRule from "@/const/code/mdmrule"; import attrOption from "@/const/code/selectAttrOptionDialog"; @@ -1347,20 +1355,58 @@ import vciWebRefer from "../../components/refer/vciWebRefer"; export default { - components: { vciWebRefer }, + components: {vciWebRefer}, data() { return { - referConfig:{ + 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: 'customCodeSerialClass', + showField: 'customCodeSerialClassText', field: 'customCodeSerialClass', - fieldMap: {}, - placeholder:'璇烽�夋嫨鑷畾涔夋祦姘�', - options: { + fieldMap: { + serialType: "serialType", + }, + placeholder: '璇烽�夋嫨鑷畾涔夋祦姘�', + options: { // 璁剧疆榛樿鐨勫睘鎬� url: 'api/ubcs-code/codeSerialAlgorithmController/gridCodeSerialAlgorithm', - valueField:'classFullName', - textField:'classFullName', + textField: 'name', + valueField: 'classFullName', isMuti: false, type: "grid", method: 'get', @@ -1373,11 +1419,12 @@ {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: '绠楁硶鍚嶇О'} + // {field: 'id', title: '绠楁硶缂栧彿'}, + // {field: 'name', title: '绠楁硶鍚嶇О'} ] } } @@ -1605,7 +1652,7 @@ secType: "codefixedsec", //鐮佹绫诲瀷 description: "", //鎻忚堪 serialDependFlag: false, //鏄惁娴佹按渚濊禆 - serialDependOrder: "", //娴佹按渚濊禆椤哄簭 + //serialDependOrder: "", //娴佹按渚濊禆椤哄簭 nullableFlag: false, //鏄惁涓虹┖ prefixCode: "", //鍓嶇紑 suffixCode: "", //鍚庣紑 @@ -1641,6 +1688,9 @@ //寮曠敤鐮佹涓弬鐓ч厤缃粍浠剁浉鍏冲弬鏁� referConfigOption: {}, referConfigVisble: false, + + preFixOrSuffixChars: [], //鍓嶅悗缂�瀛楃鍒楄〃 + }; }, computed: { @@ -1701,8 +1751,15 @@ }, methods: { //鑷畾涔夋祦姘村け鐒� - setReferValue(data){ - console.log(data) + setReferValue(data) { + if (data.field) { + // this.form[data.field] = data.value || ""; + this.form.customCodeSerialClass = data.rawData[0].id || ""; + console.log(this.form.customCodeSerialClass); + this.form[data.showField] = data.text || ""; + this.form.serialType = data.rawData[0].serialType || ""; + this.form.customCodeSerialType = data.rawData[0].serialType || ""; + } }, /** 杞Щ瑙勫垯鎵�鏈夎�呭璇濇 */ escapeOwner() { @@ -1762,7 +1819,7 @@ //杞崲鎴怞SON瀛楃涓茶繘琛岀埗缁勪欢鍥炴樉 let submitFormJson = JSON.stringify(content); this.form.referConfig = submitFormJson || ""; - debugger; + // debugger; }, /** 寮曠敤鐮佹涓恒�愬弬鐓у紩鐢ㄧ殑涓氬姟绫诲瀷銆戦�夊彇鍊间箣鍚庣殑鍐呭鍥炴樉鏃惰皟鐢� */ echoReferBtmType(content) { @@ -1955,9 +2012,12 @@ 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; @@ -1979,7 +2039,14 @@ } ); } else { - if (!this.tipsCodeSecValueMessage(this.codeClassifyForm.id)) { + // if (!this.tipsCodeSecValueMessage(this.codeClassifyForm.id)) { + // return; + // } + if(!this.codeClassifyForm.name){ + this.$message.error('璇疯緭鍏ュ悕绉�'); + return; + } + if(!await this.regexCharacter(this.codeClassifyForm.id)){ return; } this.codeClassifyForm.codeClassifySecOid = @@ -2004,39 +2071,13 @@ ); } }, - /** 娓呯┖鐮佸�艰〃鍗� */ - 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; - }, /** 淇敼鐮佸�� */ - editCodeSecValue(condition) { + async editCodeSecValue(condition) { if (condition == "codefixedsec") { if (!this.tipsCodeSecValueMessage(this.codeFixdForm.id)) { + return; + } + if(!await this.regexCharacter(this.codeFixdForm.id)){ return; } //浠ュ墠鏄洿鎺ユ妸褰撳墠閫変腑琛岀殑鎵�鏈夋暟鎹兘杩涜鎻愪氦锛屼絾鍏跺疄鍙渶瑕佷紶杈撲竴浜涘繀瑕佸弬鏁板嵆鍙紝杩欏効鍋氫簡淇敼锛岄渶瑕佷紶鍏朵粬鍙傛暟鐨勮鑷娣诲姞 @@ -2066,6 +2107,9 @@ if (!this.tipsCodeSecValueMessage(this.codeClassifyForm.id)) { return; } + if(!await this.regexCharacter(this.codeClassifyForm.id)){ + return; + } this.codeClassifyForm.oid = this.selectedFixedOrCodeclassifyValue.attributes.oid; // 鍒嗙被鐮佹锛屽瓙鍒嗙被鍜岀埗鍒嗙被涔嬮棿涓嶈兘鐩镐簰鏇存敼 @@ -2093,6 +2137,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) { @@ -2484,8 +2576,8 @@ /** 鍙戝竷缂栫爜瑙勫垯 */ async enableOrDeactivatse(oid, update) { if (update === "release") { - this.releadDisabled = true; // 閬垮厤鐢ㄦ埛閲嶅鐐瑰嚮鎸夐挳 + this.releadDisabled = true; await checkLikeCodeRule(oid) .then((res) => { //console.log(res) @@ -2507,8 +2599,7 @@ this.releadDisabled = false; }); } - }) - .catch((error) => { + }).catch((error) => { this.releadDisabled = false; }); this.releadDisabled = false; @@ -2741,7 +2832,6 @@ }, /** 鎵撳紑鏂板鎴栫紪杈戝熀纭�鐮佹瀵硅瘽妗�*/ openBasicDialog(condition, row) { - //console.log(row); if (condition == "add") { this.basicSecDialogTitle = "娣诲姞鐮佹淇℃伅"; this.showbtn = true; @@ -2762,11 +2852,21 @@ //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 == "" @@ -2774,25 +2874,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: "鎿嶄綔鎴愬姛!", - }); - // 鍏抽棴瀵硅瘽妗� - this.addBasicCodeSettingBox = false; - // 鐐瑰嚮鏂板鍩虹鐮佹,鍏抽棴绐楀彛涔嬪悗瑙﹀彂閲嶆柊鍔犺浇 - this.loadBasic(this.selectionList[0]); - }, - (error) => { - window.console.log(error); - } - ); - } + 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 ( @@ -2806,7 +2909,7 @@ // let referValueInfo = JSON.parse(this.form.referValueInfo); // referValueInfo.referType = this.form.referBtmId; } - let oldBasicSec = this.selectionBasicList.at(-1); + 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) { @@ -2989,6 +3092,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 == "") { @@ -3034,6 +3163,12 @@ } return true; }, + /** 灞傜骇鐮佹閫夋嫨涓烘渶灏忓眰绾ф椂娓呯┖灞傜骇鐨勫�� */ + changeLevelType(){ + if(this.form.codeLevelType === 'code_level_min'){ + this.form.codeLevelValue = ''; + } + }, /** 鍒ゆ柇鏁版嵁鏄惁閫夋嫨浠ュ強鍙兘閫夋嫨鍗曟潯鏁版嵁*/ tipsMessage(list) { if (list.length != 1) { @@ -3047,7 +3182,7 @@ if (!this.tipsMessage(this.selectionBasicList)) { return; } - if (this.selectionList.at(-1).lcStatus != "Editing") { + if (this.selectionList.slice(-1)[0].lcStatus != "Editing") { this.$message.warning('缂栫爜瑙勫垯鐘舵�佷笉鏄�"缂栬緫涓�"锛屼笉鍏佽鍒犻櫎鐮佹!'); return; } @@ -3193,7 +3328,7 @@ }, /** 鍩虹鐮佹鍒锋柊鏃舵煡璇�*/ refreshChangeBasicSec() { - this.loadBasic(this.selectionList.at(-1)); + this.loadBasic(this.selectionList.slice(-1)[0]); }, /** 鎿嶄綔鍩虹鐮佹涓悳绱㈡竻绌虹瓑鎸夐挳鐨勬樉绀�/闅愯棌*/ hideBasicTable(hideBoolean) { @@ -3261,14 +3396,15 @@ this.form.referConfig = ""; } }, - /** 琛ヤ綅鏃剁殑瀛楃锛屽疄鐜板彲杈撳彲閫�*/ - inputSelectBlur(e) { + /** 琛ヤ綅鏃剁殑瀛楃锛屽疄鐜板彲杈撳彲閫� TODO:鍥犱负澧炲姞浜嗗彲鐢ㄥ瓧绗﹂泦鎺у埗锛屾墍浠ヨ繖鍎垮純鐢ㄤ簡鍙敤瀛楃闆嗙殑鏁堟灉*/ + /*inputSelectBlur(e) { if (e.target.value) { this.form.codeFillSeparator = e.target.value; } - }, + },*/ /** 鐮佹绫诲瀷鏀瑰彉鏃讹紝澧炲姞瀵瑰簲鐨刦orm琛ㄥ崟涓殑灞炴��*/ changeSectypeFormItems(row) { + //console.log(row) if ( func.isEmpty(this.enumParam.secTypeList) || this.enumParam.secTypeList.length == 0 @@ -3282,13 +3418,14 @@ 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, //娴佹按渚濊禆椤哄簭 + //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") { //鍥哄畾鐮佹 @@ -3353,6 +3490,14 @@ row != null && row.customCodeSerialClass != "" ? row.customCodeSerialClass : "", //鑷畾涔夋祦姘寸畻娉� + customCodeSerialClassText: + row != null && row.customCodeSerialClassText != "" + ? row.customCodeSerialClassText + : "", //鑷畾涔夋祦姘寸畻娉曟樉绀哄�� + customCodeSerialType: + row != null && row.customCodeSerialType != "" + ? row.customCodeSerialType + : "", //鑷畾涔夋祦姘寸畻娉曠被鍨� }); this.loadCodeFillType(); this.loadCodeFillSeparator(); @@ -3457,7 +3602,7 @@ if (enumCach == null) { 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; @@ -3467,7 +3612,7 @@ this.loadCodeSecType(); this.loadCodeSecLength(); this.loadCodeFillType(); - this.loadCodeFillSeparator(); + // this.loadCodeFillSeparator(); this.loadCodeLevelType(); this.loadCodeCutType(); this.loadCodeGetValueType(); @@ -3486,15 +3631,14 @@ loadCodeFillSeparator() { //let enumCach = JSON.parse(localStorage.getItem("codeFillSeparator")); //if (enumCach == null) { - getDictionaryBiz({code: "codeFillSeparator"}).then((res) => { + 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) - ); + // localStorage.setItem( + // "codeFillSeparator", + // JSON.stringify(res.data.data) + // ); }); - //} }, loadCodeLevelType() { this.enumParam.codeLevelType = this.getLocalStorageEnum("codeLevelType") || []; @@ -3527,10 +3671,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; @@ -3649,7 +3789,7 @@ .right { /* float: right; */ - margin-right: 2vw; + /* margin-right: 1vw; */ height: 100%; width: auto; } -- Gitblit v1.9.3