Browse Source

2023-12-14 维修反馈增加“新增”功能

java8
fengyuan_yang 2 years ago
parent
commit
c974d59507
  1. 2
      src/api/eam/eam.js
  2. 233
      src/views/modules/eam/eamFeedBack.vue
  3. 2
      src/views/modules/eam/eamWorkPlanForCheck.vue

2
src/api/eam/eam.js

@ -167,7 +167,7 @@ export const saveDefectOrder= data => createAPI(`/pms/eam/saveDefectOrder`,'post
export const imageDelete= data => createAPI(`/pms/eam/imageDelete`,'post',data) export const imageDelete= data => createAPI(`/pms/eam/imageDelete`,'post',data)
export const getDeptList= data => createAPI(`/pms/eam/getDeptList`,'post',data) export const getDeptList= data => createAPI(`/pms/eam/getDeptList`,'post',data)
export const updateReportResult= data => createAPI(`/pms/eam/updateReportResult`,'post',data) export const updateReportResult= data => createAPI(`/pms/eam/updateReportResult`,'post',data)
export const saveEamGzBbData= data => createAPI(`/pms/eam/saveEamGzBbData`,'post',data)
//---------------快速添加------------------- //---------------快速添加-------------------
export const getItemLists= data => createAPI(`/pms/eam/getItemLists`,'post',data) export const getItemLists= data => createAPI(`/pms/eam/getItemLists`,'post',data)

233
src/views/modules/eam/eamFeedBack.vue

@ -1,10 +1,12 @@
<template> <template>
<div class="mod-config"> <div class="mod-config">
<div> <div>
<span @click="favoriteFunction()"> <span @click="favoriteFunction()">
<icon-svg :name="favorite?'xiangqufill':'xiangqu'" class="sl-svg"></icon-svg> <icon-svg :name="favorite?'xiangqufill':'xiangqu'" class="sl-svg"></icon-svg>
</span> </span>
</div> </div>
<el-form :inline="true" label-position="top" :model="searchData" @keyup.enter.native="getDataList()"> <el-form :inline="true" label-position="top" :model="searchData" @keyup.enter.native="getDataList()">
<el-form-item :label="'反馈单号'"> <el-form-item :label="'反馈单号'">
<el-input v-model="searchData.feedBackID" clearable style="width: 120px"></el-input> <el-input v-model="searchData.feedBackID" clearable style="width: 120px"></el-input>
@ -24,7 +26,7 @@
<el-option label="已取消" value="已取消"></el-option> <el-option label="已取消" value="已取消"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="'反馈日期:'">
<el-form-item :label="'故障发现日期'">
<el-date-picker <el-date-picker
style="width: 120px" style="width: 120px"
v-model="searchData.startDate" v-model="searchData.startDate"
@ -47,6 +49,7 @@
</el-form-item> </el-form-item>
<el-form-item :label="' '"> <el-form-item :label="' '">
<el-button @click="getDataList()">查询</el-button> <el-button @click="getDataList()">查询</el-button>
<el-button @click="saveModal()">新增</el-button>
<download-excel <download-excel
:fields="fields()" :fields="fields()"
:data="exportData" :data="exportData"
@ -63,6 +66,7 @@
</download-excel> </download-excel>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-table <el-table
:height="height" :height="height"
:data="dataList" :data="dataList"
@ -97,6 +101,7 @@
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-pagination <el-pagination
@size-change="sizeChangeHandle" @size-change="sizeChangeHandle"
@current-change="currentChangeHandle" @current-change="currentChangeHandle"
@ -107,6 +112,7 @@
layout="total, sizes, prev, pager, next, jumper"> layout="total, sizes, prev, pager, next, jumper">
</el-pagination> </el-pagination>
<!-- 下达 -->
<el-dialog title="下达维修工单" :close-on-click-modal="false" v-drag :visible.sync="modalFlag" width="570px"> <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 :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;">
<el-form-item label="计划编码:"> <el-form-item label="计划编码:">
@ -151,6 +157,53 @@
</el-footer> </el-footer>
</el-dialog> </el-dialog>
<!-- 新增 -->
<el-dialog title="设备故障报备" :close-on-click-modal="false" v-drag :visible.sync="saveModalFlag" width="500px">
<el-form :inline="true" label-position="top" :model="saveModalData" :rules="saveRules" style="margin-left: 7px;margin-top: -5px;">
<el-form-item prop="objectId" :rules="saveRules.objectId">
<span slot="label" @click="getBaseList(200)"><a href="#">设备编码</a></span>
<el-input v-model="saveModalData.objectID" style="width: 221px"></el-input>
</el-form-item>
<el-form-item label="设备名称" prop="objectDesc" :rules="saveRules.objectDesc">
<el-input v-model="saveModalData.objectDesc" disabled style="width: 221px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="saveModalData" :rules="saveRules" style="margin-left: 7px;margin-top: -5px;">
<el-form-item prop="defectId" :rules="saveRules.defectId">
<span slot="label" @click="getBaseList(1055)"><a href="#">故障编码</a></span>
<el-input v-model="saveModalData.defectID" style="width: 221px"></el-input>
</el-form-item>
<el-form-item label="故障名称" prop="defectDesc" :rules="saveRules.defectDesc">
<el-input v-model="saveModalData.defectDesc" disabled style="width: 221px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="saveModalData" style="margin-left: 7px;margin-top: -5px;">
<el-form-item label="故障日期">
<el-date-picker style="width: 221px" v-model="saveModalData.defectDate" type="date" value-format="yyyy-MM-dd" format='yyyy-MM-dd' placeholder="请选择故障日期" :editable=false :picker-options="pickerOptions"></el-date-picker>
</el-form-item>
<el-form-item label="故障描述">
<el-input v-model="saveModalData.feedBackDesc" style="width: 221px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="saveModalData" :rules="saveRules" style="margin-left: 7px;margin-top: -5px;">
<el-form-item label="紧急程度" prop="urgency" :rules="saveRules.urgency">
<el-select v-model="saveModalData.urgency" style="width: 221px">
<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-input v-model="saveModalData.remark" style="width: 221px"></el-input>
</el-form-item>
</el-form>
<el-footer style="height:40px;margin-top: 10px;text-align:center">
<el-button :loading="saveLoading" type="primary" @click="saveData()">保存</el-button>
<el-button type="primary" @click="saveModalFlag = false">关闭</el-button>
</el-footer>
</el-dialog>
<!-- chooseList -->
<Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist> <Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist>
</div> </div>
@ -161,6 +214,7 @@
eamFeedBackSearch, eamFeedBackSearch,
cancelFeedBack, cancelFeedBack,
saveDefectOrder, saveDefectOrder,
saveEamGzBbData, //
} from "@/api/eam/eam.js" } from "@/api/eam/eam.js"
import { import {
getTableDefaultListLanguage, getTableDefaultListLanguage,
@ -195,7 +249,7 @@
exportName: "维修反馈" + this.dayjs().format('YYYYMMDDHHmmss'), exportName: "维修反馈" + this.dayjs().format('YYYYMMDDHHmmss'),
exportHeader: ["维修反馈"], exportHeader: ["维修反馈"],
exportFooter: [], exportFooter: [],
exportList:[],
exportList: [],
// end // end
tagNo:'', tagNo:'',
searchData: { searchData: {
@ -218,9 +272,11 @@
dataList: [], dataList: [],
dataListLoading: false, dataListLoading: false,
dataListSelections: [], dataListSelections: [],
modalFlag:false,
modalDisableFlag:false,
modalData:{
modalFlag: false,
modalDisableFlag: false,
saveModalFlag: false,
saveModalDisableFlag: false,
modalData: {
site: '', site: '',
feedBackID: '', feedBackID: '',
feedBackDesc: '', feedBackDesc: '',
@ -232,7 +288,22 @@
planOperator: '', planOperator: '',
userId: '', userId: '',
}, },
departmentList:[],
saveModalData: {
site: this.$store.state.user.site,
feedBackID: '',
feedBackDesc: '',
objectID: '',
objectDesc: '',
defectID: '',
defectDesc: '',
defectDate: '',
remark: '',
urgency: '',
status: '',
createdBy: '',
updateBy: ''
},
departmentList: [],
// //
columnList: [ columnList: [
{ {
@ -524,6 +595,61 @@
columnWidth: 95, columnWidth: 95,
}, },
], ],
pickerOptions: {
disabledDate(time) {
let curDate = new Date().getTime()
let curD = new Date()
/* 获取当前月份 */
let curMonth = curD.getMonth()
/* 生成实际的月份: 由于curMonth会比实际月份小1, 故需加1 */
curD.setMonth(curMonth + 1)
/* 将日期设置为0, 这里为什么要这样设置, 我不知道原因, 这是从网上学来的 */
curD.setDate(0)
/* 返回当月的天数 */
let days = curD.getDate()
let three = days * 24 * 3600 * 1000
let threeMonths = curDate - three
return time.getTime() > Date.now() || time.getTime() < threeMonths
},
},
saveRules: {
objectId: [
{
required: true,
message: ' ',
trigger: 'change'
}
],
objectDesc: [
{
required: true,
message: ' ',
trigger: 'change'
}
],
defectId: [
{
required: true,
message: ' ',
trigger: 'change'
}
],
defectDesc: [
{
required: true,
message: ' ',
trigger: 'change'
}
],
urgency: [
{
required: true,
message: ' ',
trigger: 'change'
}
]
},
saveLoading: false
} }
}, },
mounted () { mounted () {
@ -538,26 +664,77 @@
this.getTableUserColumn(this.$route.meta.menuId+'table1',1) this.getTableUserColumn(this.$route.meta.menuId+'table1',1)
}, },
methods: { methods: {
//
saveModal () {
this.saveModalData = {
site: this.$store.state.user.site,
feedBackID: '',
feedBackDesc: '',
objectID: '',
objectDesc: '',
defectID: '',
defectDesc: '',
defectDate: '',
remark: '',
urgency: '',
status: '已录入',
createdBy: this.$store.state.user.name,
}
this.saveModalDisableFlag = false
this.saveModalFlag = true
},
// /
saveData () {
if (this.saveModalData.objectID === '' || this.saveModalData.objectID == null) {
this.$message.warning("请选择设备!")
return;
}
if (this.saveModalData.defectID === '' || this.saveModalData.defectID == null) {
this.$message.warning("请选择故障!")
return;
}
if (this.saveModalData.urgency === '' || this.saveModalData.urgency == null) {
this.$message.warning("请选择紧急程度!")
return;
}
this.saveLoading = true
saveEamGzBbData(this.saveModalData).then(({data}) => {
if (data && data.code === 0) {
this.getDataList()
this.saveModalFlag = false
this.$message({
message: '操作成功',
type: 'success',
duration: 1500,
onClose: () => {}
})
} else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
}
this.saveLoading = false
})
},
// //
favoriteIsOk() {
favoriteIsOk () {
let userFavorite = { let userFavorite = {
userId: this.$store.state.user.id, userId: this.$store.state.user.id,
languageCode: this.$i18n.locale languageCode: this.$i18n.locale
} }
console.log(this.$route.meta.menuId)
userFavoriteList(userFavorite).then(({data}) => { userFavoriteList(userFavorite).then(({data}) => {
for (let i = 0; i < data.list.length; i++) { for (let i = 0; i < data.list.length; i++) {
// let flag=false;
if(this.$route.meta.menuId==data.list[i].menuId){
if(this.$route.meta.menuId === data.list[i].menuId){
this.favorite = true this.favorite = true
// flag=true;
} }
} }
}) })
}, },
// OR // OR
favoriteFunction() {
favoriteFunction () {
let userFavorite = { let userFavorite = {
userId: this.$store.state.user.id, userId: this.$store.state.user.id,
functionId: this.$route.meta.menuId, functionId: this.$route.meta.menuId,
@ -585,6 +762,14 @@
strVal = this.modalData.planOperator strVal = this.modalData.planOperator
this.$refs.baseList.init(val, strVal) this.$refs.baseList.init(val, strVal)
} }
if (val === 200) {
strVal = this.saveModalData.objectID
this.$refs.baseList.init(val, strVal)
}
if (val === 1055) {
strVal = this.saveModalData.defectID
this.$refs.baseList.init(val, strVal)
}
}) })
}, },
/* 列表方法的回调 */ /* 列表方法的回调 */
@ -592,7 +777,16 @@
if (this.tagNo === 201) { if (this.tagNo === 201) {
this.modalData.planOperator = val.AdminID this.modalData.planOperator = val.AdminID
} }
if (this.tagNo === 200) {
this.saveModalData.objectID = val.ObjectID
this.saveModalData.objectDesc = val.ObjectDesc
}
if (this.tagNo === 1055) {
this.saveModalData.defectID = val.DefectID
this.saveModalData.defectDesc = val.DefectDesc
}
}, },
//excel //excel
async createExportData() { async createExportData() {
this.searchData.limit = -1 this.searchData.limit = -1
@ -603,10 +797,8 @@
return this.exportList; return this.exportList;
}, },
startDownload() { startDownload() {
}, },
finishDownload() { finishDownload() {
}, },
fields() { fields() {
let json = "{" let json = "{"
@ -677,8 +869,7 @@
}).catch(() => { }).catch(() => {
}) })
}, },
createDefectOrderModel(row){
console.log(row)
createDefectOrderModel (row) {
this.modalData = { this.modalData = {
site: row.site, site: row.site,
feedBackID: row.feedBackID, feedBackID: row.feedBackID,
@ -691,7 +882,7 @@
planOperator: '', planOperator: '',
userId: row.createdBy, userId: row.createdBy,
} }
this.modalFlag = true;
this.modalFlag = true
}, },
saveDefectOrder () { saveDefectOrder () {
if (this.modalData.planDate === '' || this.modalData.planDate == null) { if (this.modalData.planDate === '' || this.modalData.planDate == null) {
@ -714,8 +905,7 @@
message: '操作成功', message: '操作成功',
type: 'success', type: 'success',
duration: 1500, duration: 1500,
onClose: () => {
}
onClose: () => {}
}) })
} else { } else {
this.$alert(data.msg, '错误', { this.$alert(data.msg, '错误', {
@ -750,12 +940,10 @@
// this.columnList3 = data.rows // this.columnList3 = data.rows
// break; // break;
} }
} else { } else {
this.getColumnList(tableId, columnId) this.getColumnList(tableId, columnId)
} }
}) })
}, },
// tableDefault // tableDefault
@ -786,7 +974,6 @@
// this.showDefault = true. // this.showDefault = true.
} }
}) })
}, },
// //
} }

2
src/views/modules/eam/eamWorkPlanForCheck.vue

@ -196,7 +196,7 @@
<el-input v-model="modalData.planPeriod" type="number" onkeyup="value=value.replace(/^[^\d]+/g,'')" style="width: 120px"></el-input> <el-input v-model="modalData.planPeriod" type="number" onkeyup="value=value.replace(/^[^\d]+/g,'')" style="width: 120px"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="点检周期"> <el-form-item label="点检周期">
<el-select filterable v-model="modalData.planCycle" style="width: 50px">
<el-select v-model="modalData.planCycle" style="width: 50px">
<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-option label="月" value="月"></el-option> <el-option label="月" value="月"></el-option>

Loading…
Cancel
Save