¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <el-dialog |
| | | :close-on-click-modal="false" |
| | | :visible.sync="cloneOtherCodeRuleSettingBox" |
| | | append-to-body |
| | | class="avue-dialog avue-dialog--top" |
| | | style="height: 100vh" |
| | | @close="closeCloneOtherBasicSecDialog" |
| | | title="å
éç¼ç è§åçåºç¡ä¿¡æ¯" |
| | | top="-3%" |
| | | width="800px"> |
| | | <div> |
| | | <el-row> |
| | | <p |
| | | style="margin-top: -20px; |
| | | margin-bottom: 4px; |
| | | font-weight: 570; |
| | | font-size: 19px; |
| | | color: #0e2d5f;"> |
| | | ç¼ç è§å |
| | | </p> |
| | | <avue-crud |
| | | ref="crudCloneCodeRuleOther" |
| | | :data="codeRuleData" |
| | | :option="cloneCodeRuleOption" |
| | | :page.sync="codeRulePage" |
| | | :table-loading="codeRuleloading" |
| | | class="other-clone-coderule-crud" |
| | | @row-click="codeOtherCloneRuleRowClick" |
| | | @selection-change="selectionOtherCloneCodeRuleChange" |
| | | @search-change="searchOtherCloneChange" |
| | | @search-reset="searchOtherCloneReset" |
| | | @on-load="onLoad"> |
| | | <template #radio="{row}"> |
| | | <el-radio v-model="selectOtherCodeRuleRowIndex" |
| | | :label="row.$index"> </el-radio> |
| | | </template> |
| | | </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 |
| | | ref="crudCloneCodeBasicOther" |
| | | :data="cloneBasicData" |
| | | :option="cloneBasicOption" |
| | | :table-loading="codeBasicloading" |
| | | class="other-clone-codebasic-crud" |
| | | @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" :loading="cloneSaveLoding">ä¿ å</el-button> |
| | | <el-button @click="cloneOtherCodeRuleSettingBox = false">å æ¶</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | </template> |
| | | |
| | | <script> |
| | | import cloneBasicOption from "@/const/code/cloneBasicDialogOption"; |
| | | import cloneCodeRuleOption from "@/const/code/cloneCodeRuleDialogOption"; |
| | | import {gridCodeRule} from "@/api/code/mdmrule"; |
| | | import {gridCodeBasicSec,cloneCodeBasic} from "@/api/code/codebasic"; |
| | | export default { |
| | | name: "cloneRuleDialog", |
| | | props: { |
| | | // å¯¹è¯æ¡æ¾ç¤ºéèæ§å¶ |
| | | visible: { |
| | | type: "Boolean", |
| | | default: false, |
| | | }, |
| | | // 被å
éçè§åoid |
| | | quiltCloneCodeRule:{ |
| | | type: "Object", |
| | | } |
| | | }, |
| | | data() { |
| | | return { |
| | | cloneOtherCodeRuleSettingBox: this.visible, |
| | | /*å
éç¼ç è§åå¯¹è¯æ¡æ§å¶åé*/ |
| | | cloneBasicOption: cloneBasicOption, |
| | | cloneCodeRuleOption: cloneCodeRuleOption, |
| | | selectionOtherCloneCodeBasicList: [], // æ¤çé¢å
å½åéä¸çåºç¡ç 段 |
| | | selectionOtherCloneCodeRuleList: {}, // æ¤çé¢å
å½åéä¸çç¼ç è§å |
| | | selectOtherCodeRuleRowIndex: '', |
| | | cloneOtherQuery: {}, // æ¥è¯¢æ¡ä»¶å¯¹è±¡ |
| | | codeRulePage: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 0, |
| | | }, |
| | | codeRuleloading: false, |
| | | codeRuleData: [], |
| | | codeBasicloading: false, |
| | | cloneBasicData: [], |
| | | cloneSaveLoding: false, |
| | | }; |
| | | }, |
| | | watch: { |
| | | // çå¬ç¶ç»ä»¶ä¼ ççªå£æ¾ç¤ºéèçå¼ï¼ä»¥åå¼çåå¡« |
| | | visible() { |
| | | //console.log(this.visible); |
| | | if(this.visible){ |
| | | //console.log(this.quiltCloneCodeRule); |
| | | let conditionMap = {}; |
| | | conditionMap["conditionMap[oid_notequal]"] = this.quiltCloneCodeRule.oid.trim(); |
| | | this.cloneOtherQuery = conditionMap; |
| | | this.onLoad(this.codeRulePage); |
| | | }else{ |
| | | this.codeRuleData = []; |
| | | this.cloneBasicData = []; |
| | | } |
| | | this.cloneOtherCodeRuleSettingBox = this.visible; |
| | | }, |
| | | selectionOtherCloneCodeRuleList(){ |
| | | this.loadBasic(this.selectionOtherCloneCodeRuleList); |
| | | }, |
| | | }, |
| | | methods: { |
| | | |
| | | //å
³éçªå£æ¶è§¦å |
| | | closeCloneOtherBasicSecDialog(){ |
| | | this.$emit('update:visible',false); |
| | | }, |
| | | /** ä»å
¶ä»ç¼ç è§åä¸å
éç æ®µå¯¹è¯æ¡-åå»ç¼ç è§åå®ç°è¡éæ©*/ |
| | | codeOtherCloneRuleRowClick(row) { |
| | | this.selectOtherCodeRuleRowIndex = row.$index |
| | | this.selectionOtherCloneCodeRuleList = row; |
| | | this.loadBasic(row); |
| | | }, |
| | | /** ä»å
¶ä»ç¼ç è§åä¸å
éç æ®µå¯¹è¯æ¡-åå»åºç¡ç 段å®ç°è¡éæ©*/ |
| | | codeOtherCloneBasicRowClick(row) { |
| | | this.$refs.crudCloneCodeBasicOther.toggleSelection(); |
| | | this.selectionOtherCloneCodeBasicList = row; |
| | | this.$refs.crudCloneCodeBasicOther.setCurrentRow(row); |
| | | this.$refs.crudCloneCodeBasicOther.toggleRowSelection(row); //éä¸å½åè¡ |
| | | }, |
| | | selectionOtherCloneCodeBasicChange(list) { |
| | | this.selectionOtherCloneCodeBasicList = list; |
| | | this.$refs.crudCloneCodeBasicOther.setCurrentRow( |
| | | this.selectionOtherCloneCodeBasicList.slice(-1)[0] |
| | | ); |
| | | }, |
| | | /** ä»å
¶ä»è§åå
éç æ®µçé¢éç½®æç´¢åè½ */ |
| | | searchOtherCloneReset() { |
| | | let conditionMap = {}; |
| | | conditionMap["conditionMap[oid_notequal]"] = this.quiltCloneCodeRule.oid.trim(); |
| | | this.cloneOtherQuery = conditionMap; |
| | | this.onLoad(this.codeRulePage); |
| | | }, |
| | | /** ä»å
¶ä»è§åå
éç æ®µçé¢æç´¢åè½*/ |
| | | searchOtherCloneChange(params, done) { |
| | | this.codeRulePage.currentPage = 1; |
| | | // å¤ä¸ªconditionMapè¿æ ·ä¼ åï¼å¿«éæ¥è¯¢é»è®¤éç¨æ¨¡ç³æ¥è¯¢ |
| | | if (params) { |
| | | Object.keys(params).forEach((key) => { |
| | | this.cloneOtherQuery["conditionMap" + "[" + key + "_like]"] = |
| | | params[key].trim(); |
| | | }); |
| | | } |
| | | this.onLoad(this.codeRulePage,this.cloneOtherQuery); |
| | | done(); |
| | | }, |
| | | /** ä¿åä»å
¶ä»ç¼ç è§åä¸å
éç æ®µä¿¡æ¯*/ |
| | | async saveOtherCodeBasic() { |
| | | this.cloneSaveLoding = true; |
| | | let oid = this.quiltCloneCodeRule.oid; |
| | | let fromDialogPkCodebasic = this.selectionOtherCloneCodeBasicList; |
| | | if (fromDialogPkCodebasic.length <= 0) { |
| | | this.$message.warning("è¯·éæ©ç æ®µæ°æ®!"); |
| | | return; |
| | | } |
| | | let oidArr = []; |
| | | fromDialogPkCodebasic.forEach((ele) => { |
| | | oidArr.push(ele.oid); |
| | | }); |
| | | let data = { |
| | | pkCodeRule: oid, |
| | | oidArr: oidArr.join(","), |
| | | }; |
| | | //console.log(data); |
| | | await cloneCodeBasic(data).then( () => { |
| | | this.cloneOtherCodeRuleSettingBox = false; |
| | | this.$message({ |
| | | type: "success", |
| | | message: "æä½æå!", |
| | | }); |
| | | // è°ç¨ç¶ç»ä»¶æ¹æ³éæ°å è½½ç æ®µè¡¨ |
| | | this.$emit('refreshRuleTable',{"currentPage":1,"pageSize":10}); |
| | | },(error) => { |
| | | window.console.log(error); |
| | | }); |
| | | this.cloneSaveLoding = false; |
| | | }, |
| | | /** ç¹å»è§¦åå è½½åºç¡ç 段信æ¯*/ |
| | | loadBasic(row) { |
| | | this.codeBasicloading = true; |
| | | // console.log(row) |
| | | if (row != "" && row != null && row !="undefined") { |
| | | let conditionMap = {}; |
| | | conditionMap["conditionMap[pkCodeRule]"] = row.oid.trim(); |
| | | gridCodeBasicSec(1, -1, conditionMap).then((res) => { |
| | | const data = res.data.data; |
| | | this.cloneBasicData = data.records; |
| | | this.codeBasicloading = false; |
| | | }); |
| | | }else { |
| | | this.cloneBasicData = []; |
| | | this.codeBasicloading = false; |
| | | } |
| | | }, |
| | | // è§åè¡¨æ ¼ç¸å
³æ¹æ³ |
| | | onLoad(page, params = {}) { |
| | | this.codeRuleloading = true; |
| | | gridCodeRule(page.currentPage, page.pageSize, Object.assign({},this.cloneOtherQuery, params)).then((res) => { |
| | | // console.log(res.data); |
| | | const data = res.data.data; |
| | | this.codeRulePage.total = data.total; |
| | | this.codeRuleData = data.records; |
| | | this.codeRuleloading = false; |
| | | if(this.codeRuleData.length > 0) { |
| | | this.$nextTick(() => { |
| | | this.selectOtherCodeRuleRowIndex = this.codeRuleData[0].$index |
| | | this.selectionOtherCloneCodeRuleList = this.codeRuleData[0]; |
| | | }); |
| | | }else{ |
| | | this.cloneBasicData = []; |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | } |
| | | }; |
| | | </script> |
| | | |
| | | <style> |
| | | </style> |