|
@@ -1,7 +1,7 @@
|
|
|
<template>
|
|
|
<div class="distribution">
|
|
|
<van-nav-bar :title="reportBoolean ? '查看报工' : '报工'" left-text="返回" @click-left="back" fixed left-arrow />
|
|
|
- <div class="distribution_con contentRoll">
|
|
|
+ <div class="distribution_con contentRoll flex-column">
|
|
|
<!-- 报工 -->
|
|
|
<div v-if="!reportBoolean">
|
|
|
<van-field v-model="vehicleNum" type="digit" label="车辆序号" @blur="getMyPlanProcedureList()" />
|
|
@@ -20,65 +20,75 @@
|
|
|
</div>
|
|
|
<!-- 内容 -->
|
|
|
<van-empty v-if="myPlanProcedureList.length == 0">暂无待报工任务</van-empty>
|
|
|
- <div v-for="(prod, prodIndex) in myPlanProcedureList" :key="prodIndex">
|
|
|
- <div class="distribution_header">
|
|
|
- <div class="textDis">
|
|
|
- <span>{{ prod.plan_type == 0 ? prod.product_name : prod.task_name }}</span>
|
|
|
- <span v-if="reportBoolean">{{ prod.userName }}</span>
|
|
|
+ <div class="flex1 myPlanProcedureListClass">
|
|
|
+ <div v-for="(prod, prodIndex) in myPlanProcedureList" :key="prodIndex" class="flex1 myPlanProcedureListClass">
|
|
|
+ <!-- 报工 -->
|
|
|
+ <div class="distribution_header" v-if="!reportBoolean">
|
|
|
+ <div class="textDis">
|
|
|
+ <span>{{ prod.plan_type == 0 ? prod.product_name : prod.task_name }}</span>
|
|
|
+ </div>
|
|
|
+ <div v-if="prod.plan_type == 0">{{ prod.product_scheduling_num }}</div>
|
|
|
+ <div>{{ dateBack(prod.start_date) }}-{{ dateBack(prod.end_date) }}</div>
|
|
|
+ <div v-if="prod.vehicle_num_start && prod.vehicle_num_end">{{ prod.vehicle_num_start }}-{{ prod.vehicle_num_end
|
|
|
+ }}</div>
|
|
|
</div>
|
|
|
- <div v-if="prod.plan_type == 0">{{ prod.product_scheduling_num }}</div>
|
|
|
- <!-- <div>{{ prod.start_date.replace(/-/g, '') }}-{{ (!prod.end_date || prod.end_date == 'null') ? "" : prod.end_date.replace(/-/g, '') }}</div> -->
|
|
|
- <div>{{ dateBack(prod.start_date) }}-{{ dateBack(prod.end_date) }}</div>
|
|
|
- <div v-if="prod.vehicle_num_start && prod.vehicle_num_end">{{ prod.vehicle_num_start }}-{{ prod.vehicle_num_end
|
|
|
- }}</div>
|
|
|
- </div>
|
|
|
- <div class="distribution_box" v-for="item, index in prod.procedureList" :key="index" @click="reportItem(item, prod)">
|
|
|
- <!-- 状态 -->
|
|
|
- <div class="statusLeft" :style="`background: ${statusColor[item.status]}`" v-if="item.status"></div>
|
|
|
- <div>
|
|
|
- <van-row>
|
|
|
- <van-col span="19">{{ prod.plan_type == 0 ? item.procedure_name : prod.task_change_notice_num }}</van-col>
|
|
|
- <van-col span="5" style="text-align:right;"><span style="color:goldenrod;font-size:16px;">{{ item.work_time
|
|
|
- }}</span> <span style="font-size:12px;">分钟</span></van-col>
|
|
|
- </van-row>
|
|
|
- <div style="margin-top:10px;text-align: center;">
|
|
|
- <van-row gutter="20">
|
|
|
- <!-- <van-col span="8">
|
|
|
- <div class="valueCls">
|
|
|
- {{ item.progress }}%
|
|
|
- </div>
|
|
|
- <div class="labelCls">
|
|
|
- 进度
|
|
|
- </div>
|
|
|
- </van-col> -->
|
|
|
- <van-col span="8">
|
|
|
- <div class="valueCls" v-if="reportBoolean">
|
|
|
- {{ (item.finishNum && item.finishNum) ? item.finishNum : 0 }}
|
|
|
- </div>
|
|
|
- <div class="valueCls" v-if="!reportBoolean">
|
|
|
- {{ item.num ? item.num : 0 }}
|
|
|
- </div>
|
|
|
- <div class="labelCls">
|
|
|
- 件数
|
|
|
- </div>
|
|
|
- </van-col>
|
|
|
- <van-col span="8">
|
|
|
- <div class="valueCls">
|
|
|
- {{ checkTypeTxt[prod.plan_type == 0 ? item.check_type : item.plan_check_type] }}
|
|
|
- </div>
|
|
|
- <div class="labelCls">
|
|
|
- 质检方式
|
|
|
- </div>
|
|
|
- </van-col>
|
|
|
- <van-col span="8">
|
|
|
- <div class="valueCls">
|
|
|
- {{ item.checker_name ? item.checker_name : '待设置' }}
|
|
|
- </div>
|
|
|
- <div class="labelCls">
|
|
|
- 质检人
|
|
|
- </div>
|
|
|
- </van-col>
|
|
|
+ <!-- 查看报工 -->
|
|
|
+ <div v-if="reportBoolean" class="marginRePor">
|
|
|
+ <div>总时长:<span>{{ +prod.reportTime + 0 }}</span> <i>分钟</i></div>
|
|
|
+ <div>{{ prod.userName }}</div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!-- 列表内容 -->
|
|
|
+ <div class="distribution_box" v-for="item, index in prod.procedureList" :key="index" @click="reportItem(item, prod)">
|
|
|
+ <!-- 状态 -->
|
|
|
+ <div class="statusLeft" :style="`background: ${statusColor[item.status]}`" v-if="item.status"></div>
|
|
|
+ <div v-if="reportBoolean" class="marginBtnPro">{{ item.productName }}</div>
|
|
|
+ <div v-if="reportBoolean" class="marginBtnPro">{{ item.productSchedulingNum }}</div>
|
|
|
+ <div>
|
|
|
+ <van-row>
|
|
|
+ <van-col span="19">{{ prod.plan_type == 0 ? item.procedure_name : prod.task_change_notice_num }}</van-col>
|
|
|
+ <van-col span="5" style="text-align:right;"><span style="color:goldenrod;font-size:16px;">{{ item.work_time
|
|
|
+ }}</span> <span style="font-size:12px;">分钟</span></van-col>
|
|
|
</van-row>
|
|
|
+ <div style="margin-top:10px;text-align: center;">
|
|
|
+ <van-row gutter="20">
|
|
|
+ <!-- <van-col span="8">
|
|
|
+ <div class="valueCls">
|
|
|
+ {{ item.progress }}%
|
|
|
+ </div>
|
|
|
+ <div class="labelCls">
|
|
|
+ 进度
|
|
|
+ </div>
|
|
|
+ </van-col> -->
|
|
|
+ <van-col span="8">
|
|
|
+ <div class="valueCls" v-if="reportBoolean">
|
|
|
+ {{ (item.finishNum && item.finishNum) ? item.finishNum : 0 }}
|
|
|
+ </div>
|
|
|
+ <div class="valueCls" v-if="!reportBoolean">
|
|
|
+ {{ item.num ? item.num : 0 }}
|
|
|
+ </div>
|
|
|
+ <div class="labelCls">
|
|
|
+ 件数
|
|
|
+ </div>
|
|
|
+ </van-col>
|
|
|
+ <van-col span="8">
|
|
|
+ <div class="valueCls">
|
|
|
+ {{ checkTypeTxt[prod.plan_type == 0 ? item.check_type : item.plan_check_type] }}
|
|
|
+ </div>
|
|
|
+ <div class="labelCls">
|
|
|
+ 质检方式
|
|
|
+ </div>
|
|
|
+ </van-col>
|
|
|
+ <van-col span="8">
|
|
|
+ <div class="valueCls">
|
|
|
+ {{ item.checker_name ? item.checker_name : '待设置' }}
|
|
|
+ </div>
|
|
|
+ <div class="labelCls">
|
|
|
+ 质检人
|
|
|
+ </div>
|
|
|
+ </van-col>
|
|
|
+ </van-row>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -252,11 +262,14 @@ export default {
|
|
|
id: item.id,
|
|
|
userProcedureTeamId: item.userProcedureTeamId,
|
|
|
status: item.status,
|
|
|
- createDate: item.createDate
|
|
|
+ createDate: item.createDate,
|
|
|
+ productSchedulingNum: item.productSchedulingNum,
|
|
|
+ productName: item.productName
|
|
|
})
|
|
|
}
|
|
|
obj.procedureList = arr
|
|
|
obj.userName = data[j].name
|
|
|
+ obj.reportTime = data[j].reportTime
|
|
|
newList.push(obj)
|
|
|
}
|
|
|
return newList
|
|
@@ -313,6 +326,10 @@ export default {
|
|
|
},
|
|
|
// 数组日期回显
|
|
|
dateBack(date) {
|
|
|
+ let type = typeof date
|
|
|
+ if(type == 'string') {
|
|
|
+ return date
|
|
|
+ }
|
|
|
if (date && date.length > 0) {
|
|
|
return date.join('-')
|
|
|
}
|
|
@@ -326,6 +343,32 @@ export default {
|
|
|
* {
|
|
|
box-sizing: border-box;
|
|
|
}
|
|
|
+.flex-column {
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+}
|
|
|
+.flex1 {
|
|
|
+ flex: 1;
|
|
|
+}
|
|
|
+.myPlanProcedureListClass {
|
|
|
+ overflow: auto;
|
|
|
+ margin-top: 10px;
|
|
|
+}
|
|
|
+.marginRePor {
|
|
|
+ margin: 12px 0;
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ span {
|
|
|
+ color: goldenrod;
|
|
|
+ }
|
|
|
+ i {
|
|
|
+ font-size: 12px;
|
|
|
+ font-style: normal;
|
|
|
+ }
|
|
|
+}
|
|
|
+.marginBtnPro {
|
|
|
+ margin-bottom: 10px;
|
|
|
+}
|
|
|
.statusLeft {
|
|
|
position: absolute;
|
|
|
width: 10px;
|