
5 changed files with 458 additions and 8 deletions
@ -0,0 +1,430 @@ |
|||||
|
<template> |
||||
|
<div> |
||||
|
<!-- 标题按钮部分开始 --> |
||||
|
<div class="tab-header webtop"> |
||||
|
<!-- 标题 --> |
||||
|
<div>{{ viewTitle }}</div> |
||||
|
<!-- start 添加修改按钮 --> |
||||
|
<div> |
||||
|
<el-button type="primary" size="small" :disabled="submitdisabled" @click="saveOrUpdate">保存</el-button> |
||||
|
<el-button type="info" size="small" @click="handleReturn()">返回</el-button> |
||||
|
</div> |
||||
|
<!-- end 添加修改按钮 --> |
||||
|
<!-- end 详情按钮 --> |
||||
|
</div> |
||||
|
<!-- 标题按钮部分结束 --> |
||||
|
<!-- Start 新增修改部分 --> |
||||
|
<div class="main-content"> |
||||
|
<div class="searchcon"> |
||||
|
<el-form v-show="isSearchShow" ref="form_obj" :model="formobj" :rules="rules" label-position="right" class="demo-form-inline"> |
||||
|
<div class="listtop"> |
||||
|
<div class="tit">巡视工单信息</div> |
||||
|
</div> |
||||
|
<el-row> |
||||
|
<el-col :span="2" class="tleftb"> |
||||
|
<span><span class="icon">*</span>客户名称:</span> |
||||
|
</el-col> |
||||
|
<el-col :span="3" class="trightb"> |
||||
|
<el-form-item prop="custname"> |
||||
|
<!--<el-input size="small" v-model="formobj.custname" placeholder="客户名称" class="addinputw" clearable />--> |
||||
|
<el-select |
||||
|
v-model="formobj.custid" |
||||
|
class="addinputw" |
||||
|
placeholder="客户名称" |
||||
|
size="small" |
||||
|
@change="custnamechangeValue($event)" |
||||
|
> |
||||
|
<el-option |
||||
|
v-for="(item, i) in custList" |
||||
|
:key="i" |
||||
|
:label="item.enterpriseName" |
||||
|
:value="item.sid" |
||||
|
/> |
||||
|
</el-select> |
||||
|
</el-form-item> |
||||
|
</el-col> |
||||
|
<el-col :span="2" class="tleftb"> |
||||
|
<span><span class="icon">*</span>工单编号:</span> |
||||
|
</el-col> |
||||
|
<el-col :span="3" class="trightb"> |
||||
|
<el-form-item prop="orderno"><el-input size="small" v-model="formobj.orderno" placeholder="工单编号" class="addinputw" clearable /></el-form-item> |
||||
|
</el-col> |
||||
|
<el-col :span="2" class="tleftb"> |
||||
|
<span><span class="icon">*</span>工单名称:</span> |
||||
|
</el-col> |
||||
|
<el-col :span="2" class="trightb"> |
||||
|
<el-form-item prop="ordername"><el-input size="small" v-model="formobj.ordername" placeholder="工单名称" class="addinputw" clearable /></el-form-item> |
||||
|
</el-col> |
||||
|
<el-col :span="2" class="tleftb"> |
||||
|
<span><span class="icon">*</span>工单内容:</span> |
||||
|
</el-col> |
||||
|
<el-col :span="3" class="trightb"> |
||||
|
<el-form-item prop="ordercontent"><el-input size="small" v-model="formobj.ordercontent" placeholder="工单内容" class="addinputw" clearable /></el-form-item> |
||||
|
</el-col> |
||||
|
<el-col :span="2" class="tleftb"> |
||||
|
<span><span class="icon">*</span>模板:</span> |
||||
|
</el-col> |
||||
|
<el-col :span="3" class="trightb"> |
||||
|
<el-select @change="changeValue($event)" |
||||
|
v-model="formobj.templatesid" |
||||
|
class="addinputw" |
||||
|
placeholder="模板" |
||||
|
size="small" |
||||
|
> |
||||
|
<el-option |
||||
|
v-for="(item, i) in dataList" |
||||
|
:key="i" |
||||
|
:label="item.templatename" |
||||
|
:value="item.sid" |
||||
|
/> |
||||
|
</el-select> |
||||
|
</el-col> |
||||
|
</el-row> |
||||
|
<el-row> |
||||
|
<el-col :span="2" class="tleftb"> |
||||
|
<span><span class="icon">*</span>现场联系人:</span> |
||||
|
</el-col> |
||||
|
<el-col :span="3" class="trightb"> |
||||
|
<el-form-item prop="receiveperson"><el-input size="small" v-model="formobj.receiveperson" placeholder="现场联系人" class="addinputw" clearable /></el-form-item> |
||||
|
</el-col> |
||||
|
<el-col :span="3" class="tleftb"> |
||||
|
<span><span class="icon">*</span>现场联系人电话:</span> |
||||
|
</el-col> |
||||
|
<el-col :span="3" class="trightb"> |
||||
|
<el-form-item prop="receivetel"><el-input size="small" v-model="formobj.receivetel" placeholder="现场联系人电话" class="addinputw" clearable /></el-form-item> |
||||
|
</el-col> |
||||
|
<el-col :span="2" class="tleftb"> |
||||
|
<span><span class="icon">*</span>巡视类型:</span> |
||||
|
</el-col> |
||||
|
<el-col :span="3" class="trightb"> |
||||
|
<el-select |
||||
|
v-model="formobj.ordertype" |
||||
|
class="addinputw" |
||||
|
placeholder="类型" |
||||
|
size="small" |
||||
|
> |
||||
|
<el-option |
||||
|
v-for="(item, i) in arr" |
||||
|
:key="i" |
||||
|
:label="item.type" |
||||
|
:value="item.value" |
||||
|
/> |
||||
|
</el-select> |
||||
|
</el-col> |
||||
|
<el-col :span="2" class="tleftb"> |
||||
|
<span><span class="icon">*</span>等级:</span> |
||||
|
</el-col> |
||||
|
<el-col :span="3" class="trightb"> |
||||
|
<el-select |
||||
|
v-model="formobj.orderdegree" |
||||
|
class="addinputw" |
||||
|
placeholder="等级" |
||||
|
size="small" |
||||
|
> |
||||
|
<el-option |
||||
|
v-for="(item, i) in arrList" |
||||
|
:key="i" |
||||
|
:label="item.type" |
||||
|
:value="item.type" |
||||
|
/> |
||||
|
</el-select> |
||||
|
</el-col> |
||||
|
</el-row> |
||||
|
</el-form> |
||||
|
</div> |
||||
|
<div class="listtop"> |
||||
|
<div class="tit">巡视人员</div> |
||||
|
<el-button class="span" type="primary" @click.stop="add()">新增</el-button> |
||||
|
</div> |
||||
|
<div> |
||||
|
<el-table ref="table" tooltip-effect="dark" :data="TabList" border style="width: 100%" stripe > |
||||
|
> |
||||
|
<el-table-column fixed width="100" type="index" label="序号" align="center" /> |
||||
|
<el-table-column label="操作" wid align="center" width="150"> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-button type="primary" size="mini" @click="doCommoditylDel(scope.$index)">删除</el-button> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column prop="principalname" label="巡视人名称" align="center" > |
||||
|
<template slot-scope="scope"> |
||||
|
<el-input v-model="scope.row.principalname" placeholder="" clearable></el-input> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column prop="principalcontact" label="联系方式" align="center" > |
||||
|
<template slot-scope="scope"> |
||||
|
<el-input v-model="scope.row.principalcontact" placeholder="" clearable></el-input> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column prop="workteam" label="班组组织" align="center" > |
||||
|
<template slot-scope="scope"> |
||||
|
<el-input v-model="scope.row.workteam" placeholder="" clearable></el-input> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column prop="executorname" label="是否负责人" width="150px" align="center" > |
||||
|
<template slot-scope="scope"> |
||||
|
<el-radio v-model="scope.row.executorname" label="是">是</el-radio> |
||||
|
<el-radio v-model="scope.row.executorname" label="否">否</el-radio> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
</div> |
||||
|
<div class="listtop"> |
||||
|
<div class="tit">任务模板</div> |
||||
|
</div> |
||||
|
<div> |
||||
|
<el-table :data="list" border style="width: 100%;text-align: center;"> |
||||
|
<el-table-column fixed width="100" type="index" label="序号" align="center" /> |
||||
|
<el-table-column prop="taskname" label="任务名称" width="200" align="center" /> |
||||
|
<el-table-column prop="taskdesc" label="巡视内容" align="center" /> |
||||
|
</el-table> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import req from '@/api/yxtdispatchcenter/dispatchorderinfo' |
||||
|
import req2 from '@/api/yxtdispatchcenter/dispatchmodletemplate' |
||||
|
export default { |
||||
|
name: 'DispatchOrderinfoAdd', |
||||
|
data() { |
||||
|
return { |
||||
|
submitdisabled: false, |
||||
|
isSearchShow: true, |
||||
|
viewTitle: '', |
||||
|
searchxianshitit: '显示添加条件', |
||||
|
formobj: { |
||||
|
id: '', |
||||
|
sid: '', |
||||
|
alarmid: "", |
||||
|
custid: '', // 客户ID |
||||
|
custname: '', // 客户名称 |
||||
|
supervisesid: '', // 监管公司id |
||||
|
orderno: '', // 工单编号 |
||||
|
ordername: '', // 工单名称 |
||||
|
templatesid: '', // 模板sid |
||||
|
orderdegree: '', // 描述:1-一般;2-重要; 3-紧急;4-督办。 |
||||
|
ordertype: '', // 描述:1-计划巡视; |
||||
|
ordercontent: '', // 工单内容 |
||||
|
receiveperson: '', // 现场联系人 |
||||
|
receivetel: '', // 现场联系人电话 |
||||
|
workers:[] |
||||
|
}, |
||||
|
custList:[], |
||||
|
arr:[{value:1,type:'计划巡视'},{value:2,type:'专项巡视'},{value:3,type:'告警巡视'}], |
||||
|
arrList:[{value:1,type:'一般'},{value:2,type:'重要'},{value:3,type:'紧急'},{value:4,type:'督办'}], |
||||
|
TabList:[], |
||||
|
dataList:[], |
||||
|
list:[], |
||||
|
rules: { |
||||
|
custid: [{ required: true, message: '客户ID不能为空', trigger: 'blur' }], // 客户ID |
||||
|
custname: [{ required: true, message: '客户名称不能为空', trigger: 'blur' }], // 客户名称 |
||||
|
supervisesid: [{ required: true, message: '监管公司id不能为空', trigger: 'blur' }], // 监管公司id |
||||
|
orderno: [{ required: true, message: '用法说明:工单编号规则。不能为空', trigger: 'blur' }], // 用法说明:工单编号规则。 |
||||
|
ordername: [{ required: true, message: '工单名称不能为空', trigger: 'blur' }], // 工单名称 |
||||
|
orderdegree: [{ required: true, message: '描述不能为空', trigger: 'blur' }], // 描述:1-一般;2-重要; 3-紧急;4-督办。 |
||||
|
ordertype: [{ required: true, message: '描述不能为空', trigger: 'blur' }], // 描述:1-计划巡视; |
||||
|
ordercontent: [{ required: true, message: '工单内容不能为空', trigger: 'blur' }], // 工单内容 |
||||
|
// arrivetime: [{ required: true, message: '到达现场时间不能为空', trigger: 'blur' }], // 到达现场时间 |
||||
|
// planfinishtime: [{ required: true, message: '完成时间不能为空', trigger: 'blur' }], // 完成时间 |
||||
|
operationcontent: [{ required: true, message: '处理情况不能为空', trigger: 'blur' }], // 处理情况 |
||||
|
receiveperson: [{ required: true, message: '现场联系人不能为空', trigger: 'blur' }], // 现场联系人 |
||||
|
receivetel: [{ required: true, message: '现场联系人电话不能为空', trigger: 'blur' }] // 现场联系人电话 |
||||
|
}, |
||||
|
queryParams: { |
||||
|
current: 1, |
||||
|
size: 100, |
||||
|
total: 0, |
||||
|
params: { |
||||
|
sids: [], |
||||
|
templateid: '', |
||||
|
taskid: '' |
||||
|
} |
||||
|
}, |
||||
|
queryParamsA: { |
||||
|
current: 1, |
||||
|
size: 10, |
||||
|
total: 0, |
||||
|
params: { |
||||
|
orderid:'', |
||||
|
templateid:'' |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
mounted(){ |
||||
|
req2.listPage(this.queryParams).then(resp => { |
||||
|
if (resp.success) { |
||||
|
const data = resp.data |
||||
|
this.dataList = data.records |
||||
|
} |
||||
|
}) |
||||
|
req.entlistPage().then(resp => { |
||||
|
if (resp.success) { |
||||
|
const data = resp.data |
||||
|
this.custList = data |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
created() {}, |
||||
|
methods: { |
||||
|
changeValue(value){ |
||||
|
this.queryParamsA.params.templateid= value; |
||||
|
this.ShowList(); |
||||
|
}, |
||||
|
custnamechangeValue(value){ |
||||
|
let enterpriseName = this.custList.find((item) => { |
||||
|
return item.sid == value; |
||||
|
}).enterpriseName; |
||||
|
this.formobj.custname=enterpriseName; |
||||
|
}, |
||||
|
handleReturn(isreload) { |
||||
|
if (isreload === 'true') this.$emit('reloadlist') |
||||
|
this.formobj.id = '' |
||||
|
this.formobj.sid = '' // SID |
||||
|
this.formobj.custid = '' // 客户ID |
||||
|
this.formobj.custname = '' // 客户名称 |
||||
|
this.formobj.supervisesid = '' // 监管公司id |
||||
|
this.formobj.orderno = '' // 用法说明:工单编号规则。 |
||||
|
this.formobj.ordername = '' // 工单名称 |
||||
|
this.formobj.orderdegree = '' // 描述:1-一般;2-重要; 3-紧急;4-督办。 |
||||
|
this.formobj.ordertype = '' // 描述:1-计划巡视; |
||||
|
this.formobj.templatesid = '' // 模板; |
||||
|
this.formobj.ordercontent = '' // 工单内容 |
||||
|
this.formobj.arrivetime = '' // 到达现场时间 |
||||
|
this.formobj.planfinishtime = '' // 完成时间 |
||||
|
this.formobj.operationcontent = '' // 处理情况 |
||||
|
this.formobj.receiveperson = '' // 现场联系人 |
||||
|
this.formobj.receivetel = '' // 现场联系人电话 |
||||
|
this.queryParamsA.params.orderid='' |
||||
|
this.$refs['form_obj'].resetFields() |
||||
|
this.$emit('doback') |
||||
|
}, |
||||
|
// 搜索条件效果 |
||||
|
clicksearchShow() { |
||||
|
this.isSearchShow = !this.isSearchShow |
||||
|
if (this.isSearchShow) { |
||||
|
this.searchxianshitit = '隐藏添加条件' |
||||
|
} else { |
||||
|
this.searchxianshitit = '显示添加条件' |
||||
|
} |
||||
|
}, |
||||
|
showAdd(row) { |
||||
|
this.formobj.alarmid=row.sid; |
||||
|
this.$nextTick(() => { |
||||
|
this.$refs['form_obj'].clearValidate() |
||||
|
}) |
||||
|
this.viewTitle = '【新增】工单数据' |
||||
|
this.ShowList() |
||||
|
}, |
||||
|
showEdit(row) { |
||||
|
this.$nextTick(() => { |
||||
|
this.$refs['form_obj'].clearValidate() |
||||
|
}) |
||||
|
this.searchxianshitit = '显示添加条件' |
||||
|
this.isSearchShow = true |
||||
|
this.viewTitle = '【修改】工单数据' |
||||
|
const _this = this |
||||
|
req |
||||
|
.fetchBySid(row.sid) |
||||
|
.then(resp => { |
||||
|
if (resp.code==200) { |
||||
|
const vdata = resp.data |
||||
|
_this.formobj.id = vdata.id |
||||
|
_this.formobj.sid = vdata.sid // SID |
||||
|
_this.formobj.custid = vdata.custid // 客户ID |
||||
|
_this.formobj.custname = vdata.custname // 客户名称 |
||||
|
_this.formobj.supervisesid = vdata.supervisesid // 监管公司id |
||||
|
_this.formobj.orderno = vdata.orderno // 工单编号 |
||||
|
_this.formobj.ordername = vdata.ordername // 工单名称 |
||||
|
_this.formobj.orderdegree = vdata.orderdegree // 描述:1-一般;2-重要; 3-紧急;4-督办。 |
||||
|
_this.formobj.ordertype = vdata.ordertype // 描述:1-计划巡视; |
||||
|
_this.formobj.ordercontent = vdata.ordercontent // 工单内容 |
||||
|
_this.formobj.receiveperson = vdata.receiveperson // 现场联系人 |
||||
|
_this.formobj.receivetel = vdata.receivetel // 现场联系人电话 |
||||
|
_this.formobj.templatesid = vdata.templatesid // 模板sid |
||||
|
this.queryParamsA.params.templateid= vdata.templatesid // 模板sid |
||||
|
// _this.formobj.workers = vdata.workers // 现场联系人电话 |
||||
|
} else { |
||||
|
// 根据resp.code进行异常情况处理 |
||||
|
} |
||||
|
}) |
||||
|
.catch(e => { |
||||
|
this.formobj = row |
||||
|
}) |
||||
|
this.queryParamsA.params.orderid= row.sid |
||||
|
this.ShowList() |
||||
|
this.ShowYunwei() |
||||
|
}, |
||||
|
saveOrUpdate() { |
||||
|
this.formobj.workers=this.$refs.table.data; |
||||
|
const _this = this |
||||
|
this.$refs['form_obj'].validate(valid => { |
||||
|
if (valid) { |
||||
|
this.submitdisabled = true |
||||
|
req |
||||
|
.saveOrUpdate(this.formobj) |
||||
|
.then(resp => { |
||||
|
this.submitdisabled = false |
||||
|
if (resp.success) { |
||||
|
_this.$message({ showClose: true, type: 'success', message: resp.msg }) |
||||
|
_this.handleReturn('true') |
||||
|
_this.queryParamsA.params.orderid='' |
||||
|
} else { |
||||
|
// 根据resp.code进行异常情况处理 |
||||
|
} |
||||
|
}) |
||||
|
.catch(() => { |
||||
|
this.submitdisabled = false |
||||
|
}) |
||||
|
} else { |
||||
|
return false |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
handleSelectionChange(val) { |
||||
|
this.formobj.workers = val; |
||||
|
}, |
||||
|
handleSelection(selection){ |
||||
|
if (selection.length > 1){ |
||||
|
let del_row = selection.shift(); |
||||
|
this.$refs.table.toggleRowSelection(del_row, false) |
||||
|
} |
||||
|
}, |
||||
|
add() { |
||||
|
this.TabList.push({ |
||||
|
|
||||
|
}) |
||||
|
}, |
||||
|
doCommoditylDel(index) { |
||||
|
const tip = '请确认是否删除所选记录?' |
||||
|
this.$confirm(tip, '提示', { |
||||
|
confirmButtonText: '确定', |
||||
|
cancelButtonText: '取消', |
||||
|
type: 'warning' |
||||
|
}).then(() => { |
||||
|
this.TabList.splice(index, 1); |
||||
|
}) |
||||
|
}, |
||||
|
// 查询运维人员信息 |
||||
|
ShowYunwei(){ |
||||
|
req.listPageB(this.queryParamsA).then((res)=>{ |
||||
|
this.TabList= res.data.records |
||||
|
}) |
||||
|
}, |
||||
|
// 查询任务项列表信息 |
||||
|
ShowList(){ |
||||
|
|
||||
|
var templateid=this.queryParamsA.params.templateid; |
||||
|
if (templateid==''){ |
||||
|
return; |
||||
|
} |
||||
|
req.listPageA(this.queryParamsA).then((res)=>{ |
||||
|
this.list = res.data.records |
||||
|
}) |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
|
||||
|
<style scoped></style> |
Loading…
Reference in new issue