| | |
| | | |
| | | handleOrderExe(record) { |
| | | this.$refs.DailyMaintenanceOrderExeDrawer.visible = true |
| | | this.$refs.DailyMaintenanceOrderExeDrawer.title = 'æ¥å¸¸ä¿å
»å·¥åæ§è¡' |
| | | this.$refs.DailyMaintenanceOrderExeDrawer.title = 'ä¸çº§ä¿å
»å·¥åæ§è¡' |
| | | this.$refs.DailyMaintenanceOrderExeDrawer.handleShow(record) |
| | | if (record.status === '3') { |
| | | this.$refs.DailyMaintenanceOrderExeDrawer.buttonDistable = true//ä¿åãæåãæ¥å·¥ |
| | |
| | | align: "center", |
| | | dataIndex: 'statusName' |
| | | }, |
| | | { |
| | | title: 'ç¹æ£æ¥æ', |
| | | align: "center", |
| | | dataIndex: 'inspectionDate', |
| | | customRender: function (text) { |
| | | return !text ? "" : (text.length > 10 ? text.substr(0, 10) : text) |
| | | } |
| | | }, |
| | | // { |
| | | // title: 'ç¹æ£æ¥æ', |
| | | // align: "center", |
| | | // dataIndex: 'inspectionDate', |
| | | // customRender: function (text) { |
| | | // return !text ? "" : (text.length > 10 ? text.substr(0, 10) : text) |
| | | // } |
| | | // }, |
| | | { |
| | | title: 'ç¹æ£æ¶é´', |
| | | align: "center", |
| | | dataIndex: 'inspectionTime', |
| | | customRender: function (text) { |
| | | return !text ? "" : (text.length > 10 ? text.substr(11, 20) : text) |
| | | } |
| | | // customRender: function (text) { |
| | | // return !text ? "" : (text.length > 10 ? text.substr(11, 20) : text) |
| | | // } |
| | | }, |
| | | { |
| | | title: 'æªæ¢æ¶é´', |
| | |
| | | align: "center", |
| | | dataIndex: 'teamName' |
| | | }, |
| | | { |
| | | title: 'å¼å·¥æ¡ä»¶', |
| | | align: "center", |
| | | dataIndex: 'startWorkCondition', |
| | | customRender: (text) => { |
| | | if (text == '1') { |
| | | return "æ¯"; |
| | | } else if (text == '0') { |
| | | return "å¦"; |
| | | } |
| | | }, |
| | | }, |
| | | // { |
| | | // title: 'å¼å·¥æ¡ä»¶', |
| | | // align: "center", |
| | | // dataIndex: 'startWorkCondition', |
| | | // customRender: (text) => { |
| | | // if (text == '1') { |
| | | // return "æ¯"; |
| | | // } else if (text == '0') { |
| | | // return "å¦"; |
| | | // } |
| | | // }, |
| | | // }, |
| | | { |
| | | title: 'ç¹æ£æ åç¼ç ', |
| | | align: "center", |
| | |
| | | |
| | | handleOrderExe(record) { |
| | | this.$refs.DailyMaintenanceOrderExeDrawer.visible = true |
| | | this.$refs.DailyMaintenanceOrderExeDrawer.title = 'æ¥å¸¸ä¿å
»å·¥åæ§è¡' |
| | | this.$refs.DailyMaintenanceOrderExeDrawer.title = 'äºçº§ä¿å
»å·¥åæ§è¡' |
| | | this.$refs.DailyMaintenanceOrderExeDrawer.handleShow(record) |
| | | if (record.status === '3') { |
| | | this.$refs.DailyMaintenanceOrderExeDrawer.buttonDistable = true//ä¿åãæåãæ¥å·¥ |
| | |
| | | }, |
| | | }, |
| | | { |
| | | title: 'çæ¬', |
| | | align: 'center', |
| | | dataIndex: 'version', |
| | | }, |
| | | { |
| | | title: 'çæ¬ç¶æ', |
| | | align: 'center', |
| | | dataIndex: 'versionStatusName', |
| | | }, |
| | | { |
| | | title: '卿ç¼ç ', |
| | | align: 'center', |
| | | dataIndex: 'code', |
| | |
| | | dataIndex: 'unitName', |
| | | }, |
| | | { |
| | | title: 'è°æ´æ¹å¼', |
| | | title: 'çæ¬', |
| | | align: 'center', |
| | | dataIndex: 'arrangeWayName', |
| | | dataIndex: 'version', |
| | | }, |
| | | { |
| | | title: 'å¼å·¥æ¡ä»¶', |
| | | title: 'çæ¬ç¶æ', |
| | | align: 'center', |
| | | dataIndex: 'startConditionName', |
| | | dataIndex: 'versionStatusName', |
| | | }, |
| | | { |
| | | title: '龿å¤çæ¹å¼', |
| | | align: 'center', |
| | | dataIndex: 'overdueDisposeModeName', |
| | | }, |
| | | { |
| | | title: '便®æ¥å', |
| | | align: 'center', |
| | | dataIndex: 'accordingCalendarName', |
| | | }, |
| | | { |
| | | title: 'çææ¶é´', |
| | | align: 'center', |
| | | dataIndex: 'takeEffectTime', |
| | | }, |
| | | { |
| | | title: 'å¤±ææ¶é´', |
| | | align: 'center', |
| | | dataIndex: 'loseEfficacyTime', |
| | | }, |
| | | // { |
| | | // title: 'è°æ´æ¹å¼', |
| | | // align: 'center', |
| | | // dataIndex: 'arrangeWayName', |
| | | // }, |
| | | // { |
| | | // title: 'å¼å·¥æ¡ä»¶', |
| | | // align: 'center', |
| | | // dataIndex: 'startConditionName', |
| | | // }, |
| | | // { |
| | | // title: '龿å¤çæ¹å¼', |
| | | // align: 'center', |
| | | // dataIndex: 'overdueDisposeModeName', |
| | | // }, |
| | | // { |
| | | // title: '便®æ¥å', |
| | | // align: 'center', |
| | | // dataIndex: 'accordingCalendarName', |
| | | // }, |
| | | // { |
| | | // title: 'çææ¶é´', |
| | | // align: 'center', |
| | | // dataIndex: 'takeEffectTime', |
| | | // }, |
| | | // { |
| | | // title: 'å¤±ææ¶é´', |
| | | // align: 'center', |
| | | // dataIndex: 'loseEfficacyTime', |
| | | // }, |
| | | { |
| | | title: 'å建人', |
| | | align: 'center', |
| | |
| | | return parseInt(index) + 1 |
| | | }, |
| | | }, |
| | | { |
| | | title: 'çæ¬', |
| | | align: 'center', |
| | | dataIndex: 'version', |
| | | }, |
| | | { |
| | | title: 'çæ¬ç¶æ', |
| | | align: 'center', |
| | | dataIndex: 'versionStatusName', |
| | | }, |
| | | |
| | | { |
| | | title: '卿ç¼ç ', |
| | | align: 'center', |
| | |
| | | align: 'center', |
| | | dataIndex: 'unitName', |
| | | }, |
| | | // { |
| | | // title: 'è°æ´æ¹å¼', |
| | | // align: 'center', |
| | | // dataIndex: 'arrangeWayName', |
| | | // }, |
| | | // { |
| | | // title: '龿å¤çæ¹å¼', |
| | | // align: 'center', |
| | | // dataIndex: 'overdueDisposeModeName', |
| | | // }, |
| | | // { |
| | | // title: '便®æ¥å', |
| | | // align: 'center', |
| | | // dataIndex: 'accordingCalendarName', |
| | | // }, |
| | | // { |
| | | // title: 'çææ¶é´', |
| | | // align: 'center', |
| | | // dataIndex: 'takeEffectTime', |
| | | // }, |
| | | // { |
| | | // title: 'å¤±ææ¶é´', |
| | | // align: 'center', |
| | | // dataIndex: 'loseEfficacyTime', |
| | | // }, |
| | | { |
| | | title: 'è°æ´æ¹å¼', |
| | | title: 'çæ¬', |
| | | align: 'center', |
| | | dataIndex: 'arrangeWayName', |
| | | dataIndex: 'version', |
| | | }, |
| | | { |
| | | title: '龿å¤çæ¹å¼', |
| | | title: 'çæ¬ç¶æ', |
| | | align: 'center', |
| | | dataIndex: 'overdueDisposeModeName', |
| | | }, |
| | | { |
| | | title: '便®æ¥å', |
| | | align: 'center', |
| | | dataIndex: 'accordingCalendarName', |
| | | }, |
| | | { |
| | | title: 'çææ¶é´', |
| | | align: 'center', |
| | | dataIndex: 'takeEffectTime', |
| | | }, |
| | | { |
| | | title: 'å¤±ææ¶é´', |
| | | align: 'center', |
| | | dataIndex: 'loseEfficacyTime', |
| | | dataIndex: 'versionStatusName', |
| | | }, |
| | | { |
| | | title: 'å建人', |
| | |
| | | }, |
| | | data() { |
| | | return { |
| | | title: "æ¥å¸¸ä¿å
»å·¥åæ§è¡", |
| | | title: "ä¸çº§ä¿å
»å·¥åæ§è¡", |
| | | visible: false, |
| | | maskClosable: true, |
| | | confirmLoading: false, |
| | |
| | | // align: 'center', |
| | | // dataIndex: 'maintenanceTool', |
| | | // }, |
| | | { |
| | | title: 'å®å
¨è¦æ±', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceRequire', |
| | | }, |
| | | { |
| | | title: 'å·¥æ¶å®é¢ï¼å°æ¶ï¼', |
| | | align: 'center', |
| | | dataIndex: 'workingHourQuota', |
| | | }, |
| | | // { |
| | | // title: 'å®å
¨è¦æ±', |
| | | // align: 'center', |
| | | // dataIndex: 'maintenanceRequire', |
| | | // }, |
| | | // { |
| | | // title: 'å·¥æ¶å®é¢ï¼å°æ¶ï¼', |
| | | // align: 'center', |
| | | // dataIndex: 'workingHourQuota', |
| | | // }, |
| | | { |
| | | title: 'ä¿å
»å¨æ', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceCycleName', |
| | | }, |
| | | { |
| | | title: 'ç»´ä¿ä¸ä¸', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceSpecialtyName', |
| | | }, |
| | | // { |
| | | // title: 'ç»´ä¿ä¸ä¸', |
| | | // align: 'center', |
| | | // dataIndex: 'maintenanceSpecialtyName', |
| | | // }, |
| | | { |
| | | title: 'ä¿å
»äºº', |
| | | align: 'center', |
| | |
| | | rowKey='id' |
| | | :columns="columns" |
| | | :dataSource="dataSource" |
| | | :pagination="false" |
| | | > |
| | | <template |
| | | v-for="col in columns" |
| | |
| | | :pagination="ipagination" |
| | | :loading="loading" |
| | | @change="handleTableChange" |
| | | :scroll="{ x: 'calc(1200px + 50%)', y: 900 }" |
| | | :scroll="{ x: 'calc(1000px + 50%)', y: 900 }" |
| | | > |
| | | <template |
| | | v-for="col in columns" |
| | |
| | | <!-- :options="record.inspectionCycles" --> |
| | | <a-select-option value="1">æ£å¸¸</a-select-option> |
| | | <a-select-option value="2">å¼å¸¸</a-select-option> |
| | | <a-select-option value="3">æ
éåæº</a-select-option> |
| | | <a-select-option value="4">æ²¡å¼æº</a-select-option> |
| | | </a-select> |
| | | <a-input-number |
| | | :value="text" |
| | |
| | | align: 'center', |
| | | dataIndex: 'detectionStandard', |
| | | }, |
| | | { |
| | | title: 'åæ ¼èå´', |
| | | align: 'center', |
| | | dataIndex: 'acceptabilityLimit', |
| | | }, |
| | | { |
| | | title: 'æ¹æ³', |
| | | align: 'center', |
| | | dataIndex: 'inspectionMethod_dictText', |
| | | }, |
| | | { |
| | | title: 'å·¥å
·', |
| | | align: 'center', |
| | | dataIndex: 'inspectionTool', |
| | | }, |
| | | // { |
| | | // title: 'åæ ¼èå´', |
| | | // align: 'center', |
| | | // dataIndex: 'acceptabilityLimit', |
| | | // }, |
| | | // { |
| | | // title: 'æ¹æ³', |
| | | // align: 'center', |
| | | // dataIndex: 'inspectionMethod_dictText', |
| | | // }, |
| | | // { |
| | | // title: 'å·¥å
·', |
| | | // align: 'center', |
| | | // dataIndex: 'inspectionTool', |
| | | // }, |
| | | { |
| | | title: '*ç¹æ£ç»æ', |
| | | align: 'center', |
| | | dataIndex: 'inspectionProjectResult', |
| | | scopedSlots: { customRender: 'inspectionProjectResult' }, |
| | | className: 'red', |
| | | }, |
| | | // className: 'red', |
| | | { |
| | | title: 'å¤å®', |
| | | align: 'center', |
| | |
| | | title: '*å¼å¸¸å¤ç½®', |
| | | align: 'center', |
| | | dataIndex: 'treatmentMeasure', |
| | | className: 'red', |
| | | scopedSlots: { customRender: 'treatmentMeasure' }, |
| | | }, |
| | | // className: 'red', |
| | | ], |
| | | url: { |
| | | list: "/eam/inspectionOrderDetail/list", |
| | |
| | | /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :span="12"> |
| | | <!-- <a-col :span="12"> |
| | | <a-form-item |
| | | label="å¼å·¥æ¡ä»¶" |
| | | :labelCol="labelCol" |
| | |
| | | @change="handle2Switch(model.startWorkCondition)" |
| | | /> |
| | | </a-form-item> |
| | | </a-col> |
| | | </a-col> --> |
| | | </a-row> |
| | | <a-row :gutter="24"> |
| | | <a-col :span="12"> |
| | |
| | | { |
| | | title: 'ç¹æ£é¡¹ç®', |
| | | align: 'center', |
| | | dataIndex: 'inspectionProjectNum' |
| | | dataIndex: 'inspectionProjectName' |
| | | }, |
| | | { |
| | | title: 'æ£æµæ å', |
| | | align: 'center', |
| | | dataIndex: 'detectionStandard' |
| | | }, |
| | | { |
| | | title: 'åæ ¼èå´', |
| | | align: 'center', |
| | | dataIndex: 'acceptabilityLimit' |
| | | }, |
| | | { |
| | | title: 'æ¹æ³', |
| | | align: 'center', |
| | | dataIndex: 'inspectionMethodName' |
| | | }, |
| | | { |
| | | title: 'å·¥å
·', |
| | | align: 'center', |
| | | dataIndex: 'inspectionTool' |
| | | }, |
| | | // { |
| | | // title: 'åæ ¼èå´', |
| | | // align: 'center', |
| | | // dataIndex: 'acceptabilityLimit' |
| | | // }, |
| | | // { |
| | | // title: 'æ¹æ³', |
| | | // align: 'center', |
| | | // dataIndex: 'inspectionMethodName' |
| | | // }, |
| | | // { |
| | | // title: 'å·¥å
·', |
| | | // align: 'center', |
| | | // dataIndex: 'inspectionTool' |
| | | // }, |
| | | { |
| | | title: '示æå¾', |
| | | align: "center", |
| | |
| | | |
| | | methods: { |
| | | add() { |
| | | this.edit({ startWorkCondition: "1", inspectionOrderDetails: [] }) |
| | | this.edit({ inspectionOrderDetails: [] }) |
| | | // this.edit({ startWorkCondition: "1", inspectionOrderDetails: [] }) |
| | | this.getSeq() |
| | | }, |
| | | |
| | |
| | | // } |
| | | // }, |
| | | |
| | | handle2Switch(startWorkCondition) { |
| | | if ('1' == startWorkCondition) { |
| | | this.model.startWorkCondition = '0' |
| | | } else { |
| | | this.model.startWorkCondition = '1' |
| | | } |
| | | }, |
| | | // handle2Switch(startWorkCondition) { |
| | | // if ('1' == startWorkCondition) { |
| | | // this.model.startWorkCondition = '0' |
| | | // } else { |
| | | // this.model.startWorkCondition = '1' |
| | | // } |
| | | // }, |
| | | |
| | | // handle2Change(val) { |
| | | // this.inspectionCycles = []; |
| | |
| | | dataIndex: 'num', |
| | | }, |
| | | { |
| | | title: 'çæ¬', |
| | | align: 'center', |
| | | dataIndex: 'version', |
| | | }, |
| | | { |
| | | title: '设å¤ç¼ç ', |
| | | align: 'center', |
| | | dataIndex: 'equipmentNum', |
| | |
| | | align: "center", |
| | | dataIndex: 'useDepartName' |
| | | }, |
| | | { |
| | | title: 'çæ¬', |
| | | align: 'center', |
| | | dataIndex: 'version', |
| | | }, |
| | | ], |
| | | url: { |
| | | list: "/eam/inspectionStandard/findInspectionStandardList", |
| | |
| | | dataIndex: 'detectionStandard', |
| | | |
| | | }, |
| | | { |
| | | title: 'åæ ¼èå´', |
| | | align: "center", |
| | | dataIndex: 'acceptabilityLimit', |
| | | // { |
| | | // title: 'åæ ¼èå´', |
| | | // align: "center", |
| | | // dataIndex: 'acceptabilityLimit', |
| | | |
| | | }, |
| | | { |
| | | title: 'æ¹æ³', |
| | | align: "center", |
| | | dataIndex: 'inspectionMethodName', |
| | | // }, |
| | | // { |
| | | // title: 'æ¹æ³', |
| | | // align: "center", |
| | | // dataIndex: 'inspectionMethodName', |
| | | |
| | | }, |
| | | { |
| | | title: 'å·¥å
·', |
| | | align: "center", |
| | | dataIndex: 'inspectionTool', |
| | | }, |
| | | // }, |
| | | // { |
| | | // title: 'å·¥å
·', |
| | | // align: "center", |
| | | // dataIndex: 'inspectionTool', |
| | | // }, |
| | | { |
| | | title: '卿', |
| | | align: "center", |
| | |
| | | rowKey='id' |
| | | :columns="columns" |
| | | :dataSource="dataSource" |
| | | :pagination="false" |
| | | > |
| | | <template |
| | | v-for="col in columns" |
| | |
| | | align: 'center', |
| | | dataIndex: 'detectionStandard' |
| | | }, |
| | | { |
| | | title: 'åæ ¼èå´', |
| | | align: 'center', |
| | | dataIndex: 'acceptabilityLimit' |
| | | }, |
| | | { |
| | | title: 'æ¹æ³', |
| | | align: 'center', |
| | | dataIndex: 'inspectionMethod_dictText' |
| | | }, |
| | | { |
| | | title: 'å·¥å
·', |
| | | align: 'center', |
| | | dataIndex: 'inspectionTool' |
| | | }, |
| | | // { |
| | | // title: 'åæ ¼èå´', |
| | | // align: 'center', |
| | | // dataIndex: 'acceptabilityLimit' |
| | | // }, |
| | | // { |
| | | // title: 'æ¹æ³', |
| | | // align: 'center', |
| | | // dataIndex: 'inspectionMethod_dictText' |
| | | // }, |
| | | // { |
| | | // title: 'å·¥å
·', |
| | | // align: 'center', |
| | | // dataIndex: 'inspectionTool' |
| | | // }, |
| | | // { |
| | | // title: '卿', |
| | | // align: 'center', |
| | |
| | | <template |
| | | v-for="col in columns" |
| | | :slot="col.dataIndex" |
| | | slot-scope='text, record' |
| | | slot-scope='text, record, index' |
| | | > |
| | | <div :key="col.dataIndex"> |
| | | <span |
| | |
| | | é¢è§ |
| | | </a> --> |
| | | |
| | | <a-input |
| | | :value="text" |
| | | v-if="col.dataIndex == 'maintenanceOrderDetailUda1'" |
| | | @change="(e)=>handleChange(e, record.key, col, index)" |
| | | placeholder="请è¾å
¥ä¿å
»äºº" |
| | | /> |
| | | <a-input |
| | | :value="text" |
| | | v-if="col.dataIndex == 'maintenanceOrderDetailUda2'" |
| | | @change="(e)=>handleChange(e, record.key, col, index)" |
| | | placeholder="请è¾å
¥æ§è¡æ
åµ" |
| | | /> |
| | | </div> |
| | | |
| | | </template> |
| | | |
| | | </a-table> |
| | | <div :style="{width: '100%',border: '1px solid #e9e9e9',padding: '10px 16px',background: '#fff',}"> |
| | | <a-row :style="{textAlign:'right'}"> |
| | | <a-button |
| | | :style="{marginRight: '8px'}" |
| | | @click="handleCancel" |
| | | > |
| | | åæ¶ |
| | | </a-button> |
| | | <a-button |
| | | @click="handleOk()" |
| | | type="primary" |
| | | :disabled="this.model.status!='4'" |
| | | :loading="confirmLoading" |
| | | >ä¿å</a-button> |
| | | </a-row> |
| | | <!-- v-has="'dailyMaintenanceOrder:actualWorkHoursSave'" --> |
| | | <!-- :disabled="false" --> |
| | | </div> |
| | | </div> |
| | | </a-tab-pane> |
| | | |
| | |
| | | |
| | | <script> |
| | | import { JeecgListMixin } from '@/mixins/JeecgListMixin' |
| | | import { requestPut, getAction, downFile } from '@/api/manage' |
| | | import { requestPut, getAction, downFile, postAction } from '@/api/manage' |
| | | import Tooltip from 'ant-design-vue/es/tooltip' |
| | | |
| | | import { preview } from 'vue-photo-preview' |
| | |
| | | }, |
| | | data() { |
| | | return { |
| | | title: "æ¥å¸¸ä¿å
»å·¥åæ§è¡", |
| | | title: "äºçº§ä¿å
»å·¥åæ§è¡", |
| | | visible: false, |
| | | maskClosable: true, |
| | | confirmLoading: false, |
| | |
| | | maintenanceStandardId: '-1', |
| | | dataSource: [], |
| | | model: {}, |
| | | form: this.$form.createForm(this), |
| | | labelCol: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 6 }, |
| | |
| | | align: 'center', |
| | | dataIndex: 'standard', |
| | | }, |
| | | { |
| | | title: 'æ¹æ³', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceMethodName', |
| | | }, |
| | | { |
| | | title: 'å·¥å
·', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceTool', |
| | | }, |
| | | { |
| | | title: 'å®å
¨è¦æ±', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceRequire', |
| | | }, |
| | | { |
| | | title: 'å·¥æ¶å®é¢ï¼å°æ¶ï¼', |
| | | align: 'center', |
| | | dataIndex: 'workingHourQuota', |
| | | }, |
| | | // { |
| | | // title: 'æ¹æ³', |
| | | // align: 'center', |
| | | // dataIndex: 'maintenanceMethodName', |
| | | // }, |
| | | // { |
| | | // title: 'å·¥å
·', |
| | | // align: 'center', |
| | | // dataIndex: 'maintenanceTool', |
| | | // }, |
| | | // { |
| | | // title: 'å®å
¨è¦æ±', |
| | | // align: 'center', |
| | | // dataIndex: 'maintenanceRequire', |
| | | // }, |
| | | // { |
| | | // title: 'å·¥æ¶å®é¢ï¼å°æ¶ï¼', |
| | | // align: 'center', |
| | | // dataIndex: 'workingHourQuota', |
| | | // }, |
| | | { |
| | | title: 'ä¿å
»å¨æ', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceCycleName', |
| | | }, |
| | | // { |
| | | // title: 'ç»´ä¿ä¸ä¸', |
| | | // align: 'center', |
| | | // dataIndex: 'maintenanceSpecialtyName', |
| | | // }, |
| | | { |
| | | title: 'ç»´ä¿ä¸ä¸', |
| | | title: 'æ§è¡æ
åµ', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceSpecialtyName', |
| | | dataIndex: 'maintenanceOrderDetailUda2', |
| | | width: 200, |
| | | scopedSlots: { customRender: 'maintenanceOrderDetailUda2' }, |
| | | }, |
| | | { |
| | | title: 'ä¿å
»äºº', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceOrderDetailUda1', |
| | | width: 200, |
| | | scopedSlots: { customRender: 'maintenanceOrderDetailUda1' }, |
| | | }, |
| | | ], |
| | | url: { |
| | |
| | | editStatus: "/eam/dailyMaintenanceOrder/editStatus", |
| | | revocation: "/eam/dailyMaintenanceOrder/revocation", |
| | | report: "/eam/dailyMaintenanceOrder/report", |
| | | edit: "/eam/dailyMaintenanceOrderDetail/edit" |
| | | }, |
| | | } |
| | | }, |
| | |
| | | }, |
| | | //ä¿å |
| | | handleOk() { |
| | | const that = this |
| | | this.loading = true; |
| | | this.form.validateFields((err, values) => { |
| | | if (!err) { |
| | | that.confirmLoading = true |
| | | let formData = {} |
| | | formData.dailyMaintenanceOrderDetails = that.dataSource; |
| | | let obj = obj = postAction(this.url.edit, formData) |
| | | obj.then((res) => { |
| | | if (res.success) { |
| | | that.$message.success(res.message) |
| | | that.$emit('ok') |
| | | } else { |
| | | that.$message.warning(res.message) |
| | | } |
| | | }).finally(() => { |
| | | that.confirmLoading = false |
| | | that.loadData1(); |
| | | this.loading = false; |
| | | }) |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | |
| | | handleChange(value, key, column, index) { |
| | | debugger |
| | | let that = this; |
| | | const temp = [...that.dataSource]; |
| | | const target = temp[index]; |
| | | if (target) { |
| | | target[column.dataIndex] = value; |
| | | if ('maintenanceOrderDetailUda1' == column.dataIndex) { |
| | | target['maintenanceOrderDetailUda1'] = value.target.value; |
| | | } |
| | | if ('maintenanceOrderDetailUda2' == column.dataIndex) { |
| | | target['maintenanceOrderDetailUda2'] = value.target.value; |
| | | } |
| | | that.dataSource = temp; |
| | | } |
| | | }, |
| | | |
| | | view(record) { |
| | |
| | | rowKey='id' |
| | | :columns="columns" |
| | | :dataSource="dataSource" |
| | | :pagination="false" |
| | | > |
| | | |
| | | </a-table> |
| | |
| | | { |
| | | title: 'ç±»å', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceMethod1' |
| | | dataIndex: 'maintenanceRole' |
| | | }, |
| | | |
| | | { |
| | |
| | | { |
| | | title: 'ä¿å
»é¡¹ç®', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceProjectNum' |
| | | dataIndex: 'maintenanceProjectName' |
| | | }, |
| | | { |
| | | title: 'ä¿å
»æ å', |
| | |
| | | { |
| | | title: 'æ§è¡æ
åµ', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceTool1' |
| | | dataIndex: 'maintenanceOrderDetailUda2' |
| | | }, |
| | | { |
| | | title: 'æ§è¡äºº', |
| | | align: 'center', |
| | | dataIndex: 'photo1', |
| | | dataIndex: 'maintenanceOrderDetailUda1', |
| | | }, |
| | | |
| | | ], |
| | |
| | | rowKey='id' |
| | | :columns="columns" |
| | | :dataSource="dataSource" |
| | | :pagination="false" |
| | | > |
| | | <!-- <span |
| | | slot="photo" |
| | |
| | | { |
| | | title: 'ä¿å
»é¡¹ç®', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceProjectNum' |
| | | dataIndex: 'maintenanceProjectName' |
| | | }, |
| | | { |
| | | title: 'ä¿å
»æ å', |
| | | align: 'center', |
| | | dataIndex: 'standard' |
| | | }, |
| | | { |
| | | title: 'æ¹æ³', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceMethod' |
| | | }, |
| | | { |
| | | title: 'å·¥å
·', |
| | | align: 'center', |
| | | dataIndex: 'maintenanceTool' |
| | | }, |
| | | // { |
| | | // title: 'æ¹æ³', |
| | | // align: 'center', |
| | | // dataIndex: 'maintenanceMethod' |
| | | // }, |
| | | // { |
| | | // title: 'å·¥å
·', |
| | | // align: 'center', |
| | | // dataIndex: 'maintenanceTool' |
| | | // }, |
| | | { |
| | | title: '示æå¾', |
| | | align: 'center', |
| | |
| | | rowKey='id' |
| | | :columns="columns" |
| | | :dataSource="dataSource" |
| | | :pagination="false" |
| | | > |
| | | <template |
| | | v-for="col in columns" |
| | |
| | | </a-col> |
| | | <a-col :span="24/2"> |
| | | <a-form-model-item |
| | | label="çæ¬" |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | prop="version" |
| | | > |
| | | <a-input |
| | | v-model="model.version" |
| | | placeholder="请è¾å
¥çæ¬å·" |
| | | :disabled=true |
| | | ></a-input> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <!-- <a-col :span="24/2"> |
| | | <a-form-model-item |
| | | label="å¼å·¥æ¡ä»¶" |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | |
| | | v-model="model.startCondition" |
| | | /> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | </a-col> --> |
| | | </a-row> |
| | | <a-row> |
| | | <!-- <a-row> |
| | | <a-col :span="24/2"> |
| | | <a-form-model-item |
| | | label="è°æ´æ¹å¼" |
| | |
| | | /> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | </a-row> |
| | | </a-row> --> |
| | | <a-row> |
| | | <a-col :span="24/2"> |
| | | <!-- <a-col :span="24/2"> |
| | | <a-form-model-item |
| | | label="便®æ¥å" |
| | | :labelCol="labelCol" |
| | |
| | | v-model="model.accordingCalendar" |
| | | /> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="24/2"> |
| | | <a-form-model-item |
| | | label="çæ¬" |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | prop="version" |
| | | > |
| | | <a-input |
| | | v-model="model.version" |
| | | placeholder="请è¾å
¥çæ¬å·" |
| | | :disabled=true |
| | | ></a-input> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | </a-col> --> |
| | | |
| | | </a-row> |
| | | <a-row> |
| | | |
| | |
| | | </a-col> |
| | | <a-col :span="24/2"> |
| | | <a-form-model-item |
| | | label="çæ¬" |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | prop="version" |
| | | > |
| | | <a-input |
| | | v-model="model.version" |
| | | placeholder="请è¾å
¥çæ¬å·" |
| | | :disabled=true |
| | | ></a-input> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <!-- <a-col :span="24/2"> |
| | | <a-form-model-item |
| | | label="è°æ´æ¹å¼" |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | |
| | | v-model="model.arrangeWay" |
| | | /> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | </a-col> --> |
| | | </a-row> |
| | | <a-row> |
| | | <!-- <a-row> |
| | | <a-col :span="24/2"> |
| | | <a-form-model-item |
| | | label="龿å¤çæ¹å¼" |
| | |
| | | /> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | </a-row> |
| | | </a-row> --> |
| | | <a-row> |
| | | <a-col :span="24/2"> |
| | | <a-form-item |
| | |
| | | </a-col> |
| | | </a-row> |
| | | <a-row> |
| | | <a-col :span="24/2"> |
| | | <a-form-model-item |
| | | label="çæ¬" |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | prop="version" |
| | | > |
| | | <a-input |
| | | v-model="model.version" |
| | | placeholder="请è¾å
¥çæ¬å·" |
| | | :disabled=true |
| | | ></a-input> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | |
| | | <a-col |
| | | v-if=" model.isRevise == true" |
| | | :span="24/2" |
| | |
| | | <template> |
| | | <a-row :gutter="10"> |
| | | <a-col :md="leftColMd" :sm="24" style="margin-bottom: 20px"> |
| | | <a-col |
| | | :md="leftColMd" |
| | | :sm="24" |
| | | style="margin-bottom: 20px" |
| | | > |
| | | <a-card :bordered="false"> |
| | | <!-- æ¥è¯¢åºå --> |
| | | <div class="table-page-search-wrapper"> |
| | | <!-- æç´¢åºå --> |
| | | <a-form layout="inline" @keyup.enter.native="searchQuery"> |
| | | <a-form |
| | | layout="inline" |
| | | @keyup.enter.native="searchQuery" |
| | | > |
| | | <a-row :gutter="24"> |
| | | <a-col :md="12" :sm="8"> |
| | | <a-form-item label="è§è²åç§°" :labelCol="{span: 5}" :wrapperCol="{span: 18, offset: 1}"> |
| | | <a-input placeholder="" v-model="queryParam.roleName"></a-input> |
| | | <a-col |
| | | :md="12" |
| | | :sm="8" |
| | | > |
| | | <a-form-item |
| | | label="è§è²åç§°" |
| | | :labelCol="{span: 5}" |
| | | :wrapperCol="{span: 18, offset: 1}" |
| | | > |
| | | <a-input |
| | | placeholder="" |
| | | v-model="queryParam.roleName" |
| | | ></a-input> |
| | | </a-form-item> |
| | | </a-col> |
| | | <!-- |
| | |
| | | </a-form-item> |
| | | </a-col> |
| | | --> |
| | | <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons"> |
| | | <a-col :md="12" :sm="24"> |
| | | <a-button type="primary" @click="searchQuery" icon="search" style="margin-left: 21px">æ¥è¯¢</a-button> |
| | | <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">éç½®</a-button> |
| | | </a-col> |
| | | </span> |
| | | <span |
| | | style="float: left;overflow: hidden;" |
| | | class="table-page-search-submitButtons" |
| | | > |
| | | <a-col |
| | | :md="12" |
| | | :sm="24" |
| | | > |
| | | <a-button |
| | | type="primary" |
| | | @click="searchQuery" |
| | | icon="search" |
| | | style="margin-left: 21px" |
| | | >æ¥è¯¢</a-button> |
| | | <a-button |
| | | type="primary" |
| | | @click="searchReset" |
| | | icon="reload" |
| | | style="margin-left: 8px" |
| | | >éç½®</a-button> |
| | | </a-col> |
| | | </span> |
| | | </a-row> |
| | | </a-form> |
| | | </div> |
| | | <!-- æä½æé®åºå --> |
| | | <div class="table-operator" style="margin: 5px 0 10px 2px"> |
| | | <a-button @click="handleAdd" type="primary" icon="plus">æ°å»ºè§è²</a-button> |
| | | <div |
| | | class="table-operator" |
| | | style="margin: 5px 0 10px 2px" |
| | | > |
| | | <a-button |
| | | @click="handleAdd" |
| | | type="primary" |
| | | icon="plus" |
| | | >æ°å»ºè§è²</a-button> |
| | | <!--<a-button @click="handleEdit(model1)" type="primary" icon="plus">è§è²ç¼è¾</a-button>--> |
| | | <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel"> |
| | | <a-button type="primary" icon="import">导å
¥</a-button> |
| | | <a-upload |
| | | name="file" |
| | | :showUploadList="false" |
| | | :multiple="false" |
| | | :headers="tokenHeader" |
| | | :action="importExcelUrl" |
| | | @change="handleImportExcel" |
| | | > |
| | | <a-button |
| | | type="primary" |
| | | icon="import" |
| | | >导å
¥</a-button> |
| | | </a-upload> |
| | | <a-button type="primary" icon="download" @click="handleExportXls('è§è²ç®¡ç')">导åº</a-button> |
| | | <a-button |
| | | type="primary" |
| | | icon="download" |
| | | @click="handleExportXls('è§è²ç®¡ç')" |
| | | >导åº</a-button> |
| | | </div> |
| | | |
| | | <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;"> |
| | | <div |
| | | class="ant-alert ant-alert-info" |
| | | style="margin-bottom: 16px;" |
| | | > |
| | | <i class="anticon anticon-info-circle ant-alert-icon"> |
| | | </i> 已鿩 <a><b>{{ selectedRowKeys1.length }}</b></a>项 |
| | | <a style="margin-left: 24px" @click="onClearSelected1">æ¸
空</a> |
| | | <a |
| | | style="margin-left: 24px" |
| | | @click="onClearSelected1" |
| | | >æ¸
空</a> |
| | | </div> |
| | | |
| | | <div style="margin-top: 15px"> |
| | |
| | | :pagination="ipagination" |
| | | :loading="loading" |
| | | :rowSelection="{selectedRowKeys: selectedRowKeys1, onChange: onSelectChange1, type:'radio'}" |
| | | @change="handleTableChange"> |
| | | <span slot="action" slot-scope="text, record"> |
| | | <a @click="handleOpen(record)">ç¨æ·</a> |
| | | <a-divider type="vertical"/> |
| | | @change="handleTableChange" |
| | | > |
| | | <span |
| | | slot="action" |
| | | slot-scope="text, record" |
| | | > |
| | | <a @click="handleOpen(record)">ç¨æ·</a> |
| | | <a-divider type="vertical" /> |
| | | |
| | | <a-dropdown> |
| | | <a class="ant-dropdown-link"> |
| | | æ´å¤ <a-icon type="down"/> |
| | | </a> |
| | | <a-menu slot="overlay"> |
| | | <a-menu-item> |
| | | <a @click="handlePerssion(record.id)">ææ</a> |
| | | </a-menu-item> |
| | | <a-menu-item> |
| | | <a @click="handleEdit(record)">ç¼è¾</a> |
| | | </a-menu-item> |
| | | <a-menu-item> |
| | | <a-popconfirm title="ç¡®å®å é¤å?" @confirm="() => handleDelete1(record.id)"> |
| | | <a>å é¤</a> |
| | | </a-popconfirm> |
| | | </a-menu-item> |
| | | </a-menu> |
| | | </a-dropdown> |
| | | </span> |
| | | <a-dropdown> |
| | | <a class="ant-dropdown-link"> |
| | | æ´å¤ <a-icon type="down" /> |
| | | </a> |
| | | <a-menu slot="overlay"> |
| | | <a-menu-item> |
| | | <a @click="handlePerssion(record.id)">ææ</a> |
| | | </a-menu-item> |
| | | <a-menu-item> |
| | | <a @click="handleEdit(record)">ç¼è¾</a> |
| | | </a-menu-item> |
| | | <a-menu-item> |
| | | <a-popconfirm |
| | | title="ç¡®å®å é¤å?" |
| | | @confirm="() => handleDelete1(record.id)" |
| | | > |
| | | <a>å é¤</a> |
| | | </a-popconfirm> |
| | | </a-menu-item> |
| | | </a-menu> |
| | | </a-dropdown> |
| | | </span> |
| | | </a-table> |
| | | </div> |
| | | <!-- å³ä¾§çè§è²æéé
ç½® --> |
| | | <user-role-modal ref="modalUserRole"></user-role-modal> |
| | | <role-modal ref="modalForm" @ok="modalFormOk"></role-modal> |
| | | <!-- <user-role-modal ref="modalUserRole"></user-role-modal> --> |
| | | <user-role-modal-new ref="modalUserRole"></user-role-modal-new> |
| | | <role-modal |
| | | ref="modalForm" |
| | | @ok="modalFormOk" |
| | | ></role-modal> |
| | | </a-card> |
| | | </a-col> |
| | | <a-col :md="rightColMd" :sm="24" v-if="this.rightcolval == 1"> |
| | | <a-col |
| | | :md="rightColMd" |
| | | :sm="24" |
| | | v-if="this.rightcolval == 1" |
| | | > |
| | | <a-card :bordered="false"> |
| | | <div style="text-align: right;"> |
| | | <a-icon type="close-circle" @click="hideUserList" /> |
| | | <a-icon |
| | | type="close-circle" |
| | | @click="hideUserList" |
| | | /> |
| | | </div> |
| | | <!-- æ¥è¯¢åºå --> |
| | | <div class="table-page-search-wrapper"> |
| | | <a-form layout="inline"> |
| | | <a-row :gutter="24"> |
| | | |
| | | <a-col :md="12" :sm="12"> |
| | | <a-col |
| | | :md="12" |
| | | :sm="12" |
| | | > |
| | | <a-form-item label="ç¨æ·è´¦å·"> |
| | | <a-input placeholder="" v-model="queryParam2.username"></a-input> |
| | | <a-input |
| | | placeholder="" |
| | | v-model="queryParam2.username" |
| | | ></a-input> |
| | | </a-form-item> |
| | | </a-col> |
| | | <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons"> |
| | | <a-col :md="9" :sm="24"> |
| | | <a-button type="primary" @click="searchQuery2" icon="search" style="margin-left: 21px">æ¥è¯¢</a-button> |
| | | <a-button type="primary" @click="searchReset2" icon="reload" style="margin-left: 8px">éç½®</a-button> |
| | | <span |
| | | style="float: left;overflow: hidden;" |
| | | class="table-page-search-submitButtons" |
| | | > |
| | | <a-col |
| | | :md="9" |
| | | :sm="24" |
| | | > |
| | | <a-button |
| | | type="primary" |
| | | @click="searchQuery2" |
| | | icon="search" |
| | | style="margin-left: 21px" |
| | | >æ¥è¯¢</a-button> |
| | | <a-button |
| | | type="primary" |
| | | @click="searchReset2" |
| | | icon="reload" |
| | | style="margin-left: 8px" |
| | | >éç½®</a-button> |
| | | |
| | | </a-col> |
| | | </span> |
| | | </a-col> |
| | | </span> |
| | | </a-row> |
| | | </a-form> |
| | | </div> |
| | | <!-- æä½æé®åºå --> |
| | | <div class="table-operator" :md="24" :sm="24"> |
| | | <a-button @click="handleAdd2" type="primary" icon="plus" style="margin-top: 16px">æ°å¢ç¨æ·</a-button> |
| | | <div |
| | | class="table-operator" |
| | | :md="24" |
| | | :sm="24" |
| | | > |
| | | <a-button |
| | | @click="handleAdd2" |
| | | type="primary" |
| | | icon="plus" |
| | | style="margin-top: 16px" |
| | | >æ°å¢ç¨æ·</a-button> |
| | | <!--<a-button @click="handleEdit2" type="primary" icon="edit" style="margin-top: 16px">ç¨æ·ç¼è¾</a-button>--> |
| | | <a-button @click="handleAddUserRole" type="primary" icon="plus" style="margin-top: 16px">å·²æç¨æ·</a-button> |
| | | <a-button |
| | | @click="handleAddUserRole" |
| | | type="primary" |
| | | icon="plus" |
| | | style="margin-top: 16px" |
| | | >å·²æç¨æ·</a-button> |
| | | |
| | | <a-dropdown v-if="selectedRowKeys2.length > 0"> |
| | | <a-menu slot="overlay"> |
| | | <a-menu-item key="1" @click="batchDel2"> |
| | | <a-icon type="delete"/> |
| | | <a-menu-item |
| | | key="1" |
| | | @click="batchDel2" |
| | | > |
| | | <a-icon type="delete" /> |
| | | å é¤ |
| | | </a-menu-item> |
| | | </a-menu> |
| | | <a-button style="margin-left: 8px"> æ¹éæä½ |
| | | <a-icon type="down"/> |
| | | <a-icon type="down" /> |
| | | </a-button> |
| | | </a-dropdown> |
| | | </div> |
| | | <!-- tableåºå-begin --> |
| | | <div> |
| | | <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;"> |
| | | <div |
| | | class="ant-alert ant-alert-info" |
| | | style="margin-bottom: 16px;" |
| | | > |
| | | <i class="anticon anticon-info-circle ant-alert-icon"></i> 已鿩 <a style="font-weight: 600">{{ |
| | | selectedRowKeys2.length }}</a>项 |
| | | <a style="margin-left: 24px" @click="onClearSelected2">æ¸
空</a> |
| | | <a |
| | | style="margin-left: 24px" |
| | | @click="onClearSelected2" |
| | | >æ¸
空</a> |
| | | </div> |
| | | <a-table |
| | | style="height:500px" |
| | |
| | | :pagination="ipagination2" |
| | | :loading="loading2" |
| | | :rowSelection="{selectedRowKeys: selectedRowKeys2, onChange: onSelectChange2}" |
| | | @change="handleTableChange2"> |
| | | <span slot="action" slot-scope="text, record"> |
| | | <a @click="handleEdit2(record)">ç¼è¾</a> |
| | | <a-divider type="vertical"/> |
| | | <a-dropdown> |
| | | <a class="ant-dropdown-link"> |
| | | æ´å¤ <a-icon type="down"/> |
| | | </a> |
| | | <a-menu slot="overlay"> |
| | | <a-menu-item> |
| | | <a-popconfirm title="ç¡®å®å é¤å?" @confirm="() => handleDelete2(record.id)"> |
| | | <a>å é¤</a> |
| | | </a-popconfirm> |
| | | </a-menu-item> |
| | | </a-menu> |
| | | </a-dropdown> |
| | | </span> |
| | | @change="handleTableChange2" |
| | | > |
| | | <span |
| | | slot="action" |
| | | slot-scope="text, record" |
| | | > |
| | | <a @click="handleEdit2(record)">ç¼è¾</a> |
| | | <a-divider type="vertical" /> |
| | | <a-dropdown> |
| | | <a class="ant-dropdown-link"> |
| | | æ´å¤ <a-icon type="down" /> |
| | | </a> |
| | | <a-menu slot="overlay"> |
| | | <a-menu-item> |
| | | <a-popconfirm |
| | | title="ç¡®å®å é¤å?" |
| | | @confirm="() => handleDelete2(record.id)" |
| | | > |
| | | <a>å é¤</a> |
| | | </a-popconfirm> |
| | | </a-menu-item> |
| | | </a-menu> |
| | | </a-dropdown> |
| | | </span> |
| | | </a-table> |
| | | </div> |
| | | <!-- 表ååºå --> |
| | | <role-modal ref="modalForm" @ok="modalFormOk"></role-modal> |
| | | <user-modal ref="modalForm2" @ok="modalFormOk2"></user-modal> |
| | | <Select-User-Modal ref="selectUserModal" @selectFinished="selectOK"></Select-User-Modal> |
| | | <role-modal |
| | | ref="modalForm" |
| | | @ok="modalFormOk" |
| | | ></role-modal> |
| | | <user-modal |
| | | ref="modalForm2" |
| | | @ok="modalFormOk2" |
| | | ></user-modal> |
| | | <Select-User-Modal |
| | | ref="selectUserModal" |
| | | @selectFinished="selectOK" |
| | | ></Select-User-Modal> |
| | | </a-card> |
| | | </a-col> |
| | | </a-row> |
| | | </template> |
| | | <script> |
| | | import { JeecgListMixin } from '@/mixins/JeecgListMixin' |
| | | import { deleteAction, postAction, getAction } from '@/api/manage' |
| | | import SelectUserModal from './modules/SelectUserModal' |
| | | import RoleModal from './modules/RoleModal' |
| | | import UserModal from './modules/UserModal' |
| | | import { filterObj } from '@/utils/util' |
| | | import UserRoleModal from './modules/UserRoleModal' |
| | | import moment from 'moment' |
| | | import { JeecgListMixin } from '@/mixins/JeecgListMixin' |
| | | import { deleteAction, postAction, getAction } from '@/api/manage' |
| | | import SelectUserModal from './modules/SelectUserModal' |
| | | import RoleModal from './modules/RoleModal' |
| | | import UserModal from './modules/UserModal' |
| | | import { filterObj } from '@/utils/util' |
| | | import UserRoleModal from './modules/UserRoleModal' |
| | | import moment from 'moment' |
| | | import UserRoleModalNew from './modules/UserRoleModalNew' |
| | | |
| | | export default { |
| | | name: 'RoleUserList', |
| | | mixins: [JeecgListMixin], |
| | | components: { |
| | | UserRoleModal, |
| | | SelectUserModal, |
| | | RoleModal, |
| | | UserModal, |
| | | moment |
| | | }, |
| | | data() { |
| | | return { |
| | | model1: {}, |
| | | model2: {}, |
| | | currentRoleId: '', |
| | | queryParam1: {}, |
| | | queryParam2: {}, |
| | | dataSource1: [], |
| | | dataSource2: [], |
| | | ipagination1: { |
| | | current: 1, |
| | | pageSize: 10, |
| | | pageSizeOptions: ['10', '20', '30'], |
| | | showTotal: (total, range) => { |
| | | return range[0] + '-' + range[1] + ' å
±' + total + 'æ¡' |
| | | export default { |
| | | name: 'RoleUserList', |
| | | mixins: [JeecgListMixin], |
| | | components: { |
| | | UserRoleModal, |
| | | SelectUserModal, |
| | | RoleModal, |
| | | UserModal, |
| | | moment, |
| | | UserRoleModalNew |
| | | }, |
| | | data() { |
| | | return { |
| | | model1: {}, |
| | | model2: {}, |
| | | currentRoleId: '', |
| | | queryParam1: {}, |
| | | queryParam2: {}, |
| | | dataSource1: [], |
| | | dataSource2: [], |
| | | ipagination1: { |
| | | current: 1, |
| | | pageSize: 10, |
| | | pageSizeOptions: ['10', '20', '30'], |
| | | showTotal: (total, range) => { |
| | | return range[0] + '-' + range[1] + ' å
±' + total + 'æ¡' |
| | | }, |
| | | showQuickJumper: true, |
| | | showSizeChanger: true, |
| | | total: 0 |
| | | }, |
| | | ipagination2: { |
| | | current: 1, |
| | | pageSize: 10, |
| | | pageSizeOptions: ['10', '20', '30'], |
| | | showTotal: (total, range) => { |
| | | return range[0] + '-' + range[1] + ' å
±' + total + 'æ¡' |
| | | }, |
| | | showQuickJumper: true, |
| | | showSizeChanger: true, |
| | | total: 0 |
| | | }, |
| | | isorter1: { |
| | | column: 'createTime', |
| | | order: 'desc' |
| | | }, |
| | | isorter2: { |
| | | column: 'createTime', |
| | | order: 'desc' |
| | | }, |
| | | filters1: {}, |
| | | filters2: {}, |
| | | loading1: false, |
| | | loading2: false, |
| | | selectedRowKeys1: [], |
| | | selectedRowKeys2: [], |
| | | selectionRows1: [], |
| | | selectionRows2: [], |
| | | test: {}, |
| | | rightcolval: 0, |
| | | columns: |
| | | [ |
| | | { |
| | | title: 'è§è²ç¼ç ', |
| | | align: 'center', |
| | | dataIndex: 'roleCode' |
| | | }, |
| | | showQuickJumper: true, |
| | | showSizeChanger: true, |
| | | total: 0 |
| | | }, |
| | | ipagination2: { |
| | | current: 1, |
| | | pageSize: 10, |
| | | pageSizeOptions: ['10', '20', '30'], |
| | | showTotal: (total, range) => { |
| | | return range[0] + '-' + range[1] + ' å
±' + total + 'æ¡' |
| | | { |
| | | title: 'è§è²åç§°', |
| | | align: 'center', |
| | | dataIndex: 'roleName' |
| | | }, |
| | | showQuickJumper: true, |
| | | showSizeChanger: true, |
| | | total: 0 |
| | | }, |
| | | isorter1: { |
| | | column: 'createTime', |
| | | order: 'desc' |
| | | }, |
| | | isorter2: { |
| | | column: 'createTime', |
| | | order: 'desc' |
| | | }, |
| | | filters1: {}, |
| | | filters2: {}, |
| | | loading1: false, |
| | | loading2: false, |
| | | selectedRowKeys1: [], |
| | | selectedRowKeys2: [], |
| | | selectionRows1: [], |
| | | selectionRows2: [], |
| | | test:{}, |
| | | rightcolval:0, |
| | | columns: |
| | | [ |
| | | { |
| | | title: 'è§è²ç¼ç ', |
| | | align: 'center', |
| | | dataIndex: 'roleCode' |
| | | }, |
| | | { |
| | | title: 'è§è²åç§°', |
| | | align: 'center', |
| | | dataIndex: 'roleName' |
| | | }, |
| | | { |
| | | title: 'å建æ¶é´', |
| | | dataIndex: 'createTime', |
| | | align:"center", |
| | | sorter: true, |
| | | customRender: (text) => { |
| | | return moment(text).format('YYYY-MM-DD') |
| | | } |
| | | }, |
| | | { |
| | | title: 'æä½', |
| | | dataIndex: 'action', |
| | | align: 'center', |
| | | scopedSlots: { customRender: 'action' } |
| | | { |
| | | title: 'å建æ¶é´', |
| | | dataIndex: 'createTime', |
| | | align: "center", |
| | | sorter: true, |
| | | customRender: (text) => { |
| | | return moment(text).format('YYYY-MM-DD') |
| | | } |
| | | ], |
| | | columns2: [{ |
| | | title: 'ç¨æ·è´¦å·', |
| | | align: 'center', |
| | | dataIndex: 'username', |
| | | width: 120 |
| | | }, |
| | | { |
| | | title: 'ç¨æ·åç§°', |
| | | align: 'center', |
| | | width: 100, |
| | | dataIndex: 'realname' |
| | | }, |
| | | { |
| | | title: 'ç¶æ', |
| | | align: 'center', |
| | | width: 80, |
| | | dataIndex: 'status_dictText' |
| | | }, |
| | | |
| | | { |
| | | title: 'æä½', |
| | | dataIndex: 'action', |
| | | scopedSlots: { customRender: 'action' }, |
| | | align: 'center', |
| | | width: 120 |
| | | }], |
| | | |
| | | // é«çº§æ¥è¯¢åæ° |
| | | superQueryParams2: '', |
| | | // é«çº§æ¥è¯¢æ¼æ¥æ¡ä»¶ |
| | | superQueryMatchType2: 'and', |
| | | url: { |
| | | list: '/sys/role/list', |
| | | delete: '/sys/role/delete', |
| | | list2: '/sys/user/userRoleList', |
| | | addUserRole: '/sys/user/addSysUserRole', |
| | | delete2: '/sys/user/deleteUserRole', |
| | | deleteBatch2: '/sys/user/deleteUserRoleBatch', |
| | | exportXlsUrl: 'sys/role/exportXls', |
| | | importExcelUrl: 'sys/role/importExcel' |
| | | } |
| | | } |
| | | }, |
| | | computed: { |
| | | importExcelUrl: function() { |
| | | return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}` |
| | | }, |
| | | leftColMd() { |
| | | return this.selectedRowKeys1.length === 0 ? 24 : 12 |
| | | }, |
| | | rightColMd() { |
| | | return this.selectedRowKeys1.length === 0 ? 0 : 12 |
| | | } |
| | | }, |
| | | methods: { |
| | | onSelectChange2(selectedRowKeys, selectionRows) { |
| | | this.selectedRowKeys2 = selectedRowKeys |
| | | this.selectionRows2 = selectionRows |
| | | }, |
| | | onClearSelected2() { |
| | | this.selectedRowKeys2 = [] |
| | | this.selectionRows2 = [] |
| | | }, |
| | | onClearSelected1() { |
| | | this.selectedRowKeys1 = [] |
| | | this.selectionRows1 = [] |
| | | }, |
| | | onSelectChange1(selectedRowKeys, selectionRows) { |
| | | this.rightcolval = 1 |
| | | this.selectedRowKeys1 = selectedRowKeys |
| | | this.selectionRows1 = selectionRows |
| | | this.model1 = Object.assign({}, selectionRows[0]) |
| | | console.log(this.model1) |
| | | this.currentRoleId = selectedRowKeys[0] |
| | | this.loadData2() |
| | | }, |
| | | onClearSelected() { |
| | | }, |
| | | |
| | | getQueryParams2() { |
| | | //è·åæ¥è¯¢æ¡ä»¶ |
| | | let sqp = {} |
| | | if (this.superQueryParams2) { |
| | | sqp['superQueryParams'] = encodeURI(this.superQueryParams2) |
| | | sqp['superQueryMatchType'] = this.superQueryMatchType2 |
| | | } |
| | | var param = Object.assign(sqp, this.queryParam2, this.isorter2, this.filters2) |
| | | param.field = this.getQueryField2() |
| | | param.pageNo = this.ipagination2.current |
| | | param.pageSize = this.ipagination2.pageSize |
| | | return filterObj(param) |
| | | }, |
| | | getQueryField2() { |
| | | //TODO åæ®µæéæ§å¶ |
| | | var str = 'id,' |
| | | this.columns2.forEach(function(value) { |
| | | str += ',' + value.dataIndex |
| | | }) |
| | | return str |
| | | }, |
| | | handleEdit2: function(record) { |
| | | this.$refs.modalForm2.title = 'ç¼è¾' |
| | | this.$refs.modalForm2.roleDisabled = true |
| | | this.$refs.modalForm2.edit(record) |
| | | }, |
| | | handleAdd2: function() { |
| | | if (this.currentRoleId == '') { |
| | | this.$message.error('è¯·éæ©ä¸ä¸ªè§è²!') |
| | | } else { |
| | | this.$refs.modalForm2.roleDisabled = true |
| | | this.$refs.modalForm2.title = 'æ°å¢' |
| | | this.$refs.modalForm2.edit({activitiSync:'1',userIdentity:1,selectedroles:this.currentRoleId}) |
| | | } |
| | | }, |
| | | modalFormOk2() { |
| | | // æ°å¢/ä¿®æ¹ æåæ¶ï¼éè½½å表 |
| | | this.loadData2() |
| | | }, |
| | | loadData2(arg) { |
| | | if (!this.url.list2) { |
| | | this.$message.error('请设置url.list2屿§!') |
| | | return |
| | | } |
| | | //å è½½æ°æ® è¥ä¼ å
¥åæ°1åå 载第ä¸é¡µçå
容 |
| | | if (arg === 1) { |
| | | this.ipagination2.current = 1 |
| | | } |
| | | if (this.currentRoleId === '') return |
| | | let params = this.getQueryParams2()//æ¥è¯¢æ¡ä»¶ |
| | | params.roleId = this.currentRoleId |
| | | this.loading2 = true |
| | | getAction(this.url.list2, params).then((res) => { |
| | | if (res.success) { |
| | | this.dataSource2 = res.result.records |
| | | this.ipagination2.total = res.result.total |
| | | |
| | | scopedSlots: { customRender: 'action' } |
| | | } |
| | | this.loading2 = false |
| | | }) |
| | | ], |
| | | columns2: [{ |
| | | title: 'ç¨æ·è´¦å·', |
| | | align: 'center', |
| | | dataIndex: 'username', |
| | | width: 120 |
| | | }, |
| | | { |
| | | title: 'ç¨æ·åç§°', |
| | | align: 'center', |
| | | width: 100, |
| | | dataIndex: 'realname' |
| | | }, |
| | | { |
| | | title: 'ç¶æ', |
| | | align: 'center', |
| | | width: 80, |
| | | dataIndex: 'status_dictText' |
| | | }, |
| | | |
| | | }, |
| | | handleDelete1: function(id) { |
| | | this.handleDelete(id) |
| | | this.dataSource2 = [] |
| | | this.currentRoleId = '' |
| | | }, |
| | | handleDelete2: function(id) { |
| | | if (!this.url.delete2) { |
| | | this.$message.error('请设置url.delete2屿§!') |
| | | return |
| | | { |
| | | title: 'æä½', |
| | | dataIndex: 'action', |
| | | scopedSlots: { customRender: 'action' }, |
| | | align: 'center', |
| | | width: 120 |
| | | }], |
| | | |
| | | // é«çº§æ¥è¯¢åæ° |
| | | superQueryParams2: '', |
| | | // é«çº§æ¥è¯¢æ¼æ¥æ¡ä»¶ |
| | | superQueryMatchType2: 'and', |
| | | url: { |
| | | list: '/sys/role/list', |
| | | delete: '/sys/role/delete', |
| | | list2: '/sys/user/userRoleList', |
| | | addUserRole: '/sys/user/addSysUserRole', |
| | | delete2: '/sys/user/deleteUserRole', |
| | | deleteBatch2: '/sys/user/deleteUserRoleBatch', |
| | | exportXlsUrl: 'sys/role/exportXls', |
| | | importExcelUrl: 'sys/role/importExcel' |
| | | } |
| | | } |
| | | }, |
| | | computed: { |
| | | importExcelUrl: function () { |
| | | return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}` |
| | | }, |
| | | leftColMd() { |
| | | return this.selectedRowKeys1.length === 0 ? 24 : 12 |
| | | }, |
| | | rightColMd() { |
| | | return this.selectedRowKeys1.length === 0 ? 0 : 12 |
| | | } |
| | | }, |
| | | methods: { |
| | | onSelectChange2(selectedRowKeys, selectionRows) { |
| | | this.selectedRowKeys2 = selectedRowKeys |
| | | this.selectionRows2 = selectionRows |
| | | }, |
| | | onClearSelected2() { |
| | | this.selectedRowKeys2 = [] |
| | | this.selectionRows2 = [] |
| | | }, |
| | | onClearSelected1() { |
| | | this.selectedRowKeys1 = [] |
| | | this.selectionRows1 = [] |
| | | }, |
| | | onSelectChange1(selectedRowKeys, selectionRows) { |
| | | this.rightcolval = 1 |
| | | this.selectedRowKeys1 = selectedRowKeys |
| | | this.selectionRows1 = selectionRows |
| | | this.model1 = Object.assign({}, selectionRows[0]) |
| | | console.log(this.model1) |
| | | this.currentRoleId = selectedRowKeys[0] |
| | | this.loadData2() |
| | | }, |
| | | onClearSelected() { |
| | | }, |
| | | |
| | | getQueryParams2() { |
| | | //è·åæ¥è¯¢æ¡ä»¶ |
| | | let sqp = {} |
| | | if (this.superQueryParams2) { |
| | | sqp['superQueryParams'] = encodeURI(this.superQueryParams2) |
| | | sqp['superQueryMatchType'] = this.superQueryMatchType2 |
| | | } |
| | | var param = Object.assign(sqp, this.queryParam2, this.isorter2, this.filters2) |
| | | param.field = this.getQueryField2() |
| | | param.pageNo = this.ipagination2.current |
| | | param.pageSize = this.ipagination2.pageSize |
| | | return filterObj(param) |
| | | }, |
| | | getQueryField2() { |
| | | //TODO åæ®µæéæ§å¶ |
| | | var str = 'id,' |
| | | this.columns2.forEach(function (value) { |
| | | str += ',' + value.dataIndex |
| | | }) |
| | | return str |
| | | }, |
| | | handleEdit2: function (record) { |
| | | this.$refs.modalForm2.title = 'ç¼è¾' |
| | | this.$refs.modalForm2.roleDisabled = true |
| | | this.$refs.modalForm2.edit(record) |
| | | }, |
| | | handleAdd2: function () { |
| | | if (this.currentRoleId == '') { |
| | | this.$message.error('è¯·éæ©ä¸ä¸ªè§è²!') |
| | | } else { |
| | | this.$refs.modalForm2.roleDisabled = true |
| | | this.$refs.modalForm2.title = 'æ°å¢' |
| | | this.$refs.modalForm2.edit({ activitiSync: '1', userIdentity: 1, selectedroles: this.currentRoleId }) |
| | | } |
| | | }, |
| | | modalFormOk2() { |
| | | // æ°å¢/ä¿®æ¹ æåæ¶ï¼éè½½å表 |
| | | this.loadData2() |
| | | }, |
| | | loadData2(arg) { |
| | | if (!this.url.list2) { |
| | | this.$message.error('请设置url.list2屿§!') |
| | | return |
| | | } |
| | | //å è½½æ°æ® è¥ä¼ å
¥åæ°1åå 载第ä¸é¡µçå
容 |
| | | if (arg === 1) { |
| | | this.ipagination2.current = 1 |
| | | } |
| | | if (this.currentRoleId === '') return |
| | | let params = this.getQueryParams2()//æ¥è¯¢æ¡ä»¶ |
| | | params.roleId = this.currentRoleId |
| | | this.loading2 = true |
| | | getAction(this.url.list2, params).then((res) => { |
| | | if (res.success) { |
| | | this.dataSource2 = res.result.records |
| | | this.ipagination2.total = res.result.total |
| | | |
| | | } |
| | | this.loading2 = false |
| | | }) |
| | | |
| | | }, |
| | | handleDelete1: function (id) { |
| | | this.handleDelete(id) |
| | | this.dataSource2 = [] |
| | | this.currentRoleId = '' |
| | | }, |
| | | handleDelete2: function (id) { |
| | | if (!this.url.delete2) { |
| | | this.$message.error('请设置url.delete2屿§!') |
| | | return |
| | | } |
| | | var that = this |
| | | deleteAction(that.url.delete2, { roleId: this.currentRoleId, userId: id }).then((res) => { |
| | | if (res.success) { |
| | | that.$message.success(res.message) |
| | | that.loadData2() |
| | | } else { |
| | | that.$message.warning(res.message) |
| | | } |
| | | }) |
| | | }, |
| | | batchDel2: function () { |
| | | |
| | | if (!this.url.deleteBatch2) { |
| | | this.$message.error('请设置url.deleteBatch2屿§!') |
| | | return |
| | | } |
| | | if (this.selectedRowKeys2.length <= 0) { |
| | | // this.$message.warning('è¯·éæ©ä¸æ¡è®°å½ï¼') |
| | | this.$notification.warning({ |
| | | message: 'æ¶æ¯', |
| | | description: "è¯·éæ©ä¸æ¡è®°å½" |
| | | }); |
| | | return |
| | | } else { |
| | | var ids = '' |
| | | for (var a = 0; a < this.selectedRowKeys2.length; a++) { |
| | | ids += this.selectedRowKeys2[a] + ',' |
| | | } |
| | | var that = this |
| | | deleteAction(that.url.delete2, { roleId: this.currentRoleId, userId: id }).then((res) => { |
| | | if (res.success) { |
| | | that.$message.success(res.message) |
| | | that.loadData2() |
| | | } else { |
| | | that.$message.warning(res.message) |
| | | console.log(this.currentDeptId) |
| | | this.$confirm({ |
| | | title: '确认å é¤', |
| | | content: 'æ¯å¦å é¤é䏿°æ®?', |
| | | onOk: function () { |
| | | deleteAction(that.url.deleteBatch2, { roleId: that.currentRoleId, userIds: ids }).then((res) => { |
| | | if (res.success) { |
| | | that.$message.success(res.message) |
| | | that.loadData2() |
| | | that.onClearSelected() |
| | | } else { |
| | | that.$message.warning(res.message) |
| | | } |
| | | }) |
| | | } |
| | | }) |
| | | }, |
| | | batchDel2: function() { |
| | | } |
| | | }, |
| | | selectOK(data) { |
| | | let params = {} |
| | | params.roleId = this.currentRoleId |
| | | params.userIdList = [] |
| | | for (var a = 0; a < data.length; a++) { |
| | | params.userIdList.push(data[a]) |
| | | } |
| | | console.log(params) |
| | | postAction(this.url.addUserRole, params).then((res) => { |
| | | if (res.success) { |
| | | this.loadData2() |
| | | this.$message.success(res.message) |
| | | } else { |
| | | this.$message.warning(res.message) |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | if (!this.url.deleteBatch2) { |
| | | this.$message.error('请设置url.deleteBatch2屿§!') |
| | | return |
| | | } |
| | | if (this.selectedRowKeys2.length <= 0) { |
| | | // this.$message.warning('è¯·éæ©ä¸æ¡è®°å½ï¼') |
| | | this.$notification.warning({ |
| | | message:'æ¶æ¯', |
| | | description:"è¯·éæ©ä¸æ¡è®°å½" |
| | | }); |
| | | return |
| | | } else { |
| | | var ids = '' |
| | | for (var a = 0; a < this.selectedRowKeys2.length; a++) { |
| | | ids += this.selectedRowKeys2[a] + ',' |
| | | } |
| | | var that = this |
| | | console.log(this.currentDeptId) |
| | | this.$confirm({ |
| | | title: '确认å é¤', |
| | | content: 'æ¯å¦å é¤é䏿°æ®?', |
| | | onOk: function() { |
| | | deleteAction(that.url.deleteBatch2, { roleId: that.currentRoleId, userIds: ids }).then((res) => { |
| | | if (res.success) { |
| | | that.$message.success(res.message) |
| | | that.loadData2() |
| | | that.onClearSelected() |
| | | } else { |
| | | that.$message.warning(res.message) |
| | | } |
| | | }) |
| | | } |
| | | }) |
| | | } |
| | | }, |
| | | selectOK(data) { |
| | | let params = {} |
| | | params.roleId = this.currentRoleId |
| | | params.userIdList = [] |
| | | for (var a = 0; a < data.length; a++) { |
| | | params.userIdList.push(data[a]) |
| | | } |
| | | console.log(params) |
| | | postAction(this.url.addUserRole, params).then((res) => { |
| | | if (res.success) { |
| | | this.loadData2() |
| | | this.$message.success(res.message) |
| | | } else { |
| | | this.$message.warning(res.message) |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | handleAddUserRole() { |
| | | if (this.currentRoleId == '') { |
| | | this.$message.error('è¯·éæ©ä¸ä¸ªè§è²!') |
| | | } else { |
| | | this.$refs.selectUserModal.visible = true |
| | | } |
| | | }, |
| | | handleOpen(record) { |
| | | this.rightcolval = 1 |
| | | this.selectedRowKeys1 = [record.id] |
| | | this.model1 = Object.assign({}, record) |
| | | this.currentRoleId = record.id |
| | | this.onClearSelected2() |
| | | this.loadData2() |
| | | }, |
| | | /*handleEdit: function(record) { |
| | | if (this.currentRoleId == '') { |
| | | this.$message.error('è¯·éæ©ä¸ä¸ªè§è²!') |
| | | } else { |
| | | this.$refs.modalForm.edit(record) |
| | | this.$refs.modalForm.title = 'ç¼è¾' |
| | | } |
| | | },*/ |
| | | searchQuery2() { |
| | | this.loadData2(1) |
| | | }, |
| | | searchReset2() { |
| | | this.queryParam2 = {} |
| | | this.loadData2(1) |
| | | }, |
| | | handleTableChange2(pagination, filters, sorter) { |
| | | //å页ãæåºãçéååæ¶è§¦å |
| | | //TODO çé |
| | | if (Object.keys(sorter).length > 0) { |
| | | this.isorter2.column = sorter.field |
| | | this.isorter2.order = 'ascend' == sorter.order ? 'asc' : 'desc' |
| | | } |
| | | this.ipagination2 = pagination |
| | | this.loadData2() |
| | | }, |
| | | hideUserList(){ |
| | | //this.rightcolval = 0 |
| | | this.selectedRowKeys1 = [] |
| | | }, |
| | | handlePerssion(roleId){ |
| | | this.$refs.modalUserRole.show(roleId); |
| | | }, |
| | | } |
| | | handleAddUserRole() { |
| | | if (this.currentRoleId == '') { |
| | | this.$message.error('è¯·éæ©ä¸ä¸ªè§è²!') |
| | | } else { |
| | | this.$refs.selectUserModal.visible = true |
| | | } |
| | | }, |
| | | handleOpen(record) { |
| | | this.rightcolval = 1 |
| | | this.selectedRowKeys1 = [record.id] |
| | | this.model1 = Object.assign({}, record) |
| | | this.currentRoleId = record.id |
| | | this.onClearSelected2() |
| | | this.loadData2() |
| | | }, |
| | | /*handleEdit: function(record) { |
| | | if (this.currentRoleId == '') { |
| | | this.$message.error('è¯·éæ©ä¸ä¸ªè§è²!') |
| | | } else { |
| | | this.$refs.modalForm.edit(record) |
| | | this.$refs.modalForm.title = 'ç¼è¾' |
| | | } |
| | | },*/ |
| | | searchQuery2() { |
| | | this.loadData2(1) |
| | | }, |
| | | searchReset2() { |
| | | this.queryParam2 = {} |
| | | this.loadData2(1) |
| | | }, |
| | | handleTableChange2(pagination, filters, sorter) { |
| | | //å页ãæåºãçéååæ¶è§¦å |
| | | //TODO çé |
| | | if (Object.keys(sorter).length > 0) { |
| | | this.isorter2.column = sorter.field |
| | | this.isorter2.order = 'ascend' == sorter.order ? 'asc' : 'desc' |
| | | } |
| | | this.ipagination2 = pagination |
| | | this.loadData2() |
| | | }, |
| | | hideUserList() { |
| | | //this.rightcolval = 0 |
| | | this.selectedRowKeys1 = [] |
| | | }, |
| | | handlePerssion(roleId) { |
| | | this.$refs.modalUserRole.show(roleId); |
| | | }, |
| | | } |
| | | } |
| | | </script> |
| | | <style scoped> |
| | | /** Buttonæé®é´è· */ |
| | | .ant-btn { |
| | | margin-left: 8px |
| | | } |
| | | /** Buttonæé®é´è· */ |
| | | .ant-btn { |
| | | margin-left: 8px; |
| | | } |
| | | </style> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <a-modal |
| | | :title="title" |
| | | :width="650" |
| | | :visible="visible" |
| | | :maskClosable="false" |
| | | :confirmLoading="confirmLoading" |
| | | @ok="handleOk" |
| | | cancelText="å
³é" |
| | | @cancel="handleCancel" |
| | | > |
| | | <a-form> |
| | | <a-form-item label='ææ¥æçæé'> |
| | | <a-tree |
| | | checkable |
| | | @check="onCheck" |
| | | :checkedKeys="checkedKeys" |
| | | :treeData="treeData" |
| | | @expand="onExpand" |
| | | @select="onTreeNodeSelect" |
| | | :selectedKeys="selectedKeys" |
| | | :expandedKeys="expandedKeysss" |
| | | :checkStrictly="checkStrictly" |
| | | > |
| | | <span |
| | | slot="hasDatarule" |
| | | slot-scope="{slotTitle,ruleFlag}" |
| | | > |
| | | {{ slotTitle }}<a-icon |
| | | v-if="ruleFlag" |
| | | type="align-left" |
| | | style="margin-left:5px;color: red;" |
| | | ></a-icon> |
| | | </span> |
| | | </a-tree> |
| | | </a-form-item> |
| | | </a-form> |
| | | |
| | | <div class="drawer-bootom-button"> |
| | | <a-dropdown |
| | | style="float: left" |
| | | :trigger="['click']" |
| | | placement="topCenter" |
| | | > |
| | | <a-menu slot="overlay"> |
| | | <a-menu-item |
| | | key="1" |
| | | @click="switchCheckStrictly(1)" |
| | | >ç¶åå
³è</a-menu-item> |
| | | <a-menu-item |
| | | key="2" |
| | | @click="switchCheckStrictly(2)" |
| | | >åæ¶å
³è</a-menu-item> |
| | | <a-menu-item |
| | | key="3" |
| | | @click="checkALL" |
| | | >å
¨é¨å¾é</a-menu-item> |
| | | <a-menu-item |
| | | key="4" |
| | | @click="cancelCheckALL" |
| | | >åæ¶å
¨é</a-menu-item> |
| | | <a-menu-item |
| | | key="5" |
| | | @click="expandAll" |
| | | >å±å¼ææ</a-menu-item> |
| | | <a-menu-item |
| | | key="6" |
| | | @click="closeAll" |
| | | >åå¹¶ææ</a-menu-item> |
| | | </a-menu> |
| | | <a-button> |
| | | æ æä½ <a-icon type="up" /> |
| | | </a-button> |
| | | </a-dropdown> |
| | | <a-popconfirm |
| | | title="ç¡®å®æ¾å¼ç¼è¾ï¼" |
| | | @confirm="close" |
| | | okText="ç¡®å®" |
| | | cancelText="åæ¶" |
| | | > |
| | | <a-button style="margin-right: .8rem">åæ¶</a-button> |
| | | </a-popconfirm> |
| | | </div> |
| | | |
| | | <template slot="footer"> |
| | | <a-button |
| | | @click="handleSubmit(false)" |
| | | type="primary" |
| | | :loading="loading" |
| | | ghost |
| | | style="margin-right: 0.8rem" |
| | | >ä»
ä¿å</a-button> |
| | | <a-button |
| | | @click="handleSubmit(true)" |
| | | type="primary" |
| | | :loading="loading" |
| | | >ä¿åå¹¶å
³é</a-button> |
| | | </template> |
| | | <role-datarule-modal ref="datarule"></role-datarule-modal> |
| | | </a-modal> |
| | | |
| | | </template> |
| | | |
| | | <script> |
| | | import { queryTreeListForRole, queryRolePermission, saveRolePermission } from '@/api/api' |
| | | import RoleDataruleModal from './RoleDataruleModal.vue' |
| | | |
| | | export default { |
| | | name: "RoleModal", |
| | | components: { |
| | | RoleDataruleModal |
| | | }, |
| | | data() { |
| | | return { |
| | | roleId: "", |
| | | treeData: [], |
| | | defaultCheckedKeys: [], |
| | | checkedKeys: [], |
| | | expandedKeysss: [], |
| | | allTreeKeys: [], |
| | | autoExpandParent: true, |
| | | checkStrictly: true, |
| | | title: "è§è²æéé
ç½®", |
| | | visible: false, |
| | | loading: false, |
| | | selectedKeys: [] |
| | | } |
| | | }, |
| | | methods: { |
| | | onTreeNodeSelect(id) { |
| | | if (id && id.length > 0) { |
| | | this.selectedKeys = id |
| | | } |
| | | this.$refs.datarule.show(this.selectedKeys[0], this.roleId) |
| | | }, |
| | | onCheck(o) { |
| | | if (this.checkStrictly) { |
| | | this.checkedKeys = o.checked; |
| | | } else { |
| | | this.checkedKeys = o |
| | | } |
| | | }, |
| | | show(roleId) { |
| | | this.roleId = roleId |
| | | this.visible = true; |
| | | }, |
| | | close() { |
| | | this.reset() |
| | | this.$emit('close'); |
| | | this.visible = false; |
| | | }, |
| | | onExpand(expandedKeys) { |
| | | this.expandedKeysss = expandedKeys; |
| | | this.autoExpandParent = false |
| | | }, |
| | | reset() { |
| | | this.expandedKeysss = [] |
| | | this.checkedKeys = [] |
| | | this.defaultCheckedKeys = [] |
| | | this.loading = false |
| | | }, |
| | | expandAll() { |
| | | this.expandedKeysss = this.allTreeKeys |
| | | }, |
| | | closeAll() { |
| | | this.expandedKeysss = [] |
| | | }, |
| | | checkALL() { |
| | | this.checkedKeys = this.allTreeKeys |
| | | }, |
| | | cancelCheckALL() { |
| | | //this.checkedKeys = this.defaultCheckedKeys |
| | | this.checkedKeys = [] |
| | | }, |
| | | switchCheckStrictly(v) { |
| | | if (v == 1) { |
| | | this.checkStrictly = false |
| | | } else if (v == 2) { |
| | | this.checkStrictly = true |
| | | } |
| | | }, |
| | | handleCancel() { |
| | | this.close() |
| | | }, |
| | | handleSubmit(exit) { |
| | | let that = this; |
| | | let params = { |
| | | roleId: that.roleId, |
| | | permissionIds: that.checkedKeys.join(","), |
| | | lastpermissionIds: that.defaultCheckedKeys.join(","), |
| | | }; |
| | | that.loading = true; |
| | | console.log("请æ±åæ°ï¼", params); |
| | | saveRolePermission(params).then((res) => { |
| | | if (res.success) { |
| | | that.$message.success(res.message); |
| | | that.loading = false; |
| | | if (exit) { |
| | | that.close() |
| | | } |
| | | } else { |
| | | that.$message.error(res.message); |
| | | that.loading = false; |
| | | if (exit) { |
| | | that.close() |
| | | } |
| | | } |
| | | this.loadData(); |
| | | }) |
| | | }, |
| | | loadData() { |
| | | queryTreeListForRole().then((res) => { |
| | | this.treeData = res.result.treeList |
| | | this.allTreeKeys = res.result.ids |
| | | queryRolePermission({ roleId: this.roleId }).then((res) => { |
| | | this.checkedKeys = [...res.result]; |
| | | this.defaultCheckedKeys = [...res.result]; |
| | | this.expandedKeysss = this.allTreeKeys; |
| | | console.log(this.defaultCheckedKeys) |
| | | }) |
| | | }) |
| | | } |
| | | }, |
| | | watch: { |
| | | visible() { |
| | | if (this.visible) { |
| | | this.loadData(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | <style lang="less" scoped> |
| | | .drawer-bootom-button { |
| | | position: absolute; |
| | | bottom: 0; |
| | | width: 100%; |
| | | border-top: 1px solid #e8e8e8; |
| | | padding: 10px 16px; |
| | | text-align: right; |
| | | left: 0; |
| | | background: #fff; |
| | | border-radius: 0 0 2px 2px; |
| | | } |
| | | </style> |