master
lion 2 years ago
parent ffe14bbbb8
commit 084d5e80c3

@ -96,7 +96,7 @@
<template v-slot:groups v-if="showgroups"> <template v-slot:groups v-if="showgroups">
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label"> <div class="xy-table-item-label">
<span style="color: red;font-weight: 600;padding-right: 4px;"></span> <span style="color: red;font-weight: 600;padding-right: 4px;"></span>
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
<div> <div>

@ -122,7 +122,7 @@
<template v-slot:groups v-if="showgroups"> <template v-slot:groups v-if="showgroups">
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label"> <div class="xy-table-item-label">
<span style="color: red;font-weight: 600;padding-right: 4px;"></span> <span style="color: red;font-weight: 600;padding-right: 4px;"></span>
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
<div> <div>
@ -241,6 +241,27 @@
userdata:[], userdata:[],
mapform: [], mapform: [],
patrol_table:[ patrol_table:[
{
label:'问题描述',
prop:'ask_introduce',
width:180,
customFn:(row,scope)=>{
return(<el-input v-model={this.patrol_list[scope.$index].ask_introduce} type='textarea'
placeholder="请输入问题描述" clearable>
</el-input>)
}
},
{
label:'整改建议',
prop:'tips',
width:180,
customFn:(row,scope)=>{
return(<el-input v-model={this.patrol_list[scope.$index].tips} type='textarea'
placeholder="请输入整改建议" clearable>
</el-input>)
}
},
{ {
label:'问题类型', label:'问题类型',
prop:'ask_id', prop:'ask_id',
@ -298,6 +319,27 @@
// </div>) // </div>)
// } // }
// }, // },
{
label:'问题图片',
prop:'files',
minWidth:220,
customFn:(row,scope)=>{
let _this = this
return(<el-upload action={this.action} style={{'overflow-x':'scroll','overflow-y':'hidden'}} class='upload-demo' list-type="picture-card"
file-list={this.patrol_list[scope.$index].pictureList}
ref="pictureUpload" auto-upload={true} data={this.uploadOther}
props={
{
"on-success": (response, file, fileList) => this.handlesuccess(response, file, fileList,scope.$index),
["on-preview"]: (file) => this.handlePictureCardPreview(file),
["on-remove"]: (file, fileList) => this.handleRemove(file, fileList,scope.$index),
}
}>
<i class="el-icon-plus"></i>
</el-upload>)
}
},
{ {
label:'建议整改科室', label:'建议整改科室',
prop:'ask_department', prop:'ask_department',
@ -319,48 +361,9 @@
</el-select>) </el-select>)
} }
}, },
{
label:'问题描述',
prop:'ask_introduce',
width:180,
customFn:(row,scope)=>{
return(<el-input v-model={this.patrol_list[scope.$index].ask_introduce} type='text'
placeholder="请输入问题描述" clearable>
</el-input>)
}
},
{
label:'整改建议',
prop:'tips',
width:180,
customFn:(row,scope)=>{
return(<el-input v-model={this.patrol_list[scope.$index].tips} type='text'
placeholder="请输入整改建议" clearable>
</el-input>)
}
},
{
label:'问题图片',
prop:'files',
minWidth:180,
customFn:(row,scope)=>{
let _this = this
return(<el-upload action={this.action} style={{'overflow-x':'scroll','overflow-y':'hidden'}} class='upload-demo' list-type="picture-card"
file-list={this.patrol_list[scope.$index].pictureList}
ref="pictureUpload" auto-upload={true} data={this.uploadOther}
props={
{
"on-success": (response, file, fileList) => this.handlesuccess(response, file, fileList,scope.$index),
["on-preview"]: (file) => this.handlePictureCardPreview(file),
["on-remove"]: (file, fileList) => this.handleRemove(file, fileList,scope.$index),
}
}>
<i class="el-icon-plus"></i>
</el-upload>)
}
}
], ],
patrol_list:[{ patrol_list:[{
ask_id:'', ask_id:'',

@ -101,20 +101,7 @@
</div> </div>
</div> </div>
<div>
<div class="xy-table-item">
<div class="xy-table-item-label">
<span style="color: red;font-weight: 600;padding-right: 4px;"></span>附件
</div>
<div class="xy-table-item-content">
<el-upload :action="action" class='upload-demo' :file-list="pictureList" ref="pictureUpload"
style="width:400px" :auto-upload="true" :data="uploadOther" :on-success="handlesuccess"
:on-remove="handleRemove">
<el-button size="small" type="primary">点击上传</el-button>
</el-upload>
</div>
</div>
</div>
<div v-if="is_what_unitType=='学习'"> <div v-if="is_what_unitType=='学习'">
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label" style="font-weight: bold;"> <div class="xy-table-item-label" style="font-weight: bold;">
@ -138,6 +125,20 @@
style="width:400px"></el-input> style="width:400px"></el-input>
</div> </div>
</div> </div>
</div>
<div>
<div class="xy-table-item">
<div class="xy-table-item-label">
<span style="color: red;font-weight: 600;padding-right: 4px;"></span>附件
</div>
<div class="xy-table-item-content">
<el-upload :action="action" class='upload-demo' :file-list="pictureList" ref="pictureUpload"
style="width:400px" :auto-upload="true" :data="uploadOther" :on-success="handlesuccess"
:on-remove="handleRemove">
<el-button size="small" type="primary">点击上传</el-button>
</el-upload>
</div>
</div>
</div> </div>
</template> </template>
@ -145,16 +146,16 @@
<div> <div>
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label"> <div class="xy-table-item-label">
<span style="color: red;font-weight: 600;padding-right: 4px;"></span>参与对象 <span style="color: red;font-weight: 600;padding-right: 4px;"></span>{{type!='send'?'参与对象':'承办人员'}}
</div> </div>
<div class="xy-table-item-content" style="width:400px"> <div class="xy-table-item-content" style="width:400px">
<el-radio-group v-model="form.name7" @change='changeName7'> <el-radio-group v-model="form.name7" @change='changeName7'>
<!-- <el-radio :label="1">人员</el-radio> <!-- <el-radio :label="1">人员</el-radio>
<el-radio :label="2" v-if='form.type!=4'>部门</el-radio> <el-radio :label="2" v-if='form.type!=4'>部门</el-radio>
<el-radio :label="3" v-if='!(form.type==4||form.type==2)'>组别</el-radio> --> <el-radio :label="3" v-if='!(form.type==4||form.type==2)'>小组</el-radio> -->
<el-radio v-if="type!='send'" :label="3"></el-radio>
<el-radio :label="1" v-if="type!='send'"></el-radio>
<el-radio v-if="type!='send'" :label="2"></el-radio> <el-radio v-if="type!='send'" :label="2"></el-radio>
<el-radio :label="1">人员</el-radio>
<el-radio v-if="type!='send'" :label="3"></el-radio>
</el-radio-group> </el-radio-group>
</div> </div>
</div> </div>
@ -199,11 +200,11 @@
</div> </div>
<div class="xy-table-item-content" style='min-width:100px'> <div class="xy-table-item-content" style='min-width:100px'>
<Button type='primary' <Button type='primary'
@click="mission_groups_list.push({name:'',type:1,link_id:[],link_id_dep:[]})">新增</Button> @click="mission_groups_list.push({name:'',type:1,link_id:[],link_id_dep:[]})">新增</Button>
<div v-for="(item,index) in mission_groups_list" style='margin:10px;margin-left:0'> <div v-for="(item,index) in mission_groups_list" style='margin:10px;margin-left:0'>
<div> <div>
<Button style="margin-right:10px" @click="mission_groups_list.splice(index,1)"></Button> <Button style="margin-right:10px" @click="mission_groups_list.splice(index,1)"></Button>
<div>{{item.name=mission_groups_name[index]}}</div> <div>{{item.name=mission_groups_name[index]}}</div>
<!-- <el-radio-group v-model="item.type" @change='item.link_id=[]' style="margin:10px;margin-right:20px"> <!-- <el-radio-group v-model="item.type" @change='item.link_id=[]' style="margin:10px;margin-right:20px">
<el-radio :label="1">人员</el-radio> <el-radio :label="1">人员</el-radio>
<el-radio :label="2">部门</el-radio> <el-radio :label="2">部门</el-radio>
@ -231,7 +232,7 @@
</div> </div>
</div> </div>
<div> <div v-if="type=='add'||type=='editor'">
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label"> <div class="xy-table-item-label">
<span style="color: red;font-weight: bold;padding-right: 4px;">*</span>责任人(科室) <span style="color: red;font-weight: bold;padding-right: 4px;">*</span>责任人(科室)
@ -463,7 +464,7 @@
end_date: '', end_date: '',
lefts: '', lefts: '',
name7: 2, name7: 3,
audit_status: 4, audit_status: 4,
unitTypeList: '', unitTypeList: '',
ask: [], ask: [],
@ -818,7 +819,7 @@
lefts: '', lefts: '',
name7: res.accept_department_ids.length > 0 ? 2 : (res.accept_admin_ids.length > 0 ? 1 : (res name7: res.accept_department_ids.length > 0 ? 2 : (res.accept_admin_ids.length > 0 ? 1 : (res
.groups.length > 0 ? 3 : 2)), .groups.length > 0 ? 3 : 3)),
audit_status: res.audit_status === 0 ? 0 : res.audit_status, audit_status: res.audit_status === 0 ? 0 : res.audit_status,
unitTypeList: '', unitTypeList: '',
ask: res.ask ? res.ask : [], ask: res.ask ? res.ask : [],
@ -992,7 +993,7 @@
if (this.mission_groups_list.length == 0) { if (this.mission_groups_list.length == 0) {
Message({ Message({
type: 'warning', type: 'warning',
message: `请新增` message: `请新增`
}) })
return return
} }
@ -1166,22 +1167,22 @@
if (newVal) { if (newVal) {
switch(this.type){ switch(this.type){
case 'add': case 'add':
this.typeName = '发任务' this.typeName = '发任务'
break; break;
case 'editor': case 'editor':
this.typeName = '编辑任务' this.typeName = '编辑任务'
this.getDetail() this.getDetail()
break; break;
case 'send': case 'send':
this.typeName = '分发任务' this.typeName = '任务转办'
this.getDetail() this.getDetail()
break; break;
case 'pid': case 'pid':
this.typeName = '创建子任务' this.typeName = '任务分解'
this.getDetail() this.getDetail()
break; break;
default: default:
this.typeName = '发任务' this.typeName = '发任务'
break; break;
} }

@ -79,7 +79,8 @@
</template> </template>
{{showform.end_content?showform.end_content:''}} {{showform.end_content?showform.end_content:''}}
</el-descriptions-item> --> </el-descriptions-item> -->
<el-descriptions-item span='4' >
<!-- <el-descriptions-item span='4' >
<template slot="label"> <template slot="label">
<span v-if="url_type!=5"></span> <span v-if="url_type!=5"></span>
<span v-else></span> <span v-else></span>
@ -126,7 +127,7 @@
</div> </div>
</div> </div>
</div> </div>
</el-descriptions-item> </el-descriptions-item> -->
<el-descriptions-item span='4' v-if="is_what_unitType==='答题'"> <el-descriptions-item span='4' v-if="is_what_unitType==='答题'">
<template slot="label"> <template slot="label">
答题正确数 答题正确数
@ -174,7 +175,7 @@
<div v-if="type=='show'"> <div v-if="type=='show'">
<!-- <el-divider>执行情况</el-divider> --> <!-- <el-divider>执行情况</el-divider> -->
<el-tabs v-model="activeName"> <el-tabs v-model="activeName">
<el-tab-pane label="子任务" name="first"> <el-tab-pane label="子任务" name="first" v-if="showform.pid_details && showform.pid_details.length>0">
<xy-table :list="showform.pid_details" stripe :table-item="pidTable" <xy-table :list="showform.pid_details" stripe :table-item="pidTable"
:isPage='false'> :isPage='false'>
<template v-slot:btns> <template v-slot:btns>
@ -403,7 +404,7 @@
data() { data() {
return { return {
isShow: false, isShow: false,
activeName:'first', activeName:'second',
type: '', type: '',
id: '', id: '',
login_id: "", login_id: "",
@ -727,7 +728,7 @@
align: 'center', align: 'center',
width: 120 width: 120
},{ },{
label: "", label: "组",
prop: '_names', prop: '_names',
width: 240, width: 240,
customFn: (row) => { customFn: (row) => {
@ -741,7 +742,7 @@
row._names.map(item => { row._names.map(item => {
return ( <div> { return ( <div> {
item.group_name ? item.group_name ?
// //
<div style = { <div style = {
{ {
"display": "flex" "display": "flex"
@ -1046,7 +1047,7 @@
}) })
for (var k of res.data) { for (var k of res.data) {
var _names = [] var _names = []
// //
if (this.showform.groups && this.showform.groups.length > 0) { if (this.showform.groups && this.showform.groups.length > 0) {
for (var g of this.showform.groups) { for (var g of this.showform.groups) {
if (g.type == 1) { if (g.type == 1) {

@ -58,7 +58,7 @@
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item span='4' v-if="showgroups"> <el-descriptions-item span='4' v-if="showgroups">
<template slot="label"> <template slot="label">
</template> </template>
<div> <div>
{{groupObj.name}} {{groupObj.name}}

@ -58,7 +58,7 @@
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item span='4' v-if="showgroups"> <el-descriptions-item span='4' v-if="showgroups">
<template slot="label"> <template slot="label">
</template> </template>
<div> <div>
{{groupObj.name}} {{groupObj.name}}

@ -244,7 +244,7 @@
return(<div> return(<div>
{ {
item.group_name? item.group_name?
// //
<div style={{"display": "flex"}}><div>{item.group_name}</div> <div style={{"display": "flex"}}><div>{item.group_name}</div>
<div style={{"display": "flex","flex-wrap": "wrap"}}>{ <div style={{"display": "flex","flex-wrap": "wrap"}}>{
item.details.map(detail=>{ item.details.map(detail=>{
@ -332,7 +332,7 @@
}) })
r._names = _names r._names = _names
} }
// //
if(r.groups&&r.groups.length>0){ if(r.groups&&r.groups.length>0){
for(var g of r.groups){ for(var g of r.groups){
for(var de of g.details){ for(var de of g.details){

@ -29,7 +29,7 @@ export function getChangeUser() {
/** /**
* @param {Object} arr * @param {Object} arr
* 处理返回 * 处理组返回
*/ */
export function contactGroup(arr) { export function contactGroup(arr) {
let tempArr = [], let tempArr = [],

@ -324,7 +324,7 @@
return(<div> return(<div>
{ {
item.admin_details? item.admin_details?
// //
<div style={{"display": "flex"}}><div>{item.name}</div> <div style={{"display": "flex"}}><div>{item.name}</div>
<div style={{"display": "flex","flex-wrap": "wrap"}}>{ <div style={{"display": "flex","flex-wrap": "wrap"}}>{
item.admin_details.length>0? item.admin_details.length>0?
@ -573,7 +573,7 @@
}) })
r._names = _names r._names = _names
} }
// //
if(r.groups&&r.groups.length>0){ if(r.groups&&r.groups.length>0){
let ab = contactGroup(r.groups) let ab = contactGroup(r.groups)
// ab.map(item=>{ // ab.map(item=>{

@ -108,29 +108,25 @@
@click="openMyMission(item.value,scope.row)">执行任务</Button> @click="openMyMission(item.value,scope.row)">执行任务</Button>
</div> </div>
</div> </div>
<!-- 的带头人 和小组组长 --> <!-- 组的带头人 和小组组长 -->
<div v-else-if="(scope.row.groups && scope.row.groups.length>0 && !(scope.row.audit_status==3||scope.row.audit_status==5)) <div v-else-if="(scope.row.groups && scope.row.groups.length>0 && !(scope.row.audit_status==3||scope.row.audit_status==5))
|| scope.row.main_admin_id==stateObj.login_id"> || scope.row.main_admin_id==stateObj.login_id">
<!-- 组长权限 -->
<div v-for="item in scope.row.grounp_admin_detail"> <div v-for="item in scope.row.grounp_admin_detail">
<div v-if="item.admin.id===stateObj.login_id || stateObj.is_manger"> <div v-if="item.admin.id===stateObj.login_id">
<Button style="margin-right:5px;margin-bottom:5px;" type="primary" size="small" <Button style="margin-right:5px;margin-bottom:5px;" type="primary" size="small"
@click="editorUnit(scope.row.id,'send')">派发任务</Button> @click="editorUnit(scope.row.id,'send')">派发任务</Button>
<Button style="margin-right:5px;margin-bottom:5px;" type="primary" size="small" <Button style="margin-right:5px;margin-bottom:5px;" type="primary" size="small"
@click="editorUnit(scope.row.id,'pid')">创建任务</Button> @click="editorUnit(scope.row.id,'pid')">创建任务</Button>
<div v-for="item in unitTypeList">
<Button v-if="scope.row.unit_type==item.id&&scope.row.audit_status==1" type="primary" size="small"
style="margin-right:5px;margin-bottom:5px;"
@click="openMyMission(item.value,scope.row)">执行任务</Button>
</div>
</div>
<div v-else>
<div v-for="item in unitTypeList">
<Button v-if="scope.row.unit_type==item.id&&scope.row.audit_status==1" type="primary" size="small"
style="margin-right:5px;margin-bottom:5px;"
@click="openMyMission(item.value,scope.row)">执行任务</Button>
</div>
</div> </div>
</div> </div>
<!-- 组里面所有人都能执行任务 -->
<div v-for="item in unitTypeList">
<Button v-if="scope.row.unit_type==item.id&&scope.row.audit_status==1" type="primary" size="small"
style="margin-right:5px;margin-bottom:5px;"
@click="openMyMission(item.value,scope.row)">执行任务</Button>
</div>
</div> </div>
<!-- 直接 执行任务 --> <!-- 直接 执行任务 -->

Loading…
Cancel
Save