| | |
| | | <basic-container> |
| | | <p style="margin-top: -12px; margin-bottom: 4px; font-weight: 570; font-size: 19px; color: #0e2d5f;">编码规则</p> |
| | | <avue-crud :option="optionRule" |
| | | :table-loading="loading" |
| | | :data="data" |
| | | :page.sync="page" |
| | | :permission="permissionList" |
| | | v-model="form" |
| | | ref="crud" |
| | | :before-open="beforeOpen" |
| | | @cell-click="loadBasic" |
| | | @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"> |
| | | :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)">编 辑 |
| | | 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-position" |
| | | v-show="scope.row.lcStatus=='Editing' ? true:false" |
| | | plain |
| | | @click="enableOrDeactivatse(scope.row.oid,'release')">发 布 |
| | | size="small" |
| | | icon="el-icon-position" |
| | | v-show="scope.row.lcStatus=='Editing' ? true:false" |
| | | plain |
| | | @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')">停 用 |
| | | 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')">启 用 |
| | | 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> |
| | | <!-- 表格左上方按钮区域 --> |
| | |
| | | </avue-crud> |
| | | </basic-container> |
| | | |
| | | <!-- 对话框 --> |
| | | <!-- 编码规则相关对话框 --> |
| | | <el-dialog title="编码规则使用范围" |
| | | append-to-body |
| | | :visible.sync="codeRangeSettingBox" |
| | |
| | | @refresh-change="refreshUseRangeChange"> |
| | | </avue-crud> |
| | | </el-dialog> |
| | | <!-- 克隆对话框 --> |
| | | <!-- 编码规则相关克隆对话框 --> |
| | | <el-dialog title="克隆编码规则" |
| | | append-to-body |
| | | :visible.sync="cloneSettingBox" |
| | | width="800px"> |
| | | append-to-body |
| | | :visible.sync="cloneSettingBox" |
| | | width="800px"> |
| | | <clone-code></clone-code> |
| | | </el-dialog> |
| | | |
| | | <!-- 基础码段展示区域 --> |
| | | <basic-container> |
| | | <p style="margin-top: -12px; margin-bottom: 4px; font-weight: 570; font-size: 19px; color: #0e2d5f;">码段管理</p> |
| | | <avue-crud :option="optionBasic" |
| | | <p style="margin-top: -12px; margin-bottom: 4px; font-weight: 570; font-size: 19px; color: #0e2d5f;">码段管理</p> |
| | | <avue-crud :option="optionBasic" |
| | | ref="crudBasic" |
| | | :table-loading="loadingBasic" |
| | | :data="basicData" |
| | | :permission="permissionList" |
| | | @selection-change="selectionBasicChange" |
| | | @refresh-change="refreshChangeBasicSec"> |
| | | |
| | | <!-- 基础码段表格内操作按钮 --> |
| | | <template slot="menu" slot-scope="scope"> |
| | | <!-- 基础码段表格内操作按钮 --> |
| | | <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> |
| | | |
| | | <el-button type="text" |
| | | size="small" |
| | | icon="icon-shangyi" |
| | | v-show="scope.row.lcStatus != 'Editing' ? true:false" |
| | | plain |
| | | @click="openEdit(scope.row)">查 看 |
| | | </el-button> |
| | | <!-- 基础码段表格左上方按钮区域 --> |
| | | <template slot="menuLeft" slot-scope="scope"> |
| | | <el-button type="primary" |
| | | size="small" |
| | | icon="el-icon-plus" |
| | | @click="addBasicCodeSec">新 增 |
| | | </el-button> |
| | | <el-button type="danger" |
| | | size="small" |
| | | icon="el-icon-delete" |
| | | plain |
| | | @click="deleteBasicCode(scope.row)">删 除 |
| | | </el-button> |
| | | </template> |
| | | |
| | | <el-button type="text" |
| | | size="small" |
| | | icon="icon-shangyi" |
| | | v-show="scope.row.lcStatus == 'Editing' ? true:false" |
| | | plain |
| | | @click="openEdit(scope.row)">编 辑 |
| | | </el-button> |
| | | |
| | | <el-button type="text" |
| | | size="small" |
| | | icon="icon-shangyi" |
| | | v-show="scope.row.secType == 'codeclassifysec' || scope.row.secType == 'codefixedsec' ? true:false" |
| | | plain |
| | | @click="openEdit(scope.row)">码值管理 |
| | | </el-button> |
| | | |
| | | <el-button type="text" |
| | | size="small" |
| | | icon="icon-shangyi" |
| | | v-show="scope.row.orderNum > 1 ? true:false" |
| | | plain |
| | | @click="upOrderNum(scope.row)">上 移 |
| | | </el-button> |
| | | |
| | | <el-button type="text" |
| | | size="small" |
| | | icon="icon-xiayi" |
| | | plain |
| | | @click="downOrderNum(scope.row)">下 移 |
| | | </el-button> |
| | | |
| | | </template> |
| | | |
| | | <!-- 基础码段表格左上方按钮区域 --> |
| | | <template slot="menuLeft" slot-scope="scope"> |
| | | <el-button type="primary" |
| | | size="small" |
| | | icon="el-icon-plus" |
| | | @click="addBasicCodeSec">新 增 |
| | | </el-button> |
| | | <el-button type="danger" |
| | | size="small" |
| | | icon="el-icon-delete" |
| | | plain |
| | | @click="deleteBasicCode(scope.row)">删 除 |
| | | </el-button> |
| | | </template> |
| | | |
| | | </avue-crud> |
| | | </avue-crud> |
| | | </basic-container> |
| | | |
| | | <!-- 基础编码规则对话框 --> |
| | | <el-dialog title="添加码段信息" |
| | | :visible.sync="addBasicCodeSettingBox" |
| | | width="780px" |
| | | <!-- 码段码值管理对话框 --> |
| | | <el-dialog title="码段码值管理" |
| | | :visible.sync="isShowBasicSecCodeValueMgr" |
| | | :width="isShowFixedForm ? '68vw':'50vw'" |
| | | append-to-body |
| | | style="margin-top: -8vh;" |
| | | 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" 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="attrClassifyTreeData" |
| | | :option="treeOption" |
| | | @node-click="nodeClick" |
| | | 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">上移</el-button> |
| | | <el-button size="mini" type="primary" icon="el-icon-arrow-down" class="button">下移</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">添加</el-button> |
| | | <el-button size="mini" type="success" plain icon="el-icon-edit-outline" class="button">修改</el-button> |
| | | <el-button size="mini" type="danger" icon="el-icon-close" class="button">删除</el-button> |
| | | <el-button size="mini" type="warning" plain icon="el-icon-close" class="button">取消</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 |
| | | 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="saveCodeFixedValueOption">保存</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-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="描述:"> |
| | | <el-input type="textarea" style="width: 20vw; "v-model="codeFixdForm.description"></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 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="为[属性]选取值" |
| | | <!-- 基础码段新增相关对话框 --> |
| | | <el-dialog :title="basicSecDialogTitle" |
| | | :visible.sync="addBasicCodeSettingBox" |
| | | width="60vw" |
| | | append-to-body |
| | | style="height: 115vh; margin-top: -13vh; overflow: hidden" |
| | | destroy-on-close |
| | | @close="clearBasicAddForm"> |
| | | |
| | | |
| | | <!-- 第一层对话框,添加码段信息对话框中的内容 --> |
| | | <div class="total" style="overflow-y: auto; height: 70vh"> |
| | | <el-form :model="form" :rules="formRules" ref="form" > |
| | | <span class="left"> |
| | | <el-form-item label="码段编号:" :label-width="leftFormLabelWidth" required prop="id"> |
| | | <el-input v-model="form.id" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="码段名称:" :label-width="leftFormLabelWidth" required prop="name"> |
| | | <el-input v-model="form.name" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="码段类型" :label-width="leftFormLabelWidth" required prop="secType"> |
| | | <el-select v-model="form.secType" placeholder="请选择" @change="changeSectypeFormItems(null)" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in sectypeList" |
| | | :key="item.dictValue" |
| | | :label="item.dictValue" |
| | | :value="item.dictKey"> |
| | | </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 prop="codeSecLengthType"> |
| | | <el-select v-model="form.codeSecLengthType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in codeSecLengthType" |
| | | :key="item.dictValue" |
| | | :label="item.dictValue" |
| | | :value="item.dictKey"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="码段的长度:" :label-width="rightFormLabelWidth" required prop="codeSecLength"> |
| | | <el-input v-model="form.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 prop="referAttributeName"> |
| | | <el-input |
| | | placeholder="请选择" |
| | | prefix-icon="el-icon-search" |
| | | readonly="true" |
| | | 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 prop="codeSecLength"> |
| | | <el-input v-model="form.codeSecLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="流水号的起始值:" :label-width="rightFormLabelWidth" prop="serialStart"> |
| | | <el-input v-model="form.serialStart" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="流水的步长:" :label-width="rightFormLabelWidth" prop="serialStep"> |
| | | <el-input v-model="form.serialStep" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="编码补位方式:" :label-width="rightFormLabelWidth" required prop="codeFillType"> |
| | | <el-select v-model="form.codeFillType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option label="左补位" value="codeattrsec" |
| | | v-for="item in codeFillType" |
| | | :key="item.dictValue" |
| | | :label="item.dictValue" |
| | | :value="item.dictKey"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="补位时的字符:" :label-width="rightFormLabelWidth" prop="codeFillSeparatorSelect"> |
| | | <el-select v-model="form.codeFillSeparatorSelect" filterable placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in codeFillSeparator" |
| | | :key="item.dictValue" |
| | | :label="item.dictValue" |
| | | :value="item.dictKey"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="填充长度:" :label-width="rightFormLabelWidth" required prop="codeFillLength"> |
| | | <el-input v-model="form.codeFillLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="流水上限:" :label-width="rightFormLabelWidth" required prop="codeFillLimit"> |
| | | <el-input v-model="form.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> |
| | | <!-- 层级码段 --> |
| | | <div v-show="form.secType==='codelevelsec' ? true:false"> |
| | | <el-form-item label="层级类型:" :label-width="rightFormLabelWidth" required prop="codeLevelType"> |
| | | <el-select v-model="form.codeLevelType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in codeLevelType" |
| | | :key="item.dictValue" |
| | | :label="item.dictValue" |
| | | :value="item.dictKey"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="层级的值:" :label-width="rightFormLabelWidth" prop="codeLevelValue"> |
| | | <el-input v-model="form.codeLevelValue" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="字符截取类型:" :label-width="rightFormLabelWidth" required prop="valueCutType"> |
| | | <el-select v-model="form.valueCutType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in codeCutType" |
| | | :key="item.dictValue" |
| | | :label="item.dictValue" |
| | | :value="item.dictKey"> |
| | | </el-option> |
| | | </el-select> |
| | | </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 codeGetValueType" |
| | | :key="item.dictValue" |
| | | :label="item.dictValue" |
| | | :value="item.dictKey"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- 引用码段 --> |
| | | <div v-show="form.secType==='coderefersec' ? true:false"> |
| | | <el-form-item label="参照引用的业务类型:" label-width="152px" required prop="referBtmId"> |
| | | <el-input |
| | | placeholder="请选择" |
| | | prefix-icon="el-icon-search" |
| | | readonly="true" |
| | | v-model="form.referBtmId" |
| | | @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 prop="referConfig"> |
| | | <el-input |
| | | 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 prop="codeDateFormatStr"> |
| | | <el-input 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 prop="codeSecLengthType"> |
| | | <el-select v-model="form.codeSecLengthType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in codeSecLengthType" |
| | | :key="item.dictValue" |
| | | :label="item.dictValue" |
| | | :value="item.dictKey"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="码段的长度:" :label-width="rightFormLabelWidth" required prop="codeSecLength"> |
| | | <el-input v-model="form.codeSecLength" :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.parentClassifySecOid" |
| | | @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 prop="codeSecLength"> |
| | | <el-input v-model="form.codeSecLength" :readonly="basicSecOnlyRead"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="编码补位方式:" :label-width="rightFormLabelWidth" required prop="codeFillType"> |
| | | <el-select v-model="form.codeFillType" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in codeFillType" |
| | | :key="item.dictValue" |
| | | :label="item.dictValue" |
| | | :value="item.dictKey"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="补位时的字符:" :label-width="rightFormLabelWidth"> |
| | | <el-select v-model="form.codeFillSeparatorSelect" placeholder="请选择" :disabled="basicSecOnlyRead"> |
| | | <el-option |
| | | v-for="item in codeFillSeparator" |
| | | :key="item.dictValue" |
| | | :label="item.dictValue" |
| | | :value="item.dictKey"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </div> |
| | | </span> |
| | | </el-form> |
| | | </div> |
| | | <!-- 第一层对话框的按钮和,线条 --> |
| | | <el-divider direction="horizontal"></el-divider> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button @click="addBasicCodeSettingBox = false" v-show="showbtn">取 消</el-button> |
| | | <el-button type="primary" @click="saveOrEditBasicCode" v-show="showbtn">保 存</el-button> |
| | | </div> |
| | | |
| | | <!-- 第二层对话框,属性码段,属性选择弹窗 --> |
| | | <el-dialog title="为【属性】选取值" |
| | | append-to-body |
| | | :visible.sync="isShowSelectAttrOption" |
| | | width="78%" |
| | |
| | | <el-col span="19"> |
| | | <basic-container> |
| | | <div class="bbox"> |
| | | <avue-crud ref="crud" |
| | | v-model="form" |
| | | :data="selectattrData" |
| | | :option="attrOption" |
| | | :permission="permissionList" |
| | | :table-loading="selectAttrOptionLoading" |
| | | @search-change="selectAttrOptionSearchChange" |
| | | @search-reset="searchAttrReset" |
| | | @selection-change="selectionChangeAttr"> |
| | | <avue-crud |
| | | :data="selectattrData" |
| | | :option="attrOption" |
| | | :table-loading="selectAttrOptionLoading" |
| | | @search-change="selectAttrOptionSearchChange" |
| | | @search-reset="searchAttrReset" |
| | | @selection-change="selectionChangeAttr"> |
| | | </avue-crud> |
| | | </div> |
| | | </basic-container> |
| | |
| | | |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button @click="isShowSelectAttrOption = false">取 消</el-button> |
| | | <el-button type="primary" @click="savelistClassifyLinkAttr">确 定</el-button> |
| | | <el-button type="primary" @click="selectedListClassifyLinkAttr">确 定</el-button> |
| | | </div> |
| | | |
| | | </el-dialog> |
| | | |
| | | <!-- 属性码段,公式编辑框弹窗 --> |
| | | <!-- 第二层对话框,属性码段,公式编辑框弹窗 --> |
| | | <el-dialog title="公式编辑框" |
| | | append-to-body |
| | | :visible.sync="isShowformulaEdit" |
| | |
| | | <el-col :span="14" style="overflow: hidden"> |
| | | <el-card class="box-card" style="height: 33vh; overflow-y: auto; overflow-x: auto;"> |
| | | <div slot="header" class="clearfix"> |
| | | <span style="font-size: medium;">公式内容</span> |
| | | <span style="font-size: medium;" >公式内容</span> |
| | | <el-button type="primary" size="mini" style="float: right;" @click="saveFormulaContent">确定</el-button> |
| | | <el-button type="warning" size="mini" style="margin-right: 10px; float: right;" @click="resetformulaContent">清空内容</el-button> |
| | | <el-button type="warning" size="mini" style="margin-right: 10px; float: right;" @click="resetFormulaContent">清空内容</el-button> |
| | | </div> |
| | | <div class="text item"> |
| | | <el-input type="textarea" :rows="5" style="width: 560px;" v-model="formulaContent"></el-input> |
| | |
| | | |
| | | </el-card> |
| | | </el-col> |
| | | |
| | | <!-- 右侧运算符 --> |
| | | <el-col :span="10"> |
| | | <el-card class="box-card" style="height: 33vh;"> |
| | | <el-card class="box-card" style="height: 33vh; overflow-y: auto; overflow-x: auto;"> |
| | | <div slot="header" class="clearfix"> |
| | | <span style="font-size: medium;">运算符</span> |
| | | </div> |
| | | <div class="text item"> |
| | | <div class="formula-editor"> |
| | | <div class="one"> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'7'})">7</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'8'})">8</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'9'})">9</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'/'})">/</button><br/> |
| | | </div> |
| | | <div class="one"> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'4'})">4</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'5'})">5</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'6'})">6</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'*'})">*</button><br/> |
| | | </div> |
| | | <div class="one"> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'1'})">1</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'2'})">2</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'3'})">3</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'>'})">-</button><br/> |
| | | </div> |
| | | <div class="one"> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'0'})">0</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'00'})">00</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'.'})">.</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'+'})">+</button><br/> |
| | | </div> |
| | | <div class="one"> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'->'})">-></button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'=='})">==</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'('})">(</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':')'})">)</button><br/> |
| | | </div> |
| | | <div class="one"> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'<'})"><</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'>'})">></button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'<='})"><=</button> |
| | | <button class="formula-editor-btn-sm" @click="dbClickAddContent({'formula':'>='})">>=</button> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </el-card> |
| | |
| | | </el-row> |
| | | |
| | | <el-row> |
| | | |
| | | <!-- 左侧公式选择区域 --> |
| | | <el-col :span="14" style="overflow: hidden"> |
| | | <el-card class="box-card" style="height: 40vh; overflow-y: auto; overflow-x: auto;"> |
| | |
| | | </div> |
| | | </el-card> |
| | | </el-col> |
| | | |
| | | <!-- 右侧变量选择区域 --> |
| | | <el-col :span="10" style="overflow: hidden"> |
| | | <el-card class="box-card" style="height: 40vh; overflow-y: auto; overflow-x: auto;"> |
| | |
| | | |
| | | </el-dialog> |
| | | |
| | | <!-- 添加码段信息的自定义组件 --> |
| | | <add-basic-code ref='addBasicChild' @openAttrSelectOrGetValue="openAttrSelectOrGetValue" @openformulaEdit="openformulaEdit"></add-basic-code> |
| | | <!-- 第二层对话框,为【父分类码段】选取值弹窗 --> |
| | | <el-dialog title="为【父分类码段】选取值" |
| | | append-to-body |
| | | :visible.sync="isShowParentClassifyOption" |
| | | width="65%" |
| | | style="height: 150vh; margin-top: -13vh;" |
| | | destroy-on-close> |
| | | |
| | | <!-- 第一层对话框的按钮和,线条 --> |
| | | <el-divider direction="horizontal"></el-divider> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button @click="addBasicCodeSettingBox = false">取 消</el-button> |
| | | <el-button type="primary" @click="saveBasicCode">保 存</el-button> |
| | | </div> |
| | | |
| | | <avue-crud |
| | | :page.sync="parentClassifyDataPage" |
| | | ref="crudParentClassify" |
| | | :option="parentClassifyParentOption" |
| | | :table-loading="classifyDialogLoading" |
| | | :data="parentClassifyData" |
| | | @refresh-change="refreshParentClassifyDataChange" |
| | | @search-change="parentClassifySearchChange" |
| | | @search-reset="parentClassifySearchReset" |
| | | @selection-change="parentClassifySelectionChange" |
| | | @current-change="parentClassifyCurrentChange" |
| | | @size-change="parentClassifySizeChange" |
| | | @on-load="parentClassifyOnLoad"> |
| | | </avue-crud> |
| | | |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button @click="isShowParentClassifyOption = false">取 消</el-button> |
| | | <el-button type="primary" @click="saveSelectedParentClassify">保 存</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <!-- 第二层对话框,为【参照引用的业务类型】选取值弹窗 --> |
| | | <el-dialog title="为【参照引用的业务类型】选取值" |
| | | append-to-body |
| | | :visible.sync="isShowSelectReferBtmOption" |
| | | width="65%" |
| | | style="height: 150vh; margin-top: -13vh;" |
| | | destroy-on-close> |
| | | |
| | | <avue-crud |
| | | :page.sync="referBtmDataPage" |
| | | ref="crudReferBtm" |
| | | :option="referBtmOption" |
| | | :table-loading="referBtmDialogLoading" |
| | | :data="referBtmData" |
| | | @refresh-change="referBtmDataChange" |
| | | @search-change="referBtmSearchChange" |
| | | @search-reset="referBtmSearchReset" |
| | | @selection-change="referBtmSelectionChange" |
| | | @current-change="referBtmCurrentChange" |
| | | @size-change="referBtmSizeChange" |
| | | @on-load="referBtmOnLoad"> |
| | | </avue-crud> |
| | | |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button @click="isShowSelectReferBtmOption = false">取 消</el-button> |
| | | <el-button type="primary" @click="saveSelectedreferBtm">保 存</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | </el-dialog> |
| | | |
| | | </basic-container> |
| | |
| | | |
| | | <script> |
| | | import { gridCodeRule, getDetail, add, update, remove, listUseRange, updateStatus } from "@/api/code/mdmrule"; |
| | | import { gridCodeBasicSec, downOrderNum, upOrderNum, deleteData, editSave, getObjectByOid, listDataByOids, refDataGrid} from "@/api/code/codebasic"; |
| | | import { |
| | | gridCodeBasicSec, |
| | | downOrderNum, |
| | | upOrderNum, |
| | | deleteData, |
| | | editSave, |
| | | getObjectByOid, |
| | | listDataByOids, |
| | | refDataGrid, |
| | | addSave, |
| | | refDataGridClassifySec, |
| | | } from "@/api/code/codebasic"; |
| | | import { treeTopCodeClassify, listClassifyLinkAttr } from "@/api/code/codeclassify"; |
| | | import { gridCodeFixedValue,addSaveCodeFixedValue,deleteCodeFixedValue,editCodeFixedValue,saveOrder } from "@/api/code/codeFixedValue"; |
| | | import { treeCodeClassifyValue } from "@/api/code/codeClassifyValue"; |
| | | import optionBasic from "@/const/code/codebasic"; |
| | | import optionRule from "@/const/code/mdmrule"; |
| | | import attrOption from "@/const/code/selectattroption"; |
| | | import treeOption from "@/const/code/classifytreeoption"; |
| | | import attrOption from "@/const/code/selectAttrOptionDialog"; |
| | | import treeOption from "@/const/code/classifyTreeOptionDialog"; |
| | | import parentClassifyParentOption from "@/const/code/parentClassifyParentOptionDialog"; |
| | | import referBtmOption from "@/const/code/referBtmDialog"; |
| | | import fixedValueOption from "@/const/code/fixedValueMgrDialog"; |
| | | import { getDictionary } from "@/api/omd/dict"; |
| | | import {mapGetters} from "vuex"; |
| | | |
| | | export default { |
| | | data() { |
| | | return { |
| | | form: {}, |
| | | ruleForm: {}, |
| | | query: {}, |
| | | loading: true, |
| | | currentCodeRuleOid: '', |
| | |
| | | selectionList: [], |
| | | /*编码规则表格配置*/ |
| | | optionRule: optionRule, |
| | | |
| | | data: [], |
| | | |
| | | currentRuleLcStatus: '', |
| | | /*克隆按钮对话框控制*/ |
| | | cloneSettingBox: false, |
| | | optionBasic: optionBasic, |
| | | optionBasic: optionBasic, |
| | | /*使用范围对话框显示控制*/ |
| | | codeRangeSettingBox: false, |
| | | useRangeData: [], |
| | | dialogLoading: true, |
| | | /*使用范围对话框配置*/ |
| | | dialogeOption: { |
| | | height: 'auto', |
| | | calcHeight: 30, |
| | | tip: false, |
| | | searchShow: false, |
| | | searchMenuSpan: 6, |
| | | border: true, |
| | | index: true, |
| | | disablePage:false, |
| | | viewBtn: false, |
| | | addBtn: false, |
| | | menu: false, |
| | | selection: false, |
| | | dialogClickModal: false, |
| | | align: 'center', |
| | | dialogWidth: 400, |
| | | column: [ |
| | | { |
| | | label: "分类编号", |
| | | prop: "id", |
| | | span: 24 |
| | | }, |
| | | { |
| | | label: "分类名称", |
| | | prop: "name", |
| | | span: 24, |
| | | } |
| | | ] |
| | | }, |
| | | |
| | | /*基础码段相关数据*/ |
| | | basicData:[], |
| | | loadingBasic: true, |
| | | selectionBasicList: [], |
| | | addBasicCodeSettingBox: false, |
| | | showbtn: false, //基础码段新增是否显示基础码段 |
| | | basicSecDialogTitle: '', //基础码段第一层对话框标题 |
| | | basicSecOnlyRead: false, //新增基础码段表单是否只读 |
| | | |
| | | |
| | | /** 码值管理相关数据 */ |
| | | isShowBasicSecCodeValueMgr: false, //码段码值管理对话框 |
| | | codefixedsecOrCodeclassifysecOid: '', //存放基础码段点击码值管理时的当前行id,用于保存码值时使用 |
| | | selectedFixedOrCodeclassifyValue: '', //当前选中的码值数据 |
| | | //固定码段码值表单 |
| | | codeFixdForm: { |
| | | codeFixedSecOid: "", |
| | | description: "", |
| | | id: "", |
| | | }, |
| | | isShowFixedForm: true, //true显示固定码段码值管理界面,false显示分类码段码值管理界面 |
| | | fixedValueData: [], //固定码段码值表格数据 |
| | | fixedValueOption: fixedValueOption, //表格配置 |
| | | fixedValueOptionLoading: false, //加载表格的动态效果 |
| | | fixedValueSelectList: [], //固定码段码值当前选中的行 |
| | | |
| | | //分类码段码值表单 |
| | | codeClassifyForm: { |
| | | codeclassifysecoid: "", |
| | | id: "", |
| | | name: "", |
| | | oid: "", |
| | | parentclassifyvalueoid: "", |
| | | }, |
| | | |
| | | |
| | | /* 为属性选取值窗口显示打开控制变量 */ |
| | | isShowSelectAttrOption: false, |
| | | /* 为属性选值左侧树数据 */ |
| | |
| | | selectattrData: [], |
| | | selectAttrOptionLoading: false, |
| | | selectionChangeAttrList: [], |
| | | /*公式编辑框对话框*/ |
| | | |
| | | /*公式编辑框对话框相关数据*/ |
| | | isShowformulaEdit: false, //公式编辑框对话框显示控制 |
| | | formulaContent: '', //公式编辑框内容 |
| | | activeName: 'first', //当前活动的tab |
| | | activeNameAttr: 'first', //变量中的当前活动tab |
| | | |
| | | |
| | | //常用公式 |
| | | commonFormulaTableData: [{ |
| | | "formula": 'if(compare,trueResult,falseResult)', |
| | | "desc": '如果compare的表达式为true,则执行trueResult的表达式,否则执行flaseResult.例如if(3>2,2*(3+2),3/(2-4)),值等于10', |
| | | }, |
| | | { |
| | | "formula": 'sum(douber1,douber2)', |
| | | "desc": '两个格式为douber的参数求和', |
| | | }, |
| | | { |
| | | "formula": 'sub(douber1,douber2)', |
| | | "desc": '格式为douber的参数douber1减去格式为douber的参数douber2', |
| | | }, |
| | | { |
| | | "formula": 'mul(douber1,douber2)', |
| | | "desc": '两个格式为douber的参数相乘', |
| | | }, |
| | | { |
| | | "formula": 'div(douber1,douber2)', |
| | | "desc": '格式为douber的参数douber1除以格式为douber的参数douber2.当douber2等于0的时候,返回0;如果除不尽的时候保留10位小数', |
| | | }, |
| | | { |
| | | "formula": 'mod(int,int)', |
| | | "desc": '求余数', |
| | | }, |
| | | { |
| | | "formula": 'toInt(string)', |
| | | "desc": '转换为int格式', |
| | | }, |
| | | { |
| | | "formula": 'doubleRound(string,count)', |
| | | "desc": '处理douber的小数位数,count表示小数位数', |
| | | }, |
| | | { |
| | | "formula": 'zeroIfNull(value)', |
| | | "desc": '如果参数的值为null或者"",将返回0', |
| | | }, |
| | | { |
| | | "formula": 'endsWith(string,str1)', |
| | | "desc": '字符串string是不是以str1结尾', |
| | | }, |
| | | { |
| | | "formula": 'startsWith(string,str1)', |
| | | "desc": '字符串string是否以str1开头', |
| | | }, |
| | | { |
| | | "formula": 'charAt(string,index)', |
| | | "desc": '获取字符串string中第index位置的字符,如果长度小于index,则返回', |
| | | }, |
| | | { |
| | | "formula": 'equalsIgnoreCase(str1,str2)', |
| | | "desc": '字符串str1和字符串str2是否相等', |
| | | }, |
| | | { |
| | | "formula": 'indexOf(str1,str2)', |
| | | "desc": '字符串str2在字符串str1中首次出现的位置', |
| | | }, |
| | | { |
| | | "formula": 'isEmpty(str1)', |
| | | "desc": '参数str1是否为空,其中null这个字符串也表示为空', |
| | | }, |
| | | { |
| | | "formula": 'lastIndexOf(str1,str2)', |
| | | "desc": '字符串str2在字符串str1中最后出现的位置', |
| | | }, |
| | | { |
| | | "formula": 'leftStr(str1,index)', |
| | | "desc": '获取index位置左侧的所有字符', |
| | | }, |
| | | { |
| | | "formula": 'rightStr(str1,str2)', |
| | | "desc": '获取index位置右侧的所有字符', |
| | | }, |
| | | { |
| | | "formula": 'length(str1)', |
| | | "desc": '参数str1的长度', |
| | | }, |
| | | { |
| | | "formula": 'mid(str1,start,end)', |
| | | "desc": '获取str1的从start到end直接的字符串,出现异常时返回', |
| | | }, |
| | | { |
| | | "formula": 'tolowercase(str1)', |
| | | "desc": '将字符串str1转为小写', |
| | | }, |
| | | { |
| | | "formula": 'touppercase(str1)', |
| | | "desc": '将字符串str1转为大写', |
| | | }, |
| | | { |
| | | "formula": 'trimzero(str1)', |
| | | "desc": '去除字符串str1中的0', |
| | | }, |
| | | { |
| | | "formula": 'MD5(str1)', |
| | | "desc": '将字符串进行MD5加密', |
| | | }, |
| | | ], |
| | | "formula": 'if(compare,trueResult,falseResult)', |
| | | "desc": '如果compare的表达式为true,则执行trueResult的表达式,否则执行flaseResult.例如if(3>2,2*(3+2),3/(2-4)),值等于10', |
| | | }, |
| | | { |
| | | "formula": 'sum(douber1,douber2)', |
| | | "desc": '两个格式为douber的参数求和', |
| | | }, |
| | | { |
| | | "formula": 'sub(douber1,douber2)', |
| | | "desc": '格式为douber的参数douber1减去格式为douber的参数douber2', |
| | | }, |
| | | { |
| | | "formula": 'mul(douber1,douber2)', |
| | | "desc": '两个格式为douber的参数相乘', |
| | | }, |
| | | { |
| | | "formula": 'div(douber1,douber2)', |
| | | "desc": '格式为douber的参数douber1除以格式为douber的参数douber2.当douber2等于0的时候,返回0;如果除不尽的时候保留10位小数', |
| | | }, |
| | | { |
| | | "formula": 'mod(int,int)', |
| | | "desc": '求余数', |
| | | }, |
| | | { |
| | | "formula": 'toInt(string)', |
| | | "desc": '转换为int格式', |
| | | }, |
| | | { |
| | | "formula": 'doubleRound(string,count)', |
| | | "desc": '处理douber的小数位数,count表示小数位数', |
| | | }, |
| | | { |
| | | "formula": 'zeroIfNull(value)', |
| | | "desc": '如果参数的值为null或者"",将返回0', |
| | | }, |
| | | { |
| | | "formula": 'endsWith(string,str1)', |
| | | "desc": '字符串string是不是以str1结尾', |
| | | }, |
| | | { |
| | | "formula": 'startsWith(string,str1)', |
| | | "desc": '字符串string是否以str1开头', |
| | | }, |
| | | { |
| | | "formula": 'charAt(string,index)', |
| | | "desc": '获取字符串string中第index位置的字符,如果长度小于index,则返回', |
| | | }, |
| | | { |
| | | "formula": 'equalsIgnoreCase(str1,str2)', |
| | | "desc": '字符串str1和字符串str2是否相等', |
| | | }, |
| | | { |
| | | "formula": 'indexOf(str1,str2)', |
| | | "desc": '字符串str2在字符串str1中首次出现的位置', |
| | | }, |
| | | { |
| | | "formula": 'isEmpty(str1)', |
| | | "desc": '参数str1是否为空,其中null这个字符串也表示为空', |
| | | }, |
| | | { |
| | | "formula": 'lastIndexOf(str1,str2)', |
| | | "desc": '字符串str2在字符串str1中最后出现的位置', |
| | | }, |
| | | { |
| | | "formula": 'leftStr(str1,index)', |
| | | "desc": '获取index位置左侧的所有字符', |
| | | }, |
| | | { |
| | | "formula": 'rightStr(str1,str2)', |
| | | "desc": '获取index位置右侧的所有字符', |
| | | }, |
| | | { |
| | | "formula": 'length(str1)', |
| | | "desc": '参数str1的长度', |
| | | }, |
| | | { |
| | | "formula": 'mid(str1,start,end)', |
| | | "desc": '获取str1的从start到end直接的字符串,出现异常时返回', |
| | | }, |
| | | { |
| | | "formula": 'tolowercase(str1)', |
| | | "desc": '将字符串str1转为小写', |
| | | }, |
| | | { |
| | | "formula": 'touppercase(str1)', |
| | | "desc": '将字符串str1转为大写', |
| | | }, |
| | | { |
| | | "formula": 'trimzero(str1)', |
| | | "desc": '去除字符串str1中的0', |
| | | }, |
| | | { |
| | | "formula": 'MD5(str1)', |
| | | "desc": '将字符串进行MD5加密', |
| | | }, |
| | | ], |
| | | //财务公式 |
| | | financialFormulaTableData: [{ |
| | | "formula": 'toChinese(value)', |
| | |
| | | "desc": '查询servername中tablename数据库表中fieldname字段的值,pkfield表示主键的字段名称,pkValue表示主键的值,serverName现在默认为localServer' |
| | | }, |
| | | ], |
| | | |
| | | //本场景变量 |
| | | thisSceneTableData: [{ |
| | | "formula": '${}', |
| | |
| | | } |
| | | ], |
| | | |
| | | /*使用范围对话框显示控制*/ |
| | | codeRangeSettingBox: false, |
| | | useRangeData: [], |
| | | dialogLoading: true, |
| | | /*使用范围对话框配置*/ |
| | | dialogeOption: { |
| | | height: 'auto', |
| | | calcHeight: 30, |
| | | tip: false, |
| | | searchShow: false, |
| | | searchMenuSpan: 6, |
| | | border: true, |
| | | index: true, |
| | | disablePage:false, |
| | | viewBtn: false, |
| | | addBtn: false, |
| | | menu: false, |
| | | selection: false, |
| | | dialogClickModal: false, |
| | | align: 'center', |
| | | dialogWidth: 400, |
| | | column: [ |
| | | { |
| | | label: "分类编号", |
| | | prop: "id", |
| | | span: 24 |
| | | }, |
| | | { |
| | | label: "分类名称", |
| | | prop: "name", |
| | | span: 24, |
| | | } |
| | | ] |
| | | }, |
| | | |
| | | /* 父分类码段对话框 */ |
| | | isShowParentClassifyOption: false, //父分类码段对话框显示控制 |
| | | classifyDialogLoading: true, //表格数据加载提示 |
| | | parentClassifyParentOption: parentClassifyParentOption, //表格配置 |
| | | parentClassifyData: [], //表格数据 |
| | | //分页参数配置 |
| | | parentClassifyDataPage: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 0 |
| | | }, |
| | | parentClassifyQuery: {}, //查询条件 |
| | | parentClassifySelectionList: [], //当前选中行 |
| | | |
| | | |
| | | /** 参照引用的业务类型对话框相关数据 */ |
| | | isShowSelectReferBtmOption: false, //对话框显示控制 |
| | | referBtmDialogLoading: true, //表格数据加载提示 |
| | | referBtmDataPage: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 0 |
| | | }, |
| | | referBtmOption: referBtmOption, //表格配置 |
| | | referBtmData: [], //表格数据 |
| | | referBtmQuery: {}, //查询条件 |
| | | referBtmSelectionList: [], //当前选中行 |
| | | |
| | | /** 基础码段新增表单 */ |
| | | form: { |
| | | id: '', //编号 |
| | | name: '', //名称 |
| | | secType: 'codefixedsec', //码段类型 |
| | | description: '', //描述 |
| | | serialDependFlag: false, //是否流水依赖 |
| | | serialDependOrder: '', //流水依赖顺序 |
| | | nullableFlag: false, //是否为空 |
| | | displayFlag: false, // |
| | | componentCodeFlag: false, //是否参与编码 |
| | | pkCodeRule: '', //所属编码规则 |
| | | }, |
| | | formRules: { |
| | | id: [ |
| | | { required: true, message: '请输入码段编号', trigger: 'blur' }, |
| | | ], |
| | | name: [ |
| | | { required: true, message: '请输入码段名称', trigger: 'blur' }, |
| | | ], |
| | | secType: [ |
| | | { required: true, message: '请输入码段名称', trigger: 'blur' }, |
| | | ], |
| | | codeSecLengthType: [ |
| | | { required: true, message: '请选择码段长度类型', trigger: 'change' }, |
| | | ], |
| | | codeSecLength: [ |
| | | { required: true, message: '请输入码段的长度', trigger: 'blur' }, |
| | | { type: 'number', message: '码段的长度必须为数字值'} |
| | | ], |
| | | referAttributeName: [ |
| | | { required: true, message: '请选择属性', trigger: 'blur' }, |
| | | ], |
| | | serialStart: [ |
| | | { type: 'number', message: '码段的长度必须为数字值'} |
| | | ], |
| | | serialStep: [ |
| | | { type: 'number', message: '码段的长度必须为数字值'} |
| | | ], |
| | | codeFillType: [ |
| | | { required: true, message: '请选择编码补位方式', trigger: 'blur' }, |
| | | ], |
| | | // 设置补位时的字符,需要自定义方法来做判断 |
| | | codeFillSeparatorSelect: [ |
| | | { required: true, message: '请输入补位时的字符', trigger: 'blur' }, |
| | | ], |
| | | codeFillLength: [ |
| | | { required: true, message: '请输入填充长度', trigger: 'blur' }, |
| | | { type: 'number', message: '填充长度必须为数字值'} |
| | | ], |
| | | codeFillLimit: [ |
| | | { required: true, message: '请输入流水上限', trigger: 'blur' }, |
| | | { type: 'number', message: '流水上限必须为数字值'} |
| | | ], |
| | | codeLevelType: [ |
| | | { required: true, message: '请选择层级类型', trigger: 'change' }, |
| | | ], |
| | | codeLevelValue: [ |
| | | { type: 'number', message: '层级的值必须为数字值'} |
| | | ], |
| | | valueCutType: [ |
| | | { required: true, message: '请选择字符截取类型', trigger: 'change' }, |
| | | ], |
| | | referBtmId: [ |
| | | { required: true, message: '请选参照应用的业务类型', trigger: 'change' }, |
| | | ], |
| | | referConfig: [ |
| | | { required: true, message: '请选择参照配置', trigger: 'change' }, |
| | | ], |
| | | codeDateFormatStr: [ |
| | | { required: true, message: '请输入日期格式', trigger: 'blur' }, |
| | | ], |
| | | |
| | | }, |
| | | //枚举和可输可选查询 |
| | | sectypeList:[], //码段类型 |
| | | codeSecLengthType:[], //码段长度类型 |
| | | codeFillType:[], //编码补位方式 |
| | | codeFillSeparator:[], //补位时的字符,可输可选内容 |
| | | codeLevelType:[], //层级类型 |
| | | codeCutType:[], //字符截取类型 |
| | | codeGetValueType:[], //取值类型 |
| | | |
| | | //表单元素标签宽度 |
| | | leftFormLabelWidth: '110px', |
| | | rightFormLabelWidth: '150px', |
| | | |
| | | }; |
| | | }, |
| | | computed: { |
| | |
| | | }, |
| | | methods: { |
| | | |
| | | // 打开公式编辑框,第二层嵌套对话框 |
| | | /** 选中参照引用的业务类型,第二层嵌套对话框,及其相关方法 */ |
| | | saveSelectedreferBtm(){ |
| | | if(this.referBtmSelectionList.length != 1){ |
| | | this.$message.warning("只能选择一条数据!"); |
| | | return false; |
| | | } |
| | | //调用子组件并传递当前选中的参数值,实现回显 |
| | | this.form.referBtmId = this.referBtmSelectionList[0].id; |
| | | this.form.referBtmName = this.referBtmSelectionList[0].name; |
| | | //清空当前选中的行 |
| | | this.referBtmSelectionClear(); |
| | | this.isShowSelectReferBtmOption = false; |
| | | }, |
| | | referBtmSearchReset() { |
| | | this.referBtmQuery = {}; |
| | | this.referBtmOnLoad(this.referBtmDataPage); |
| | | }, |
| | | referBtmSearchChange(params, done) { |
| | | this.referBtmQuery = params; |
| | | this.referBtmDataPage.currentPage = 1; |
| | | this.referBtmOnLoad(this.page, params); |
| | | done(); |
| | | }, |
| | | referBtmSelectionChange(list) { |
| | | //console.log(list); |
| | | this.referBtmSelectionList = list; |
| | | }, |
| | | referBtmSelectionClear() { |
| | | this.referBtmSelectionList = []; |
| | | this.$refs.crudReferBtm.toggleSelection(); |
| | | }, |
| | | referBtmCurrentChange(currentPage){ |
| | | this.referBtmDataPage.currentPage = currentPage; |
| | | }, |
| | | referBtmSizeChange(pageSize){ |
| | | this.referBtmDataPage.pageSize = pageSize; |
| | | }, |
| | | refreshReferBtmDataChange() { |
| | | this.referBtmOnLoad(this.referBtmDataPage, this.referBtmQuery); |
| | | }, |
| | | //加载中参照引用的业务类型的数据 |
| | | referBtmOnLoad(page, params = {}) { |
| | | this.referBtmDialogLoading = true; |
| | | let oid = this.selectionList.length==0 ? this.form.pkCodeRule:this.selectionList[0].oid; |
| | | Object.assign(params,{pkCodeRule:oid}) |
| | | //接口还未提供,待更改 |
| | | refDataGridClassifySec(page.currentPage, page.pageSize, Object.assign(params, this.parentClassifyQuery)).then(res => { |
| | | //console.log(res.data); |
| | | const data = res.data.data; |
| | | this.referBtmDataPage.total = data.total; |
| | | this.referBtmData = data.records; |
| | | this.referBtmDialogLoading = false; |
| | | this.referBtmSelectionClear(); |
| | | }); |
| | | }, |
| | | |
| | | |
| | | /** 父分类选择对话框,第二层嵌套对话框,及其相关方法 */ |
| | | // 保存当前父分类码段的选中行,并进行子组件回显 |
| | | saveSelectedParentClassify(){ |
| | | //console.log(this.parentClassifySelectionList.length); |
| | | if(this.parentClassifySelectionList.length != 1){ |
| | | this.$message.warning("只能选择一条数据!"); |
| | | return false; |
| | | } |
| | | //调用子组件并传递当前选中的参数值,实现回显 |
| | | this.form.parentClassifySecOid = this.parentClassifySelectionList[0].id; |
| | | this.form.parentClassifySecText = this.parentClassifySelectionList[0].name; |
| | | //清空当前选中的行 |
| | | this.parentClassifySelectionClear(); |
| | | this.isShowParentClassifyOption = false; |
| | | }, |
| | | parentClassifySearchReset() { |
| | | this.parentClassifyQuery = {}; |
| | | this.parentClassifyOnLoad(this.parentClassifyDataPage); |
| | | }, |
| | | parentClassifySearchChange(params, done) { |
| | | this.parentClassifyQuery = params; |
| | | this.parentClassifyDataPage.currentPage = 1; |
| | | this.parentClassifyOnLoad(this.page, params); |
| | | done(); |
| | | }, |
| | | parentClassifySelectionChange(list) { |
| | | //console.log(this.parentClassifyCurrentChange); |
| | | this.parentClassifySelectionList = list; |
| | | }, |
| | | parentClassifySelectionClear() { |
| | | this.parentClassifySelectionList = []; |
| | | this.$refs.crudParentClassify.toggleSelection(); |
| | | }, |
| | | parentClassifyCurrentChange(currentPage){ |
| | | this.parentClassifyDataPage.currentPage = currentPage; |
| | | }, |
| | | parentClassifySizeChange(pageSize){ |
| | | this.parentClassifyDataPage.pageSize = pageSize; |
| | | }, |
| | | refreshParentClassifyDataChange() { |
| | | this.parentClassifyOnLoad(this.parentClassifyDataPage, this.parentClassifyQuery); |
| | | }, |
| | | parentClassifyOnLoad(page, params = {}) { |
| | | this.classifyDialogLoading = true; |
| | | let oid = this.selectionList.length==0 ? this.form.pkCodeRule:this.selectionList[0].oid; |
| | | Object.assign(params,{pkCodeRule:oid}) |
| | | refDataGridClassifySec(page.currentPage, page.pageSize, Object.assign(params, this.parentClassifyQuery)).then(res => { |
| | | //console.log(res.data); |
| | | const data = res.data.data; |
| | | this.parentClassifyDataPage.total = data.total; |
| | | this.parentClassifyData = data.records; |
| | | this.classifyDialogLoading = false; |
| | | this.parentClassifySelectionClear(); |
| | | }); |
| | | }, |
| | | |
| | | |
| | | /** 打开公式编辑框,第二层嵌套对话框,及其相关方法 */ |
| | | openformulaEdit(){ |
| | | this.isShowformulaEdit = true; |
| | | }, |
| | | |
| | | //双击添加公式内容 |
| | | dbClickAddContent(row){ |
| | | //console.log(row.formula); |
| | | this.formulaContent = this.formulaContent + row.formula; |
| | | }, |
| | | |
| | | //清空公式内容 |
| | | resetformulaContent(){ |
| | | resetFormulaContent(){ |
| | | this.formulaContent = ''; |
| | | }, |
| | | |
| | | //关闭时清空上次公式内容 |
| | | closeFormulaEdit(){ |
| | | this.resetformulaContent(); |
| | | this.resetFormulaContent(); |
| | | }, |
| | | |
| | | //编辑完成公式内容回调到子组件进行回显 |
| | | //编辑完成公式内容并回显 |
| | | saveFormulaContent(){ |
| | | console.log(this.formulaContent); |
| | | if(this.formulaContent.trim == null){ |
| | | //console.log(this.formulaContent); |
| | | if(this.formulaContent.trim == null || this.formulaContent.trim == ''){ |
| | | this.$message.warning("公式内容不能为空!"); |
| | | return; |
| | | } |
| | | this.$refs.addBasicChild.saveFormulaContent(this.formulaContent); |
| | | //公式内容回显 |
| | | this.form.getValueClass = this.formulaContent; |
| | | this.isShowformulaEdit = false; |
| | | }, |
| | | |
| | | // 打开属性选取值,第二层嵌套对话框 |
| | | openAttrSelectOrGetValue(){ |
| | | //console.log(111); |
| | | this.isShowSelectAttrOption = true; |
| | | }, |
| | | |
| | | /** 打开属性选取值,第二层嵌套对话框,及其相关方法 */ |
| | | // 获取当前被选中树节点的oid |
| | | nodeClick(data) { |
| | | this.currentSelectTreeData = data; |
| | | this.loadlistClassifyLinkAttr() |
| | | }, |
| | | |
| | | // 加载分类连接属性表格数据 |
| | | loadlistClassifyLinkAttr(){ |
| | | this.selectAttrOptionLoading = true; |
| | |
| | | this.selectAttrOptionLoading = false; |
| | | }) |
| | | }, |
| | | |
| | | // 点击搜索后触发该事件 |
| | | selectAttrOptionSearchChange(params, done) { |
| | | this.query = params; |
| | |
| | | this.loadlistClassifyLinkAttr({"page":1,"limit":-1 ,'conditionMap[codeClassifyOid]':this.currentSelectTreeData.oid}); |
| | | done(); |
| | | }, |
| | | |
| | | // 属性取值当前选中行发生变化时触发 |
| | | selectionChangeAttr(list){ |
| | | this.selectionChangeAttrList = list; |
| | | }, |
| | | |
| | | //重置位属性选取值表格的搜索框之后的回调 |
| | | // 重置位属性选取值表格的搜索框之后的回调 |
| | | searchAttrReset() { |
| | | this.loadlistClassifyLinkAttr() |
| | | }, |
| | | |
| | | // 属性取值选取成功保存之后触发 |
| | | savelistClassifyLinkAttr(){ |
| | | // 为属性选取值之后的回显 |
| | | selectedListClassifyLinkAttr(){ |
| | | if(this.selectionChangeAttrList.length != 1){ |
| | | this.$message.warning("只能选择一条数据!"); |
| | | return false; |
| | | } |
| | | let data = { |
| | | "referAttributeId":this.selectionChangeAttrList[0].id, |
| | | "referAttributeName":this.selectionChangeAttrList[0].name, |
| | | "referCodeClassifyOid": this.currentSelectTreeData.key, |
| | | "referCodeClassifyOidName": this.currentSelectTreeData.title, |
| | | } |
| | | //console.log(data); |
| | | //调用子组件并传递当前选中的参数值,实现回显 |
| | | this.$refs.addBasicChild.selectedListClassifyLinkAttr(data); |
| | | this.form = Object.assign({}, this.form, { |
| | | referAttributeId:this.selectionChangeAttrList[0].id, |
| | | referAttributeName:this.selectionChangeAttrList[0].name, |
| | | referCodeClassifyOid: this.currentSelectTreeData.key, |
| | | referCodeClassifyOidName: this.currentSelectTreeData.title, |
| | | }) |
| | | this.isShowSelectAttrOption = false; |
| | | }, |
| | | |
| | | |
| | | // 编码规则当前选中行变化的时候触发 |
| | | selectionChange(list) { |
| | | this.selectionList = list; |
| | | if(this.selectionList.length > 0){ |
| | | this.currentCodeRuleOid = this.selectionList [list.length-1]; |
| | | this.loadBasic(this.selectionList[list.length-1]); |
| | | /** 基础码段表中的码值管理的相关方法 */ |
| | | // 码值管理弹窗控制 |
| | | openBasicSecCodeValueMgr(row){ |
| | | //当前为固定码段码值管理码值管理 |
| | | if(row.secType === "codefixedsec"){ |
| | | this.isShowFixedForm = true; |
| | | this.loadFixedValueTableData(row); |
| | | }else{ |
| | | //分类码段 |
| | | this.isShowFixedForm = false; |
| | | } |
| | | this.codefixedsecOrCodeclassifysecOid = row.oid; |
| | | this.isShowBasicSecCodeValueMgr = true; |
| | | }, |
| | | //加载固定码段码值表数据 |
| | | loadFixedValueTableData(row){ |
| | | this.fixedValueOptionLoading = true; |
| | | gridCodeFixedValue(1, -1, {"codeFixedSecOid":row.oid}).then(res=>{ |
| | | this.fixedValueData = res.data.data.records; |
| | | //console.log(this.fixedValueData); |
| | | this.fixedValueOptionLoading = false; |
| | | }) |
| | | }, |
| | | //加载分类码段码值管理页面tree数据 |
| | | |
| | | //单击固定码段的码值表中行时触发的事件 |
| | | selectedCodeValueRow(row){ |
| | | //console.log(row); |
| | | this.selectedFixedOrCodeclassifyValue = row; |
| | | this.codeFixdForm.id = row.id; |
| | | this.codeFixdForm.description = row.description; |
| | | this.codeFixdForm.codeFixedSecOid = row.codefixedsecoid; |
| | | }, |
| | | //新增码值 |
| | | addCodeSecValue(condition){ |
| | | if(condition === "codefixedsec"){ |
| | | if(this.codeFixdForm.id.trim() == ''){ |
| | | this.$message.warning("码值不能为空!"); |
| | | return; |
| | | } |
| | | this.codeFixdForm.codeFixedSecOid = this.codefixedsecOrCodeclassifysecOid; |
| | | addSaveCodeFixedValue(this.codeFixdForm).then(() => { |
| | | this.loadFixedValueTableData({"oid":this.codefixedsecOrCodeclassifysecOid}); |
| | | this.clearFixedOrClassifyForm('codefixedsec'); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | | }); |
| | | }, error => { |
| | | window.console.log(error); |
| | | }); |
| | | }else { |
| | | |
| | | } |
| | | }, |
| | | // 清空码值表单 |
| | | clearFixedOrClassifyForm(condition){ |
| | | //点击取消时清空表单与当前选中的码值,并禁用按钮 |
| | | this.selectedFixedOrCodeclassifyValue = ''; |
| | | if(condition === "close"){ |
| | | this.codeFixdForm.id = ''; |
| | | } |
| | | if(condition === "codefixedsec" || condition === "close"){ |
| | | this.codeFixdForm.description = ''; |
| | | this.codeFixdForm.codeFixedSecOid = ''; |
| | | }else { |
| | | this.codeClassifyForm = ''; |
| | | } |
| | | }, |
| | | //修改码值 |
| | | editCodeSecValue(condition){ |
| | | if(condition=='codefixedsec'){ |
| | | //以前是直接把当前选中行的所有数据都进行提交,但其实只需要传输一些比要参数即可,这儿做了修改,需要穿其他参数的请自行添加 |
| | | let editData = { |
| | | "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.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | | }); |
| | | }, error => { |
| | | window.console.log(error); |
| | | }); |
| | | }else { |
| | | |
| | | } |
| | | |
| | | }, |
| | | //删除码值 |
| | | delCodeSecValue(condition){ |
| | | //固定码段码值删除 |
| | | if(condition == 'codefixedsec'){ |
| | | console.log(this.selectedFixedOrCodeclassifyValue.oid); |
| | | this.$confirm("是否删除这条数据?如果被引用将不能被删除!", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning" |
| | | }) |
| | | .then(() => { |
| | | let ts = new Date(this.selectedFixedOrCodeclassifyValue.ts).getTime(); |
| | | return deleteCodeFixedValue({"oid": this.selectedFixedOrCodeclassifyValue.oid,"ts": ts}); |
| | | }) |
| | | .then(() => { |
| | | this.loadFixedValueTableData({"oid":this.codefixedsecOrCodeclassifysecOid}) |
| | | this.clearFixedOrClassifyForm('codefixedsec'); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | | }); |
| | | }); |
| | | }else{ |
| | | //分类码段码值删除 |
| | | |
| | | this.selectedFixedOrCodeclassifyValue = ''; |
| | | } |
| | | |
| | | }, |
| | | //对码值表进行:上移、下移、移除操作 |
| | | codeFixedValueOpetion(condition,row){ |
| | | //console.log(this.fixedValueData[row.$index].orderNum); |
| | | const index = row.$index; |
| | | if(condition == 'up'){ |
| | | //对ordeNum排序字段进行调整 |
| | | this.fixedValueData[index].orderNum = this.fixedValueData[index].orderNum-1 |
| | | this.fixedValueData[index-1].orderNum = this.fixedValueData[index].orderNum+1 |
| | | //当下标减去1小于0或者orderNum字段减去1小于0的时候不执行上移操作 |
| | | if(index-1<0 || this.fixedValueData[row.$index].orderNum-1<0){ |
| | | return; |
| | | } |
| | | //调整数组值顺序 |
| | | let tempOption = this.fixedValueData[index-1]; |
| | | this.$set(this.fixedValueData, index - 1, this.fixedValueData[index]) |
| | | this.$set(this.fixedValueData, index , tempOption) |
| | | |
| | | //console.log(this.fixedValueData); |
| | | }else if(condition == 'down'){ |
| | | //对ordeNum排序字段进行调整 |
| | | this.fixedValueData[index].orderNum = this.fixedValueData[index].orderNum+1 |
| | | this.fixedValueData[index+1].orderNum = this.fixedValueData[index].orderNum-1 |
| | | //调整数组值顺序 |
| | | let tempOption = this.fixedValueData[index+1]; |
| | | this.$set(this.fixedValueData, index + 1, this.fixedValueData[index]); |
| | | this.$set(this.fixedValueData, index, tempOption) |
| | | }else { |
| | | for(let i=index+1; i<this.fixedValueData.length-1; i++){ |
| | | //console.log(this.fixedValueData[i].orderNum); |
| | | this.fixedValueData[i].orderNum = this.fixedValueData[i].orderNum-1; |
| | | //console.log(this.fixedValueData[i].orderNum); |
| | | } |
| | | this.$delete(this.fixedValueData, index); |
| | | } |
| | | //console.log(this.fixedValueData); |
| | | }, |
| | | //保存对固定码段码值的操作 |
| | | saveCodeFixedValueOption(){ |
| | | let data = { |
| | | "codeFixedSecOid": this.codefixedsecOrCodeclassifysecOid, |
| | | "dtoList": JSON.stringify(this.fixedValueData), |
| | | } |
| | | saveOrder(data).then(() => { |
| | | this.$message({ |
| | | type: "success", |
| | | message: "保存成功!" |
| | | }); |
| | | }, error => { |
| | | window.console.log(error); |
| | | }); |
| | | }, |
| | | |
| | | |
| | | /** 基础码段相关方法 */ |
| | | //防止打开过编辑窗口之后表单中存在值,所以需要清空之后初始化form表单 |
| | | clearBasicAddForm(){ |
| | | this.form = ''; |
| | | this.form = { |
| | | secType:'codefixedsec' |
| | | }; |
| | | this.changeSectypeFormItems(null); |
| | | }, |
| | | // 打开新增窗口 |
| | | addBasicCodeSec(){ |
| | | if(!this.tipsMessage(this.selectionList)){ |
| | |
| | | this.$message.warning('编码规则状态不是"编辑中",不允许编辑码段!'); |
| | | return; |
| | | } |
| | | this.openBasicDialog('add',null); |
| | | this.loadCodeSecType(); |
| | | }, |
| | | //打开新增或编辑基础码段对话框 |
| | | openBasicDialog(condition,row){ |
| | | //console.log(row); |
| | | if(condition == 'add') { |
| | | this.basicSecDialogTitle = '添加码段信息'; |
| | | this.showbtn = true; |
| | | this.basicSecOnlyRead = false; |
| | | }else if(condition == 'edit'){ |
| | | if(this.selectionList.length!=1){ |
| | | this.$message.warning('请选择一条编码规则数据!'); |
| | | return; |
| | | } |
| | | this.basicSecDialogTitle = '修改码段信息'; |
| | | this.showbtn = true; |
| | | this.basicSecOnlyRead = false; |
| | | //为form绑定值 |
| | | this.changeSectypeFormItems(row); |
| | | }else{ |
| | | this.basicSecDialogTitle = '查看码段信息'; |
| | | this.showbtn = false; |
| | | this.basicSecOnlyRead = true; |
| | | this.changeSectypeFormItems(row); |
| | | } |
| | | //console.log(this.form); |
| | | this.addBasicCodeSettingBox = true; |
| | | this.$nextTick(() => { |
| | | this.$refs.addBasicChild.loadCodeSecType(); |
| | | }) |
| | | }, |
| | | // 新增基础码段 |
| | | saveBasicCode(){ |
| | | if(this.selectionList[0].oid == null){ |
| | | saveOrEditBasicCode(){ |
| | | if(this.selectionList[0].oid == null || this.selectionList[0].oid == ''){ |
| | | this.$message.warning('缺失必要参数,请重新选择编码规则后重试!'); |
| | | return; |
| | | } |
| | | this.form.pkCodeRule = this.selectionList[0].oid; |
| | | //console.log(this.form); |
| | | if(this.form.oid == '' || this.form.oid == null){ |
| | | addSave(this.form).then(() => { |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | | }); |
| | | }, error => { |
| | | window.console.log(error); |
| | | }); |
| | | }else{ |
| | | editSave(this.form).then(() => { |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | | }); |
| | | }, error => { |
| | | window.console.log(error); |
| | | }); |
| | | } |
| | | this.$refs.addBasicChild.addSave(this.selectionList[0].oid); |
| | | |
| | | // 关闭窗口 |
| | | this.addBasicCodeSettingBox = false |
| | | // 点击新增基础码段之后关闭窗口之后触发重新加载 |
| | | // 点击新增基础码段,关闭窗口之后触发重新加载 |
| | | this.loadBasic(this.selectionList[0]); |
| | | }, |
| | | // 判断数据是否选择以及只能选择单条数据 |
| | |
| | | type: "warning" |
| | | }) |
| | | .then(() => { |
| | | let ts = this.selectionBasicList[0].ts; |
| | | let ts = new Date(this.selectionBasicList[0].ts).getTime(); |
| | | return deleteData({"oid": oid,"ts": ts}); |
| | | }) |
| | | .then(() => { |
| | | this.loadBasic({"oid":this.currentCodeRuleOid == null ? this.selectionList[0].oid:this.currentCodeRuleOid}); |
| | | this.loadBasic({"oid":this.currentCodeRuleOid == null || this.currentCodeRuleOid == '' ? this.selectionList[0].oid:this.currentCodeRuleOid}); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | | }); |
| | | //this.$refs.crud.toggleSelection(); |
| | | this.$refs.crudBasic.toggleSelection(); |
| | | }); |
| | | }, |
| | | // 点击触发加载基础码段信息 |
| | | loadBasic(row){ |
| | | this.loadingBasic = true; |
| | | //console.log(row.oid); |
| | | //存储当前关联的编码规则相关信息 |
| | | this.currentCodeRuleOid = row.oid; |
| | | this.currentRuleLcStatus = row.lcStatus; |
| | | gridCodeBasicSec(1, -1, {"pkCodeRule":row.oid}).then(res => { |
| | | const data = res.data.data; |
| | | this.basicData = data.records; |
| | |
| | | }, |
| | | //基础码段查询 |
| | | refreshChangeBasicSec(){ |
| | | this.loadBasic({"oid":this.currentCodeRuleOid == null ? this.selectionList[0].oid:this.currentCodeRuleOid}); |
| | | this.loadBasic({"oid":this.currentCodeRuleOid == null || this.currentCodeRuleOid == '' ? this.selectionList[0].oid:this.currentCodeRuleOid}); |
| | | }, |
| | | |
| | | |
| | | /** 编码规则相关方法 */ |
| | | // 查询使用范围 |
| | | handleRange(){ |
| | | if(!this.tipsMessage(this.selectionList)){ |
| | |
| | | this.codeRangeSettingBox = true; |
| | | this.getRangeCodeList() |
| | | }, |
| | | //加载使用范围列表 |
| | | getRangeCodeList(){ |
| | | this.dialogLoading = true; |
| | | if(this.selectionList[0].oid==null){ |
| | |
| | | this.dialogLoading = false; |
| | | }); |
| | | }, |
| | | //刷新使用范围列表 |
| | | refreshUseRangeChange(){ |
| | | this.getRangeCodeList(); |
| | | }, |
| | | //单击编码规则实现行选择 |
| | | codeRuleRowClick (row) { |
| | | //console.log(row); |
| | | this.$refs.crud.toggleRowSelection(row); |
| | | this.loadBasic(row); |
| | | }, |
| | | // 启用与停用 |
| | | enableOrDeactivatse(oId,update){ |
| | |
| | | .then(() => { |
| | | // 只支持每次单条记录删除 |
| | | let oid = this.selectionList[0].oid; |
| | | let ts = this.selectionList[0].ts; |
| | | let ts = new Date(this.selectionList[0].ts).getTime(); |
| | | return remove({oid: oid,ts: ts}); |
| | | }) |
| | | .then(() => { |
| | |
| | | // 打开修改 |
| | | beforeOpen(done, type) { |
| | | if (["edit", "view"].includes(type)) { |
| | | getDetail(this.form.oid).then(res => { |
| | | this.form = res.data.data; |
| | | getDetail(this.ruleForm.oid).then(res => { |
| | | this.ruleForm = res.data.data; |
| | | }); |
| | | } |
| | | done(); |
| | |
| | | this.page.currentPage = 1; |
| | | this.onLoad(this.page, params); |
| | | done(); |
| | | }, |
| | | }, |
| | | // 编码规则当前选中行变化的时候触发 |
| | | selectionChange(list) { |
| | | this.selectionList = list; |
| | | this.$refs.crud.setCurrentRow(this.selectionList [list.length-1]); |
| | | if(this.selectionList.length > 0){ |
| | | this.currentCodeRuleOid = this.selectionList [list.length-1]; |
| | | this.currentCodeRuleOid = this.selectionList[list.length-1].oid; |
| | | this.currentRuleLcStatus = this.selectionList [list.length-1].lcStatus; |
| | | //console.log(this.currentRuleLcStatus); |
| | | this.loadBasic(this.selectionList[list.length-1]); |
| | | } |
| | | }, |
| | |
| | | onLoad(page, params = {}) { |
| | | this.loading = true; |
| | | gridCodeRule(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => { |
| | | //console.log(res); |
| | | //console.log(res.data); |
| | | const data = res.data.data; |
| | | this.page.total = data.total; |
| | | this.data = data.records; |
| | | this.loading = false; |
| | | this.loadBasic(data.records[0]) |
| | | this.selectionClear(); |
| | | this.loadBasic(this.data[0]) |
| | | this.$nextTick(() => { |
| | | this.$refs.crud.toggleRowSelection(this.data[0]); |
| | | this.$refs.crud.setCurrentRow(this.data[0]); |
| | | }) |
| | | this.selectionList = data.records[0]; |
| | | //this.selectionClear(); |
| | | }); |
| | | } |
| | | }, |
| | | |
| | | |
| | | /** 第一层对话框相关方法 */ |
| | | // 打开二层弹窗方法 |
| | | openAttrSelectOrGetValue(condition){ |
| | | if(condition === 'attr'){ |
| | | this.isShowSelectAttrOption = true; |
| | | }else if(condition === 'value'){ |
| | | this.isShowformulaEdit = true; |
| | | }else if(condition === 'parentClassifySecOid'){ |
| | | this.isShowParentClassifyOption = true; |
| | | }else if(condition === 'referBtmId'){ |
| | | this.isShowSelectReferBtmOption = true; |
| | | }else if(condition === 'referConfig'){ |
| | | //this.$emit('openSelectreferConfig') |
| | | } |
| | | }, |
| | | |
| | | // 点击输入框的×号,清空输入框中的内容 |
| | | clearAttrDataByIcon(condition){ |
| | | if(condition === 'attr'){ |
| | | this.form.referAttributeName = ''; |
| | | this.form.referAttributeId = ''; |
| | | this.form.referCodeClassifyOid = ''; |
| | | this.form.referCodeClassifyOidName = ''; |
| | | }else if(condition === 'value'){ |
| | | this.form.getValueClass = ''; |
| | | }else if(condition === 'parentClassifySecOid'){ |
| | | this.form.parentClassifySecOid = ''; |
| | | }else if(condition === 'referBtmId'){ |
| | | this.form.referBtmId = ''; |
| | | }else if(condition === 'referConfig'){ |
| | | this.form.referBtmId = ''; |
| | | } |
| | | }, |
| | | |
| | | // 码段类型改变时,增加对应的form表单中的属性 |
| | | changeSectypeFormItems(row){ |
| | | console.log(row); |
| | | if(this.sectypeList.length==0){ |
| | | this.loadCodeSecType(); |
| | | } |
| | | if(row != null){ |
| | | this.form = {}; |
| | | this.form = Object.assign({},this.form,{ |
| | | oid: row.oid, |
| | | id: row.id, //编号, |
| | | name: row.name,//名称 |
| | | secType: row.secType,//码段类型 |
| | | description: row.description,//描述 |
| | | serialDependFlag: row.serialDependFlag=='true' ? true:false,//是否流水依赖 |
| | | serialDependOrder: row.serialDependOrder,//流水依赖顺序 |
| | | nullableFlag: row.nullableFlag=='true' ? true:false,//是否为空 |
| | | displayFlag: row.displayFlag=='true' ? true:false, |
| | | componentCodeFlag: row.componentCodeFlag=='true' ? true:false,//是否参与编码 |
| | | pkCodeRule: row.pkCodeRule, //所属编码规则 |
| | | } |
| | | ); |
| | | }else { |
| | | this.form = { |
| | | oid: this.form.oid, |
| | | id: this.form.id, //编号 |
| | | name: this.form.name, //名称 |
| | | secType: this.form.secType, //码段类型 |
| | | description: this.form.description, //描述 |
| | | serialDependFlag: this.form.serialDependFlag, //是否流水依赖 |
| | | serialDependOrder: this.form.serialDependOrder, //流水依赖顺序 |
| | | nullableFlag: this.form.nullableFlag, //是否为空 |
| | | displayFlag: this.form.displayFlag, // |
| | | componentCodeFlag: this.form.componentCodeFlag, //是否参与编码 |
| | | pkCodeRule: this.form.pkCodeRule, //所属编码规则 |
| | | }; |
| | | //console.log(this.form); |
| | | } |
| | | if(this.form.secType==='codefixedsec'){ |
| | | //固定码段 |
| | | this.form = Object.assign({}, this.form,{ |
| | | codeSecLength: row!=null&&row.codeSecLength != '' ? row.codeSecLength:'', |
| | | codeSecLengthType: row!=null&&row.codeSecLengthType != '' ? row.codeSecLengthType:'code_sec_length_variable' |
| | | }); |
| | | this.loadCodeSecLength(); |
| | | }else if(this.form.secType==='codeattrsec'){ |
| | | //属性码段 |
| | | this.form = Object.assign({}, this.form, { |
| | | referCodeClassifyOid: row!=null&&row.referCodeClassifyOid != '' ? row.referCodeClassifyOid:'', //属性id |
| | | referCodeClassifyOidName: row!=null&&row.referCodeClassifyOidName != '' ? row.referCodeClassifyOidName:'', //属性所在分类 |
| | | referAttributeId: row!=null&&row.referAttributeId != '' ? row.referAttributeId:'', //属性编号 |
| | | referAttributeName: row!=null&&row.referAttributeName != '' ? row.referAttributeName:'', //属性 |
| | | getValueClass: row!=null&&row.getValueClass != '' ? row.getValueClass:'' //取值规则 |
| | | }); |
| | | }else if(this.form.secType==='codeserialsec'){ |
| | | //流水码段 |
| | | this.form = Object.assign({}, this.form,{ |
| | | codeSecLength: row!=null&&row.codeSecLength != '' ? row.codeSecLength:'', //码段的长度 |
| | | serialStart: row!=null&&row.serialStart != '' ? row.serialStart:'1', //流水号起始值 |
| | | serialStep: row!=null&&row.serialStep != '' ? row.serialStep:'1', //流水的步长 |
| | | codeFillType: row!=null&&row.codeFillType != '' ? row.codeFillType:'code_fill_right', //编码补位方式 |
| | | codeFillSeparatorSelect: row!=null&&row.codeFillSeparatorSelect != '' ? row.codeFillSeparatorSelect:'0', //补位时的字符,选中的下拉框的下标 |
| | | codeFillSeparator: row!=null&&row.codeFillSeparator != '' ? row.codeFillSeparator:'0', //补位时的字符 |
| | | codeFillLength: row!=null&&row.codeFillLength != '' ? row.codeFillLength:'', //填充长度 |
| | | codeFillLimit: row!=null&&row.codeFillLimit != '' ? row.codeFillLimit:'', //流水上限 |
| | | codeFillFlag: row!=null&&row.codeFillFlag != '' ? row.codeFillFlag=='true' ? true:false :false, //流水是否补码 |
| | | customCodeSerialClass: row!=null&&row.customCodeSerialClass != '' ? row.customCodeSerialClass:'', //自定义流水算法 |
| | | }); |
| | | this.loadCodeFillType(); |
| | | this.loadCodeFillSeparator(); |
| | | }else if(this.form.secType==='codelevelsec'){ |
| | | //层级码段 |
| | | this.form = Object.assign({}, this.form,{ |
| | | codeLevelType: row!=null&&row.codeLevelType != '' ? row.codeLevelType:'code_level_min', //层级类型 枚举查询 |
| | | codeLevelValue: row!=null&&row.codeLevelValue != '' ? row.codeLevelValue:'', //层级的值 |
| | | valueCutType: row!=null&&row.valueCutType != '' ? row.valueCutType:'code_cut_none', //字符截取类型 枚举查询 |
| | | valueCutLength: row!=null&&row.valueCutLength != '' ? row.valueCutLength:'', // |
| | | codeGetValueType: row!=null&&row.codeGetValueType != '' ? row.codeGetValueType:'code_get_value_all_up', //取值类型 枚举查询 |
| | | }); |
| | | this.loadCodeLevelType(); |
| | | this.loadCodeCutType(); |
| | | this.loadCodeGetValueType(); |
| | | }else if(this.form.secType==='coderefersec'){ |
| | | //引用码段 |
| | | this.form = Object.assign({}, this.form,{ |
| | | referBtmId: row!=null&&row.referBtmId != '' ? row.referBtmId:'', //参照引用的业务类型,的id |
| | | referBtmName: row!=null&&row.referBtmName != '' ? row.referBtmName:'', //参照引用的业务类型 |
| | | referConfig: row!=null&&row.referConfig != '' ? row.referConfig:'', //参照配置 |
| | | }); |
| | | }else if(this.form.secType==='codedatesec'){ |
| | | //日期码段 |
| | | this.form = Object.assign({}, this.form,{ |
| | | codeDateFormatStr: row!=null&&row.codeDateFormatStr != '' ? row.codeDateFormatStr:'', //日期格式 |
| | | }); |
| | | }else if(this.form.secType==='codeclassifysec'){ |
| | | //分类码段 |
| | | this.form = Object.assign({}, this.form,{ |
| | | codeSecLengthType: row!=null&&row.codeSecLengthType != '' ? row.codeSecLengthType:'code_sec_length_variable', //码段长度类型 |
| | | codeSecLength: row!=null&&row.codeSecLength != '' ? row.codeSecLength:'', //码段的长度 |
| | | matchClassifyValueFlag: row!=null&&row.matchClassifyValueFlag != '' ? row.matchClassifyValueFlag=='true' ? true:false :false, //是否自动匹配值 |
| | | parentClassifySecOid: row!=null&&row.parentClassifySecOid != '' ? row.parentClassifySecOid:'', //父分类码段选中的id |
| | | parentClassifySecText: row!=null&&row.parentClassifySecText != '' ? row.parentClassifySecText:'', //父分类码段 |
| | | }); |
| | | this.loadCodeSecLength(); |
| | | }else if(this.form.secType==='codevariablesec'){ |
| | | //可变码段 |
| | | this.form = Object.assign({}, this.form,{ |
| | | codeSecLength: row!=null&&row.codeSecLength != '' ? row.codeSecLength:'', //码段的长度 |
| | | codeFillType: row!=null&&row.codeFillType != '' ? row.codeFillType:'code_fill_right', //编码部位方式,枚举查询 |
| | | codeFillSeparatorSelect: row!=null&&row.codeFillSeparatorSelect != '' ? row.codeFillSeparatorSelect:'0', //选中的补位时的字符的下标 |
| | | codeFillSeparator: row!=null&&row.codeFillSeparator != '' ? row.codeFillSeparator:'', //补位时的字符,可输可选查询 |
| | | }); |
| | | this.loadCodeFillType(); |
| | | this.loadCodeFillSeparator(); |
| | | } |
| | | //console.log(this.form); |
| | | }, |
| | | //枚举和可输可选内容查询 |
| | | loadCodeSecType(){ |
| | | getDictionary({code: "codeBasicSecType"}).then(res=>{ |
| | | this.sectypeList = res.data.data; |
| | | }) |
| | | this.loadCodeSecLength(); |
| | | //console.log(this.sectypeList); |
| | | }, |
| | | loadCodeSecLength(){ |
| | | getDictionary({code: "codeSecLength"}).then(res=>{ |
| | | this.codeSecLengthType = res.data.data; |
| | | }) |
| | | }, |
| | | loadCodeFillType(){ |
| | | getDictionary({code: "codeFillType"}).then(res=>{ |
| | | this.codeFillType = res.data.data; |
| | | }) |
| | | }, |
| | | loadCodeFillSeparator(){ |
| | | getDictionary({code: "codeFillSeparator"}).then(res=>{ |
| | | this.codeFillSeparator = res.data.data; |
| | | }) |
| | | }, |
| | | loadCodeLevelType(){ |
| | | getDictionary({code: "codeLevelType"}).then(res=>{ |
| | | this.codeLevelType = res.data.data; |
| | | }) |
| | | }, |
| | | loadCodeCutType(){ |
| | | getDictionary({code: "codeCutType"}).then(res=>{ |
| | | this.codeCutType = res.data.data; |
| | | }) |
| | | }, |
| | | loadCodeGetValueType(){ |
| | | getDictionary({code: "codeGetValueType"}).then(res=>{ |
| | | this.codeGetValueType = res.data.data; |
| | | //console.log(this.codeGetValueType); |
| | | }) |
| | | }, |
| | | |
| | | |
| | | } |
| | | }; |
| | | </script> |
| | | |
| | | <style> |
| | | |
| | | .el-divider--horizontal { |
| | | margin-top: 19px !important; |
| | | margin-bottom: -20px !important; |
| | | height: 2px; |
| | | margin: 0; |
| | | position: fixed; |
| | | width: 57.5vw; |
| | | } |
| | | |
| | | .el-card__body > .abox { |
| | |
| | | width:60px; |
| | | } |
| | | |
| | | .formula-editor{ |
| | | |
| | | .el-input-number { |
| | | width: 120px; |
| | | } |
| | | |
| | | .el-input-number >.el-input > .el-input__inner { |
| | | width:120px; |
| | | } |
| | | |
| | | .formula-editor{ |
| | | margin-top: -15px; |
| | | margin-left: 2vw; |
| | | /*设置弹性盒子*/ |
| | | display: flex; |
| | | /*子元素以竖列排列,一共有6列*/ |
| | | flex-direction:column; |
| | | width: 360px; |
| | | height: 285px; |
| | | /*左右均匀排列*/ |
| | | justify-content: space-around; |
| | | /*上下均匀排列*/ |
| | | align-items: center; |
| | | } |
| | | |
| | | .one{ |
| | | display: flex; |
| | | /*以行排列*/ |
| | | flex-direction: row; |
| | | width: 296px; |
| | | height: 60px; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | } |
| | | |
| | | .formula-editor-btn-sm { |
| | | width: 72px; |
| | | height: 45px; |
| | | background: rgb(153, 214, 240); |
| | | border-radius: 10%; |
| | | } |
| | | |
| | | .el-col>.el-card > .el-card__header { |
| | | background: rgb(213 231 239); |
| | | border-radius: inherit; |
| | | } |
| | | |
| | | /** 新增码段 */ |
| | | .total{ |
| | | height: 500px; |
| | | width: 100%; |
| | | } |
| | | |
| | | .total .el-input__inner,.total .el-textarea__inner { |
| | | width: 220px; |
| | | } |
| | | |
| | | .el-divider--vertical { |
| | | width: 2px; |
| | | height: 72vh; |
| | | margin: 0 5px; |
| | | position: fixed; |
| | | } |
| | | |
| | | .left { |
| | | float: left; |
| | | width: 49%; |
| | | } |
| | | .right { |
| | | float: right; |
| | | margin-right: 2.5vw; |
| | | /* width: 40%; */ |
| | | } |
| | | .right > .el-form > .el-form-item{ |
| | | margin-bottom: 8px; |
| | | } |
| | | |
| | | </style> |