Merge remote-tracking branch 'origin/fix_20230911_UAT' into fix_20230911_UAT

This commit is contained in:
zhn
2023-12-18 15:26:46 +08:00
4 changed files with 157 additions and 25 deletions
@@ -501,6 +501,7 @@
import { mapGetters } from 'vuex'
import axios from 'axios'
import Vue from 'vue'
import { ImagePreview } from 'vant'
const toolbarOptions = [
['bold', 'italic', 'underline', 'strike'], // toggled buttons
@@ -723,7 +724,7 @@
// return
// }
this.formInline.progressTrackingList.push({ progressTracking: text, isDescription: false })
this.formInline.progressTrackingList.push({ progressTracking: text, isDescription: true })
}
},
Standardselectioninput(val) {
@@ -799,6 +800,10 @@
}
if (this.formInline.progressTrackingList == null) {
this.formInline.progressTrackingList = []
} else {
this.formInline.progressTrackingList.forEach(val => {
val.isDescription = true
})
}
if (this.formInline.approvalEvidenceLinkList == null) {
this.formInline.approvalEvidenceLinkList = [{}]
@@ -837,7 +842,7 @@
// this.formInline.progressTrackingList.splice(0, 1)
// }
// })
this.formInline.progressTrackingList.push({ progressTracking: text, isDescription: false })
this.formInline.progressTrackingList.push({ progressTracking: text, isDescription: true })
// this.formInline.progressTrackingList.splice(this.index + 1, 1, { progressTracking: text })
console.log(this.formInline.progressTrackingList)
@@ -1052,7 +1057,14 @@
},
progressTrackingOpenClick(e) {
if (e.target.localName == 'img') {
this.$refs.viewImgRef.getData(e.target.currentSrc)
ImagePreview(
{
images: [
e.target.currentSrc
],
closeable: true
})
// this.$refs.viewImgRef.getData(e.target.currentSrc)
}
}
}
@@ -1308,6 +1320,7 @@
.progressTrackingListClass:last-child {
margin-bottom: 0;
}
::v-deep .text-box-index-text-top img {
max-width: 100% !important;
}
@@ -167,9 +167,27 @@
:title="$t('progresstracking')">{{$t('progresstracking')}}</span>
</div>
<div class="itemModel">
<div class="text-box" v-for="(item,index) in formInline.progressTrackingList" :key="index">
<div class="text-box-index-text-top" @click="progressTrackingOpenClick($event)"
v-html="item.progressTracking"></div>
<div v-for="(item,index) in formInline.progressTrackingList" :key="index">
<div class="text-box" v-if="!item.isDescription">
<div class="text-box-index-text-top" @click="progressTrackingOpenClick($event)"
v-html="item.progressTracking"></div>
<div class="text-box-index-text-right">
<div class="text-box-index-text-right-text" @click="openClick(item)">
<img src="../../../../assets/progressExit.png" alt="">
<span style="margin-left: 2px">{{$t('putAway')}}</span>
</div>
</div>
</div>
<div class="text-box-index" v-if="item.isDescription">
<div class="text-box-index-text" @click="progressTrackingOpenClick($event)"
v-html="item.progressTracking"></div>
<div class="text-box-index-text-right">
<div class="text-box-index-text-right-text" @click="openClick(item)">
<img src="../../../../assets/medieProgress.png" alt="">
<span style="margin-left: 2px">{{$t('open')}}</span>
</div>
</div>
</div>
</div>
</div>
</div>
@@ -224,6 +242,7 @@
import moment from 'moment'
import viewImg from './viewImg'
import { mapGetters } from 'vuex'
import { ImagePreview } from 'vant'
export default {
name: 'fillAdd',
@@ -280,7 +299,7 @@
},
formInline: {
fileLinkList: [{}],
progressTrackingList: [{}],
progressTrackingList: [],
approvalEvidenceLinkList: [{}],
dutyTerritory: undefined,
projectId: undefined,
@@ -362,6 +381,14 @@
} else if (row.projectType == 'numberPlatform' || row.projectType == 'carPlatform') {
this.getPlatform(row.projectType)
}
if (this.formInline.progressTrackingList && this.formInline.progressTrackingList.length > 0) {
this.formInline.progressTrackingList.forEach(res => {
res.isDescription = true
})
} else {
this.formInline.progressTrackingList = []
}
// if (this.formInline.dutyTerritory != null) {
// this.formInline.dutyTerritory = this.formInline.dutyTerritory.split(',')
// } else {
@@ -377,7 +404,6 @@
}
})
this.formInline = { ...this.formInline }
console.log(this.formInline)
this.visible = true
this.disabled = true
this.$nextTick(() => {
@@ -401,8 +427,19 @@
},
progressTrackingOpenClick(e) {
if (e.target.localName == 'img') {
this.$refs.viewImgRef.getData(e.target.currentSrc)
ImagePreview(
{
images: [
e.target.currentSrc
],
closeable: true
})
// this.$refs.viewImgRef.getData(e.target.currentSrc)
}
},
openClick(item) {
item.isDescription = !item.isDescription
this.formInline = { ...this.formInline }
}
}
}
@@ -512,14 +549,6 @@
word-break: break-word;
}
.text-box {
width: 100%;
height: 200px;
display: inline-block;
border: 1px solid #ccc;
padding: 0 15px;
margin-bottom: 10px;
}
.itemModel-text {
box-sizing: border-box;
@@ -538,12 +567,13 @@
.text-box {
width: 100%;
height: 200px;
height: auto;
display: inline-block;
border: 1px solid #ccc;
padding: 0;
border-radius: 4px;
position: relative;
margin-bottom: 10px;
}
::v-deep .text-box-index-text-top p {
@@ -590,7 +620,7 @@
.itemModel-text-box {
width: 100%;
white-space: pre-wrap;
height: 200px;
height: auto;
display: inline-block;
border: 1px solid #ccc;
border-radius: 4px;
@@ -605,4 +635,46 @@
::v-deep .text-box-index-text-top img {
max-width: 100% !important;
}
.text-box-index-text-right {
position: absolute;
display: flex;
align-items: center;
top: 13px;
right: 2px;
}
.text-box-index-text-right-text {
font-size: 14px;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #01A0AC;
display: flex;
align-items: center;
margin-right: 10px;
cursor: pointer;
}
.text-box-index {
width: 100%;
height: 46px;
display: inline-block;
padding: 0 15px;
border: 1px solid #ccc;
border-radius: 4px 4px 0px 0px;
white-space: pre-wrap;
overflow: hidden;
position: relative;
margin-bottom: 6px;
}
.text-box-index-text {
width: 100%;
overflow: hidden;
white-space: pre-wrap;
}
::v-deep .text-box-index-text .text-class {
background: #fff !important;
}
</style>
@@ -58,6 +58,7 @@
</div>
<a-form-model-item class="itemModel" :prop="'flag'">
<a-radio-group class="box-input"
@change="reviewResultChange"
v-model="formInline.flag">
<a-radio value="Accepted" v-if="titleName == $t('Taskresponsibilityrecognition')">
{{$t('accept')}}
@@ -81,6 +82,26 @@
</a-form-model-item>
</a-col>
</a-row>
<a-row :gutter="24" v-if="isDeliveryTime">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text"
:title="$t('expectedDeliveryTime')">{{$t('expectedDeliveryTime')}}</span>
</div>
</div>
<a-form-model-item class="itemModel" :prop="'deliveryTime'">
<a-date-picker class="box-input"
:placeholder="$t('PleaseSelect')+$t('expectedDeliveryTime')"
@change="dateChange({db_field_name:'deliveryTime'})"
format="YYYY-MM-DD"
:getCalendarContainer="(trigger) => trigger.parentNode"
v-model="formInline.deliveryTime"
style="width: 100%"/>
</a-form-model-item>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="24">
<div class="box-title-text">
@@ -140,6 +161,7 @@
props: {},
data() {
return {
isDeliveryTime: false,
titleName: '',
allTitle: '',
visible: false,
@@ -247,19 +269,40 @@
message: this.$t('feedbackMessage') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
trigger: 'blur'
}
]
],
deliveryTime: [
{
required: true,
message: this.$t('expectedDeliveryTime') + this.$t('cannotEmpty'),
trigger: 'change'
}
],
},
formInline: {},
uploadName: ''
}
},
methods: {
dateChange(item) {
this.formInline[item.db_field_name] = this.formInline[item.db_field_name] ? moment(this.formInline[item.db_field_name]).format('YYYY-MM-DD') : ''
this.formInline = { ...this.formInline }
},
reviewResultChange(value) {
if (value.target.value == 'To be tracked') {
this.isDeliveryTime = true
} else {
this.isDeliveryTime = false
this.formInline.deliveryTime = ''
}
this.formInline = { ...this.formInline }
},
...mapGetters(['userInfo']),
confirmation(data, name) {
this.visible = true
this.processableList = []
this.noProcessableList = []
this.formInline = {}
this.isDeliveryTime = false
data.forEach(res => {
res = JSON.parse(res)
if (name == this.$t('Taskresponsibilityrecognition')) {
@@ -306,6 +349,9 @@
taskIds.push(res.taskId)
})
let handlingTime = moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
if (this.formInline.flag == 'To be tracked') {
this.formInline.approvalOpinion = this.formInline.approvalOpinion + ';' + this.$t('expectedDeliveryTime') + ':' + this.formInline.deliveryTime
}
let query = {
...this.formInline,
taskIds: taskIds.join(','),
@@ -481,7 +527,7 @@
color: red;
}
::v-deep .ant-drawer-header .ant-drawer-title{
::v-deep .ant-drawer-header .ant-drawer-title {
font-weight: bold;
}
</style>
@@ -32,7 +32,8 @@
:standardContentQuery="queryProject"
/>
<!-- :class="{'circulationHistory':this.queryData.isDisplay,'circulationHistoryOne':!this.queryData.isDisplay}"-->
<experienceReferenceList ref="experienceReferenceListRef"/>
<experienceReferenceList v-if="isDisplay"
ref="experienceReferenceListRef"/>
<div>
<circulationHistory
v-if="isDisplay"
@@ -300,14 +301,14 @@
if (this.queryData.platform) {
this.queryProject.platform = this.queryData.platform
}
this.$nextTick(() => {
this.$refs.experienceReferenceListRef.getData(this.queryProject.serialNumber)
})
// if (this.queryData.TaskKey == 'zrrqr' || this.queryData.TaskKey == 'dezrrqr') {
// this.queryProject.endTime = this.queryData.endTime
// }
this.loading = false
this.isDisplay = true
this.$nextTick(() => {
this.$refs.experienceReferenceListRef.getData(this.queryProject.serialNumber)
})
} else {
this.queryProject = {}
this.loading = false