| | |
| | | import Vue from 'vue' |
| | | import { ACCESS_TOKEN, TENANT_ID } from "@/store/mutation-types" |
| | | import store from '@/store' |
| | | import { buttonShowAuthFilter } from '@/utils/authFilter' |
| | | |
| | | export const JeecgListMixin = { |
| | | data(){ |
| | |
| | | } |
| | | }, |
| | | methods:{ |
| | | isShowAuth(code){ |
| | | return buttonShowAuthFilter(code); |
| | | }, |
| | | loadData(arg) { |
| | | if(!this.url.list){ |
| | | this.$message.error("请设置url.list属性!") |
| | |
| | | function substrPre(str,pre) { |
| | | return str.substr(pre.length); |
| | | } |
| | | /** |
| | | * 显示权限 |
| | | * @param {*} code |
| | | * @returns |
| | | */ |
| | | export function buttonShowAuthFilter(code) { |
| | | if(code){ |
| | | if(nodeShowAuth(code)){ |
| | | return true; |
| | | }else{ |
| | | return false; |
| | | } |
| | | }else{ |
| | | return false; |
| | | } |
| | | } |
| | | function nodeShowAuth(code){ |
| | | let authList = JSON.parse(sessionStorage.getItem(USER_AUTH) || "[]"); |
| | | for (let auth of authList) { |
| | | if(auth.action == code) { |
| | | return true; |
| | | } |
| | | } |
| | | return false; |
| | | } |
| | |
| | | <a-tab-pane tab='保养标准明细项' key="1"> |
| | | <div class="table-operator" style="margin:-16px"> |
| | | <eam-maintenance-standard-detail-list ref="standardDetailRef" :standardId="standardId" |
| | | :selectionRows="selectionRows"/> |
| | | :pageSelectionRow="selectionRows[0]"/> |
| | | </div> |
| | | </a-tab-pane> |
| | | |
| | |
| | | <!-- table区域-end --> |
| | | |
| | | <!-- 表单区域 --> |
| | | <eamMaintenanceStandard-modal ref="modalForm" @ok="modalFormOk"></eamMaintenanceStandard-modal> |
| | | <eamMaintenanceStandard-modal ref="modalForm" @ok="modalFormOk"/> |
| | | </a-card> |
| | | </template> |
| | | |
| | |
| | | <a-input-search @search="onSearch" style="width:100%;margin-top: 10px" placeholder="请输入车间名称"/> |
| | | <!-- 树--> |
| | | <a-col :md="10" :sm="24"> |
| | | <a-tree |
| | | checkable |
| | | multiple |
| | | @select="onSelect" |
| | | @check="onCheck" |
| | | :selectedKeys="selectedKeys" |
| | | :checkedKeys="checkedKeys" |
| | | :treeData="departTree" |
| | | :checkStrictly="checkStrictly" |
| | | :expandedKeys="expandedKeys" |
| | | :autoExpandParent="autoExpandParent" |
| | | @expand="onExpand"/> |
| | | <a-tree checkable multiple @select="onSelect" @check="onCheck" :selectedKeys="selectedKeys" |
| | | :checkedKeys="checkedKeys" :treeData="departTree" :checkStrictly="checkStrictly" |
| | | :expandedKeys="expandedKeys" :autoExpandParent="autoExpandParent" @expand="onExpand"/> |
| | | </a-col> |
| | | </div> |
| | | </a-card> |
| | |
| | | <template v-if="selectedKeys.length>0"> |
| | | <a-form-model ref="form" :model="model" :rules="validatorRules" :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol"> |
| | | <a-form-model-item label="机构编码"> |
| | | <a-form-model-item label="机构编码" prop="factoryCode"> |
| | | <a-input placeholder="请输入机构编码" v-model="model.factoryCode"/> |
| | | </a-form-model-item> |
| | | <a-form-model-item expandedKeys prop="factoryName" label="机构名称"> |
| | | <a-form-model-item prop="factoryName" label="机构名称"> |
| | | <a-input placeholder="请输入机构名称" v-model="model.factoryName"/> |
| | | </a-form-model-item> |
| | | <a-form-model-item expandedKeys label="上级车间"> |
| | |
| | | sm: { span: 16 } |
| | | }, |
| | | validatorRules: { |
| | | factoryName: [{ required: true, message: '请输入机构名称!', trigger: 'change' }] |
| | | factoryCode: [{ required: true, message: '请输入机构编号', trigger: 'change' }], |
| | | factoryName: [{ required: true, message: '请输入机构名称', trigger: 'change' }] |
| | | }, |
| | | url: { |
| | | getProductionTreeList: '/eam/BaseFactory/queryTreeList', |
| | |
| | | <a-input-search @search="onSearch" style="width:100%;margin-top: 10px" placeholder="请输入维修部门名称"/> |
| | | <!-- 树--> |
| | | <a-col :md="10" :sm="24"> |
| | | <a-tree |
| | | checkable |
| | | multiple |
| | | @select="onSelect" |
| | | @check="onCheck" |
| | | @rightClick="rightHandle" |
| | | :selectedKeys="selectedKeys" |
| | | :checkedKeys="checkedKeys" |
| | | :treeData="departTree" |
| | | :checkStrictly="checkStrictly" |
| | | :expandedKeys="iExpandedKeys" |
| | | :autoExpandParent="autoExpandParent" |
| | | <a-tree checkable multiple @select="onSelect" @check="onCheck" @rightClick="rightHandle" |
| | | :selectedKeys="selectedKeys" :checkedKeys="checkedKeys" :treeData="departTree" |
| | | :checkStrictly="checkStrictly" :expandedKeys="iExpandedKeys" :autoExpandParent="autoExpandParent" |
| | | @expand="onExpand"/> |
| | | </a-col> |
| | | </div> |
| | |
| | | <a-card :bordered="false" v-if="selectedKeys.length>0"> |
| | | <a-form-model ref="form" :model="model" :rules="validatorRules"> |
| | | <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="departCode" label="维修部门编号"> |
| | | <a-input placeholder="请输入产线/维修部门编号" v-model="model.departCode"/> |
| | | <a-input placeholder="请输入维修部门/班组编号" v-model="model.departCode"/> |
| | | </a-form-model-item> |
| | | <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="departName" label="维修部门名称"> |
| | | <a-input placeholder="请输入产线/维修部门名称" v-model="model.departName"/> |
| | | <a-input placeholder="请输入维修部门/班组名称" v-model="model.departName"/> |
| | | </a-form-model-item> |
| | | <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="上级维修部门"> |
| | | <a-tree-select |
| | | style="width:100%" |
| | | :dropdownStyle="{maxHeight:'200px',overflow:'auto'}" |
| | | :treeData="treeData" |
| | | :disabled="disable" |
| | | v-model="model.parentId" |
| | | placeholder="无"> |
| | | </a-tree-select> |
| | | <a-tree-select style="width:100%" :dropdownStyle="{maxHeight:'200px',overflow:'auto'}" |
| | | :treeData="treeData" :disabled="disable" v-model="model.parentId" |
| | | placeholder="无"/> |
| | | </a-form-model-item> |
| | | <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="排序"> |
| | | <a-input-number v-model="model.departOrder"/> |
| | |
| | | edges: [] |
| | | }, |
| | | validatorRules: { |
| | | departName: [{ required: true, message: '请输入产线/维修部门名称!' }] |
| | | departCode: [{ required: true, message: '请输入维修部门/班组编号' }], |
| | | departName: [{ required: true, message: '请输入维修部门/班组名称' }] |
| | | }, |
| | | url: { |
| | | delete: '/eam/eamBaseRepairDepart/delete', |
| | |
| | | <template> |
| | | <a-card :bordered="false"> |
| | | <!-- table区域-begin --> |
| | | <div> |
| | | <a-table |
| | | ref="detailTable" |
| | | size="middle" |
| | |
| | | class="j-table-force-nowrap" |
| | | @change="handleTableChange"> |
| | | </a-table> |
| | | </div> |
| | | <!-- table区域-end --> |
| | | |
| | | </a-card> |
| | | </template> |
| | | |
| | | <script> |
| | | import '@/assets/less/TableExpand.less' |
| | | import { JeecgListMixin } from '@/mixins/JeecgListMixin' |
| | | import { getAction } from '@api/manage' |
| | | |
| | |
| | | required: true, |
| | | default: '-1' |
| | | }, |
| | | selectionRows:{} |
| | | pageSelectionRow: { |
| | | type: Object, |
| | | default: () => { |
| | | } |
| | | } |
| | | }, |
| | | data() { |
| | | return { |
| | | description: '保养标准明细管理页面', |
| | | // 表头 |
| | | columns: [ |
| | | columns: [], |
| | | defaultColumns: [ |
| | | { |
| | | title: '序号', |
| | | align: 'center', |
| | |
| | | title: '保养项分类', |
| | | align: 'center', |
| | | dataIndex: 'itemCategory_dictText', |
| | | ellipsis: true |
| | | width: 150 |
| | | }, |
| | | { |
| | | title: '保养项目', |
| | |
| | | this.clearList() |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | created() { |
| | | pageSelectionRow: { |
| | | handler(val) { |
| | | if (val) { |
| | | if (val.maintenanceCategory != 'THIRD_MAINTENANCE') this.columns = [...this.defaultColumns.filter(item => item.dataIndex != 'itemPart')] |
| | | else this.columns = [...this.defaultColumns.filter(item => item.dataIndex != 'itemCategory_dictText')] |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | computed: {}, |
| | | methods: { |
| | |
| | | } |
| | | } |
| | | </script> |
| | | <style scoped> |
| | | @import '~@assets/less/common.less'; |
| | | </style> |
| | |
| | | @cancel="handleCancel" |
| | | cancelText="关闭"> |
| | | <a-form-model ref="form" :model="model" :rules="validatorRules" :labelCol="labelCol" :wrapperCol="wrapperCol"> |
| | | <a-form-model-item label="机构编码"> |
| | | <a-form-model-item label="机构编码" hasFeedback prop="factoryCode"> |
| | | <a-input placeholder="请输入机构编码" v-model="model.factoryCode"/> |
| | | </a-form-model-item> |
| | | <a-form-model-item label="机构名称" hasFeedback prop="factoryName"> |
| | |
| | | }, |
| | | confirmLoading: false, |
| | | validatorRules: { |
| | | factoryName: [{ required: true, message: '请输入机构名称!', trigger: 'change' }], |
| | | factoryCategory: [{ required: true, message: '请选择机构类型!', trigger: 'change' }] |
| | | factoryCode: [{ required: true, message: '请输入机构编码', trigger: 'change' }], |
| | | factoryName: [{ required: true, message: '请输入机构名称', trigger: 'change' }], |
| | | factoryCategory: [{ required: true, message: '请选择机构类型', trigger: 'change' }] |
| | | }, |
| | | url: { |
| | | queryById: '/eam/BaseFactory/queryIdTree', |
| | |
| | | |
| | | <a-spin :spinning="confirmLoading"> |
| | | <a-form-model ref="form" :model="model" :rules="validatorRules"> |
| | | <a-form-model-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="维修部门/班组名称" |
| | | prop="departName" |
| | | :hidden="false" |
| | | <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="维修部门/班组编号" prop="departCode" |
| | | hasFeedback> |
| | | <a-input placeholder="请输入维修部门/班组编号" v-model="model.departCode"/> |
| | | </a-form-model-item> |
| | | <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="维修部门/班组名称" prop="departName" |
| | | hasFeedback > |
| | | <a-input id="departName" placeholder="请输入维修部门/班组名称" v-model="model.departName"/> |
| | | </a-form-model-item> |
| | |
| | | import { queryRepDepIdTree } from '@/api/api' |
| | | import pick from 'lodash.pick' |
| | | import ATextarea from 'ant-design-vue/es/input/TextArea' |
| | | |
| | | export default { |
| | | name: "EamRepairDepartModal", |
| | | name: 'EamRepairDepartModal', |
| | | components: { ATextarea }, |
| | | data () { |
| | | return { |
| | | departTree:[], |
| | | orgTypeData:[], |
| | | phoneWarning:'', |
| | | departName:"", |
| | | title:"操作", |
| | | departName: '', |
| | | title: '操作', |
| | | seen:false, |
| | | visible: false, |
| | | condition:true, |
| | |
| | | menuusing:true, |
| | | labelCol: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 5 }, |
| | | sm: { span: 5 } |
| | | }, |
| | | wrapperCol: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 16 }, |
| | | sm: { span: 16 } |
| | | }, |
| | | |
| | | confirmLoading: false, |
| | | validatorRules:{ |
| | | departName:[{ required: true, message: '请输入维修部门/班组名称!' }], |
| | | departCode: [{ required: true, message: '请输入维修部门/班组编号' }], |
| | | departName: [{ required: true, message: '请输入维修部门/班组名称' }] |
| | | }, |
| | | url: { |
| | | add: "/eam/eamBaseRepairDepart/add", |
| | | add: '/eam/eamBaseRepairDepart/add' |
| | | }, |
| | | dictDisabled:true, |
| | | dictDisabled: true |
| | | } |
| | | }, |
| | | created () { |
| | | }, |
| | | methods: { |
| | | loadTreeData(){ |
| | | var that = this; |
| | | var that = this |
| | | queryRepDepIdTree().then((res)=>{ |
| | | if(res.success){ |
| | | that.departTree = []; |
| | | that.departTree = [] |
| | | for (let i = 0; i < res.result.length; i++) { |
| | | let temp = res.result[i]; |
| | | that.departTree.push(temp); |
| | | let temp = res.result[i] |
| | | that.departTree.push(temp) |
| | | } |
| | | } |
| | | |
| | |
| | | }, |
| | | add (depart) { |
| | | if(depart){ |
| | | this.seen = false; |
| | | this.dictDisabled = false; |
| | | this.seen = false |
| | | this.dictDisabled = false |
| | | }else{ |
| | | this.seen = true; |
| | | this.dictDisabled = true; |
| | | this.seen = true |
| | | this.dictDisabled = true |
| | | } |
| | | this.edit(depart); |
| | | this.edit(depart) |
| | | }, |
| | | edit (record) { |
| | | this.visible = true; |
| | | this.visible = true |
| | | this.model = Object.assign({}, this.defaultModel, record) |
| | | this.loadTreeData(); |
| | | this.model.parentId = record!=null?record.toString():null; |
| | | this.loadTreeData() |
| | | this.model.parentId = record != null ? record.toString() : null |
| | | }, |
| | | close () { |
| | | this.$emit('close'); |
| | | this.disableSubmit = false; |
| | | this.visible = false; |
| | | this.$refs.form.resetFields(); |
| | | this.$emit('close') |
| | | this.disableSubmit = false |
| | | this.visible = false |
| | | this.$refs.form.resetFields() |
| | | }, |
| | | handleOk () { |
| | | const that = this; |
| | | const that = this |
| | | // 触发表单验证 |
| | | this.$refs.form.validate(valid => { |
| | | if (valid) { |
| | | that.confirmLoading = true; |
| | | httpAction(this.url.add,this.model,"post").then((res)=>{ |
| | | that.confirmLoading = true |
| | | httpAction(this.url.add, this.model, 'post').then((res) => { |
| | | if(res.success){ |
| | | // that.$message.success(res.message); |
| | | that.$notification.warning({ |
| | | message:'消息', |
| | | description:res.message |
| | | }); |
| | | that.loadTreeData(); |
| | | that.$emit('ok'); |
| | | }) |
| | | that.loadTreeData() |
| | | that.$emit('ok') |
| | | }else{ |
| | | // that.$message.warning(res.message); |
| | | that.$notification.warning({ |
| | | message:'消息', |
| | | description:res.message |
| | | }); |
| | | }) |
| | | } |
| | | }).finally(() => { |
| | | that.confirmLoading = false; |
| | | that.close(); |
| | | that.confirmLoading = false |
| | | that.close() |
| | | }) |
| | | |
| | | }else{ |
| | | return false; |
| | | return false |
| | | } |
| | | }) |
| | | }, |
| | | handleCancel () { |
| | | this.close() |
| | | }, |
| | | } |
| | | } |
| | | } |
| | | </script> |