| | |
| | | --> |
| | | <template> |
| | | <div class="aposcope-main"> |
| | | <div class="header"> |
| | | <div class="header" v-if="$route.query.type == 1"> |
| | | <div class="title">è®¡åæ¾ç¤ºè®¾ç½®</div> |
| | | <div class="type"> |
| | | <div class="item last" @click="openPlan">æ°å»ºè®¡åç±»åæ¨¡ç</div> |
| | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick"> |
| | | <el-tabs v-model="activeName" class="demo-tabs" @tab-change="handleClick"> |
| | | <el-tab-pane label="æ°å»ºé¡µè®¾ç½®" name="first"> |
| | | <div> |
| | | <div class="add-field">+ æ·»å åæ®µ</div> |
| | | <div class="add-field" @click="openSelect">+ æ·»å åæ®µ</div> |
| | | <div class="field-title">åºç¡å段</div> |
| | | <el-table ref="multipleTableRef" :data="tableData0" border style="width: 100%" class="multipleTableRef"> |
| | | <el-table-column prop="fieldName" label="åæ®µå"></el-table-column> |
| | | <el-table-column prop="fieldDescription" label="æç¤ºæå"></el-table-column> |
| | | <el-table-column prop="defaultValue" label="é»è®¤å¼"></el-table-column> |
| | | <el-table-column prop="mustField" label="æ¯å¦å¿
å¡«"></el-table-column> |
| | | <el-table-column prop="mustField" label="æ¯å¦å¿
å¡«"> |
| | | <template #default="scope"> |
| | | <span>{{scope.row.mustField == '1'?"æ¯": "å¦"}}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column fixed="right" label="æä½"> |
| | | <template #default="scope"> |
| | | <el-button text type="primary" :disabled="scope.row.systemFieldLabel == 'æ¯'?true: false" size="small" @click="table_del(scope.row, scope.$index)">å é¤</el-button> |
| | | <el-button text type="primary" :disabled="scope.row.mustField == '1'?true: false" size="small" @click="table_del(scope.row, scope.$index)">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <div class="field-title">æ©å±å段</div> |
| | | <el-table ref="multipleTableRef" :data="tableData0extend" border style="width: 100%" class="multipleTableRef"> |
| | | <el-table-column prop="fieldName" label="åæ®µå"></el-table-column> |
| | | <el-table-column prop="fieldDescription" label="æç¤ºæå"></el-table-column> |
| | | <el-table-column prop="defaultValue" label="é»è®¤å¼"></el-table-column> |
| | | <el-table-column prop="mustField" label="æ¯å¦å¿
å¡«"> |
| | | <template #default="scope"> |
| | | <span>{{scope.row.mustField == '1'?"æ¯": "å¦"}}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column fixed="right" label="æä½"> |
| | | <template #default="scope"> |
| | | <el-button text type="primary" :disabled="scope.row.mustField == '1'?true: false" size="small" @click="table_del(scope.row, scope.$index)">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="ç¼è¾é¡µè®¾ç½®" name="second"> |
| | | <div class="add-field">+ æ·»å åæ®µ</div> |
| | | <div class="add-field" @click="openSelect">+ æ·»å åæ®µ</div> |
| | | <div class="field-title">åºç¡å段</div> |
| | | <el-table ref="multipleTableRef" :data="tableData1" border style="width: 100%" class="multipleTableRef"> |
| | | <el-table-column prop="fieldName" label="åæ®µå"></el-table-column> |
| | | <el-table-column prop="fieldDescription" label="æ¯æç¼è¾"></el-table-column> |
| | | <el-table-column label="æ¯æç¼è¾" prop="supportUpdateLabel"></el-table-column> |
| | | <el-table-column fixed="right" label="æä½"> |
| | | <template #default="scope"> |
| | | <el-button text type="primary" :disabled="scope.row.systemFieldLabel == 'æ¯'?true: false" size="small" @click="table_del(scope.row, scope.$index)">å é¤</el-button> |
| | | <el-button text type="primary" :disabled="scope.row.mustField == '1'?true: false" size="small" @click="table_del(scope.row, scope.$index)">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <div class="field-title">æ©å±å段</div> |
| | | <el-table ref="multipleTableRef" :data="tableData1extend" border style="width: 100%" class="multipleTableRef"> |
| | | <el-table-column prop="fieldName" label="åæ®µå"></el-table-column> |
| | | <el-table-column prop="supportUpdateLabel" label="æ¯æç¼è¾"></el-table-column> |
| | | <el-table-column fixed="right" label="æä½"> |
| | | <template #default="scope"> |
| | | <el-button text type="primary" :disabled="scope.row.mustField == '1'?true: false" size="small" @click="table_del(scope.row, scope.$index)">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="æ¥ç页设置" name="third"> |
| | | <div class="add-field" @click="openSelect">+ æ·»å åæ®µ</div> |
| | | <div class="field-title">åºç¡å段</div> |
| | | <el-table ref="multipleTableRef" :data="tableData2" border style="width: 100%" class="multipleTableRef"> |
| | | <el-table-column prop="fieldName" label="åæ®µå"></el-table-column> |
| | | <el-table-column fixed="right" label="æä½"> |
| | | <template #default="scope"> |
| | | <el-button text type="primary" :disabled="scope.row.systemFieldLabel == 'æ¯'?true: false" size="small" @click="table_del(scope.row, scope.$index)">å é¤</el-button> |
| | | <el-button text type="primary" :disabled="scope.row.sysFieldMust == '1'?true: false" size="small" @click="table_del(scope.row, scope.$index)">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <div class="field-title">æ©å±å段</div> |
| | | <el-table ref="multipleTableRef" :data="tableData2extend" border style="width: 100%" class="multipleTableRef"> |
| | | <el-table-column prop="fieldName" label="åæ®µå"></el-table-column> |
| | | <el-table-column fixed="right" label="æä½"> |
| | | <template #default="scope"> |
| | | <el-button text type="primary" :disabled="scope.row.sysFieldMust == '1'?true: false" size="small" @click="table_del(scope.row, scope.$index)">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-tab-pane> |
| | | </el-tabs> |
| | | </div> |
| | | <!-- æ°å»ºè®¡å --> |
| | | <save-dialog v-if="dialog.save" ref="saveDialog" @success="addPlanSuccess" @closed="dialog.save=false"></save-dialog> |
| | | <!-- æ·»å åæ®µ --> |
| | | <save-select-dialog v-if="dialog.saveSelect" ref="saveSelectDialog" @success="addSelectSuccess" @closed="dialog.saveSelect=false" @addExtend="addExtend"></save-select-dialog> |
| | | <!-- æ·»å æ©å±å段 --> |
| | | <save-extend-dialog v-if="dialog.extendSave" ref="saveExtendDialog" @success="addExtendSuccess" @closed="dialog.save=false"></save-extend-dialog> |
| | | </template> |
| | | <script> |
| | | import saveDialog from './addPlan' |
| | | import saveSelectDialog from './saveSelectDialog' |
| | | import saveExtendDialog from './addField' |
| | | export default { |
| | | name: "custom", |
| | | data(){ |
| | | return { |
| | | id: "", |
| | | dialog: { |
| | | save: false |
| | | save: false, //æ°å¢æ¨¡ç |
| | | saveSelect: false, //æ·»å åæ®µ |
| | | extendSave: false //æ·»å æ©å±å段 |
| | | }, |
| | | planData: [], |
| | | activeName: "first", |
| | | configType: 1, |
| | | tableData0: [], |
| | | tableData1: [], |
| | | tableData2: [] |
| | | tableData2: [], |
| | | tableData0extend: [], |
| | | tableData1extend: [] |
| | | } |
| | | }, |
| | | created(){ |
| | |
| | | this.gitProduct(); |
| | | }, |
| | | components: { |
| | | saveDialog |
| | | saveDialog,saveSelectDialog,saveExtendDialog |
| | | }, |
| | | methods: { |
| | | gitProduct() { |
| | |
| | | this.getTableList(); |
| | | }, |
| | | getTableList() { |
| | | this.$HTTP.get(`/api/blade-system/custom-template-field/listField?configType=1&templateId=${this.id}`).then(res=> { |
| | | this.$HTTP.get(`/api/blade-system/custom-template-field/listField?configType=${this.configType}&templateId=${this.id}`).then(res=> { |
| | | if(res.code == 200) { |
| | | this.tableData0 = res.data.systemFieldList; |
| | | if(this.activeName == "first") { |
| | | this.tableData0 = res.data.systemFieldList; |
| | | this.tableData0extend = res.data.customFieldList || []; |
| | | }else if(this.activeName == "second") { |
| | | this.tableData1 = res.data.systemFieldList; |
| | | this.tableData1extend = res.data.customFieldList || []; |
| | | }else if(this.activeName == "third") { |
| | | this.tableData2 = res.data.systemFieldList; |
| | | this.tableData2extend = res.data.customFieldList || []; |
| | | } |
| | | |
| | | } |
| | | }) |
| | | }, |
| | |
| | | this.$refs.saveDialog.open(this.productList,this.planData) |
| | | }) |
| | | }, |
| | | openSelect() { |
| | | this.dialog.saveSelect = true |
| | | this.$HTTP.get(`/api/blade-system/custom-template-field/getSelectBox?configType=${this.configType}&templateId=${this.id}`).then(res=> { |
| | | if(res.code == 200) { |
| | | this.$refs.saveSelectDialog.open(res.data,this.id,this.configType); |
| | | } |
| | | }) |
| | | }, |
| | | addPlanSuccess() { |
| | | this.getBaseData(); |
| | | }, |
| | | table_del(row,index) { |
| | | |
| | | addSelectSuccess() { |
| | | this.getTableList(); |
| | | }, |
| | | handleClick(text) { |
| | | |
| | | addExtendSuccess() { |
| | | this.getTableList(); |
| | | }, |
| | | addExtend() { |
| | | this.dialog.extendSave = true |
| | | this.$nextTick(() => { |
| | | this.$refs.saveExtendDialog.open(); |
| | | }) |
| | | }, |
| | | table_del(row,index) { |
| | | this.$HTTP.delete(`/api/blade-system/custom-template-field-relation/remove`,[row.id]).then(res=> { |
| | | if(res.code == 200) { |
| | | this.$message.success("æä½æå"); |
| | | this.getTableList(); |
| | | } |
| | | }) |
| | | }, |
| | | handleClick(TabPaneName) { |
| | | if(TabPaneName == "first") { |
| | | this.configType = 1; |
| | | }else if(TabPaneName == "second") { |
| | | this.configType = 2; |
| | | }else if(TabPaneName == "third") { |
| | | this.configType = 3; |
| | | } |
| | | this.getTableList(); |
| | | } |
| | | } |
| | | } |