日历页面显示调整、手机端页面调整、未符合项流程带入数据显示调整、未符合项审批历史显示

This commit is contained in:
shenyanpei
2021-12-23 17:17:21 +08:00
parent e9939642ea
commit d739c31cec
17 changed files with 184 additions and 103 deletions
+26 -15
View File
@@ -32,9 +32,11 @@
<el-tag style="background-color: unset;border-color: unset;border-width: 0"/>
</span>
<!-- 获取当前登录人的会议并表示出来-->
<span v-for="item in dealMyDate(data.day)" :value="item.fillPeopleId">
<span v-for="(item,index) in dealMyDate(data.day)" :value="index">
<el-tag v-if="userId === item.fillPeopleId" class="tagTwo"/>
<el-tag v-else class="tagOne"/>
</span>
<span v-if="dealMyDate(data.day).length > 0">
<el-tag class="tagOne"/>
</span>
</span>
</div>
@@ -59,7 +61,9 @@
<el-card class="card_info" v-else v-for="(item, index) in todayData" :value="item" :key="index">
<span v-for="res in item.attend" :key="res.fillPeopleId">
<el-tag v-if="userId === res.fillPeopleId" type="success" size="mini">会议</el-tag>
<el-tag v-else type="warning" size="mini">会议</el-tag>
</span>
<span>
<el-tag type="warning" size="mini">会议</el-tag>
</span>
<span style="float: right;padding-right: 5px">
<el-button type="primary" size="mini" plain @click="edit_meeting(item)">编辑会议内容</el-button>
@@ -69,7 +73,7 @@
<div class="content_text">
<span>会议时间 : {{ $moment(item.date).format('YYYY-MM-DD HH:mm:ss') }} </span>
</div>
<div class="content_text">
<div class="content_text2">
<span>参与人 : {{ item.partPeople.join('、') }} </span>
</div>
<div class="content_text2">
@@ -101,6 +105,7 @@
<el-drawer
title="编辑人员信息"
:visible.sync="meetFlag"
:before-close="falseDrawer"
size="600px"
>
<div class="content_form" style="height: calc(100% - 20px);overflow-y: auto">
@@ -128,7 +133,6 @@
border
ref="entryTable"
@selection-change="selectedDelete"
height="49%"
style="width: 100%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '20px'}">
@@ -334,7 +338,7 @@ export default {
},
// 议题选中时储存数组
deleteTable: [],
loading: false
loading: false,
}
},
mounted() {
@@ -446,14 +450,25 @@ export default {
* 并在日历上显示出标记*/
dealMyDate(v) {
let len = this.resDate.length
let res = ''
let res = []
for (let i = 0; i < len; i++) {
if (this.resDate[i].date.slice(0, 10) === v) {
res = this.resDate[i].attend
break
res = res.concat(this.resDate[i].attend)
}
}
return res
// 去除当天重复的人员
let map = new Map();
let array = new Array(); // 数组用于返回结果
for (let i = 0; i < res.length; i++) {
if(map.has(res[i].fillPeopleId)) { // 如果有该key值
map.set(res[i].fillPeopleId, true);
} else {
map.set(res[i].fillPeopleId, false); // 如果没有该key值
array.push(res[i]);
}
}
return array
},
// 头部时间改变事件
handleDate() {
@@ -502,13 +517,11 @@ export default {
/** 每个会议对应的编辑按钮 */
edit_meeting(item) {
this.editMeetForm.contents = []
console.log(item)
localStorage.setItem('objs', JSON.stringify(item))
this.fileListData = item
this.reData = item.files
console.log(item)
this.editMeetForm = item
this.editMeetForm.contents
this.editMeetForm.contents = []
if (this.editMeetForm.content !== '') {
this.editMeetForm.content.split(';').forEach(item => {
@@ -863,8 +876,6 @@ export default {
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 4;
line-clamp: 4;
-webkit-box-orient: vertical;
line-height: normal;
margin-top: 10px;
@@ -47,8 +47,8 @@
<span>{{ scope.row.planCloseTime ? $moment(scope.row.planCloseTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column prop="responsibleUnit" label="责任部门" align="center"/>
<el-table-column prop="dutyEngineer" width="150" label="责任工程师" align="center"/>
<el-table-column prop="responsibleUnit" width="150" label="责任部门" align="center"/>
<el-table-column prop="dutyEngineerName" width="150" label="责任工程师" align="center"/>
</el-table>
</div>
<el-collapse accordion>
@@ -59,7 +59,7 @@
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="textarea">
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
@@ -161,20 +161,11 @@
:maxlength="100"></el-input>
</el-form-item>
<el-form-item label="责任部门" class="search-item">
<el-select
class="showBox"
<el-input
v-model="queryUnqualidiedData.responsibleUnit"
placeholder="请选择"
filterable
size="small"
placeholder="请输入"
>
<el-option
v-for="item in zrbmOptions"
:value="item.value"
:key="item.value"
:label="item.label"
/>
</el-select>
</el-input>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
@@ -198,39 +189,108 @@
</el-form>
</div>
</div>
<loading :loading="loading">数据获取中....</loading>
<el-table
class="table_info"
ref="searchTable"
:data="unqualidiedData"
tooltip-effect="dark"
style="width: 100%"
border
height="150%"
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
:data="unqualidiedData"
tooltip-effect="dark"
height="100%"
border
ref="searchTable"
max-height="100%"
@selection-change="selectedChange"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="selectedChange"
>
<el-table-column type="selection" width="55" align="center"/>
<el-table-column prop="standSerialNumber" align="center" show-overflow-tooltip label="标准号">
>
<el-table-column
type="selection"
width="55"
fixed="left"
align="center">
</el-table-column>
<el-table-column
prop="standSerialNumber"
fixed="left"
min-width="180"
label="标准号">
<template slot-scope="scope">
<a class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standSerialNumber }}</a>
<a class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standSerialNumber }}</a>
</template>
</el-table-column>
<el-table-column prop="standName" align="center" show-overflow-tooltip label="标准名称">
<el-table-column
prop="standName"
fixed="left"
min-width="300"
show-overflow-tooltip
label="标准名称">
<template slot-scope="scope">
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
</template>
</el-table-column>
<el-table-column prop="productName" align="center" show-overflow-tooltip label="项目名称"/>
<el-table-column prop="itemsNum" align="center" label="条款号"/>
<el-table-column prop="itemsName" align="center" label="条款名称"/>
<el-table-column prop="planCloseTime" align="center" label="整改完成时间">
<el-table-column
prop="itemsNum"
min-width="100"
label="条款号">
</el-table-column>
<el-table-column
prop="itemsName"
min-width="300"
show-overflow-tooltip
label="条款名称">
</el-table-column>
<el-table-column
prop="productType"
width="100"
label="产品类型">
</el-table-column>
<el-table-column
prop="productLine"
width="180"
label="产品线">
</el-table-column>
<el-table-column
prop="productName"
min-width="300"
show-overflow-tooltip
label="项目名称">
</el-table-column>
<el-table-column
prop="reason"
width="180"
label="不合规项目">
</el-table-column>
<el-table-column
prop="responsibleUnit"
width="180"
show-overflow-tooltip
label="责任部门">
</el-table-column>
<el-table-column
prop="dutyEngineerName"
width="100"
label="责任工程师">
</el-table-column>
<el-table-column
prop="authEngineer"
width="150"
show-overflow-tooltip
label="认证工程师">
</el-table-column>
<el-table-column
prop="qaEngineer"
width="150"
show-overflow-tooltip
label="质量工程师">
</el-table-column>
<el-table-column
prop="planCloseTime"
width="150"
sortable="custom"
label="计划关闭时间">
<template slot-scope="scope">
<span>{{ scope.row.planCloseTime ? $moment(scope.row.planCloseTime).format("YYYY-MM-DD") : "" }}</span>
{{ (scope.row.planCloseTime ? scope.row.planCloseTime.substring(0, 11) : "") }}
</template>
</el-table-column>
<el-table-column prop="responsibleUnit" align="center" label="责任部门"/>
<el-table-column prop="dutyEngineer" align="center" label="责任工程师"/>
</el-table>
<pagination
style="position: relative;"
@@ -238,7 +298,6 @@
:total="total"
@pageChange="pageChange"
@pageSizeChange="pageSizeChange"/>
<loading :loading="loading">数据获取中</loading>
<div class="demo-drawer-footer">
<el-button size="mini" @click="closeDrawer">取消</el-button>
<el-button type="primary" size="mini" @click="OkDrawer">确认</el-button>
@@ -274,7 +333,7 @@ export default {
data() {
return {
loading: false,
textarea: '', // 意见
commentText: '', // 意见
title: '', // 新增编辑抽屉标题
ListModel: false, // 新增编辑抽屉开关
active: '1', // 默认显示
@@ -432,6 +491,9 @@ export default {
},
//选择标准取消事件
closeDrawer() {
this.queryUnqualidiedData.standSerialNumber = ''
this.queryUnqualidiedData.responsibleUnit = ''
this.queryUnqualidiedData.productName = ''
this.standModel = false
},
//未符合项整合确定事件
@@ -456,6 +518,9 @@ export default {
this.$refs.searchTable.clearSelection()
}
})
this.queryUnqualidiedData.standSerialNumber = ''
this.queryUnqualidiedData.responsibleUnit = ''
this.queryUnqualidiedData.productName = ''
this.standModel = false;
} else {
this.$message.warning("请选择至少一条数据进行带入");
@@ -500,6 +565,7 @@ export default {
prcCreateUserName: this.$store.getters.userInfo.userName,
engineer: this.roleForm.dockUser,
standardInfoList: this.dataList,
commentText: this.commentText
}
if (this.dataList[0].standId === '') {
this.$message.warning('请选择基础信息进行添加')
@@ -595,7 +661,7 @@ export default {
@import '~@/assets/styles/style';
.wfhxzgStep1 {
/deep/.el-table--scrollable-y .el-table__body-wrapper {
height: calc(100% - 80px) !important;
height: calc(100% - 57px) !important;
}
/deep/.el-drawer__container {
.prc-content-border {
@@ -51,8 +51,8 @@
<span>{{ scope.row.planCloseTime ? $moment(scope.row.planCloseTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column prop="responsibleUnit" label="责任部门" align="center"/>
<el-table-column prop="dutyEngineer" width="150" label="责任工程师" align="center"/>
<el-table-column prop="responsibleUnit" width="150" label="责任部门" align="center"/>
<el-table-column prop="dutyEngineerName" width="150" label="责任工程师" align="center"/>
<el-table-column label="选择分发责任人" width="150" prop="dutyPeopleInfo" align="center">
<template slot-scope="scope">
<el-input
@@ -73,7 +73,7 @@
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="textarea">
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
@@ -182,7 +182,7 @@ export default {
passInfo: 0,
detailData: [],
loading: false,
textarea: '', // 意见
commentText: '', // 意见
title: '', // 新增编辑抽屉标题
ListModel: false, // 新增编辑抽屉开关
taskIds: this.$route.query.taskIds,
@@ -282,7 +282,7 @@ export default {
this.passInfo = JSON.parse(JSON.stringify(item)).passInfo
}
this.dataList = JSON.parse(JSON.stringify(item)).standardInfoList
this.textarea = JSON.parse(JSON.stringify(item)).commentText
this.commentText = JSON.parse(JSON.stringify(item)).commentText
})
},
// 批量选择分发责任人
@@ -358,7 +358,8 @@ export default {
}
let json = {
dockUserList: list,
passInfo: this.passInfo
passInfo: this.passInfo,
commentText: this.commentText
}
let flag=false
this.dataList.forEach(item => {
@@ -51,8 +51,8 @@
<span>{{ scope.row.planCloseTime ? $moment(scope.row.planCloseTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column prop="responsibleUnit" label="责任部门" align="center"/>
<el-table-column prop="dutyEngineer" width="150" label="责任工程师" align="center"/>
<el-table-column prop="responsibleUnit" width="150" label="责任部门" align="center"/>
<el-table-column prop="dutyEngineerName" width="150" label="责任工程师" align="center"/>
<el-table-column label="选择责任人" prop="dutyPeople" width="200" align="center">
<template slot-scope="scope">
<div style="display: inline;">
@@ -70,7 +70,7 @@
</el-table>
</div>
<el-collapse accordion>
<el-collapse-item title="回执说明">
<el-collapse-item title="审批意见">
<div style="margin: 10px 0;">
<el-input
type="textarea"
@@ -86,7 +86,6 @@
<div class="content" v-show="active === '3'">
<div class="flow-list">
<el-table
height="100%"
ref="selection"
:data="detailData"
tooltip-effect="dark"
@@ -39,7 +39,8 @@
<span>{{ scope.row.planCloseTime ? $moment(scope.row.planCloseTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column prop="responsibleUnit" label="责任部门" align="center"/>
<el-table-column prop="responsibleUnit" width="150" label="责任部门" align="center"/>
<el-table-column prop="dutyEngineerName" width="150" label="责任工程师" align="center"/>
<el-table-column prop="dutyPeople" width="150" label="负责人" align="center"/>
<el-table-column label="佐证材料" align="center" width="150">
<template slot-scope="scope">
@@ -76,7 +77,7 @@
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="textarea">
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
@@ -188,7 +189,7 @@ export default {
modalshowflag: false, // drawer开关
detailData: [],
loading: false,
textarea: '', // 意见
commentText: '', // 意见
title: '', // 新增编辑抽屉标题
ListModel: false, // 新增编辑抽屉开关
nonSearch: {
@@ -39,7 +39,8 @@
<span>{{ scope.row.planCloseTime ? $moment(scope.row.planCloseTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column prop="responsibleUnit" label="责任部门" align="center"/>
<el-table-column prop="responsibleUnit" width="150" label="责任部门" align="center"/>
<el-table-column prop="dutyEngineerName" width="150" label="责任工程师" align="center"/>
<el-table-column prop="dutyPeople" width="200" label="负责人" align="center"/>
<el-table-column prop="fileText" width="200" label="佐证材料" align="center">
<template slot-scope="scope">
@@ -39,7 +39,8 @@
<span>{{ scope.row.planCloseTime ? $moment(scope.row.planCloseTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column prop="responsibleUnit" label="责任部门" align="center"/>
<el-table-column prop="responsibleUnit" width="150" label="责任部门" align="center"/>
<el-table-column prop="dutyEngineerName" width="150" label="责任工程师" align="center"/>
<el-table-column prop="dutyPeople" width="200" label="负责人" align="center"/>
<el-table-column prop="fileText" label="佐证材料" align="center">
<template slot-scope="scope">
@@ -317,7 +317,7 @@ export default {
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.headerTabs {
/*.headerTabs {
height: 52px;
display: flex;
align-items: center;
@@ -336,14 +336,14 @@ export default {
color: #fff;
background: #E6A23C;
}
}
}*/
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
height: calc(~'100% - 155px');
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
@@ -288,7 +288,7 @@ export default {
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.headerTabs {
/*.headerTabs {
height: 52px;
display: flex;
align-items: center;
@@ -307,14 +307,14 @@ export default {
color: #fff;
background: #E6A23C;
}
}
}*/
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
height: calc(~'100% - 155px');
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
@@ -351,7 +351,7 @@ export default {
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.headerTabs {
/*.headerTabs {
height: 52px;
display: flex;
align-items: center;
@@ -370,14 +370,14 @@ export default {
color: #fff;
background: #E6A23C;
}
}
}*/
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
height: calc(~'100% - 155px');
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
@@ -328,7 +328,7 @@ export default {
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.headerTabs {
/*.headerTabs {
height: 52px;
display: flex;
align-items: center;
@@ -347,14 +347,14 @@ export default {
color: #fff;
background: #E6A23C;
}
}
}*/
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
height: calc(~'100% - 155px');
/* height: calc(~'100% - 155px');*/
overflow: auto;
.tableTitle {
margin-bottom: 10px;
@@ -327,7 +327,7 @@ export default {
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.headerTabs {
/*.headerTabs {
height: 52px;
display: flex;
align-items: center;
@@ -346,14 +346,14 @@ export default {
color: #fff;
background: #E6A23C;
}
}
}*/
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
height: calc(~'100% - 155px');
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
@@ -330,7 +330,7 @@ export default {
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.headerTabs {
/*.headerTabs {
height: 52px;
display: flex;
align-items: center;
@@ -349,14 +349,14 @@ export default {
color: #fff;
background: #E6A23C;
}
}
}*/
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
height: calc(~'100% - 155px');
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
@@ -343,7 +343,7 @@ export default {
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.headerTabs {
/*.headerTabs {
height: 52px;
display: flex;
align-items: center;
@@ -362,14 +362,14 @@ export default {
color: #fff;
background: #E6A23C;
}
}
}*/
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
height: calc(~'100% - 155px');
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
@@ -51,8 +51,8 @@
<span>{{ scope.row.planCloseTime ? $moment(scope.row.planCloseTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column prop="responsibleUnit" label="责任部门" align="center"/>
<el-table-column prop="dutyEngineer" width="150" label="责任工程师" align="center"/>
<el-table-column prop="responsibleUnit" width="150" label="责任部门" align="center"/>
<el-table-column prop="dutyEngineerName" width="150" label="责任工程师" align="center"/>
<el-table-column label="选择分发责任人" prop="dutyPeopleInfo" align="center">
<template slot-scope="scope">
<el-input
@@ -396,7 +396,7 @@ export default {
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.headerTabs {
/*.headerTabs {
height: 52px;
display: flex;
align-items: center;
@@ -415,14 +415,14 @@ export default {
color: #fff;
background: #E6A23C;
}
}
}*/
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
height: calc(~'100% - 155px');
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
@@ -51,8 +51,8 @@
<span>{{ scope.row.planCloseTime ? $moment(scope.row.planCloseTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column prop="responsibleUnit" label="责任部门" align="center"/>
<el-table-column prop="dutyEngineer" label="责任工程师" align="center"/>
<el-table-column prop="responsibleUnit" width="150" label="责任部门" align="center"/>
<el-table-column prop="dutyEngineerName" width="150" label="责任工程师" align="center"/>
<el-table-column label="选择责任人" prop="dutyPeople" width="200" align="center">
<template slot-scope="scope">
<div style="display: inline;">
@@ -458,7 +458,7 @@ export default {
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.headerTabs {
/*.headerTabs {
height: 52px;
display: flex;
align-items: center;
@@ -477,14 +477,14 @@ export default {
color: #fff;
background: #E6A23C;
}
}
}*/
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
height: calc(~'100% - 155px');
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
@@ -39,7 +39,8 @@
<span>{{ scope.row.planCloseTime ? $moment(scope.row.planCloseTime).format('YYYY-MM-DD') : '' }}</span>
</template>
</el-table-column>
<el-table-column prop="responsibleUnit" label="责任部门" align="center"/>
<el-table-column prop="responsibleUnit" width="150" label="责任部门" align="center"/>
<el-table-column prop="dutyEngineerName" width="150" label="责任工程师" align="center"/>
<el-table-column prop="dutyPeople" label="负责人" align="center"/>
<el-table-column prop="fileText" label="佐证材料" align="center">
<template slot-scope="scope">
@@ -343,7 +344,7 @@ export default {
/deep/.prc-content-border .el-form-item__content {
width: 270px;
}
.headerTabs {
/* .headerTabs {
height: 52px;
display: flex;
align-items: center;
@@ -362,14 +363,14 @@ export default {
color: #fff;
background: #E6A23C;
}
}
}*/
.content {
border-top: 1px solid #DCDFE6;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-top: 52px;
height: calc(~'100% - 155px');
//height: calc(~'100% - 155px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;