This commit is contained in:
caoqianming 2023-06-25 14:47:08 +08:00
commit 2418acaac8
7 changed files with 48 additions and 216 deletions

View File

@ -211,7 +211,7 @@ export const asyncRoutes = [
path: 'basicGoal', path: 'basicGoal',
name: 'basicGoal', name: 'basicGoal',
component: () => import('@/views/supervisionNew/basicGoal.vue'), component: () => import('@/views/supervisionNew/basicGoal.vue'),
meta: { title: '年度基础目标' , perms: ['task2']} meta: { title: '集团年度目标' , perms: ['task2']}
}, },
{ {
path: 'basicGoalDept', path: 'basicGoalDept',

View File

@ -122,7 +122,7 @@
<span>质量风险管理库</span> <span>质量风险管理库</span>
</div> </div>
<p> <p>
<el-link href="/media/default/集团公司基础质量风险管理库.wlsx" target="_blank" type="primary">集团公司基础质量风险管理库.wlsx</el-link> <el-link href="/media/default/集团公司基础质量风险管理库.xlsx" target="_blank" type="primary">集团公司基础质量风险管理库.xlsx</el-link>
</p> </p>
<p> <p>
<el-link href="/media/default/基础质量风险管理库引用文件.rar" target="_blank" type="primary">基础质量风险管理库引用文件.rar</el-link> <el-link href="/media/default/基础质量风险管理库引用文件.rar" target="_blank" type="primary">基础质量风险管理库引用文件.rar</el-link>

View File

@ -3,38 +3,22 @@
<el-card> <el-card>
<div> <div>
<el-date-picker <el-date-picker
v-model="listQuery.search" v-model="listQuery.year"
type="year" type="year"
placeholder="选择年" placeholder="选择年"
value-format="yyyy"
style="width:300px" style="width:300px"
@change="yearChange"
> >
</el-date-picker> </el-date-picker>
<!-- <el-select
v-model="listQuery.cycle"
placeholder="类型"
clearable
style="width: 300px"
@change="handleFilter"
>
<el-option label="目标定制" value="10"/>
<el-option label="日常监督" value="20"/>
</el-select> -->
<el-button <el-button
class="filter-item" class="filter-item"
type="primary" type="primary"
icon="el-icon-search" icon="el-icon-search"
@click="handleFilter" @click="handleFilter"
>搜索</el-button> >搜索</el-button>
<el-button
class="filter-item"
type="primary"
icon="el-icon-refresh-left"
@click="resetFilter"
>重置</el-button>
</div> </div>
</el-card> </el-card>
<el-card style="margin-top: 10px"> <el-card style="margin-top: 6px">
<el-table <el-table
v-loading="listLoading" v-loading="listLoading"
:data="dataList.results" :data="dataList.results"
@ -42,7 +26,7 @@
fit fit
stripe stripe
highlight-current-row highlight-current-row
max-height="600" :height="heightTable"
> >
<el-table-column type="index" width="50" /> <el-table-column type="index" width="50" />
<el-table-column label="年份" prop="year" width="80"></el-table-column> <el-table-column label="年份" prop="year" width="80"></el-table-column>
@ -53,13 +37,13 @@
<el-table-column label="能力验证满意率(%)" prop="pgoal_4"></el-table-column> <el-table-column label="能力验证满意率(%)" prop="pgoal_4"></el-table-column>
<el-table-column label="客户投诉处理满意率(%)" prop="pgoal_5"></el-table-column> <el-table-column label="客户投诉处理满意率(%)" prop="pgoal_5"></el-table-column>
</el-table> </el-table>
<pagination <!-- <pagination
v-show="dataList.count > 0" v-show="dataList.count > 0"
:total="dataList.count" :total="dataList.count"
:page.sync="listQuery.page" :page.sync="listQuery.page"
:limit.sync="listQuery.page_size" :limit.sync="listQuery.page_size"
@pagination="getList" @pagination="getList"
/> /> -->
</el-card> </el-card>
</div> </div>
</template> </template>
@ -83,11 +67,14 @@
goal_key__in:'pgoal_1,pgoal_2,pgoal_3,pgoal_4,pgoal_5', goal_key__in:'pgoal_1,pgoal_2,pgoal_3,pgoal_4,pgoal_5',
}, },
taskList:[], taskList:[],
heightTable:null,
listLoading:false listLoading:false
}; };
}, },
mounted(){ mounted(){
this.getList(); this.getList();
let height = document.getElementsByClassName('app-main')[0].clientHeight;
this.heightTable = height-90;
}, },
methods:{ methods:{
checkPermission, checkPermission,
@ -117,13 +104,15 @@
//获取任务列表===获取任务id //获取任务列表===获取任务id
getList(){ getList(){
let that = this; let that = this;
that.dataList.results = [];
that.dataList.count =0;
that.listLoading = true; that.listLoading = true;
if(that.listQuery.year==''){ if(that.listQuery.year==''){
that.listQuery.year = new Date().getFullYear(); let date = new Date();
that.listQuery.year = date.getFullYear()+'';
} }
that.listQuery.page=0; that.listQuery.page=0;
getPgoalDeptList(that.listQuery).then((res) => { getPgoalDeptList(that.listQuery).then((res) => {
debugger;
if (res.data) { if (res.data) {
let data0 = res.data; let data0 = res.data;
let data =data0.filter(item=>{ let data =data0.filter(item=>{
@ -136,7 +125,6 @@
{year:that.listQuery.year,dept_name:'集团',dept:'000',pgoal_1:'',pgoal_2:'',pgoal_3:'',pgoal_4:'',pgoal_5:''} {year:that.listQuery.year,dept_name:'集团',dept:'000',pgoal_1:'',pgoal_2:'',pgoal_3:'',pgoal_4:'',pgoal_5:''}
]; ];
for(let i=0;i<data.length;i++){ for(let i=0;i<data.length;i++){
debugger;
let index = alreadyId.indexOf(data[i].belong_dept) let index = alreadyId.indexOf(data[i].belong_dept)
if(index>-1){ if(index>-1){
}else{ }else{
@ -163,16 +151,18 @@
} }
} }
that.dataList.results = dataList; that.dataList.results = dataList;
that.listLoading = false;
} }
that.listLoading = false;
}else{
that.listLoading = false;
} }
}); });
}, },
resetFilter(){ yearChange(value){
this.listQuery.search = ''; let year = new Date(value).getFullYear()+'';
this.getList(); this.listQuery.year = year;
}, },
handleFilter(){ handleFilter(){
this.getList(); this.getList();

View File

@ -903,29 +903,29 @@ import user from "@/store/modules/user";
obj.goal_name = item.goal_name; obj.goal_name = item.goal_name;
obj.goal_file = item.goal_file; obj.goal_file = item.goal_file;
obj.goal_value_b = item.goal_value_b; obj.goal_value_b = item.goal_value_b;
if(item.id){ if(item.goal_file!==null&&item.goal_file!==''){
updatePgoalDept(item.id,obj).then(res=>{ if(item.id){
this.saveLoading = false; updatePgoalDept(item.id,obj).then(res=>{
console.log(res) this.saveLoading = false;
if(res.code>=200){ if(res.code>=200){
this.$message.success('保存成功') this.$message.success('保存成功')
} }
}).catch(()=>{ }).catch(()=>{
this.saveLoading = false; this.saveLoading = false;
}) })
}else{
createPgoalDept(obj).then(res=>{
this.saveLoading = false;
if(res.code>=200){
this.$message.success('保存成功')
}
}).catch(()=>{
this.saveLoading = false;
})
}
}else{ }else{
createPgoalDept(obj).then(res=>{ this.$message.warning('请上传实施细则文件')
// debugger;
console.log(res)
this.saveLoading = false;
if(res.code>=200){
this.$message.success('保存成功')
}
}).catch(()=>{
this.saveLoading = false;
})
} }
}, },
handlePreview(file) { handlePreview(file) {
if ("url" in file) { if ("url" in file) {

View File

@ -1,158 +0,0 @@
<template>
<div class="app-container">
<el-card>
日常监督填报
</el-card>
<el-row :gutter="10">
<el-col :span="12">
<el-card style="margin-top:6px">
已发放报告
<el-input></el-input>
</el-card>
</el-col>
<el-col :span="12">
<el-card style="margin-top:6px">
应发放报告
<el-input></el-input>
</el-card>
</el-col>
</el-row>
<el-row :gutter="10">
<el-col :span="8">
<el-card class="task task-item" shadow="hover" style="padding:10px;box-sizing: border-box;">
<div slot="header" style="display:flex">
<span class="cardTitle">不准确报告</span>
<el-button type="primary" icon="el-icon-plus" @click="addFiles()">添加</el-button>
</div>
<div slot="header" style="display: flex;justify-content: space-between;">
<!-- <div>
<span>总数</span>
<el-input style="width:100px;"> </el-input>
</div> -->
</div>
<el-table></el-table>
</el-card>
</el-col>
<el-col :span="8">
<el-card title="超期报告">
<div slot="header" class="clearfix">
<span>超期报告</span>
<el-input></el-input>
</div>
</el-card>
</el-col>
<el-col :span="8">
<el-card title="能力验证结果">
<div slot="header" class="clearfix">
<span>能力验证结果</span>
<el-input></el-input>
</div>
</el-card>
</el-col>
<el-col :span="8">
<el-card title="客户投诉">
<div slot="header" class="clearfix">
<span>客户投诉</span>
<el-input></el-input>
</div>
</el-card>
</el-col>
<el-col :span="8">
<el-card title="风险识别">
<div slot="header" class="clearfix">
<span>风险识别</span>
<el-input></el-input>
</div>
</el-card>
</el-col>
<el-col :span="8">
<el-card title="外部监督检查">
<div slot="header" class="clearfix">
<span>外部监督检查</span>
<el-input></el-input>
</div>
</el-card>
</el-col>
</el-row>
</div>
</template>
<script>
import {
getmytasklist,
} from "@/api/task";
import { getOrgList, getSubOrgList } from "@/api/org";
import checkPermission from "@/utils/permission";
import Pagination from "@/components/Pagination"; // secondary package based on el-pagination
import mytaskrecord from "@/views/supervision/mytaskrecord";
export default {
components: { Pagination, mytaskrecord },
data() {
return {
taskList: [],
listQuery: {
page: 1,
page_size: 20,
},
form:{
},
listLoading: true,
query:null,
orgData: [],
};
},
computed: {},
watch: {},
created() {
this.getList();
this.getOrgList();
},
methods: {
checkPermission,
getList() {
this.listLoading = true;
getmytasklist(this.listQuery).then((response) => {
if (response.data) {
this.taskList = response.data;
}
this.listLoading = false;
});
},
getOrgList() {
if (this.checkPermission(["record_confirm"])) {
getOrgList({ can_supervision: true }).then((res) => {
this.orgData = res.data;
});
} else {
getSubOrgList().then((res) => {
this.orgData = res.data;
});
}
},
clickRow(obj){
this.query = {
dept:obj.dept,
task:obj.task
}
},
handleFilter() {
this.listQuery.page = 1;
this.getList();
},
handleDo(val){
this.getList()
}
},
};
</script>
<style scoped>
.cardTitle{
display: inline-block;
font-size: 18px;
font-weight: 600;
}
</style>

View File

@ -3,7 +3,7 @@
<el-card> <el-card>
<div> <div>
<el-input <el-input
v-model="listQuery.search" v-model="listQuery.year"
placeholder="请输入年份" placeholder="请输入年份"
style="width: 300px" style="width: 300px"
class="filter-item" class="filter-item"
@ -176,7 +176,7 @@
}, },
listQuery:{ listQuery:{
page: 1, page: 1,
search:'', year:'',
page_size: 20, page_size: 20,
}, },
typeOptions:{ typeOptions:{

View File

@ -141,7 +141,7 @@
> --> > -->
<el-link <el-link
v-if=" v-if="
checkPermission(['task_update']) checkPermission(['task2'])
" "
type="danger" type="danger"
size="small" size="small"
@ -457,7 +457,7 @@
</style> </style>
<script> <script>
import { getOrgList } from "@/api/org"; import { getOrgList } from "@/api/org";
import { getTask2, addDeptsTask2, getTask2Do, startTask2, confirmTaskdept , import { getTask2, addDeptsTask2, getTask2Do, startTask2, confirmTaskdept ,deleteTaskdept,
getPgoalDeptList,getRcList,getPtList,getRiskList,getComplaintList,getOinspectList} from "@/api/task"; getPgoalDeptList,getRcList,getPtList,getRiskList,getComplaintList,getOinspectList} from "@/api/task";
import Pagination from "@/components/Pagination"; import Pagination from "@/components/Pagination";
import checkPermission from "@/utils/permission"; import checkPermission from "@/utils/permission";
@ -569,11 +569,11 @@ export default {
}, },
gettaskdeptall() { gettaskdeptall() {
this.listLoading = true; this.listLoading = true;
getTask2Do({task2:this.task.id}) getTask2Do({task2:this.task.id,page:0})
.then((res) => { .then((res) => {
this.listLoading = false; this.listLoading = false;
this.taskdeptall = []; this.taskdeptall = [];
let taskdept = res.data.results; let taskdept = res.data;
taskdept.forEach(item=>{ taskdept.forEach(item=>{
let obj = item; let obj = item;
let pross = Number((item.count_up/item.count_all).toFixed(4)) let pross = Number((item.count_up/item.count_all).toFixed(4))