|
|
<template> <div class="mod-config"> <el-form :inline="true" label-position="top" :model="searchData" > <el-form-item :label="'计划编码'"> <el-input v-model="searchData.planID" style="width: 120px"></el-input> </el-form-item> <el-form-item :label="'计划描述'"> <el-input v-model="searchData.planDesc" style="width: 120px"></el-input> </el-form-item> <el-form-item :label="'设备编码'"> <el-input v-model="searchData.objectID" style="width: 120px"></el-input> </el-form-item> <el-form-item :label="'计划开始日期:'"> <el-date-picker style="width: 120px" v-model="searchData.startDate" type="date" value-format="yyyy-MM-dd" placeholder="选择日期"> </el-date-picker> </el-form-item> <el-form-item style="margin-top: 23px;"> <laber style="margin-left: -9px;font-size: 19px">➞</laber> </el-form-item> <el-form-item :label="' '"> <el-date-picker style="width: 120px" v-model="searchData.endDate" type="date" value-format="yyyy-MM-dd" placeholder="选择日期"> </el-date-picker> </el-form-item> <el-form-item :label="'状态'"> <el-select filterable v-model="searchData.status" style="width: 120px"> <el-option label="全部" value=""></el-option> <el-option label="已计划" value="已计划"></el-option> <el-option label="进行中" value="进行中"></el-option> <el-option label="已结束" value="已结束"></el-option> </el-select> </el-form-item> <el-form-item :label="' '"> <el-button @click="getDataList()">查询</el-button> <el-button type="primary" @click="addModal()">新增计划</el-button> <!-- <el-button type="danger" @click="deletePlan()" :disabled="dataListSelections.length <= 0">批量删除</el-button>--> </el-form-item> </el-form> <el-table :height="height" :data="dataList" border v-loading="dataListLoading"
style="width: 100%;"> <!-- <el-table-column--> <!-- type="selection"--> <!-- header-align="center"--> <!-- align="center"--> <!-- width="50">--> <!-- </el-table-column>--> <el-table-column v-for="(item,index) in columnList" :key="index" :sortable="item.columnSortable" :prop="item.columnProp" :header-align="item.headerAlign" :show-overflow-tooltip="item.showOverflowTooltip" :align="item.align" :fixed="item.fixed==''?false:item.fixed" :min-width="item.columnWidth" :label="item.columnLabel"> <template slot-scope="scope"> <span v-if="!item.columnHidden"> {{ scope.row[item.columnProp] }}</span> <span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" style="width: 100px; height: 80px"/></span> </template> </el-table-column> <el-table-column fixed="right" header-align="center" align="center" width="160" label="操作"> <template slot-scope="scope"> <a type="text" size="small" v-if="scope.row.status=='已计划'" @click="createOrder(scope.row)">下达</a> <a type="text" size="small" @click="updateModal(scope.row)">修改</a> <a type="text" size="small" v-if="scope.row.status!='进行中'" @click="deletePlan(scope.row)">删除</a> <a type="text" size="small" @click="itemModal(scope.row)">计划项目</a> </template> </el-table-column> </el-table> <el-pagination @size-change="sizeChangeHandle" @current-change="currentChangeHandle" :current-page="pageIndex" :page-sizes="[20, 50, 100, 1000]" :page-size="pageSize" :total="totalPage" layout="total, sizes, prev, pager, next, jumper"> </el-pagination>
<el-dialog title="点检计划" :close-on-click-modal="false" v-drag :visible.sync="modalFlag" width="570px"> <el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;"> <el-form-item label="计划编码:"> <el-input v-model="modalData.planID" disabled style="width: 120px"></el-input> </el-form-item> <el-form-item label="计划描述:"> <el-input v-model="modalData.planDesc" style="width: 120px"></el-input> </el-form-item> <el-form-item > <span slot="label" style="" @click="getBaseList(200)"><a herf="#">设备编码</a></span> <el-input v-model="modalData.objectID" :disabled="modalDisableFlag" @blur="objectIDBlur" style="width: 120px"></el-input> </el-form-item> <el-form-item label="设备名称:"> <el-input v-model="modalData.objectDesc" disabled style="width: 120px"></el-input> </el-form-item> </el-form> <el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: 0px;"> <el-form-item > <span slot="label" style="" @click="getBaseList(1031)"><a herf="#">点检模板</a></span> <el-input v-model="modalData.propertiesCode" @blur="modalCodeBlur" style="width: 120px"></el-input> </el-form-item> <el-form-item label="模板名称:"> <el-input v-model="modalData.propertiesDesc" disabled style="width: 120px"></el-input> </el-form-item> <el-form-item label="计划开始日期:"> <el-date-picker style="width: 120px" v-model="modalData.planStartDate" type="date" value-format="yyyy-MM-dd" placeholder="必选"> </el-date-picker> </el-form-item> <el-form-item label="计划结束日期:"> <el-date-picker style="width: 120px" v-model="modalData.planEndDate" type="date" value-format="yyyy-MM-dd" placeholder="可选"> </el-date-picker> </el-form-item> </el-form> <el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: 0px;"> <el-form-item > <span slot="label" style="" @click="getBaseList(201)"><a herf="#">默认机修人员</a></span> <el-input v-model="modalData.operator" style="width: 120px"></el-input> </el-form-item>
<el-form-item label="点检周期(天):"> <el-input v-model="modalData.planPeriod" type="number" onkeyup="value=value.replace(/^(0+)|[^\d]+/g,'')" style="width: 120px"></el-input> </el-form-item> <el-form-item label="备注:"> <el-input v-model="modalData.remark" style="width: 254px"></el-input> </el-form-item> </el-form>
<el-footer style="height:40px;margin-top: 10px;text-align:center"> <el-button type="primary" @click="saveData()">保存</el-button> <el-button type="primary" @click="modalFlag = false">关闭</el-button> </el-footer> </el-dialog>
<el-dialog title="点检项目清单" :close-on-click-modal="false" v-drag :visible.sync="detailModelFlag" width="830px"> <el-form :inline="true" label-position="top" @keyup.enter.native="getDataList()"> <el-form-item :label="'点检模板编码'"> <el-input v-model="detailData.codeNo" readonly style="width: 120px"></el-input> </el-form-item> <el-form-item :label="'点检模板名称'"> <el-input v-model="detailData.codeDesc" readonly style="width: 120px"></el-input> </el-form-item> <el-form-item :label="' '"><!-- <el-button type="primary" @click="addDetailModal()">新增</el-button>--> </el-form-item> </el-form> <el-table :height="300" :data="detailList" border v-loading="dataListLoading"
style="width: 100%;"> <el-table-column v-for="(item,index) in columnDetailList" :key="index" :sortable="item.columnSortable" :prop="item.columnProp" :header-align="item.headerAlign" :show-overflow-tooltip="item.showOverflowTooltip" :align="item.align" :fixed="item.fixed==''?false:item.fixed" :min-width="item.columnWidth" :label="item.columnLabel"> <template slot-scope="scope"> <span v-if="!item.columnHidden"> {{ scope.row[item.columnProp] }}</span> <span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" style="width: 100px; height: 80px"/></span> </template> </el-table-column> <el-table-column fixed="right" header-align="center" align="center" width="130" label="操作"> <template slot-scope="scope"> <a type="text" size="small" v-if="scope.row.valueChooseFlag=='Y'" @click="chooseModal(scope.row)">可选值</a> <a type="text" size="small" @click="updateItemModal(scope.row)">编辑</a> </template> </el-table-column> </el-table> <el-footer style="height:40px;margin-top: 20px;text-align:center"> <el-button type="primary" @click="detailModelFlag = false">关闭</el-button> </el-footer> </el-dialog> <el-dialog title="点检项目" :close-on-click-modal="false" v-drag :visible.sync="itemModalFlag" width="430px"> <el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;"> <el-form-item label="点检项目编码:"> <el-input v-model="itemModalData.itemNo" :disabled="itemModalDisableFlag" style="width: 120px"></el-input> </el-form-item> <el-form-item label="点检项目名称:"> <el-input v-model="itemModalData.itemDesc" disabled style="width: 120px"></el-input> </el-form-item> <el-form-item :label="'检测值类型'"> <el-select filterable v-model="itemModalData.valueTypeDb" style="width: 120px"> <el-option label="文本" value="T"></el-option> <el-option label="数字" value="N"></el-option> </el-select> </el-form-item> </el-form> <el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;"> <el-form-item label="点检方法说明:"> <el-input v-model="itemModalData.itemRemark" style="width: 254px"></el-input> </el-form-item> <el-form-item :label="'是否值可选'"> <el-select filterable v-model="itemModalData.valueChooseFlag" style="width: 120px"> <el-option label="是" value="Y"></el-option> <el-option label="否" value="N"></el-option> </el-select> </el-form-item> </el-form> <el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;"> <el-form-item label="参照值:"> <el-input v-model="itemModalData.defaultValue" style="width: 120px"></el-input> </el-form-item> <el-form-item label="最大值:"> <el-input v-model="itemModalData.maxValue" type="number" style="width: 120px"></el-input> </el-form-item> <el-form-item label="最小值:"> <el-input v-model="itemModalData.minValue" type="number" style="width: 120px"></el-input> </el-form-item> </el-form> <el-footer style="height:40px;margin-top: 20px;text-align:center"> <el-button type="primary" @click="itemSaveData()">保存</el-button> <el-button type="primary" @click="itemModalFlag = false">关闭</el-button> </el-footer> </el-dialog> <el-dialog title="可选值" :close-on-click-modal="false" v-drag :visible.sync="chooseModalFlag" width="430px"> <el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;"> <el-form-item label="点检项目名称:"> <el-input v-model="chooseModalData.itemDesc" disabled style="width: 120px"></el-input> </el-form-item> <el-form-item :label="'检测值类型'"> <el-select filterable v-model="chooseModalData.valueTypeDb" disabled style="width: 120px"> <el-option label="文本" value="T"></el-option> <el-option label="数字" value="N"></el-option> </el-select> </el-form-item> <el-form-item :label="' '"> <el-button type="primary" @click="addChooseModal()">新增</el-button> </el-form-item> </el-form> <el-table :height="300" :data="chooseTableData" border style="width: 100%"> <el-table-column prop="availableValue" header-align="center" align="left" min-width="200" label="属性值"> </el-table-column> <el-table-column prop="" header-align="center" align="center" min-width="100" label="操作"> <template slot-scope="scope"> <a type="text" size="small" @click="updateChooseModal(scope.row)">修改</a> <a type="text" size="small" @click="deleteItemAvailable(scope.row)">删除</a> </template> </el-table-column> </el-table> <el-footer style="height:40px;margin-top: 10px;text-align:center"> <el-button type="primary" @click="chooseModalFlag = false">关闭</el-button> </el-footer> </el-dialog> <el-dialog title="可选值维护" :close-on-click-modal="false" v-drag :visible.sync="itemAddModalFlag" width="215px" > <el-form :inline="true" label-position="top" style="margin-left: 22px;margin-top: -5px;" @submit.native.prevent> <el-form-item :label="'可选值:'"> <el-input v-model="itemData.availableValue" :type="itemFlag" style="width: 130px;"></el-input> </el-form-item> </el-form> <el-footer style="height:40px;margin-top: 20px;text-align:center"> <el-button type="primary" @click="saveItemAvailable()">保存</el-button> <el-button type="primary" @click="itemAddModalFlag = false">关闭</el-button> </el-footer> </el-dialog> <Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist>
</div></template>
<script> import { eamWorkPlanSearch, eamWorkPlanSave, eamWorkPlanEdit, eamWorkPlanDelete, searchPlanItems, updatePlanItems, searchPlanItemAvailable, savePlanItemAvailable, deletePlanItemAvailable, createEamWorkOrder, objectIDBlur, modalCodeBlur, } from "@/api/eam/eam.js" import Chooselist from '@/views/modules/common/Chooselist_eam' export default { components: { Chooselist }, watch: { searchData: { deep: true, handler: function (newV, oldV) { this.searchData.planID = this.searchData.planID.toUpperCase() this.searchData.objectID = this.searchData.objectID.toUpperCase() } },
modalData: { deep: true, handler: function (newV, oldV) { this.modalData.planID = this.modalData.planID.toUpperCase() this.modalData.objectID = this.modalData.objectID.toUpperCase() this.modalData.propertiesCode = this.modalData.propertiesCode.toUpperCase() this.modalData.operator = this.modalData.operator.toUpperCase() } }, detailData: { deep: true, handler: function (newV, oldV) { this.modalData.planID = this.modalData.planID.toUpperCase() this.modalData.itemNo = this.modalData.itemNo.toUpperCase() this.modalData.codeNo = this.modalData.codeNo.toUpperCase() } } }, data () { return { tagNo:'', searchData: { site: this.$store.state.user.site, planID: '', planDesc: '', objectID: '', status: '已计划', startDate: new Date(), endDate:'', functionType:'A', page: 1, limit: 10, }, pageIndex: 1, pageSize: 100, totalPage: 0, height: 200, dataList: [], dataListLoading: false, dataListSelections: [], modalFlag:false, modalDisableFlag:false, modalData:{ flag:'', functionType:'A', site: this.$store.state.user.site, planID:'', planDesc:'', objectID:'', propertiesCode:'', propertiesDesc:'', operator:'', planPeriod:'', status:'', planStartDate:'', planEndDate:'', userId:'', remark:'',
},
// 展示列集
columnList: [ { userId: this.$store.state.user.name, functionId: 101013, serialNumber: '101013TableSite', tableId: "101013Table", tableName: "点检计划表", columnProp: 'site', headerAlign: "center", align: "left", columnLabel: '工厂编码', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 80, }, { userId: this.$store.state.user.name, functionId: 101013, serialNumber: '101013TablePlanID', tableId: "101013Table", tableName: "点检计划表", columnProp: 'planID', headerAlign: "center", align: "left", columnLabel: '计划编码', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 100, }, { userId: this.$store.state.user.name, functionId: 101013, serialNumber: '101013TablePlanDesc', tableId: "101013Table", tableName: "点检计划表", columnProp: 'planDesc', headerAlign: "center", align: "left", columnLabel: '计划描述', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 140, }, { userId: this.$store.state.user.name, functionId: 101013, serialNumber: '101013TableObjectID', tableId: "101013Table", tableName: "点检计划表", columnProp: 'objectID', headerAlign: "center", align: "left", columnLabel: '设备编码', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 100, }, { userId: this.$store.state.user.name, functionId: 101013, serialNumber: '101013TablePropertiesCode', tableId: "101013Table", tableName: "点检计划表", columnProp: 'propertiesCode', headerAlign: "center", align: "left", columnLabel: '点检模板编码', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 100, }, { userId: this.$store.state.user.name, functionId: 101013, serialNumber: '101013TableStatus', tableId: "101013Table", tableName: "点检计划表", columnProp: 'status', headerAlign: "center", align: "left", columnLabel: '状态', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 70, }, { userId: this.$store.state.user.name, functionId: 101013, serialNumber: '101013TablePlanStartDate', tableId: "101013Table", tableName: "点检计划表", columnProp: 'planStartDate', headerAlign: "center", align: "left", columnLabel: '计划开始日期', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 140, }, { userId: this.$store.state.user.name, functionId: 101013, serialNumber: '101013TablePlanEndDate', tableId: "101013Table", tableName: "点检计划表", columnProp: 'planEndDate', headerAlign: "center", align: "left", columnLabel: '计划结束日期', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 140, }, { userId: this.$store.state.user.name, functionId: 101013, serialNumber: '101013TableNextWorkDate', tableId: "101013Table", tableName: "点检计划表", columnProp: 'nextWorkDate', headerAlign: "center", align: "left", columnLabel: '下次执行日期', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 140, }, { userId: this.$store.state.user.name, functionId: 101013, serialNumber: '101013TablePlanPeriod', tableId: "101013Table", tableName: "点检计划表", columnProp: 'planPeriod', headerAlign: "center", align: "right", columnLabel: '点检周期', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 80, }, { userId: this.$store.state.user.name, functionId: 101013, serialNumber: '101013TableCreatedDate', tableId: "101013Table", tableName: "点检计划表", columnProp: 'createdDate', headerAlign: "center", align: "left", columnLabel: '创建时间', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 140, },
{ userId: this.$store.state.user.name, functionId: 101013, serialNumber: '101013TableCreatedBy', tableId: "101013Table", tableName: "点检计划表", columnProp: 'createdBy', headerAlign: "center", align: "left", columnLabel: '创建人', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 80, }, { userId: this.$store.state.user.name, functionId: 101013, serialNumber: '101013TableRemark', tableId: "101013Table", tableName: "点检计划表", columnProp: 'remark', headerAlign: "center", align: "left", columnLabel: '备注', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 150, }, ], //项目清单
addDetailModalFlag:false, detailData:{ site:'', planID:'', codeNo:'', codeDesc:'', functionType:'A', itemNo:'', itemDesc:'', itemType:'A', userId:this.$store.state.user.name }, detailModelFlag:false, detailList: [], columnDetailList: [ { userId: this.$store.state.user.name, functionId: 101009, serialNumber: '101009Table2EamPropertiesItemID', tableId: "101009Table2", tableName: "点检项目表", columnProp: 'itemNo', headerAlign: "center", align: "left", columnLabel: '点检项目编码', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 90, }, { userId: this.$store.state.user.name, functionId: 101009, serialNumber: '101009Table2EamPropertiesItemDesc', tableId: "101009Table2", tableName: "点检项目表", columnProp: 'itemDesc', headerAlign: "center", align: "left", columnLabel: '点检项目名称', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 90, }, { userId: this.$store.state.user.name, functionId: 101009, serialNumber: '101009Table2EamPropertiesItemRemark', tableId: "101009Table2", tableName: "点检项目表", columnProp: 'itemRemark', headerAlign: "center", align: "left", columnLabel: '点检方法说明', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 120, }, { userId: this.$store.state.user.name, functionId: 101009, serialNumber: '101009Table2ValueType', tableId: "101009Table2", tableName: "点检项目表", columnProp: 'valueType', headerAlign: "center", align: "left", columnLabel: '检测值类型', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 70, }, { userId: this.$store.state.user.name, functionId: 101009, serialNumber: '101009Table2DefaultValue', tableId: "101009Table2", tableName: "点检项目表", columnProp: 'defaultValue', headerAlign: "center", align: "left", columnLabel: '参照值', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 70, }, { userId: this.$store.state.user.name, functionId: 101009, serialNumber: '101009Table2MaxValue', tableId: "101009Table2", tableName: "点检项目表", columnProp: 'maxValue', headerAlign: "center", align: "left", columnLabel: '最大值', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 70, }, { userId: this.$store.state.user.name, functionId: 101009, serialNumber: '101009Table2MinValue', tableId: "101009Table2", tableName: "点检项目表", columnProp: 'minValue', headerAlign: "center", align: "left", columnLabel: '最小值', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 70, }, { userId: this.$store.state.user.name, functionId: 101009, serialNumber: '101009TableValueChooseFlag', tableId: "101009Table", tableName: "common", columnProp: 'valueChooseFlag', headerAlign: "center", align: "left", columnLabel: '是否值可选', columnHidden: false, columnImage: false, columnSortable: false, sortLv: 0, status: true, fixed: '', columnWidth: 70, }, ],
itemModalData:{ site:'', planID:'', flag:'', itemNo:'', itemDesc:'', valueTypeDb:'', defaultValue:'', valueChooseFlag:'', createdBy:this.$store.state.user.name, maxValue:'', minValue:'', itemRemark:'', itemType:'A', }, itemModalFlag:false, itemModalDisableFlag:false,
itemFlag:'text', chooseModalFlag:false, chooseModalData:{ site:'', planID:'', itemNo: '', itemDesc: '', itemType:'A', valueTypeDb:'', }, chooseTableData:[], itemData:{ site:'', planID:'', itemNo:'', valueNo:'', availableValue:'', itemType:'A', createdBy: this.$store.state.user.name }, itemAddModalFlag:false, } }, mounted () { this.$nextTick(() => { this.height = window.innerHeight - 210 }) }, created () { this.getDataList() }, methods: { // 获取基础数据列表S
getBaseList (val,type) { this.tagNo = val this.$nextTick(() => { let strVal = '' if (val === 200 && this.modalDisableFlag!=true) { strVal = this.modalData.objectID this.$refs.baseList.init(val, strVal) } if (val === 1031) { strVal = this.modalData.propertiesCode this.$refs.baseList.init(val, strVal) } if (val === 201) { strVal = this.modalData.operator this.$refs.baseList.init(val, strVal) }
}) }, /* 列表方法的回调 */ getBaseData (val) { if (this.tagNo === 200) { this.modalData.objectID = val.ObjectID this.modalData.objectDesc = val.ObjectDesc } if (this.tagNo === 1031) { this.modalData.propertiesCode = val.Code_No this.modalData.propertiesDesc = val.Code_Desc } if (this.tagNo === 201) { this.modalData.operator = val.AdminID } }, // 获取数据列表
getDataList () { this.searchData.limit = this.pageSize this.searchData.page = this.pageIndex eamWorkPlanSearch(this.searchData).then(({data}) => { if (data.code == 0) { this.dataList = data.page.list this.pageIndex = data.page.currPage this.pageSize = data.page.pageSize this.totalPage = data.page.totalCount } this.dataListLoading = false }) }, // 每页数
sizeChangeHandle (val) { this.pageSize = val this.pageIndex = 1 this.getDataList() }, // 当前页
currentChangeHandle (val) { this.pageIndex = val this.getDataList() }, // 多选
selectionChangeHandle (val) { this.dataListSelections = val }, addModal(){ this.modalData={ flag:'1', functionType:'A', site: this.$store.state.user.site, planID:'', planDesc:'', objectID:'', objectDesc:'', propertiesCode:'', propertiesDesc:'', operator:'', planPeriod:'', status:'', planStartDate:'', planEndDate:'', userId:this.$store.state.user.name, remark:'', }; this.modalDisableFlag=false; this.modalFlag=true; }, updateModal(row){ this.modalData={ flag:'2', functionType:'A', site:row.site, planID:row.planID, planDesc:row.planDesc, objectID:row.objectID, objectDesc:row.objectID, propertiesCode:row.propertiesCode, propertiesDesc:row.codeDesc, operator:row.operator, planPeriod:row.planPeriod, status:row.status, planStartDate:row.planStartDate, planEndDate:row.planEndDate, userId:this.$store.state.user.name, remark:row.remark, }; this.modalDisableFlag=true; this.modalFlag=true; },
deletePlan (row) { this.$confirm(`是否删除这个点检计划?`, '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning'
}).then(() => { eamWorkPlanDelete(row).then(({data}) => { if (data && data.code ==0) { this.getDataList() this.$message({ message: '操作成功', type: 'success', duration: 1500, onClose: () => { } }) } else { this.$alert(data.msg, '错误', { confirmButtonText: '确定' }) } }) }).catch(() => { }) }, saveData(){ if (this.modalData.planDesc == '' || this.modalData.planDesc == null) { this.$alert('请输入计划描述 !', '错误', { confirmButtonText: '确定' }) return false } if (this.modalData.propertiesCode == '' || this.modalData.propertiesCode == null) { this.$alert('请选择点检模板!', '错误', { confirmButtonText: '确定' }) return false } if (this.modalData.planPeriod == '' || this.modalData.planPeriod == null) { this.$alert('选择点检周期!', '错误', { confirmButtonText: '确定' }) return false } if (this.modalData.planStartDate == '' || this.modalData.planStartDate == null) { this.$alert('请选择开始日期!', '错误', { confirmButtonText: '确定' }) return false } if (this.modalData.planStartDate < this.dayjs().format("YYYY-MM-DD")) { this.$alert('计划开始日期不能小于今天!', '错误', { confirmButtonText: '确定' }) return } if(this.modalData.flag=='1'){ eamWorkPlanSave(this.modalData).then(({data}) => { if (data && data.code === 0) { this.getDataList() this.modalFlag=false this.$message({ message: '操作成功', type: 'success', duration: 1500, onClose: () => { } }) } else { this.$alert(data.msg, '错误', { confirmButtonText: '确定' }) } }) }else { eamWorkPlanEdit(this.modalData).then(({data}) => { if (data && data.code === 0) { this.getDataList() this.modalFlag=false this.$message({ message: '操作成功', type: 'success', duration: 1500, onClose: () => { } }) } else { this.$alert(data.msg, '错误', { confirmButtonText: '确定' }) } }) } },
//----------项目清单----------------start
//打开项目清单
itemModal(row){ this.detailData.site=row.site this.detailData.planID=row.planID this.detailData.codeNo=row.propertiesCode this.detailData.codeDesc=row.codeDesc searchPlanItems(this.detailData).then(({data}) => { this.detailList = data.rows }) this.detailModelFlag=true; }, updateItemModal(row){ this.itemModalData={ flag:'2', site:row.site, planID:row.planID, itemNo:row.itemNo, itemDesc:row.itemDesc, valueTypeDb:row.valueTypeDb, defaultValue:row.defaultValue, valueChooseFlag:row.valueChooseFlag, createdBy:this.$store.state.user.name, maxValue:row.maxValue, minValue:row.minValue, itemRemark:row.itemRemark, itemType:'A',
}; this.itemModalDisableFlag=true; this.itemModalFlag=true; }, itemSaveData(){ if (this.itemModalData.itemNo == '' || this.itemModalData.itemNo == null) { this.$alert('请输入点检项目编码!', '错误', { confirmButtonText: '确定' }) return false } if (this.itemModalData.itemDesc == '' || this.itemModalData.itemDesc == null) { this.$alert('请输入点检项目名称!', '错误', { confirmButtonText: '确定' }) return false }
if(this.itemModalData.flag=='1'){ // eamPropertiesItemSave(this.itemModalData).then(({data}) => {
// if (data && data.code == '0') {
// searchPlanItems(this.detailData).then(({data}) => {
// this.detailList = data.rows
// })
// this.itemModalFlag=false
// this.$message({
// message: '操作成功',
// type: 'success',
// duration: 1500,
// onClose: () => {
// }
// })
// } else {
// this.$alert(data.msg, '错误', {
// confirmButtonText: '确定'
// })
// }
// })
}else { updatePlanItems(this.itemModalData).then(({data}) => { if (data && data.code == '0') { searchPlanItems(this.detailData).then(({data}) => { this.detailList = data.rows }) this.itemModalFlag=false this.$message({ message: '操作成功', type: 'success', duration: 1500, onClose: () => { } }) } else { this.$alert(data.msg, '错误', { confirmButtonText: '确定' }) } }) } }, //----------项目清单----------------end
//----------项目可选值----------------start
chooseModal(row){ this.chooseModalData.site=row.site; this.chooseModalData.planID=row.planID; this.chooseModalData.itemNo=row.itemNo; this.chooseModalData.itemDesc=row.itemDesc; this.chooseModalData.valueTypeDb=row.valueTypeDb; searchPlanItemAvailable(this.chooseModalData).then(({data}) => { this.chooseTableData = data.rows }) this.chooseModalFlag=true; }, addChooseModal(){ this.itemFlag= this.chooseModalData.valueTypeDb=='T'?'text':'number'; this.itemData={ site:this.chooseModalData.site, planID:this.chooseModalData.planID, itemNo:this.chooseModalData.itemNo, valueNo:0, availableValue:'', itemType:'A', createdBy: this.$store.state.user.name } this.itemAddModalFlag=true; }, updateChooseModal(row){ this.itemFlag= this.chooseModalData.valueTypeDb=='T'?'text':'number'; this.itemData={ site:this.chooseModalData.site, planID:this.chooseModalData.planID, itemNo:this.chooseModalData.itemNo, valueNo:row.valueNo, availableValue:row.availableValue, itemType:'A', createdBy: this.$store.state.user.name } this.itemAddModalFlag=true; }, saveItemAvailable(){ if(this.itemData.availableValue==''||this.itemData.availableValue==null){ this.$alert("请输入可选值!",'错误', { confirmButtonText: '确定' }) return false; } savePlanItemAvailable(this.itemData).then(({data}) => { if (data && data.code == 0) { searchPlanItemAvailable(this.chooseModalData).then(({data}) => { this.chooseTableData = data.rows }) this.itemAddModalFlag=false this.$message({ message: '操作成功', type: 'success', duration: 1500, onClose: () => { } }) } else { this.$alert(data.msg, '错误', { confirmButtonText: '确定' }) } }) }, deleteItemAvailable(row){ this.$confirm(`是否删除这个可选值?`, '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning'
}).then(() => { deletePlanItemAvailable(row).then(({data}) => { if (data && data.code === 0) { searchPlanItemAvailable(this.chooseModalData).then(({data}) => { this.chooseTableData = data.rows }) this.$message({ message: '操作成功', type: 'success', duration: 1500, onClose: () => { } }) } else { this.$alert(data.msg, '错误', { confirmButtonText: '确定' }) } }) }).catch(() => { }) },
//----------项目可选值----------------end
createOrder(row){ if(row.planStartDate < this.dayjs().format("YYYY-MM-DD")){ this.$alert('计划开始日期小于今天!请修改开始日期', '错误', { confirmButtonText: '确定' }) return false } row.userId=this.$store.state.user.name this.$confirm(`是创建日期为`+row.planStartDate+`的点检工单?`, '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning'
}).then(() => { createEamWorkOrder(row).then(({data}) => { if (data && data.code ==0) { this.getDataList() this.$message({ message: '操作成功', type: 'success', duration: 1500, onClose: () => { } }) } else { this.$alert(data.msg, '错误', { confirmButtonText: '确定' }) } }) }).catch(() => { }) }, objectIDBlur(){ let inData={ site:this.$store.state.user.site, objectID:this.modalData.objectID } objectIDBlur(inData).then(({data}) => { if(data.rows.length>0){ this.modalData.objectDesc=data.rows[0].objectDesc }else { this.modalData.objectDesc='' } }) }, modalCodeBlur(){ let inData={ functionType:'A', codeNo:this.modalData.propertiesCode } modalCodeBlur(inData).then(({data}) => { if(data.rows.length>0){ this.modalData.propertiesDesc=data.rows[0].codeDesc }else { this.modalData.propertiesDesc='' } }) }, } }</script>
<style scoped>
</style>
|