| | |
| | | <template> |
| | | <basic-container style="height: 100%;"> |
| | | |
| | | <!-- 编码规则信息展示区域 --> |
| | | <basic-container class="code-rule-container"> |
| | | <p style="margin-top: -5px; margin-bottom: 4px; font-weight: 570; font-size: 19px; color: #0e2d5f;">编码规则</p> |
| | | <avue-crud class="code-rule-crud" |
| | | :option="optionRule" |
| | | :table-loading="loading" |
| | | :data="data" |
| | | :page.sync="page" |
| | | :permission="permissionList" |
| | | v-model="ruleForm" |
| | | ref="crud" |
| | | :before-open="beforeOpen" |
| | | @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 type="text" |
| | | <basic-container style="height: 100%;" class="code-total"> |
| | | <!-- 编码规则信息展示区域 --> |
| | | <basic-container class="code-rule-container"> |
| | | <p style="margin-top: -5px; margin-bottom: 4px; font-weight: 570; font-size: 19px; color: #0e2d5f;">编码规则</p> |
| | | <avue-crud class="code-rule-crud" |
| | | :option="optionRule" |
| | | :table-loading="loading" |
| | | :data="data" |
| | | :page.sync="page" |
| | | :permission="permissionList" |
| | | v-model="ruleForm" |
| | | ref="crud" |
| | | :before-open="beforeOpen" |
| | | @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 type="text" |
| | | size="small" |
| | | icon="el-icon-edit" |
| | | v-show="scope.row.lcStatus=='Editing' ? true:false" |
| | | plain |
| | | @click="openEdit(scope.row)">编 辑 |
| | | </el-button> |
| | | <el-button type="text" |
| | | size="small" |
| | | icon="el-icon-edit" |
| | | icon="el-icon-position" |
| | | v-show="scope.row.lcStatus=='Editing' ? true:false" |
| | | plain |
| | | @click="openEdit(scope.row)">编 辑 |
| | | </el-button> |
| | | <el-button type="text" |
| | | :disabled="releadDisabled" |
| | | @click="enableOrDeactivatse(scope.row.oid,'release')">发 布 |
| | | </el-button> |
| | | <el-button type="text" |
| | | size="small" |
| | | v-show="scope.row.lcStatus=='Released' ? true:false" |
| | | icon="el-icon-video-pause" |
| | | plain |
| | | @click="enableOrDeactivatse(scope.row.oid,'disable')">停 用 |
| | | </el-button> |
| | | <el-button type="text" |
| | | size="small" |
| | | v-show="scope.row.lcStatus=='Disabled' ? true:false" |
| | | icon="el-icon-video-play" |
| | | plain |
| | | @click="enableOrDeactivatse(scope.row.oid,'enable')">启 用 |
| | | </el-button> |
| | | </template> |
| | | <!-- 表格上方按钮区域 --> |
| | | <template slot="menuLeft" slot-scope="scope"> |
| | | <el-button type="danger" |
| | | size="small" |
| | | icon="el-icon-delete" |
| | | plain |
| | | @click="handleDelete"> |
| | | 删 除 |
| | | </el-button> |
| | | <el-button type="primary" |
| | | size="small" |
| | | icon="el-icon-search" |
| | | plain |
| | | @click="openAdvancedQuery('codeRule')"> |
| | | 高级查询 |
| | | </el-button> |
| | | <el-button |
| | | size="small" |
| | | icon="icon-kelong" |
| | | plain |
| | | @click="openCodeRuleDialog"> |
| | | 克 隆 |
| | | </el-button> |
| | | <el-button |
| | | size="small" |
| | | icon="icon-lianjiekelong" |
| | | style="font-size: 12px;" |
| | | plain |
| | | @click="openOtherCodeRuleDialog"> |
| | | 从其他规则中克隆码段 |
| | | </el-button> |
| | | <el-button |
| | | size="small" |
| | | icon="el-icon-s-help" |
| | | plain |
| | | @click="handleRange"> |
| | | 使用范围 |
| | | </el-button> |
| | | <el-button |
| | | size="small" |
| | | icon="icon-qingkong" |
| | | plain |
| | | @click="clearAllCodeSec"> |
| | | 清空码值 |
| | | </el-button> |
| | | <el-button |
| | | size="small" |
| | | icon="el-icon-guide" |
| | | plain |
| | | @click="escapeOwner"> |
| | | 转移所有者 |
| | | </el-button> |
| | | <el-button |
| | | size="small" |
| | | icon="el-icon-guide" |
| | | plain |
| | | @click="maxSerialNum"> |
| | | 最大流水号 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </basic-container> |
| | | |
| | | <!-- 高级查询对话框 --> |
| | | <advanced-query |
| | | :ref="advancedQueryParam.ref" |
| | | :options="advancedQueryParam.options" |
| | | :visible.sync="advancedQueryParam.advancedQuerySettingBox" |
| | | @echoContion="echoSeniorContionMap"> |
| | | </advanced-query> |
| | | |
| | | <!-- 编码规则相关对话框 --> |
| | | <el-dialog title="编码规则使用范围" |
| | | append-to-body |
| | | :visible.sync="codeRangeSettingBox" |
| | | width="800px" |
| | | class="avue-dialog avue-dialog--top" |
| | | style="height: 100vh;" top="-3%"> |
| | | <avue-crud |
| | | :option="dialogeOption" |
| | | :table-loading="dialogLoading" |
| | | :data="useRangeData" |
| | | style="margin-top:-40px" |
| | | @refresh-change="refreshUseRangeChange"> |
| | | </avue-crud> |
| | | </el-dialog> |
| | | |
| | | <!-- 编码规则,克隆对话框 --> |
| | | <el-dialog title="克隆编码规则" |
| | | append-to-body |
| | | :visible.sync="cloneSettingBox" |
| | | width="800px" |
| | | class="avue-dialog avue-dialog--top" |
| | | style="height: 100vh;" top="-3%"> |
| | | <div> |
| | | <el-row> |
| | | <el-form ref="form" :model="form" label-width="80px" :inline="true"> |
| | | <el-form-item label="编号" required> |
| | | <el-input v-model="cloneCodeRuleForm.id"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="名称" required> |
| | | <el-input v-model="cloneCodeRuleForm.name"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="描述" class="clone-input-textarea"> |
| | | <el-input :autosize="{ minRows: 3, maxRows: 5}" type="textarea" v-model="cloneCodeRuleForm.description"></el-input> |
| | | </el-form-item> |
| | | </el-form> |
| | | </el-row> |
| | | <el-row> |
| | | <p style="margin: 0 0px 16px 50%; font-weight: 500; font-size: 20px; color: #000;">码段管理</p> |
| | | <avue-crud |
| | | class="clone-avue-crud" |
| | | :option="cloneOption" |
| | | :table-loading="cloneTableLoading" |
| | | :data="cloneData" |
| | | @on-load="cloneDataOnLoad"> |
| | | <template slot="menu" slot-scope="scope"> |
| | | <el-button |
| | | type="text" |
| | | size="small" |
| | | icon="el-icon-arrow-up" |
| | | v-show="scope.row.orderNum > 1" |
| | | plain |
| | | @click="upOrderNum(scope.row)">上移 |
| | | </el-button> |
| | | <el-button |
| | | type="text" |
| | | size="small" |
| | | icon="el-icon-arrow-down" |
| | | plain |
| | | @click="downOrderNum(scope.row)">下移 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </el-row> |
| | | </div> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="saveCloneCodeRule">保 存</el-button> |
| | | <el-button @click="cloneSettingBox = false">取 消</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <!-- 编码规则,从其他规则克隆对话框 --> |
| | | <el-dialog title="克隆编码规则的基础信息" |
| | | append-to-body |
| | | class="avue-dialog avue-dialog--top" |
| | | :visible.sync="cloneOtherCodeRuleSettingBox" |
| | | width="800px" |
| | | style="height: 100vh;" top="-3%" |
| | | destroy-on-close> |
| | | <div> |
| | | <el-row> |
| | | <p style="margin-top: -20px; margin-bottom: 4px; font-weight: 570; font-size: 19px; color: #0e2d5f;">编码规则</p> |
| | | <avue-crud |
| | | class="other-clone-coderule-crud" |
| | | :option="cloneCodeRuleOption" |
| | | @row-click="codeOtherCloneRuleRowClick" |
| | | :table-loading="loading" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudCloneCodeRuleOther" |
| | | @size-change="sizeChange" |
| | | @selection-change="selectionOtherCloneCodeRuleChange" |
| | | @on-load="onLoad"> |
| | | </avue-crud> |
| | | </el-row> |
| | | <el-row style="margin-top:10px;border-top: 1px solid #EBEEF5;"> |
| | | <p style="margin-top: 10px; margin-bottom: 4px; font-weight: 570; font-size: 19px; color: #0e2d5f;">码段信息</p> |
| | | <avue-crud |
| | | class="other-clone-codebasic-crud" |
| | | :option="cloneBasicOption" |
| | | ref="crudCloneCodeBasicOther" |
| | | :table-loading="loadingBasic" |
| | | :data="basicData" |
| | | @row-click="codeOtherCloneBasicRowClick" |
| | | @selection-change="selectionOtherCloneCodeBasicChange"> |
| | | </avue-crud> |
| | | </el-row> |
| | | </div> |
| | | <div slot="footer" class="dialog-footer" style="height: 50px;"> |
| | | <el-button type="primary" @click="saveOtherCodeBasic">保 存</el-button> |
| | | <el-button @click="cloneOtherCodeRuleSettingBox = false">取 消</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <!-- 编码规则,转移所有者对话框 --> |
| | | <el-dialog |
| | | :visible.sync="escapeOwnerVisible" |
| | | append-to-body |
| | | title="转移所有者" |
| | | width="30%"> |
| | | <el-select v-model="ruleOwner" placeholder="请选择" class="selects"> |
| | | <el-option |
| | | v-for="item in ruleAdminUserList" |
| | | :key="item.VALUE" |
| | | :label="item.LABLE" |
| | | :value="item.VALUE" |
| | | class="seloption"> |
| | | </el-option> |
| | | </el-select> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="escapeOwnerVisible = false">取 消</el-button> |
| | | <el-button type="primary" @click="escapeOwnerConfirm">确 定</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | |
| | | <!-- 最大流水号对话框 --> |
| | | <max-serialnum-dialog :visible.sync="maxSerial.visible" :ruleOid="maxSerial.ruleOid"></max-serialnum-dialog> |
| | | |
| | | <!-- 基础码段展示区域 --> |
| | | <basic-container class="code-basicsec-container"> |
| | | <p style="margin-top: -5px; margin-bottom: 4px; font-weight: 570; font-size: 19px; color: #0e2d5f;">码段管理</p> |
| | | <avue-crud class="code-basic-crud" |
| | | :option="optionBasic" |
| | | ref="crudBasic" |
| | | :table-loading="loadingBasic" |
| | | :data="basicData" |
| | | @row-click="codeBasicSecRowClick" |
| | | @search-change="basicSearchChange" |
| | | @search-reset="basicSearchReset" |
| | | :permission="permissionList" |
| | | @selection-change="selectionBasicChange" |
| | | @refresh-change="refreshChangeBasicSec"> |
| | | |
| | | <!-- 基础码段表格内操作按钮 --> |
| | | <template slot="menu" slot-scope="scope"> |
| | | <el-button |
| | | type="text" |
| | | size="small" |
| | | icon="el-icon-position" |
| | | v-show="scope.row.lcStatus=='Editing' ? true:false" |
| | | icon="el-icon-view" |
| | | v-show="currentRuleLcStatus != 'Editing'" |
| | | plain |
| | | @click="enableOrDeactivatse(scope.row.oid,'release')">发 布 |
| | | @click="openBasicDialog('view',scope.row)">查看 |
| | | </el-button> |
| | | <el-button type="text" |
| | | <el-button |
| | | type="text" |
| | | size="small" |
| | | v-show="scope.row.lcStatus=='Released' ? true:false" |
| | | icon="el-icon-video-pause" |
| | | icon="el-icon-edit" |
| | | v-show="currentRuleLcStatus === 'Editing'" |
| | | plain |
| | | @click="enableOrDeactivatse(scope.row.oid,'disable')">停 用 |
| | | @click="openBasicDialog('edit',scope.row)">编辑 |
| | | </el-button> |
| | | <el-button type="text" |
| | | <el-button |
| | | type="text" |
| | | size="small" |
| | | v-show="scope.row.lcStatus=='Disabled' ? true:false" |
| | | icon="el-icon-video-play" |
| | | icon="el-icon-setting" |
| | | v-show="scope.row.secType === 'codeclassifysec' || scope.row.secType == 'codefixedsec'" |
| | | plain |
| | | @click="enableOrDeactivatse(scope.row.oid,'enable')">启 用 |
| | | @click="openBasicSecCodeValueMgr(scope.row)">码值管理 |
| | | </el-button> |
| | | <el-button |
| | | type="text" |
| | | size="small" |
| | | icon="el-icon-arrow-up" |
| | | v-show="scope.row.orderNum > 1" |
| | | plain |
| | | @click="upOrderNum(scope.row)">上移 |
| | | </el-button> |
| | | <el-button |
| | | type="text" |
| | | size="small" |
| | | icon="el-icon-arrow-down" |
| | | plain |
| | | @click="downOrderNum(scope.row)">下移 |
| | | </el-button> |
| | | </template> |
| | | <!-- 表格上方按钮区域 --> |
| | | |
| | | <!-- 基础码段表格左上方按钮区域 --> |
| | | <template slot="menuLeft" slot-scope="scope"> |
| | | <el-button type="primary" |
| | | size="small" |
| | | icon="el-icon-plus" |
| | | :disabled="selectionList.length <= 0" |
| | | @click="openAddBasicCodeSec"> |
| | | 新 增 |
| | | </el-button> |
| | | <el-button type="danger" |
| | | size="small" |
| | | icon="el-icon-delete" |
| | | plain |
| | | @click="handleDelete"> |
| | | 删 除 |
| | | size="small" |
| | | icon="el-icon-delete" |
| | | :disabled="selectionList.length <= 0" |
| | | plain |
| | | @click="deleteBasicCode(scope.row)"> |
| | | 删 除 |
| | | </el-button> |
| | | <el-button type="primary" |
| | | size="small" |
| | | icon="el-icon-search" |
| | | plain |
| | | @click="openAdvancedQuery('codeRule')"> |
| | | 高级查询 |
| | | </el-button> |
| | | <el-button |
| | | size="small" |
| | | icon="icon-kelong" |
| | | plain |
| | | @click="openCodeRuleDialog"> |
| | | 克 隆 |
| | | </el-button> |
| | | <el-button |
| | | size="small" |
| | | icon="icon-lianjiekelong" |
| | | style="font-size: 12px;" |
| | | plain |
| | | @click="openOtherCodeRuleDialog"> |
| | | 从其他规则中克隆码段 |
| | | </el-button> |
| | | <el-button |
| | | size="small" |
| | | icon="el-icon-s-help" |
| | | plain |
| | | @click="handleRange"> |
| | | 使用范围 |
| | | </el-button> |
| | | <el-button |
| | | size="small" |
| | | icon="icon-qingkong" |
| | | icon="el-icon-search" |
| | | plain |
| | | @click="clearAllCodeSec"> |
| | | 清空码值 |
| | | </el-button> |
| | | <el-button |
| | | size="small" |
| | | icon="el-icon-guide" |
| | | plain |
| | | @click="escapeOwner"> |
| | | 转移所有者 |
| | | :disabled="selectionList.length <= 0" |
| | | @click="openAdvancedQuery('codeBasicSec')"> |
| | | 高级查询 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </basic-container> |
| | | |
| | | <!-- 高级查询对话框 --> |
| | | <advanced-query |
| | | :ref="advancedQueryParam.ref" |
| | | :options="advancedQueryParam.options" |
| | | :visible.sync="advancedQueryParam.advancedQuerySettingBox" |
| | | @echoContion="echoSeniorContionMap"> |
| | | </advanced-query> |
| | | </avue-crud> |
| | | </basic-container> |
| | | |
| | | <!-- 编码规则相关对话框 --> |
| | | <el-dialog title="编码规则使用范围" |
| | | append-to-body |
| | | :visible.sync="codeRangeSettingBox" |
| | | width="800px" |
| | | style="height: 116vh; margin-top: -10vh;"> |
| | | <avue-crud |
| | | :option="dialogeOption" |
| | | :table-loading="dialogLoading" |
| | | :data="useRangeData" |
| | | @refresh-change="refreshUseRangeChange"> |
| | | </avue-crud> |
| | | </el-dialog> |
| | | |
| | | <!-- 编码规则,克隆对话框 --> |
| | | <el-dialog title="克隆编码规则" |
| | | append-to-body |
| | | :visible.sync="cloneSettingBox" |
| | | width="800px" |
| | | style="height: 120vh; margin-top: -14vh; overflow: hidden;"> |
| | | <div style="overflow-y: auto; height: 78vh"> |
| | | <el-row> |
| | | <el-form ref="form" :model="form" label-width="80px" :inline="true"> |
| | | <el-form-item label="编号" required> |
| | | <el-input v-model="cloneCodeRuleForm.id"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="名称" required> |
| | | <el-input v-model="cloneCodeRuleForm.name"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="描述" class="clone-input-textarea"> |
| | | <el-input :autosize="{ minRows: 3, maxRows: 5}" type="textarea" v-model="cloneCodeRuleForm.description"></el-input> |
| | | </el-form-item> |
| | | </el-form> |
| | | </el-row> |
| | | <el-row> |
| | | <p style="margin: -3vh 0px 16px 50%; font-weight: 500; font-size: 16px; color: #000;">码段管理</p> |
| | | <avue-crud |
| | | class="clone-avue-crud" |
| | | :option="cloneOption" |
| | | :table-loading="cloneTableLoading" |
| | | :data="cloneData" |
| | | @on-load="cloneDataOnLoad"> |
| | | <template slot="menu" slot-scope="scope"> |
| | | <el-button |
| | | type="text" |
| | | size="small" |
| | | icon="el-icon-arrow-up" |
| | | v-show="scope.row.orderNum > 1" |
| | | plain |
| | | @click="upOrderNum(scope.row)">上移 |
| | | </el-button> |
| | | <el-button |
| | | type="text" |
| | | size="small" |
| | | icon="el-icon-arrow-down" |
| | | plain |
| | | @click="downOrderNum(scope.row)">下移 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </el-row> |
| | | </div> |
| | | <div slot="footer" class="dialog-footer" style="height: 50px; margin-top: -4vh;"> |
| | | <el-button type="primary" @click="saveCloneCodeRule">保 存</el-button> |
| | | <el-button @click="cloneSettingBox = false">取 消</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <!-- 编码规则,从其他规则克隆对话框 --> |
| | | <el-dialog title="克隆编码规则的基础信息" |
| | | append-to-body |
| | | :visible.sync="cloneOtherCodeRuleSettingBox" |
| | | width="800px" |
| | | style="height: 150vh; margin-top: -14vh;" |
| | | destroy-on-close> |
| | | <div> |
| | | <el-row> |
| | | <p style="margin-top: -12px; margin-bottom: 4px; font-weight: 570; font-size: 19px; color: #0e2d5f;">编码规则</p> |
| | | <avue-crud |
| | | class="other-clone-coderule-crud" |
| | | :option="cloneCodeRuleOption" |
| | | @row-click="codeOtherCloneRuleRowClick" |
| | | :table-loading="loading" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudCloneCodeRuleOther" |
| | | @size-change="sizeChange" |
| | | @selection-change="selectionOtherCloneCodeRuleChange" |
| | | @on-load="onLoad"> |
| | | </avue-crud> |
| | | </el-row> |
| | | <el-row> |
| | | <p style="margin-top: -12px; margin-bottom: 4px; font-weight: 570; font-size: 19px; color: #0e2d5f;">码段信息</p> |
| | | <avue-crud |
| | | class="other-clone-codebasic-crud" |
| | | :option="cloneBasicOption" |
| | | ref="crudCloneCodeBasicOther" |
| | | :table-loading="loadingBasic" |
| | | :data="basicData" |
| | | @row-click="codeOtherCloneBasicRowClick" |
| | | @selection-change="selectionOtherCloneCodeBasicChange"> |
| | | </avue-crud> |
| | | </el-row> |
| | | </div> |
| | | <div slot="footer" class="dialog-footer" style="height: 50px; margin-top: -4vh;"> |
| | | <el-button type="primary" @click="saveOtherCodeBasic">保 存</el-button> |
| | | <el-button @click="cloneOtherCodeRuleSettingBox = false">取 消</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <!-- 编码规则,转移所有者对话框 --> |
| | | <el-dialog |
| | | :visible.sync="escapeOwnerVisible" |
| | | append-to-body |
| | | title="转移所有者" |
| | | width="30%"> |
| | | <el-select v-model="ruleOwner" placeholder="请选择" class="selects"> |
| | | <el-option |
| | | v-for="item in ruleAdminUserList" |
| | | :key="item.VALUE" |
| | | :label="item.LABLE" |
| | | :value="item.VALUE" |
| | | class="seloption"> |
| | | </el-option> |
| | | </el-select> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="escapeOwnerVisible = false">取 消</el-button> |
| | | <el-button type="primary" @click="escapeOwnerConfirm">确 定</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | |
| | | <!-- 基础码段展示区域 --> |
| | | <basic-container class="code-basicsec-container"> |
| | | <p style="margin-top: -5px; margin-bottom: 4px; font-weight: 570; font-size: 19px; color: #0e2d5f;">码段管理</p> |
| | | <avue-crud class="code-basic-crud" |
| | | :option="optionBasic" |
| | | ref="crudBasic" |
| | | :table-loading="loadingBasic" |
| | | :data="basicData" |
| | | @row-click="codeBasicSecRowClick" |
| | | @search-change="basicSearchChange" |
| | | @search-reset="basicSearchReset" |
| | | :permission="permissionList" |
| | | @selection-change="selectionBasicChange" |
| | | @refresh-change="refreshChangeBasicSec"> |
| | | |
| | | <!-- 基础码段表格内操作按钮 --> |
| | | <template slot="menu" slot-scope="scope"> |
| | | <el-button |
| | | type="text" |
| | | size="small" |
| | | icon="el-icon-view" |
| | | v-show="currentRuleLcStatus != 'Editing'" |
| | | plain |
| | | @click="openBasicDialog('view',scope.row)">查看 |
| | | </el-button> |
| | | <el-button |
| | | type="text" |
| | | size="small" |
| | | icon="el-icon-edit" |
| | | v-show="currentRuleLcStatus === 'Editing'" |
| | | plain |
| | | @click="openBasicDialog('edit',scope.row)">编辑 |
| | | </el-button> |
| | | <el-button |
| | | type="text" |
| | | size="small" |
| | | icon="el-icon-setting" |
| | | v-show="scope.row.secType === 'codeclassifysec' || scope.row.secType == 'codefixedsec'" |
| | | plain |
| | | @click="openBasicSecCodeValueMgr(scope.row)">码值管理 |
| | | </el-button> |
| | | <el-button |
| | | type="text" |
| | | size="small" |
| | | icon="el-icon-arrow-up" |
| | | v-show="scope.row.orderNum > 1" |
| | | plain |
| | | @click="upOrderNum(scope.row)">上移 |
| | | </el-button> |
| | | <el-button |
| | | type="text" |
| | | size="small" |
| | | icon="el-icon-arrow-down" |
| | | plain |
| | | @click="downOrderNum(scope.row)">下移 |
| | | </el-button> |
| | | </template> |
| | | |
| | | <!-- 基础码段表格左上方按钮区域 --> |
| | | <template slot="menuLeft" slot-scope="scope"> |
| | | <el-button type="primary" |
| | | size="small" |
| | | icon="el-icon-plus" |
| | | :disabled="selectionList.length <= 0" |
| | | @click="openAddBasicCodeSec"> |
| | | 新 增 |
| | | </el-button> |
| | | <el-button type="danger" |
| | | size="small" |
| | | icon="el-icon-delete" |
| | | :disabled="selectionList.length <= 0" |
| | | plain |
| | | @click="deleteBasicCode(scope.row)"> |
| | | 删 除 |
| | | </el-button> |
| | | <el-button type="primary" |
| | | size="small" |
| | | icon="el-icon-search" |
| | | plain |
| | | :disabled="selectionList.length <= 0" |
| | | @click="openAdvancedQuery('codeBasicSec')"> |
| | | 高级查询 |
| | | </el-button> |
| | | </template> |
| | | |
| | | </avue-crud> |
| | | </basic-container> |
| | | |
| | | <!-- 码段码值管理对话框 --> |
| | | <el-dialog title="码段码值管理" |
| | | :visible.sync="isShowBasicSecCodeValueMgr" |
| | | :width="isShowFixedForm ? '68vw':'50vw'" |
| | | append-to-body |
| | | style="height: 116vh; margin-top: -10vh;" |
| | | @close="clearFixedOrClassifyForm('close')" |
| | | destroy-on-close> |
| | | <!-- 分类码段码值管理 --> |
| | | <el-row v-show="!isShowFixedForm"> |
| | | <el-col :span="11"> |
| | | <basic-container> |
| | | <div class="box classify_value_box" style="height:65vh; margin-bottom:-40px"> |
| | | <el-scrollbar style="border-bottom-right-radius:8px "> |
| | | <basic-container> |
| | | <div class="abox" style="height:54vh"> |
| | | <avue-tree |
| | | :data="classifyValueTreeData" |
| | | :option="classisyValueTreeOption" |
| | | @node-click="classisyValueTreeOnodeClick" |
| | | style="overflow-y: auto; height: 54vh"/> |
| | | </div> |
| | | </basic-container> |
| | | </el-scrollbar> |
| | | </div> |
| | | <div style="margin-top:20px; display: flex; align-items:center; justify-content:center;"> |
| | | <el-button size="mini" type="primary" icon="el-icon-arrow-up" class="button" @click="codeClassifyValueOpetion('up')">上移</el-button> |
| | | <el-button size="mini" type="primary" icon="el-icon-arrow-down" class="button" @click="codeClassifyValueOpetion('down')">下移</el-button> |
| | | </div> |
| | | </basic-container> |
| | | </el-col> |
| | | <el-col :span="13"> |
| | | <basic-container> |
| | | <div class="box" style="height:65vh; margin-bottom:-40px"> |
| | | <el-form> |
| | | <el-form-item label="码值:" :label-width="50" required> |
| | | <el-input style="width: 18vw" v-model="codeClassifyForm.id"></el-input> |
| | | </el-form-item > |
| | | <el-form-item label="名称:" :label-width="50" required> |
| | | <el-input style="width: 18vw" v-model="codeClassifyForm.name"></el-input> |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | <div style="margin-top:20px; display: flex; align-items:center; justify-content:center;"> |
| | | <el-button size="mini" type="primary" icon="el-icon-circle-plus" class="button" @click="addCodeSecValue('codeclassifyvaluesec')">添加</el-button> |
| | | <el-button :disabled="selectedFixedOrCodeclassifyValue==''" size="mini" type="success" plain icon="el-icon-edit-outline" class="button" @click="editCodeSecValue('codeclassifyvaluesec')">修改</el-button> |
| | | <el-button :disabled="selectedFixedOrCodeclassifyValue==''" size="mini" type="danger" icon="el-icon-close" class="button" @click="delCodeSecValue('codeclassifyvaluesec')">删除</el-button> |
| | | <el-button size="mini" type="warning" plain icon="el-icon-close" class="button" @click = "clearFixedOrClassifyForm('codeclassifyvaluesec')">取消</el-button> |
| | | </div> |
| | | </basic-container> |
| | | </el-col> |
| | | </el-row> |
| | | <!-- 固定码段码值管理 --> |
| | | <el-row v-show="isShowFixedForm"> |
| | | <el-col :span="15"> |
| | | <basic-container> |
| | | <div class="box fixedbox" style="height:65vh; margin-bottom:-40px"> |
| | | <avue-crud |
| | | class="fixed-avue-crud" |
| | | ref="crudFixedValue" |
| | | :data="fixedValueData" |
| | | :option="fixedValueOption" |
| | | :table-loading="fixedValueOptionLoading" |
| | | @row-click="selectedCodeValueRow"> |
| | | <!-- 表格内按钮配置 --> |
| | | <template slot="menu" slot-scope="scope"> |
| | | <el-button size="mini" type="text" icon="el-icon-arrow-up" @click="codeFixedValueOpetion('up',scope.row)">上移</el-button> |
| | | <el-button size="mini" type="text" icon="el-icon-arrow-down" @click="codeFixedValueOpetion('down',scope.row)">下移</el-button> |
| | | <el-button size="mini" type="text" icon="el-icon-minus" @click="codeFixedValueOpetion('remove',scope.row)">移除</el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </div> |
| | | <div style="margin-top:20px;"> |
| | | <el-button size="mini" type="primary" icon="el-icon-success" class="button" @click="saveCodeFixedOrClassifyValueOption('fixedValue')">保存</el-button> |
| | | </div> |
| | | </basic-container> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <basic-container> |
| | | <div class="box" style="height: 65vh; margin-bottom:-40px; overflow:hidden;" > |
| | | <div style="overflow-y:auto;height: 60vh;"> |
| | | <!-- 码段码值管理对话框 --> |
| | | <el-dialog title="码段码值管理" |
| | | :visible.sync="isShowBasicSecCodeValueMgr" |
| | | :width="isShowFixedForm ? '69vw':'50vw'" |
| | | append-to-body |
| | | class="avue-dialog avue-dialog--top" |
| | | style="height: 100vh;" top="-3%" |
| | | @close="clearFixedOrClassifyForm('close')" |
| | | destroy-on-close> |
| | | <!-- 分类码段码值管理 --> |
| | | <el-row v-show="!isShowFixedForm"> |
| | | <el-col :span="11"> |
| | | <basic-container> |
| | | <div class="box classify_value_box" style="height:60vh; margin-bottom:-40px"> |
| | | <basic-container> |
| | | <div class="abox" style="height:54vh"> |
| | | <avue-tree |
| | | :data="classifyValueTreeData" |
| | | :option="classisyValueTreeOption" |
| | | @node-click="classisyValueTreeOnodeClick" |
| | | style=""/> |
| | | </div> |
| | | </basic-container> |
| | | </div> |
| | | <div style="margin-top:20px; display: flex; align-items:center; justify-content:center;"> |
| | | <el-button size="mini" type="primary" icon="el-icon-arrow-up" class="button" @click="codeClassifyValueOpetion('up')">上移</el-button> |
| | | <el-button size="mini" type="primary" icon="el-icon-arrow-down" class="button" @click="codeClassifyValueOpetion('down')">下移</el-button> |
| | | </div> |
| | | </basic-container> |
| | | </el-col> |
| | | <el-col :span="13"> |
| | | <basic-container> |
| | | <div class="box" style="height:60vh; margin-bottom:-40px"> |
| | | <el-form> |
| | | <el-form-item label="码值:" label-width="54px" required> |
| | | <el-input style="width: 19.5vw" v-model="codeFixdForm.id"></el-input> |
| | | <el-form-item label="码值:" :label-width="50" required> |
| | | <el-input style="width: 18vw" v-model="codeClassifyForm.id"></el-input> |
| | | </el-form-item > |
| | | <el-form-item label="描述:"> |
| | | <el-input type="textarea" style="width: 20vw;" v-model="codeFixdForm.description"></el-input> |
| | | <el-form-item label="名称:" :label-width="50" required> |
| | | <el-input style="width: 18vw" v-model="codeClassifyForm.name"></el-input> |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | </div> |
| | | <div style="margin-top:20px; display: flex; align-items:center; justify-content:center;"> |
| | | <el-button :disabled="selectedFixedOrCodeclassifyValue!=''" size="mini" type="primary" icon="el-icon-circle-plus" class="button" @click="addCodeSecValue('codefixedsec')">添加</el-button> |
| | | <el-button :disabled="selectedFixedOrCodeclassifyValue==''" size="mini" type="success" plain icon="el-icon-edit-outline" class="button" @click="editCodeSecValue('codefixedsec')">修改</el-button> |
| | | <el-button :disabled="selectedFixedOrCodeclassifyValue==''" size="mini" type="danger" icon="el-icon-close" class="button" @click="delCodeSecValue('codefixedsec')">删除</el-button> |
| | | <el-button size="mini" type="warning" plain icon="el-icon-close" class="button" @click = "clearFixedOrClassifyForm('codefixedsec')">取消</el-button> |
| | | </div> |
| | | </basic-container> |
| | | </el-col> |
| | | </el-row> |
| | | </el-dialog> |
| | | <div style="margin-top:20px; display: flex; align-items:center; justify-content:center;"> |
| | | <el-button size="mini" type="primary" icon="el-icon-circle-plus" class="button" @click="addCodeSecValue('codeclassifyvaluesec')">添加</el-button> |
| | | <el-button :disabled="selectedFixedOrCodeclassifyValue==''" size="mini" type="success" plain icon="el-icon-edit-outline" class="button" @click="editCodeSecValue('codeclassifyvaluesec')">修改</el-button> |
| | | <el-button :disabled="selectedFixedOrCodeclassifyValue==''" size="mini" type="danger" icon="el-icon-close" class="button" @click="delCodeSecValue('codeclassifyvaluesec')">删除</el-button> |
| | | <el-button size="mini" type="warning" plain icon="el-icon-close" class="button" @click = "clearFixedOrClassifyForm('codeclassifyvaluesec')">取消</el-button> |
| | | </div> |
| | | </basic-container> |
| | | </el-col> |
| | | </el-row> |
| | | <!-- 固定码段码值管理 --> |
| | | <el-row v-show="isShowFixedForm"> |
| | | <el-col :span="15"> |
| | | <basic-container> |
| | | <div class="box fixedbox" style="height:63vh; margin-bottom:-40px"> |
| | | <avue-crud |
| | | class="fixed-avue-crud" |
| | | ref="crudFixedValue" |
| | | :data="fixedValueData" |
| | | :option="fixedValueOption" |
| | | :table-loading="fixedValueOptionLoading" |
| | | @row-click="selectedCodeValueRow"> |
| | | <!-- 表格内按钮配置 --> |
| | | <template slot="menu" slot-scope="scope"> |
| | | <el-button size="mini" type="text" icon="el-icon-arrow-up" @click="codeFixedValueOpetion('up',scope.row)">上移</el-button> |
| | | <el-button size="mini" type="text" icon="el-icon-arrow-down" @click="codeFixedValueOpetion('down',scope.row)">下移</el-button> |
| | | <el-button size="mini" type="text" icon="el-icon-minus" @click="codeFixedValueOpetion('remove',scope.row)">移除</el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </div> |
| | | <div style="margin-top:10px;"> |
| | | <el-button size="mini" type="primary" icon="el-icon-success" class="button" @click="saveCodeFixedOrClassifyValueOption('fixedValue')">保存</el-button> |
| | | </div> |
| | | </basic-container> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <basic-container> |
| | | <div class="box" style="height: 63vh; margin-bottom:-40px; overflow:hidden;" > |
| | | <div style="overflow-y:auto;height: 58vh;"> |
| | | <el-form> |
| | | <el-form-item label="码值:" label-width="54px" required> |
| | | <el-input style="width: 19.5vw" v-model="codeFixdForm.id"></el-input> |
| | | </el-form-item > |
| | | <el-form-item label="描述:" label-width="54px"> |
| | | <el-input type="textarea" style="width: 19.5vw;" v-model="codeFixdForm.description"></el-input> |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | </div> |
| | | <div style="margin-top:10px; display: flex; align-items:center; justify-content:center;"> |
| | | <el-button :disabled="selectedFixedOrCodeclassifyValue!=''" size="mini" type="primary" icon="el-icon-circle-plus" class="button" @click="addCodeSecValue('codefixedsec')">添加</el-button> |
| | | <el-button :disabled="selectedFixedOrCodeclassifyValue==''" size="mini" type="success" plain icon="el-icon-edit-outline" class="button" @click="editCodeSecValue('codefixedsec')">修改</el-button> |
| | | <el-button :disabled="selectedFixedOrCodeclassifyValue==''" size="mini" type="danger" icon="el-icon-close" class="button" @click="delCodeSecValue('codefixedsec')">删除</el-button> |
| | | <el-button size="mini" type="warning" plain icon="el-icon-close" class="button" @click = "clearFixedOrClassifyForm('codefixedsec')">取消</el-button> |
| | | </div> |
| | | </basic-container> |
| | | </el-col> |
| | | </el-row> |
| | | </el-dialog> |
| | | |
| | | <!-- 基础码段新增相关对话框 --> |
| | | <el-dialog :title="basicSecDialogTitle" |
| | | :visible.sync="addBasicCodeSettingBox" |
| | | width="60vw" |
| | | append-to-body |
| | | style="height: 115vh; margin-top: -13vh; overflow: hidden" |
| | | destroy-on-close |
| | | lock-scroll |
| | | :close-on-click-modal="false" |
| | | @close="clearBasicAddForm"> |
| | | <!-- 基础码段新增相关对话框 --> |
| | | <el-dialog :title="basicSecDialogTitle" |
| | | :visible.sync="addBasicCodeSettingBox" |
| | | width="900px" |
| | | append-to-body |
| | | class="avue-dialog avue-dialog--top" |
| | | style="height: 100vh;" top="-3%" |
| | | destroy-on-close |
| | | lock-scroll |
| | | :close-on-click-modal="false" |
| | | @close="clearBasicAddForm"> |
| | | |
| | | <!-- 第一层对话框,添加码段信息对话框中的内容 --> |
| | | <div class="add-basicsec-total" style="overflow-y: auto; height: 70vh"> |
| | | <el-form :model="form" class="add-basicsec-form"> |
| | | <span class="left"> |
| | | <el-form-item label="码段编号:" :label-width="leftFormLabelWidth" required> |
| | | <el-input v-model="form.id" :readonly="basicSecOnlyRead" ref="id"></el-input> |
| | | </el-form-item> |
| | | <!-- 第一层对话框,添加码段信息对话框中的内容 --> |
| | | <div class="add-basicsec-total" style="overflow-y: auto; height: 58vh"> |
| | | <el-form :model="form" class="add-basicsec-form"> |
| | | <span class="left"> |
| | | <el-form-item label="码段编号:" :label-width="leftFormLabelWidth" required> |
| | | <el-input v-model="form.id" :readonly="basicSecOnlyRead" ref="id"></el-input> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="码段名称:" :label-width="leftFormLabelWidth" required> |
| | | <el-input ref="name" v-model="form.name" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="码段名称:" :label-width="leftFormLabelWidth" required> |
| | | <el-input ref="name" v-model="form.name" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="码段类型" :label-width="leftFormLabelWidth" required> |
| | | <el-select v-model="form.secType" placeholder="请选择" @change="changeSectypeFormItems(null)" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in enumParam.secTypeList" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="描述:" :label-width="leftFormLabelWidth"> |
| | | <el-input type="textarea" v-model="form.description" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="是否流水依赖:" :label-width="leftFormLabelWidth"> |
| | | <el-switch v-model="form.serialDependFlag" :disabled="basicSecOnlyRead"></el-switch> |
| | | <el-input-number v-show="form.serialDependFlag" v-model="form.serialDependOrder" controls-position="right" :readonly="basicSecOnlyRead"></el-input-number> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="是否为空:" :label-width="leftFormLabelWidth"> |
| | | <el-switch v-model="form.nullableFlag" :disabled="basicSecOnlyRead"></el-switch> |
| | | </el-form-item> |
| | | </span> |
| | | <el-divider direction="vertical"></el-divider> |
| | | <span class="right"> |
| | | <!-- 固定码段 --> |
| | | <div v-show="form.secType==='codefixedsec' ? true:false"> |
| | | <el-form-item label="码段长度类型:" :label-width="rightFormLabelWidth" required> |
| | | <el-select v-model="form.codeSecLengthType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-form-item label="码段类型" :label-width="leftFormLabelWidth" required> |
| | | <el-select v-model="form.secType" placeholder="请选择" @change="changeSectypeFormItems(null)" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in enumParam.codeSecLengthType" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="码段的长度:" :label-width="rightFormLabelWidth" required> |
| | | <el-input v-model.number="form.codeSecLength" ref="codeSecLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 属性码段 --> |
| | | <div v-show="form.secType==='codeattrsec' ? true:false"> |
| | | <el-form-item label="属性:" :label-width="rightFormLabelWidth" required> |
| | | <el-input |
| | | placeholder="请选择" |
| | | prefix-icon="el-icon-search" |
| | | readonly="true" |
| | | ref="referAttributeId" |
| | | v-model="form.referAttributeName" |
| | | @focus="openAttrSelectOrGetValue('attr')" |
| | | :disabled="basicSecOnlyRead"> |
| | | <i slot="suffix" class="el-icon-circle-close" @click="clearAttrDataByIcon('attr')" style="cursor: pointer;"></i> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="属性所在分类:" :label-width="rightFormLabelWidth"> |
| | | <el-input |
| | | v-model="form.referCodeClassifyOidName" |
| | | disabled> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="取值规则:" :label-width="rightFormLabelWidth"> |
| | | <el-input |
| | | placeholder="请选择" |
| | | prefix-icon="el-icon-search" |
| | | readonly="true" |
| | | v-model="form.getValueClass" |
| | | :disabled="basicSecOnlyRead" |
| | | @focus="openAttrSelectOrGetValue('value')"> |
| | | <i slot="suffix" class="el-icon-circle-close" @click="clearAttrDataByIcon('value')" style="margin-right: 5px;cursor: pointer;"></i> |
| | | </el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 流水码段 --> |
| | | <div v-show="form.secType==='codeserialsec' ? true:false"> |
| | | <el-form-item label="码段的长度:" :label-width="rightFormLabelWidth" required> |
| | | <el-input v-model.number="form.codeSecLength" ref="seriaCodeSecLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="流水号的起始值:" :label-width="rightFormLabelWidth"> |
| | | <el-input v-model.number="form.serialStart" ref="serialStart" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="流水的步长:" :label-width="rightFormLabelWidth"> |
| | | <el-input v-model.number="form.serialStep" ref="serialStep" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="编码补位方式:" :label-width="rightFormLabelWidth" required> |
| | | <el-select v-model="form.codeFillType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option label="左补位" value="codeattrsec" |
| | | v-for="item in enumParam.codeFillType" |
| | | v-for="item in enumParam.secTypeList" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item v-if="form.codeFillType!='code_fill_none'" label="补位时的字符:" :label-width="rightFormLabelWidth"> |
| | | <el-select v-model="form.codeFillSeparator" @blur="inputSelectBlur" filterable placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in enumParam.codeFillSeparator" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | |
| | | <el-form-item label="描述:" :label-width="leftFormLabelWidth"> |
| | | <el-input type="textarea" v-model="form.description" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="填充长度:" :label-width="rightFormLabelWidth" required> |
| | | <el-input v-model.number="form.codeFillLength" ref="codeFillLength" :readonly="basicSecOnlyRead"></el-input> |
| | | |
| | | <el-form-item label="是否流水依赖:" :label-width="leftFormLabelWidth"> |
| | | <el-switch v-model="form.serialDependFlag" :disabled="basicSecOnlyRead" style="margin-right: 20px"></el-switch> |
| | | <el-input-number v-show="form.serialDependFlag" v-model="form.serialDependOrder" controls-position="right" :readonly="basicSecOnlyRead"></el-input-number> |
| | | </el-form-item> |
| | | <el-form-item label="流水上限:" :label-width="rightFormLabelWidth" required> |
| | | <el-input v-model.number="form.codeFillLimit" ref="codeFillLimit" :readonly="basicSecOnlyRead"></el-input> |
| | | |
| | | <el-form-item label="是否为空:" :label-width="leftFormLabelWidth"> |
| | | <el-switch v-model="form.nullableFlag" :disabled="basicSecOnlyRead"></el-switch> |
| | | </el-form-item> |
| | | <el-form-item label="流水是否补码:" :label-width="rightFormLabelWidth" required> |
| | | <el-switch v-model="form.codeFillFlag" :disabled="basicSecOnlyRead"></el-switch> |
| | | </el-form-item> |
| | | <el-form-item label="自定义的流水算法:" :label-width="rightFormLabelWidth"> |
| | | <el-input v-model="form.customCodeSerialClass" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 层级码段 --> |
| | | <div v-show="form.secType==='codelevelsec' ? true:false"> |
| | | <el-form-item label="层级类型:" :label-width="rightFormLabelWidth" required> |
| | | <el-select v-model="form.codeLevelType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in enumParam.codeLevelType" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="层级的值:" :label-width="rightFormLabelWidth"> |
| | | <el-input v-model.number="form.codeLevelValue" ref="codeLevelValue" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="字符截取类型:" :label-width="rightFormLabelWidth" required> |
| | | <el-select v-model="form.valueCutType" placeholder="请选择" :disabled="basicSecOnlyRead" @change="changeCutType($event)"> |
| | | <el-option |
| | | v-for="item in enumParam.codeCutType" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item id="ShowOrHide" v-if="form.valueCutType!='code_cut_none'" label="值截取长度:" :label-width="rightFormLabelWidth"> |
| | | <el-input v-model.number="form.valueCutLength" ref="valueCutLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="取值类型:" :label-width="rightFormLabelWidth"> |
| | | <el-select v-model="form.codeGetValueType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in enumParam.codeGetValueType" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 引用码段 --> |
| | | <div v-show="form.secType==='coderefersec' ? true:false"> |
| | | <el-form-item label="参照引用的业务类型:" label-width="152px" required> |
| | | <el-input |
| | | ref="referBtmId" |
| | | placeholder="请选择" |
| | | prefix-icon="el-icon-search" |
| | | readonly="true" |
| | | v-model="form.referBtmName" |
| | | @focus="openAttrSelectOrGetValue('referBtmId')" |
| | | :disabled="basicSecOnlyRead"> |
| | | <i slot="suffix" class="el-icon-circle-close" @click="clearAttrDataByIcon('referBtmId')" style="margin-right: 5px;cursor: pointer;"></i> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="参照配置:" label-width="152px" required> |
| | | <el-input |
| | | ref="referConfig" |
| | | placeholder="请选择" |
| | | prefix-icon="el-icon-search" |
| | | readonly="true" |
| | | v-model="form.referConfig" |
| | | @focus="openAttrSelectOrGetValue('referConfig')" |
| | | :disabled="basicSecOnlyRead"> |
| | | <i slot="suffix" class="el-icon-circle-close" @click="clearAttrDataByIcon('referConfig')" style="margin-right: 5px;cursor: pointer;"></i> |
| | | </el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 日期码段 --> |
| | | <div v-show="form.secType==='codedatesec' ? true:false"> |
| | | <el-form-item label="日期格式:" :label-width="rightFormLabelWidth" required> |
| | | <el-input ref="codeDateFormatStr" v-model="form.codeDateFormatStr" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 分类码段 --> |
| | | <div v-show="form.secType==='codeclassifysec' ? true:false"> |
| | | <el-form-item label="码段长度类型:" :label-width="rightFormLabelWidth" required> |
| | | <el-select v-model="form.codeSecLengthType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | </span> |
| | | <el-divider direction="vertical"></el-divider> |
| | | <span class="right"> |
| | | <!-- 固定码段 --> |
| | | <div v-show="form.secType==='codefixedsec' ? true:false"> |
| | | <el-form-item label="码段长度类型:" :label-width="rightFormLabelWidth" required> |
| | | <el-select v-model="form.codeSecLengthType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in enumParam.codeSecLengthType" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="码段的长度:" :label-width="rightFormLabelWidth" required> |
| | | <el-input v-model.number="form.codeSecLength" ref="classCodeSecLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="是否自动分配分类值:" :label-width="rightFormLabelWidth"> |
| | | <el-switch v-model="form.matchClassifyValueFlag" :disabled="basicSecOnlyRead"></el-switch> |
| | | </el-form-item> |
| | | <el-form-item label="父分类码段:" :label-width="rightFormLabelWidth"> |
| | | <el-input |
| | | placeholder="请选择" |
| | | prefix-icon="el-icon-search" |
| | | readonly="true" |
| | | v-model="form.parentClassifySecText" |
| | | @focus="openAttrSelectOrGetValue('parentClassifySecOid')" |
| | | :disabled="basicSecOnlyRead"> |
| | | <i slot="suffix" class="el-icon-circle-close" @click="clearAttrDataByIcon('parentClassifySecOid')" style="margin-right: 5px;cursor: pointer;"></i> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="码段的长度:" :label-width="rightFormLabelWidth" required> |
| | | <el-input v-model.number="form.codeSecLength" ref="codeSecLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 属性码段 --> |
| | | <div v-show="form.secType==='codeattrsec' ? true:false"> |
| | | <el-form-item label="属性:" :label-width="rightFormLabelWidth" required> |
| | | <el-input |
| | | placeholder="请选择" |
| | | prefix-icon="el-icon-search" |
| | | readonly="true" |
| | | ref="referAttributeId" |
| | | v-model="form.referAttributeName" |
| | | @focus="openAttrSelectOrGetValue('attr')" |
| | | :disabled="basicSecOnlyRead"> |
| | | <i slot="suffix" class="el-icon-circle-close" @click="clearAttrDataByIcon('attr')" style="cursor: pointer;"></i> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="属性所在分类:" :label-width="rightFormLabelWidth"> |
| | | <el-input |
| | | v-model="form.referCodeClassifyOidName" |
| | | disabled> |
| | | </el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 可变码段 --> |
| | | <div v-show="form.secType==='codevariablesec' ? true:false"> |
| | | <el-form-item label="码段的长度:" :label-width="rightFormLabelWidth" required> |
| | | <el-input v-model.number="form.codeSecLength" ref="varCodeSecLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="编码补位方式:" :label-width="rightFormLabelWidth" required> |
| | | <el-select v-model="form.codeFillType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | </el-form-item> |
| | | <el-form-item label="取值规则:" :label-width="rightFormLabelWidth"> |
| | | <el-input |
| | | placeholder="请选择" |
| | | prefix-icon="el-icon-search" |
| | | readonly="true" |
| | | v-model="form.getValueClass" |
| | | :disabled="basicSecOnlyRead" |
| | | @focus="openAttrSelectOrGetValue('value')"> |
| | | <i slot="suffix" class="el-icon-circle-close" @click="clearAttrDataByIcon('value')" style="margin-right: 5px;cursor: pointer;"></i> |
| | | </el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 流水码段 --> |
| | | <div v-show="form.secType==='codeserialsec' ? true:false"> |
| | | <el-form-item label="码段的长度:" :label-width="rightFormLabelWidth" required> |
| | | <el-input v-model.number="form.codeSecLength" ref="seriaCodeSecLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="流水号的起始值:" :label-width="rightFormLabelWidth"> |
| | | <el-input v-model.number="form.serialStart" ref="serialStart" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="流水的步长:" :label-width="rightFormLabelWidth"> |
| | | <el-input v-model.number="form.serialStep" ref="serialStep" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="编码补位方式:" :label-width="rightFormLabelWidth" required> |
| | | <el-select v-model="form.codeFillType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option label="左补位" value="codeattrsec" |
| | | v-for="item in enumParam.codeFillType" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item v-if="form.codeFillType!='code_fill_none'" label="补位时的字符:" :label-width="rightFormLabelWidth"> |
| | | <el-select v-model="form.codeFillSeparator" filterable @blur="inputSelectBlur" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in enumParam.codeFillSeparator" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </div> |
| | | </span> |
| | | </el-form> |
| | | </div> |
| | | <!-- 第一层对话框的按钮和分隔线条 --> |
| | | <el-divider class="horizontal-line" direction="horizontal"></el-divider> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="saveOrEditBasicCode" :disabled="!showbtn">保 存</el-button> |
| | | <el-button @click="addBasicCodeSettingBox = false">取 消</el-button> |
| | | </div> |
| | | |
| | | <!-- 第二层对话框,属性码段,属性选择对话框 --> |
| | | <el-dialog title="为【属性】选取值" |
| | | append-to-body |
| | | :visible.sync="isShowSelectAttrOption" |
| | | width="78%" |
| | | style="height: 100%; margin-top: -8vh; overflow: hidden"> |
| | | <div style="overflow-y: auto; height: 60vh"> |
| | | <el-row> |
| | | <!-- 左侧主题库分类树 --> |
| | | <el-col :span="5"> |
| | | <div class="box"> |
| | | <el-scrollbar style="height: auto; border-bottom-right-radius:8px "> |
| | | <basic-container> |
| | | <div class="treeBox"> |
| | | <avue-tree :data="attrClassifyTreeData" :option="treeOption" @node-click="nodeClick"/> |
| | | </div> |
| | | </basic-container> |
| | | </el-scrollbar> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item v-if="form.codeFillType!='code_fill_none'" label="补位时的字符:" :label-width="rightFormLabelWidth"> |
| | | <el-select v-model="form.codeFillSeparator" @blur="inputSelectBlur" filterable placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in enumParam.codeFillSeparator" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="填充长度:" :label-width="rightFormLabelWidth" required> |
| | | <el-input v-model.number="form.codeFillLength" ref="codeFillLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="流水上限:" :label-width="rightFormLabelWidth" required> |
| | | <el-input v-model.number="form.codeFillLimit" ref="codeFillLimit" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="流水是否补码:" :label-width="rightFormLabelWidth" required> |
| | | <el-switch v-model="form.codeFillFlag" :disabled="basicSecOnlyRead"></el-switch> |
| | | </el-form-item> |
| | | <el-form-item label="自定义的流水算法:" :label-width="rightFormLabelWidth"> |
| | | <el-input v-model="form.customCodeSerialClass" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | </el-col> |
| | | <!-- 右侧表格显示区域 --> |
| | | <el-col span="19"> |
| | | <basic-container> |
| | | <div class="bbox"> |
| | | <avue-crud |
| | | :data="selectAttrParams.selectAttrData" |
| | | :option="selectAttrParams.attrOption" |
| | | :table-loading="selectAttrParams.selectAttrOptionLoading" |
| | | :ref="selectAttrParams.ref" |
| | | @search-change="selectAttrSearchChange" |
| | | @search-reset="searchAttrReset" |
| | | @row-click="selectionAttrRowClick" |
| | | @selection-change="selectionChangeAttr"> |
| | | </avue-crud> |
| | | <!-- 层级码段 --> |
| | | <div v-show="form.secType==='codelevelsec' ? true:false"> |
| | | <el-form-item label="层级类型:" :label-width="rightFormLabelWidth" required> |
| | | <el-select v-model="form.codeLevelType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in enumParam.codeLevelType" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="层级的值:" :label-width="rightFormLabelWidth"> |
| | | <el-input v-model.number="form.codeLevelValue" ref="codeLevelValue" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="字符截取类型:" :label-width="rightFormLabelWidth" required> |
| | | <el-select v-model="form.valueCutType" placeholder="请选择" :disabled="basicSecOnlyRead" @change="changeCutType($event)"> |
| | | <el-option |
| | | v-for="item in enumParam.codeCutType" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item id="ShowOrHide" v-if="form.valueCutType!='code_cut_none'" label="值截取长度:" :label-width="rightFormLabelWidth"> |
| | | <el-input v-model.number="form.valueCutLength" ref="valueCutLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="取值类型:" :label-width="rightFormLabelWidth"> |
| | | <el-select v-model="form.codeGetValueType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in enumParam.codeGetValueType" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 引用码段 --> |
| | | <div v-show="form.secType==='coderefersec' ? true:false"> |
| | | <el-form-item label="参照引用的业务类型:" label-width="152px" required> |
| | | <el-input |
| | | ref="referBtmId" |
| | | placeholder="请选择" |
| | | prefix-icon="el-icon-search" |
| | | readonly="true" |
| | | v-model="form.referBtmName" |
| | | @focus="openAttrSelectOrGetValue('referBtmId')" |
| | | :disabled="basicSecOnlyRead"> |
| | | <i slot="suffix" class="el-icon-circle-close" @click="clearAttrDataByIcon('referBtmId')" style="margin-right: 5px;cursor: pointer;"></i> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="参照配置:" label-width="152px" required> |
| | | <el-input |
| | | ref="referConfig" |
| | | placeholder="请选择" |
| | | prefix-icon="el-icon-search" |
| | | readonly="true" |
| | | v-model="form.referConfig" |
| | | @focus="openAttrSelectOrGetValue('referConfig')" |
| | | :disabled="basicSecOnlyRead"> |
| | | <i slot="suffix" class="el-icon-circle-close" @click="clearAttrDataByIcon('referConfig')" style="margin-right: 5px;cursor: pointer;"></i> |
| | | </el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 日期码段 --> |
| | | <div v-show="form.secType==='codedatesec' ? true:false"> |
| | | <el-form-item label="日期格式:" :label-width="rightFormLabelWidth" required> |
| | | <el-input ref="codeDateFormatStr" v-model="form.codeDateFormatStr" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 分类码段 --> |
| | | <div v-show="form.secType==='codeclassifysec' ? true:false"> |
| | | <el-form-item label="码段长度类型:" :label-width="rightFormLabelWidth" required> |
| | | <el-select v-model="form.codeSecLengthType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in enumParam.codeSecLengthType" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="码段的长度:" :label-width="rightFormLabelWidth" required> |
| | | <el-input v-model.number="form.codeSecLength" ref="classCodeSecLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="是否自动分配分类值:" :label-width="rightFormLabelWidth"> |
| | | <el-switch v-model="form.matchClassifyValueFlag" :disabled="basicSecOnlyRead"></el-switch> |
| | | </el-form-item> |
| | | <el-form-item label="父分类码段:" :label-width="rightFormLabelWidth"> |
| | | <el-input |
| | | placeholder="请选择" |
| | | prefix-icon="el-icon-search" |
| | | readonly="true" |
| | | v-model="form.parentClassifySecText" |
| | | @focus="openAttrSelectOrGetValue('parentClassifySecOid')" |
| | | :disabled="basicSecOnlyRead"> |
| | | <i slot="suffix" class="el-icon-circle-close" @click="clearAttrDataByIcon('parentClassifySecOid')" style="margin-right: 5px;cursor: pointer;"></i> |
| | | </el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 可变码段 --> |
| | | <div v-show="form.secType==='codevariablesec' ? true:false"> |
| | | <el-form-item label="码段的长度:" :label-width="rightFormLabelWidth" required> |
| | | <el-input v-model.number="form.codeSecLength" ref="varCodeSecLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="编码补位方式:" :label-width="rightFormLabelWidth" required> |
| | | <el-select v-model="form.codeFillType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in enumParam.codeFillType" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item v-if="form.codeFillType!='code_fill_none'" label="补位时的字符:" :label-width="rightFormLabelWidth"> |
| | | <el-select v-model="form.codeFillSeparator" filterable @blur="inputSelectBlur" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in enumParam.codeFillSeparator" |
| | | :key="item.itemValue" |
| | | :label="item.itemName" |
| | | :value="item.itemValue"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </div> |
| | | </span> |
| | | </el-form> |
| | | </div> |
| | | <!-- 第一层对话框的按钮和分隔线条 --> |
| | | <el-divider class="horizontal-line" direction="horizontal"></el-divider> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="saveOrEditBasicCode" :disabled="!showbtn">保 存</el-button> |
| | | <el-button @click="addBasicCodeSettingBox = false">取 消</el-button> |
| | | </div> |
| | | |
| | | <!-- 第二层对话框,属性码段,属性选择对话框 --> |
| | | <el-dialog title="为【属性】选取值" |
| | | append-to-body |
| | | :visible.sync="isShowSelectAttrOption" |
| | | width="78%" |
| | | class="avue-dialog avue-dialog--top" top="-3%" |
| | | style="height: 100%;"> |
| | | <div style="overflow-y: auto; height: 60vh"> |
| | | <el-row> |
| | | <!-- 左侧主题库分类树 --> |
| | | <el-col :span="5"> |
| | | <div class="box"> |
| | | <el-scrollbar style="height: auto; border-bottom-right-radius:8px "> |
| | | <basic-container> |
| | | <div class="treeBox"> |
| | | <avue-tree :data="attrClassifyTreeData" :option="treeOption" @node-click="nodeClick"/> |
| | | </div> |
| | | </basic-container> |
| | | </el-scrollbar> |
| | | </div> |
| | | </basic-container> |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="selectedListClassifyLinkAttr">确 定</el-button> |
| | | <el-button @click="isShowSelectAttrOption = false">取 消</el-button> |
| | | </div> |
| | | </el-col> |
| | | <!-- 右侧表格显示区域 --> |
| | | <el-col span="19"> |
| | | <basic-container> |
| | | <div class="bbox"> |
| | | <avue-crud |
| | | :data="selectAttrParams.selectAttrData" |
| | | :option="selectAttrParams.attrOption" |
| | | :table-loading="selectAttrParams.selectAttrOptionLoading" |
| | | :ref="selectAttrParams.ref" |
| | | @search-change="selectAttrSearchChange" |
| | | @search-reset="searchAttrReset" |
| | | @row-click="selectionAttrRowClick" |
| | | @selection-change="selectionChangeAttr"> |
| | | </avue-crud> |
| | | </div> |
| | | </basic-container> |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="selectedListClassifyLinkAttr">确 定</el-button> |
| | | <el-button @click="isShowSelectAttrOption = false">取 消</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <!-- 第二层对话框,属性码段,公式编辑框对话框组件 --> |
| | | <formula-editor |
| | | ref="formulaEditor" |
| | | @updateFormulaContent="updateFormulaContent" |
| | | :visible.sync="formulaEditorParams.formulaEditorSettingBox" |
| | | :thisSceneTableData="formulaEditorParams.thisSceneTableData" |
| | | :systemVariableTableData="formulaEditorParams.systemVariableTableData"> |
| | | </formula-editor> |
| | | |
| | | <!-- 第二层对话框,为【父分类码段】选取值对话框 --> |
| | | <el-dialog title="为【父分类码段】选取值" |
| | | append-to-body |
| | | :visible.sync="parentClsfyParams.isShowParentClassifySettingBox" |
| | | width="65%" |
| | | style="height: 150vh; margin-top: -13vh;" |
| | | destroy-on-close> |
| | | <avue-crud |
| | | :page.sync="parentClsfyParams.parentClassifyDataPage" |
| | | :ref="parentClsfyParams.ref" |
| | | :option="parentClsfyParams.parentClassifyParentOption" |
| | | :table-loading="parentClsfyParams.classifyDialogLoading" |
| | | :data="parentClsfyParams.parentClassifyData" |
| | | @refresh-change="refreshParentClassifyDataChange" |
| | | @search-change="parentClassifySearchChange" |
| | | @search-reset="parentClassifySearchReset" |
| | | @row-click="parentClassifyRowClick" |
| | | @selection-change="parentClassifySelectionChange" |
| | | @current-change="parentClassifyCurrentChange" |
| | | @size-change="parentClassifySizeChange" |
| | | @on-load="parentClassifyOnLoad"> |
| | | </avue-crud> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="saveSelectedParentClassify">保 存</el-button> |
| | | <el-button @click="parentClsfyParams.isShowParentClassifySettingBox = false">取 消</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <!-- 第二层对话框,为【参照引用的业务类型】选取值对话框 --> |
| | | <refer-btm-type-crud-dialog |
| | | :visible.sync="referBtmDialogParams.selectReferBtmSettingBox" |
| | | :ref="referBtmDialogParams.ref" |
| | | @echoReferBtmType="echoReferBtmType"> |
| | | </refer-btm-type-crud-dialog> |
| | | |
| | | <!-- 第二层对话框,参照配置组件 --> |
| | | <refer-config-dialog |
| | | :display="referConfigVisble" |
| | | @setReferConfigValue="setReferConfigValue" |
| | | :referConfigOption="referConfigOption"> |
| | | </refer-config-dialog> |
| | | |
| | | </el-dialog> |
| | | |
| | | <!-- 第二层对话框,属性码段,公式编辑框对话框组件 --> |
| | | <formula-editor |
| | | ref="formulaEditor" |
| | | @updateFormulaContent="updateFormulaContent" |
| | | :visible.sync="formulaEditorParams.formulaEditorSettingBox" |
| | | :thisSceneTableData="formulaEditorParams.thisSceneTableData" |
| | | :systemVariableTableData="formulaEditorParams.systemVariableTableData"> |
| | | </formula-editor> |
| | | |
| | | <!-- 第二层对话框,为【父分类码段】选取值对话框 --> |
| | | <el-dialog title="为【父分类码段】选取值" |
| | | append-to-body |
| | | :visible.sync="parentClsfyParams.isShowParentClassifySettingBox" |
| | | width="65%" |
| | | style="height: 150vh; margin-top: -13vh;" |
| | | destroy-on-close> |
| | | <avue-crud |
| | | :page.sync="parentClsfyParams.parentClassifyDataPage" |
| | | :ref="parentClsfyParams.ref" |
| | | :option="parentClsfyParams.parentClassifyParentOption" |
| | | :table-loading="parentClsfyParams.classifyDialogLoading" |
| | | :data="parentClsfyParams.parentClassifyData" |
| | | @refresh-change="refreshParentClassifyDataChange" |
| | | @search-change="parentClassifySearchChange" |
| | | @search-reset="parentClassifySearchReset" |
| | | @row-click="parentClassifyRowClick" |
| | | @selection-change="parentClassifySelectionChange" |
| | | @current-change="parentClassifyCurrentChange" |
| | | @size-change="parentClassifySizeChange" |
| | | @on-load="parentClassifyOnLoad"> |
| | | </avue-crud> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="saveSelectedParentClassify">保 存</el-button> |
| | | <el-button @click="parentClsfyParams.isShowParentClassifySettingBox = false">取 消</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <!-- 第二层对话框,为【参照引用的业务类型】选取值对话框 --> |
| | | <refer-btm-type-crud-dialog |
| | | :visible.sync="referBtmDialogParams.selectReferBtmSettingBox" |
| | | :ref="referBtmDialogParams.ref" |
| | | @echoReferBtmType="echoReferBtmType"> |
| | | </refer-btm-type-crud-dialog> |
| | | |
| | | <!-- 第二层对话框,参照配置组件 --> |
| | | <refer-config-dialog |
| | | :display="referConfigVisble" |
| | | @setReferConfigValue="setReferConfigValue" |
| | | :referConfigOption="referConfigOption"> |
| | | </refer-config-dialog> |
| | | |
| | | </el-dialog> |
| | | |
| | | </basic-container> |
| | | </template> |
| | | |
| | | <script> |
| | | import { gridCodeRule, getDetail, add, update, remove, listUseRange, updateStatus,clone,clearAllCode } from "@/api/code/mdmrule"; |
| | | import { |
| | | gridCodeBasicSec, |
| | | downOrderNum, |
| | | upOrderNum, |
| | | deleteData, |
| | | editSave, |
| | | cloneCodeBasic, |
| | | addSave, |
| | | refDataGridClassifySec, |
| | | } from "@/api/code/codebasic"; |
| | | import { gridCodeRule, getDetail, add, update, remove, listUseRange, updateStatus,clone,clearAllCode,checkLikeCodeRule } from "@/api/code/mdmrule"; |
| | | import { gridCodeBasicSec, downOrderNum, upOrderNum, deleteData, editSave, cloneCodeBasic, addSave, refDataGridClassifySec } from "@/api/code/codebasic"; |
| | | import { listClassifyLinkAttr } from "@/api/code/codeclassify"; |
| | | import { gridCodeFixedValue,addSaveCodeFixedValue,deleteCodeFixedValue,editCodeFixedValue,saveOrder } from "@/api/code/codeFixedValue"; |
| | | import { treeCodeClassifyValue,addSaveCodeClassifyValue,editCodeClassifyValue,deleteCodeClassifyValue,saveCodeClassifyValueOrder } from "@/api/code/codeClassifyValue"; |
| | |
| | | import fixedValueOption from "@/const/code/fixedValueMgrDialog"; |
| | | import {mapGetters} from "vuex"; |
| | | import {getByRoleUserList} from "@/api/system/user"; |
| | | import func from "@/util/func"; |
| | | |
| | | export default { |
| | | data() { |
| | |
| | | escapeOwnerVisible: false, |
| | | ruleAdminUserList: [], //规则管理员列表 |
| | | ruleOwner: '', // 当前要转移给哪个规则管理员的ID |
| | | releadDisabled: false, // 避免规则发布重复提交 |
| | | |
| | | /*最大流水号*/ |
| | | maxSerial:{ |
| | | visible:false, |
| | | |
| | | }, |
| | | |
| | | /*使用范围对话框显示控制*/ |
| | | codeRangeSettingBox: false, |
| | |
| | | /*使用范围对话框配置*/ |
| | | dialogeOption: { |
| | | height: 'auto', |
| | | calcHeight: 30, |
| | | calcHeight: 150, |
| | | tip: false, |
| | | searchShow: false, |
| | | searchMenuSpan: 6, |
| | | border: true, |
| | | index: true, |
| | | disablePage:false, |
| | | refreshBtn:false, |
| | | columnBtn:false, |
| | | viewBtn: false, |
| | | addBtn: false, |
| | | menu: false, |
| | |
| | | /*基础码段相关数据*/ |
| | | optionBasic: optionBasic, |
| | | basicData:[], |
| | | loadingBasic: true, |
| | | loadingBasic: false, |
| | | selectionBasicList: [], |
| | | addBasicCodeSettingBox: false, |
| | | showbtn: false, //基础码段新增是否显示基础码段 |
| | |
| | | |
| | | /** 码值管理相关数据 */ |
| | | isShowBasicSecCodeValueMgr: false, //码段码值管理对话框 |
| | | codefixedsecOrCodeclassifysecOid: '', //存放基础码段点击码值管理时的当前行id,用于保存码值时使用 |
| | | codefixedsecOrCodeclassifysec: '', //存放基础码段点击码值管理时的当前行id,用于保存码值时使用 |
| | | selectedFixedOrCodeclassifyValue: '', //当前选中的码值数据 |
| | | //固定码段码值表单 |
| | | codeFixdForm: { |
| | |
| | | }, |
| | | |
| | | /** 父分类选择对话框,第二层嵌套对话框,及其相关方法 */ |
| | | // 保存当前父分类码段的选中行,并进行回显 |
| | | /** 保存当前父分类码段的选中行,并进行回显 */ |
| | | saveSelectedParentClassify(){ |
| | | //console.log(this.parentClsfyParams.parentClassifySelectionList.length); |
| | | if(this.parentClsfyParams.parentClassifySelectionList.length != 1){ |
| | |
| | | parentClsParam.classifyDialogLoading = true; |
| | | let oid = this.selectionList.length==0 ? this.form.pkCodeRule:this.selectionList[0].oid; |
| | | let conditionMaps = {}; |
| | | |
| | | conditionMaps['conditionMap[pkCodeRule]'] = oid; |
| | | conditionMaps['conditionMap[oid_notequal]'] = this.form.oid; |
| | | refDataGridClassifySec( |
| | | page.currentPage, |
| | | page.pageSize, |
| | |
| | | |
| | | |
| | | /** 打开属性选取值,第二层嵌套对话框,及其相关方法 */ |
| | | // 获取当前被选中树节点的oid |
| | | /** 获取当前被选中树节点的oid */ |
| | | nodeClick(data) { |
| | | this.currentSelectTreeData = data; |
| | | this.loadlistClassifyLinkAttr() |
| | | }, |
| | | // 加载分类连接属性表格数据 |
| | | /** 加载分类连接属性表格数据 */ |
| | | loadlistClassifyLinkAttr() { |
| | | let attrParam = this.selectAttrParams; |
| | | //console.log(this.currentSelectTreeData); |
| | |
| | | this.selectAttrParams.selectAttrQeury = {}; |
| | | }) |
| | | }, |
| | | // 点击搜索后触发该事件 |
| | | /** 点击搜索后触发该事件 */ |
| | | selectAttrSearchChange(params, done) { |
| | | this.selectAttrParams.selectAttrQeury = params; |
| | | //console.log(params); //这儿需要改 |
| | | this.loadlistClassifyLinkAttr(); |
| | | done(); |
| | | }, |
| | | // 为属性选值界面,单击表格行时触发该事件 |
| | | /** 为属性选值界面,单击表格行时触发该事件 */ |
| | | selectionAttrRowClick(row){ |
| | | this.$refs[this.selectAttrParams.ref].toggleSelection(); |
| | | this.selectAttrParams.selectionChangeAttrList = row; |
| | | this.$refs[this.selectAttrParams.ref].setCurrentRow(row); |
| | | this.$refs[this.selectAttrParams.ref].toggleRowSelection(row); //选中当前行 |
| | | }, |
| | | // 属性取值当前选中行发生变化时触发 |
| | | /** 属性取值当前选中行发生变化时触发 */ |
| | | selectionChangeAttr(list){ |
| | | this.selectAttrParams.selectionChangeAttrList = list; |
| | | this.$refs[this.selectAttrParams.ref].setCurrentRow(this.selectAttrParams.selectionChangeAttrList[list.length-1]); |
| | | }, |
| | | // 重置位属性选取值表格的搜索框之后的回调 |
| | | /** 重置位属性选取值表格的搜索框之后的回调 */ |
| | | searchAttrReset() { |
| | | this.selectAttrParams.selectAttrQeury = {}; |
| | | this.loadlistClassifyLinkAttr() |
| | | }, |
| | | // 为属性选取值之后的回显 |
| | | /** 为属性选取值之后的回显 */ |
| | | selectedListClassifyLinkAttr(){ |
| | | if(this.selectAttrParams.selectionChangeAttrList.length != 1){ |
| | | this.$message.warning("请选择一条数据!"); |
| | | return false; |
| | | } |
| | | const attr = this.selectAttrParams.selectionChangeAttrList[0]; |
| | | //调用子组件并传递当前选中的参数值,实现回显 |
| | | this.form = Object.assign({}, this.form, { |
| | | referAttributeId:this.selectAttrParams.selectionChangeAttrList[0].id, |
| | | referAttributeName:this.selectAttrParams.selectionChangeAttrList[0].name, |
| | | referCodeClassifyOid: this.currentSelectTreeData.key, |
| | | referCodeClassifyOidName: this.currentSelectTreeData.title, |
| | | referAttributeId: attr.id || '', |
| | | referAttributeName: attr.name || attr.id, |
| | | referCodeClassifyOid: this.currentSelectTreeData.key || '', |
| | | referCodeClassifyOidName: this.currentSelectTreeData.title || '', |
| | | }) |
| | | this.isShowSelectAttrOption = false; |
| | | }, |
| | | |
| | | |
| | | /** 基础码段表中的码值管理的相关方法 */ |
| | | // 码值管理弹窗控制 |
| | | /** 码值管理弹窗控制*/ |
| | | openBasicSecCodeValueMgr(row){ |
| | | //当前为固定码段码值管理码值管理 |
| | | if(row.secType === "codefixedsec"){ |
| | |
| | | this.isShowFixedForm = false; |
| | | this.loadClassifyValueData(row); |
| | | } |
| | | this.codefixedsecOrCodeclassifysecOid = row.oid; |
| | | this.codefixedsecOrCodeclassifysec = row; |
| | | this.isShowBasicSecCodeValueMgr = true; |
| | | }, |
| | | //加载固定码段码值表数据 |
| | | /** 加载固定码段码值表数据*/ |
| | | loadFixedValueTableData(row){ |
| | | this.fixedValueOptionLoading = true; |
| | | gridCodeFixedValue(1, -1, {"codeFixedSecOid":row.oid}).then(res=>{ |
| | |
| | | this.fixedValueOptionLoading = false; |
| | | }) |
| | | }, |
| | | //单击固定码段的码值表中行时触发的事件 |
| | | /** 单击固定码段的码值表中行时触发的事件*/ |
| | | selectedCodeValueRow(row){ |
| | | //console.log(row); |
| | | this.selectedFixedOrCodeclassifyValue = row; |
| | |
| | | this.codeFixdForm.description = row.description; |
| | | this.codeFixdForm.codeFixedSecOid = row.codefixedsecoid; |
| | | }, |
| | | //新增码值 |
| | | /** 新增码值*/ |
| | | addCodeSecValue(condition){ |
| | | if(condition === "codefixedsec"){ |
| | | if(this.codeFixdForm.id.trim() == ''){ |
| | | this.$message.warning("码值不能为空!"); |
| | | if(!this.tipsCodeSecValueMessage(this.codeFixdForm.id)){ |
| | | return; |
| | | } |
| | | if(this.codeFixdForm.id.trim().length >= 12 ){ |
| | | this.$message.warning("码值长度不能大于12!"); |
| | | return; |
| | | } |
| | | this.codeFixdForm.codeFixedSecOid = this.codefixedsecOrCodeclassifysecOid; |
| | | this.codeFixdForm.codeFixedSecOid = this.codefixedsecOrCodeclassifysec.oid; |
| | | addSaveCodeFixedValue(this.codeFixdForm).then(() => { |
| | | this.loadFixedValueTableData({"oid":this.codefixedsecOrCodeclassifysecOid}); |
| | | this.loadFixedValueTableData({"oid":this.codefixedsecOrCodeclassifysec.oid}); |
| | | this.clearFixedOrClassifyForm('codefixedsec'); |
| | | this.$message({ |
| | | type: "success", |
| | |
| | | window.console.log(error); |
| | | }); |
| | | }else { |
| | | if(this.codeClassifyForm.id.trim() == ''){ |
| | | this.$message.warning("码值不能为空!"); |
| | | if(!this.tipsCodeSecValueMessage(this.codeClassifyForm.id)){ |
| | | return; |
| | | } |
| | | if(this.codeClassifyForm.id.trim().length > 4 ){ |
| | | this.$message.warning("码值长度不能大于4!"); |
| | | return; |
| | | } |
| | | this.codeClassifyForm.codeClassifySecOid = this.codefixedsecOrCodeclassifysecOid; |
| | | this.codeClassifyForm.codeClassifySecOid = this.codefixedsecOrCodeclassifysec.oid; |
| | | // console.log(this.codeClassifyForm); |
| | | addSaveCodeClassifyValue(this.codeClassifyForm).then(() => { |
| | | this.loadClassifyValueData({"oid":this.codefixedsecOrCodeclassifysecOid}); |
| | | this.loadClassifyValueData({"oid":this.codefixedsecOrCodeclassifysec.oid}); |
| | | this.clearFixedOrClassifyForm('codeclassifyvaluesec'); |
| | | this.$message({ |
| | | type: "success", |
| | |
| | | }); |
| | | } |
| | | }, |
| | | //清空码值表单 |
| | | /** 清空码值表单 */ |
| | | clearFixedOrClassifyForm(condition){ |
| | | //点击取消时清空表单与当前选中的码值,并禁用按钮 |
| | | this.selectedFixedOrCodeclassifyValue = ''; |
| | |
| | | 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){ |
| | | if(condition=='codefixedsec'){ |
| | | //以前是直接把当前选中行的所有数据都进行提交,但其实只需要传输一些比要参数即可,这儿做了修改,需要穿其他参数的请自行添加 |
| | | if(!this.tipsCodeSecValueMessage(this.codeFixdForm.id)){ |
| | | return; |
| | | } |
| | | //以前是直接把当前选中行的所有数据都进行提交,但其实只需要传输一些必要参数即可,这儿做了修改,需要传其他参数的请自行添加 |
| | | let editData = { |
| | | "oid": this.selectedFixedOrCodeclassifyValue.oid, |
| | | "ts": new Date().getTime(), |
| | | "description": this.codeFixdForm.description, |
| | | "id": this.codeFixdForm.id, |
| | | "codeFixedSecOid": this.selectedFixedOrCodeclassifyValue.codefixedsecoid |
| | | "oid": this.selectedFixedOrCodeclassifyValue.oid, |
| | | "ts": new Date().getTime(), |
| | | "description": this.codeFixdForm.description, |
| | | "id": this.codeFixdForm.id, |
| | | "codeFixedSecOid": this.selectedFixedOrCodeclassifyValue.codefixedsecoid |
| | | } |
| | | editCodeFixedValue(editData).then(() => { |
| | | this.loadFixedValueTableData({"oid":this.codefixedsecOrCodeclassifysecOid}) |
| | | this.loadFixedValueTableData({"oid":this.codefixedsecOrCodeclassifysec.oid}) |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | |
| | | window.console.log(error); |
| | | }); |
| | | }else { |
| | | if(!this.tipsCodeSecValueMessage(this.codeClassifyForm.id)){ |
| | | return; |
| | | } |
| | | this.codeClassifyForm.oid = this.selectedFixedOrCodeclassifyValue.attributes.oid; |
| | | // 分类码段,子分类和父分类之间不能相互更改 |
| | | if(this.checkClassUpdate(this.codefixedsecOrCodeclassifysecOid,this.codeClassifyForm.codeClassifySecOid)){ |
| | | if(this.checkClassUpdate(this.codefixedsecOrCodeclassifysec.oid,this.codeClassifyForm.codeClassifySecOid)){ |
| | | return; |
| | | } |
| | | this.$delete(this.codeClassifyForm,"parentClassifyValueOid"); |
| | | editCodeClassifyValue(this.codeClassifyForm).then(() => { |
| | | this.loadClassifyValueData({"oid":this.codefixedsecOrCodeclassifysecOid}) |
| | | this.loadClassifyValueData({"oid":this.codefixedsecOrCodeclassifysec.oid}) |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | |
| | | } |
| | | |
| | | }, |
| | | //删除码值 |
| | | /** 删除码值 */ |
| | | delCodeSecValue(condition){ |
| | | //固定码段码值删除 |
| | | if(condition == 'codefixedsec'){ |
| | |
| | | }) |
| | | .then(() => { |
| | | this.selectedFixedOrCodeclassifyValue = ''; |
| | | this.loadFixedValueTableData({"oid":this.codefixedsecOrCodeclassifysecOid}) |
| | | this.loadFixedValueTableData({"oid":this.codefixedsecOrCodeclassifysec.oid}) |
| | | this.clearFixedOrClassifyForm('codefixedsec'); |
| | | this.$message({ |
| | | type: "success", |
| | |
| | | }); |
| | | }); |
| | | }else{ |
| | | if(this.checkClassUpdate(this.codefixedsecOrCodeclassifysecOid,this.codeClassifyForm.codeClassifySecOid)){ |
| | | if(this.checkClassUpdate(this.codefixedsecOrCodeclassifysec.oid,this.codeClassifyForm.codeClassifySecOid)){ |
| | | return; |
| | | } |
| | | } |
| | | //分类码段码值删除 |
| | | this.$confirm("是否删除这条数据?如果被引用将不能被删除!", { |
| | | confirmButtonText: "确定", |
| | |
| | | }) |
| | | .then(() => { |
| | | this.selectedFixedOrCodeclassifyValue = ''; |
| | | this.loadClassifyValueData({"oid":this.codefixedsecOrCodeclassifysecOid}) |
| | | this.loadClassifyValueData({"oid":this.codefixedsecOrCodeclassifysec.oid}) |
| | | this.clearFixedOrClassifyForm('codeclassifyvalue'); |
| | | this.$message({ |
| | | type: "success", |
| | |
| | | }); |
| | | } |
| | | }, |
| | | //对固定码值表进行:上移、下移、移除操作 |
| | | /** 对固定码值表进行:上移、下移、移除操作*/ |
| | | codeFixedValueOpetion(condition,row){ |
| | | //console.log(this.fixedValueData[row.$index].orderNum); |
| | | const index = row.$index; |
| | |
| | | } |
| | | //console.log(this.fixedValueData); |
| | | }, |
| | | //对分类码值表进行:上移、下移、移除操作 |
| | | /** 对分类码值表进行:上移、下移、移除操作*/ |
| | | codeClassifyValueOpetion(condition){ |
| | | if(this.checkClassUpdate(this.codefixedsecOrCodeclassifysecOid,this.codeClassifyForm.codeClassifySecOid)){ |
| | | if(this.checkClassUpdate(this.codefixedsecOrCodeclassifysec.oid,this.codeClassifyForm.codeClassifySecOid)){ |
| | | return; |
| | | } |
| | | } |
| | | //此处涉及到深浅拷贝问题,但是执行上下移保存操作之后会重新加载treedata,所以影响不大 |
| | | let currentTreeList = this.getCodeClassifyValueTreeData(); |
| | | let saveData = []; |
| | |
| | | } |
| | | } |
| | | }, |
| | | //选中被调整顺序的两个树的节点 |
| | | /** 选中被调整顺序的两个树的节点*/ |
| | | getCodeClassifyValueTreeData(){ |
| | | const currentNodeTreeData = this.selectedFixedOrCodeclassifyValue; |
| | | /**考虑几种情况,第一种当前上移|下移操作已经是边界, |
| | |
| | | } |
| | | } |
| | | }, |
| | | //上移下移等操作的保存 |
| | | /** 上移下移等操作的保存*/ |
| | | async saveCodeFixedOrClassifyValueOption(condition,editOrderNumdata){ |
| | | //保存对固定码段码值的上移下移移出等操作 |
| | | if(condition == "fixedValue"){ |
| | | let data = { |
| | | "codeFixedSecOid": this.codefixedsecOrCodeclassifysecOid, |
| | | "codeFixedSecOid": this.codefixedsecOrCodeclassifysec.oid, |
| | | "dtoList": JSON.stringify(this.fixedValueData), |
| | | } |
| | | saveOrder(data).then(() => { |
| | |
| | | }else { |
| | | //保存对分类码值码段码值的上移下移移出等操作 |
| | | await saveCodeClassifyValueOrder({ |
| | | "codeClassifySecOid": this.codefixedsecOrCodeclassifysecOid, |
| | | "codeClassifySecOid": this.codefixedsecOrCodeclassifysec.oid, |
| | | "dtoList": JSON.stringify(editOrderNumdata), |
| | | }).then(() => { |
| | | this.$message({ |
| | |
| | | }, error => { |
| | | window.console.log(error); |
| | | }); |
| | | this.loadClassifyValueData({"oid":this.codefixedsecOrCodeclassifysecOid}); |
| | | this.loadClassifyValueData({"oid":this.codefixedsecOrCodeclassifysec.oid}); |
| | | } |
| | | |
| | | }, |
| | | //分类码值树data加载 |
| | | /** 分类码值树data加载*/ |
| | | loadClassifyValueData(row){ |
| | | //console.log(row); |
| | | let condtionData = { |
| | |
| | | //console.log(res.data); |
| | | }); |
| | | }, |
| | | //分类码值树单击时触发的事件 |
| | | /** 分类码值树单击时触发的事件*/ |
| | | classisyValueTreeOnodeClick(node){ |
| | | //console.log(node); |
| | | this.selectedFixedOrCodeclassifyValue = node; |
| | |
| | | * @currentRowClassOid 当前选中行oid |
| | | * @updateClassOid 要修改的分类码值oid |
| | | */ |
| | | checkClassUpdate(currentRowClassOid,updateClassOid){ |
| | | checkClassUpdate(currentRowClassOid,updateClassOid){ |
| | | if(currentRowClassOid!=updateClassOid){ |
| | | this.$message({ |
| | | type: "error", |
| | |
| | | }, |
| | | |
| | | /** 编码规则相关方法 */ |
| | | // 打开高级查询窗口 |
| | | /** 打开高级查询窗口 */ |
| | | openAdvancedQuery(condition){ |
| | | if(condition=='codeRule'){ |
| | | this.advancedQueryParam.options = [ |
| | |
| | | this.advancedQueryParam.currentOpen = condition; |
| | | this.advancedQueryParam.advancedQuerySettingBox = true; |
| | | }, |
| | | // 查询使用范围 |
| | | /** 查询使用范围*/ |
| | | handleRange(){ |
| | | if(!this.tipsMessage(this.selectionList)){ |
| | | return; |
| | |
| | | this.codeRangeSettingBox = true; |
| | | this.getRangeCodeList() |
| | | }, |
| | | // 加载使用范围列表 |
| | | /** 加载使用范围列表*/ |
| | | getRangeCodeList(){ |
| | | this.dialogLoading = true; |
| | | if(this.selectionList[0].oid==null){ |
| | |
| | | this.dialogLoading = false; |
| | | }); |
| | | }, |
| | | // 刷新使用范围列表 |
| | | /** 刷新使用范围列表*/ |
| | | refreshUseRangeChange(){ |
| | | this.getRangeCodeList(); |
| | | }, |
| | | // 启用与停用 |
| | | enableOrDeactivatse(oId,update){ |
| | | updateStatus({"oid":oId,"ts":new Date().getTime,"update":update}).then(() => { |
| | | /** 修改规则状态:启用、停用、发布 */ |
| | | updateStatus(oid,update){ |
| | | updateStatus({"oid":oid,"ts":new Date().getTime,"update":update}).then(() => { |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | |
| | | window.console.log(error); |
| | | }); |
| | | }, |
| | | // 打开编码规则克隆对话框 |
| | | /** 发布编码规则 */ |
| | | async enableOrDeactivatse(oid,update){ |
| | | if(update==="release"){ |
| | | // 避免用户重复点击按钮 |
| | | this.releadDisabled = true; |
| | | await checkLikeCodeRule(oid).then(res => { |
| | | //console.log(res) |
| | | if(res.data.success){ |
| | | this.updateStatus(oid,update); |
| | | }else{ |
| | | this.$confirm(res.data.msg, '提示', { |
| | | distinguishCancelAndClose: true, |
| | | confirmButtonText: '继续发布', |
| | | cancelButtonText: '取消' |
| | | }).then(() => { |
| | | this.updateStatus(oid,update); |
| | | }) |
| | | .catch(action => { |
| | | this.$message({ |
| | | type: 'info', |
| | | message: '取消发布!', |
| | | }) |
| | | }); |
| | | } |
| | | }) |
| | | this.releadDisabled = false; |
| | | }else { |
| | | this.updateStatus(oid,update); |
| | | } |
| | | }, |
| | | /** 打开编码规则克隆对话框*/ |
| | | openCodeRuleDialog() { |
| | | if (!this.tipsMessage(this.selectionList)) { |
| | | return; |
| | |
| | | this.cloneCodeRuleForm.description = this.selectionList[0].description; |
| | | this.loadBasic({"oid": this.selectionList[0].oid}); |
| | | }, |
| | | // 克隆编码规则保存功能 |
| | | /** 克隆编码规则保存功能*/ |
| | | saveCloneCodeRule(){ |
| | | let form = this.cloneCodeRuleForm; |
| | | if(form.id.trim()==''){ |
| | |
| | | }); |
| | | //console.log(data); |
| | | }, |
| | | // 打开从其他编码规则中克隆码段对话框 |
| | | /** 打开从其他编码规则中克隆码段对话框*/ |
| | | openOtherCodeRuleDialog(){ |
| | | if (!this.tipsMessage(this.selectionList)) { |
| | | return; |
| | | } |
| | | if(this.selectionList[0].lcStatus != 'Editing'){ |
| | | this.$message.warning("编码规则已被引用,不允许编辑或删除!"); |
| | | this.$message.warning("编码规则已被引用,不允许编辑!"); |
| | | return; |
| | | } |
| | | this.cloneOtherCodeRuleSettingBox = true; |
| | | }, |
| | | // 从其他编码规则中克隆码段对话框-单击编码规则实现行选择 |
| | | //** 从其他编码规则中克隆码段对话框-单击编码规则实现行选择*/ |
| | | codeOtherCloneRuleRowClick(row) { |
| | | this.$refs.crudCloneCodeRuleOther.toggleSelection(); |
| | | this.selectionOtherCloneCodeRuleList = row; |
| | |
| | | this.$refs.crudCloneCodeRuleOther.toggleRowSelection(row); //选中当前行 |
| | | this.loadBasic(row); |
| | | }, |
| | | // 从其他编码规则中克隆码段对话框-单击基础码段实现行选择 |
| | | /** 从其他编码规则中克隆码段对话框-单击基础码段实现行选择*/ |
| | | codeOtherCloneBasicRowClick(row){ |
| | | this.$refs.crudCloneCodeBasicOther.toggleSelection(); |
| | | this.selectionOtherCloneCodeBasicList = row; |
| | | this.$refs.crudCloneCodeBasicOther.setCurrentRow(row); |
| | | this.$refs.crudCloneCodeBasicOther.toggleRowSelection(row); //选中当前行 |
| | | }, |
| | | // 从其他规则克隆码段界面中编码规则当前选中行变化的时候触发 |
| | | /** 从其他规则克隆码段界面中编码规则当前选中行变化的时候触发*/ |
| | | selectionOtherCloneCodeRuleChange(list) { |
| | | //console.log(list); |
| | | this.selectionOtherCloneCodeRuleList = list; |
| | |
| | | this.selectionOtherCloneCodeBasicList = list; |
| | | this.$refs.crudCloneCodeBasicOther.setCurrentRow(this.selectionOtherCloneCodeBasicList[list.length-1]); |
| | | }, |
| | | // 从其他编码规则中克隆码段信息 |
| | | /** 从其他编码规则中克隆码段信息*/ |
| | | saveOtherCodeBasic(){ |
| | | let oid = this.selectionList[0].oid; |
| | | let fromDialogPkCodebasic = this.selectionOtherCloneCodeBasicList; |
| | |
| | | this.$message.warning("需要克隆的编码规则与被克隆的编码规则相同!"); |
| | | return; |
| | | } |
| | | //console.log(res); |
| | | let oidArr = []; |
| | | fromDialogPkCodebasic.forEach(ele => { |
| | | oidArr.push(ele.oid); |
| | |
| | | window.console.log(error); |
| | | }); |
| | | }, |
| | | // 清空码值 |
| | | /** 清空码值*/ |
| | | clearAllCodeSec(){ |
| | | if(this.selectionList.length == 0){ |
| | | this.$message.warning("没有选择数据!"); |
| | |
| | | }); |
| | | }); |
| | | }, |
| | | // 添加 |
| | | /** 添加*/ |
| | | rowSave(row, done, loading) { |
| | | console.log(row); |
| | | add(row).then(() => { |
| | |
| | | openEdit(row){ |
| | | this.$refs.crud.rowEdit(row,row.$index); |
| | | }, |
| | | // 修改 |
| | | /** 修改*/ |
| | | rowUpdate(row, index, done, loading) { |
| | | row.ts = new Date().getTime; |
| | | update(row).then(() => { |
| | |
| | | console.log(error); |
| | | }); |
| | | }, |
| | | // 删除 |
| | | /** 删除*/ |
| | | handleDelete() { |
| | | if(!this.tipsMessage(this.selectionList)){ |
| | | return; |
| | |
| | | this.$refs.crud.toggleSelection(); |
| | | }); |
| | | }, |
| | | // 打开修改 |
| | | // 打开修改*/ |
| | | beforeOpen(done, type) { |
| | | if (["edit", "view"].includes(type)) { |
| | | getDetail(this.ruleForm.oid).then(res => { |
| | |
| | | this.onLoad(this.page); |
| | | done(); |
| | | }, |
| | | // 编码规则当前选中行变化的时候触发 |
| | | /** 编码规则当前选中行变化的时候触发*/ |
| | | selectionChange(list) { |
| | | this.selectionList = list; |
| | | //当前选中行为空的时候就将码段管理表格数据置空,并禁用相关功能 |
| | |
| | | this.loadBasic(this.selectionList[list.length-1]); |
| | | } |
| | | }, |
| | | // 单击编码规则实现行选择 |
| | | /** 单击编码规则实现行选择*/ |
| | | codeRuleRowClick (row) { |
| | | // console.log(this.currentRuleLcStatus); |
| | | this.$refs.crud.toggleSelection(); |
| | |
| | | |
| | | |
| | | /** 基础码段相关方法 */ |
| | | //防止打开过编辑窗口之后表单中存在值,所以需要清空,并初始化form表单属性 |
| | | /** 防止打开过编辑窗口之后表单中存在值,所以需要清空,并初始化form表单属性*/ |
| | | clearBasicAddForm(){ |
| | | this.form = this.$options.data().form; |
| | | // this.changeSectypeFormItems(null); |
| | | }, |
| | | // 打开新增窗口 |
| | | /** 打开新增窗口*/ |
| | | openAddBasicCodeSec(){ |
| | | if(!this.tipsMessage(this.selectionList)){ |
| | | return; |
| | |
| | | this.openBasicDialog('add',null); |
| | | this.loadCodeSecType(); |
| | | }, |
| | | // 打开新增或编辑基础码段对话框 |
| | | /** 打开新增或编辑基础码段对话框*/ |
| | | openBasicDialog(condition,row){ |
| | | //console.log(row); |
| | | if(condition == 'add') { |
| | |
| | | this.changeSectypeFormItems(condition == 'add' ? null:row); |
| | | this.addBasicCodeSettingBox = true; |
| | | }, |
| | | // 新增基础码段 |
| | | /** 新增基础码段*/ |
| | | async saveOrEditBasicCode(){ |
| | | if(this.selectionList[0].oid == null || this.selectionList[0].oid == ''){ |
| | | this.$message.warning('缺失必要参数,请重新选择编码规则后再试!'); |
| | |
| | | this.addBasicCodeSettingBox = false |
| | | } |
| | | }, |
| | | // 因为elementui的表单校验设置不上所以采用判断的方式来做表单检验方式 |
| | | /** 因为elementui的表单校验设置不上所以采用判断的方式来做表单检验方式*/ |
| | | checkForm(){ |
| | | let form = this.form; |
| | | //console.log(form); |
| | |
| | | } |
| | | return true; |
| | | }, |
| | | // 判断数据是否选择以及只能选择单条数据 |
| | | /** 判断数据是否选择以及只能选择单条数据*/ |
| | | tipsMessage(list){ |
| | | if(list.length != 1){ |
| | | this.$message.warning("请选择一条编码规则数据!"); |
| | | this.$message.warning("请选择一条数据!"); |
| | | return false; |
| | | } |
| | | return true; |
| | | }, |
| | | // 基础码段删除 |
| | | /** 基础码段删除*/ |
| | | deleteBasicCode(){ |
| | | if(!this.tipsMessage(this.selectionBasicList)){ |
| | | return; |
| | |
| | | this.$refs.crudBasic.toggleSelection(); |
| | | }); |
| | | }, |
| | | // 点击触发加载基础码段信息 |
| | | /** 点击触发加载基础码段信息*/ |
| | | loadBasic(row){ |
| | | if(this.cloneSettingBox){ |
| | | this.cloneTableLoading = true; |
| | |
| | | this.sendGridCodeBasicSec({"pkCodeRule":row.oid},false); |
| | | } |
| | | }, |
| | | // 发送加载基础码段的请求 |
| | | /** 发送加载基础码段的请求*/ |
| | | sendGridCodeBasicSec(condition,isAdancedQuery/** 是否高级查询 */){ |
| | | // 如果当前基础码段表中的搜索按钮被隐藏,就需要在此开启 |
| | | if(this.selectionList.length>=0 && !this.$refs.crudBasic.option.column[0].search){ |
| | |
| | | const data = res.data.data; |
| | | if(this.cloneSettingBox){ |
| | | this.cloneData = data.records; |
| | | // console.log(tihs.cloneData); |
| | | this.cloneTableLoading = false; |
| | | }else { |
| | | this.basicData = data.records; |
| | |
| | | } |
| | | }); |
| | | }, |
| | | // 基础码段选中时触发 |
| | | /** 基础码段选中时触发*/ |
| | | selectionBasicChange(list) { |
| | | this.selectionBasicList = list; |
| | | this.$refs.crudBasic.setCurrentRow(this.selectionBasicList[list.length-1]); |
| | | //console.log(this.selectionBasicList); |
| | | }, |
| | | // 基础码段被单击表格行时触发 |
| | | /** 基础码段被单击表格行时触发*/ |
| | | codeBasicSecRowClick(row){ |
| | | this.$refs.crudBasic.toggleSelection(); |
| | | this.selectionBasicList = row; |
| | |
| | | this.$refs.crudBasic.toggleRowSelection(row); //选中当前行 |
| | | }, |
| | | basicSearchChange(params, done){ |
| | | //console.log(this.$refs.crudBasic); |
| | | this.sendGridCodeBasicSec(Object.assign(params,{"pkCodeRule":this.selectionList[this.selectionList.length-1].oid}),false); |
| | | done(); |
| | | }, |
| | | basicSearchReset(){ |
| | | this.sendGridCodeBasicSec({"pkCodeRule":this.selectionList[this.selectionList.length-1].oid},false); |
| | | }, |
| | | // 上移下移基础码段 |
| | | /** 上移下移基础码段*/ |
| | | async upOrderNum(row){ |
| | | if(!this.tipsMessage(this.selectionList)){ |
| | | return; |
| | |
| | | return; |
| | | } |
| | | let codeRuleOid = this.selectionList[0].oid; |
| | | //console.log(this.selectionList); |
| | | if (this.selectionList[0].lcStatus != 'Editing') { |
| | | this.$message.warning("只有编码规则的状态是 [编辑中] 的时候,才能调整码段顺序!"); |
| | | return; |
| | |
| | | }); |
| | | }) |
| | | }, |
| | | // 基础码段刷新时查询 |
| | | /** 基础码段刷新时查询*/ |
| | | refreshChangeBasicSec(){ |
| | | this.loadBasic(this.selectionList.at(-1)); |
| | | }, |
| | | // 操作基础码段中搜索清空等按钮的显示/隐藏 |
| | | /** 操作基础码段中搜索清空等按钮的显示/隐藏*/ |
| | | hideBasicTable(hideBoolean){ |
| | | this.$refs.crudBasic.option.refreshBtn = hideBoolean; |
| | | this.$refs.crudBasic.option.column[0].search = hideBoolean; |
| | |
| | | }, |
| | | |
| | | /** 第一层对话框相关方法 */ |
| | | // 打开二层对话框方法 |
| | | /** 打开二层对话框方法*/ |
| | | openAttrSelectOrGetValue(condition){ |
| | | if(condition === 'attr'){ |
| | | this.isShowSelectAttrOption = true; |
| | | this.loadlistClassifyLinkAttr(); |
| | | }else if(condition === 'value'){ |
| | | //打开公式编辑框,第二层嵌套对话框 |
| | | //this.$refs.formulaEditor.isShowformulaEdit = true; |
| | |
| | | } |
| | | }, |
| | | |
| | | // 点击输入框的×号,清空输入框中的内容 |
| | | /** 点击输入框的×号,清空输入框中的内容*/ |
| | | clearAttrDataByIcon(condition){ |
| | | if(condition === 'attr'){ |
| | | this.form.referAttributeName = ''; |
| | |
| | | this.form.referConfig = ''; |
| | | } |
| | | }, |
| | | // 补位时的字符,实现可输可选 |
| | | /** 补位时的字符,实现可输可选*/ |
| | | inputSelectBlur(e){ |
| | | if (e.target.value) { |
| | | this.form.codeFillSeparator = e.target.value; |
| | | } |
| | | }, |
| | | // 码段类型改变时,增加对应的form表单中的属性 |
| | | /** 码段类型改变时,增加对应的form表单中的属性*/ |
| | | changeSectypeFormItems(row){ |
| | | //console.log(row); |
| | | if(this.enumParam.secTypeList.length==0){ |
| | | if(func.isEmpty(this.enumParam.secTypeList) || this.enumParam.secTypeList.length==0){ |
| | | this.loadCodeSecType(); |
| | | } |
| | | if(row != null){ |
| | |
| | | } |
| | | // console.log(this.form); |
| | | }, |
| | | // 第一次请求的枚举数据放缓存 |
| | | /** 第一次请求的枚举数据放缓存*/ |
| | | getLocalStorageEnum(enumKey){ |
| | | let enumCach = JSON.parse(localStorage.getItem(enumKey)); |
| | | if(enumCach == null) { |
| | |
| | | } |
| | | return enumCach; |
| | | }, |
| | | // 统一加载所有枚举查询,主要是为避免切换码段类型时还未加载完成的情况 |
| | | /** 统一加载所有枚举查询,主要是为避免切换码段类型时还未加载完成的情况*/ |
| | | loadTotalEnum(){ |
| | | this.loadCodeSecType(); |
| | | this.loadCodeSecLength(); |
| | |
| | | this.loadCodeCutType(); |
| | | this.loadCodeGetValueType(); |
| | | }, |
| | | //枚举和可输可选内容查询 |
| | | /** 枚举和可输可选内容查询 */ |
| | | loadCodeSecType(){ |
| | | this.enumParam.secTypeList = this.getLocalStorageEnum("codeSecType"); |
| | | let enumList = this.getLocalStorageEnum("codeSecType"); |
| | | this.enumParam.secTypeList = enumList.length>0 ? enumList:[]; |
| | | console.log(this.enumParam.secTypeList); |
| | | this.loadCodeSecLength(); |
| | | }, |
| | | loadCodeSecLength(){ |
| | | this.enumParam.codeSecLengthType = this.getLocalStorageEnum("codeSecLength"); |
| | | let enumList = this.getLocalStorageEnum("codeSecLength"); |
| | | this.enumParam.codeSecLengthType = enumList.length>0 ? enumList:[]; |
| | | }, |
| | | loadCodeFillType(){ |
| | | this.enumParam.codeFillType = this.getLocalStorageEnum("codeFillType"); |
| | | let enumList = this.getLocalStorageEnum("codeFillType"); |
| | | this.enumParam.codeFillType = enumList.length>0 ? enumList:[]; |
| | | }, |
| | | loadCodeFillSeparator(){ |
| | | let enumCach = JSON.parse(localStorage.getItem("codeFillSeparator")); |
| | | if(enumCach == null) { |
| | | getDictionary("codeFillSeparator").then(res=>{ |
| | | this.enumParam.codeFillSeparator = res.data.data; |
| | | localStorage.setItem(key,JSON.stringify(res.data.data)); |
| | | localStorage.setItem('codeFillSeparator',JSON.stringify(res.data.data)); |
| | | }) |
| | | } |
| | | }, |
| | | loadCodeLevelType(){ |
| | | this.enumParam.codeLevelType = this.getLocalStorageEnum("codeLevelType"); |
| | | let enumList = this.getLocalStorageEnum("codeLevelType"); |
| | | this.enumParam.codeLevelType = enumList.length>0 ? enumList:[]; |
| | | }, |
| | | loadCodeCutType(){ |
| | | this.enumParam.codeCutType = this.getLocalStorageEnum("codeCutType"); |
| | | let enumList = this.getLocalStorageEnum("codeCutType"); |
| | | this.enumParam.codeCutType = enumList.length>0 ? enumList:[]; |
| | | }, |
| | | loadCodeGetValueType(){ |
| | | this.enumParam.codeGetValueType = this.getLocalStorageEnum("codeGetValueType"); |
| | | let enumList = this.getLocalStorageEnum("codeGetValueType"); |
| | | this.enumParam.codeGetValueType = enumList.length>0 ? enumList:[]; |
| | | }, |
| | | |
| | | // 最大流水号 |
| | | maxSerialNum(){ |
| | | console.log(this.selectionList) |
| | | if (this.selectionList.length === 0) { |
| | | this.$message.warning("请选择一条编码规则!"); |
| | | return; |
| | | } |
| | | this.maxSerial.visible = true |
| | | this.maxSerial.ruleOid = this.selectionList[0]['oid'] |
| | | } |
| | | |
| | | } |
| | | }; |
| | | |
| | | </script> |
| | | |
| | | <style> |
| | | |
| | | [class^="icon-"]{ |
| | | font-size: 12px !important; |
| | | } |
| | | .code-rule-crud > .avue-crud__search ,.code-basic-crud > .avue-crud__search { |
| | | margin-bottom: -15px; |
| | | } |
| | | |
| | | .code-rule-crud > .avue-crud__pagination { |
| | | padding: 14px 0 2px 20px; |
| | | } |
| | | |
| | | .clone-input-textarea > .el-form-item__content { |
| | |
| | | /** 新增码段 */ |
| | | .add-basicsec-total { |
| | | width: 100%; |
| | | padding: 20px 0 0 0; |
| | | } |
| | | |
| | | .add-basicsec-total .el-input__inner,.add-basicsec-total .el-textarea__inner { |
| | |
| | | /* float: left; */ |
| | | width: 45%; |
| | | height: 100%; |
| | | } |
| | | } |
| | | |
| | | .right { |
| | | /* float: right; */ |
| | | margin-right: 2vw; |
| | | height: 100%; |
| | | width: auto; |
| | | } |
| | | } |
| | | |
| | | .right > .el-form > .el-form-item{ |
| | | margin-bottom: 8px; |
| | | } |
| | | /* 对话框底部按钮边框样式 */ |
| | | } |
| | | |
| | | /* 对话框底部按钮边框样式 */ |
| | | .el-dialog__footer{ |
| | | /* width: 100%; */ |
| | | border-top: 1px solid #E9E7E7; |
| | | padding: 5px 10px 10px; |
| | | } |
| | | } |
| | | |
| | | .seloption{ |
| | | margin-left: 10px; |
| | | } |
| | | margin-left: 10px; |
| | | } |
| | | |
| | | /* .code-total > .basic-container__card { |
| | | height: 100%; |
| | | } */ |
| | | |
| | | </style> |