| | |
| | | <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)" |
| | | > |
| | | 编码规则 |
| | | </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.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.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> |
| | | <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> |
| | | </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> |
| | | |
| | | <!-- 高级查询对话框 --> |
| | |
| | | |
| | | <!-- 编码规则,克隆对话框 --> |
| | | <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> |
| | | |
| | |
| | | <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 |
| | |
| | | |
| | | <!-- 基础码段展示区域 --> |
| | | <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)" |
| | | 码段管理 |
| | | </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.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.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.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> |
| | | <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 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> |
| | | |
| | | <!-- 码段码值管理对话框 --> |
| | |
| | | size="mini" |
| | | type="primary" |
| | | @click="codeClassifyValueOpetion('up')" |
| | | >上移 |
| | | >上移 |
| | | </el-button> |
| | | <el-button |
| | | class="button" |
| | |
| | | size="mini" |
| | | type="primary" |
| | | @click="codeClassifyValueOpetion('down')" |
| | | >下移 |
| | | >下移 |
| | | </el-button> |
| | | </div> |
| | | </basic-container> |
| | |
| | | <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> |
| | |
| | | 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 == ''" |
| | |
| | | size="mini" |
| | | type="success" |
| | | @click="editCodeSecValue('codeclassifyvaluesec')" |
| | | >修改 |
| | | >修改 |
| | | </el-button> |
| | | <el-button |
| | | :disabled="selectedFixedOrCodeclassifyValue == ''" |
| | |
| | | size="mini" |
| | | type="danger" |
| | | @click="delCodeSecValue('codeclassifyvaluesec')" |
| | | >删除 |
| | | >删除 |
| | | </el-button> |
| | | <el-button |
| | | class="button" |
| | |
| | | size="mini" |
| | | type="warning" |
| | | @click="clearFixedOrClassifyForm('codeclassifyvaluesec')" |
| | | >取消 |
| | | >取消 |
| | | </el-button> |
| | | </div> |
| | | </basic-container> |
| | |
| | | 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> |
| | |
| | | size="mini" |
| | | type="primary" |
| | | @click="saveCodeFixedOrClassifyValueOption('fixedValue')" |
| | | >保存 |
| | | >保存 |
| | | </el-button> |
| | | </div> |
| | | </basic-container> |
| | |
| | | size="mini" |
| | | type="primary" |
| | | @click="addCodeSecValue('codefixedsec')" |
| | | >添加 |
| | | >添加 |
| | | </el-button> |
| | | <el-button |
| | | :disabled="selectedFixedOrCodeclassifyValue == ''" |
| | |
| | | size="mini" |
| | | type="success" |
| | | @click="editCodeSecValue('codefixedsec')" |
| | | >修改 |
| | | >修改 |
| | | </el-button> |
| | | <el-button |
| | | :disabled="selectedFixedOrCodeclassifyValue == ''" |
| | |
| | | size="mini" |
| | | type="danger" |
| | | @click="delCodeSecValue('codefixedsec')" |
| | | >删除 |
| | | >删除 |
| | | </el-button> |
| | | <el-button |
| | | class="button" |
| | |
| | | size="mini" |
| | | type="warning" |
| | | @click="clearFixedOrClassifyForm('codefixedsec')" |
| | | >取消 |
| | | >取消 |
| | | </el-button> |
| | | </div> |
| | | </basic-container> |
| | |
| | | :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" |
| | |
| | | |
| | | <el-form-item |
| | | :label-width="leftFormLabelWidth" |
| | | label="码段类型" |
| | | label="码段类型:" |
| | | required |
| | | > |
| | | <el-select |
| | |
| | | :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> |
| | |
| | | :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="是否为空:"> |
| | |
| | | :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> |
| | |
| | | </el-form-item> |
| | | <el-form-item |
| | | :label-width="rightFormLabelWidth" |
| | | label="自定义的流水算法:" |
| | | label="自定义流水算法:" |
| | | > |
| | | <el-input |
| | | v-model="form.customCodeSerialClass" |
| | | :readonly="basicSecOnlyRead" |
| | | ></el-input> |
| | | <template> |
| | | <vciWebRefer |
| | | ref="refer" |
| | | :disabled="basicSecOnlyRead" |
| | | :display="true" |
| | | :referConfig="this.referConfig || {}" |
| | | :serialType="form.serialType" |
| | | :text="form.customCodeSerialClassText" |
| | | :value="form.customCodeSerialClass" |
| | | @setReferValue="setReferValue" |
| | | ></vciWebRefer> |
| | | </template> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 层级码段 --> |
| | |
| | | v-model="form.codeLevelType" |
| | | :disabled="basicSecOnlyRead" |
| | | placeholder="请选择" |
| | | @change="changeLevelType" |
| | | > |
| | | <el-option |
| | | v-for="item in enumParam.codeLevelType" |
| | |
| | | ref="codeLevelValue" |
| | | v-model.number="form.codeLevelValue" |
| | | :readonly="basicSecOnlyRead" |
| | | :disabled="form.codeLevelType != 'code_level_special'" |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item |
| | |
| | | <el-form-item |
| | | :label-width="rightFormLabelWidth" |
| | | label="日期格式:" |
| | | required |
| | | prop="Dateformat" |
| | | > |
| | | <el-input |
| | | ref="codeDateFormatStr" |
| | |
| | | :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> |
| | |
| | | </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> |
| | | |
| | |
| | | </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> |
| | |
| | | > |
| | | </refer-config-dialog> |
| | | </el-dialog> |
| | | |
| | | |
| | | </basic-container> |
| | | </template> |
| | | |
| | |
| | | addSave, |
| | | refDataGridClassifySec, |
| | | } from "@/api/code/codebasic"; |
| | | import { listClassifyLinkAttr } from "@/api/code/codeclassify"; |
| | | import {listClassifyLinkAttr} from "@/api/code/codeclassify"; |
| | | import { |
| | | gridCodeFixedValue, |
| | | addSaveCodeFixedValue, |
| | |
| | | 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"; |
| | |
| | | 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, |
| | |
| | | secType: "codefixedsec", //码段类型 |
| | | description: "", //描述 |
| | | serialDependFlag: false, //是否流水依赖 |
| | | serialDependOrder: "", //流水依赖顺序 |
| | | //serialDependOrder: "", //流水依赖顺序 |
| | | nullableFlag: false, //是否为空 |
| | | prefixCode: "", //前缀 |
| | | suffixCode: "", //后缀 |
| | | displayFlag: false, // |
| | | componentCodeFlag: false, //是否参与编码 |
| | | pkCodeRule: "", //所属编码规则 |
| | |
| | | //引用码段中参照配置组件相关参数 |
| | | referConfigOption: {}, |
| | | referConfigVisble: false, |
| | | |
| | | preFixOrSuffixChars: [], //前后缀字符列表 |
| | | |
| | | }; |
| | | }, |
| | | computed: { |
| | |
| | | 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), |
| | | 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), |
| | |
| | | }; |
| | | }, |
| | | basicPermissionList() { |
| | | return{ |
| | | 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), |
| | | 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), |
| | |
| | | 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.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() { |
| | | if (this.selectionList.length === 0) { |
| | |
| | | //转换成JSON字符串进行父组件回显 |
| | | let submitFormJson = JSON.stringify(content); |
| | | this.form.referConfig = submitFormJson || ""; |
| | | debugger; |
| | | // debugger; |
| | | }, |
| | | /** 引用码段为【参照引用的业务类型】选取值之后的内容回显时调用 */ |
| | | echoReferBtmType(content) { |
| | |
| | | /** 加载固定码段码值表数据*/ |
| | | 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; |
| | | this.fixedValueOptionLoading = false; |
| | | }); |
| | |
| | | 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; |
| | |
| | | } |
| | | ); |
| | | } 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 = |
| | |
| | | ); |
| | | } |
| | | }, |
| | | /** 清空码值表单 */ |
| | | 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; |
| | | } |
| | | //以前是直接把当前选中行的所有数据都进行提交,但其实只需要传输一些必要参数即可,这儿做了修改,需要传其他参数的请自行添加 |
| | |
| | | description: this.codeFixdForm.description, |
| | | id: this.codeFixdForm.id, |
| | | codeFixedSecOid: |
| | | this.selectedFixedOrCodeclassifyValue.codefixedsecoid, |
| | | this.selectedFixedOrCodeclassifyValue.codefixedsecoid, |
| | | }; |
| | | editCodeFixedValue(editData).then( |
| | | () => { |
| | |
| | | ); |
| | | } else { |
| | | if (!this.tipsCodeSecValueMessage(this.codeClassifyForm.id)) { |
| | | return; |
| | | } |
| | | if(!await this.regexCharacter(this.codeClassifyForm.id)){ |
| | | return; |
| | | } |
| | | this.codeClassifyForm.oid = |
| | |
| | | } |
| | | ); |
| | | } |
| | | }, |
| | | /** |
| | | * 可用字符集码值正则校验 |
| | | * @return true:满足限制,false:不满足限制 |
| | | */ |
| | | 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) { |
| | |
| | | }, |
| | | { |
| | | data: [], |
| | | |
| | | |
| | | title: "描述", |
| | | fieldType: "text", |
| | | queryField: "description", |
| | |
| | | }, |
| | | /** 修改规则状态:启用、停用、发布 */ |
| | | 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); |
| | |
| | | /** 发布编码规则 */ |
| | | 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: "继续发布", |
| | |
| | | this.releadDisabled = false; |
| | | }); |
| | | } |
| | | }) |
| | | .catch((error) => { |
| | | }).catch((error) => { |
| | | this.releadDisabled = false; |
| | | }); |
| | | this.releadDisabled = false; |
| | |
| | | }) |
| | | .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); |
| | |
| | | // 只支持每次单条记录删除 |
| | | 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); |
| | |
| | | gridCodeRule( |
| | | page.currentPage, |
| | | page.pageSize, |
| | | Object.assign({},params,this.query), |
| | | Object.assign({}, params, this.query), |
| | | ).then((res) => { |
| | | //console.log(res.data); |
| | | const data = res.data.data; |
| | |
| | | }, |
| | | /** 打开新增或编辑基础码段对话框*/ |
| | | openBasicDialog(condition, row) { |
| | | //console.log(row); |
| | | if (condition == "add") { |
| | | this.basicSecDialogTitle = "添加码段信息"; |
| | | this.showbtn = true; |
| | |
| | | //console.log(this.form); |
| | | //为form绑定值 |
| | | 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 == "" |
| | |
| | | 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的json进行改变 |
| | | if ( |
| | |
| | | // 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){ |
| | | await this.$confirm("码段类型由【"+oldBasicSec.secTypeText+"】,修改为"+"【"+secTypeEnum.getTextByValue(secType)+"】,请问是否需要清空关联的码值?", "提示", { |
| | | if ((oldBasicSec.secType == "codefixedsec" || oldBasicSec.secType === "codeclassifysec") && oldBasicSec.secType != secType) { |
| | | await this.$confirm("码段类型由【" + oldBasicSec.secTypeText + "】,修改为" + "【" + secTypeEnum.getTextByValue(secType) + "】,请问是否需要清空关联的码值?", "提示", { |
| | | distinguishCancelAndClose: true, |
| | | closeOnClickModal: false, |
| | | confirmButtonText: "清空码值", |
| | |
| | | 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 == "") { |
| | |
| | | } |
| | | return true; |
| | | }, |
| | | /** 层级码段选择为最小层级时清空层级的值 */ |
| | | changeLevelType(){ |
| | | if(this.form.codeLevelType === 'code_level_min'){ |
| | | this.form.codeLevelValue = ''; |
| | | } |
| | | }, |
| | | /** 判断数据是否选择以及只能选择单条数据*/ |
| | | tipsMessage(list) { |
| | | if (list.length != 1) { |
| | |
| | | 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; |
| | | } |
| | |
| | | }) |
| | | .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({ |
| | |
| | | //存储当前关联的编码规则相关信息 |
| | | this.currentCodeRuleOid = row.oid; |
| | | this.currentRuleLcStatus = row.lcStatus; |
| | | this.sendGridCodeBasicSec({ pkCodeRule: row.oid }, false); |
| | | this.sendGridCodeBasicSec({pkCodeRule: row.oid}, false); |
| | | } |
| | | }, |
| | | /** 发送加载基础码段的请求*/ |
| | |
| | | }, |
| | | basicSearchReset() { |
| | | this.sendGridCodeBasicSec( |
| | | { pkCodeRule: this.selectionList[this.selectionList.length - 1].oid }, |
| | | {pkCodeRule: this.selectionList[this.selectionList.length - 1].oid}, |
| | | false |
| | | ); |
| | | }, |
| | |
| | | return; |
| | | } |
| | | downOrderNum(row.oid).then(() => { |
| | | this.loadBasic({ oid: codeRuleOid }); |
| | | this.loadBasic({oid: codeRuleOid}); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | |
| | | }, |
| | | /** 基础码段刷新时查询*/ |
| | | refreshChangeBasicSec() { |
| | | this.loadBasic(this.selectionList.at(-1)); |
| | | this.loadBasic(this.selectionList.slice(-1)[0]); |
| | | }, |
| | | /** 操作基础码段中搜索清空等按钮的显示/隐藏*/ |
| | | hideBasicTable(hideBoolean) { |
| | |
| | | this.form.referConfig = ""; |
| | | } |
| | | }, |
| | | /** 补位时的字符,实现可输可选*/ |
| | | inputSelectBlur(e) { |
| | | /** 补位时的字符,实现可输可选 TODO:因为增加了可用字符集控制,所以这儿弃用了可用字符集的效果*/ |
| | | /*inputSelectBlur(e) { |
| | | if (e.target.value) { |
| | | this.form.codeFillSeparator = e.target.value; |
| | | } |
| | | }, |
| | | },*/ |
| | | /** 码段类型改变时,增加对应的form表单中的属性*/ |
| | | changeSectypeFormItems(row) { |
| | | //console.log(row) |
| | | if ( |
| | | func.isEmpty(this.enumParam.secTypeList) || |
| | | this.enumParam.secTypeList.length == 0 |
| | |
| | | this.loadCodeSecType(); |
| | | } |
| | | 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, //流水依赖顺序 |
| | | 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, //所属编码规则 |
| | | 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") { |
| | | //固定码段 |
| | |
| | | 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 != "" |
| | |
| | | codeFillFlag: |
| | | row != null && row.codeFillFlag != "" |
| | | ? row.codeFillFlag == "true" |
| | | ? true |
| | | : false |
| | | ? true |
| | | : false |
| | | : false, //流水是否补码 |
| | | customCodeSerialClass: |
| | | row != null && row.customCodeSerialClass != "" |
| | | ? row.customCodeSerialClass |
| | | : "", //自定义流水算法 |
| | | customCodeSerialClassText: |
| | | row != null && row.customCodeSerialClassText != "" |
| | | ? row.customCodeSerialClassText |
| | | : "", //自定义流水算法显示值 |
| | | customCodeSerialType: |
| | | row != null && row.customCodeSerialType != "" |
| | | ? row.customCodeSerialType |
| | | : "", //自定义流水算法类型 |
| | | }); |
| | | this.loadCodeFillType(); |
| | | this.loadCodeFillSeparator(); |
| | |
| | | matchClassifyValueFlag: |
| | | row != null && row.matchClassifyValueFlag != "" |
| | | ? row.matchClassifyValueFlag == "true" |
| | | ? true |
| | | : false |
| | | ? true |
| | | : false |
| | | : false, //是否自动匹配值 |
| | | parentClassifySecOid: |
| | | row != null && row.parentClassifySecOid != "" |
| | |
| | | } |
| | | }, |
| | | // 判断Boolean值是否为空,并且对str类型布尔值进行转换 |
| | | isNullJsonBoolean(row,form,attr) { |
| | | //console.log(row[attr],form[attr]); |
| | | if(row != null){ |
| | | return JSON.parse(row[attr]); |
| | | }else { |
| | | return form[attr]; |
| | | } |
| | | 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; |
| | |
| | | this.loadCodeSecType(); |
| | | this.loadCodeSecLength(); |
| | | this.loadCodeFillType(); |
| | | this.loadCodeFillSeparator(); |
| | | // this.loadCodeFillSeparator(); |
| | | this.loadCodeLevelType(); |
| | | this.loadCodeCutType(); |
| | | this.loadCodeGetValueType(); |
| | |
| | | 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") || []; |
| | |
| | | this.$message.warning("请选择一条编码规则!"); |
| | | return; |
| | | } |
| | | if(this.selectionList.length> 1){ |
| | | if (this.selectionList.length > 1) { |
| | | this.$message.warning("只能选择一条编码规则!"); |
| | | return; |
| | | } |
| | |
| | | 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; |
| | |
| | | } |
| | | |
| | | .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; |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | /** 新增码段 */ |
| | | .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, |
| | |
| | | |
| | | .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 { |
| | |
| | | |
| | | .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; |
| | | } |
| | | |
| | | /* 对话框底部按钮边框样式 */ |
| | |
| | | /* .code-total > .basic-container__card { |
| | | height: 100%; |
| | | } */ |
| | | |
| | | </style> |