|
@@ -8,9 +8,9 @@
|
|
|
<el-tab-pane label="已解决" name="4" ></el-tab-pane>
|
|
|
</el-tabs>
|
|
|
</el-row>
|
|
|
- <el-form ref="form" :model="queryParams" label-width="100px">
|
|
|
- <el-row>
|
|
|
- <el-col :span="5">
|
|
|
+ <el-form ref="form" :model="queryParams" size="small" :inline="true" label-width="100px">
|
|
|
+ <el-row type="flex" justify="space-between">
|
|
|
+ <el-col :span="25">
|
|
|
<el-form-item label="项目/医院">
|
|
|
<el-select v-model="queryParams.hospitalId" filterable placeholder="请选择" clearable @change="changeBtn">
|
|
|
<el-option
|
|
@@ -21,13 +21,9 @@
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="5">
|
|
|
<el-form-item label="问题描述">
|
|
|
<el-input v-model="queryParams.problemDescription" clearable placeholder="请输入内容"></el-input>
|
|
|
</el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="5">
|
|
|
<el-form-item label="问题类别" v-if="activeName != '2' && activeName != '3' && activeName != '4'">
|
|
|
<el-select v-model="queryParams.problemType" placeholder="请选择" clearable>
|
|
|
<el-option
|
|
@@ -38,8 +34,6 @@
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="5">
|
|
|
<el-form-item label="科室信息">
|
|
|
<el-select v-model="queryParams.roomInformation" filterable placeholder="请选择" clearable>
|
|
|
<el-option
|
|
@@ -51,12 +45,14 @@
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :span="4">
|
|
|
- <el-button type="primary" @click="handleClick" icon="el-icon-search">搜索</el-button>
|
|
|
+ <el-col :span="2">
|
|
|
+ <el-form-item>
|
|
|
+ <el-button type="primary" size="mini" @click="handleClick" icon="el-icon-search">搜索</el-button>
|
|
|
+ </el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
- <el-row>
|
|
|
- <el-col :span="5">
|
|
|
+ <el-row type="flex" justify="space-between">
|
|
|
+ <el-col :span="25">
|
|
|
<el-form-item label="提问人" v-if="activeName != '3'">
|
|
|
<el-select v-model="queryParams.questioner" filterable placeholder="请选择" clearable>
|
|
|
<el-option
|
|
@@ -67,8 +63,6 @@
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="5">
|
|
|
<el-form-item label="问题状态" v-if="activeName != '2' && activeName != '3' ">
|
|
|
<el-select v-model="state" placeholder="请选择" clearable>
|
|
|
<el-option
|
|
@@ -79,8 +73,6 @@
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="5">
|
|
|
<el-form-item label="处理负责人">
|
|
|
<el-select v-model="queryParams.processor" filterable placeholder="请选择" clearable>
|
|
|
<el-option
|
|
@@ -91,8 +83,6 @@
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="5">
|
|
|
<el-form-item label="是否非问题">
|
|
|
<el-select v-model="queryParams.isProblem" placeholder="请选择" clearable>
|
|
|
<el-option
|
|
@@ -104,23 +94,23 @@
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :span="4">
|
|
|
- <el-button icon="el-icon-refresh" @click="btnReset">重置</el-button>
|
|
|
+ <el-col :span="2">
|
|
|
+ <el-form-item>
|
|
|
+ <el-button size="mini" icon="el-icon-refresh" @click="btnReset" style="padding-right: 10px">重置</el-button>
|
|
|
+ </el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
- <el-col :span="5">
|
|
|
- <el-form-item label="问题创建时间">
|
|
|
- <el-date-picker
|
|
|
- v-model="dateRange"
|
|
|
- type="daterange"
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
- range-separator="至"
|
|
|
- start-placeholder="开始日期"
|
|
|
- end-placeholder="结束日期">
|
|
|
- </el-date-picker>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
+ <el-form-item label="问题创建时间">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="dateRange"
|
|
|
+ type="daterange"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ range-separator="至"
|
|
|
+ start-placeholder="开始日期"
|
|
|
+ end-placeholder="结束日期">
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
</el-row>
|
|
|
<el-row style="margin-bottom: 10px">
|
|
|
<!-- <el-col :span="1">-->
|
|
@@ -128,30 +118,16 @@
|
|
|
<!-- </el-col>-->
|
|
|
<el-col :span="24">
|
|
|
<el-row type="flex" justify="end">
|
|
|
- <el-col :span="2">
|
|
|
- <el-button @click="handleUpdateProblem">置为非问题</el-button>
|
|
|
- </el-col>
|
|
|
- <el-col :span="2">
|
|
|
- <el-button @click="addFrom">新增问题</el-button>
|
|
|
- </el-col>
|
|
|
- <el-col :span="2" style="width: 120px">
|
|
|
- <el-button @click="handleUpdate">置为已解决</el-button>
|
|
|
- </el-col>
|
|
|
- <el-col :span="1" style="width: 75px">
|
|
|
- <el-upload
|
|
|
- class="upload-demo"
|
|
|
- :on-change="handleChange"
|
|
|
- :headers="upload.headers"
|
|
|
- :action="upload.url"
|
|
|
- :show-file-list="false"
|
|
|
- style="width: 80px"
|
|
|
- >
|
|
|
- <el-button>导入</el-button>
|
|
|
- </el-upload>
|
|
|
- </el-col>
|
|
|
- <el-col :span="1" style="width: 85px">
|
|
|
- <el-button @click="btnDownload">导出</el-button>
|
|
|
- </el-col>
|
|
|
+ <el-button type="primary" size="mini" @click="handleUpdateProblem">置为非问题</el-button>
|
|
|
+ <el-button type="primary" size="mini" @click="addFrom">新增问题</el-button>
|
|
|
+ <el-button type="primary" size="mini" @click="handleUpdate">置为已解决</el-button>
|
|
|
+ <BatchImport
|
|
|
+ ref="batchImport"
|
|
|
+ @import="handelImport"
|
|
|
+ @temDownload="handleTemDownload"
|
|
|
+ :fileSize="1"></BatchImport>
|
|
|
+ <el-button type="primary" size="mini" @click="btnDownload">导出</el-button>
|
|
|
+
|
|
|
</el-row>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -514,11 +490,9 @@ import {
|
|
|
updateStage,
|
|
|
pushWorkOrder,
|
|
|
downloadExcel,
|
|
|
- getHospitalAndProcessor,
|
|
|
getRoomInformation,
|
|
|
getQuestionerList,
|
|
|
updateStageProblem,
|
|
|
- getWorkOrderProcessorList,
|
|
|
getProcessorOptions,
|
|
|
addProblem,
|
|
|
getProjectSourceOptions
|
|
@@ -526,6 +500,9 @@ import {
|
|
|
import {getToken} from "@/utils/auth";
|
|
|
import axios from 'axios'
|
|
|
export default {
|
|
|
+ components: {
|
|
|
+ BatchImport: () => import("@/components/BatchImport/indexa.vue"),
|
|
|
+ },
|
|
|
created() {
|
|
|
this.handleClick()
|
|
|
getProjectSourceOptions().then(res =>{
|
|
@@ -546,6 +523,9 @@ export default {
|
|
|
})
|
|
|
},
|
|
|
methods: {
|
|
|
+ handelImport(){},
|
|
|
+ handleTemDownload(){
|
|
|
+ },
|
|
|
changeBtn(param){
|
|
|
console.log("param",param)
|
|
|
this.form.processor=''
|
|
@@ -585,7 +565,7 @@ export default {
|
|
|
let resolve = this.$router.push({path:'/business/as/problemInfo/detail',query:{id:row.id}});
|
|
|
},
|
|
|
btnDownload(){
|
|
|
- downloadExcel().then((res) => {
|
|
|
+ downloadExcel().then(async (res) => {
|
|
|
let blob = new Blob([res], {
|
|
|
type: "application/vnd.ms-excel" ,
|
|
|
})
|
|
@@ -599,22 +579,19 @@ export default {
|
|
|
link.click();
|
|
|
window.URL.revokeObjectURL(link.href);
|
|
|
}
|
|
|
+ await this.$message.success("导出完成")
|
|
|
})
|
|
|
},
|
|
|
handleWorkOrder(data){
|
|
|
+ console.log("data1",data)
|
|
|
getProcessorOptions(data.hospitalId).then(res =>{
|
|
|
if(res.code == 200){
|
|
|
this.workOrderProcessorOptions=res.data
|
|
|
}
|
|
|
})
|
|
|
- // getWorkOrderProcessorList().then(res =>{
|
|
|
- // if(200 == res.code){
|
|
|
- //
|
|
|
- // }
|
|
|
- // })
|
|
|
this.dialogWorkOrder=true
|
|
|
this.form=data
|
|
|
- console.log(this.form)
|
|
|
+ console.log("this.form",this.form)
|
|
|
},
|
|
|
handleSolve(data){
|
|
|
this.dialogSolve=true
|
|
@@ -625,6 +602,7 @@ export default {
|
|
|
this.dialogVisible = true
|
|
|
console.log('data',data)
|
|
|
this.form=data
|
|
|
+ console.log('this.form',data)
|
|
|
this.form.problemPicture.map((item) =>{
|
|
|
console.log("item",item)
|
|
|
item.name=item.id
|
|
@@ -636,6 +614,7 @@ export default {
|
|
|
this.projectSourceOptions=res.data
|
|
|
}
|
|
|
})
|
|
|
+ console.log("projectSourceOptions",this.projectSourceOptions)
|
|
|
getProcessorOptions(data.hospitalId).then(res =>{
|
|
|
if(res.code ==200){
|
|
|
this.processorOptions=res.data
|
|
@@ -813,9 +792,18 @@ export default {
|
|
|
pushWorkOrder(this.form).then(res =>{
|
|
|
if(200 == res.code){
|
|
|
this.$message.success('转工单成功')
|
|
|
+ list(this.queryParams).then(res => {
|
|
|
+ if(res.code == 200){
|
|
|
+ this.dataList=res.rows
|
|
|
+ this.total=res.total
|
|
|
+ this.queryParams.creatStart=''
|
|
|
+ this.queryParams.creatEnd=''
|
|
|
+ }
|
|
|
+ })
|
|
|
}
|
|
|
})
|
|
|
this.dialogWorkOrder=false
|
|
|
+
|
|
|
},
|
|
|
submitForm(){
|
|
|
this.$refs["form"].validate(async valid => {
|
|
@@ -832,9 +820,15 @@ export default {
|
|
|
})
|
|
|
}
|
|
|
if(this.form){
|
|
|
+ console.log("AAAAAAA",this.projectSourceOptions)
|
|
|
this.projectSourceOptions.forEach((item) =>{
|
|
|
if(item.id == this.form.hospitalId){
|
|
|
+ console.log("BBBBBB",item.id)
|
|
|
+ console.log("CCCCCC",this.form.hospitalId)
|
|
|
+ console.log("DDDDDD",item.projectSource)
|
|
|
+
|
|
|
this.form.projectSource=item.projectSource
|
|
|
+ console.log("EEEEE",this.form.projectSource)
|
|
|
}
|
|
|
})
|
|
|
this.processorOptions.forEach((item) =>{
|
|
@@ -852,6 +846,24 @@ export default {
|
|
|
})
|
|
|
} else {
|
|
|
//修改售后问题
|
|
|
+ if(this.form){
|
|
|
+ console.log("AAAAAAA",this.projectSourceOptions)
|
|
|
+ this.projectSourceOptions.forEach((item) =>{
|
|
|
+ if(item.id == this.form.hospitalId){
|
|
|
+ console.log("BBBBBB",item.id)
|
|
|
+ console.log("CCCCCC",this.form.hospitalId)
|
|
|
+ console.log("DDDDDD",item.projectSource)
|
|
|
+
|
|
|
+ this.form.projectSource=item.projectSource
|
|
|
+ console.log("EEEEE",this.form.projectSource)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ this.processorOptions.forEach((item) =>{
|
|
|
+ if(item.userName == this.form.processor){
|
|
|
+ this.form.processorName=item.nickName
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
let formData = new FormData();
|
|
|
formData.append("problemInfo",new Blob([JSON.stringify(this.form)], {type: "application/json"}))
|
|
|
if(this.pictureList.length < 1 ){
|