|
|
@@ -8,7 +8,7 @@
|
|
|
<div
|
|
|
class="shareBtn"
|
|
|
@click="clickShareFlag(-1)"
|
|
|
- v-if="reportTarget && source != 'share' && reportTarget.reportPostType == 'fx'">
|
|
|
+ v-if="reportTarget && source != 'share'">
|
|
|
<van-icon name="share" />
|
|
|
<div class="vedioLinks" @click.stop>
|
|
|
<span>一键分享日报,</span>
|
|
|
@@ -46,52 +46,10 @@
|
|
|
<Btarget :reportInfo="reportTarget"></Btarget>
|
|
|
</template>
|
|
|
</template>
|
|
|
- <div
|
|
|
- v-if="reportTarget.photoSummary.length > 8"
|
|
|
- class="arrowIcon"
|
|
|
- style="
|
|
|
- display: flex;
|
|
|
- align-items: center;
|
|
|
- justify-content: center;
|
|
|
- padding: 5px 0;
|
|
|
- font-size: 14px;
|
|
|
- color: #969799;
|
|
|
- "
|
|
|
- @click="visitIMG1Flag = !visitIMG1Flag">
|
|
|
- <template v-if="visitIMG1Flag">
|
|
|
- <span style="margin-right: 5px">折叠</span>
|
|
|
- <van-icon size="14" :name="require('@/assets/Icon/arrow-up.png')" />
|
|
|
- </template>
|
|
|
- <template v-else>
|
|
|
- <span style="margin-right: 5px">展开</span>
|
|
|
- <van-icon size="14" :name="require('@/assets/Icon/arrow-down.png')" />
|
|
|
- </template>
|
|
|
- </div>
|
|
|
- <!-- 生动化陈列 sku -->
|
|
|
- <template
|
|
|
- v-if="
|
|
|
- reportTarget.photoSkuImgSummaryeList &&
|
|
|
- reportTarget.photoSkuImgSummaryeList.length
|
|
|
- ">
|
|
|
- <p style="padding-bottom: 10px; font-size: 14px; color: #1e5398; font-weight: 500">
|
|
|
- SKU陈列照识别结果
|
|
|
- </p>
|
|
|
- <p style="padding-bottom: 10px; font-size: 14px; font-weight: 500">
|
|
|
- 目前识别桶装和战略产品合计106个,后续会增加被识别产品数
|
|
|
- </p>
|
|
|
- <el-table
|
|
|
- :data="reportTarget.photoSkuImgSummaryeList"
|
|
|
- border
|
|
|
- class="table-headermd table-headermdhome"
|
|
|
- style="width: 100%">
|
|
|
- <el-table-column label="序号" type="index" width="50px" align="center" />
|
|
|
- <el-table-column label="门店名称(编号)" prop="name" align="center">
|
|
|
- <template slot-scope="scope">
|
|
|
- {{ scope.row.name }}({{ scope.row.code }})
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="SKU数量" prop="count" width="80px" align="center" />
|
|
|
- </el-table>
|
|
|
+ <template v-else>
|
|
|
+ <!-- YFQuota:应用服务平台 不显示各项指标 -->
|
|
|
+ <Atarget :reportInfo="reportTarget"></Atarget>
|
|
|
+ <Btarget :reportInfo="reportTarget"></Btarget>
|
|
|
</template>
|
|
|
</template>
|
|
|
</van-collapse>
|
|
|
@@ -174,10 +132,15 @@
|
|
|
<div
|
|
|
class="shareBtn"
|
|
|
@click="clickShareFlag(index)"
|
|
|
- v-if="reportTarget && source != 'share' && reportTarget.reportPostType == 'fx'">
|
|
|
+ v-if="reportTarget && source != 'share'">
|
|
|
<van-icon name="share" />
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <p class="contentContainerTitle">
|
|
|
+ <template v-if="item.deptName">{{ item.deptName }}-</template>{{ item.postName }}-{{
|
|
|
+ item.nickName
|
|
|
+ }}点评
|
|
|
+ </p>
|
|
|
<div style="padding: 10px 0">
|
|
|
<van-field
|
|
|
v-model="item.remarkContent"
|
|
|
@@ -227,7 +190,10 @@
|
|
|
:urlList="urlList"
|
|
|
:reportRemarksIndex="reportRemarksIndex"
|
|
|
:reportContents="reportContents"
|
|
|
- :checkedPlan="checkedPlan"></share>
|
|
|
+ :checkedPlan="checkedPlan"
|
|
|
+ :isTarget="isTarget"
|
|
|
+ :isReportCustom="isReportCustom"
|
|
|
+ :isHistory="reportTarget.isHistory"></share>
|
|
|
<!--分享图片列表 -->
|
|
|
<el-dialog
|
|
|
title="选择分享的内容"
|
|
|
@@ -237,36 +203,67 @@
|
|
|
:close-on-click-modal="false"
|
|
|
@close="wuliaoTableClose"
|
|
|
custom-class="shareImgFlag">
|
|
|
- <div v-if="reportTarget.photoSummary">
|
|
|
+ <div>
|
|
|
<!-- <p style="margin-bottom: 10px; margin-top: 0; display: flex">
|
|
|
今日总结&明日规划的文本内容<van-checkbox
|
|
|
v-model="checkedPlan"
|
|
|
style="margin-left: 10px"></van-checkbox>
|
|
|
</p> -->
|
|
|
- <p style="margin-top: 0">请点击勾选想要分享的今日拜访照片</p>
|
|
|
- <div class="shareVisitImg">
|
|
|
- <template v-for="(itemImg, indexImg) in reportTarget.photoSummary">
|
|
|
- <div>
|
|
|
- <img :src="itemImg.fileUrl" alt="" @click="selectImg(itemImg)" />
|
|
|
- <van-icon
|
|
|
- @click.stop
|
|
|
- name="success"
|
|
|
- class="activaImg"
|
|
|
- color="#fff"
|
|
|
- size="15"
|
|
|
- style="
|
|
|
- position: absolute;
|
|
|
- right: 0;
|
|
|
- bottom: 0;
|
|
|
- /* margin: -15px 0 0 -15px; */
|
|
|
- pointer-events: none;
|
|
|
- background: #2b73cf;
|
|
|
- border: 2px solid #fff;
|
|
|
- "
|
|
|
- v-if="itemImg.checked" />
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- </div>
|
|
|
+ <p
|
|
|
+ style="
|
|
|
+ margin-bottom: 10px;
|
|
|
+ margin-top: 0;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ cursor: pointer;
|
|
|
+ "
|
|
|
+ v-if="reportTarget.isHistory == '0'"
|
|
|
+ @click="isTarget = !isTarget">
|
|
|
+ <van-checkbox v-model="isTarget" style="margin-right: 10px" @click.stop></van-checkbox>
|
|
|
+ <span>日报指标</span>
|
|
|
+ </p>
|
|
|
+ <p
|
|
|
+ style="
|
|
|
+ margin-bottom: 10px;
|
|
|
+ margin-top: 0;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ cursor: pointer;
|
|
|
+ "
|
|
|
+ v-if="reportTarget.isHistory == '0'"
|
|
|
+ @click="isReportCustom = !isReportCustom">
|
|
|
+ <van-checkbox
|
|
|
+ v-model="isReportCustom"
|
|
|
+ style="margin-right: 10px"
|
|
|
+ @click.stop></van-checkbox>
|
|
|
+ <span>日报填写内容</span>
|
|
|
+ </p>
|
|
|
+ <template v-if="reportTarget.photoSummary">
|
|
|
+ <p style="margin-top: 0">请点击勾选想要分享的今日拜访照片</p>
|
|
|
+ <div class="shareVisitImg">
|
|
|
+ <template v-for="(itemImg, indexImg) in reportTarget.photoSummary">
|
|
|
+ <div>
|
|
|
+ <img :src="itemImg.fileUrl" alt="" @click="selectImg(itemImg)" />
|
|
|
+ <van-icon
|
|
|
+ @click.stop
|
|
|
+ name="success"
|
|
|
+ class="activaImg"
|
|
|
+ color="#fff"
|
|
|
+ size="15"
|
|
|
+ style="
|
|
|
+ position: absolute;
|
|
|
+ right: 0;
|
|
|
+ bottom: 0;
|
|
|
+ /* margin: -15px 0 0 -15px; */
|
|
|
+ pointer-events: none;
|
|
|
+ background: #2b73cf;
|
|
|
+ border: 2px solid #fff;
|
|
|
+ "
|
|
|
+ v-if="itemImg.checked" />
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
</div>
|
|
|
<span slot="footer" class="footer-btn">
|
|
|
<van-button plain type="primary" @click="shareImgFlag = false">取 消</van-button>
|
|
|
@@ -296,11 +293,14 @@ import performanceSAP from '@/views/componentsTarget/performanceSAP';
|
|
|
import ZYSAP from '@/views/componentsTarget/ZYSAP';
|
|
|
import veryGoodPlaceOrder from '@/views/componentsTarget/veryGoodPlaceOrder';
|
|
|
import share from '@/components/share';
|
|
|
+// import chatBIReport from './chatBIReport.vue';
|
|
|
import reportCustom from './reportCustom';
|
|
|
import target from './target.vue';
|
|
|
+import Atarget from '@/views/home/Atarget.vue';
|
|
|
+import Btarget from '@/views/home/Btarget.vue';
|
|
|
|
|
|
export default {
|
|
|
- name: 'daily',
|
|
|
+ name: 'dailyDetails',
|
|
|
components: {
|
|
|
visitedRealTime,
|
|
|
createStoreBJ,
|
|
|
@@ -310,8 +310,11 @@ export default {
|
|
|
ZYSAP,
|
|
|
veryGoodPlaceOrder,
|
|
|
share,
|
|
|
+ // chatBIReport,
|
|
|
reportCustom,
|
|
|
target,
|
|
|
+ Atarget,
|
|
|
+ Btarget,
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
@@ -370,15 +373,18 @@ export default {
|
|
|
reportRemarksIndex: -1,
|
|
|
shareImgFlag: false,
|
|
|
urlList: [],
|
|
|
+ title: '',
|
|
|
setDailyDetailsBoxFlag: true,
|
|
|
sourceType: '',
|
|
|
checkedPlan: true, //今日总结&明日规划
|
|
|
- visitIMG1Flag: false,
|
|
|
shareVisible: true,
|
|
|
+ visitIMG1Flag: false,
|
|
|
shareReportConfig: null,
|
|
|
managerRemarkContent: '',
|
|
|
postName: '',
|
|
|
homePageIndicatorList: null,
|
|
|
+ isTarget: false, //日报指标
|
|
|
+ isReportCustom: true, //日报填写内容
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
|
@@ -426,31 +432,69 @@ export default {
|
|
|
buryingPointName: '日报详情分享',
|
|
|
buryingPointPosition: '日报详情',
|
|
|
});
|
|
|
+ this.isReportCustom = true;
|
|
|
this.urlList = [];
|
|
|
this.reportRemarksIndex = index;
|
|
|
+ // <!-- isHistory 是否为历史汇报:0-新汇报 1-历史汇报 -->
|
|
|
+ if (this.reportTarget.isHistory == '0') {
|
|
|
+ this.setPhotoSummary();
|
|
|
+ this.shareImgFlag = true;
|
|
|
+ } else {
|
|
|
+ this.setPhotoSummary();
|
|
|
+ // 没有图片直接打开分享
|
|
|
+ if (this.reportTarget.photoSummary && this.reportTarget.photoSummary.length) {
|
|
|
+ // 选择分享的图片
|
|
|
+ this.setShareFlag = true;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ setPhotoSummary() {
|
|
|
if (this.reportTarget.photoSummary && this.reportTarget.photoSummary.length) {
|
|
|
// 重置分享图片状态
|
|
|
this.reportTarget.photoSummary.forEach((item) => {
|
|
|
- // item.photos.forEach((val) => {
|
|
|
this.$set(item, 'checked', false);
|
|
|
- // });
|
|
|
});
|
|
|
- // 选择分享的图片
|
|
|
- this.shareImgFlag = true;
|
|
|
- } else {
|
|
|
- this.setShareFlag = true;
|
|
|
}
|
|
|
},
|
|
|
// 确认分享
|
|
|
confirmShare() {
|
|
|
- this.reportTarget.photoSummary.forEach((item) => {
|
|
|
- // item.photos.forEach((val) => {
|
|
|
- if (item.checked) this.urlList.push(item.fileUrl);
|
|
|
- // });
|
|
|
- });
|
|
|
- if (this.urlList.length == 0 && !this.checkedPlan) {
|
|
|
- this.$notify({ type: 'warning', message: '请选择分享内容!', className: 'notifyIndex' });
|
|
|
- return;
|
|
|
+ // 旧的分享没有图标不会进来
|
|
|
+ // 是否有图片
|
|
|
+ if (this.reportTarget.photoSummary) {
|
|
|
+ this.reportTarget.photoSummary.forEach((item) => {
|
|
|
+ if (item.checked) this.urlList.push(item.fileUrl);
|
|
|
+ });
|
|
|
+
|
|
|
+ if (this.reportTarget.isHistory == '0') {
|
|
|
+ if (this.urlList.length == 0 && !this.isTarget && !this.isReportCustom) {
|
|
|
+ this.$notify({
|
|
|
+ type: 'warning',
|
|
|
+ message: '请选择分享内容!',
|
|
|
+ className: 'notifyIndex',
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if (this.urlList.length == 0 && !this.checkedPlan) {
|
|
|
+ this.$notify({
|
|
|
+ type: 'warning',
|
|
|
+ message: '请选择分享内容!',
|
|
|
+ className: 'notifyIndex',
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if (this.reportTarget.isHistory == '0') {
|
|
|
+ if (!this.isTarget && !this.isReportCustom) {
|
|
|
+ this.$notify({
|
|
|
+ type: 'warning',
|
|
|
+ message: '请选择分享内容!',
|
|
|
+ className: 'notifyIndex',
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
buryingPoint({
|
|
|
systemModel: '日报审核',
|
|
|
@@ -530,11 +574,7 @@ export default {
|
|
|
});
|
|
|
getDetailById({ reportId: this.$route.query.reportId }).then((res) => {
|
|
|
loading1.clear();
|
|
|
- if (res.data.postName == '质感销售负责人' || res.data.postName == '质感销售专员') {
|
|
|
- this.homePageIndicatorList = res.data.homePageIndicatorList;
|
|
|
- } else {
|
|
|
- this.homePageIndicatorList = null;
|
|
|
- }
|
|
|
+ this.homePageIndicatorList = res.data.homePageIndicatorList;
|
|
|
this.postName = res.data.postName;
|
|
|
this.reportTargetAll = res.data.reportTargetAll;
|
|
|
this.reportTarget = res.data;
|
|
|
@@ -542,6 +582,8 @@ export default {
|
|
|
this.GZQuota = false;
|
|
|
this.YFQuota = res.data.postType == 'YF' ? true : false;
|
|
|
this.ptitle = res.data.pdeptName + '-' + res.data.ppostName + '-' + res.data.pnickName;
|
|
|
+ this.title =
|
|
|
+ res.data.deptName + '-' + res.data.postName + '-' + res.data.nickName + '的日报';
|
|
|
if (res.data.postType == 'JZ') {
|
|
|
this.JZQuota = true;
|
|
|
} else if (res.data.postType == 'GZ') {
|
|
|
@@ -808,23 +850,6 @@ export default {
|
|
|
border-radius: 6px;
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
-.table-headermd {
|
|
|
- font-size: 12px;
|
|
|
- text-align: center;
|
|
|
- position: initial;
|
|
|
- width: 98% !important;
|
|
|
- margin: 0 auto;
|
|
|
- border-right: 0;
|
|
|
- border-radius: 10px;
|
|
|
- .el-table__cell {
|
|
|
- padding: 6px 0 !important;
|
|
|
- }
|
|
|
-}
|
|
|
-.table-headermd th.el-table__cell {
|
|
|
- background-color: #1989fa;
|
|
|
- color: #fff;
|
|
|
-}
|
|
|
.el-dialog__wrapper {
|
|
|
z-index: 9999 !important;
|
|
|
display: flex;
|
|
|
@@ -837,25 +862,60 @@ export default {
|
|
|
flex-direction: column;
|
|
|
max-height: 70%;
|
|
|
margin-top: 0 !important;
|
|
|
+ border-radius: 12px;
|
|
|
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
|
+ z-index: 10000;
|
|
|
.el-dialog__header {
|
|
|
- height: 40px;
|
|
|
+ height: 50px;
|
|
|
display: flex;
|
|
|
- justify-content: right;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ border-bottom: 1px solid #ebeef5;
|
|
|
+ padding: 0 20px;
|
|
|
+ background-color: #fff;
|
|
|
+ .el-dialog__title {
|
|
|
+ font-size: 16px;
|
|
|
+ font-weight: 500;
|
|
|
+ color: #303133;
|
|
|
+ }
|
|
|
.el-dialog__headerbtn {
|
|
|
- position: static !important;
|
|
|
+ position: absolute;
|
|
|
+ right: 15px;
|
|
|
+ top: 15px;
|
|
|
}
|
|
|
}
|
|
|
.el-dialog__body {
|
|
|
- padding: 30px 20px !important;
|
|
|
+ padding: 20px !important;
|
|
|
overflow-y: auto;
|
|
|
flex: 1;
|
|
|
+ background-color: #fff;
|
|
|
}
|
|
|
.cell {
|
|
|
font-size: 12px;
|
|
|
}
|
|
|
.footer-btn {
|
|
|
display: flex;
|
|
|
- justify-content: space-around;
|
|
|
+ justify-content: center;
|
|
|
+ gap: 30px;
|
|
|
+ padding: 15px 20px;
|
|
|
+ border-top: 1px solid #ebeef5;
|
|
|
+ background-color: #fff;
|
|
|
+ border-radius: 0 0 12px 12px;
|
|
|
+ margin-top: 0 !important;
|
|
|
+ button {
|
|
|
+ width: 120px;
|
|
|
+ height: 36px;
|
|
|
+ border-radius: 18px;
|
|
|
+ }
|
|
|
+ .van-button--primary {
|
|
|
+ background-color: #2b73cf;
|
|
|
+ border-color: #2b73cf;
|
|
|
+ }
|
|
|
+ .van-button--primary.van-button--plain {
|
|
|
+ color: #999;
|
|
|
+ border-color: #dcdfe6;
|
|
|
+ background-color: #f5f7fa;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -869,25 +929,44 @@ export default {
|
|
|
margin-right: 3%;
|
|
|
margin-top: 10px;
|
|
|
position: relative;
|
|
|
+ border-radius: 8px;
|
|
|
+ overflow: hidden;
|
|
|
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
|
|
|
img {
|
|
|
width: 100%;
|
|
|
height: 100%;
|
|
|
+ object-fit: cover;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- .el-dialog__header {
|
|
|
- display: flex;
|
|
|
- .el-dialog__title {
|
|
|
- flex: 1;
|
|
|
- display: flex;
|
|
|
- align-items: center;
|
|
|
- justify-content: center;
|
|
|
- }
|
|
|
+ .el-dialog__title {
|
|
|
+ height: 50px;
|
|
|
+ line-height: 50px !important;
|
|
|
+ }
|
|
|
+ .el-dialog__footer {
|
|
|
+ padding: 0;
|
|
|
}
|
|
|
}
|
|
|
.notifyIndex {
|
|
|
z-index: 999999 !important;
|
|
|
}
|
|
|
+
|
|
|
+.table-headermd {
|
|
|
+ font-size: 12px;
|
|
|
+ text-align: center;
|
|
|
+ position: initial;
|
|
|
+ width: 98% !important;
|
|
|
+ margin: 0 auto;
|
|
|
+ border-right: 0;
|
|
|
+ border-radius: 10px;
|
|
|
+ .el-table__cell {
|
|
|
+ padding: 6px 0 !important;
|
|
|
+ }
|
|
|
+}
|
|
|
+.table-headermd th.el-table__cell {
|
|
|
+ background-color: #1989fa;
|
|
|
+ color: #fff;
|
|
|
+}
|
|
|
.van-nav-bar__right:active {
|
|
|
opacity: 1 !important;
|
|
|
}
|