|
|
@@ -0,0 +1,251 @@
|
|
|
+<template>
|
|
|
+ <div>
|
|
|
+ <basicLayout
|
|
|
+ ref="list"
|
|
|
+ tableName="serviceImprovementTable"
|
|
|
+ idName="sa_service_improvementid"
|
|
|
+ :apiId="{ query: 2026013111220102}"
|
|
|
+ :detailPath="{
|
|
|
+ path: '/serviceImprovementDetail',
|
|
|
+ }"
|
|
|
+ >
|
|
|
+ <template #custom>
|
|
|
+ <div class="mt-10">
|
|
|
+ <label class="search__label">{{ $t("状态") }}:</label>
|
|
|
+ <el-select
|
|
|
+ class="inline-24"
|
|
|
+ v-model="status"
|
|
|
+ :placeholder="$t(`请选择状态`)"
|
|
|
+ @change="selectChange"
|
|
|
+ size="small"
|
|
|
+ clearable
|
|
|
+ >
|
|
|
+ <el-option :label="$t(`新建`)" value="新建"></el-option>
|
|
|
+ <el-option :label="$t(`分析已提交`)" value="分析已提交"></el-option>
|
|
|
+ <el-option :label="$t(`方案已发布`)" value="方案已发布"></el-option>
|
|
|
+ <el-option :label="$t(`已完成`)" value="已完成"></el-option>
|
|
|
+ <el-option :label="$t(`已中止`)" value="已中止"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <div class="mt-10">
|
|
|
+ <label class="search__label">{{ $t("改善类别") }}:</label>
|
|
|
+ <el-select
|
|
|
+ class="inline-24"
|
|
|
+ v-model="where.type"
|
|
|
+ :placeholder="$t(`请选择改善类别`)"
|
|
|
+ @focus="queryType('improvementtype')"
|
|
|
+ @change="selectChange"
|
|
|
+ size="small"
|
|
|
+ clearable
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in options.improvementtype"
|
|
|
+ :key="item.value"
|
|
|
+ :label="$t(item.value)"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <div class="mt-10">
|
|
|
+ <label class="search__label">{{ $t("客诉大类") }}:</label>
|
|
|
+ <el-select
|
|
|
+ class="inline-24"
|
|
|
+ v-model="where.type"
|
|
|
+ :placeholder="$t(`请选择客诉大类`)"
|
|
|
+ @focus="queryType('customerclass')"
|
|
|
+ @change="selectChange"
|
|
|
+ size="small"
|
|
|
+ clearable
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in options.customerclass"
|
|
|
+ :key="item.value"
|
|
|
+ :label="$t(item.value)"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <div class="mt-10">
|
|
|
+ <label class="search__label">{{ $t("改善结果") }}:</label>
|
|
|
+ <el-select
|
|
|
+ class="inline-24"
|
|
|
+ v-model="status"
|
|
|
+ :placeholder="$t(`请选择改善结果`)"
|
|
|
+ @change="selectChange"
|
|
|
+ size="small"
|
|
|
+ clearable
|
|
|
+ >
|
|
|
+ <el-option :label="$t(`有效`)" value="有效"></el-option>
|
|
|
+ <el-option :label="$t(`无效`)" value="无效"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <div class="mt-10">
|
|
|
+ <label class="search__label">{{ $t("真因分析时间") }}:</label>
|
|
|
+ <el-date-picker
|
|
|
+ style="margin-right: 24px !important"
|
|
|
+ size="small"
|
|
|
+ @change="selectChange"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ v-model="submitdate"
|
|
|
+ type="daterange"
|
|
|
+ :range-separator="$t(`至`)"
|
|
|
+ :start-placeholder="$t(`开始日期`)"
|
|
|
+ :end-placeholder="$t(`结束日期`)"
|
|
|
+ clearable
|
|
|
+ >
|
|
|
+ </el-date-picker>
|
|
|
+ </div>
|
|
|
+ <div class="mt-10">
|
|
|
+ <label class="search__label">{{ $t("方案发布时间") }}:</label>
|
|
|
+ <el-date-picker
|
|
|
+ style="margin-right: 24px !important"
|
|
|
+ size="small"
|
|
|
+ @change="selectChange"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ v-model="senddate"
|
|
|
+ type="daterange"
|
|
|
+ :range-separator="$t(`至`)"
|
|
|
+ :start-placeholder="$t(`开始日期`)"
|
|
|
+ :end-placeholder="$t(`结束日期`)"
|
|
|
+ clearable
|
|
|
+ >
|
|
|
+ </el-date-picker>
|
|
|
+ </div>
|
|
|
+ <div class="mt-10">
|
|
|
+ <label class="search__label">{{ $t("创建时间") }}:</label>
|
|
|
+ <el-date-picker
|
|
|
+ style="margin-right: 24px !important"
|
|
|
+ size="small"
|
|
|
+ @change="selectChange"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ v-model="createdate"
|
|
|
+ type="daterange"
|
|
|
+ :range-separator="$t(`至`)"
|
|
|
+ :start-placeholder="$t(`开始日期`)"
|
|
|
+ :end-placeholder="$t(`结束日期`)"
|
|
|
+ clearable
|
|
|
+ >
|
|
|
+ </el-date-picker>
|
|
|
+ </div>
|
|
|
+ <div class="mt-10">
|
|
|
+ <label class="search__label">{{ $t("完成时间") }}:</label>
|
|
|
+ <el-date-picker
|
|
|
+ style="margin-right: 24px !important"
|
|
|
+ size="small"
|
|
|
+ @change="selectChange"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ v-model="finishdate"
|
|
|
+ type="daterange"
|
|
|
+ :range-separator="$t(`至`)"
|
|
|
+ :start-placeholder="$t(`开始日期`)"
|
|
|
+ :end-placeholder="$t(`结束日期`)"
|
|
|
+ clearable
|
|
|
+ >
|
|
|
+ </el-date-picker>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <template v-slot:tbList="scope">
|
|
|
+ <div v-if="scope.data.column.columnname == 'status'">
|
|
|
+ <span :style="tool.getStatusColor(scope.data.column.data[[scope.data.column.columnname]])">{{
|
|
|
+ $t(scope.data.column.data[[scope.data.column.columnname]])
|
|
|
+ }}</span>
|
|
|
+ </div>
|
|
|
+ <div v-else-if="scope.data.column.columnname == 'result'">
|
|
|
+ <span :style="tool.getStatusColor(scope.data.column.data[[scope.data.column.columnname]])">{{
|
|
|
+ $t(scope.data.column.data[[scope.data.column.columnname]])
|
|
|
+ }}</span>
|
|
|
+ </div>
|
|
|
+ <div v-else>
|
|
|
+ {{
|
|
|
+ scope.data.column.data[[scope.data.column.columnname]]
|
|
|
+ ? $t(scope.data.column.data[[scope.data.column.columnname]])
|
|
|
+ : "--"
|
|
|
+ }}
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </basicLayout>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+export default {
|
|
|
+ name: "index",
|
|
|
+ data(){
|
|
|
+ return {
|
|
|
+ options:{
|
|
|
+ improvementtype:[],
|
|
|
+ customerclass:[]
|
|
|
+ },
|
|
|
+ where: {
|
|
|
+ "condition": "",
|
|
|
+ "status": [], //状态
|
|
|
+ "type": "", //改善类别
|
|
|
+ "class2": "", //客诉大类
|
|
|
+ "result": "", //改善结果
|
|
|
+ "begindate_submitdate": "", //真因分析提交时间区间
|
|
|
+ "enddate_submitdate": "", //真因分析提交时间区间
|
|
|
+ "begindate_senddate": "", //改善方案发布时间区间。
|
|
|
+ "enddate_senddate": "", //改善方案发布时间区间。
|
|
|
+ "begindate_createdate": "", //改善单创建时间区间。
|
|
|
+ "enddate_createdate": "", //改善单创建时间区间。
|
|
|
+ "begindate_finishdate": "", //改善单完成时间区间。
|
|
|
+ "enddate_finishdate": "" //改善单完成时间区间。
|
|
|
+ },
|
|
|
+ status:'',
|
|
|
+ submitdate:'',
|
|
|
+ senddate:'',
|
|
|
+ createdate:'',
|
|
|
+ finishdate:''
|
|
|
+ }
|
|
|
+ },
|
|
|
+ methods:{
|
|
|
+ selectChange() {
|
|
|
+ if (this.status){
|
|
|
+ this.where.status = [this.status]
|
|
|
+ }else {
|
|
|
+ this.where.status = []
|
|
|
+ }
|
|
|
+ if (this.submitdate){
|
|
|
+ this.where.begindate_submitdate = this.submitdate[0]
|
|
|
+ this.where.enddate_submitdate = this.submitdate[1]
|
|
|
+ }else {
|
|
|
+ this.where.begindate_submitdate = ''
|
|
|
+ this.where.enddate_submitdate = ''
|
|
|
+ }
|
|
|
+ if (this.senddate){
|
|
|
+ this.where.begindate_senddate = this.senddate[0]
|
|
|
+ this.where.enddate_senddate = this.senddate[1]
|
|
|
+ }else {
|
|
|
+ this.where.begindate_senddate = ''
|
|
|
+ this.where.enddate_senddate = ''
|
|
|
+ }
|
|
|
+ if (this.createdate){
|
|
|
+ this.where.begindate_createdate = this.createdate[0]
|
|
|
+ this.where.enddate_createdate = this.createdate[1]
|
|
|
+ }else {
|
|
|
+ this.where.begindate_createdate = ''
|
|
|
+ this.where.enddate_createdate = ''
|
|
|
+ }
|
|
|
+ if (this.finishdate){
|
|
|
+ this.where.begindate_finishdate = this.finishdate[0]
|
|
|
+ this.where.enddate_finishdate = this.finishdate[1]
|
|
|
+ }else {
|
|
|
+ this.where.begindate_finishdate = ''
|
|
|
+ this.where.enddate_finishdate = ''
|
|
|
+ }
|
|
|
+ this.$refs.list.param.content.where = this.where;
|
|
|
+ this.$refs.list.listData();
|
|
|
+ },
|
|
|
+ async queryType(type){
|
|
|
+ if (this.options[type].length == 0){
|
|
|
+ const res = await this.$store.dispatch('optiontypeselect',type)
|
|
|
+ this.options[type] = res.data
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+</script>
|
|
|
+
|
|
|
+<style scoped>
|
|
|
+
|
|
|
+</style>
|