Commit d765895dbd645501b760ac37cd339109396fb1ec
Merge branch 'master' of http://39.98.150.180/webapp/GreenwayWeb
Showing
56 changed files
with
7209 additions
and
565 deletions
yanshouban/src/api/account.js
yanshouban/src/api/activityBz.js
yanshouban/src/api/information.js
| ... | ... | @@ -106,3 +106,24 @@ export function statistical(data) { |
| 106 | 106 | data |
| 107 | 107 | }) |
| 108 | 108 | } |
| 109 | + | |
| 110 | +// 商户导入管理模板 | |
| 111 | +export const excelAdd = (data = {}) => { | |
| 112 | + return request({ | |
| 113 | + url: '/cereBasicInformationShop/excelAdd', | |
| 114 | + method: 'post', | |
| 115 | + data, | |
| 116 | + headers: { | |
| 117 | + 'Content-type': 'multipart/form-data' | |
| 118 | + } | |
| 119 | + }) | |
| 120 | +} | |
| 121 | + | |
| 122 | +// 租赁信息 | |
| 123 | +export function zulxin(data) { | |
| 124 | + return request({ | |
| 125 | + url: `cereBasicInformationShop/${data.venueNumber}`, | |
| 126 | + method: 'get', | |
| 127 | + data | |
| 128 | + }) | |
| 129 | +} | ... | ... |
yanshouban/src/api/kefuServeBao.js
| ... | ... | @@ -16,6 +16,14 @@ export function ReportDel(data) { |
| 16 | 16 | data |
| 17 | 17 | }) |
| 18 | 18 | } |
| 19 | +// 报修修改 | |
| 20 | +export function Reportedit(data) { | |
| 21 | + return request({ | |
| 22 | + url: '/cereReportIssuesRepairs/edit', | |
| 23 | + method: 'post', | |
| 24 | + data | |
| 25 | + }) | |
| 26 | +} | |
| 19 | 27 | // 投诉 |
| 20 | 28 | export function ComplaintGetAll(data) { |
| 21 | 29 | return request({ | ... | ... |
yanshouban/src/api/map1.js
yanshouban/src/api/piaowu.js
| ... | ... | @@ -89,3 +89,14 @@ export function excelToRefundData(data) { |
| 89 | 89 | responseType: 'blob' |
| 90 | 90 | }) |
| 91 | 91 | } |
| 92 | + | |
| 93 | + | |
| 94 | +// 总销售额导出 | |
| 95 | +export function excelToTotalSales(data) { | |
| 96 | + return request({ | |
| 97 | + url: '/ticket/excelToTotalSales', | |
| 98 | + method: 'post', | |
| 99 | + data, | |
| 100 | + responseType: 'blob' | |
| 101 | + }) | |
| 102 | +} | ... | ... |
yanshouban/src/api/sam.js
| ... | ... | @@ -33,3 +33,34 @@ export function ceDel(data) { |
| 33 | 33 | data |
| 34 | 34 | }) |
| 35 | 35 | } |
| 36 | + | |
| 37 | + | |
| 38 | +export function addAddress(data) { | |
| 39 | + return request({ | |
| 40 | + url: '/cereBasicInformationShopLocation/add', | |
| 41 | + method: 'post', | |
| 42 | + data | |
| 43 | + }) | |
| 44 | +} | |
| 45 | + | |
| 46 | +export function deleteAddress(data) { | |
| 47 | + return request({ | |
| 48 | + url: `cereBasicInformationShopLocation/delete/${data.id}`, | |
| 49 | + method: 'get', | |
| 50 | + data | |
| 51 | + }) | |
| 52 | +} | |
| 53 | +export function editAddress(data) { | |
| 54 | + return request({ | |
| 55 | + url: '/cereBasicInformationShopLocation/edit', | |
| 56 | + method: 'post', | |
| 57 | + data | |
| 58 | + }) | |
| 59 | +} | |
| 60 | +export function getAllAddress(data) { | |
| 61 | + return request({ | |
| 62 | + url: '/cereBasicInformationShopLocation/getAll', | |
| 63 | + method: 'post', | |
| 64 | + data | |
| 65 | + }) | |
| 66 | +} | ... | ... |
yanshouban/src/utils/request.js
| ... | ... | @@ -21,7 +21,7 @@ if (host == '172.16.61.48' || host == '172.16.61.49:5173' || host =='172.16.61.1 |
| 21 | 21 | // PREFIX = 'http://172.16.61.48/meserver/admin-server'; |
| 22 | 22 | // PREFIX = 'http://192.168.2.213:9003'; |
| 23 | 23 | // PREFIX = 'http://8.130.38.56:8019/admin-server'; |
| 24 | - PREFIX = 'http://192.168.8.106:9003'; | |
| 24 | + PREFIX = 'http://192.168.2.250:9003'; | |
| 25 | 25 | // PREFIX = 'https://wjdc.scjysm.asia:1443/meserver/admin-server'; |
| 26 | 26 | // PREFIX = 'https://jy.scjysm.asia:18086/admin-server'; |
| 27 | 27 | // PREFIX = 'http://172.16.61.126:8080/meserver/admin-server'; | ... | ... |
yanshouban/src/views/activity/activityBz.vue
| ... | ... | @@ -97,6 +97,18 @@ |
| 97 | 97 | </el-select> |
| 98 | 98 | </el-form-item> |
| 99 | 99 | </el-col> |
| 100 | + <el-col :span="12"> | |
| 101 | + <el-form-item label="历史活动方案" class="grid-content bg-purple device-from" > | |
| 102 | + <el-select v-model="lishiList" placeholder="请选择" style="width:100%" @change="lichange" > | |
| 103 | + <el-option | |
| 104 | + v-for="(item,index) in fenxiData" | |
| 105 | + :key="item.id" | |
| 106 | + :label="item.operationType" | |
| 107 | + :value="index"> | |
| 108 | + </el-option> | |
| 109 | + </el-select> | |
| 110 | + </el-form-item> | |
| 111 | + </el-col> | |
| 100 | 112 | </el-row> |
| 101 | 113 | <el-row :gutter="20"> |
| 102 | 114 | <el-col :span="12"> |
| ... | ... | @@ -359,7 +371,8 @@ |
| 359 | 371 | MingEdit, |
| 360 | 372 | MingDel, |
| 361 | 373 | fujiaAdd, |
| 362 | - imgUp | |
| 374 | + imgUp, | |
| 375 | + lishiDeta | |
| 363 | 376 | } from '../../api/activityBz' |
| 364 | 377 | // import { Editor, Toolbar } from '@wangeditor/editor-for-vue' |
| 365 | 378 | import wangEditor from "@/components/editor/index"; |
| ... | ... | @@ -387,6 +400,7 @@ |
| 387 | 400 | wangEditor, |
| 388 | 401 | upimg |
| 389 | 402 | }, |
| 403 | + | |
| 390 | 404 | data() { |
| 391 | 405 | return { |
| 392 | 406 | uploadFileUrl: uploadUrl, // 请求地址 |
| ... | ... | @@ -481,6 +495,8 @@ |
| 481 | 495 | yugu: null, |
| 482 | 496 | fun: null |
| 483 | 497 | }, |
| 498 | +fenxiData:[], | |
| 499 | +lishiList:'', | |
| 484 | 500 | |
| 485 | 501 | } |
| 486 | 502 | }, |
| ... | ... | @@ -490,6 +506,7 @@ |
| 490 | 506 | }, |
| 491 | 507 | mounted() { |
| 492 | 508 | this.editTrue = true |
| 509 | + this.lishi() | |
| 493 | 510 | }, |
| 494 | 511 | methods: { |
| 495 | 512 | //获取当前时间 |
| ... | ... | @@ -504,6 +521,22 @@ |
| 504 | 521 | |
| 505 | 522 | this.currentTime = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; |
| 506 | 523 | }, |
| 524 | + lishi(){ | |
| 525 | + lishiDeta({eventDetailsType:'1'}).then(res=>{ | |
| 526 | + this.fenxiData = res.data | |
| 527 | + }) | |
| 528 | + }, | |
| 529 | + lichange(e){ | |
| 530 | + | |
| 531 | + let msg =this.fenxiData[e] | |
| 532 | + let obj = JSON.parse(msg.originalData) | |
| 533 | + | |
| 534 | + for (let key in obj) { | |
| 535 | + if (this.ruleForm.hasOwnProperty(key)) { | |
| 536 | + this.ruleForm[key] = obj[key]; | |
| 537 | + } | |
| 538 | + } | |
| 539 | + }, | |
| 507 | 540 | zancun() {}, |
| 508 | 541 | //上传 |
| 509 | 542 | submitUpload() { | ... | ... |
yanshouban/src/views/activity/activityHis.vue
0 → 100644
| 1 | +<template> | |
| 2 | + <div style="background-color:#f7f7f7;padding:10px 10px;"> | |
| 3 | + <div class="zhuti"> | |
| 4 | + <div style="height:58px;line-height:58px;"> | |
| 5 | + <div style="color:#0006"> <span>品牌策划</span> <span style="padding:0 5px;">></span> <span style="color:#000000e6">活动策划调整</span></div> | |
| 6 | + </div> | |
| 7 | + <div> | |
| 8 | + <!-- 搜索 --> | |
| 9 | + <div class="formSearch"> | |
| 10 | + <div class="demo-input-suffix"> | |
| 11 | + <div v-if="searPei.name" style="display: flex;"> | |
| 12 | + <div style="width: 68px;height:36px;line-height:36px;" >方案名称</div> | |
| 13 | + <el-input placeholder="请输入" v-model="formSear.planName" style="width:168px;"> | |
| 14 | + </el-input> | |
| 15 | + </div> | |
| 16 | + <!-- <div v-if="searPei.lei" style="display: flex;"> | |
| 17 | + <div style="width: 68px;height:36px;line-height:36px;">方案类型</div> | |
| 18 | + <el-input placeholder="请输入" v-model="planName" style="width:168px;"> | |
| 19 | + </el-input> | |
| 20 | + </div> --> | |
| 21 | + <div v-if="searPei.staut" style="display: flex;"> | |
| 22 | + <div style="width: 68px;height:36px;line-height:36px;">审批状态</div> | |
| 23 | + <el-select v-model="formSear.state" placeholder="请选择" | |
| 24 | + style="width: 100px;margin-right: 5px"> | |
| 25 | + <el-option label="待提交" value="" /> | |
| 26 | + <el-option label="待审核" value="1" /> | |
| 27 | + <el-option label="已通过" value="5" /> | |
| 28 | + <el-option label="已驳回" value="6" /> | |
| 29 | + </el-select> | |
| 30 | + </el-input> | |
| 31 | + </div> | |
| 32 | + | |
| 33 | + | |
| 34 | + </div> | |
| 35 | + <div > | |
| 36 | + | |
| 37 | + <el-button @click="onSubmit" style="background-color: #3F9B6A;color: #fff">查询 | |
| 38 | + </el-button> | |
| 39 | + <el-button @click="resetting" | |
| 40 | + class="buttonHover" | |
| 41 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;">重置 | |
| 42 | + </el-button> | |
| 43 | + </div> | |
| 44 | + </div> | |
| 45 | + <div style="margin: 20px 0;"> | |
| 46 | + <div style="display:flex;"> | |
| 47 | + <el-button style="background-color: #3F9B6A;color: #fff;" @click="setSearch">搜索关键词设置</el-button> | |
| 48 | + <el-button style="background-color: #3F9B6A;color: #fff;" @click="duibi">效果对比</el-button> | |
| 49 | + <el-upload class="upload-demo" ref="upload" | |
| 50 | + :limit="1" | |
| 51 | + accept=".xlsx" | |
| 52 | + :action="uploadFileUrl" | |
| 53 | + :on-success="daoru" | |
| 54 | + :file-list="daoData" | |
| 55 | + :auto-upload="true" | |
| 56 | + :show-file-list="false"> | |
| 57 | + <el-button style="background-color: #fff;color: #3F9B6A;border: 1px solid #dcdfe6;margin:0 15px;" class="buttonHover" >导入</el-button> | |
| 58 | + </el-upload> | |
| 59 | + | |
| 60 | + <el-button style="background-color: #3F9B6A;color: #fff;" @click="daochu">审核流程导出</el-button> | |
| 61 | + <!-- <el-button style="background-color: #fff;color: #000;border: 1px solid #B1B1B1;" | |
| 62 | + icon="el-icon-folder-add" class="buttonHover" @click="xinFenlei">活动分类管理</el-button> --> | |
| 63 | + </div> | |
| 64 | + | |
| 65 | + </div> | |
| 66 | + <!-- 分栏 --> | |
| 67 | + <div class="fenlan"> | |
| 68 | + <!-- 搜索分类 --> | |
| 69 | + | |
| 70 | + <div class="tableList"> | |
| 71 | + | |
| 72 | + <!-- 表格 --> | |
| 73 | + <div> | |
| 74 | + <el-table :data="tableData.slice((currentPage - 1) * pageSize, currentPage * pageSize)" | |
| 75 | + @selection-change="handleSelectionChange" tooltip-effect="dark" align="left" | |
| 76 | + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}" | |
| 77 | + ref="mulTable"> | |
| 78 | + <el-table-column type="selection" width="80"> | |
| 79 | + </el-table-column> | |
| 80 | + <el-table-column label="方案名称" width="300" prop="planName"> | |
| 81 | + </el-table-column> | |
| 82 | + <el-table-column label="类型" prop="planType" width="80"> | |
| 83 | + </el-table-column> | |
| 84 | + <!-- <el-table-column label="发布状态" width="80" > | |
| 85 | + | |
| 86 | + </el-table-column> --> | |
| 87 | + <el-table-column label="审批状态" width="150"> | |
| 88 | + <template slot-scope="scope"> | |
| 89 | + {{scope.row.state == ''?'待提交':scope.row.state == '1'?'待审批':scope.row.state == '2'?'部门领导审批':scope.row.state == '3'?'公司领导审批':scope.row.state == '4'?'其他审批':scope.row.state == '5'?'审核通过':'已驳回'}} | |
| 90 | + </template> | |
| 91 | + </el-table-column> | |
| 92 | + <el-table-column label="创建时间" prop="createDate"width="250" > | |
| 93 | + </el-table-column> | |
| 94 | + <el-table-column prop="auditReminderTime" label="审核提醒时间" width="200"> | |
| 95 | + | |
| 96 | + </el-table-column> | |
| 97 | + <el-table-column label="操作" width="350"> | |
| 98 | + <template slot-scope="scope"> | |
| 99 | + <div @click="actBian(scope.row)" class="tableBtn greens" v-if="scope.row.state == ''">修改</div> | |
| 100 | + <!-- <div class="tableBtn greens">发布</div> --> | |
| 101 | + <div class="tableBtn greens" @click="handleEditForm(scope.row)">执行情况</div> | |
| 102 | + <!-- <div class="tableBtn greens" @click="handleEditForm(scope.row)">历史方案查看</div> --> | |
| 103 | + | |
| 104 | + <!-- <div class="tableBtn greens">策略调整</div> --> | |
| 105 | + <!-- <div class="tableBtn greens" @click="koop(scope.row)">复制</div> --> | |
| 106 | + </template> | |
| 107 | + </el-table-column> | |
| 108 | +</el-table> | |
| 109 | +<div class="fenye"> | |
| 110 | + <div> | |
| 111 | + <el-button @click="tableAll" class="buttonHover" style="color: #000;border: 1px solid #DBDBDB;background-color: #fff;">选择全部 | |
| 112 | + </el-button> | |
| 113 | + <el-button @click="toggleSelection(tableData)" | |
| 114 | + class="buttonHover" | |
| 115 | + style="color: #000;border: 1px solid #DBDBDB;background-color: #fff;">反向选择 | |
| 116 | + </el-button> | |
| 117 | + </div> | |
| 118 | + <el-pagination class="pagination" :hide-on-single-page="flag" background small :current-page="currentPage" | |
| 119 | + :page-size="pageSize" layout="prev,pager,next" :total="total" | |
| 120 | + @current-change="handleCurrentChange" /> | |
| 121 | +</div> | |
| 122 | + | |
| 123 | +</div> | |
| 124 | +</div> | |
| 125 | +</div> | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | +<!-- 详情活动方案 --> | |
| 130 | +<el-dialog title="活动方案详情" :visible.sync="ggXin" custom-class='xiang_css' style="padding: 0;" width="80%" center | |
| 131 | + :close-on-click-modal="false" :close-on-press-escape="false" @close="refreshData"> | |
| 132 | + <div ref="actXiang"> | |
| 133 | + <div style="width: 100%;"> | |
| 134 | + <div style="display: flex;padding:0px 20px 20px 20px; "> | |
| 135 | + <div style="width: 150px;height: 80px;" v-if="secondData.coverPoster"> | |
| 136 | + <img :src="secondData.coverPoster" alt="" style="width: 100%;height: 80px;" /> | |
| 137 | + </div> | |
| 138 | + <div | |
| 139 | + style="display: flex;flex-direction: column;justify-content: space-around;padding: 0 10px;font-size: 12px;"> | |
| 140 | + <span style="margin-bottom: 10px;">{{text}}</span> | |
| 141 | + <span>活动时间:{{tableData1[1].eventTheme}}至{{tableData1[1].planName}}</span> | |
| 142 | + <span>活动地点:{{tableData1[0].planName}}</span> | |
| 143 | + </div> | |
| 144 | + </div> | |
| 145 | + </div> | |
| 146 | + <div style="width: 100%;background-color: #fff;"> | |
| 147 | + <el-tabs v-model="activeName" @tab-click="handleClick" style="padding-left:20px;"> | |
| 148 | + <el-tab-pane label="方案概况" name="first"></el-tab-pane> | |
| 149 | + <el-tab-pane label="执行效果" name="second"></el-tab-pane> | |
| 150 | + <el-tab-pane label="历史方案" name="fourd"></el-tab-pane> | |
| 151 | + </el-tabs> | |
| 152 | + </div> | |
| 153 | + <div v-if="activeName=='first'" style="display: flex;"> | |
| 154 | + <div style="width: 100%;"> | |
| 155 | + <div style="width: 100%;"> | |
| 156 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">基本信息</div> | |
| 157 | + <div style="padding: 10px 20px;"> | |
| 158 | + <el-table :data="tableData1" | |
| 159 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 160 | + style="width: 100%;margin: auto;"> | |
| 161 | + <el-table-column class-name="first-column-bg" label="方案编号" prop="name" min-width="15%"> | |
| 162 | + </el-table-column> | |
| 163 | + <el-table-column :label="id" prop="eventTheme" min-width="35%"> | |
| 164 | + | |
| 165 | + </el-table-column> | |
| 166 | + <el-table-column class-name="first-column-bg" label="方案名称" prop="text" min-width="15%"> | |
| 167 | + | |
| 168 | + </el-table-column> | |
| 169 | + <el-table-column :label="text" prop="planName" min-width="35%"> | |
| 170 | + | |
| 171 | + </el-table-column> | |
| 172 | + </el-table> | |
| 173 | + | |
| 174 | + | |
| 175 | + </div> | |
| 176 | + </div> | |
| 177 | + <div style="width: 100%;"> | |
| 178 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">活动明细信息</div> | |
| 179 | + <div style="padding: 10px 20px;"> | |
| 180 | + <el-table :data="tableData2" | |
| 181 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 182 | + style="width: 100%;margin: auto;"> | |
| 183 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 184 | + <template slot-scope="scope"> | |
| 185 | + <span style="">{{ scope.$index +1}}</span> | |
| 186 | + </template> | |
| 187 | + </el-table-column> | |
| 188 | + <el-table-column label="明细项名称" prop="detailLtemName" min-width="28%"> | |
| 189 | + </el-table-column> | |
| 190 | + <el-table-column label="预估数量" prop="estimatedQuantity" min-width="20%"> | |
| 191 | + | |
| 192 | + </el-table-column> | |
| 193 | + <el-table-column label="预估费用" prop="estimatedCost" min-width="20%"> | |
| 194 | + | |
| 195 | + </el-table-column> | |
| 196 | + <el-table-column label="备注" prop="notes" min-width="20%"> | |
| 197 | + </el-table-column> | |
| 198 | + </el-table> | |
| 199 | + </div> | |
| 200 | + </div> | |
| 201 | + <div style="width: 100%;"> | |
| 202 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">活动成本信息</div> | |
| 203 | + <div style="padding:10px 20px;"> | |
| 204 | + <el-table :data="tableData3" | |
| 205 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 206 | + style="width: 100%;margin: auto;"> | |
| 207 | + <el-table-column class-name="first-column-bg" label="内部人力成本预估" prop="name" min-width="15%"> | |
| 208 | + </el-table-column> | |
| 209 | + <el-table-column :label="internalLaborCostEstimation" prop="eventTheme" min-width="35%"> | |
| 210 | + | |
| 211 | + </el-table-column> | |
| 212 | + <el-table-column class-name="first-column-bg" label="外部人力成本预估" prop="text" min-width="15%"> | |
| 213 | + | |
| 214 | + </el-table-column> | |
| 215 | + <el-table-column :label="externalLaborCostEstimation" prop="planName" min-width="35%"> | |
| 216 | + | |
| 217 | + </el-table-column> | |
| 218 | + </el-table> | |
| 219 | + </div> | |
| 220 | + </div> | |
| 221 | + <div style="width: 100%;"> | |
| 222 | + <div style="font-size: 14px;padding:10px 20px 0px 20px;">预估效果</div> | |
| 223 | + <div style="padding:10px 20px;"> | |
| 224 | + <el-table :data="tableData4" | |
| 225 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 226 | + style="width: 100%;margin: auto;"> | |
| 227 | + <el-table-column class-name="first-column-bg" label="预计吸引流量" prop="name" min-width="15%"> | |
| 228 | + </el-table-column> | |
| 229 | + <el-table-column :label="expectedAttractTraffic" prop="eventTheme" min-width="35%"> | |
| 230 | + | |
| 231 | + </el-table-column> | |
| 232 | + <el-table-column class-name="first-column-bg" label="预计参与人数" prop="text" min-width="15%"> | |
| 233 | + | |
| 234 | + </el-table-column> | |
| 235 | + <el-table-column :label="expectedParticipation" prop="planName" min-width="35%"> | |
| 236 | + | |
| 237 | + </el-table-column> | |
| 238 | + </el-table> | |
| 239 | + </el-table-column> | |
| 240 | + </div> | |
| 241 | + </div> | |
| 242 | + <div style="width: 100%;"> | |
| 243 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">相关附件信息</div> | |
| 244 | + <div style="padding:10px 20px;"> | |
| 245 | + <el-table :data="tableData6" | |
| 246 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 247 | + style="width: 100%;margin: auto;"> | |
| 248 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 249 | + <template slot-scope="scope"> | |
| 250 | + <span style="">{{ scope.$index + 1 }}</span> | |
| 251 | + </template> | |
| 252 | + </el-table-column> | |
| 253 | + <el-table-column label="附件名称" prop="attachmentName" min-width="75%"> | |
| 254 | + </el-table-column> | |
| 255 | + <el-table-column label="操作" min-width="20%"> | |
| 256 | + <template slot-scope="scope"> | |
| 257 | + <!-- <div class="tableBtn greens" @click="Down(scope.row)">下载</div> --> | |
| 258 | + <a class="tableBtn greens" :href="scope.row.attachmentUrl" target="_blank" download>下载</a> | |
| 259 | + </template> | |
| 260 | + </el-table-column> | |
| 261 | + | |
| 262 | + </el-table> | |
| 263 | + </div> | |
| 264 | + </div> | |
| 265 | + <div style="width: 100%;"> | |
| 266 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">系统信息</div> | |
| 267 | + <div style="padding:10px 20px;"> | |
| 268 | + <el-table :data="tableData5" | |
| 269 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 270 | + style="width: 100%;margin: auto;"> | |
| 271 | + <el-table-column class-name="first-column-bg" label="创建人" prop="name" min-width="15%"> | |
| 272 | + </el-table-column> | |
| 273 | + <el-table-column :label="createUser" prop="eventTheme" min-width="35%"> | |
| 274 | + | |
| 275 | + </el-table-column> | |
| 276 | + <el-table-column class-name="first-column-bg" label="创建时间" prop="text" min-width="15%"> | |
| 277 | + | |
| 278 | + </el-table-column> | |
| 279 | + <el-table-column :label="createDate" prop="planName" min-width="35%"> | |
| 280 | + | |
| 281 | + </el-table-column> | |
| 282 | + </el-table> | |
| 283 | + </div> | |
| 284 | + </div> | |
| 285 | + </div> | |
| 286 | + </div> | |
| 287 | + <div v-if="activeName=='second'"> | |
| 288 | + <div style="padding: 20px"> | |
| 289 | + <div style="border: solid 1px #E5E5E5;border-radius: 5px"> | |
| 290 | + <div style="border-bottom: 1px solid #E5E5E5;padding: 1px"> | |
| 291 | + <div style="padding: 10px 20px;background-color: #FAFAFA;font-size: 14px;"> | |
| 292 | + 基本信息 | |
| 293 | + </div> | |
| 294 | + </div> | |
| 295 | + <div style="padding: 20px 40px 20px 20px"> | |
| 296 | + <el-form label-position="top" ref="ruleFormInfo" :model="zhixingList" label-width="120px" | |
| 297 | + style="position: relative"> | |
| 298 | + <el-row :gutter="20"> | |
| 299 | + <el-col :span="8"> | |
| 300 | + <el-form-item label="活动名称" class="grid-content bg-purple device-from" prop="name"> | |
| 301 | + <el-input v-model="zhixingList.planName" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 302 | + </el-form-item> | |
| 303 | + </el-col> | |
| 304 | + <el-col :span="8"> | |
| 305 | + <el-form-item label="实际举办地点" class="grid-content bg-purple" prop="name"> | |
| 306 | + <el-input v-model="zhixingList.eventAddrs" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 307 | + </el-form-item> | |
| 308 | + </el-col> | |
| 309 | + | |
| 310 | + <el-col :span="8"> | |
| 311 | + <el-form-item label="实际举办时间" class="grid-content bg-purple" prop="event_start_time" | |
| 312 | + style="position: relative"> | |
| 313 | + <el-date-picker style="width: 100%;" v-model="zhixingList.planTime" | |
| 314 | + @input="formTime" | |
| 315 | + value-format="yyyy-MM-dd HH:mm:ss" :disabled="!zhixingBian" type="datetimerange" | |
| 316 | + range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" align="right" | |
| 317 | + > | |
| 318 | + </el-date-picker> | |
| 319 | + </el-form-item> | |
| 320 | + </el-col> | |
| 321 | + </el-row> | |
| 322 | + | |
| 323 | + <el-row :gutter="20"> | |
| 324 | + <el-col :span="8"> | |
| 325 | + <el-form-item label="活动主办方" class="grid-content bg-purple" prop="name"> | |
| 326 | + <el-input v-model="zhixingList.sponsor" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 327 | + </el-form-item> | |
| 328 | + </el-col> | |
| 329 | + <el-col :span="8"> | |
| 330 | + <el-form-item label="活动实际参与方" class="grid-content bg-purple" prop="name"> | |
| 331 | + <el-input v-model="zhixingList.participants" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 332 | + </el-form-item> | |
| 333 | + </el-col> | |
| 334 | + </el-row> | |
| 335 | + </el-form> | |
| 336 | + </div> | |
| 337 | + </div> | |
| 338 | + </div> | |
| 339 | + <div style="padding: 0px 20px 20px 20px"> | |
| 340 | + <div style="border: solid 1px #E5E5E5;border-radius: 5px"> | |
| 341 | + <div style="border-bottom: 1px solid #E5E5E5;padding: 1px;display: flex"> | |
| 342 | + <div style="padding: 10px 20px;background-color: #FAFAFA;font-size: 14px;"> | |
| 343 | + 活动明细信息 | |
| 344 | + </div> | |
| 345 | + <div style="color: #2d8a58;margin-top: 10px;font-size: 14px;" @click="tianMing"> | |
| 346 | + 添加明细 | |
| 347 | + </div> | |
| 348 | + </div> | |
| 349 | + <!-- 表格--> | |
| 350 | + <div style="padding: 20px 20px 20px 20px"> | |
| 351 | + <el-table :data="tableDa" | |
| 352 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 353 | + style="width: 100%"> | |
| 354 | + <el-table-column label="序号" width="auto" min-width="5%" prop="date" align="center"> | |
| 355 | + <template slot-scope="scope"> | |
| 356 | + {{scope.$index +1}} | |
| 357 | + </template> | |
| 358 | + </el-table-column> | |
| 359 | + <el-table-column label="明细项名称" prop="detailLtemName" width="auto" min-width="22%"> | |
| 360 | + | |
| 361 | + </el-table-column> | |
| 362 | + <el-table-column label="预估数量" prop="estimatedQuantity" width="auto" min-width="15%"> | |
| 363 | + | |
| 364 | + </el-table-column> | |
| 365 | + <el-table-column label="预估费用" prop="estimatedCost" width="auto" min-width="15%"> | |
| 366 | + </el-table-column> | |
| 367 | + <el-table-column prop="notes" label="备注" width="auto" min-width="15%"> | |
| 368 | + </el-table-column> | |
| 369 | + <el-table-column label="操作" width="auto" min-width="18%" v-if="zhixingBian"> | |
| 370 | + <template slot-scope="scope"> | |
| 371 | + <!-- <div class="tableBtn greens">详情</div> --> | |
| 372 | + <div class="tableBtn greens" @click="MingDelete(scope.$index,scope.row)">删除</div> | |
| 373 | + </template> | |
| 374 | + </el-table-column> | |
| 375 | + </el-table> | |
| 376 | + | |
| 377 | + </div> | |
| 378 | + </div> | |
| 379 | + </div> | |
| 380 | + <div style="padding: 20px"> | |
| 381 | + <div style="border: solid 1px #E5E5E5;border-radius: 5px;padding-bottom: 20px;"> | |
| 382 | + <div style="border-bottom: 1px solid #E5E5E5;padding: 1px"> | |
| 383 | + <div style="padding: 10px 20px;background-color: #FAFAFA;font-size: 14px;"> | |
| 384 | + 实际花费成本 | |
| 385 | + </div> | |
| 386 | + </div> | |
| 387 | + <div style="padding: 20px 40px 0px 20px"> | |
| 388 | + <el-form label-position="top" ref="ruleFormInfo" :model="zhixingList" label-width="120px" | |
| 389 | + style="position: relative"> | |
| 390 | + <el-row :gutter="20"> | |
| 391 | + <el-col :span="8"> | |
| 392 | + <el-form-item label="内部人力成本预估" class="grid-content bg-purple device-from" prop="name"> | |
| 393 | + <el-input v-model="zhixingList.internalLaborCostEstimation" placeholder="请输入" | |
| 394 | + :disabled="!zhixingBian" /> | |
| 395 | + </el-form-item> | |
| 396 | + </el-col> | |
| 397 | + <el-col :span="8"> | |
| 398 | + <el-form-item label="外部人力成本预估" class="grid-content bg-purple" prop="name"> | |
| 399 | + <el-input v-model="zhixingList.externalLaborCostEstimation" placeholder="请输入" | |
| 400 | + :disabled="!zhixingBian" /> | |
| 401 | + </el-form-item> | |
| 402 | + </el-col> | |
| 403 | + | |
| 404 | + <el-col :span="8"> | |
| 405 | + <el-form-item label="商品成本预估" class="grid-content bg-purple" prop="name"> | |
| 406 | + <el-input v-model="zhixingList.costEstimationGoods" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 407 | + </el-form-item> | |
| 408 | + </el-col> | |
| 409 | + </el-row> | |
| 410 | + | |
| 411 | + <el-row :gutter="20"> | |
| 412 | + <el-col :span="8"> | |
| 413 | + <el-form-item label="设备成本" class="grid-content bg-purple" prop="name"> | |
| 414 | + <el-input v-model="zhixingList.setCostEstimate" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 415 | + </el-form-item> | |
| 416 | + </el-col> | |
| 417 | + <el-col :span="8"> | |
| 418 | + <el-form-item label="宣传费用" class="grid-content bg-purple" prop="name"> | |
| 419 | + <el-input v-model="zhixingList.estimatedPromotionalExpenses" placeholder="请输入" | |
| 420 | + :disabled="!zhixingBian" /> | |
| 421 | + </el-form-item> | |
| 422 | + </el-col> | |
| 423 | + <el-col :span="8"> | |
| 424 | + <el-form-item label="其他成本" class="grid-content bg-purple" prop="name"> | |
| 425 | + <el-input v-model="zhixingList.otherNecessaryEstimates" placeholder="请输入" | |
| 426 | + :disabled="!zhixingBian" /> | |
| 427 | + </el-form-item> | |
| 428 | + </el-col> | |
| 429 | + </el-row> | |
| 430 | + | |
| 431 | + <el-row :gutter="20"> | |
| 432 | + <el-col :span="8"> | |
| 433 | + <el-form-item label="总成本" prop="name" class="grid-content bg-purple"> | |
| 434 | + <el-input v-model="zhixingList.totalCostEstimation" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 435 | + </el-form-item> | |
| 436 | + </el-col> | |
| 437 | + <el-col :span="16"> | |
| 438 | + <el-form-item label="备注" prop="name" class="grid-content bg-purple"> | |
| 439 | + <el-input v-model="zhixingList.notes" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 440 | + </el-form-item> | |
| 441 | + </el-col> | |
| 442 | + </el-row> | |
| 443 | + </el-form> | |
| 444 | + </div> | |
| 445 | + </div> | |
| 446 | + </div> | |
| 447 | + | |
| 448 | + <div style="padding: 20px"> | |
| 449 | + <div style="border: solid 1px #E5E5E5;border-radius: 5px;padding-bottom: 20px;"> | |
| 450 | + <div style="border-bottom: 1px solid #E5E5E5;padding: 1px"> | |
| 451 | + <div style="padding: 10px 20px;background-color: #FAFAFA;font-size: 14px;"> | |
| 452 | + 活动执行效果 | |
| 453 | + </div> | |
| 454 | + </div> | |
| 455 | + <div style="padding: 20px 40px 0px 20px"> | |
| 456 | + <el-form label-position="top" ref="ruleFormInfo" :model="zhixingList" label-width="120px" | |
| 457 | + style="position: relative"> | |
| 458 | + <el-row :gutter="20"> | |
| 459 | + <el-col :span="8"> | |
| 460 | + <el-form-item label="吸引流量" class="grid-content bg-purple device-from" prop="name"> | |
| 461 | + <el-input v-model="zhixingList.expectedAttractTraffic" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 462 | + </el-form-item> | |
| 463 | + </el-col> | |
| 464 | + <el-col :span="8"> | |
| 465 | + <el-form-item label="参与人数" class="grid-content bg-purple" prop="name"> | |
| 466 | + <el-input v-model="zhixingList.expectedParticipation" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 467 | + </el-form-item> | |
| 468 | + </el-col> | |
| 469 | + | |
| 470 | + <el-col :span="8"> | |
| 471 | + <el-form-item label="直接收益" class="grid-content bg-purple" prop="name"> | |
| 472 | + <el-input v-model="zhixingList.expectedDirectBenefits" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 473 | + </el-form-item> | |
| 474 | + </el-col> | |
| 475 | + </el-row> | |
| 476 | + <el-row :gutter="20"> | |
| 477 | + <el-col :span="8"> | |
| 478 | + <el-form-item label="间接收益" class="grid-content bg-purple" prop="name"> | |
| 479 | + <el-input v-model="zhixingList.expectedIndirectBenefits" placeholder="请输入" | |
| 480 | + :disabled="!zhixingBian" /> | |
| 481 | + </el-form-item> | |
| 482 | + </el-col> | |
| 483 | + | |
| 484 | + </el-row> | |
| 485 | + <el-row :gutter="20"> | |
| 486 | + <el-col :span="24"> | |
| 487 | + <el-form-item label="反馈内容" class="grid-content bg-purple" prop="name"> | |
| 488 | + <el-upload class="upload-demo" ref="upload" :on-remove="handleRemove" | |
| 489 | + :action="uploadFileUrl" :on-success="handleUploadSuccess" :file-list="fileData" | |
| 490 | + :show-file-list="true" v-if="zhixingBian"> | |
| 491 | + <el-button style="background-color: #fff;color: #3F9B6A;border: 1px solid #dcdfe6;" class="buttonHover" v-if="fileData.length==0">+点击上传</el-button> | |
| 492 | + </el-upload> | |
| 493 | + <div v-else>{{zhixingList.feedbackContent}}</div> | |
| 494 | + </el-form-item> | |
| 495 | + </el-col> | |
| 496 | + | |
| 497 | + </el-row> | |
| 498 | + </el-form> | |
| 499 | + </div> | |
| 500 | + </div> | |
| 501 | + </div> | |
| 502 | + | |
| 503 | + </div> | |
| 504 | + <div v-if="activeName=='fourd'"> | |
| 505 | + <div> | |
| 506 | + <el-select v-model="lishiList" placeholder="请选择" style="margin:0 20px 20px 20px;" @change="lichange"> | |
| 507 | + <el-option | |
| 508 | + v-for="(item,index) in liData" | |
| 509 | + :key="item.id" | |
| 510 | + :label="item.operationType" | |
| 511 | + :value="index"> | |
| 512 | + </el-option> | |
| 513 | + </el-select> | |
| 514 | + <el-button @click="tiaozheng" style="background-color: #3F9B6A;color: #fff" v-if="lishiList!=null" >调整对比 | |
| 515 | + </el-button> | |
| 516 | + </div> | |
| 517 | + <div style="width: 100%;" v-if="lishiList!=null" ref="lishiRef"> | |
| 518 | + <div style="width: 100%;"> | |
| 519 | + <div style="padding: 10px 20px;"> | |
| 520 | + <el-descriptions class="margin-top" title="基本信息" :column="2" border :labelStyle="labelStyle" > | |
| 521 | + <el-descriptions-item> | |
| 522 | + <template slot="label"> | |
| 523 | + 方案编号 | |
| 524 | + </template> | |
| 525 | + {{lixiang.id}} | |
| 526 | + </el-descriptions-item> | |
| 527 | + <el-descriptions-item> | |
| 528 | + <template slot="label"> | |
| 529 | + 方案名称 | |
| 530 | + </template> | |
| 531 | + | |
| 532 | + <span :style="duibiList.planName == lixiang.planName?'color: red':''" >{{lixiang.planName}}</span> | |
| 533 | + </el-descriptions-item> | |
| 534 | + <el-descriptions-item> | |
| 535 | + <template slot="label"> | |
| 536 | + 类型 | |
| 537 | + </template> | |
| 538 | +<span :style="duibiList.planType == lixiang.planType?'color: red':''" >{{lixiang.planType}}</span> | |
| 539 | + </el-descriptions-item> | |
| 540 | + <el-descriptions-item> | |
| 541 | + <template slot="label"> | |
| 542 | + 活动地点 | |
| 543 | + </template> | |
| 544 | + | |
| 545 | + <span :style="duibiList.eventAddrs == lixiang.eventAddrs?'color: red':''" >{{lixiang.eventAddrs}}</span> | |
| 546 | + </el-descriptions-item> | |
| 547 | + <el-descriptions-item> | |
| 548 | + <template slot="label"> | |
| 549 | + 活动开始时间 | |
| 550 | + </template> | |
| 551 | + | |
| 552 | + <span :style="duibiList.eventStartTime == lixiang.eventStartTime?'color: red':''" >{{lixiang.eventStartTime}}</span> | |
| 553 | + </el-descriptions-item> | |
| 554 | + <el-descriptions-item> | |
| 555 | + <template slot="label"> | |
| 556 | + 活动结束时间 | |
| 557 | + </template> | |
| 558 | + | |
| 559 | +<span :style="duibiList.eventEndTime == lixiang.eventEndTime?'color: red':''" >{{lixiang.eventEndTime}}</span> | |
| 560 | + </el-descriptions-item> | |
| 561 | + <el-descriptions-item> | |
| 562 | + <template slot="label"> | |
| 563 | + 活动主题 | |
| 564 | + </template> | |
| 565 | + <span :style="duibiList.eventTheme == lixiang.eventTheme?'color: red':''" >{{lixiang.eventTheme}}</span> | |
| 566 | + </el-descriptions-item> | |
| 567 | + <el-descriptions-item> | |
| 568 | + <template slot="label"> | |
| 569 | + 活动主办方 | |
| 570 | + </template> | |
| 571 | +<span :style="duibiList.sponsor == lixiang.sponsor?'color: red':''" >{{lixiang.sponsor}}</span> | |
| 572 | + | |
| 573 | + </el-descriptions-item> | |
| 574 | + <el-descriptions-item> | |
| 575 | + <template slot="label"> | |
| 576 | + 活动参与方 | |
| 577 | + </template> | |
| 578 | + | |
| 579 | +<span :style="duibiList.participants == lixiang.participants?'color: red':''" >{{lixiang.participants}}</span> | |
| 580 | + </el-descriptions-item> | |
| 581 | + <el-descriptions-item> | |
| 582 | + <template slot="label"> | |
| 583 | + 活动主要目的 | |
| 584 | + </template> | |
| 585 | + | |
| 586 | +<span :style="duibiList.mainPurpose == lixiang.mainPurpose?'color: red':''" >{{lixiang.mainPurpose}}</span> | |
| 587 | + </el-descriptions-item> | |
| 588 | + <el-descriptions-item> | |
| 589 | + <template slot="label"> | |
| 590 | + 范围设置 | |
| 591 | + </template> | |
| 592 | + | |
| 593 | +<span :style="duibiList.rangeSetting == lixiang.rangeSetting?'color: red':''" >{{lixiang.rangeSetting}}</span> | |
| 594 | + </el-descriptions-item> | |
| 595 | + <el-descriptions-item> | |
| 596 | + <template slot="label"> | |
| 597 | + 状态 | |
| 598 | + </template> | |
| 599 | + | |
| 600 | +{{getStatus(lixiang.state)}} | |
| 601 | + | |
| 602 | + </el-descriptions-item> | |
| 603 | + </el-descriptions> | |
| 604 | + | |
| 605 | + </div> | |
| 606 | + </div> | |
| 607 | + <div style="width: 100%;"> | |
| 608 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">活动明细信息</div> | |
| 609 | + <div style="padding: 10px 20px;"> | |
| 610 | + <el-table :data="tableData2" | |
| 611 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 612 | + style="width: 100%;margin: auto;"> | |
| 613 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 614 | + <template slot-scope="scope"> | |
| 615 | + <span style="">{{ scope.$index +1}}</span> | |
| 616 | + </template> | |
| 617 | + </el-table-column> | |
| 618 | + <el-table-column label="明细项名称" prop="detailLtemName" min-width="28%"> | |
| 619 | + </el-table-column> | |
| 620 | + <el-table-column label="预估数量" prop="estimatedQuantity" min-width="20%"> | |
| 621 | + | |
| 622 | + </el-table-column> | |
| 623 | + <el-table-column label="预估费用" prop="estimatedCost" min-width="20%"> | |
| 624 | + | |
| 625 | + </el-table-column> | |
| 626 | + <el-table-column label="备注" prop="notes" min-width="20%"> | |
| 627 | + </el-table-column> | |
| 628 | + </el-table> | |
| 629 | + </div> | |
| 630 | + </div> | |
| 631 | + <div style="width: 100%;"> | |
| 632 | + <div style="padding:10px 20px;"> | |
| 633 | + <el-descriptions class="margin-top" title="活动成本信息" :column="2" border :labelStyle="labelStyle" > | |
| 634 | + <el-descriptions-item> | |
| 635 | + <template slot="label"> | |
| 636 | + 内部人力成本预估 | |
| 637 | + </template> | |
| 638 | + | |
| 639 | +<span :style="duibiList.internalLaborCostEstimation == lixiang.internalLaborCostEstimation?'color: red':''" >{{lixiang.internalLaborCostEstimation}}</span> | |
| 640 | + </el-descriptions-item> | |
| 641 | + <el-descriptions-item> | |
| 642 | + <template slot="label"> | |
| 643 | + 外部人力成本预估 | |
| 644 | + </template> | |
| 645 | + | |
| 646 | + <span :style="duibiList.externalLaborCostEstimation == lixiang.externalLaborCostEstimation?'color: red':''" >{{lixiang.externalLaborCostEstimation}}</span> | |
| 647 | + </el-descriptions-item> | |
| 648 | + <el-descriptions-item> | |
| 649 | + <template slot="label"> | |
| 650 | + 商品成本预估 | |
| 651 | + </template> | |
| 652 | + | |
| 653 | +<span :style="duibiList.costEstimationGoods == lixiang.costEstimationGoods?'color: red':''" >{{lixiang.costEstimationGoods}}</span> | |
| 654 | + </el-descriptions-item> | |
| 655 | + <el-descriptions-item> | |
| 656 | + <template slot="label"> | |
| 657 | + 设备成本预估 | |
| 658 | + </template> | |
| 659 | + | |
| 660 | +<span :style="duibiList.setCostEstimate == lixiang.setCostEstimate?'color: red':''" >{{lixiang.setCostEstimate}}</span> | |
| 661 | + </el-descriptions-item> | |
| 662 | + <el-descriptions-item> | |
| 663 | + <template slot="label"> | |
| 664 | + 宣传费用预估 | |
| 665 | + </template> | |
| 666 | + | |
| 667 | + <span :style="duibiList.estimatedPromotionalExpenses == lixiang.estimatedPromotionalExpenses?'color: red':''" >{{lixiang.estimatedPromotionalExpenses}}</span> | |
| 668 | + </el-descriptions-item> | |
| 669 | + <el-descriptions-item> | |
| 670 | + <template slot="label"> | |
| 671 | + 其他必要成本预估 | |
| 672 | + </template> | |
| 673 | + | |
| 674 | +<span :style="duibiList.otherNecessaryEstimates == lixiang.otherNecessaryEstimates?'color: red':''" >{{lixiang.otherNecessaryEstimates}}</span> | |
| 675 | + </el-descriptions-item> | |
| 676 | + <el-descriptions-item> | |
| 677 | + <template slot="label"> | |
| 678 | + 总成本预估 | |
| 679 | + </template> | |
| 680 | + | |
| 681 | +<span :style="duibiList.totalCostEstimation == lixiang.totalCostEstimation?'color: red':''" >{{lixiang.totalCostEstimation}}</span> | |
| 682 | + </el-descriptions-item> | |
| 683 | + <el-descriptions-item> | |
| 684 | + <template slot="label"> | |
| 685 | + 备注 | |
| 686 | + </template> | |
| 687 | + | |
| 688 | +<span :style="duibiList.notes == lixiang.notes?'color: red':''" >{{lixiang.notes}}</span> | |
| 689 | + </el-descriptions-item> | |
| 690 | + </el-descriptions> | |
| 691 | + </div> | |
| 692 | + </div> | |
| 693 | + <div style="width: 100%;"> | |
| 694 | + | |
| 695 | + <div style="padding:10px 20px;"> | |
| 696 | + <el-descriptions class="margin-top" title="预估效果" :column="2" border :labelStyle="labelStyle" > | |
| 697 | + <el-descriptions-item> | |
| 698 | + <template slot="label"> | |
| 699 | + 预计吸引流量 | |
| 700 | + </template> | |
| 701 | + | |
| 702 | +<span :style="duibiList.expectedAttractTraffic == lixiang.expectedAttractTraffic?'color: red':''" >{{lixiang.expectedAttractTraffic}}</span> | |
| 703 | + </el-descriptions-item> | |
| 704 | + <el-descriptions-item> | |
| 705 | + <template slot="label"> | |
| 706 | + 预计参与人数 | |
| 707 | + </template> | |
| 708 | + | |
| 709 | +<span :style="duibiList.expectedParticipation == lixiang.expectedParticipation?'color: red':''" >{{lixiang.expectedParticipation}}</span> | |
| 710 | + </el-descriptions-item> | |
| 711 | + <el-descriptions-item> | |
| 712 | + <template slot="label"> | |
| 713 | + 预计直接收益 | |
| 714 | + </template> | |
| 715 | + | |
| 716 | +<span :style="duibiList.expectedDirectBenefits == lixiang.expectedDirectBenefits?'color: red':''" >{{lixiang.expectedDirectBenefits}}</span> | |
| 717 | + </el-descriptions-item> | |
| 718 | + <el-descriptions-item> | |
| 719 | + <template slot="label"> | |
| 720 | + 预计间接收益 | |
| 721 | + </template> | |
| 722 | + | |
| 723 | +<span :style="duibiList.expectedIndirectBenefits == lixiang.expectedIndirectBenefits?'color: red':''" >{{lixiang.expectedIndirectBenefits}}</span> | |
| 724 | + </el-descriptions-item> | |
| 725 | + | |
| 726 | + </el-descriptions> | |
| 727 | + | |
| 728 | + </div> | |
| 729 | + </div> | |
| 730 | + <div style="width: 100%;"> | |
| 731 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">相关附件信息</div> | |
| 732 | + <div style="padding:10px 20px;"> | |
| 733 | + <el-table :data="tableData6" | |
| 734 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 735 | + style="width: 100%;margin: auto;"> | |
| 736 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 737 | + <template slot-scope="scope"> | |
| 738 | + <span style="">{{ scope.$index + 1 }}</span> | |
| 739 | + </template> | |
| 740 | + </el-table-column> | |
| 741 | + <el-table-column label="附件名称" prop="attachmentName" min-width="75%"> | |
| 742 | + </el-table-column> | |
| 743 | + <el-table-column label="操作" min-width="20%"> | |
| 744 | + <template slot-scope="scope"> | |
| 745 | + <!-- <div class="tableBtn greens" @click="Down(scope.row)">下载</div> --> | |
| 746 | + <a class="tableBtn greens" :href="scope.row.attachmentUrl" target="_blank" download>下载</a> | |
| 747 | + </template> | |
| 748 | + </el-table-column> | |
| 749 | + | |
| 750 | + </el-table> | |
| 751 | + </div> | |
| 752 | + </div> | |
| 753 | + <div style="width: 100%;"> | |
| 754 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">系统信息</div> | |
| 755 | + <div style="padding:10px 20px;"> | |
| 756 | + <el-table :data="tableData5" | |
| 757 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 758 | + style="width: 100%;margin: auto;"> | |
| 759 | + <el-table-column class-name="first-column-bg" label="创建人" prop="name" min-width="15%"> | |
| 760 | + </el-table-column> | |
| 761 | + <el-table-column :label="createUser" prop="eventTheme" min-width="35%"> | |
| 762 | + | |
| 763 | + </el-table-column> | |
| 764 | + <el-table-column class-name="first-column-bg" label="创建时间" prop="text" min-width="15%"> | |
| 765 | + | |
| 766 | + </el-table-column> | |
| 767 | + <el-table-column :label="createDate" prop="planName" min-width="35%"> | |
| 768 | + | |
| 769 | + </el-table-column> | |
| 770 | + </el-table> | |
| 771 | + </div> | |
| 772 | + </div> | |
| 773 | + </div> | |
| 774 | + </div> | |
| 775 | + </div> | |
| 776 | + <div style="display: flex;justify-content: flex-end;padding:10px" v-if="activeName=='fourd'"> | |
| 777 | + <el-button @click="lishidownloadPdf" style="background-color: #3F9B6A;color: #fff" >导出 | |
| 778 | + </el-button></div> | |
| 779 | + <div style="display: flex;justify-content: flex-end;padding:10px" v-if="activeName=='first'"> | |
| 780 | + <el-button @click="downloadPdf" style="background-color: #3F9B6A;color: #fff" >导出 | |
| 781 | + </el-button> | |
| 782 | + <el-button @click="jiucuo" style="background-color: #3F9B6A;color: #fff" >活动策划调整纠错 | |
| 783 | + </el-button> | |
| 784 | + </div> | |
| 785 | +</el-dialog> | |
| 786 | +</div> | |
| 787 | +</div> | |
| 788 | +<!-- 调整对比 --> | |
| 789 | +<el-dialog title="调整对比" :visible.sync="tiaozhengShow" custom-class='xiang_css' style="padding: 0;" width="80%" center | |
| 790 | + :close-on-click-modal="false" :close-on-press-escape="false" @close="reshData"> | |
| 791 | + <div> | |
| 792 | + <div style="width: 100%;"> | |
| 793 | + <div style="display: flex;padding:0px 20px 20px 20px; "> | |
| 794 | + <div style="width: 150px;height: 80px;" v-if="secondData.coverPoster"> | |
| 795 | + <img :src="secondData.coverPoster" alt="" style="width: 100%;height: 80px;" /> | |
| 796 | + </div> | |
| 797 | + <div | |
| 798 | + style="display: flex;flex-direction: column;justify-content: space-around;padding: 0 10px;font-size: 12px;"> | |
| 799 | + <span style="margin-bottom: 10px;">{{text}}</span> | |
| 800 | + <span>活动时间:{{tableData1[1].eventTheme}}至{{tableData1[1].planName}}</span> | |
| 801 | + <span>活动地点:{{tableData1[0].planName}}</span> | |
| 802 | + </div> | |
| 803 | + </div> | |
| 804 | + </div> | |
| 805 | + | |
| 806 | + <div style="display: flex;"> | |
| 807 | + <div style="width: 50%;"> | |
| 808 | + <div style="width: 100%;"> | |
| 809 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">修改后</div> | |
| 810 | + <div style="padding: 10px 20px;"> | |
| 811 | + <el-table :data="tableData1" | |
| 812 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 813 | + style="width: 100%;margin: auto;"> | |
| 814 | + <el-table-column class-name="first-column-bg" label="方案编号" prop="name" min-width="15%"> | |
| 815 | + </el-table-column> | |
| 816 | + <el-table-column :label="id" prop="eventTheme" min-width="35%"> | |
| 817 | + | |
| 818 | + </el-table-column> | |
| 819 | + <el-table-column class-name="first-column-bg" label="方案名称" prop="text" min-width="15%"> | |
| 820 | + | |
| 821 | + </el-table-column> | |
| 822 | + <el-table-column :label="text" prop="planName" min-width="35%"> | |
| 823 | + | |
| 824 | + </el-table-column> | |
| 825 | + </el-table> | |
| 826 | + | |
| 827 | + | |
| 828 | + </div> | |
| 829 | + </div> | |
| 830 | + <div style="width: 100%;"> | |
| 831 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">活动明细信息</div> | |
| 832 | + <div style="padding: 10px 20px;"> | |
| 833 | + <el-table :data="tableData2" | |
| 834 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 835 | + style="width: 100%;margin: auto;"> | |
| 836 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 837 | + <template slot-scope="scope"> | |
| 838 | + <span style="">{{ scope.$index +1}}</span> | |
| 839 | + </template> | |
| 840 | + </el-table-column> | |
| 841 | + <el-table-column label="明细项名称" prop="detailLtemName" min-width="28%"> | |
| 842 | + </el-table-column> | |
| 843 | + <el-table-column label="预估数量" prop="estimatedQuantity" min-width="20%"> | |
| 844 | + | |
| 845 | + </el-table-column> | |
| 846 | + <el-table-column label="预估费用" prop="estimatedCost" min-width="20%"> | |
| 847 | + | |
| 848 | + </el-table-column> | |
| 849 | + <el-table-column label="备注" prop="notes" min-width="20%"> | |
| 850 | + </el-table-column> | |
| 851 | + </el-table> | |
| 852 | + </div> | |
| 853 | + </div> | |
| 854 | + <div style="width: 100%;"> | |
| 855 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">活动成本信息</div> | |
| 856 | + <div style="padding:10px 20px;"> | |
| 857 | + <el-table :data="tableData3" | |
| 858 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 859 | + style="width: 100%;margin: auto;"> | |
| 860 | + <el-table-column class-name="first-column-bg" label="内部人力成本预估" prop="name" min-width="15%"> | |
| 861 | + </el-table-column> | |
| 862 | + <el-table-column :label="internalLaborCostEstimation" prop="eventTheme" min-width="35%"> | |
| 863 | + | |
| 864 | + </el-table-column> | |
| 865 | + <el-table-column class-name="first-column-bg" label="外部人力成本预估" prop="text" min-width="15%"> | |
| 866 | + | |
| 867 | + </el-table-column> | |
| 868 | + <el-table-column :label="externalLaborCostEstimation" prop="planName" min-width="35%"> | |
| 869 | + | |
| 870 | + </el-table-column> | |
| 871 | + </el-table> | |
| 872 | + </div> | |
| 873 | + </div> | |
| 874 | + <div style="width: 100%;"> | |
| 875 | + <div style="font-size: 14px;padding:10px 20px 0px 20px;">预估效果</div> | |
| 876 | + <div style="padding:10px 20px;"> | |
| 877 | + <el-table :data="tableData4" | |
| 878 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 879 | + style="width: 100%;margin: auto;"> | |
| 880 | + <el-table-column class-name="first-column-bg" label="预计吸引流量" prop="name" min-width="15%"> | |
| 881 | + </el-table-column> | |
| 882 | + <el-table-column :label="expectedAttractTraffic" prop="eventTheme" min-width="35%"> | |
| 883 | + | |
| 884 | + </el-table-column> | |
| 885 | + <el-table-column class-name="first-column-bg" label="预计参与人数" prop="text" min-width="15%"> | |
| 886 | + | |
| 887 | + </el-table-column> | |
| 888 | + <el-table-column :label="expectedParticipation" prop="planName" min-width="35%"> | |
| 889 | + | |
| 890 | + </el-table-column> | |
| 891 | + </el-table> | |
| 892 | + </el-table-column> | |
| 893 | + </div> | |
| 894 | + </div> | |
| 895 | + <div style="width: 100%;"> | |
| 896 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">相关附件信息</div> | |
| 897 | + <div style="padding:10px 20px;"> | |
| 898 | + <el-table :data="tableData6" | |
| 899 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 900 | + style="width: 100%;margin: auto;"> | |
| 901 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 902 | + <template slot-scope="scope"> | |
| 903 | + <span style="">{{ scope.$index + 1 }}</span> | |
| 904 | + </template> | |
| 905 | + </el-table-column> | |
| 906 | + <el-table-column label="附件名称" prop="attachmentName" min-width="75%"> | |
| 907 | + </el-table-column> | |
| 908 | + <el-table-column label="操作" min-width="20%"> | |
| 909 | + <template slot-scope="scope"> | |
| 910 | + <!-- <div class="tableBtn greens" @click="Down(scope.row)">下载</div> --> | |
| 911 | + <a class="tableBtn greens" :href="scope.row.attachmentUrl" target="_blank" download>下载</a> | |
| 912 | + </template> | |
| 913 | + </el-table-column> | |
| 914 | + | |
| 915 | + </el-table> | |
| 916 | + </div> | |
| 917 | + </div> | |
| 918 | + <div style="width: 100%;"> | |
| 919 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">系统信息</div> | |
| 920 | + <div style="padding:10px 20px;"> | |
| 921 | + <el-table :data="tableData5" | |
| 922 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 923 | + style="width: 100%;margin: auto;"> | |
| 924 | + <el-table-column class-name="first-column-bg" label="创建人" prop="name" min-width="15%"> | |
| 925 | + </el-table-column> | |
| 926 | + <el-table-column :label="createUser" prop="eventTheme" min-width="35%"> | |
| 927 | + | |
| 928 | + </el-table-column> | |
| 929 | + <el-table-column class-name="first-column-bg" label="创建时间" prop="text" min-width="15%"> | |
| 930 | + | |
| 931 | + </el-table-column> | |
| 932 | + <el-table-column :label="createDate" prop="planName" min-width="35%"> | |
| 933 | + | |
| 934 | + </el-table-column> | |
| 935 | + </el-table> | |
| 936 | + </div> | |
| 937 | + </div> | |
| 938 | + </div> | |
| 939 | + <div style="width: 50%;"> | |
| 940 | + <div style="width: 100%;"> | |
| 941 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">修改前</div> | |
| 942 | + <div style="padding: 10px 20px;"> | |
| 943 | + <el-descriptions class="margin-top" :column="2" border :labelStyle="labelStyleOne" > | |
| 944 | + <el-descriptions-item> | |
| 945 | + <template slot="label"> | |
| 946 | + 方案编号 | |
| 947 | + </template> | |
| 948 | + {{lixiang.id}} | |
| 949 | + </el-descriptions-item> | |
| 950 | + <el-descriptions-item> | |
| 951 | + <template slot="label"> | |
| 952 | + 方案名称 | |
| 953 | + </template> | |
| 954 | + {{lixiang.planName}} | |
| 955 | + </el-descriptions-item> | |
| 956 | + <el-descriptions-item> | |
| 957 | + <template slot="label"> | |
| 958 | + 类型 | |
| 959 | + </template> | |
| 960 | + {{lixiang.planType}} | |
| 961 | + </el-descriptions-item> | |
| 962 | + <el-descriptions-item> | |
| 963 | + <template slot="label"> | |
| 964 | + 活动地点 | |
| 965 | + </template> | |
| 966 | + {{lixiang.eventAddrs}} | |
| 967 | + </el-descriptions-item> | |
| 968 | + <el-descriptions-item> | |
| 969 | + <template slot="label"> | |
| 970 | + 活动开始时间 | |
| 971 | + </template> | |
| 972 | + {{lixiang.eventStartTime}} | |
| 973 | + </el-descriptions-item> | |
| 974 | + <el-descriptions-item> | |
| 975 | + <template slot="label"> | |
| 976 | + 活动结束时间 | |
| 977 | + </template> | |
| 978 | + {{lixiang.eventEndTime}} | |
| 979 | + </el-descriptions-item> | |
| 980 | + <el-descriptions-item> | |
| 981 | + <template slot="label"> | |
| 982 | + 活动主题 | |
| 983 | + </template> | |
| 984 | + {{lixiang.eventTheme}} | |
| 985 | + </el-descriptions-item> | |
| 986 | + <el-descriptions-item> | |
| 987 | + <template slot="label"> | |
| 988 | + 活动主办方 | |
| 989 | + </template> | |
| 990 | + {{lixiang.sponsor}} | |
| 991 | + </el-descriptions-item> | |
| 992 | + <el-descriptions-item> | |
| 993 | + <template slot="label"> | |
| 994 | + 活动参与方 | |
| 995 | + </template> | |
| 996 | + {{lixiang.participants}} | |
| 997 | + </el-descriptions-item> | |
| 998 | + <el-descriptions-item> | |
| 999 | + <template slot="label"> | |
| 1000 | + 活动主要目的 | |
| 1001 | + </template> | |
| 1002 | + {{lixiang.mainPurpose}} | |
| 1003 | + </el-descriptions-item> | |
| 1004 | + <el-descriptions-item> | |
| 1005 | + <template slot="label"> | |
| 1006 | + 范围设置 | |
| 1007 | + </template> | |
| 1008 | + {{lixiang.rangeSetting}} | |
| 1009 | + </el-descriptions-item> | |
| 1010 | + <el-descriptions-item> | |
| 1011 | + <template slot="label"> | |
| 1012 | + 状态 | |
| 1013 | + </template> | |
| 1014 | + {{getStatus(lixiang.state)}} | |
| 1015 | + | |
| 1016 | + </el-descriptions-item> | |
| 1017 | + </el-descriptions> | |
| 1018 | + | |
| 1019 | + </div> | |
| 1020 | + </div> | |
| 1021 | + <div style="width: 100%;"> | |
| 1022 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">活动明细信息</div> | |
| 1023 | + <div style="padding: 10px 20px;"> | |
| 1024 | + <el-table :data="tableData2" | |
| 1025 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 1026 | + style="width: 100%;margin: auto;"> | |
| 1027 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 1028 | + <template slot-scope="scope"> | |
| 1029 | + <span style="">{{ scope.$index +1}}</span> | |
| 1030 | + </template> | |
| 1031 | + </el-table-column> | |
| 1032 | + <el-table-column label="明细项名称" prop="detailLtemName" min-width="28%"> | |
| 1033 | + </el-table-column> | |
| 1034 | + <el-table-column label="预估数量" prop="estimatedQuantity" min-width="20%"> | |
| 1035 | + | |
| 1036 | + </el-table-column> | |
| 1037 | + <el-table-column label="预估费用" prop="estimatedCost" min-width="20%"> | |
| 1038 | + | |
| 1039 | + </el-table-column> | |
| 1040 | + <el-table-column label="备注" prop="notes" min-width="20%"> | |
| 1041 | + </el-table-column> | |
| 1042 | + </el-table> | |
| 1043 | + </div> | |
| 1044 | + </div> | |
| 1045 | + <div style="width: 100%;"> | |
| 1046 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">活动成本信息</div> | |
| 1047 | + <div style="padding:10px 20px;"> | |
| 1048 | + <el-descriptions class="margin-top" :column="2" border :labelStyle="labelStyleOne" > | |
| 1049 | + <el-descriptions-item> | |
| 1050 | + <template slot="label"> | |
| 1051 | + 内部人力成本预估 | |
| 1052 | + </template> | |
| 1053 | + {{lixiang.internalLaborCostEstimation}} | |
| 1054 | + </el-descriptions-item> | |
| 1055 | + <el-descriptions-item> | |
| 1056 | + <template slot="label"> | |
| 1057 | + 外部人力成本预估 | |
| 1058 | + </template> | |
| 1059 | + {{lixiang.externalLaborCostEstimation}} | |
| 1060 | + </el-descriptions-item> | |
| 1061 | + <el-descriptions-item> | |
| 1062 | + <template slot="label"> | |
| 1063 | + 商品成本预估 | |
| 1064 | + </template> | |
| 1065 | + {{lixiang.costEstimationGoods}} | |
| 1066 | + </el-descriptions-item> | |
| 1067 | + <el-descriptions-item> | |
| 1068 | + <template slot="label"> | |
| 1069 | + 设备成本预估 | |
| 1070 | + </template> | |
| 1071 | + {{lixiang.setCostEstimate}} | |
| 1072 | + </el-descriptions-item> | |
| 1073 | + <el-descriptions-item> | |
| 1074 | + <template slot="label"> | |
| 1075 | + 宣传费用预估 | |
| 1076 | + </template> | |
| 1077 | + {{lixiang.estimatedPromotionalExpenses}} | |
| 1078 | + </el-descriptions-item> | |
| 1079 | + <el-descriptions-item> | |
| 1080 | + <template slot="label"> | |
| 1081 | + 其他必要成本预估 | |
| 1082 | + </template> | |
| 1083 | + {{lixiang.otherNecessaryEstimates}} | |
| 1084 | + </el-descriptions-item> | |
| 1085 | + <el-descriptions-item> | |
| 1086 | + <template slot="label"> | |
| 1087 | + 总成本预估 | |
| 1088 | + </template> | |
| 1089 | + {{lixiang.totalCostEstimation}} | |
| 1090 | + </el-descriptions-item> | |
| 1091 | + <el-descriptions-item> | |
| 1092 | + <template slot="label"> | |
| 1093 | + 备注 | |
| 1094 | + </template> | |
| 1095 | + {{lixiang.notes}} | |
| 1096 | + </el-descriptions-item> | |
| 1097 | + </el-descriptions> | |
| 1098 | + </div> | |
| 1099 | + </div> | |
| 1100 | + <div style="width: 100%;"> | |
| 1101 | +<div style="font-size: 14px;padding: 10px 20px 0px 20px;">预估效果</div> | |
| 1102 | + <div style="padding:10px 20px;"> | |
| 1103 | + <el-descriptions class="margin-top" :column="2" border :labelStyle="labelStyleOne" > | |
| 1104 | + <el-descriptions-item> | |
| 1105 | + <template slot="label"> | |
| 1106 | + 预计吸引流量 | |
| 1107 | + </template> | |
| 1108 | + {{lixiang.expectedAttractTraffic}} | |
| 1109 | + </el-descriptions-item> | |
| 1110 | + <el-descriptions-item> | |
| 1111 | + <template slot="label"> | |
| 1112 | + 预计参与人数 | |
| 1113 | + </template> | |
| 1114 | + {{lixiang.expectedParticipation}} | |
| 1115 | + </el-descriptions-item> | |
| 1116 | + <el-descriptions-item> | |
| 1117 | + <template slot="label"> | |
| 1118 | + 预计直接收益 | |
| 1119 | + </template> | |
| 1120 | + {{lixiang.expectedDirectBenefits}} | |
| 1121 | + </el-descriptions-item> | |
| 1122 | + <el-descriptions-item> | |
| 1123 | + <template slot="label"> | |
| 1124 | + 预计间接收益 | |
| 1125 | + </template> | |
| 1126 | + {{lixiang.expectedIndirectBenefits}} | |
| 1127 | + </el-descriptions-item> | |
| 1128 | + | |
| 1129 | + </el-descriptions> | |
| 1130 | + | |
| 1131 | + </div> | |
| 1132 | + </div> | |
| 1133 | + <div style="width: 100%;"> | |
| 1134 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">相关附件信息</div> | |
| 1135 | + <div style="padding:10px 20px;"> | |
| 1136 | + <el-table :data="tableData6" | |
| 1137 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 1138 | + style="width: 100%;margin: auto;"> | |
| 1139 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 1140 | + <template slot-scope="scope"> | |
| 1141 | + <span style="">{{ scope.$index + 1 }}</span> | |
| 1142 | + </template> | |
| 1143 | + </el-table-column> | |
| 1144 | + <el-table-column label="附件名称" prop="attachmentName" min-width="75%"> | |
| 1145 | + </el-table-column> | |
| 1146 | + <el-table-column label="操作" min-width="20%"> | |
| 1147 | + <template slot-scope="scope"> | |
| 1148 | + <!-- <div class="tableBtn greens" @click="Down(scope.row)">下载</div> --> | |
| 1149 | + <a class="tableBtn greens" :href="scope.row.attachmentUrl" target="_blank" download>下载</a> | |
| 1150 | + </template> | |
| 1151 | + </el-table-column> | |
| 1152 | + | |
| 1153 | + </el-table> | |
| 1154 | + </div> | |
| 1155 | + </div> | |
| 1156 | + <div style="width: 100%;"> | |
| 1157 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">系统信息</div> | |
| 1158 | + <div style="padding:10px 20px;"> | |
| 1159 | + <el-table :data="tableData5" | |
| 1160 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 1161 | + style="width: 100%;margin: auto;"> | |
| 1162 | + <el-table-column class-name="first-column-bg" label="创建人" prop="name" min-width="15%"> | |
| 1163 | + </el-table-column> | |
| 1164 | + <el-table-column :label="createUser" prop="eventTheme" min-width="35%"> | |
| 1165 | + | |
| 1166 | + </el-table-column> | |
| 1167 | + <el-table-column class-name="first-column-bg" label="创建时间" prop="text" min-width="15%"> | |
| 1168 | + | |
| 1169 | + </el-table-column> | |
| 1170 | + <el-table-column :label="createDate" prop="planName" min-width="35%"> | |
| 1171 | + | |
| 1172 | + </el-table-column> | |
| 1173 | + </el-table> | |
| 1174 | + </div> | |
| 1175 | + </div> | |
| 1176 | + </div> | |
| 1177 | + </div> | |
| 1178 | + | |
| 1179 | + | |
| 1180 | + </div> | |
| 1181 | +</el-dialog> | |
| 1182 | + | |
| 1183 | +<el-dialog title="新增明细" :visible.sync="addMing" custom-class='dialog_css' style="padding: 0;" width="50%" append-to-body | |
| 1184 | + center :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false"> | |
| 1185 | + <div style="padding: 15px;width:100%"> | |
| 1186 | + <div style=""> | |
| 1187 | + <div style="padding: 15px;"> | |
| 1188 | + <el-form label-position="right" ref="ruleFormInfo" :model="mingFrom" label-width="140px" | |
| 1189 | + style="position: relative"> | |
| 1190 | + <el-form-item label="明细项名称" class="grid-content bg-purple device-from" prop="planName"> | |
| 1191 | + <el-input v-model="mingFrom.detailLtemName" placeholder="请输入" /> | |
| 1192 | + </el-form-item> | |
| 1193 | + <el-form-item label="预估数量" class="grid-content bg-purple" prop=" planType"> | |
| 1194 | + <el-input v-model="mingFrom.estimatedQuantity" placeholder="请输入" /> | |
| 1195 | + </el-form-item> | |
| 1196 | + | |
| 1197 | + <el-form-item label="预估费用" class="grid-content bg-purple" prop="eventAddrs"> | |
| 1198 | + <el-input v-model="mingFrom.estimatedCost" placeholder="请输入" /> | |
| 1199 | + </el-form-item> | |
| 1200 | + <el-form-item label="备注" class="grid-content bg-purple device-from" prop="planName"> | |
| 1201 | + <el-input v-model="mingFrom.notes" placeholder="请输入" /> | |
| 1202 | + </el-form-item> | |
| 1203 | + </el-form> | |
| 1204 | + </div> | |
| 1205 | + </div> | |
| 1206 | + | |
| 1207 | + </div> | |
| 1208 | + <div style="display: flex;justify-content: flex-end;padding: 10px 20px 10px 0"> | |
| 1209 | + | |
| 1210 | + <el-button plain @click="minSev" style="background-color: #3F9B6A;color: #fff;">保存 | |
| 1211 | + </el-button> | |
| 1212 | + <el-button plain @click="addMing=false" style="background-color: #3F9B6A;color: #fff;">取消 | |
| 1213 | + </el-button> | |
| 1214 | + </div> | |
| 1215 | +</el-dialog> | |
| 1216 | +<!-- 效果对比 --> | |
| 1217 | +<el-dialog :visible.sync="xiaoDui" custom-class='dialog_css' style="padding: 0;" width="60%" center | |
| 1218 | + :close-on-click-modal="false" :close-on-press-escape="false"> | |
| 1219 | + <div style="padding: 0 50px;display:flex;justify-content: space-evenly;"> | |
| 1220 | + <div style="width:30%"> | |
| 1221 | + <div style="display: flex;"> | |
| 1222 | + <div style="margin-right: 10px;padding: 10px 0;"> | |
| 1223 | + <div>调整前方案</div> | |
| 1224 | + <div style="font-size: 22px;color: #3F9B6A;font-weight: 600;margin: 10px 0;">{{xiaoduiObj.biliOne}}</div> | |
| 1225 | + <div style="font-size: 16px;color: #3F9B6A;font-weight: 600;">投入产出比</div> | |
| 1226 | + </div> | |
| 1227 | + <el-progress type="circle" :percentage="xiaoduiObj.bilis" :show-text="false" :width="100"> | |
| 1228 | + </el-progress> | |
| 1229 | + </div> | |
| 1230 | + <div style="padding:30px 0">计划任务(完成度)</div> | |
| 1231 | + <div class="jindutiao"> | |
| 1232 | + <div style="margin-right:10px;width:56px">直接收入</div> | |
| 1233 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1234 | + <el-progress | |
| 1235 | + style="width: 150px;" | |
| 1236 | + :text-inside="true" | |
| 1237 | + :stroke-width="20" | |
| 1238 | + :percentage="baifenbi(duibiOne.expectedDirectBenefits)" | |
| 1239 | + status="success" | |
| 1240 | + :format="() => customFormat(duibiOne.expectedDirectBenefits)" | |
| 1241 | + ></el-progress> | |
| 1242 | + </div> | |
| 1243 | + <div class="jindutiao"> | |
| 1244 | + <div style="margin-right:10px;width:56px">间接收入</div> | |
| 1245 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1246 | + <el-progress | |
| 1247 | + style="width: 150px;" | |
| 1248 | + :text-inside="true" | |
| 1249 | + :stroke-width="20" | |
| 1250 | + :percentage="baifenbi(duibiOne.expectedIndirectBenefits)" | |
| 1251 | + status="success" | |
| 1252 | + :format="() => customFormat(duibiOne.expectedIndirectBenefits)" | |
| 1253 | + ></el-progress> | |
| 1254 | + </div> | |
| 1255 | + <div class="jindutiao"> | |
| 1256 | + <div style="margin-right:10px;width:56px">人力</div> | |
| 1257 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1258 | + <el-progress | |
| 1259 | + style="width: 150px;" | |
| 1260 | + :text-inside="true" | |
| 1261 | + :stroke-width="20" | |
| 1262 | + :percentage="baifenbi(duibiOne.internalLaborCostEstimation)" | |
| 1263 | + status="success" | |
| 1264 | + :format="() => customFormat(duibiOne.internalLaborCostEstimation)" | |
| 1265 | + ></el-progress> | |
| 1266 | + </div> | |
| 1267 | + <div class="jindutiao"> | |
| 1268 | + <div style="margin-right:10px;width:56px">设备</div> | |
| 1269 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1270 | + <el-progress | |
| 1271 | + style="width: 150px;" | |
| 1272 | + :text-inside="true" | |
| 1273 | + :stroke-width="20" | |
| 1274 | + :percentage="baifenbi(duibiOne.setCostEstimate)" | |
| 1275 | + status="success" | |
| 1276 | + :format="() => customFormat(duibiOne.setCostEstimate)" | |
| 1277 | + ></el-progress> | |
| 1278 | + </div> | |
| 1279 | + <div class="jindutiao"> | |
| 1280 | + <div style="margin-right:10px;width:56px">宣传</div> | |
| 1281 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1282 | + <el-progress | |
| 1283 | + style="width: 150px;" | |
| 1284 | + :text-inside="true" | |
| 1285 | + :stroke-width="20" | |
| 1286 | + :percentage="baifenbi(duibiOne.estimatedPromotionalExpenses)" | |
| 1287 | + status="success" | |
| 1288 | + :format="() => customFormat(duibiOne.estimatedPromotionalExpenses)" | |
| 1289 | + ></el-progress> | |
| 1290 | + </div> | |
| 1291 | + <div class="jindutiao"> | |
| 1292 | + <div style="margin-right:10px;width:56px">其他</div> | |
| 1293 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1294 | + <el-progress | |
| 1295 | + style="width: 150px;" | |
| 1296 | + :text-inside="true" | |
| 1297 | + :stroke-width="20" | |
| 1298 | + :percentage="baifenbi(duibiOne.otherNecessaryEstimates)" | |
| 1299 | + status="success" | |
| 1300 | + :format="() => customFormat(duibiOne.otherNecessaryEstimates)" | |
| 1301 | + ></el-progress> | |
| 1302 | + </div> | |
| 1303 | + </div> | |
| 1304 | + <div style="width:30%"> | |
| 1305 | + <div style="display: flex;"> | |
| 1306 | + <div style="margin-right: 10px;padding: 10px 0;"> | |
| 1307 | + <div>调整后方案</div> | |
| 1308 | + <div style="font-size: 22px;color: #3F9B6A;font-weight: 600;margin: 10px 0;">{{xiaoduiObj.biliTwo}}</div> | |
| 1309 | + <div style="font-size: 16px;color: #3F9B6A;font-weight: 600;">投入产出比</div> | |
| 1310 | + </div> | |
| 1311 | + <el-progress type="circle" :percentage="xiaoduiObj.biliT" :show-text="false" :width="100"> | |
| 1312 | + </el-progress> | |
| 1313 | + </div> | |
| 1314 | + <div style="padding:30px 0">计划任务(完成度)</div> | |
| 1315 | + <div class="jindutiao"> | |
| 1316 | + <div style="margin-right:10px;width:56px">直接收入</div> | |
| 1317 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1318 | + <el-progress | |
| 1319 | + style="width: 150px;" | |
| 1320 | + :text-inside="true" | |
| 1321 | + :stroke-width="20" | |
| 1322 | + :percentage="baifenbi(duibiTwo.expectedDirectBenefits==undefined?'':duibiTwo.expectedDirectBenefits)" | |
| 1323 | + status="success" | |
| 1324 | + :format="() => customFormat(duibiTwo.expectedDirectBenefits==undefined?'':duibiTwo.expectedDirectBenefits)" | |
| 1325 | + ></el-progress> | |
| 1326 | + </div> | |
| 1327 | + <div class="jindutiao"> | |
| 1328 | + <div style="margin-right:10px;width:56px">间接收入</div> | |
| 1329 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1330 | + <el-progress | |
| 1331 | + style="width: 150px;" | |
| 1332 | + :text-inside="true" | |
| 1333 | + :stroke-width="20" | |
| 1334 | + :percentage="baifenbi(duibiTwo.expectedIndirectBenefits==undefined?'':duibiTwo.expectedIndirectBenefits)" | |
| 1335 | + status="success" | |
| 1336 | + :format="() => customFormat(duibiTwo.expectedIndirectBenefits==undefined?'':duibiTwo.expectedIndirectBenefits)" | |
| 1337 | + ></el-progress> | |
| 1338 | + </div> | |
| 1339 | + <div class="jindutiao"> | |
| 1340 | + <div style="margin-right:10px;width:56px">人力</div> | |
| 1341 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1342 | + <el-progress | |
| 1343 | + style="width: 150px;" | |
| 1344 | + :text-inside="true" | |
| 1345 | + :stroke-width="20" | |
| 1346 | + :percentage="baifenbi(duibiTwo.internalLaborCostEstimation==undefined?'':duibiTwo.internalLaborCostEstimation)" | |
| 1347 | + status="success" | |
| 1348 | + :format="() => customFormat(duibiTwo.internalLaborCostEstimation==undefined?'':duibiTwo.internalLaborCostEstimation)" | |
| 1349 | + ></el-progress> | |
| 1350 | + </div> | |
| 1351 | + <div class="jindutiao"> | |
| 1352 | + <div style="margin-right:10px;width:56px">设备</div> | |
| 1353 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1354 | + <el-progress | |
| 1355 | + style="width: 150px;" | |
| 1356 | + :text-inside="true" | |
| 1357 | + :stroke-width="20" | |
| 1358 | + :percentage="baifenbi(duibiTwo.setCostEstimate==undefined?'':duibiTwo.setCostEstimate)" | |
| 1359 | + status="success" | |
| 1360 | + :format="() => customFormat(duibiTwo.setCostEstimate==undefined?'':duibiTwo.setCostEstimate)" | |
| 1361 | + ></el-progress> | |
| 1362 | + </div> | |
| 1363 | + <div class="jindutiao"> | |
| 1364 | + <div style="margin-right:10px;width:56px">宣传</div> | |
| 1365 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1366 | + <el-progress | |
| 1367 | + style="width: 150px;" | |
| 1368 | + :text-inside="true" | |
| 1369 | + :stroke-width="20" | |
| 1370 | + :percentage="baifenbi(duibiTwo.estimatedPromotionalExpenses==undefined?'':duibiTwo.estimatedPromotionalExpenses)" | |
| 1371 | + status="success" | |
| 1372 | + :format="() => customFormat(duibiTwo.estimatedPromotionalExpenses==undefined?'':duibiTwo.estimatedPromotionalExpenses)" | |
| 1373 | + ></el-progress> | |
| 1374 | + </div> | |
| 1375 | + <div class="jindutiao"> | |
| 1376 | + <div style="margin-right:10px;width:56px">其他</div> | |
| 1377 | + <el-progress | |
| 1378 | + style="width: 150px;" | |
| 1379 | + :text-inside="true" | |
| 1380 | + :stroke-width="20" | |
| 1381 | + :percentage="baifenbi(duibiTwo.otherNecessaryEstimates==undefined?'':duibiTwo.otherNecessaryEstimates)" | |
| 1382 | + status="success" | |
| 1383 | + :format="() => customFormat(duibiTwo.otherNecessaryEstimates==undefined?'':duibiTwo.otherNecessaryEstimates)" | |
| 1384 | + ></el-progress> | |
| 1385 | + </div> | |
| 1386 | + </div> | |
| 1387 | + </div> | |
| 1388 | +</el-dialog> | |
| 1389 | + | |
| 1390 | + | |
| 1391 | + <!-- 复制 --> | |
| 1392 | + <el-dialog :visible.sync="copyShow" custom-class='xiaoguo_css' style="padding: 0;" width="50%" | |
| 1393 | + center :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false"> | |
| 1394 | + <div style="padding:15px;background-color:#F9F9F9;font-size:14px;border:1px solid #ECECEC;margin-bottom:20px;display: flex;justify-content: space-between;"> | |
| 1395 | + <div>复制页</div> | |
| 1396 | + </div> | |
| 1397 | + <div style="padding:0 36px;"> | |
| 1398 | + <el-form label-position="right" :model="copy" label-width="120px" | |
| 1399 | + style="position: relative"> | |
| 1400 | + <el-form-item label="新方案名称" class="grid-content bg-purple device-from" prop="planName"> | |
| 1401 | + <el-input v-model="copy.planName" placeholder="请输入" /> | |
| 1402 | + </el-form-item> | |
| 1403 | + </el-form> | |
| 1404 | + </div> | |
| 1405 | + | |
| 1406 | + <div style="display: flex;justify-content: flex-end;padding: 10px 20px 10px 0"> | |
| 1407 | + <el-button class="buttonHover" | |
| 1408 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" | |
| 1409 | + @click="copyClose" >返回</el-button> | |
| 1410 | + <el-button plain @click="copysev" style="background-color: #3F9B6A;color: #fff;" >保存 | |
| 1411 | + </el-button> | |
| 1412 | + </div> | |
| 1413 | + </el-dialog> | |
| 1414 | +<el-dialog :visible.sync="searchShow" custom-class='xiaoguo_css' style="padding: 0;" width="50%" | |
| 1415 | + center :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false"> | |
| 1416 | + <div style="padding:15px;background-color:#F9F9F9;font-size:14px;border:1px solid #ECECEC;margin-bottom:20px;display: flex;justify-content: space-between;"> | |
| 1417 | + <div>搜索关键词配置</div> | |
| 1418 | + </div> | |
| 1419 | + <div style="padding:0 36px;"> | |
| 1420 | + <el-checkbox v-model="searPei.name">方案名称</el-checkbox> | |
| 1421 | + <!-- <el-checkbox v-model="searPei.lei">方案类型</el-checkbox> --> | |
| 1422 | + <el-checkbox v-model="searPei.staut">审核状态</el-checkbox> | |
| 1423 | + </div> | |
| 1424 | + | |
| 1425 | + <div style="display: flex;justify-content: flex-end;padding: 10px 20px 10px 0"> | |
| 1426 | + <el-button class="buttonHover" | |
| 1427 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" | |
| 1428 | + @click="searchShow=false" >返回</el-button> | |
| 1429 | + <el-button plain @click="searchShow=false" style="background-color: #3F9B6A;color: #fff;" >保存 | |
| 1430 | + </el-button> | |
| 1431 | + </div> | |
| 1432 | + </el-dialog> | |
| 1433 | +<el-dialog :visible.sync="jiucuoShow" custom-class='bian_css' style="padding: 0;" width="50%" | |
| 1434 | + :close-on-press-escape="false" center :close-on-click-modal="false" class="dialog_css_Xq" :show-close="false"> | |
| 1435 | + <div style="padding:20px;"> | |
| 1436 | + <div style="font-size: 14px;padding-bottom: 20px;color: #000;">活动策划调整纠错</div> | |
| 1437 | + <wangEditor v-model="jiuMsg" ref="editor"></wangEditor> | |
| 1438 | + <div style="padding-top:20px;display:flex;justify-content: flex-end;"> | |
| 1439 | + <el-button style="background-color: #3F9B6A;color: #fff" | |
| 1440 | + @click="jiuCheck">确定</el-button> | |
| 1441 | + <el-button @click="jiucuoShow = false" style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" class="buttonHover">取消</el-button> | |
| 1442 | + | |
| 1443 | + </div> | |
| 1444 | + | |
| 1445 | + </div> | |
| 1446 | + | |
| 1447 | + </el-dialog> | |
| 1448 | + | |
| 1449 | +<actbians :showBian="actbianMsg" @BianchildClose='BianchildClose'></actbians> | |
| 1450 | +</div> | |
| 1451 | +</template> | |
| 1452 | + | |
| 1453 | +<script> | |
| 1454 | + import { | |
| 1455 | + deleteById, | |
| 1456 | + queryByPage, | |
| 1457 | + xiangByPage, | |
| 1458 | + fujiaTable, | |
| 1459 | + mingTable, | |
| 1460 | + danqueryById, | |
| 1461 | + xiangedit, | |
| 1462 | + actEdit, | |
| 1463 | + actAdd, | |
| 1464 | + actPage, | |
| 1465 | + MingAdd, | |
| 1466 | + MingDel, | |
| 1467 | + cereGet, | |
| 1468 | + cereAdd, | |
| 1469 | + cereEdit, | |
| 1470 | + cereDel, | |
| 1471 | + copy, | |
| 1472 | + excelQueryByPage, | |
| 1473 | + excelAdd, | |
| 1474 | + effectEvaluation, | |
| 1475 | + lishiDeta | |
| 1476 | + } from '../../api/activityBz' | |
| 1477 | + import actbians from "./activityBian" | |
| 1478 | + import * as echarts from 'echarts' | |
| 1479 | + import Vue from 'vue' | |
| 1480 | + import html2canvas from 'html2canvas' | |
| 1481 | + import jsPDF from 'jspdf' | |
| 1482 | + import wangEditor from "@/components/editor/index"; | |
| 1483 | + import { | |
| 1484 | + uploadUrl | |
| 1485 | + } from '@/utils/request' | |
| 1486 | + export default { | |
| 1487 | + components: { | |
| 1488 | + actbians, | |
| 1489 | + wangEditor | |
| 1490 | + }, | |
| 1491 | + data() { | |
| 1492 | + return { | |
| 1493 | + uploadFileUrl: uploadUrl, // 请求地址 | |
| 1494 | + daoData:[], | |
| 1495 | + actbianMsg: { | |
| 1496 | + acBian: '', //编辑数据 | |
| 1497 | + bianshow: false, //编辑页 | |
| 1498 | + }, | |
| 1499 | + fileData:[], | |
| 1500 | + fenlei: [], | |
| 1501 | + secondData: {}, | |
| 1502 | + | |
| 1503 | + formSear:{ | |
| 1504 | + planName: '', | |
| 1505 | + state:null, | |
| 1506 | + dataOwnership: '1', | |
| 1507 | + pageNumber: 1, | |
| 1508 | + pageSize: 10, | |
| 1509 | + isDraft:0 | |
| 1510 | + }, | |
| 1511 | + | |
| 1512 | + planFen: '', | |
| 1513 | + eventTheme: '', | |
| 1514 | + currentPage: 1, | |
| 1515 | + total: 100, | |
| 1516 | + flag: false, | |
| 1517 | + pageSize: 10, | |
| 1518 | + ggXin: false, | |
| 1519 | + radio: '1', | |
| 1520 | + shan: '', | |
| 1521 | + activeName: 'first', | |
| 1522 | + rules: { | |
| 1523 | + coDe: [{ | |
| 1524 | + required: true, | |
| 1525 | + message: '请输入活动名称', | |
| 1526 | + trigger: 'blur' | |
| 1527 | + }, | |
| 1528 | + | |
| 1529 | + ], | |
| 1530 | + }, | |
| 1531 | + formInline: { | |
| 1532 | + merchantName: '', // 商家名称 | |
| 1533 | + storeId: '', // 编码 | |
| 1534 | + contacts: '', // 联系人 | |
| 1535 | + businessEntity: '', //经营主体 | |
| 1536 | + page: 1, // 当前页 | |
| 1537 | + pageSize: 10 // 每页记录数 | |
| 1538 | + }, | |
| 1539 | + tableData: [], | |
| 1540 | + id: '', | |
| 1541 | + text: '123', | |
| 1542 | + tableData1: [{ | |
| 1543 | + id: 0, | |
| 1544 | + name: '类型', | |
| 1545 | + planName: '', | |
| 1546 | + text: '活动地点', | |
| 1547 | + eventTheme: '' | |
| 1548 | + }, { | |
| 1549 | + id: 0, | |
| 1550 | + name: '活动开始时间', | |
| 1551 | + planName: '', | |
| 1552 | + text: '活动结束时间', | |
| 1553 | + eventTheme: '' | |
| 1554 | + }, { | |
| 1555 | + id: 0, | |
| 1556 | + name: '活动主题', | |
| 1557 | + planName: '', | |
| 1558 | + text: '活动主办方', | |
| 1559 | + eventTheme: '' | |
| 1560 | + }, { | |
| 1561 | + id: 0, | |
| 1562 | + name: '活动参与方', | |
| 1563 | + planName: '', | |
| 1564 | + text: '活动主要目的', | |
| 1565 | + eventTheme: '' | |
| 1566 | + }, { | |
| 1567 | + id: 0, | |
| 1568 | + name: '范围设置', | |
| 1569 | + planName: '', | |
| 1570 | + text: '状态', | |
| 1571 | + eventTheme: '' | |
| 1572 | + }], | |
| 1573 | + internalLaborCostEstimation: '', | |
| 1574 | + externalLaborCostEstimation: '', | |
| 1575 | + tableData3: [{ | |
| 1576 | + id: 0, | |
| 1577 | + name: '商品成本预估', | |
| 1578 | + planName: '', | |
| 1579 | + text: '设备成本预估', | |
| 1580 | + eventTheme: '' | |
| 1581 | + }, { | |
| 1582 | + id: 0, | |
| 1583 | + name: '宣传费用预估', | |
| 1584 | + planName: '', | |
| 1585 | + text: '其他必要成本预估', | |
| 1586 | + eventTheme: '' | |
| 1587 | + }, { | |
| 1588 | + id: 0, | |
| 1589 | + name: '总成本预估', | |
| 1590 | + planName: '', | |
| 1591 | + text: '备注', | |
| 1592 | + eventTheme: '' | |
| 1593 | + }], | |
| 1594 | + expectedAttractTraffic: '', | |
| 1595 | + expectedParticipation: '', | |
| 1596 | + tableData4: [{ | |
| 1597 | + id: 0, | |
| 1598 | + name: '预计直接收益', | |
| 1599 | + planName: '', | |
| 1600 | + text: '预计间接收益', | |
| 1601 | + eventTheme: '-' | |
| 1602 | + }], | |
| 1603 | + createUser: '', | |
| 1604 | + createDate: '', | |
| 1605 | + tableData5: [{ | |
| 1606 | + id: 0, | |
| 1607 | + name: '更新人', | |
| 1608 | + planName: '', | |
| 1609 | + text: '更新时间', | |
| 1610 | + eventTheme: '-' | |
| 1611 | + }], | |
| 1612 | + tableData2: [], //基本信息明细列表 | |
| 1613 | + tableData6: [], //基本信息附件列表 | |
| 1614 | + addMing: false, //执行效果添加明细 | |
| 1615 | + zhixingBian: false, //判断是否编辑执行效果 | |
| 1616 | + tableDa: [], //执行效果明细列表 | |
| 1617 | + zhiXing: true, //判断是否是新增的执行效果 | |
| 1618 | + mingFrom: { | |
| 1619 | + detailLtemName: '', | |
| 1620 | + estimatedQuantity: '', | |
| 1621 | + estimatedCost: '', | |
| 1622 | + notes: '' | |
| 1623 | + }, | |
| 1624 | + planTime:[], | |
| 1625 | + zhixingList: { | |
| 1626 | + planTime: [], | |
| 1627 | + planName: '', //活动名称 | |
| 1628 | + eventAddrs: '', //实际举办地点 | |
| 1629 | + eventStartTime: 0, //实际开始时间 | |
| 1630 | + eventEndTime: 0, //实际结束时间 | |
| 1631 | + sponsor: '', //实际主办方 | |
| 1632 | + participants: '', //实际参与方 | |
| 1633 | + internalLaborCostEstimation: '', //内部人工成本 | |
| 1634 | + externalLaborCostEstimation: '', //外部人工成本 | |
| 1635 | + costEstimationGoods: '', //商品成本 | |
| 1636 | + setCostEstimate: '', //设备成本 | |
| 1637 | + estimatedPromotionalExpenses: '', //宣传费用预估 | |
| 1638 | + otherNecessaryEstimates: '', //其他成本预估 | |
| 1639 | + totalCostEstimation: '', //总成本预估 | |
| 1640 | + notes: '', //备注 | |
| 1641 | + expectedAttractTraffic: '', //吸引流量 | |
| 1642 | + expectedParticipation: '', //参与人数 | |
| 1643 | + expectedDirectBenefits: '', //直接收益 | |
| 1644 | + expectedIndirectBenefits: '', //间接收益 | |
| 1645 | + createDate: '', //创建时间 | |
| 1646 | + feedbackContent:'' | |
| 1647 | + }, //执行效果列表 | |
| 1648 | + pageindex: { | |
| 1649 | + pageNumber: 1, | |
| 1650 | + pageSize: 10, | |
| 1651 | + dataOwnership: '1', | |
| 1652 | + isDraft:0 | |
| 1653 | + }, | |
| 1654 | + multipleSelection: [], | |
| 1655 | + options: [], | |
| 1656 | + xinADD:{ | |
| 1657 | + classificationName:'', | |
| 1658 | + parentId:'', | |
| 1659 | + classificationType:'0' | |
| 1660 | + }, | |
| 1661 | + value: '', | |
| 1662 | + xiaoDui: false, //效果对比 | |
| 1663 | + dataList:[], | |
| 1664 | + | |
| 1665 | + fenleiDelId:null,//删除的分类ID | |
| 1666 | + xiaoduiObj:{ | |
| 1667 | + biliOne:'0%', | |
| 1668 | + bilis:0, | |
| 1669 | + biliTwo:'0%', | |
| 1670 | + biliT:0 | |
| 1671 | + },//效果对比数据 | |
| 1672 | + fujiLei:'', | |
| 1673 | + defaultProps:{ | |
| 1674 | + children: 'children', | |
| 1675 | + label: 'classificationName' | |
| 1676 | + }, | |
| 1677 | + | |
| 1678 | + copy:{ | |
| 1679 | + planName:'' | |
| 1680 | + }, | |
| 1681 | + copyShow:false, | |
| 1682 | + duibiOne:{}, | |
| 1683 | + duibiTwo:{}, | |
| 1684 | + searchShow:false, | |
| 1685 | + searPei:{ | |
| 1686 | + name:true, | |
| 1687 | + lei:false, | |
| 1688 | + staut:false, | |
| 1689 | + }, | |
| 1690 | + lishiList:null, | |
| 1691 | + labelStyle:{ | |
| 1692 | + width:'197px', | |
| 1693 | + height:'42px', | |
| 1694 | + }, | |
| 1695 | + labelStyleOne:{ | |
| 1696 | + width:'110px', | |
| 1697 | + height:'42px', | |
| 1698 | + color:'#000', | |
| 1699 | + }, | |
| 1700 | + lidata:[], | |
| 1701 | + lixiang:{}, | |
| 1702 | + duibiList:{}, | |
| 1703 | + tiaozhengShow:false, | |
| 1704 | + jiucuoShow:false, | |
| 1705 | + jiuMsg:'', | |
| 1706 | + editId:'' | |
| 1707 | + } | |
| 1708 | + }, | |
| 1709 | + created() { | |
| 1710 | + this.getAll() | |
| 1711 | + | |
| 1712 | + }, | |
| 1713 | + computed: { | |
| 1714 | + | |
| 1715 | + }, | |
| 1716 | + methods: { | |
| 1717 | + getStatus(state) { | |
| 1718 | + switch (state) { | |
| 1719 | + case '': | |
| 1720 | + return '待提交'; | |
| 1721 | + case '1': | |
| 1722 | + return '待审核'; | |
| 1723 | + case '2': | |
| 1724 | + return '业务部审核'; | |
| 1725 | + case '3': | |
| 1726 | + return '品牌审核'; | |
| 1727 | + case '4': | |
| 1728 | + return '审核通过'; | |
| 1729 | + case '5': | |
| 1730 | + return '审核不通过' | |
| 1731 | + } | |
| 1732 | + }, | |
| 1733 | + //查询全数据 | |
| 1734 | + async getAll() { | |
| 1735 | + const res = await queryByPage(this.pageindex) | |
| 1736 | + this.tableData = res.data.content | |
| 1737 | + this.total = res.data.content.length | |
| 1738 | + | |
| 1739 | + }, | |
| 1740 | + //删除记录按钮 | |
| 1741 | + handleDelete(val) { | |
| 1742 | + if (this.multipleSelection.length == 1) { | |
| 1743 | + | |
| 1744 | + const h = this.$createElement; | |
| 1745 | + this.$msgbox({ | |
| 1746 | + title: '消息', | |
| 1747 | + message: h('p', null, [ | |
| 1748 | + h('span', null, '是否删除 '), | |
| 1749 | + ]), | |
| 1750 | + showCancelButton: true, | |
| 1751 | + showClose: false, | |
| 1752 | + confirmButtonText: '确定', | |
| 1753 | + cancelButtonText: '取消', | |
| 1754 | + customClass: 'oe-dialog-btn', | |
| 1755 | + beforeClose: (action, instance, done) => { | |
| 1756 | + if (action === 'confirm') { | |
| 1757 | + deleteById({ | |
| 1758 | + id: this.multipleSelection[0].id | |
| 1759 | + }).then(res => { | |
| 1760 | + this.getAll() | |
| 1761 | + done(); | |
| 1762 | + }) | |
| 1763 | + } else { | |
| 1764 | + done(); | |
| 1765 | + } | |
| 1766 | + } | |
| 1767 | + }) | |
| 1768 | + } else { | |
| 1769 | + this.$message({ | |
| 1770 | + message: '请选择一个文件删除', | |
| 1771 | + customClass: 'custom-message', | |
| 1772 | + offset: 100 | |
| 1773 | + }) | |
| 1774 | + } | |
| 1775 | + }, | |
| 1776 | + //查询 | |
| 1777 | + async onSubmit() { | |
| 1778 | + const res = await danqueryById(this.formSear) | |
| 1779 | + this.tableData = res.data.content | |
| 1780 | + }, | |
| 1781 | + //重置按钮 | |
| 1782 | + resetting() { | |
| 1783 | + this.formSear ={ | |
| 1784 | + planName: '', | |
| 1785 | + state:null, | |
| 1786 | + dataOwnership: '1', | |
| 1787 | + pageNumber: 1, | |
| 1788 | + pageSize: 10, | |
| 1789 | + isDraft:0 | |
| 1790 | + } | |
| 1791 | + this.getAll() | |
| 1792 | + }, | |
| 1793 | + //编辑页 | |
| 1794 | + BianchildClose(msg) { | |
| 1795 | + this.actbianMsg.bianshow = msg | |
| 1796 | + this.getAll() | |
| 1797 | + }, | |
| 1798 | + actBian(item) { | |
| 1799 | + this.actbianMsg.acBian = item | |
| 1800 | + this.actbianMsg.bianshow = true | |
| 1801 | + }, | |
| 1802 | + //详情点击 | |
| 1803 | + handleEditForm(item) { | |
| 1804 | + this.editId =item.id | |
| 1805 | + this.liData = [] | |
| 1806 | + this.lixiang = {} | |
| 1807 | + this.lishiList=null | |
| 1808 | + this.fileData = [] | |
| 1809 | + this.zhixingList = { | |
| 1810 | + planTime:[], | |
| 1811 | + planName: '', //活动名称 | |
| 1812 | + eventAddrs: '', //实际举办地点 | |
| 1813 | + eventStartTime: 0, //实际开始时间 | |
| 1814 | + eventEndTime: 0, //实际结束时间 | |
| 1815 | + sponsor: '', //实际主办方 | |
| 1816 | + participants: '', //实际参与方 | |
| 1817 | + internalLaborCostEstimation: '', //内部人工成本 | |
| 1818 | + externalLaborCostEstimation: '', //外部人工成本 | |
| 1819 | + costEstimationGoods: '', //商品成本 | |
| 1820 | + setCostEstimate: '', //设备成本 | |
| 1821 | + estimatedPromotionalExpenses: '', //宣传费用预估 | |
| 1822 | + otherNecessaryEstimates: '', //其他成本预估 | |
| 1823 | + totalCostEstimation: '', //总成本预估 | |
| 1824 | + notes: '', //备注 | |
| 1825 | + expectedAttractTraffic: '', //吸引流量 | |
| 1826 | + expectedParticipation: '', //参与人数 | |
| 1827 | + expectedDirectBenefits: '', //直接收益 | |
| 1828 | + expectedIndirectBenefits: '', //间接收益 | |
| 1829 | + createDate: '', //创建时间 | |
| 1830 | + feedbackContent:'' | |
| 1831 | + } //执行效果列表 | |
| 1832 | + actPage({ | |
| 1833 | + detailsId: item.id, | |
| 1834 | + pageNumber: 1, | |
| 1835 | + pageSize: 10, | |
| 1836 | + }).then(res => { | |
| 1837 | + console.log(res.data.content) | |
| 1838 | + if (res.data.content.length == 0) { | |
| 1839 | + this.zhiXing = true | |
| 1840 | + } else { | |
| 1841 | + mingTable({ | |
| 1842 | + detailsId: res.data.content[0].id, | |
| 1843 | + pageNumber: 1, | |
| 1844 | + pageSize: 10, | |
| 1845 | + }).then(res => { | |
| 1846 | + this.tableDa = res.data.content | |
| 1847 | + }) | |
| 1848 | + this.zhiXing = false | |
| 1849 | + this.zhixingList = res.data.content[0] | |
| 1850 | + if((typeof this.zhixingList.eventStartTime) == 'object' || (typeof this.zhixingList.eventEndTime) == 'object' ){ | |
| 1851 | + this.zhixingList.planTime = [] | |
| 1852 | + }else{ | |
| 1853 | + console.log(typeof this.zhixingList.eventStartTime) | |
| 1854 | + this.zhixingList.planTime = [ this.zhixingList.eventStartTime, this.zhixingList.eventEndTime] | |
| 1855 | + } | |
| 1856 | + | |
| 1857 | + } | |
| 1858 | + }) | |
| 1859 | + let that = this | |
| 1860 | + this.planTime = [item.eventStartTime, item.eventEndTime] | |
| 1861 | + fujiaTable({ | |
| 1862 | + detailsId: item.id, | |
| 1863 | + pageNumber: 1, | |
| 1864 | + pageSize: 10, | |
| 1865 | + }).then(res => { | |
| 1866 | + this.tableData6 = res.data.content | |
| 1867 | + }) | |
| 1868 | + mingTable({ | |
| 1869 | + detailsId: item.id, | |
| 1870 | + pageNumber: 1, | |
| 1871 | + pageSize: 10, | |
| 1872 | + }).then(res => { | |
| 1873 | + this.tableData2 = res.data.content | |
| 1874 | + }) | |
| 1875 | + | |
| 1876 | + | |
| 1877 | + danqueryById({ | |
| 1878 | + id: item.id, | |
| 1879 | + dataOwnership: '1', | |
| 1880 | + pageNumber: 1, | |
| 1881 | + pageSize: 10, | |
| 1882 | + }).then(res => { | |
| 1883 | + this.secondData = res.data.content[0] | |
| 1884 | + //基本信息 | |
| 1885 | + // that.id=res.data.content[0].id | |
| 1886 | + that.text = res.data.content[0].planName | |
| 1887 | + that.tableData1[0].eventTheme = res.data.content[0].planType | |
| 1888 | + that.tableData1[0].planName = res.data.content[0].eventAddrs | |
| 1889 | + that.tableData1[1].eventTheme = res.data.content[0].eventStartTime | |
| 1890 | + that.tableData1[1].planName = res.data.content[0].eventEndTime | |
| 1891 | + that.tableData1[2].eventTheme = res.data.content[0].eventTheme | |
| 1892 | + that.tableData1[2].planName = res.data.content[0].sponsor | |
| 1893 | + that.tableData1[3].eventTheme = res.data.content[0].participants | |
| 1894 | + that.tableData1[3].planName = res.data.content[0].mainPurpose | |
| 1895 | + that.tableData1[4].planName = this.getStatus(res.data.content[0].state) | |
| 1896 | + that.tableData1[4].eventTheme = res.data.content[0].rangeSetting | |
| 1897 | + //活动成本信息 | |
| 1898 | + that.internalLaborCostEstimation = res.data.content[0].internalLaborCostEstimation | |
| 1899 | + that.externalLaborCostEstimation = res.data.content[0].externalLaborCostEstimation | |
| 1900 | + that.tableData3[0].eventTheme = res.data.content[0].costEstimationGoods | |
| 1901 | + that.tableData3[0].planName = res.data.content[0].setCostEstimate | |
| 1902 | + that.tableData3[1].eventTheme = res.data.content[0].estimatedPromotionalExpenses | |
| 1903 | + that.tableData3[1].planName = res.data.content[0].otherNecessaryEstimates | |
| 1904 | + that.tableData3[2].eventTheme = res.data.content[0].totalCostEstimation | |
| 1905 | + that.tableData3[2].planName = res.data.content[0].notes | |
| 1906 | + //预估效果 | |
| 1907 | + that.expectedAttractTraffic = res.data.content[0].expectedAttractTraffic | |
| 1908 | + that.expectedParticipation = res.data.content[0].expectedParticipation | |
| 1909 | + that.tableData4[0].eventTheme = res.data.content[0].expectedDirectBenefits | |
| 1910 | + that.tableData4[0].planName = res.data.content[0].expectedIndirectBenefits | |
| 1911 | + //系统信息 | |
| 1912 | + that.createUser = res.data.content[0].createUser | |
| 1913 | + that.createDate = res.data.content[0].createDate | |
| 1914 | + | |
| 1915 | + that.tableData5[0].planName = '-' | |
| 1916 | + that.tableData5[0].eventTheme = res.data.content[0].updateUser | |
| 1917 | + | |
| 1918 | + }).catch(err => { | |
| 1919 | + console.log(err) | |
| 1920 | + | |
| 1921 | + }) | |
| 1922 | + if (!item) { | |
| 1923 | + this.formItem = {} | |
| 1924 | + } else { | |
| 1925 | + this.formItem = item | |
| 1926 | + } | |
| 1927 | + lishiDeta({eventDetailsId:item.id}).then(res=>{ | |
| 1928 | + this.liData = res.data | |
| 1929 | + }) | |
| 1930 | + this.ggXin = true | |
| 1931 | + }, | |
| 1932 | + formTime(data){ | |
| 1933 | + this.zhixingList.planTime = data | |
| 1934 | + }, | |
| 1935 | + removeEmptyValues(obj) { | |
| 1936 | + if (typeof obj !== 'object' || obj === null) { | |
| 1937 | + return obj; | |
| 1938 | + } | |
| 1939 | + | |
| 1940 | + const newObj = Array.isArray(obj) ? [] : {}; | |
| 1941 | + | |
| 1942 | + for (const key in obj) { | |
| 1943 | + if (Object.prototype.hasOwnProperty.call(obj, key)) { | |
| 1944 | + const value = obj[key]; | |
| 1945 | + if (value !== null && value !== undefined && value !== '' && !this.isEmptyObject(value)) { | |
| 1946 | + if (Array.isArray(newObj)) { | |
| 1947 | + newObj.push(this.removeEmptyValues(value)); | |
| 1948 | + } else { | |
| 1949 | + newObj[key] = this.removeEmptyValues(value); | |
| 1950 | + } | |
| 1951 | + } | |
| 1952 | + } | |
| 1953 | + } | |
| 1954 | + | |
| 1955 | + return newObj; | |
| 1956 | + }, | |
| 1957 | + isEmptyObject(obj) { | |
| 1958 | + return Object.keys(obj).length === 0 && obj.constructor === Object; | |
| 1959 | + }, | |
| 1960 | + //获取当前时间 | |
| 1961 | + updateCurrentTime() { | |
| 1962 | + const now = new Date(); | |
| 1963 | + const year = now.getFullYear(); | |
| 1964 | + const month = (now.getMonth() + 1).toString().padStart(2, '0'); | |
| 1965 | + const day = now.getDate().toString().padStart(2, '0'); | |
| 1966 | + const hours = now.getHours().toString().padStart(2, '0'); | |
| 1967 | + const minutes = now.getMinutes().toString().padStart(2, '0'); | |
| 1968 | + const seconds = now.getSeconds().toString().padStart(2, '0'); | |
| 1969 | + | |
| 1970 | + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; | |
| 1971 | + }, | |
| 1972 | + | |
| 1973 | + handleCurrentChange(val) { | |
| 1974 | + this.currentPage = val | |
| 1975 | + }, | |
| 1976 | + handleSizeChange(val) { | |
| 1977 | + this.pageSize = val | |
| 1978 | + }, | |
| 1979 | + closeFn() { | |
| 1980 | + this.ggXin = false | |
| 1981 | + }, | |
| 1982 | + handleClick() { | |
| 1983 | + console.log() | |
| 1984 | + }, | |
| 1985 | + refreshData() { | |
| 1986 | + // console.log('12123') | |
| 1987 | + this.tableDa = [] | |
| 1988 | + this.activeName = 'first' | |
| 1989 | + this.zhixingBian = false | |
| 1990 | + }, | |
| 1991 | + reshData() { | |
| 1992 | + this.tableDa = [] | |
| 1993 | + this.tiaozhengShow = false | |
| 1994 | + }, | |
| 1995 | + | |
| 1996 | + handleSelectionChange(val) { | |
| 1997 | + this.multipleSelection = val; | |
| 1998 | + }, | |
| 1999 | + toggleSelection(rows) { | |
| 2000 | + if (rows) { | |
| 2001 | + rows.forEach(row => { | |
| 2002 | + this.$refs.mulTable.toggleRowSelection(row); | |
| 2003 | + }); | |
| 2004 | + } | |
| 2005 | + }, | |
| 2006 | + tableAll() { | |
| 2007 | + this.$refs.mulTable.clearSelection(); // 清除所有选项 | |
| 2008 | + const allRows = this.$refs.mulTable.data; // 获取所有行数据 | |
| 2009 | + allRows.forEach(row => { | |
| 2010 | + this.$refs.mulTable.toggleRowSelection(row, true); // 全选所有项 | |
| 2011 | + }); | |
| 2012 | + }, | |
| 2013 | + TabClick(tab, event) { | |
| 2014 | + console.log(tab, event) | |
| 2015 | + if (tab.index == '0') { | |
| 2016 | + this.getAll() | |
| 2017 | + } else { | |
| 2018 | + this.tableData = [] | |
| 2019 | + } | |
| 2020 | + }, | |
| 2021 | + minSev() { | |
| 2022 | + if (this.zhiXing) { | |
| 2023 | + this.tableDa.push(this.mingFrom) | |
| 2024 | + } else { | |
| 2025 | + this.mingFrom.detailsId = this.zhixingList.id | |
| 2026 | + MingAdd(this.mingFrom).then(res => { | |
| 2027 | + this.mingcha(this.zhixingList.id) | |
| 2028 | + }) | |
| 2029 | + } | |
| 2030 | + this.mingFrom = { | |
| 2031 | + detailLtemName: '', | |
| 2032 | + estimatedQuantity: '', | |
| 2033 | + estimatedCost: '', | |
| 2034 | + notes: '' | |
| 2035 | + } | |
| 2036 | + this.addMing = false | |
| 2037 | + }, | |
| 2038 | + // 查询执行明细 | |
| 2039 | + mingcha(id) { | |
| 2040 | + mingTable({ | |
| 2041 | + detailsId: id, | |
| 2042 | + pageNumber: 1, | |
| 2043 | + pageSize: 10 | |
| 2044 | + }).then(res => { | |
| 2045 | + this.tableDa = res.data.content | |
| 2046 | + }) | |
| 2047 | + }, | |
| 2048 | + MingDelete(index, item) { | |
| 2049 | + const h = this.$createElement; | |
| 2050 | + this.$msgbox({ | |
| 2051 | + title: '消息', | |
| 2052 | + message: h('p', null, [ | |
| 2053 | + h('span', null, '是否删除 '), | |
| 2054 | + ]), | |
| 2055 | + showCancelButton: true, | |
| 2056 | + showClose: false, | |
| 2057 | + confirmButtonText: '确定', | |
| 2058 | + cancelButtonText: '取消', | |
| 2059 | + customClass: 'oe-dialog-btn', | |
| 2060 | + beforeClose: (action, instance, done) => { | |
| 2061 | + if (action === 'confirm') { | |
| 2062 | + if (this.zhiXing) { | |
| 2063 | + this.tableDa.splice(item, 1); | |
| 2064 | + } else { | |
| 2065 | + MingDel({ | |
| 2066 | + id: item.id | |
| 2067 | + }).then(res => { | |
| 2068 | + this.mingcha(this.zhixingList.id) | |
| 2069 | + }) | |
| 2070 | + } | |
| 2071 | + done(); | |
| 2072 | + } else { | |
| 2073 | + done(); | |
| 2074 | + } | |
| 2075 | + } | |
| 2076 | + }) | |
| 2077 | + }, | |
| 2078 | + tianMing() { | |
| 2079 | + if (this.zhixingBian) { | |
| 2080 | + this.addMing = true | |
| 2081 | + } | |
| 2082 | + }, | |
| 2083 | + | |
| 2084 | + duibi(){ | |
| 2085 | + if (this.multipleSelection.length ==1 ) { | |
| 2086 | + this.xiaoDui = true | |
| 2087 | + this.duibiOne = this.multipleSelection[0] | |
| 2088 | + console.log(this.multipleSelection[0]) | |
| 2089 | + let that = this | |
| 2090 | + actPage({ | |
| 2091 | + detailsId:this.multipleSelection[0].id, | |
| 2092 | + pageNumber: 1, | |
| 2093 | + pageSize: 10, | |
| 2094 | + }).then(res => { | |
| 2095 | + this.duibiTwo = res.data.content[0] === undefined ? {} : res.data.content[0]; | |
| 2096 | + console.log(this.duibiTwo) | |
| 2097 | + if( res.data.content[0] === undefined || res.data.content[0].totalCostEstimation =='' ){ | |
| 2098 | + that.xiaoduiObj.biliTwo = '0%' | |
| 2099 | + that.xiaoduiObj.biliT = 0 | |
| 2100 | + }else{ | |
| 2101 | + that.xiaoduiObj.biliT = that.duibiTwo.internalLaborCostEstimation / that.duibiTwo.totalCostEstimation*100 | |
| 2102 | + that.xiaoduiObj.biliTwo =`${Math.round(that.duibiTwo.internalLaborCostEstimation / that.duibiTwo.totalCostEstimation*100)}%` | |
| 2103 | + } | |
| 2104 | + | |
| 2105 | + }) | |
| 2106 | + if(that.duibiOne.totalCostEstimation ==''){ | |
| 2107 | + that.xiaoduiObj.biliOne = '0%' | |
| 2108 | + that.xiaoduiObj.bilis = 0 | |
| 2109 | + }else{ | |
| 2110 | + that.xiaoduiObj.bilis = that.duibiOne.internalLaborCostEstimation / that.duibiOne.totalCostEstimation*100 | |
| 2111 | + that.xiaoduiObj.biliOne = `${Math.round(that.duibiOne.internalLaborCostEstimation / that.duibiOne.totalCostEstimation*100)}%` | |
| 2112 | + } | |
| 2113 | + | |
| 2114 | + }else{ | |
| 2115 | + this.$message({ | |
| 2116 | + message: '请选择一个文件对比', | |
| 2117 | + customClass: 'custom-message', | |
| 2118 | + offset: 100 | |
| 2119 | + }) | |
| 2120 | + } | |
| 2121 | + | |
| 2122 | + }, | |
| 2123 | + | |
| 2124 | + koop(item){ | |
| 2125 | + this.copy.id = item.id | |
| 2126 | + this.copyShow = true | |
| 2127 | + }, | |
| 2128 | + copyClose(){ | |
| 2129 | + this.copyShow = false | |
| 2130 | + this.copy.planName = '' | |
| 2131 | + }, | |
| 2132 | + copysev(){ | |
| 2133 | + if(this.copy.planName == ''){ | |
| 2134 | + this.$message({ | |
| 2135 | + message: '请填写数据', | |
| 2136 | + customClass: 'custom-message', | |
| 2137 | + offset: 100 | |
| 2138 | + }) | |
| 2139 | + return; | |
| 2140 | + }else{ | |
| 2141 | + copy(this.copy).then(res=>{ | |
| 2142 | + this.copyShow = false | |
| 2143 | + this.getAll() | |
| 2144 | + }) | |
| 2145 | + } | |
| 2146 | + }, | |
| 2147 | + | |
| 2148 | + | |
| 2149 | + fenleiChange(value){ | |
| 2150 | + this.xinADD.parentId = value[value.length - 1] | |
| 2151 | + }, | |
| 2152 | + | |
| 2153 | + | |
| 2154 | + customFormat(percentage) { | |
| 2155 | + let zong | |
| 2156 | + if(percentage==undefined ||percentage === null || percentage == '' ){ | |
| 2157 | + percentage = 0 | |
| 2158 | + zong = 10000 | |
| 2159 | + } | |
| 2160 | + return `${percentage} / ${percentage==''?zong:parseInt(percentage) *10}`; | |
| 2161 | + }, | |
| 2162 | + baifenbi(item){ | |
| 2163 | + | |
| 2164 | + let zong | |
| 2165 | + if(item == undefined || item === null || item == '' ){ | |
| 2166 | + item = 0 | |
| 2167 | + zong = 10000 | |
| 2168 | + return Math.round(item / (item*10) * 100); | |
| 2169 | + }else{ | |
| 2170 | + return Math.round(item / zong * 100); | |
| 2171 | + } | |
| 2172 | + | |
| 2173 | + }, | |
| 2174 | + handleUploadSuccess(response, file, fileList) { | |
| 2175 | + const fileMsg = { | |
| 2176 | + name:file.name, | |
| 2177 | + url: file.response.data.url, | |
| 2178 | + } | |
| 2179 | + // 将文件地址存储在 uploadedFiles 数组中 | |
| 2180 | + this.fileData.push(fileMsg); | |
| 2181 | + }, | |
| 2182 | + handleRemove(){ | |
| 2183 | + this.fileData = [] | |
| 2184 | + }, | |
| 2185 | + daoru(response, file, fileList){ | |
| 2186 | + this.daoData.push(file.raw) | |
| 2187 | + const formDate = new FormData() | |
| 2188 | + formDate.append('file', this.daoData[0]) | |
| 2189 | + excelAdd(formDate).then(res => { | |
| 2190 | + this.getAll() | |
| 2191 | + }) | |
| 2192 | + }, | |
| 2193 | + | |
| 2194 | + | |
| 2195 | + async daochu(){ | |
| 2196 | + let res = await excelQueryByPage(this.pageindex) | |
| 2197 | + if(!res){ | |
| 2198 | + return | |
| 2199 | + } | |
| 2200 | + const blob = new Blob([res], { type: 'application/vnd.ms-excel' }) | |
| 2201 | + const fileName = '审核流程.xls' | |
| 2202 | + if ('download' in document.createElement('a')) { | |
| 2203 | + // 非IE下载 | |
| 2204 | + const elink = document.createElement('a') | |
| 2205 | + elink.download = fileName | |
| 2206 | + elink.style.display = 'none' | |
| 2207 | + elink.href = URL.createObjectURL(blob) | |
| 2208 | + document.body.appendChild(elink) | |
| 2209 | + elink.click() | |
| 2210 | + URL.revokeObjectURL(elink.href) // 释放URL 对象 | |
| 2211 | + document.body.removeChild(elink) | |
| 2212 | + } else { | |
| 2213 | + // IE10+下载 | |
| 2214 | + navigator.msSaveBlob(blob, fileName) | |
| 2215 | + } | |
| 2216 | + this.$message({ | |
| 2217 | + message: '导出成功', | |
| 2218 | + type: 'success' | |
| 2219 | + }) | |
| 2220 | + | |
| 2221 | + | |
| 2222 | + }, | |
| 2223 | + // 下载 | |
| 2224 | + async downloadPdf() { | |
| 2225 | + const content = this.$refs.actXiang; | |
| 2226 | + | |
| 2227 | + // 使用 html2canvas 将 div 渲染为画布 | |
| 2228 | + const canvas = await html2canvas(content); | |
| 2229 | + | |
| 2230 | + // 获取画布的图像数据 | |
| 2231 | + const imgData = canvas.toDataURL('image/png'); | |
| 2232 | + | |
| 2233 | + // 创建一个新的 PDF 文档 | |
| 2234 | + const pdf = new jsPDF('p', 'mm', 'a4'); | |
| 2235 | + | |
| 2236 | + // 添加图像到 PDF,第二个参数是图像格式,第三个参数是缩放比例 | |
| 2237 | + const imgWidth = 190; // 图像的宽度(mm) | |
| 2238 | + const imgHeight = (canvas.height * imgWidth) / canvas.width; // 保持图像的宽高比 | |
| 2239 | + | |
| 2240 | + pdf.addImage(imgData, 'PNG', 10, 10, imgWidth, imgHeight); // 10, 10 是图像在 PDF 中的位置(mm) | |
| 2241 | + | |
| 2242 | + // 保存 PDF 文件 | |
| 2243 | + pdf.save('活动方案.pdf'); | |
| 2244 | + }, | |
| 2245 | + // 下载 | |
| 2246 | + async lishidownloadPdf() { | |
| 2247 | + const content = this.$refs.lishiRef; | |
| 2248 | + | |
| 2249 | + // 使用 html2canvas 将 div 渲染为画布 | |
| 2250 | + const canvas = await html2canvas(content); | |
| 2251 | + | |
| 2252 | + // 获取画布的图像数据 | |
| 2253 | + const imgData = canvas.toDataURL('image/png'); | |
| 2254 | + | |
| 2255 | + // 创建一个新的 PDF 文档 | |
| 2256 | + const pdf = new jsPDF('p', 'mm', 'a4'); | |
| 2257 | + | |
| 2258 | + // 添加图像到 PDF,第二个参数是图像格式,第三个参数是缩放比例 | |
| 2259 | + const imgWidth = 190; // 图像的宽度(mm) | |
| 2260 | + const imgHeight = (canvas.height * imgWidth) / canvas.width; // 保持图像的宽高比 | |
| 2261 | + | |
| 2262 | + pdf.addImage(imgData, 'PNG', 10, 10, imgWidth, imgHeight); // 10, 10 是图像在 PDF 中的位置(mm) | |
| 2263 | + | |
| 2264 | + // 保存 PDF 文件 | |
| 2265 | + pdf.save('历史方案.pdf'); | |
| 2266 | + }, | |
| 2267 | +setSearch(){ | |
| 2268 | +this.searchShow = true | |
| 2269 | +}, | |
| 2270 | +lichange(e){ | |
| 2271 | +this.lishiList=e | |
| 2272 | + let msg =this.liData[e] | |
| 2273 | +this.duibiList = JSON.parse(msg.modifyContent) | |
| 2274 | +this.lixiang = JSON.parse(msg.originalData) | |
| 2275 | + | |
| 2276 | +}, | |
| 2277 | +tiaozheng(){ | |
| 2278 | + this.tiaozhengShow = true | |
| 2279 | +}, | |
| 2280 | +jiucuo(){ | |
| 2281 | + this.jiuMsg = '' | |
| 2282 | + this.jiucuoShow =true | |
| 2283 | +}, | |
| 2284 | +jiuCheck(){ | |
| 2285 | + xiangedit({id:this.editId,isErrorCorrection:this.jiuMsg}).then(res=>{ | |
| 2286 | + this.jiucuoShow = false | |
| 2287 | + }) | |
| 2288 | +}, | |
| 2289 | + } | |
| 2290 | + } | |
| 2291 | +</script> | |
| 2292 | + | |
| 2293 | +<style scoped> | |
| 2294 | + .custom-tree-node { | |
| 2295 | + flex: 1; | |
| 2296 | + display: flex; | |
| 2297 | + align-items: center; | |
| 2298 | + justify-content: space-between; | |
| 2299 | + font-size: 14px; | |
| 2300 | + padding-right: 8px; | |
| 2301 | + } | |
| 2302 | + /deep/ .first-column-bg { | |
| 2303 | + background-color: #f4f4f5 !important; | |
| 2304 | + } | |
| 2305 | + | |
| 2306 | + .zhuti { | |
| 2307 | + padding: 0 20px 20px 20px; | |
| 2308 | + min-height: calc(100vh - 50px - 20px); | |
| 2309 | + background-color: #Fff; | |
| 2310 | + | |
| 2311 | + } | |
| 2312 | +::v-deep .el-form-item{ | |
| 2313 | + margin-bottom:16px; | |
| 2314 | +} | |
| 2315 | + /deep/ .el-form-item__content { | |
| 2316 | + line-height: 0; | |
| 2317 | + } | |
| 2318 | + | |
| 2319 | + .tableBtn { | |
| 2320 | + display: inline-block; | |
| 2321 | + margin-right: 10px; | |
| 2322 | + } | |
| 2323 | + | |
| 2324 | + .formSearch { | |
| 2325 | + display: flex; | |
| 2326 | + width: 100%; | |
| 2327 | + font-size: 14px; | |
| 2328 | + justify-content: space-between; | |
| 2329 | + padding-bottom: 10px; | |
| 2330 | + align-items: center; | |
| 2331 | + } | |
| 2332 | + | |
| 2333 | + .greens { | |
| 2334 | + color: #3F9B6A; | |
| 2335 | + } | |
| 2336 | + | |
| 2337 | + /deep/ .el-table__row { | |
| 2338 | + font-size: 14px; | |
| 2339 | + color:#000000e6; | |
| 2340 | + height:42px; | |
| 2341 | + } | |
| 2342 | + | |
| 2343 | + .fenye { | |
| 2344 | + margin-top: 20px; | |
| 2345 | + display: flex; | |
| 2346 | + justify-content: space-between; | |
| 2347 | + position: relative; | |
| 2348 | + } | |
| 2349 | + | |
| 2350 | + /deep/ .el-pagination.is-background .el-pager li:not(.disabled).active { | |
| 2351 | + background-color: #3F9B6A; | |
| 2352 | + } | |
| 2353 | + | |
| 2354 | + .el-row { | |
| 2355 | + margin-bottom: 20px; | |
| 2356 | + } | |
| 2357 | + | |
| 2358 | + :last-child { | |
| 2359 | + margin-bottom: 0; | |
| 2360 | + } | |
| 2361 | + | |
| 2362 | + .el-col { | |
| 2363 | + border-radius: 4px; | |
| 2364 | + } | |
| 2365 | + | |
| 2366 | + .bg-purple-dark { | |
| 2367 | + background: #99a9bf; | |
| 2368 | + } | |
| 2369 | + | |
| 2370 | + .bg-purple { | |
| 2371 | + /* background: #d3dce6; */ | |
| 2372 | + } | |
| 2373 | + | |
| 2374 | + .bg-purple-light { | |
| 2375 | + background: #e5e9f2; | |
| 2376 | + } | |
| 2377 | + | |
| 2378 | + .grid-content { | |
| 2379 | + border-radius: 4px; | |
| 2380 | + min-height: 36px; | |
| 2381 | + } | |
| 2382 | + | |
| 2383 | + .row-bg { | |
| 2384 | + padding: 10px 0; | |
| 2385 | + background-color: #f9fafc; | |
| 2386 | + } | |
| 2387 | + | |
| 2388 | + /deep/ .bg-purple[data-v-0e3fe4ec] { | |
| 2389 | + background: #fff; | |
| 2390 | + height: 50px; | |
| 2391 | + } | |
| 2392 | + | |
| 2393 | + /deep/ .el-form--label-top .el-form-item__label { | |
| 2394 | + padding: 0; | |
| 2395 | + } | |
| 2396 | + | |
| 2397 | + | |
| 2398 | + .pagination { | |
| 2399 | + text-align: right; | |
| 2400 | + line-height: 20px; | |
| 2401 | + } | |
| 2402 | + | |
| 2403 | + /deep/ .el-pagination__total { | |
| 2404 | + margin-top: 4px; | |
| 2405 | + } | |
| 2406 | + | |
| 2407 | +::v-deep .xiang_css{ | |
| 2408 | + margin-top:11vh !important; | |
| 2409 | + margin-left: 13%; | |
| 2410 | + max-height:600px; | |
| 2411 | + overflow-y: auto; | |
| 2412 | +} | |
| 2413 | + /deep/ .dialog_css { | |
| 2414 | + margin-top: 11vh; | |
| 2415 | + margin-left: 25%; | |
| 2416 | + padding: 0px; | |
| 2417 | + | |
| 2418 | + .el-dialog__title { | |
| 2419 | + font-size: 14px; | |
| 2420 | + color: #000000e6; | |
| 2421 | + } | |
| 2422 | + } | |
| 2423 | + | |
| 2424 | + /deep/.el-dialog__body { | |
| 2425 | + padding: 0px; | |
| 2426 | + } | |
| 2427 | + | |
| 2428 | + /deep/ .el-dialog__header { | |
| 2429 | + background-color: #fff; | |
| 2430 | + } | |
| 2431 | + | |
| 2432 | + /deep/.el-dialog__title { | |
| 2433 | + font-size: 14px; | |
| 2434 | + color: #000000e6; | |
| 2435 | + } | |
| 2436 | + | |
| 2437 | + .el-row { | |
| 2438 | + margin-bottom: 20px; | |
| 2439 | + | |
| 2440 | + &:last-child { | |
| 2441 | + margin-bottom: 0; | |
| 2442 | + } | |
| 2443 | + } | |
| 2444 | + | |
| 2445 | + /deep/ .avatar-uploader .el-upload { | |
| 2446 | + border: 1px dashed #d9d9d9; | |
| 2447 | + border-radius: 6px; | |
| 2448 | + cursor: pointer; | |
| 2449 | + position: relative; | |
| 2450 | + overflow: hidden; | |
| 2451 | + } | |
| 2452 | + | |
| 2453 | + .avatar-uploader .el-upload:hover { | |
| 2454 | + border-color: #409EFF; | |
| 2455 | + } | |
| 2456 | + | |
| 2457 | + .avatar-uploader-icon { | |
| 2458 | + font-size: 28px; | |
| 2459 | + color: #8c939d; | |
| 2460 | + width: 108px; | |
| 2461 | + height: 108px; | |
| 2462 | + line-height: 108px; | |
| 2463 | + /*text-align: center;*/ | |
| 2464 | + } | |
| 2465 | + | |
| 2466 | + .avatar { | |
| 2467 | + width: 108px; | |
| 2468 | + height: 108px; | |
| 2469 | + display: block; | |
| 2470 | + } | |
| 2471 | + | |
| 2472 | + ::v-deep .el-tabs__item.is-active { | |
| 2473 | + color: #3F9B6A; | |
| 2474 | + opacity: 1; | |
| 2475 | + } | |
| 2476 | + | |
| 2477 | + /deep/ .el-tabs__nav-wrap::after { | |
| 2478 | + background-color: #fff; | |
| 2479 | + } | |
| 2480 | + | |
| 2481 | + ::v-deep .el-tabs__item:hover { | |
| 2482 | + color: #3F9B6A; | |
| 2483 | + cursor: pointer; | |
| 2484 | + opacity: 1; | |
| 2485 | + } | |
| 2486 | + | |
| 2487 | + /deep/ .el-tabs__active-bar { | |
| 2488 | + background-color: #389865; | |
| 2489 | + } | |
| 2490 | + | |
| 2491 | + /deep/ .el-table_2_column_13 { | |
| 2492 | + font-weight: 100; | |
| 2493 | + } | |
| 2494 | +::v-deep .el-input__inner{ | |
| 2495 | + height:32px; | |
| 2496 | + line-height:32px; | |
| 2497 | +} | |
| 2498 | + ::v-deep .el-input__inner:focus { | |
| 2499 | + border: #3F9B6A 1px solid; | |
| 2500 | + } | |
| 2501 | + | |
| 2502 | + ::v-deep .el-input__inner:hover { | |
| 2503 | + border: #3F9B6A 1px solid; | |
| 2504 | + } | |
| 2505 | + | |
| 2506 | + ::v-deep .el-select .el-input.is-focus .el-input__inner { | |
| 2507 | + border-color: #3F9B6A | |
| 2508 | + } | |
| 2509 | + | |
| 2510 | + ::v-deep .el-form-item__label { | |
| 2511 | + font-weight: 100; | |
| 2512 | + font-size: 14px; | |
| 2513 | + color:#000000e6; | |
| 2514 | + } | |
| 2515 | + | |
| 2516 | + /* ::v-deep .el-steps .el-step__head.is-wait { | |
| 2517 | + background-color: red; /* 修改为你想要的颜色 */ | |
| 2518 | + | |
| 2519 | + /* 修改未进行步骤的描述文字颜色 */ | |
| 2520 | + ::v-deep .el-steps .el-step__description.is-wait { | |
| 2521 | + color: #999; | |
| 2522 | + /* 修改为你想要的颜色 */ | |
| 2523 | + } | |
| 2524 | + | |
| 2525 | + /* 修改未进行步骤的图标颜色 */ | |
| 2526 | + ::v-deep .el-steps .el-step__icon.is-text.is-wait { | |
| 2527 | + color: #999; | |
| 2528 | + /* 修改为你想要的颜色 */ | |
| 2529 | + } | |
| 2530 | + | |
| 2531 | + /* 修改未进行步骤的边框色 */ | |
| 2532 | + ::v-deep .el-steps .el-step__line.is-wait { | |
| 2533 | + border-color: #eee; | |
| 2534 | + /* 修改为你想要的颜色 */ | |
| 2535 | + } | |
| 2536 | + | |
| 2537 | + ::v-deep .el-steps .is-process .el-step__line { | |
| 2538 | + background-color: #3F9B6A; | |
| 2539 | + /* 修改线的颜色 */ | |
| 2540 | + } | |
| 2541 | + | |
| 2542 | + ::v-deep .el-steps .is-process .el-step__title { | |
| 2543 | + color: #fe7b6a; | |
| 2544 | + /* 修改进行中步骤的标题颜色 */ | |
| 2545 | + } | |
| 2546 | + | |
| 2547 | + ::v-deep .el-steps .is-process .el-step__icon { | |
| 2548 | + color: #fff; | |
| 2549 | + /* 修改进行中步骤的图标颜色 */ | |
| 2550 | + background: #3F9B6A; | |
| 2551 | + /* 修改进行中步骤图标的边框颜色 */ | |
| 2552 | + border: 0px; | |
| 2553 | + } | |
| 2554 | + | |
| 2555 | + ::v-deep .el-step__icon-inner { | |
| 2556 | + line-height: 0 | |
| 2557 | + } | |
| 2558 | + | |
| 2559 | + /* 线条长度 */ | |
| 2560 | + ::v-deep .el-step.is-vertical .el-step__line { | |
| 2561 | + top: 30px; | |
| 2562 | + height: 60px; | |
| 2563 | + } | |
| 2564 | + | |
| 2565 | + .fenlan { | |
| 2566 | + display: flex; | |
| 2567 | + } | |
| 2568 | + | |
| 2569 | + .souLei { | |
| 2570 | + border: 1px solid #d7d7d7; | |
| 2571 | + background-color: #fff; | |
| 2572 | + width:300px; | |
| 2573 | + margin-right:20px; | |
| 2574 | + | |
| 2575 | + } | |
| 2576 | +::v-deep .el-menu{ | |
| 2577 | + border-right:0px; | |
| 2578 | +} | |
| 2579 | +::v-deep .el-menu-item{ | |
| 2580 | + height:36px; | |
| 2581 | + line-height: 33px; | |
| 2582 | +} | |
| 2583 | + | |
| 2584 | +::v-deep .el-submenu__title{ | |
| 2585 | + height:36px; | |
| 2586 | + line-height: 33px; | |
| 2587 | + font-weight:600; | |
| 2588 | + border-radius:4px; | |
| 2589 | + margin:4px 0; | |
| 2590 | +} | |
| 2591 | +::v-deep .el-menu-item-group__title{ | |
| 2592 | + padding:0px | |
| 2593 | +} | |
| 2594 | + ::v-deep .fudan{ | |
| 2595 | + font-weight:600; | |
| 2596 | + border-radius:4px; | |
| 2597 | + padding-left:29px !important; | |
| 2598 | + margin:4px 0; | |
| 2599 | + } | |
| 2600 | + ::v-deep .chinddan{ | |
| 2601 | + margin:5px 0; | |
| 2602 | + } | |
| 2603 | +</style> | |
| 2604 | +<style lang="scss" scoped> | |
| 2605 | + ::v-deep .el-table tr:hover{ | |
| 2606 | + background-color: #F0F7F3 !important; | |
| 2607 | + } | |
| 2608 | + ::v-deep .souTabs { | |
| 2609 | + padding:0 15px 0 12px; | |
| 2610 | + .el-submenu{ | |
| 2611 | + padding:0px; | |
| 2612 | + } | |
| 2613 | + .el-menu-item:focus, .el-menu-item:hover{ | |
| 2614 | + background-color: #3F9B6A !important; | |
| 2615 | + } | |
| 2616 | + .el-menu-item:hover{ | |
| 2617 | + background-color:#3f9b6a1a !important; | |
| 2618 | + color:#000 !important; | |
| 2619 | + } | |
| 2620 | + .el-tabs--left .el-tabs__header.is-left { | |
| 2621 | + width: 100%; | |
| 2622 | + margin-right: 0px; | |
| 2623 | + } | |
| 2624 | + | |
| 2625 | + .el-tabs--left .el-tabs__item.is-left { | |
| 2626 | + text-align: center; | |
| 2627 | + } | |
| 2628 | + | |
| 2629 | + .el-tabs__item.is-active { | |
| 2630 | + background-color: #DEEBE2; | |
| 2631 | + } | |
| 2632 | + } | |
| 2633 | + | |
| 2634 | + ::v-deep .tableList { | |
| 2635 | + width: 100%; | |
| 2636 | + } | |
| 2637 | + ::v-deep .fenxi_css{ | |
| 2638 | + margin-top: 9vh !important; | |
| 2639 | + margin-left: 10%; | |
| 2640 | + .el-dialog__header{ | |
| 2641 | + padding:0; | |
| 2642 | + } | |
| 2643 | + .el-tabs--border-card { | |
| 2644 | + border: none; | |
| 2645 | + -webkit-box-shadow:none; | |
| 2646 | + box-shadow:none; | |
| 2647 | + .el-tabs__content{ | |
| 2648 | + border: 1px solid #E4E7ED; | |
| 2649 | + padding:0; | |
| 2650 | + } | |
| 2651 | + .el-tabs__header{ | |
| 2652 | + background-color: #fff; | |
| 2653 | + border-bottom:none; | |
| 2654 | + } | |
| 2655 | + .el-tabs__content{ | |
| 2656 | + border: none; | |
| 2657 | + } | |
| 2658 | + .el-tabs__header .el-tabs__item{ | |
| 2659 | + border: none; | |
| 2660 | + margin-right: 10px; | |
| 2661 | + background-color: #F2F2F2; | |
| 2662 | + font-size:12px; | |
| 2663 | + border-top-left-radius: 8px; | |
| 2664 | + border-top-right-radius: 8px; | |
| 2665 | + padding:0 15px; | |
| 2666 | + } | |
| 2667 | + .el-tabs__header .el-tabs__item.is-active{ | |
| 2668 | + color:#fff; | |
| 2669 | + background-color: #3F9B6A; | |
| 2670 | + } | |
| 2671 | + .el-tabs__header .el-tabs__item:not(.is-disabled):hover{ | |
| 2672 | + color:#3F9B6A; | |
| 2673 | + } | |
| 2674 | + } | |
| 2675 | + | |
| 2676 | + } | |
| 2677 | + ::v-deep .xiaoguo_css{ | |
| 2678 | + margin-top: 30vh !important; | |
| 2679 | + margin-left: 25%; | |
| 2680 | + .el-dialog__header{ | |
| 2681 | + padding:0; | |
| 2682 | + } | |
| 2683 | + .el-tabs--border-card { | |
| 2684 | + border: none; | |
| 2685 | + -webkit-box-shadow:none; | |
| 2686 | + box-shadow:none; | |
| 2687 | + .el-tabs__content{ | |
| 2688 | + border: 1px solid #E4E7ED; | |
| 2689 | + padding:0; | |
| 2690 | + } | |
| 2691 | + .el-tabs__header{ | |
| 2692 | + background-color: #fff; | |
| 2693 | + border-bottom:none; | |
| 2694 | + } | |
| 2695 | + .el-tabs__content{ | |
| 2696 | + border: none; | |
| 2697 | + } | |
| 2698 | + .el-tabs__header .el-tabs__item{ | |
| 2699 | + border: none; | |
| 2700 | + margin-right: 10px; | |
| 2701 | + background-color: #F2F2F2; | |
| 2702 | + font-size:12px; | |
| 2703 | + border-top-left-radius: 8px; | |
| 2704 | + border-top-right-radius: 8px; | |
| 2705 | + padding:0 15px; | |
| 2706 | + } | |
| 2707 | + .el-tabs__header .el-tabs__item.is-active{ | |
| 2708 | + color:#fff; | |
| 2709 | + background-color: #3F9B6A; | |
| 2710 | + } | |
| 2711 | + .el-tabs__header .el-tabs__item:not(.is-disabled):hover{ | |
| 2712 | + color:#3F9B6A; | |
| 2713 | + } | |
| 2714 | + } | |
| 2715 | + } | |
| 2716 | + ::v-deep .demo-input-suffix { | |
| 2717 | + display: flex; | |
| 2718 | + margin-right: 20px; | |
| 2719 | + width: 83%; | |
| 2720 | + | |
| 2721 | + .el-input__inner{ | |
| 2722 | + height:32px; | |
| 2723 | + } | |
| 2724 | + } | |
| 2725 | + ::v-deep .el-input__icon{ | |
| 2726 | + line-height:25px; | |
| 2727 | + } | |
| 2728 | + ::v-deep .el-input--mini .el-input__icon{ | |
| 2729 | + line-height:33px; | |
| 2730 | + } | |
| 2731 | + | |
| 2732 | + ::v-deep .buttonHover:hover{ | |
| 2733 | + color:#3f9b6a !important; | |
| 2734 | + border-color: #c5e1d2 !important; | |
| 2735 | + background-color: #ecf5f0 !important; | |
| 2736 | + outline: none; | |
| 2737 | + } | |
| 2738 | + ::v-deep .DelBtnHover:hover{ | |
| 2739 | + color:#fff !important; | |
| 2740 | + border-color: rgb(226, 78, 90) !important; | |
| 2741 | + background-color: rgb(226, 78, 90) !important; | |
| 2742 | + outline: none; | |
| 2743 | + } | |
| 2744 | +::v-deep .el-menu-item.is-active { | |
| 2745 | + background-color: #3F9B6A !important; | |
| 2746 | +} | |
| 2747 | +::v-deep .jindutiao{ | |
| 2748 | + display:flex; | |
| 2749 | + align-items:center; | |
| 2750 | + margin-bottom:15px; | |
| 2751 | + .el-progress-bar__outer{ | |
| 2752 | + border-radius:0px; | |
| 2753 | + } | |
| 2754 | + .el-progress-bar__inner{ | |
| 2755 | + border-radius:0px; | |
| 2756 | + } | |
| 2757 | +} | |
| 2758 | + | |
| 2759 | +</style> | ... | ... |
yanshouban/src/views/activity/activitySp.vue
| ... | ... | @@ -59,7 +59,7 @@ |
| 59 | 59 | </el-table-column> |
| 60 | 60 | <el-table-column label="创建时间" prop="createDate" min-width="250" > |
| 61 | 61 | </el-table-column> |
| 62 | - <el-table-column prop="createUser" label="上传人员" min-width="80"> | |
| 62 | + <el-table-column prop="auditReminderTime" label="审核提醒时间" width="200"> | |
| 63 | 63 | |
| 64 | 64 | </el-table-column> |
| 65 | 65 | <el-table-column label="操作" min-width="200"> | ... | ... |
yanshouban/src/views/activity/index.vue
| ... | ... | @@ -86,9 +86,9 @@ |
| 86 | 86 | </el-table-column> |
| 87 | 87 | <el-table-column label="类型" prop="planType" width="80"> |
| 88 | 88 | </el-table-column> |
| 89 | - <el-table-column label="发布状态" width="80" > | |
| 89 | + <!-- <el-table-column label="发布状态" width="80" > | |
| 90 | 90 | |
| 91 | - </el-table-column> | |
| 91 | + </el-table-column> --> | |
| 92 | 92 | <el-table-column label="审批状态" width="150"> |
| 93 | 93 | <template slot-scope="scope"> |
| 94 | 94 | {{scope.row.state == ''?'待提交':scope.row.state == '1'?'待审批':scope.row.state == '2'?'部门领导审批':scope.row.state == '3'?'公司领导审批':scope.row.state == '4'?'其他审批':scope.row.state == '5'?'审核通过':'已驳回'}} |
| ... | ... | @@ -96,7 +96,7 @@ |
| 96 | 96 | </el-table-column> |
| 97 | 97 | <el-table-column label="创建时间" prop="createDate"width="250" > |
| 98 | 98 | </el-table-column> |
| 99 | - <el-table-column prop="createUser" label="上传人员" width="80"> | |
| 99 | + <el-table-column prop="auditReminderTime" label="审核提醒时间" width="200"> | |
| 100 | 100 | |
| 101 | 101 | </el-table-column> |
| 102 | 102 | <el-table-column label="操作" width="350"> |
| ... | ... | @@ -104,7 +104,10 @@ |
| 104 | 104 | <div @click="actBian(scope.row)" class="tableBtn greens" v-if="scope.row.state == ''">修改</div> |
| 105 | 105 | <!-- <div class="tableBtn greens">发布</div> --> |
| 106 | 106 | <div class="tableBtn greens" @click="handleEditForm(scope.row)">执行情况</div> |
| 107 | - <div @click="OAshen(scope.row)" class="tableBtn greens" v-if="scope.row.state == ''">上传到OA</div> | |
| 107 | + <div @click="OAshen(scope.row)" class="tableBtn greens" v-if="scope.row.state == ''">提交审核</div> | |
| 108 | + <div class="tableBtn greens" v-if="scope.row.state ==''" @click="peizhi(scope.row)"> | |
| 109 | + 审批流程选择 | |
| 110 | + </div> | |
| 108 | 111 | <div class="tableBtn greens" @click="xiaoguo(scope.row)" v-if="scope.row.state == '5'" >效果评估</div> |
| 109 | 112 | <!-- <div class="tableBtn greens">策略调整</div> --> |
| 110 | 113 | <div class="tableBtn greens" @click="koop(scope.row)">复制</div> |
| ... | ... | @@ -838,25 +841,7 @@ |
| 838 | 841 | </div> |
| 839 | 842 | </div> |
| 840 | 843 | <div style="padding:55px 10px 10px 10px;background-color:#fff; position:relative"> |
| 841 | - <div style="position: absolute;top: 52px;right: 5px; z-index: 10;"> | |
| 842 | - <el-radio-group v-model="radio1" style="margin-right:10px"> | |
| 843 | - <el-radio-button label="本周"></el-radio-button> | |
| 844 | - <el-radio-button label="本月"></el-radio-button> | |
| 845 | - <el-radio-button label="今年 "></el-radio-button> | |
| 846 | - <el-radio-button label="自定义"></el-radio-button> | |
| 847 | - </el-radio-group> | |
| 848 | - <el-date-picker | |
| 849 | - v-if="radio1=='自定义'" | |
| 850 | - | |
| 851 | - style="width:250px" | |
| 852 | - v-model="radio1_time" | |
| 853 | - type="datetimerange" | |
| 854 | - range-separator="至" | |
| 855 | - start-placeholder="开始日期" | |
| 856 | - end-placeholder="结束日期"> | |
| 857 | - </el-date-picker> | |
| 858 | - </div> | |
| 859 | - <el-tabs type="border-card" @tab-click="xiaoguoTab"> | |
| 844 | + <el-tabs type="border-card" > | |
| 860 | 845 | <el-tab-pane label="整体效果分析"> |
| 861 | 846 | <el-table :data="dataList" |
| 862 | 847 | :header-cell-style="{fontSize: '12px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" |
| ... | ... | @@ -893,78 +878,8 @@ |
| 893 | 878 | </el-table-column> |
| 894 | 879 | </el-table> |
| 895 | 880 | </el-tab-pane> |
| 896 | - <el-tab-pane label="纵向分析"> | |
| 897 | -<el-table :data="dataList" | |
| 898 | - :header-cell-style="{fontSize: '12px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 899 | - style="width: 100%"> | |
| 900 | - <el-table-column label="主题" width="auto" min-width="12%" align="center"> | |
| 901 | - <template slot-scope="scope"> | |
| 902 | - {{scope.$index + 1}} | |
| 903 | - </template> | |
| 904 | - </el-table-column> | |
| 905 | - <el-table-column label="环比比较" width="auto" min-width="15%" align="center"> | |
| 906 | - <template slot-scope="scope"> | |
| 907 | - {{scope.$index + 1}} | |
| 908 | - </template> | |
| 909 | - </el-table-column> | |
| 910 | - <el-table-column label="增长量" width="auto" min-width="15%" align="center"> | |
| 911 | - <template slot-scope="scope"> | |
| 912 | - {{scope.$index + 1}} | |
| 913 | - </template> | |
| 914 | - </el-table-column> | |
| 915 | - <el-table-column label="增长率" prop="name" width="auto" min-width="15%"> | |
| 916 | - <template slot-scope="scope"> | |
| 917 | - {{scope.row.name}} | |
| 918 | - </template> | |
| 919 | - </el-table-column> | |
| 920 | - <el-table-column label="投入总金额" prop="name" width="auto" min-width="15%"> | |
| 921 | - <template slot-scope="scope"> | |
| 922 | - {{scope.row.name}} | |
| 923 | - </template> | |
| 924 | - </el-table-column> | |
| 925 | - <el-table-column label="投入产出比" prop="name" width="auto" min-width="15%"> | |
| 926 | - <template slot-scope="scope"> | |
| 927 | - {{scope.row.name}} | |
| 928 | - </template> | |
| 929 | - </el-table-column> | |
| 930 | - </el-table> | |
| 931 | - </el-tab-pane> | |
| 932 | - <el-tab-pane label="横向分析"> | |
| 933 | -<el-table :data="dataList" | |
| 934 | - :header-cell-style="{fontSize: '12px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 935 | - style="width: 100%"> | |
| 936 | - <el-table-column label="主题" width="auto" min-width="12%" align="center"> | |
| 937 | - <template slot-scope="scope"> | |
| 938 | - {{scope.$index + 1}} | |
| 939 | - </template> | |
| 940 | - </el-table-column> | |
| 941 | - <el-table-column label="环比比较" width="auto" min-width="15%" align="center"> | |
| 942 | - <template slot-scope="scope"> | |
| 943 | - {{scope.$index + 1}} | |
| 944 | - </template> | |
| 945 | - </el-table-column> | |
| 946 | - <el-table-column label="增长量" width="auto" min-width="15%" align="center"> | |
| 947 | - <template slot-scope="scope"> | |
| 948 | - {{scope.$index + 1}} | |
| 949 | - </template> | |
| 950 | - </el-table-column> | |
| 951 | - <el-table-column label="增长率" prop="name" width="auto" min-width="15%"> | |
| 952 | - <template slot-scope="scope"> | |
| 953 | - {{scope.row.name}} | |
| 954 | - </template> | |
| 955 | - </el-table-column> | |
| 956 | - <el-table-column label="投入总金额" prop="name" width="auto" min-width="15%"> | |
| 957 | - <template slot-scope="scope"> | |
| 958 | - {{scope.row.name}} | |
| 959 | - </template> | |
| 960 | - </el-table-column> | |
| 961 | - <el-table-column label="投入产出比" prop="name" width="auto" min-width="15%"> | |
| 962 | - <template slot-scope="scope"> | |
| 963 | - {{scope.row.name}} | |
| 964 | - </template> | |
| 965 | - </el-table-column> | |
| 966 | - </el-table> | |
| 967 | - </el-tab-pane> | |
| 881 | + | |
| 882 | + | |
| 968 | 883 | </el-tabs> |
| 969 | 884 | </div> |
| 970 | 885 | |
| ... | ... | @@ -1067,6 +982,28 @@ |
| 1067 | 982 | </div> |
| 1068 | 983 | |
| 1069 | 984 | </el-dialog> |
| 985 | + <el-dialog :visible.sync="peiShow" custom-class='bian_css' style="padding: 0;" width="45%" | |
| 986 | + :close-on-press-escape="false" center :close-on-click-modal="false" class="dialog_css_Xq" :show-close="false"> | |
| 987 | + <div style="padding:20px;"> | |
| 988 | + <div style="font-size: 14px;padding-bottom: 20px;color: #000;">审核流程配置</div> | |
| 989 | + <el-form label-position="right" ref="jibenFrom" :model="peiForm" label-width="140px" | |
| 990 | + style="position: relative"> | |
| 991 | + <el-form-item label="审核提醒时间" class="grid-content bg-purple device-from" prop="planName"> | |
| 992 | + <el-date-picker style="width:240px;margin-right:5px" v-model="peiForm.auditReminderTime" | |
| 993 | + value-format="yyyy-MM-dd HH:mm:ss" type="datetime" prefix-icon="none" > | |
| 994 | + </el-date-picker> | |
| 995 | + </el-form-item> | |
| 996 | + </el-form> | |
| 997 | + <div style="padding-top:20px;display:flex;justify-content: flex-end;"> | |
| 998 | + <el-button style="background-color: #3F9B6A;color: #fff" | |
| 999 | + @click="peiCheck">确定</el-button> | |
| 1000 | + <el-button @click="peiShow = false" style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" class="buttonHover">取消</el-button> | |
| 1001 | + | |
| 1002 | + </div> | |
| 1003 | + | |
| 1004 | + </div> | |
| 1005 | + | |
| 1006 | + </el-dialog> | |
| 1070 | 1007 | <addAct :showAdd="addAct" @childClose='childClose' :fenleiName="cascaderList"></addAct> |
| 1071 | 1008 | <actbians :showBian="actbianMsg" @BianchildClose='BianchildClose'></actbians> |
| 1072 | 1009 | </div> |
| ... | ... | @@ -1279,8 +1216,7 @@ |
| 1279 | 1216 | xiaoguoBox:false, |
| 1280 | 1217 | chart: null, //饼图 |
| 1281 | 1218 | chart1: null, //漏斗图 |
| 1282 | - radio1:'', | |
| 1283 | - radio1_time:'', | |
| 1219 | + | |
| 1284 | 1220 | dataList:[], |
| 1285 | 1221 | xinlei:false,//分类管理框 |
| 1286 | 1222 | fenleiDelId:null,//删除的分类ID |
| ... | ... | @@ -1303,9 +1239,14 @@ |
| 1303 | 1239 | duibiOne:{}, |
| 1304 | 1240 | duibiTwo:{}, |
| 1305 | 1241 | caoList:[], |
| 1306 | - caogaoshow:false | |
| 1307 | - } | |
| 1308 | - }, | |
| 1242 | + caogaoshow:false, | |
| 1243 | + peiForm:{ | |
| 1244 | + auditReminderTime:'' | |
| 1245 | + }, | |
| 1246 | + peiShow:false, | |
| 1247 | + peiId:'', | |
| 1248 | + } | |
| 1249 | + }, | |
| 1309 | 1250 | created() { |
| 1310 | 1251 | this.getAll() |
| 1311 | 1252 | |
| ... | ... | @@ -1844,9 +1785,6 @@ |
| 1844 | 1785 | } |
| 1845 | 1786 | |
| 1846 | 1787 | }, |
| 1847 | - xiaoguoTab(tab, event){ | |
| 1848 | - | |
| 1849 | - }, | |
| 1850 | 1788 | xiaoguo(item) { |
| 1851 | 1789 | effectEvaluation({id:item.id}).then(res=>{ |
| 1852 | 1790 | this.fenxiData = res.data |
| ... | ... | @@ -2193,6 +2131,24 @@ |
| 2193 | 2131 | // 保存 PDF 文件 |
| 2194 | 2132 | pdf.save('活动方案.pdf'); |
| 2195 | 2133 | }, |
| 2134 | + peizhi(item){ | |
| 2135 | + this.peiForm = { | |
| 2136 | + auditTime:'' | |
| 2137 | + } | |
| 2138 | + this.peiShow = true | |
| 2139 | + this.peiId = item.id | |
| 2140 | + }, | |
| 2141 | + async peiCheck(){ | |
| 2142 | + if(this.peiForm.auditReminderTime ==''){ | |
| 2143 | + this.$message({ | |
| 2144 | + message: '请填写审核提醒时间', | |
| 2145 | + }) | |
| 2146 | + return; | |
| 2147 | + } | |
| 2148 | + await xiangedit({id:this.peiId,auditReminderTime:this.peiForm.auditReminderTime}) | |
| 2149 | + this.peiShow = false | |
| 2150 | + this.getAll() | |
| 2151 | + }, | |
| 2196 | 2152 | } |
| 2197 | 2153 | } |
| 2198 | 2154 | </script> | ... | ... |
yanshouban/src/views/ads/fangAudit/bianform.vue
| ... | ... | @@ -66,6 +66,7 @@ |
| 66 | 66 | </div> |
| 67 | 67 | </div> |
| 68 | 68 | <el-form-item label="附件信息" prop="mainPurpose" class="grid-content bg-purple"> |
| 69 | + <div style="padding:10px 0;line-height:20px;color:#3F9B6A" v-if="steat == false && ruleForm.attachmentInfo">{{ruleForm.attachmentInfo.name}}<a style="margin-left:20px;color:#3F9B6A" :href="ruleForm.attachmentInfo.url" target="_blank" v-if="ruleForm.attachmentInfo.name">下载</a></div> | |
| 69 | 70 | <!-- <el-upload class="upload-demo" ref="upload" :on-preview="handlePreview" :on-remove="handleRemove" |
| 70 | 71 | :action="uploadFileUrl" :on-success="handleUploadSuccess" :file-list="fileData" |
| 71 | 72 | :show-file-list="false"> |
| ... | ... | @@ -73,7 +74,7 @@ |
| 73 | 74 | 上传附件 |
| 74 | 75 | </div> |
| 75 | 76 | </el-upload> --> |
| 76 | - <div style="padding:10px 0;line-height:20px;color:#3F9B6A" v-if="showBian">{{ruleForm.attachmentInfo.name || ''}}</div> | |
| 77 | + | |
| 77 | 78 | </el-form-item> |
| 78 | 79 | <el-form-item label="状态" prop="mainPurpose" class="grid-content bg-purple" v-if="steat"> |
| 79 | 80 | <el-radio-group v-model="radio"> | ... | ... |
yanshouban/src/views/ads/fangAudit/index.vue
| ... | ... | @@ -48,106 +48,106 @@ |
| 48 | 48 | " |
| 49 | 49 | :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}" |
| 50 | 50 | > |
| 51 | - <el-table-column | |
| 52 | - label="序号" | |
| 53 | - min-width="60" | |
| 54 | - > | |
| 55 | - <template slot-scope="scope"> | |
| 56 | - {{scope.$index+1}} | |
| 57 | - </template> | |
| 58 | - </el-table-column> | |
| 59 | - <el-table-column | |
| 60 | - label="招商方案名称" | |
| 61 | - prop="planName" | |
| 62 | - min-width="300" | |
| 63 | - /> | |
| 64 | - <el-table-column | |
| 65 | - label="规划方案名称" | |
| 66 | - | |
| 67 | - min-width="300" | |
| 68 | - > | |
| 69 | - <template slot-scope="scope"> | |
| 70 | - {{scope.row.cereInvestmentPlanningManagement.planningName}} | |
| 71 | - </template> | |
| 72 | - </el-table-column> | |
| 73 | - <el-table-column | |
| 74 | - label="计划实施时间" | |
| 75 | - | |
| 76 | - min-width="250" | |
| 77 | - > | |
| 78 | - <template slot-scope="scope"> | |
| 79 | - {{scope.row.cereInvestmentPlanningManagement.implementationStartTime}} - {{scope.row.cereInvestmentPlanningManagement.implementationEndTime}} | |
| 80 | - </template> | |
| 81 | - </el-table-column> | |
| 82 | - <el-table-column | |
| 83 | - label="涵盖资源数" | |
| 84 | - min-width="120" | |
| 85 | - > | |
| 86 | - <template slot-scope="scope"> | |
| 87 | - {{ scope.row.cereResourceStrategy.length }} | |
| 88 | - </template> | |
| 89 | - </el-table-column> | |
| 90 | - <el-table-column | |
| 91 | - label="资源编号" | |
| 92 | - prop="founder" | |
| 93 | - min-width="200"> | |
| 94 | - <template slot-scope="scope"> | |
| 95 | - {{ scope.row.cereResourceStrategy.resourcesId }} | |
| 96 | - </template> | |
| 97 | - </el-table-column> | |
| 98 | - <el-table-column | |
| 99 | - label="资源类型" | |
| 100 | - prop="contactInformation" | |
| 101 | - min-width="150" | |
| 102 | - > | |
| 103 | - <template slot-scope="scope"> | |
| 104 | - {{ scope.row.cereResourceStrategy.id }} | |
| 105 | - </template> | |
| 106 | - </el-table-column> | |
| 107 | - <el-table-column | |
| 108 | - label="租金" | |
| 109 | - | |
| 110 | - min-width="150" | |
| 111 | - > | |
| 112 | - <template slot-scope="scope"> | |
| 113 | - | |
| 114 | - </template> | |
| 115 | - </el-table-column> | |
| 116 | - <el-table-column | |
| 117 | - label="免租期" | |
| 118 | - | |
| 119 | - min-width="150" | |
| 120 | - > | |
| 121 | - <template slot-scope="scope"> | |
| 122 | - | |
| 123 | - </template> | |
| 124 | - </el-table-column> | |
| 125 | - <el-table-column | |
| 126 | - label="付款方式" | |
| 127 | - | |
| 128 | - min-width="150" | |
| 129 | - > | |
| 130 | - <template slot-scope="scope"> | |
| 131 | - | |
| 132 | - </template> | |
| 133 | - </el-table-column> | |
| 134 | - <el-table-column | |
| 135 | - label="当前节点" | |
| 136 | - min-width="150" | |
| 137 | - > | |
| 138 | - <template slot-scope="scope"> | |
| 139 | - {{scope.row.auditStatus =='1'?'待审核':scope.row.auditStatus =='2'?'审核通过':scope.row.auditStatus =='3'?'已驳回':''}} | |
| 51 | + <el-table-column | |
| 52 | + label="序号" | |
| 53 | + min-width="60" | |
| 54 | + > | |
| 55 | + <template slot-scope="scope"> | |
| 56 | + {{scope.$index+1}} | |
| 57 | + </template> | |
| 58 | + </el-table-column> | |
| 59 | + <el-table-column | |
| 60 | + label="招商方案名称" | |
| 61 | + prop="planName" | |
| 62 | + min-width="300" | |
| 63 | + /> | |
| 64 | + <el-table-column | |
| 65 | + label="规划方案名称" | |
| 66 | + | |
| 67 | + min-width="300" | |
| 68 | + > | |
| 69 | + <template slot-scope="scope"> | |
| 70 | + {{scope.row.cereInvestmentPlanningManagement.planningName}} | |
| 71 | + </template> | |
| 72 | + </el-table-column> | |
| 73 | + <el-table-column | |
| 74 | + label="计划实施时间" | |
| 75 | + | |
| 76 | + min-width="250" | |
| 77 | + > | |
| 78 | + <template slot-scope="scope"> | |
| 79 | + {{scope.row.cereInvestmentPlanningManagement.implementationStartTime}} - {{scope.row.cereInvestmentPlanningManagement.implementationEndTime}} | |
| 80 | + </template> | |
| 81 | + </el-table-column> | |
| 82 | + <el-table-column | |
| 83 | + label="涵盖资源数" | |
| 84 | + min-width="120" | |
| 85 | + > | |
| 86 | + <template slot-scope="scope"> | |
| 87 | + {{ scope.row.cereResourceStrategy.length }} | |
| 88 | + </template> | |
| 89 | + </el-table-column> | |
| 90 | + <!-- <el-table-column | |
| 91 | + label="资源编号" | |
| 92 | + prop="founder" | |
| 93 | + min-width="200"> | |
| 94 | + <template slot-scope="scope"> | |
| 95 | + {{ scope.row.cereResourceStrategy.resourcesId }} | |
| 140 | 96 | </template> |
| 141 | - </el-table-column> | |
| 142 | - <!-- <el-table-column | |
| 143 | - label="启用状态" | |
| 144 | - prop="auditStatus" | |
| 145 | - min-width="150" | |
| 146 | - > | |
| 147 | - <template slot-scope="scope"> | |
| 148 | - 未启用 | |
| 149 | - </template> | |
| 150 | - </el-table-column> --> | |
| 97 | + </el-table-column> | |
| 98 | + <el-table-column | |
| 99 | + label="资源类型" | |
| 100 | + prop="contactInformation" | |
| 101 | + min-width="150" | |
| 102 | + > | |
| 103 | + <template slot-scope="scope"> | |
| 104 | + {{ scope.row.cereResourceStrategy.id }} | |
| 105 | + </template> | |
| 106 | + </el-table-column> | |
| 107 | + <el-table-column | |
| 108 | + label="租金" | |
| 109 | + | |
| 110 | + min-width="150" | |
| 111 | + > | |
| 112 | + <template slot-scope="scope"> | |
| 113 | + | |
| 114 | + </template> | |
| 115 | + </el-table-column> | |
| 116 | + <el-table-column | |
| 117 | + label="免租期" | |
| 118 | + | |
| 119 | + min-width="150" | |
| 120 | + > | |
| 121 | + <template slot-scope="scope"> | |
| 122 | + | |
| 123 | + </template> | |
| 124 | + </el-table-column> | |
| 125 | + <el-table-column | |
| 126 | + label="付款方式" | |
| 127 | + | |
| 128 | + min-width="150" | |
| 129 | + > | |
| 130 | + <template slot-scope="scope"> | |
| 131 | + | |
| 132 | + </template> | |
| 133 | + </el-table-column> --> | |
| 134 | + <el-table-column | |
| 135 | + label="当前节点" | |
| 136 | + min-width="150" | |
| 137 | + > | |
| 138 | + <template slot-scope="scope"> | |
| 139 | + {{scope.row.auditStatus =='1'?'待审核':scope.row.auditStatus =='2'?'审核通过':scope.row.auditStatus =='3'?'已驳回':''}} | |
| 140 | + </template> | |
| 141 | + </el-table-column> | |
| 142 | + <el-table-column | |
| 143 | + label="启用状态" | |
| 144 | + prop="enableStatus" | |
| 145 | + min-width="150" | |
| 146 | + > | |
| 147 | + <template slot-scope="scope"> | |
| 148 | + {{scope.row.enableStatus =='0'?'启用':'禁用'}} | |
| 149 | + </template> | |
| 150 | + </el-table-column> | |
| 151 | 151 | <el-table-column label="操作" width="180" fixed="right"> |
| 152 | 152 | <template slot-scope="scope"> |
| 153 | 153 | <div class="tableBtn greens" @click="handleEditForm(scope.row,false)"> |
| ... | ... | @@ -306,7 +306,7 @@ |
| 306 | 306 | </div> |
| 307 | 307 | <el-form-item label="附件信息" prop="mainPurpose" class="grid-content bg-purple"> |
| 308 | 308 | |
| 309 | - <div style="padding:10px 0;line-height:20px;color:#3F9B6A" v-if="shenhe.attachmentInfo.name">{{shenhe.attachmentInfo.name}}</div> | |
| 309 | + <div style="padding:10px 0;line-height:20px;color:#3F9B6A" v-if="shenhe.attachmentInfo.name">{{shenhe.attachmentInfo.name}}<a style="margin-left:20px;color:#3F9B6A" :href="shenhe.attachmentInfo.url" target="_blank" v-if="shenhe.attachmentInfo.name">下载</a></div> | |
| 310 | 310 | </el-form-item> |
| 311 | 311 | |
| 312 | 312 | |
| ... | ... | @@ -557,6 +557,7 @@ export default { |
| 557 | 557 | pageindex: { |
| 558 | 558 | pageNumber: 1, |
| 559 | 559 | pageSize: 10, |
| 560 | + auditStatus:'1' | |
| 560 | 561 | }, |
| 561 | 562 | chart: null, |
| 562 | 563 | chart1: null, | ... | ... |
yanshouban/src/views/ads/fangli/addform.vue
| ... | ... | @@ -456,6 +456,11 @@ multipleSelection:[], |
| 456 | 456 | newAdd:{ |
| 457 | 457 | resourcesId:'',//资源ID |
| 458 | 458 | rentalPoliciesId:'',//策略ID |
| 459 | + }, | |
| 460 | + fanganPage:{ | |
| 461 | + reviewStatus:'2', | |
| 462 | + pageNumber: 1, | |
| 463 | + pageSize: 10, | |
| 459 | 464 | } |
| 460 | 465 | } |
| 461 | 466 | }, |
| ... | ... | @@ -482,7 +487,8 @@ multipleSelection:[], |
| 482 | 487 | }, |
| 483 | 488 | //查询数据 |
| 484 | 489 | async getAll() { |
| 485 | - const res = await contractGetAll(this.pageindex) | |
| 490 | + | |
| 491 | + const res = await contractGetAll(this.fanganPage) | |
| 486 | 492 | this.guihuaDate = res.data.content |
| 487 | 493 | |
| 488 | 494 | const celue = await ceGetAll(this.pageindex) | ... | ... |
yanshouban/src/views/ads/fangli/bianform.vue
| ... | ... | @@ -297,12 +297,13 @@ guihuaDate:[], |
| 297 | 297 | message: '请输入方案名称', |
| 298 | 298 | trigger: 'blur' |
| 299 | 299 | }], |
| 300 | - planningScheme:[{ | |
| 301 | - required: true, | |
| 302 | - message: '请选择规划方案', | |
| 303 | - trigger: 'change' | |
| 304 | - }], | |
| 305 | 300 | }, |
| 301 | + fanganPage:{ | |
| 302 | + reviewStatus:'2', | |
| 303 | + pageNumber: 1, | |
| 304 | + pageSize: 10, | |
| 305 | + | |
| 306 | + } | |
| 306 | 307 | } |
| 307 | 308 | }, |
| 308 | 309 | watch: { |
| ... | ... | @@ -347,7 +348,7 @@ guihuaDate:[], |
| 347 | 348 | this.currentTime = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; |
| 348 | 349 | }, |
| 349 | 350 | async getAll() { |
| 350 | - const res = await contractGetAll(this.pageindex) | |
| 351 | + const res = await contractGetAll(this.fanganPage) | |
| 351 | 352 | this.guihuaDate = res.data.content |
| 352 | 353 | const celue = await ceGetAll(this.pageindex) |
| 353 | 354 | this.celueData = celue.data.content | ... | ... |
yanshouban/src/views/ads/fangli/index.vue
| ... | ... | @@ -151,7 +151,15 @@ |
| 151 | 151 | <template slot-scope="scope"> |
| 152 | 152 | |
| 153 | 153 | </template> |
| 154 | + | |
| 154 | 155 | </el-table-column> --> |
| 156 | + <el-table-column | |
| 157 | + label="审核提醒时间" | |
| 158 | + prop="auditTime" | |
| 159 | + min-width="150" | |
| 160 | + > | |
| 161 | + | |
| 162 | + </el-table-column> | |
| 155 | 163 | <el-table-column |
| 156 | 164 | label="当前节点" |
| 157 | 165 | min-width="150" | ... | ... |
yanshouban/src/views/advertisement/index.vue
| ... | ... | @@ -43,10 +43,10 @@ |
| 43 | 43 | </el-button> |
| 44 | 44 | </div> |
| 45 | 45 | </div> |
| 46 | - <div style="margin-bottom:20px;"> | |
| 46 | + <!-- <div style="margin-bottom:20px;"> | |
| 47 | 47 | <el-button plain @click="addbuss(1)" style="background-color: #3F9B6A;color: #fff;padding:8px 15px;" icon="el-icon-circle-plus-outline">新增 |
| 48 | 48 | </el-button> |
| 49 | - </div> | |
| 49 | + </div> --> | |
| 50 | 50 | <!-- 表格 --> |
| 51 | 51 | |
| 52 | 52 | <el-table :data="tableData.slice((currentPage - 1) * pageSize, currentPage * pageSize)" | ... | ... |
yanshouban/src/views/analysis/ranking/index.vue
| ... | ... | @@ -120,6 +120,11 @@ export default { |
| 120 | 120 | let res = await QuestionGetAll(this.pageIndex) |
| 121 | 121 | this.tableData = res.data.list |
| 122 | 122 | this.total = res.data.total |
| 123 | + this.tableData.map(res=>{ | |
| 124 | + res.dataIntegrity = this.$decrypt(res.dataIntegrity) | |
| 125 | + res.price = this.$decrypt(res.price) | |
| 126 | + res.ticketPrice = this.$decrypt(res.ticketPrice) | |
| 127 | + }) | |
| 123 | 128 | }, |
| 124 | 129 | search(){ |
| 125 | 130 | if(this.list.length !=0){ | ... | ... |
yanshouban/src/views/analysis/refund/index.vue
| ... | ... | @@ -165,12 +165,17 @@ export default { |
| 165 | 165 | let res = await getRefundData(this.pageIndex) |
| 166 | 166 | this.tableData = res.data.list |
| 167 | 167 | this.total = res.data.total |
| 168 | + this.tableData.map(res=>{ | |
| 169 | + res.dataIntegrity = this.$decrypt(res.dataIntegrity) | |
| 170 | + res.price = this.$decrypt(res.price) | |
| 171 | + res.ticketPrice = this.$decrypt(res.ticketPrice) | |
| 172 | + }) | |
| 168 | 173 | let numOne= 0 |
| 169 | 174 | let moyeOne =0 |
| 170 | 175 | this.tableData.map(item=>{ |
| 171 | 176 | if(item.type == '1'){ |
| 172 | 177 | numOne += item.num |
| 173 | - moyeOne += item.price | |
| 178 | + moyeOne +=Number(item.price) | |
| 174 | 179 | } |
| 175 | 180 | |
| 176 | 181 | |
| ... | ... | @@ -266,7 +271,11 @@ export default { |
| 266 | 271 | const res = await getRefundData(this.pageIndex); |
| 267 | 272 | this.tableData = res.data.list; |
| 268 | 273 | this.total = res.data.total; |
| 269 | - | |
| 274 | + this.tableData.map(res=>{ | |
| 275 | + res.dataIntegrity = this.$decrypt(res.dataIntegrity) | |
| 276 | + res.price = this.$decrypt(res.price) | |
| 277 | + res.ticketPrice = this.$decrypt(res.ticketPrice) | |
| 278 | + }) | |
| 270 | 279 | } catch (error) { |
| 271 | 280 | console.error('Error fetching data:', error); |
| 272 | 281 | } | ... | ... |
yanshouban/src/views/analysis/special/index.vue
| ... | ... | @@ -222,6 +222,11 @@ export default { |
| 222 | 222 | let res = await getCertificatePurchase(this.pageIndex) |
| 223 | 223 | this.tableData = res.data.list |
| 224 | 224 | this.total = res.data.total |
| 225 | + this.tableData.map(res=>{ | |
| 226 | + res.dataIntegrity = this.$decrypt(res.dataIntegrity) | |
| 227 | + res.price = this.$decrypt(res.price) | |
| 228 | + res.ticketPrice = this.$decrypt(res.ticketPrice) | |
| 229 | + }) | |
| 225 | 230 | let numOne= 0 |
| 226 | 231 | let moyeOne =0 |
| 227 | 232 | let numTwo = 0 |
| ... | ... | @@ -237,27 +242,27 @@ export default { |
| 237 | 242 | this.tableData.map(item=>{ |
| 238 | 243 | if(item.type == '1'){ |
| 239 | 244 | numOne += item.num |
| 240 | - moyeOne += item.price | |
| 245 | + moyeOne += Number(item.price) | |
| 241 | 246 | } |
| 242 | 247 | if(item.type == '2'){ |
| 243 | 248 | numTwo += item.num |
| 244 | - moyeTwo += item.price | |
| 249 | + moyeTwo += Number(item.price) | |
| 245 | 250 | } |
| 246 | 251 | if(item.type == '3'){ |
| 247 | 252 | numthree += item.num |
| 248 | - moyethree += item.price | |
| 253 | + moyethree += Number(item.price) | |
| 249 | 254 | } |
| 250 | 255 | if(item.type == '4'){ |
| 251 | 256 | numfour += item.num |
| 252 | - moyefour += item.price | |
| 257 | + moyefour += Number(item.price) | |
| 253 | 258 | } |
| 254 | 259 | if(item.type == '5'){ |
| 255 | 260 | numfive += item.num |
| 256 | - moyefive += item.price | |
| 261 | + moyefive += Number(item.price) | |
| 257 | 262 | } |
| 258 | 263 | if(item.type == '6'){ |
| 259 | 264 | numsix += item.num |
| 260 | - moyesix += item.price | |
| 265 | + moyesix += Number(item.price) | |
| 261 | 266 | } |
| 262 | 267 | }) |
| 263 | 268 | this.numOne = numOne |
| ... | ... | @@ -361,6 +366,11 @@ export default { |
| 361 | 366 | this.tableData = res.data.list; |
| 362 | 367 | this.total = res.data.total; |
| 363 | 368 | |
| 369 | + this.tableData.map(res=>{ | |
| 370 | + res.dataIntegrity = this.$decrypt(res.dataIntegrity) | |
| 371 | + res.price = this.$decrypt(res.price) | |
| 372 | + res.ticketPrice = this.$decrypt(res.ticketPrice) | |
| 373 | + }) | |
| 364 | 374 | } catch (error) { |
| 365 | 375 | console.error('Error fetching data:', error); |
| 366 | 376 | } | ... | ... |
yanshouban/src/views/analysis/statistics/index.vue
| ... | ... | @@ -156,6 +156,11 @@ export default { |
| 156 | 156 | let res = await QuestionGetAll(this.pageIndex) |
| 157 | 157 | this.tableData = res.data.list |
| 158 | 158 | this.total = res.data.total |
| 159 | + this.tableData.map(res=>{ | |
| 160 | + res.dataIntegrity = this.$decrypt(res.dataIntegrity) | |
| 161 | + res.price = this.$decrypt(res.price) | |
| 162 | + res.ticketPrice = this.$decrypt(res.ticketPrice) | |
| 163 | + }) | |
| 159 | 164 | let numOne =0 |
| 160 | 165 | let moyeOne =0 |
| 161 | 166 | let numTwo =0 |
| ... | ... | @@ -163,11 +168,11 @@ export default { |
| 163 | 168 | this.tableData.map(item=>{ |
| 164 | 169 | if(item.ticketType == '演唱会票'){ |
| 165 | 170 | numOne += item.num |
| 166 | - moyeOne += item.price | |
| 171 | + moyeOne = moyeOne + Number(item.price) | |
| 167 | 172 | } |
| 168 | 173 | if(item.ticketType == '电影票'){ |
| 169 | 174 | numTwo += item.num |
| 170 | - moyeTwo += item.price | |
| 175 | + moyeTwo = moyeTwo + Number(item.price) | |
| 171 | 176 | } |
| 172 | 177 | }) |
| 173 | 178 | this.numOne = numOne |
| ... | ... | @@ -235,7 +240,7 @@ export default { |
| 235 | 240 | return; |
| 236 | 241 | } |
| 237 | 242 | if (['销售数量(张)', '客单价(元)', '销售金额(元)'].includes(column.label)) { |
| 238 | - const values = data.map(item => Number(item[column.property])); | |
| 243 | + const values = data.map(item => Number(item[column.property])) | |
| 239 | 244 | if (!values.every(value => isNaN(value))) { |
| 240 | 245 | sums[index] = values.reduce((prev, curr) => { |
| 241 | 246 | const value = Number(curr); | ... | ... |
yanshouban/src/views/atmosphere/atmosphereBz.vue
| ... | ... | @@ -100,6 +100,18 @@ |
| 100 | 100 | </el-select> |
| 101 | 101 | </el-form-item> |
| 102 | 102 | </el-col> |
| 103 | + <el-col :span="12"> | |
| 104 | + <el-form-item label="历史活动方案" class="grid-content bg-purple device-from" > | |
| 105 | + <el-select v-model="lishiList" placeholder="请选择" style="width:100%" @change="lichange" > | |
| 106 | + <el-option | |
| 107 | + v-for="(item,index) in fenxiData" | |
| 108 | + :key="item.id" | |
| 109 | + :label="item.operationType" | |
| 110 | + :value="index"> | |
| 111 | + </el-option> | |
| 112 | + </el-select> | |
| 113 | + </el-form-item> | |
| 114 | + </el-col> | |
| 103 | 115 | </el-row> |
| 104 | 116 | <el-row :gutter="20"> |
| 105 | 117 | <el-col :span="12"> |
| ... | ... | @@ -367,7 +379,8 @@ |
| 367 | 379 | Mingdan, |
| 368 | 380 | MingEdit, |
| 369 | 381 | MingDel, |
| 370 | - fujiaAdd | |
| 382 | + fujiaAdd, | |
| 383 | + lishiDeta | |
| 371 | 384 | } from '../../api/activityBz' |
| 372 | 385 | import wangEditor from "@/components/editor/index"; |
| 373 | 386 | import upimg from "@/components/ImageUpload/index" |
| ... | ... | @@ -450,9 +463,14 @@ uploadFileUrl: uploadUrl, // 请求地址 |
| 450 | 463 | yugu:null, |
| 451 | 464 | fun:null |
| 452 | 465 | }, |
| 453 | - | |
| 466 | +fenxiData:[], | |
| 467 | +lishiList:'', | |
| 454 | 468 | } |
| 455 | 469 | }, |
| 470 | + mounted() { | |
| 471 | + | |
| 472 | + this.lishi() | |
| 473 | + }, | |
| 456 | 474 | methods: { |
| 457 | 475 | //获取当前时间 |
| 458 | 476 | updateCurrentTime() { |
| ... | ... | @@ -466,6 +484,22 @@ uploadFileUrl: uploadUrl, // 请求地址 |
| 466 | 484 | |
| 467 | 485 | this.currentTime = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; |
| 468 | 486 | }, |
| 487 | + lishi(){ | |
| 488 | + lishiDeta({eventDetailsType:'2'}).then(res=>{ | |
| 489 | + this.fenxiData = res.data | |
| 490 | + }) | |
| 491 | + }, | |
| 492 | + lichange(e){ | |
| 493 | + | |
| 494 | + let msg =this.fenxiData[e] | |
| 495 | + let obj = JSON.parse(msg.originalData) | |
| 496 | + | |
| 497 | + for (let key in obj) { | |
| 498 | + if (this.ruleForm.hasOwnProperty(key)) { | |
| 499 | + this.ruleForm[key] = obj[key]; | |
| 500 | + } | |
| 501 | + } | |
| 502 | + }, | |
| 469 | 503 | // 切换事件 |
| 470 | 504 | beforeTabLeave(activeName, oldActiveName){ |
| 471 | 505 | ... | ... |
yanshouban/src/views/atmosphere/atmosphereGl.vue
| ... | ... | @@ -94,7 +94,7 @@ |
| 94 | 94 | </el-table-column> |
| 95 | 95 | <el-table-column label="创建时间" prop="createDate"width="250" > |
| 96 | 96 | </el-table-column> |
| 97 | - <el-table-column prop="createUser" label="上传人员" width="80"> | |
| 97 | + <el-table-column prop="auditReminderTime" label="审核提醒时间" width="200"> | |
| 98 | 98 | |
| 99 | 99 | </el-table-column> |
| 100 | 100 | <el-table-column label="操作" width="350"> |
| ... | ... | @@ -102,7 +102,7 @@ |
| 102 | 102 | <div class="tableBtn greens" @click="actBian(scope.row)" v-if="scope.row.state == ''">修改</div> |
| 103 | 103 | <!-- <div class="tableBtn greens">发布</div> --> |
| 104 | 104 | <div class="tableBtn greens" @click="handleEditForm(scope.row)">执行情况</div> |
| 105 | - <div @click="OAshen(scope.row)" class="tableBtn greens" v-if="scope.row.state == ''">上传到OA</div> | |
| 105 | + <div @click="OAshen(scope.row)" class="tableBtn greens" v-if="scope.row.state == ''">提交审核</div> | |
| 106 | 106 | <div class="tableBtn greens" @click="xiaoguo(scope.row)" v-if="scope.row.state == '5'" >效果评估</div> |
| 107 | 107 | <!-- <div class="tableBtn greens">策略调整</div> --> |
| 108 | 108 | <div class="tableBtn greens" @click="koop(scope.row)">复制</div> |
| ... | ... | @@ -729,25 +729,8 @@ |
| 729 | 729 | </div> |
| 730 | 730 | </div> |
| 731 | 731 | <div style="padding:55px 10px 10px 10px;background-color:#fff; position:relative"> |
| 732 | - <div style="position: absolute;top: 60px;right: 10px; z-index: 10;"> | |
| 733 | - <el-radio-group v-model="radio1" style="margin-right:10px"> | |
| 734 | - <el-radio-button label="本周"></el-radio-button> | |
| 735 | - <el-radio-button label="本月"></el-radio-button> | |
| 736 | - <el-radio-button label="今年 "></el-radio-button> | |
| 737 | - <el-radio-button label="自定义"></el-radio-button> | |
| 738 | - </el-radio-group> | |
| 739 | - <el-date-picker | |
| 740 | - v-if="radio1=='自定义'" | |
| 741 | - | |
| 742 | - style="width:250px" | |
| 743 | - v-model="radio1_time" | |
| 744 | - type="datetimerange" | |
| 745 | - range-separator="至" | |
| 746 | - start-placeholder="开始日期" | |
| 747 | - end-placeholder="结束日期"> | |
| 748 | - </el-date-picker> | |
| 749 | - </div> | |
| 750 | - <el-tabs type="border-card" @tab-click="xiaoguoTab"> | |
| 732 | + | |
| 733 | + <el-tabs type="border-card" > | |
| 751 | 734 | <el-tab-pane label="整体效果分析"> |
| 752 | 735 | <el-table :data="dataList" |
| 753 | 736 | :header-cell-style="{fontSize: '12px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" |
| ... | ... | @@ -784,78 +767,6 @@ |
| 784 | 767 | </el-table-column> |
| 785 | 768 | </el-table> |
| 786 | 769 | </el-tab-pane> |
| 787 | - <el-tab-pane label="纵向分析"> | |
| 788 | - <el-table :data="dataList" | |
| 789 | - :header-cell-style="{fontSize: '12px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 790 | - style="width: 100%"> | |
| 791 | - <el-table-column label="主题" width="auto" min-width="12%" align="center"> | |
| 792 | - <template slot-scope="scope"> | |
| 793 | - {{scope.$index + 1}} | |
| 794 | - </template> | |
| 795 | - </el-table-column> | |
| 796 | - <el-table-column label="环比比较" width="auto" min-width="15%" align="center"> | |
| 797 | - <template slot-scope="scope"> | |
| 798 | - {{scope.$index + 1}} | |
| 799 | - </template> | |
| 800 | - </el-table-column> | |
| 801 | - <el-table-column label="增长量" width="auto" min-width="15%" align="center"> | |
| 802 | - <template slot-scope="scope"> | |
| 803 | - {{scope.$index + 1}} | |
| 804 | - </template> | |
| 805 | - </el-table-column> | |
| 806 | - <el-table-column label="增长率" prop="name" width="auto" min-width="15%"> | |
| 807 | - <template slot-scope="scope"> | |
| 808 | - {{scope.row.name}} | |
| 809 | - </template> | |
| 810 | - </el-table-column> | |
| 811 | - <el-table-column label="投入总金额" prop="name" width="auto" min-width="15%"> | |
| 812 | - <template slot-scope="scope"> | |
| 813 | - {{scope.row.name}} | |
| 814 | - </template> | |
| 815 | - </el-table-column> | |
| 816 | - <el-table-column label="投入产出比" prop="name" width="auto" min-width="15%"> | |
| 817 | - <template slot-scope="scope"> | |
| 818 | - {{scope.row.name}} | |
| 819 | - </template> | |
| 820 | - </el-table-column> | |
| 821 | - </el-table> | |
| 822 | - </el-tab-pane> | |
| 823 | - <el-tab-pane label="横向分析"> | |
| 824 | - <el-table :data="dataList" | |
| 825 | - :header-cell-style="{fontSize: '12px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 826 | - style="width: 100%"> | |
| 827 | - <el-table-column label="主题" width="auto" min-width="12%" align="center"> | |
| 828 | - <template slot-scope="scope"> | |
| 829 | - {{scope.$index + 1}} | |
| 830 | - </template> | |
| 831 | - </el-table-column> | |
| 832 | - <el-table-column label="环比比较" width="auto" min-width="15%" align="center"> | |
| 833 | - <template slot-scope="scope"> | |
| 834 | - {{scope.$index + 1}} | |
| 835 | - </template> | |
| 836 | - </el-table-column> | |
| 837 | - <el-table-column label="增长量" width="auto" min-width="15%" align="center"> | |
| 838 | - <template slot-scope="scope"> | |
| 839 | - {{scope.$index + 1}} | |
| 840 | - </template> | |
| 841 | - </el-table-column> | |
| 842 | - <el-table-column label="增长率" prop="name" width="auto" min-width="15%"> | |
| 843 | - <template slot-scope="scope"> | |
| 844 | - {{scope.row.name}} | |
| 845 | - </template> | |
| 846 | - </el-table-column> | |
| 847 | - <el-table-column label="投入总金额" prop="name" width="auto" min-width="15%"> | |
| 848 | - <template slot-scope="scope"> | |
| 849 | - {{scope.row.name}} | |
| 850 | - </template> | |
| 851 | - </el-table-column> | |
| 852 | - <el-table-column label="投入产出比" prop="name" width="auto" min-width="15%"> | |
| 853 | - <template slot-scope="scope"> | |
| 854 | - {{scope.row.name}} | |
| 855 | - </template> | |
| 856 | - </el-table-column> | |
| 857 | - </el-table> | |
| 858 | - </el-tab-pane> | |
| 859 | 770 | </el-tabs> |
| 860 | 771 | </div> |
| 861 | 772 | |
| ... | ... | @@ -1132,6 +1043,28 @@ |
| 1132 | 1043 | </div> |
| 1133 | 1044 | |
| 1134 | 1045 | </el-dialog> |
| 1046 | + <el-dialog :visible.sync="peiShow" custom-class='bian_css' style="padding: 0;" width="45%" | |
| 1047 | + :close-on-press-escape="false" center :close-on-click-modal="false" class="dialog_css_Xq" :show-close="false"> | |
| 1048 | + <div style="padding:20px;"> | |
| 1049 | + <div style="font-size: 14px;padding-bottom: 20px;color: #000;">审核流程配置</div> | |
| 1050 | + <el-form label-position="right" ref="jibenFrom" :model="peiForm" label-width="140px" | |
| 1051 | + style="position: relative"> | |
| 1052 | + <el-form-item label="审核提醒时间" class="grid-content bg-purple device-from" prop="planName"> | |
| 1053 | + <el-date-picker style="width:240px;margin-right:5px" v-model="peiForm.auditReminderTime" | |
| 1054 | + value-format="yyyy-MM-dd HH:mm:ss" type="datetime" prefix-icon="none" > | |
| 1055 | + </el-date-picker> | |
| 1056 | + </el-form-item> | |
| 1057 | + </el-form> | |
| 1058 | + <div style="padding-top:20px;display:flex;justify-content: flex-end;"> | |
| 1059 | + <el-button style="background-color: #3F9B6A;color: #fff" | |
| 1060 | + @click="peiCheck">确定</el-button> | |
| 1061 | + <el-button @click="peiShow = false" style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" class="buttonHover">取消</el-button> | |
| 1062 | + | |
| 1063 | + </div> | |
| 1064 | + | |
| 1065 | + </div> | |
| 1066 | + | |
| 1067 | + </el-dialog> | |
| 1135 | 1068 | <addAct :showAdd="addAct" @childClose='childClose' :fenleiName="cascaderList"></addAct> |
| 1136 | 1069 | <atmbians :showBian="atmbianMsg" @BianchildClose='BianchildClose' ></atmbians> |
| 1137 | 1070 | </div> |
| ... | ... | @@ -1338,8 +1271,6 @@ components: { addAct,atmbians}, |
| 1338 | 1271 | xiaoguoBox:false, |
| 1339 | 1272 | chart: null, //饼图 |
| 1340 | 1273 | chart1: null, //漏斗图 |
| 1341 | - radio1:'', | |
| 1342 | - radio1_time:'', | |
| 1343 | 1274 | dataList:[], |
| 1344 | 1275 | xinlei:false,//分类管理框 |
| 1345 | 1276 | fenleiDelId:null,//删除的分类ID |
| ... | ... | @@ -1367,7 +1298,13 @@ components: { addAct,atmbians}, |
| 1367 | 1298 | daoData:[], |
| 1368 | 1299 | fileData:[], |
| 1369 | 1300 | caoList:[], |
| 1370 | - caogaoshow:false | |
| 1301 | + caogaoshow:false, | |
| 1302 | + peiForm:{ | |
| 1303 | + auditReminderTime:'' | |
| 1304 | + }, | |
| 1305 | + peiShow:false, | |
| 1306 | + peiId:'', | |
| 1307 | + | |
| 1371 | 1308 | } |
| 1372 | 1309 | }, |
| 1373 | 1310 | created() { |
| ... | ... | @@ -2220,6 +2157,24 @@ this.fileData=[] |
| 2220 | 2157 | // 保存 PDF 文件 |
| 2221 | 2158 | pdf.save('氛围方案.pdf'); |
| 2222 | 2159 | }, |
| 2160 | + peizhi(item){ | |
| 2161 | + this.peiForm = { | |
| 2162 | + auditTime:'' | |
| 2163 | + } | |
| 2164 | + this.peiShow = true | |
| 2165 | + this.peiId = item.id | |
| 2166 | + }, | |
| 2167 | + async peiCheck(){ | |
| 2168 | + if(this.peiForm.auditReminderTime ==''){ | |
| 2169 | + this.$message({ | |
| 2170 | + message: '请填写审核提醒时间', | |
| 2171 | + }) | |
| 2172 | + return; | |
| 2173 | + } | |
| 2174 | + await xiangedit({id:this.peiId,auditReminderTime:this.peiForm.auditReminderTime}) | |
| 2175 | + this.peiShow = false | |
| 2176 | + this.getAll() | |
| 2177 | + }, | |
| 2223 | 2178 | } |
| 2224 | 2179 | } |
| 2225 | 2180 | </script> | ... | ... |
yanshouban/src/views/atmosphere/atmosphereHis.vue
0 → 100644
| 1 | +<template> | |
| 2 | + <div style="background-color:#f7f7f7;padding:10px 10px;"> | |
| 3 | + <div class="zhuti"> | |
| 4 | + <div style="height:58px;line-height:58px;"> | |
| 5 | + <div style="color:#0006"> <span>品牌策划</span> <span style="padding:0 5px;">></span> <span style="color:#000000e6">氛围策划调整</span></div> | |
| 6 | + </div> | |
| 7 | + <div> | |
| 8 | + <!-- 搜索 --> | |
| 9 | + <div class="formSearch"> | |
| 10 | + <div class="demo-input-suffix"> | |
| 11 | + <div v-if="searPei.name" style="display: flex;"> | |
| 12 | + <div style="width: 68px;height:36px;line-height:36px;" >方案名称</div> | |
| 13 | + <el-input placeholder="请输入" v-model="formSear.planName" style="width:168px;"> | |
| 14 | + </el-input> | |
| 15 | + </div> | |
| 16 | + <!-- <div v-if="searPei.lei" style="display: flex;"> | |
| 17 | + <div style="width: 68px;height:36px;line-height:36px;">方案类型</div> | |
| 18 | + <el-input placeholder="请输入" v-model="planName" style="width:168px;"> | |
| 19 | + </el-input> | |
| 20 | + </div> --> | |
| 21 | + <div v-if="searPei.staut" style="display: flex;"> | |
| 22 | + <div style="width: 68px;height:36px;line-height:36px;">审批状态</div> | |
| 23 | + <el-select v-model="formSear.state" placeholder="请选择" | |
| 24 | + style="width: 100px;margin-right: 5px"> | |
| 25 | + <el-option label="待审核" value="1" /> | |
| 26 | + <el-option label="已通过" value="5" /> | |
| 27 | + <el-option label="已驳回" value="6" /> | |
| 28 | + </el-select> | |
| 29 | + </el-input> | |
| 30 | + </div> | |
| 31 | + | |
| 32 | + | |
| 33 | + </div> | |
| 34 | + <div > | |
| 35 | + | |
| 36 | + <el-button @click="onSubmit" style="background-color: #3F9B6A;color: #fff">查询 | |
| 37 | + </el-button> | |
| 38 | + <el-button @click="resetting" | |
| 39 | + class="buttonHover" | |
| 40 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;">重置 | |
| 41 | + </el-button> | |
| 42 | + </div> | |
| 43 | + </div> | |
| 44 | + <div style="margin: 20px 0;"> | |
| 45 | + <div style="display:flex;"> | |
| 46 | + <el-button style="background-color: #3F9B6A;color: #fff;" @click="setSearch">搜索关键词设置</el-button> | |
| 47 | + <el-button style="background-color: #3F9B6A;color: #fff;" @click="duibi">效果对比</el-button> | |
| 48 | + <el-upload class="upload-demo" ref="upload" | |
| 49 | + :limit="1" | |
| 50 | + accept=".xlsx" | |
| 51 | + :action="uploadFileUrl" | |
| 52 | + :on-success="daoru" | |
| 53 | + :file-list="daoData" | |
| 54 | + :auto-upload="true" | |
| 55 | + :show-file-list="false"> | |
| 56 | + <el-button style="background-color: #fff;color: #3F9B6A;border: 1px solid #dcdfe6;margin:0 15px;" class="buttonHover" >导入</el-button> | |
| 57 | + </el-upload> | |
| 58 | + | |
| 59 | + <el-button style="background-color: #3F9B6A;color: #fff;" @click="daochu">审核流程导出</el-button> | |
| 60 | + <!-- <el-button style="background-color: #fff;color: #000;border: 1px solid #B1B1B1;" | |
| 61 | + icon="el-icon-folder-add" class="buttonHover" @click="xinFenlei">氛围分类管理</el-button> --> | |
| 62 | + </div> | |
| 63 | + | |
| 64 | + </div> | |
| 65 | + <!-- 分栏 --> | |
| 66 | + <div class="fenlan"> | |
| 67 | + <!-- 搜索分类 --> | |
| 68 | + | |
| 69 | + <div class="tableList"> | |
| 70 | + | |
| 71 | + <!-- 表格 --> | |
| 72 | + <div> | |
| 73 | + <el-table :data="tableData.slice((currentPage - 1) * pageSize, currentPage * pageSize)" | |
| 74 | + @selection-change="handleSelectionChange" tooltip-effect="dark" align="left" | |
| 75 | + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}" | |
| 76 | + ref="mulTable"> | |
| 77 | + <el-table-column type="selection" width="80"> | |
| 78 | + </el-table-column> | |
| 79 | + <el-table-column label="方案名称" width="300" prop="planName"> | |
| 80 | + </el-table-column> | |
| 81 | + <el-table-column label="类型" prop="planType" width="80"> | |
| 82 | + </el-table-column> | |
| 83 | + <!-- <el-table-column label="发布状态" width="80" > | |
| 84 | + | |
| 85 | + </el-table-column> --> | |
| 86 | + <el-table-column label="审批状态" width="150"> | |
| 87 | + <template slot-scope="scope"> | |
| 88 | + {{scope.row.state == ''?'待提交':scope.row.state == '1'?'待审批':scope.row.state == '2'?'部门领导审批':scope.row.state == '3'?'公司领导审批':scope.row.state == '4'?'其他审批':scope.row.state == '5'?'审核通过':'已驳回'}} | |
| 89 | + </template> | |
| 90 | + </el-table-column> | |
| 91 | + <el-table-column label="创建时间" prop="createDate"width="250" > | |
| 92 | + </el-table-column> | |
| 93 | + <el-table-column prop="auditReminderTime" label="审核提醒时间" width="200"> | |
| 94 | + | |
| 95 | + </el-table-column> | |
| 96 | + <el-table-column label="操作" width="350"> | |
| 97 | + <template slot-scope="scope"> | |
| 98 | + <div @click="actBian(scope.row)" class="tableBtn greens" v-if="scope.row.state == ''">修改</div> | |
| 99 | + <!-- <div class="tableBtn greens">发布</div> --> | |
| 100 | + <div class="tableBtn greens" @click="handleEditForm(scope.row)">执行情况</div> | |
| 101 | + <!-- <div class="tableBtn greens" @click="handleEditForm(scope.row)">历史方案查看</div> --> | |
| 102 | + | |
| 103 | + <!-- <div class="tableBtn greens">策略调整</div> --> | |
| 104 | + <!-- <div class="tableBtn greens" @click="koop(scope.row)">复制</div> --> | |
| 105 | + </template> | |
| 106 | + </el-table-column> | |
| 107 | +</el-table> | |
| 108 | +<div class="fenye"> | |
| 109 | + <div> | |
| 110 | + <el-button @click="tableAll" class="buttonHover" style="color: #000;border: 1px solid #DBDBDB;background-color: #fff;">选择全部 | |
| 111 | + </el-button> | |
| 112 | + <el-button @click="toggleSelection(tableData)" | |
| 113 | + class="buttonHover" | |
| 114 | + style="color: #000;border: 1px solid #DBDBDB;background-color: #fff;">反向选择 | |
| 115 | + </el-button> | |
| 116 | + </div> | |
| 117 | + <el-pagination class="pagination" :hide-on-single-page="flag" background small :current-page="currentPage" | |
| 118 | + :page-size="pageSize" layout="prev,pager,next" :total="total" | |
| 119 | + @current-change="handleCurrentChange" /> | |
| 120 | +</div> | |
| 121 | + | |
| 122 | +</div> | |
| 123 | +</div> | |
| 124 | +</div> | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | +<!-- 详情氛围方案 --> | |
| 129 | +<el-dialog title="氛围方案详情" :visible.sync="ggXin" custom-class='xiang_css' style="padding: 0;" width="80%" center | |
| 130 | + :close-on-click-modal="false" :close-on-press-escape="false" @close="refreshData"> | |
| 131 | + <div ref="actXiang"> | |
| 132 | + <div style="width: 100%;"> | |
| 133 | + <div style="display: flex;padding:0px 20px 20px 20px; "> | |
| 134 | + <div style="width: 150px;height: 80px;" v-if="secondData.coverPoster"> | |
| 135 | + <img :src="secondData.coverPoster" alt="" style="width: 100%;height: 80px;" /> | |
| 136 | + </div> | |
| 137 | + <div | |
| 138 | + style="display: flex;flex-direction: column;justify-content: space-around;padding: 0 10px;font-size: 12px;"> | |
| 139 | + <span style="margin-bottom: 10px;">{{text}}</span> | |
| 140 | + <span>氛围时间:{{tableData1[1].eventTheme}}至{{tableData1[1].planName}}</span> | |
| 141 | + <span>氛围地点:{{tableData1[0].planName}}</span> | |
| 142 | + </div> | |
| 143 | + </div> | |
| 144 | + </div> | |
| 145 | + <div style="width: 100%;background-color: #fff;"> | |
| 146 | + <el-tabs v-model="activeName" @tab-click="handleClick" style="padding-left:20px;"> | |
| 147 | + <el-tab-pane label="方案概况" name="first"></el-tab-pane> | |
| 148 | + <el-tab-pane label="执行效果" name="second"></el-tab-pane> | |
| 149 | + <el-tab-pane label="历史方案" name="fourd"></el-tab-pane> | |
| 150 | + </el-tabs> | |
| 151 | + </div> | |
| 152 | + <div v-if="activeName=='first'" style="display: flex;"> | |
| 153 | + <div style="width: 100%;"> | |
| 154 | + <div style="width: 100%;"> | |
| 155 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">基本信息</div> | |
| 156 | + <div style="padding: 10px 20px;"> | |
| 157 | + <el-table :data="tableData1" | |
| 158 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 159 | + style="width: 100%;margin: auto;"> | |
| 160 | + <el-table-column class-name="first-column-bg" label="方案编号" prop="name" min-width="15%"> | |
| 161 | + </el-table-column> | |
| 162 | + <el-table-column :label="id" prop="eventTheme" min-width="35%"> | |
| 163 | + | |
| 164 | + </el-table-column> | |
| 165 | + <el-table-column class-name="first-column-bg" label="方案名称" prop="text" min-width="15%"> | |
| 166 | + | |
| 167 | + </el-table-column> | |
| 168 | + <el-table-column :label="text" prop="planName" min-width="35%"> | |
| 169 | + | |
| 170 | + </el-table-column> | |
| 171 | + </el-table> | |
| 172 | + | |
| 173 | + | |
| 174 | + </div> | |
| 175 | + </div> | |
| 176 | + <div style="width: 100%;"> | |
| 177 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">氛围明细信息</div> | |
| 178 | + <div style="padding: 10px 20px;"> | |
| 179 | + <el-table :data="tableData2" | |
| 180 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 181 | + style="width: 100%;margin: auto;"> | |
| 182 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 183 | + <template slot-scope="scope"> | |
| 184 | + <span style="">{{ scope.$index +1}}</span> | |
| 185 | + </template> | |
| 186 | + </el-table-column> | |
| 187 | + <el-table-column label="明细项名称" prop="detailLtemName" min-width="28%"> | |
| 188 | + </el-table-column> | |
| 189 | + <el-table-column label="预估数量" prop="estimatedQuantity" min-width="20%"> | |
| 190 | + | |
| 191 | + </el-table-column> | |
| 192 | + <el-table-column label="预估费用" prop="estimatedCost" min-width="20%"> | |
| 193 | + | |
| 194 | + </el-table-column> | |
| 195 | + <el-table-column label="备注" prop="notes" min-width="20%"> | |
| 196 | + </el-table-column> | |
| 197 | + </el-table> | |
| 198 | + </div> | |
| 199 | + </div> | |
| 200 | + <div style="width: 100%;"> | |
| 201 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">氛围成本信息</div> | |
| 202 | + <div style="padding:10px 20px;"> | |
| 203 | + <el-table :data="tableData3" | |
| 204 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 205 | + style="width: 100%;margin: auto;"> | |
| 206 | + <el-table-column class-name="first-column-bg" label="内部人力成本预估" prop="name" min-width="15%"> | |
| 207 | + </el-table-column> | |
| 208 | + <el-table-column :label="internalLaborCostEstimation" prop="eventTheme" min-width="35%"> | |
| 209 | + | |
| 210 | + </el-table-column> | |
| 211 | + <el-table-column class-name="first-column-bg" label="外部人力成本预估" prop="text" min-width="15%"> | |
| 212 | + | |
| 213 | + </el-table-column> | |
| 214 | + <el-table-column :label="externalLaborCostEstimation" prop="planName" min-width="35%"> | |
| 215 | + | |
| 216 | + </el-table-column> | |
| 217 | + </el-table> | |
| 218 | + </div> | |
| 219 | + </div> | |
| 220 | + <div style="width: 100%;"> | |
| 221 | + <div style="font-size: 14px;padding:10px 20px 0px 20px;">预估效果</div> | |
| 222 | + <div style="padding:10px 20px;"> | |
| 223 | + <el-table :data="tableData4" | |
| 224 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 225 | + style="width: 100%;margin: auto;"> | |
| 226 | + <el-table-column class-name="first-column-bg" label="预计吸引流量" prop="name" min-width="15%"> | |
| 227 | + </el-table-column> | |
| 228 | + <el-table-column :label="expectedAttractTraffic" prop="eventTheme" min-width="35%"> | |
| 229 | + | |
| 230 | + </el-table-column> | |
| 231 | + <el-table-column class-name="first-column-bg" label="预计参与人数" prop="text" min-width="15%"> | |
| 232 | + | |
| 233 | + </el-table-column> | |
| 234 | + <el-table-column :label="expectedParticipation" prop="planName" min-width="35%"> | |
| 235 | + | |
| 236 | + </el-table-column> | |
| 237 | + </el-table> | |
| 238 | + </el-table-column> | |
| 239 | + </div> | |
| 240 | + </div> | |
| 241 | + <div style="width: 100%;"> | |
| 242 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">相关附件信息</div> | |
| 243 | + <div style="padding:10px 20px;"> | |
| 244 | + <el-table :data="tableData6" | |
| 245 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 246 | + style="width: 100%;margin: auto;"> | |
| 247 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 248 | + <template slot-scope="scope"> | |
| 249 | + <span style="">{{ scope.$index + 1 }}</span> | |
| 250 | + </template> | |
| 251 | + </el-table-column> | |
| 252 | + <el-table-column label="附件名称" prop="attachmentName" min-width="75%"> | |
| 253 | + </el-table-column> | |
| 254 | + <el-table-column label="操作" min-width="20%"> | |
| 255 | + <template slot-scope="scope"> | |
| 256 | + <!-- <div class="tableBtn greens" @click="Down(scope.row)">下载</div> --> | |
| 257 | + <a class="tableBtn greens" :href="scope.row.attachmentUrl" target="_blank" download>下载</a> | |
| 258 | + </template> | |
| 259 | + </el-table-column> | |
| 260 | + | |
| 261 | + </el-table> | |
| 262 | + </div> | |
| 263 | + </div> | |
| 264 | + <div style="width: 100%;"> | |
| 265 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">系统信息</div> | |
| 266 | + <div style="padding:10px 20px;"> | |
| 267 | + <el-table :data="tableData5" | |
| 268 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 269 | + style="width: 100%;margin: auto;"> | |
| 270 | + <el-table-column class-name="first-column-bg" label="创建人" prop="name" min-width="15%"> | |
| 271 | + </el-table-column> | |
| 272 | + <el-table-column :label="createUser" prop="eventTheme" min-width="35%"> | |
| 273 | + | |
| 274 | + </el-table-column> | |
| 275 | + <el-table-column class-name="first-column-bg" label="创建时间" prop="text" min-width="15%"> | |
| 276 | + | |
| 277 | + </el-table-column> | |
| 278 | + <el-table-column :label="createDate" prop="planName" min-width="35%"> | |
| 279 | + | |
| 280 | + </el-table-column> | |
| 281 | + </el-table> | |
| 282 | + </div> | |
| 283 | + </div> | |
| 284 | + </div> | |
| 285 | + </div> | |
| 286 | + <div v-if="activeName=='second'"> | |
| 287 | + <div style="padding: 20px"> | |
| 288 | + <div style="border: solid 1px #E5E5E5;border-radius: 5px"> | |
| 289 | + <div style="border-bottom: 1px solid #E5E5E5;padding: 1px"> | |
| 290 | + <div style="padding: 10px 20px;background-color: #FAFAFA;font-size: 14px;"> | |
| 291 | + 基本信息 | |
| 292 | + </div> | |
| 293 | + </div> | |
| 294 | + <div style="padding: 20px 40px 20px 20px"> | |
| 295 | + <el-form label-position="top" ref="ruleFormInfo" :model="zhixingList" label-width="120px" | |
| 296 | + style="position: relative"> | |
| 297 | + <el-row :gutter="20"> | |
| 298 | + <el-col :span="8"> | |
| 299 | + <el-form-item label="氛围名称" class="grid-content bg-purple device-from" prop="name"> | |
| 300 | + <el-input v-model="zhixingList.planName" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 301 | + </el-form-item> | |
| 302 | + </el-col> | |
| 303 | + <el-col :span="8"> | |
| 304 | + <el-form-item label="实际举办地点" class="grid-content bg-purple" prop="name"> | |
| 305 | + <el-input v-model="zhixingList.eventAddrs" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 306 | + </el-form-item> | |
| 307 | + </el-col> | |
| 308 | + | |
| 309 | + <el-col :span="8"> | |
| 310 | + <el-form-item label="实际举办时间" class="grid-content bg-purple" prop="event_start_time" | |
| 311 | + style="position: relative"> | |
| 312 | + <el-date-picker style="width: 100%;" v-model="zhixingList.planTime" | |
| 313 | + @input="formTime" | |
| 314 | + value-format="yyyy-MM-dd HH:mm:ss" :disabled="!zhixingBian" type="datetimerange" | |
| 315 | + range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" align="right" | |
| 316 | + > | |
| 317 | + </el-date-picker> | |
| 318 | + </el-form-item> | |
| 319 | + </el-col> | |
| 320 | + </el-row> | |
| 321 | + | |
| 322 | + <el-row :gutter="20"> | |
| 323 | + <el-col :span="8"> | |
| 324 | + <el-form-item label="氛围主办方" class="grid-content bg-purple" prop="name"> | |
| 325 | + <el-input v-model="zhixingList.sponsor" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 326 | + </el-form-item> | |
| 327 | + </el-col> | |
| 328 | + <el-col :span="8"> | |
| 329 | + <el-form-item label="氛围实际参与方" class="grid-content bg-purple" prop="name"> | |
| 330 | + <el-input v-model="zhixingList.participants" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 331 | + </el-form-item> | |
| 332 | + </el-col> | |
| 333 | + </el-row> | |
| 334 | + </el-form> | |
| 335 | + </div> | |
| 336 | + </div> | |
| 337 | + </div> | |
| 338 | + <div style="padding: 0px 20px 20px 20px"> | |
| 339 | + <div style="border: solid 1px #E5E5E5;border-radius: 5px"> | |
| 340 | + <div style="border-bottom: 1px solid #E5E5E5;padding: 1px;display: flex"> | |
| 341 | + <div style="padding: 10px 20px;background-color: #FAFAFA;font-size: 14px;"> | |
| 342 | + 氛围明细信息 | |
| 343 | + </div> | |
| 344 | + <div style="color: #2d8a58;margin-top: 10px;font-size: 14px;" @click="tianMing"> | |
| 345 | + 添加明细 | |
| 346 | + </div> | |
| 347 | + </div> | |
| 348 | + <!-- 表格--> | |
| 349 | + <div style="padding: 20px 20px 20px 20px"> | |
| 350 | + <el-table :data="tableDa" | |
| 351 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 352 | + style="width: 100%"> | |
| 353 | + <el-table-column label="序号" width="auto" min-width="5%" prop="date" align="center"> | |
| 354 | + <template slot-scope="scope"> | |
| 355 | + {{scope.$index +1}} | |
| 356 | + </template> | |
| 357 | + </el-table-column> | |
| 358 | + <el-table-column label="明细项名称" prop="detailLtemName" width="auto" min-width="22%"> | |
| 359 | + | |
| 360 | + </el-table-column> | |
| 361 | + <el-table-column label="预估数量" prop="estimatedQuantity" width="auto" min-width="15%"> | |
| 362 | + | |
| 363 | + </el-table-column> | |
| 364 | + <el-table-column label="预估费用" prop="estimatedCost" width="auto" min-width="15%"> | |
| 365 | + </el-table-column> | |
| 366 | + <el-table-column prop="notes" label="备注" width="auto" min-width="15%"> | |
| 367 | + </el-table-column> | |
| 368 | + <el-table-column label="操作" width="auto" min-width="18%" v-if="zhixingBian"> | |
| 369 | + <template slot-scope="scope"> | |
| 370 | + <!-- <div class="tableBtn greens">详情</div> --> | |
| 371 | + <div class="tableBtn greens" @click="MingDelete(scope.$index,scope.row)">删除</div> | |
| 372 | + </template> | |
| 373 | + </el-table-column> | |
| 374 | + </el-table> | |
| 375 | + | |
| 376 | + </div> | |
| 377 | + </div> | |
| 378 | + </div> | |
| 379 | + <div style="padding: 20px"> | |
| 380 | + <div style="border: solid 1px #E5E5E5;border-radius: 5px;padding-bottom: 20px;"> | |
| 381 | + <div style="border-bottom: 1px solid #E5E5E5;padding: 1px"> | |
| 382 | + <div style="padding: 10px 20px;background-color: #FAFAFA;font-size: 14px;"> | |
| 383 | + 实际花费成本 | |
| 384 | + </div> | |
| 385 | + </div> | |
| 386 | + <div style="padding: 20px 40px 0px 20px"> | |
| 387 | + <el-form label-position="top" ref="ruleFormInfo" :model="zhixingList" label-width="120px" | |
| 388 | + style="position: relative"> | |
| 389 | + <el-row :gutter="20"> | |
| 390 | + <el-col :span="8"> | |
| 391 | + <el-form-item label="内部人力成本预估" class="grid-content bg-purple device-from" prop="name"> | |
| 392 | + <el-input v-model="zhixingList.internalLaborCostEstimation" placeholder="请输入" | |
| 393 | + :disabled="!zhixingBian" /> | |
| 394 | + </el-form-item> | |
| 395 | + </el-col> | |
| 396 | + <el-col :span="8"> | |
| 397 | + <el-form-item label="外部人力成本预估" class="grid-content bg-purple" prop="name"> | |
| 398 | + <el-input v-model="zhixingList.externalLaborCostEstimation" placeholder="请输入" | |
| 399 | + :disabled="!zhixingBian" /> | |
| 400 | + </el-form-item> | |
| 401 | + </el-col> | |
| 402 | + | |
| 403 | + <el-col :span="8"> | |
| 404 | + <el-form-item label="商品成本预估" class="grid-content bg-purple" prop="name"> | |
| 405 | + <el-input v-model="zhixingList.costEstimationGoods" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 406 | + </el-form-item> | |
| 407 | + </el-col> | |
| 408 | + </el-row> | |
| 409 | + | |
| 410 | + <el-row :gutter="20"> | |
| 411 | + <el-col :span="8"> | |
| 412 | + <el-form-item label="设备成本" class="grid-content bg-purple" prop="name"> | |
| 413 | + <el-input v-model="zhixingList.setCostEstimate" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 414 | + </el-form-item> | |
| 415 | + </el-col> | |
| 416 | + <el-col :span="8"> | |
| 417 | + <el-form-item label="宣传费用" class="grid-content bg-purple" prop="name"> | |
| 418 | + <el-input v-model="zhixingList.estimatedPromotionalExpenses" placeholder="请输入" | |
| 419 | + :disabled="!zhixingBian" /> | |
| 420 | + </el-form-item> | |
| 421 | + </el-col> | |
| 422 | + <el-col :span="8"> | |
| 423 | + <el-form-item label="其他成本" class="grid-content bg-purple" prop="name"> | |
| 424 | + <el-input v-model="zhixingList.otherNecessaryEstimates" placeholder="请输入" | |
| 425 | + :disabled="!zhixingBian" /> | |
| 426 | + </el-form-item> | |
| 427 | + </el-col> | |
| 428 | + </el-row> | |
| 429 | + | |
| 430 | + <el-row :gutter="20"> | |
| 431 | + <el-col :span="8"> | |
| 432 | + <el-form-item label="总成本" prop="name" class="grid-content bg-purple"> | |
| 433 | + <el-input v-model="zhixingList.totalCostEstimation" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 434 | + </el-form-item> | |
| 435 | + </el-col> | |
| 436 | + <el-col :span="16"> | |
| 437 | + <el-form-item label="备注" prop="name" class="grid-content bg-purple"> | |
| 438 | + <el-input v-model="zhixingList.notes" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 439 | + </el-form-item> | |
| 440 | + </el-col> | |
| 441 | + </el-row> | |
| 442 | + </el-form> | |
| 443 | + </div> | |
| 444 | + </div> | |
| 445 | + </div> | |
| 446 | + | |
| 447 | + <div style="padding: 20px"> | |
| 448 | + <div style="border: solid 1px #E5E5E5;border-radius: 5px;padding-bottom: 20px;"> | |
| 449 | + <div style="border-bottom: 1px solid #E5E5E5;padding: 1px"> | |
| 450 | + <div style="padding: 10px 20px;background-color: #FAFAFA;font-size: 14px;"> | |
| 451 | + 氛围执行效果 | |
| 452 | + </div> | |
| 453 | + </div> | |
| 454 | + <div style="padding: 20px 40px 0px 20px"> | |
| 455 | + <el-form label-position="top" ref="ruleFormInfo" :model="zhixingList" label-width="120px" | |
| 456 | + style="position: relative"> | |
| 457 | + <el-row :gutter="20"> | |
| 458 | + <el-col :span="8"> | |
| 459 | + <el-form-item label="吸引流量" class="grid-content bg-purple device-from" prop="name"> | |
| 460 | + <el-input v-model="zhixingList.expectedAttractTraffic" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 461 | + </el-form-item> | |
| 462 | + </el-col> | |
| 463 | + <el-col :span="8"> | |
| 464 | + <el-form-item label="参与人数" class="grid-content bg-purple" prop="name"> | |
| 465 | + <el-input v-model="zhixingList.expectedParticipation" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 466 | + </el-form-item> | |
| 467 | + </el-col> | |
| 468 | + | |
| 469 | + <el-col :span="8"> | |
| 470 | + <el-form-item label="直接收益" class="grid-content bg-purple" prop="name"> | |
| 471 | + <el-input v-model="zhixingList.expectedDirectBenefits" placeholder="请输入" :disabled="!zhixingBian" /> | |
| 472 | + </el-form-item> | |
| 473 | + </el-col> | |
| 474 | + </el-row> | |
| 475 | + <el-row :gutter="20"> | |
| 476 | + <el-col :span="8"> | |
| 477 | + <el-form-item label="间接收益" class="grid-content bg-purple" prop="name"> | |
| 478 | + <el-input v-model="zhixingList.expectedIndirectBenefits" placeholder="请输入" | |
| 479 | + :disabled="!zhixingBian" /> | |
| 480 | + </el-form-item> | |
| 481 | + </el-col> | |
| 482 | + | |
| 483 | + </el-row> | |
| 484 | + <el-row :gutter="20"> | |
| 485 | + <el-col :span="24"> | |
| 486 | + <el-form-item label="反馈内容" class="grid-content bg-purple" prop="name"> | |
| 487 | + <el-upload class="upload-demo" ref="upload" :on-remove="handleRemove" | |
| 488 | + :action="uploadFileUrl" :on-success="handleUploadSuccess" :file-list="fileData" | |
| 489 | + :show-file-list="true" v-if="zhixingBian"> | |
| 490 | + <el-button style="background-color: #fff;color: #3F9B6A;border: 1px solid #dcdfe6;" class="buttonHover" v-if="fileData.length==0">+点击上传</el-button> | |
| 491 | + </el-upload> | |
| 492 | + <div v-else>{{zhixingList.feedbackContent}}</div> | |
| 493 | + </el-form-item> | |
| 494 | + </el-col> | |
| 495 | + | |
| 496 | + </el-row> | |
| 497 | + </el-form> | |
| 498 | + </div> | |
| 499 | + </div> | |
| 500 | + </div> | |
| 501 | + | |
| 502 | + </div> | |
| 503 | + <div v-if="activeName=='fourd'"> | |
| 504 | + <div> | |
| 505 | + <el-select v-model="lishiList" placeholder="请选择" style="margin:0 20px 20px 20px;" @change="lichange"> | |
| 506 | + <el-option | |
| 507 | + v-for="(item,index) in liData" | |
| 508 | + :key="item.id" | |
| 509 | + :label="item.operationType" | |
| 510 | + :value="index"> | |
| 511 | + </el-option> | |
| 512 | + </el-select> | |
| 513 | + <el-button @click="tiaozheng" style="background-color: #3F9B6A;color: #fff" v-if="lishiList!=null" >调整对比 | |
| 514 | + </el-button> | |
| 515 | + </div> | |
| 516 | + <div style="width: 100%;" v-if="lishiList!=null" ref="lishiRef"> | |
| 517 | + <div style="width: 100%;"> | |
| 518 | + <div style="padding: 10px 20px;"> | |
| 519 | + <el-descriptions class="margin-top" title="基本信息" :column="2" border :labelStyle="labelStyle" > | |
| 520 | + <el-descriptions-item> | |
| 521 | + <template slot="label"> | |
| 522 | + 方案编号 | |
| 523 | + </template> | |
| 524 | + {{lixiang.id}} | |
| 525 | + </el-descriptions-item> | |
| 526 | + <el-descriptions-item> | |
| 527 | + <template slot="label"> | |
| 528 | + 方案名称 | |
| 529 | + </template> | |
| 530 | + | |
| 531 | + <span :style="duibiList.planName == lixiang.planName?'color: red':''" >{{lixiang.planName}}</span> | |
| 532 | + </el-descriptions-item> | |
| 533 | + <el-descriptions-item> | |
| 534 | + <template slot="label"> | |
| 535 | + 类型 | |
| 536 | + </template> | |
| 537 | +<span :style="duibiList.planType == lixiang.planType?'color: red':''" >{{lixiang.planType}}</span> | |
| 538 | + </el-descriptions-item> | |
| 539 | + <el-descriptions-item> | |
| 540 | + <template slot="label"> | |
| 541 | + 氛围地点 | |
| 542 | + </template> | |
| 543 | + | |
| 544 | + <span :style="duibiList.eventAddrs == lixiang.eventAddrs?'color: red':''" >{{lixiang.eventAddrs}}</span> | |
| 545 | + </el-descriptions-item> | |
| 546 | + <el-descriptions-item> | |
| 547 | + <template slot="label"> | |
| 548 | + 氛围开始时间 | |
| 549 | + </template> | |
| 550 | + | |
| 551 | + <span :style="duibiList.eventStartTime == lixiang.eventStartTime?'color: red':''" >{{lixiang.eventStartTime}}</span> | |
| 552 | + </el-descriptions-item> | |
| 553 | + <el-descriptions-item> | |
| 554 | + <template slot="label"> | |
| 555 | + 氛围结束时间 | |
| 556 | + </template> | |
| 557 | + | |
| 558 | +<span :style="duibiList.eventEndTime == lixiang.eventEndTime?'color: red':''" >{{lixiang.eventEndTime}}</span> | |
| 559 | + </el-descriptions-item> | |
| 560 | + <el-descriptions-item> | |
| 561 | + <template slot="label"> | |
| 562 | + 氛围主题 | |
| 563 | + </template> | |
| 564 | + <span :style="duibiList.eventTheme == lixiang.eventTheme?'color: red':''" >{{lixiang.eventTheme}}</span> | |
| 565 | + </el-descriptions-item> | |
| 566 | + <el-descriptions-item> | |
| 567 | + <template slot="label"> | |
| 568 | + 氛围主办方 | |
| 569 | + </template> | |
| 570 | +<span :style="duibiList.sponsor == lixiang.sponsor?'color: red':''" >{{lixiang.sponsor}}</span> | |
| 571 | + | |
| 572 | + </el-descriptions-item> | |
| 573 | + <el-descriptions-item> | |
| 574 | + <template slot="label"> | |
| 575 | + 氛围参与方 | |
| 576 | + </template> | |
| 577 | + | |
| 578 | +<span :style="duibiList.participants == lixiang.participants?'color: red':''" >{{lixiang.participants}}</span> | |
| 579 | + </el-descriptions-item> | |
| 580 | + <el-descriptions-item> | |
| 581 | + <template slot="label"> | |
| 582 | + 氛围主要目的 | |
| 583 | + </template> | |
| 584 | + | |
| 585 | +<span :style="duibiList.mainPurpose == lixiang.mainPurpose?'color: red':''" >{{lixiang.mainPurpose}}</span> | |
| 586 | + </el-descriptions-item> | |
| 587 | + <el-descriptions-item> | |
| 588 | + <template slot="label"> | |
| 589 | + 范围设置 | |
| 590 | + </template> | |
| 591 | + | |
| 592 | +<span :style="duibiList.rangeSetting == lixiang.rangeSetting?'color: red':''" >{{lixiang.rangeSetting}}</span> | |
| 593 | + </el-descriptions-item> | |
| 594 | + <el-descriptions-item> | |
| 595 | + <template slot="label"> | |
| 596 | + 状态 | |
| 597 | + </template> | |
| 598 | + | |
| 599 | +{{getStatus(lixiang.state)}} | |
| 600 | + | |
| 601 | + </el-descriptions-item> | |
| 602 | + </el-descriptions> | |
| 603 | + | |
| 604 | + </div> | |
| 605 | + </div> | |
| 606 | + <div style="width: 100%;"> | |
| 607 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">氛围明细信息</div> | |
| 608 | + <div style="padding: 10px 20px;"> | |
| 609 | + <el-table :data="tableData2" | |
| 610 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 611 | + style="width: 100%;margin: auto;"> | |
| 612 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 613 | + <template slot-scope="scope"> | |
| 614 | + <span style="">{{ scope.$index +1}}</span> | |
| 615 | + </template> | |
| 616 | + </el-table-column> | |
| 617 | + <el-table-column label="明细项名称" prop="detailLtemName" min-width="28%"> | |
| 618 | + </el-table-column> | |
| 619 | + <el-table-column label="预估数量" prop="estimatedQuantity" min-width="20%"> | |
| 620 | + | |
| 621 | + </el-table-column> | |
| 622 | + <el-table-column label="预估费用" prop="estimatedCost" min-width="20%"> | |
| 623 | + | |
| 624 | + </el-table-column> | |
| 625 | + <el-table-column label="备注" prop="notes" min-width="20%"> | |
| 626 | + </el-table-column> | |
| 627 | + </el-table> | |
| 628 | + </div> | |
| 629 | + </div> | |
| 630 | + <div style="width: 100%;"> | |
| 631 | + <div style="padding:10px 20px;"> | |
| 632 | + <el-descriptions class="margin-top" title="氛围成本信息" :column="2" border :labelStyle="labelStyle" > | |
| 633 | + <el-descriptions-item> | |
| 634 | + <template slot="label"> | |
| 635 | + 内部人力成本预估 | |
| 636 | + </template> | |
| 637 | + | |
| 638 | +<span :style="duibiList.internalLaborCostEstimation == lixiang.internalLaborCostEstimation?'color: red':''" >{{lixiang.internalLaborCostEstimation}}</span> | |
| 639 | + </el-descriptions-item> | |
| 640 | + <el-descriptions-item> | |
| 641 | + <template slot="label"> | |
| 642 | + 外部人力成本预估 | |
| 643 | + </template> | |
| 644 | + | |
| 645 | + <span :style="duibiList.externalLaborCostEstimation == lixiang.externalLaborCostEstimation?'color: red':''" >{{lixiang.externalLaborCostEstimation}}</span> | |
| 646 | + </el-descriptions-item> | |
| 647 | + <el-descriptions-item> | |
| 648 | + <template slot="label"> | |
| 649 | + 商品成本预估 | |
| 650 | + </template> | |
| 651 | + | |
| 652 | +<span :style="duibiList.costEstimationGoods == lixiang.costEstimationGoods?'color: red':''" >{{lixiang.costEstimationGoods}}</span> | |
| 653 | + </el-descriptions-item> | |
| 654 | + <el-descriptions-item> | |
| 655 | + <template slot="label"> | |
| 656 | + 设备成本预估 | |
| 657 | + </template> | |
| 658 | + | |
| 659 | +<span :style="duibiList.setCostEstimate == lixiang.setCostEstimate?'color: red':''" >{{lixiang.setCostEstimate}}</span> | |
| 660 | + </el-descriptions-item> | |
| 661 | + <el-descriptions-item> | |
| 662 | + <template slot="label"> | |
| 663 | + 宣传费用预估 | |
| 664 | + </template> | |
| 665 | + | |
| 666 | + <span :style="duibiList.estimatedPromotionalExpenses == lixiang.estimatedPromotionalExpenses?'color: red':''" >{{lixiang.estimatedPromotionalExpenses}}</span> | |
| 667 | + </el-descriptions-item> | |
| 668 | + <el-descriptions-item> | |
| 669 | + <template slot="label"> | |
| 670 | + 其他必要成本预估 | |
| 671 | + </template> | |
| 672 | + | |
| 673 | +<span :style="duibiList.otherNecessaryEstimates == lixiang.otherNecessaryEstimates?'color: red':''" >{{lixiang.otherNecessaryEstimates}}</span> | |
| 674 | + </el-descriptions-item> | |
| 675 | + <el-descriptions-item> | |
| 676 | + <template slot="label"> | |
| 677 | + 总成本预估 | |
| 678 | + </template> | |
| 679 | + | |
| 680 | +<span :style="duibiList.totalCostEstimation == lixiang.totalCostEstimation?'color: red':''" >{{lixiang.totalCostEstimation}}</span> | |
| 681 | + </el-descriptions-item> | |
| 682 | + <el-descriptions-item> | |
| 683 | + <template slot="label"> | |
| 684 | + 备注 | |
| 685 | + </template> | |
| 686 | + | |
| 687 | +<span :style="duibiList.notes == lixiang.notes?'color: red':''" >{{lixiang.notes}}</span> | |
| 688 | + </el-descriptions-item> | |
| 689 | + </el-descriptions> | |
| 690 | + </div> | |
| 691 | + </div> | |
| 692 | + <div style="width: 100%;"> | |
| 693 | + | |
| 694 | + <div style="padding:10px 20px;"> | |
| 695 | + <el-descriptions class="margin-top" title="预估效果" :column="2" border :labelStyle="labelStyle" > | |
| 696 | + <el-descriptions-item> | |
| 697 | + <template slot="label"> | |
| 698 | + 预计吸引流量 | |
| 699 | + </template> | |
| 700 | + | |
| 701 | +<span :style="duibiList.expectedAttractTraffic == lixiang.expectedAttractTraffic?'color: red':''" >{{lixiang.expectedAttractTraffic}}</span> | |
| 702 | + </el-descriptions-item> | |
| 703 | + <el-descriptions-item> | |
| 704 | + <template slot="label"> | |
| 705 | + 预计参与人数 | |
| 706 | + </template> | |
| 707 | + | |
| 708 | +<span :style="duibiList.expectedParticipation == lixiang.expectedParticipation?'color: red':''" >{{lixiang.expectedParticipation}}</span> | |
| 709 | + </el-descriptions-item> | |
| 710 | + <el-descriptions-item> | |
| 711 | + <template slot="label"> | |
| 712 | + 预计直接收益 | |
| 713 | + </template> | |
| 714 | + | |
| 715 | +<span :style="duibiList.expectedDirectBenefits == lixiang.expectedDirectBenefits?'color: red':''" >{{lixiang.expectedDirectBenefits}}</span> | |
| 716 | + </el-descriptions-item> | |
| 717 | + <el-descriptions-item> | |
| 718 | + <template slot="label"> | |
| 719 | + 预计间接收益 | |
| 720 | + </template> | |
| 721 | + | |
| 722 | +<span :style="duibiList.expectedIndirectBenefits == lixiang.expectedIndirectBenefits?'color: red':''" >{{lixiang.expectedIndirectBenefits}}</span> | |
| 723 | + </el-descriptions-item> | |
| 724 | + | |
| 725 | + </el-descriptions> | |
| 726 | + | |
| 727 | + </div> | |
| 728 | + </div> | |
| 729 | + <div style="width: 100%;"> | |
| 730 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">相关附件信息</div> | |
| 731 | + <div style="padding:10px 20px;"> | |
| 732 | + <el-table :data="tableData6" | |
| 733 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 734 | + style="width: 100%;margin: auto;"> | |
| 735 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 736 | + <template slot-scope="scope"> | |
| 737 | + <span style="">{{ scope.$index + 1 }}</span> | |
| 738 | + </template> | |
| 739 | + </el-table-column> | |
| 740 | + <el-table-column label="附件名称" prop="attachmentName" min-width="75%"> | |
| 741 | + </el-table-column> | |
| 742 | + <el-table-column label="操作" min-width="20%"> | |
| 743 | + <template slot-scope="scope"> | |
| 744 | + <!-- <div class="tableBtn greens" @click="Down(scope.row)">下载</div> --> | |
| 745 | + <a class="tableBtn greens" :href="scope.row.attachmentUrl" target="_blank" download>下载</a> | |
| 746 | + </template> | |
| 747 | + </el-table-column> | |
| 748 | + | |
| 749 | + </el-table> | |
| 750 | + </div> | |
| 751 | + </div> | |
| 752 | + <div style="width: 100%;"> | |
| 753 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">系统信息</div> | |
| 754 | + <div style="padding:10px 20px;"> | |
| 755 | + <el-table :data="tableData5" | |
| 756 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 757 | + style="width: 100%;margin: auto;"> | |
| 758 | + <el-table-column class-name="first-column-bg" label="创建人" prop="name" min-width="15%"> | |
| 759 | + </el-table-column> | |
| 760 | + <el-table-column :label="createUser" prop="eventTheme" min-width="35%"> | |
| 761 | + | |
| 762 | + </el-table-column> | |
| 763 | + <el-table-column class-name="first-column-bg" label="创建时间" prop="text" min-width="15%"> | |
| 764 | + | |
| 765 | + </el-table-column> | |
| 766 | + <el-table-column :label="createDate" prop="planName" min-width="35%"> | |
| 767 | + | |
| 768 | + </el-table-column> | |
| 769 | + </el-table> | |
| 770 | + </div> | |
| 771 | + </div> | |
| 772 | + </div> | |
| 773 | + </div> | |
| 774 | + </div> | |
| 775 | + <div style="display: flex;justify-content: flex-end;padding:10px" v-if="activeName=='fourd'"> | |
| 776 | + <el-button @click="lishidownloadPdf" style="background-color: #3F9B6A;color: #fff" >导出 | |
| 777 | + </el-button></div> | |
| 778 | + <div style="display: flex;justify-content: flex-end;padding:10px" v-if="activeName=='first'"> | |
| 779 | + <el-button @click="downloadPdf" style="background-color: #3F9B6A;color: #fff" >导出 | |
| 780 | + </el-button> | |
| 781 | + <el-button @click="jiucuo" style="background-color: #3F9B6A;color: #fff" >氛围策划调整纠错 | |
| 782 | + </el-button> | |
| 783 | + </div> | |
| 784 | +</el-dialog> | |
| 785 | +</div> | |
| 786 | +</div> | |
| 787 | +<!-- 调整对比 --> | |
| 788 | +<el-dialog title="调整对比" :visible.sync="tiaozhengShow" custom-class='xiang_css' style="padding: 0;" width="80%" center | |
| 789 | + :close-on-click-modal="false" :close-on-press-escape="false" @close="reshData"> | |
| 790 | + <div> | |
| 791 | + <div style="width: 100%;"> | |
| 792 | + <div style="display: flex;padding:0px 20px 20px 20px; "> | |
| 793 | + <div style="width: 150px;height: 80px;" v-if="secondData.coverPoster"> | |
| 794 | + <img :src="secondData.coverPoster" alt="" style="width: 100%;height: 80px;" /> | |
| 795 | + </div> | |
| 796 | + <div | |
| 797 | + style="display: flex;flex-direction: column;justify-content: space-around;padding: 0 10px;font-size: 12px;"> | |
| 798 | + <span style="margin-bottom: 10px;">{{text}}</span> | |
| 799 | + <span>氛围时间:{{tableData1[1].eventTheme}}至{{tableData1[1].planName}}</span> | |
| 800 | + <span>氛围地点:{{tableData1[0].planName}}</span> | |
| 801 | + </div> | |
| 802 | + </div> | |
| 803 | + </div> | |
| 804 | + | |
| 805 | + <div style="display: flex;"> | |
| 806 | + <div style="width: 50%;"> | |
| 807 | + <div style="width: 100%;"> | |
| 808 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">修改后</div> | |
| 809 | + <div style="padding: 10px 20px;"> | |
| 810 | + <el-table :data="tableData1" | |
| 811 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 812 | + style="width: 100%;margin: auto;"> | |
| 813 | + <el-table-column class-name="first-column-bg" label="方案编号" prop="name" min-width="15%"> | |
| 814 | + </el-table-column> | |
| 815 | + <el-table-column :label="id" prop="eventTheme" min-width="35%"> | |
| 816 | + | |
| 817 | + </el-table-column> | |
| 818 | + <el-table-column class-name="first-column-bg" label="方案名称" prop="text" min-width="15%"> | |
| 819 | + | |
| 820 | + </el-table-column> | |
| 821 | + <el-table-column :label="text" prop="planName" min-width="35%"> | |
| 822 | + | |
| 823 | + </el-table-column> | |
| 824 | + </el-table> | |
| 825 | + | |
| 826 | + | |
| 827 | + </div> | |
| 828 | + </div> | |
| 829 | + <div style="width: 100%;"> | |
| 830 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">氛围明细信息</div> | |
| 831 | + <div style="padding: 10px 20px;"> | |
| 832 | + <el-table :data="tableData2" | |
| 833 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 834 | + style="width: 100%;margin: auto;"> | |
| 835 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 836 | + <template slot-scope="scope"> | |
| 837 | + <span style="">{{ scope.$index +1}}</span> | |
| 838 | + </template> | |
| 839 | + </el-table-column> | |
| 840 | + <el-table-column label="明细项名称" prop="detailLtemName" min-width="28%"> | |
| 841 | + </el-table-column> | |
| 842 | + <el-table-column label="预估数量" prop="estimatedQuantity" min-width="20%"> | |
| 843 | + | |
| 844 | + </el-table-column> | |
| 845 | + <el-table-column label="预估费用" prop="estimatedCost" min-width="20%"> | |
| 846 | + | |
| 847 | + </el-table-column> | |
| 848 | + <el-table-column label="备注" prop="notes" min-width="20%"> | |
| 849 | + </el-table-column> | |
| 850 | + </el-table> | |
| 851 | + </div> | |
| 852 | + </div> | |
| 853 | + <div style="width: 100%;"> | |
| 854 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">氛围成本信息</div> | |
| 855 | + <div style="padding:10px 20px;"> | |
| 856 | + <el-table :data="tableData3" | |
| 857 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 858 | + style="width: 100%;margin: auto;"> | |
| 859 | + <el-table-column class-name="first-column-bg" label="内部人力成本预估" prop="name" min-width="15%"> | |
| 860 | + </el-table-column> | |
| 861 | + <el-table-column :label="internalLaborCostEstimation" prop="eventTheme" min-width="35%"> | |
| 862 | + | |
| 863 | + </el-table-column> | |
| 864 | + <el-table-column class-name="first-column-bg" label="外部人力成本预估" prop="text" min-width="15%"> | |
| 865 | + | |
| 866 | + </el-table-column> | |
| 867 | + <el-table-column :label="externalLaborCostEstimation" prop="planName" min-width="35%"> | |
| 868 | + | |
| 869 | + </el-table-column> | |
| 870 | + </el-table> | |
| 871 | + </div> | |
| 872 | + </div> | |
| 873 | + <div style="width: 100%;"> | |
| 874 | + <div style="font-size: 14px;padding:10px 20px 0px 20px;">预估效果</div> | |
| 875 | + <div style="padding:10px 20px;"> | |
| 876 | + <el-table :data="tableData4" | |
| 877 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 878 | + style="width: 100%;margin: auto;"> | |
| 879 | + <el-table-column class-name="first-column-bg" label="预计吸引流量" prop="name" min-width="15%"> | |
| 880 | + </el-table-column> | |
| 881 | + <el-table-column :label="expectedAttractTraffic" prop="eventTheme" min-width="35%"> | |
| 882 | + | |
| 883 | + </el-table-column> | |
| 884 | + <el-table-column class-name="first-column-bg" label="预计参与人数" prop="text" min-width="15%"> | |
| 885 | + | |
| 886 | + </el-table-column> | |
| 887 | + <el-table-column :label="expectedParticipation" prop="planName" min-width="35%"> | |
| 888 | + | |
| 889 | + </el-table-column> | |
| 890 | + </el-table> | |
| 891 | + </el-table-column> | |
| 892 | + </div> | |
| 893 | + </div> | |
| 894 | + <div style="width: 100%;"> | |
| 895 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">相关附件信息</div> | |
| 896 | + <div style="padding:10px 20px;"> | |
| 897 | + <el-table :data="tableData6" | |
| 898 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 899 | + style="width: 100%;margin: auto;"> | |
| 900 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 901 | + <template slot-scope="scope"> | |
| 902 | + <span style="">{{ scope.$index + 1 }}</span> | |
| 903 | + </template> | |
| 904 | + </el-table-column> | |
| 905 | + <el-table-column label="附件名称" prop="attachmentName" min-width="75%"> | |
| 906 | + </el-table-column> | |
| 907 | + <el-table-column label="操作" min-width="20%"> | |
| 908 | + <template slot-scope="scope"> | |
| 909 | + <!-- <div class="tableBtn greens" @click="Down(scope.row)">下载</div> --> | |
| 910 | + <a class="tableBtn greens" :href="scope.row.attachmentUrl" target="_blank" download>下载</a> | |
| 911 | + </template> | |
| 912 | + </el-table-column> | |
| 913 | + | |
| 914 | + </el-table> | |
| 915 | + </div> | |
| 916 | + </div> | |
| 917 | + <div style="width: 100%;"> | |
| 918 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">系统信息</div> | |
| 919 | + <div style="padding:10px 20px;"> | |
| 920 | + <el-table :data="tableData5" | |
| 921 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 922 | + style="width: 100%;margin: auto;"> | |
| 923 | + <el-table-column class-name="first-column-bg" label="创建人" prop="name" min-width="15%"> | |
| 924 | + </el-table-column> | |
| 925 | + <el-table-column :label="createUser" prop="eventTheme" min-width="35%"> | |
| 926 | + | |
| 927 | + </el-table-column> | |
| 928 | + <el-table-column class-name="first-column-bg" label="创建时间" prop="text" min-width="15%"> | |
| 929 | + | |
| 930 | + </el-table-column> | |
| 931 | + <el-table-column :label="createDate" prop="planName" min-width="35%"> | |
| 932 | + | |
| 933 | + </el-table-column> | |
| 934 | + </el-table> | |
| 935 | + </div> | |
| 936 | + </div> | |
| 937 | + </div> | |
| 938 | + <div style="width: 50%;"> | |
| 939 | + <div style="width: 100%;"> | |
| 940 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">修改前</div> | |
| 941 | + <div style="padding: 10px 20px;"> | |
| 942 | + <el-descriptions class="margin-top" :column="2" border :labelStyle="labelStyleOne" > | |
| 943 | + <el-descriptions-item> | |
| 944 | + <template slot="label"> | |
| 945 | + 方案编号 | |
| 946 | + </template> | |
| 947 | + {{lixiang.id}} | |
| 948 | + </el-descriptions-item> | |
| 949 | + <el-descriptions-item> | |
| 950 | + <template slot="label"> | |
| 951 | + 方案名称 | |
| 952 | + </template> | |
| 953 | + {{lixiang.planName}} | |
| 954 | + </el-descriptions-item> | |
| 955 | + <el-descriptions-item> | |
| 956 | + <template slot="label"> | |
| 957 | + 类型 | |
| 958 | + </template> | |
| 959 | + {{lixiang.planType}} | |
| 960 | + </el-descriptions-item> | |
| 961 | + <el-descriptions-item> | |
| 962 | + <template slot="label"> | |
| 963 | + 氛围地点 | |
| 964 | + </template> | |
| 965 | + {{lixiang.eventAddrs}} | |
| 966 | + </el-descriptions-item> | |
| 967 | + <el-descriptions-item> | |
| 968 | + <template slot="label"> | |
| 969 | + 氛围开始时间 | |
| 970 | + </template> | |
| 971 | + {{lixiang.eventStartTime}} | |
| 972 | + </el-descriptions-item> | |
| 973 | + <el-descriptions-item> | |
| 974 | + <template slot="label"> | |
| 975 | + 氛围结束时间 | |
| 976 | + </template> | |
| 977 | + {{lixiang.eventEndTime}} | |
| 978 | + </el-descriptions-item> | |
| 979 | + <el-descriptions-item> | |
| 980 | + <template slot="label"> | |
| 981 | + 氛围主题 | |
| 982 | + </template> | |
| 983 | + {{lixiang.eventTheme}} | |
| 984 | + </el-descriptions-item> | |
| 985 | + <el-descriptions-item> | |
| 986 | + <template slot="label"> | |
| 987 | + 氛围主办方 | |
| 988 | + </template> | |
| 989 | + {{lixiang.sponsor}} | |
| 990 | + </el-descriptions-item> | |
| 991 | + <el-descriptions-item> | |
| 992 | + <template slot="label"> | |
| 993 | + 氛围参与方 | |
| 994 | + </template> | |
| 995 | + {{lixiang.participants}} | |
| 996 | + </el-descriptions-item> | |
| 997 | + <el-descriptions-item> | |
| 998 | + <template slot="label"> | |
| 999 | + 氛围主要目的 | |
| 1000 | + </template> | |
| 1001 | + {{lixiang.mainPurpose}} | |
| 1002 | + </el-descriptions-item> | |
| 1003 | + <el-descriptions-item> | |
| 1004 | + <template slot="label"> | |
| 1005 | + 范围设置 | |
| 1006 | + </template> | |
| 1007 | + {{lixiang.rangeSetting}} | |
| 1008 | + </el-descriptions-item> | |
| 1009 | + <el-descriptions-item> | |
| 1010 | + <template slot="label"> | |
| 1011 | + 状态 | |
| 1012 | + </template> | |
| 1013 | + {{getStatus(lixiang.state)}} | |
| 1014 | + | |
| 1015 | + </el-descriptions-item> | |
| 1016 | + </el-descriptions> | |
| 1017 | + | |
| 1018 | + </div> | |
| 1019 | + </div> | |
| 1020 | + <div style="width: 100%;"> | |
| 1021 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">氛围明细信息</div> | |
| 1022 | + <div style="padding: 10px 20px;"> | |
| 1023 | + <el-table :data="tableData2" | |
| 1024 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 1025 | + style="width: 100%;margin: auto;"> | |
| 1026 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 1027 | + <template slot-scope="scope"> | |
| 1028 | + <span style="">{{ scope.$index +1}}</span> | |
| 1029 | + </template> | |
| 1030 | + </el-table-column> | |
| 1031 | + <el-table-column label="明细项名称" prop="detailLtemName" min-width="28%"> | |
| 1032 | + </el-table-column> | |
| 1033 | + <el-table-column label="预估数量" prop="estimatedQuantity" min-width="20%"> | |
| 1034 | + | |
| 1035 | + </el-table-column> | |
| 1036 | + <el-table-column label="预估费用" prop="estimatedCost" min-width="20%"> | |
| 1037 | + | |
| 1038 | + </el-table-column> | |
| 1039 | + <el-table-column label="备注" prop="notes" min-width="20%"> | |
| 1040 | + </el-table-column> | |
| 1041 | + </el-table> | |
| 1042 | + </div> | |
| 1043 | + </div> | |
| 1044 | + <div style="width: 100%;"> | |
| 1045 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">氛围成本信息</div> | |
| 1046 | + <div style="padding:10px 20px;"> | |
| 1047 | + <el-descriptions class="margin-top" :column="2" border :labelStyle="labelStyleOne" > | |
| 1048 | + <el-descriptions-item> | |
| 1049 | + <template slot="label"> | |
| 1050 | + 内部人力成本预估 | |
| 1051 | + </template> | |
| 1052 | + {{lixiang.internalLaborCostEstimation}} | |
| 1053 | + </el-descriptions-item> | |
| 1054 | + <el-descriptions-item> | |
| 1055 | + <template slot="label"> | |
| 1056 | + 外部人力成本预估 | |
| 1057 | + </template> | |
| 1058 | + {{lixiang.externalLaborCostEstimation}} | |
| 1059 | + </el-descriptions-item> | |
| 1060 | + <el-descriptions-item> | |
| 1061 | + <template slot="label"> | |
| 1062 | + 商品成本预估 | |
| 1063 | + </template> | |
| 1064 | + {{lixiang.costEstimationGoods}} | |
| 1065 | + </el-descriptions-item> | |
| 1066 | + <el-descriptions-item> | |
| 1067 | + <template slot="label"> | |
| 1068 | + 设备成本预估 | |
| 1069 | + </template> | |
| 1070 | + {{lixiang.setCostEstimate}} | |
| 1071 | + </el-descriptions-item> | |
| 1072 | + <el-descriptions-item> | |
| 1073 | + <template slot="label"> | |
| 1074 | + 宣传费用预估 | |
| 1075 | + </template> | |
| 1076 | + {{lixiang.estimatedPromotionalExpenses}} | |
| 1077 | + </el-descriptions-item> | |
| 1078 | + <el-descriptions-item> | |
| 1079 | + <template slot="label"> | |
| 1080 | + 其他必要成本预估 | |
| 1081 | + </template> | |
| 1082 | + {{lixiang.otherNecessaryEstimates}} | |
| 1083 | + </el-descriptions-item> | |
| 1084 | + <el-descriptions-item> | |
| 1085 | + <template slot="label"> | |
| 1086 | + 总成本预估 | |
| 1087 | + </template> | |
| 1088 | + {{lixiang.totalCostEstimation}} | |
| 1089 | + </el-descriptions-item> | |
| 1090 | + <el-descriptions-item> | |
| 1091 | + <template slot="label"> | |
| 1092 | + 备注 | |
| 1093 | + </template> | |
| 1094 | + {{lixiang.notes}} | |
| 1095 | + </el-descriptions-item> | |
| 1096 | + </el-descriptions> | |
| 1097 | + </div> | |
| 1098 | + </div> | |
| 1099 | + <div style="width: 100%;"> | |
| 1100 | +<div style="font-size: 14px;padding: 10px 20px 0px 20px;">预估效果</div> | |
| 1101 | + <div style="padding:10px 20px;"> | |
| 1102 | + <el-descriptions class="margin-top" :column="2" border :labelStyle="labelStyleOne" > | |
| 1103 | + <el-descriptions-item> | |
| 1104 | + <template slot="label"> | |
| 1105 | + 预计吸引流量 | |
| 1106 | + </template> | |
| 1107 | + {{lixiang.expectedAttractTraffic}} | |
| 1108 | + </el-descriptions-item> | |
| 1109 | + <el-descriptions-item> | |
| 1110 | + <template slot="label"> | |
| 1111 | + 预计参与人数 | |
| 1112 | + </template> | |
| 1113 | + {{lixiang.expectedParticipation}} | |
| 1114 | + </el-descriptions-item> | |
| 1115 | + <el-descriptions-item> | |
| 1116 | + <template slot="label"> | |
| 1117 | + 预计直接收益 | |
| 1118 | + </template> | |
| 1119 | + {{lixiang.expectedDirectBenefits}} | |
| 1120 | + </el-descriptions-item> | |
| 1121 | + <el-descriptions-item> | |
| 1122 | + <template slot="label"> | |
| 1123 | + 预计间接收益 | |
| 1124 | + </template> | |
| 1125 | + {{lixiang.expectedIndirectBenefits}} | |
| 1126 | + </el-descriptions-item> | |
| 1127 | + | |
| 1128 | + </el-descriptions> | |
| 1129 | + | |
| 1130 | + </div> | |
| 1131 | + </div> | |
| 1132 | + <div style="width: 100%;"> | |
| 1133 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">相关附件信息</div> | |
| 1134 | + <div style="padding:10px 20px;"> | |
| 1135 | + <el-table :data="tableData6" | |
| 1136 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 1137 | + style="width: 100%;margin: auto;"> | |
| 1138 | + <el-table-column label="序号" min-width="5%" align='center'> | |
| 1139 | + <template slot-scope="scope"> | |
| 1140 | + <span style="">{{ scope.$index + 1 }}</span> | |
| 1141 | + </template> | |
| 1142 | + </el-table-column> | |
| 1143 | + <el-table-column label="附件名称" prop="attachmentName" min-width="75%"> | |
| 1144 | + </el-table-column> | |
| 1145 | + <el-table-column label="操作" min-width="20%"> | |
| 1146 | + <template slot-scope="scope"> | |
| 1147 | + <!-- <div class="tableBtn greens" @click="Down(scope.row)">下载</div> --> | |
| 1148 | + <a class="tableBtn greens" :href="scope.row.attachmentUrl" target="_blank" download>下载</a> | |
| 1149 | + </template> | |
| 1150 | + </el-table-column> | |
| 1151 | + | |
| 1152 | + </el-table> | |
| 1153 | + </div> | |
| 1154 | + </div> | |
| 1155 | + <div style="width: 100%;"> | |
| 1156 | + <div style="font-size: 14px;padding: 10px 20px 0px 20px;">系统信息</div> | |
| 1157 | + <div style="padding:10px 20px;"> | |
| 1158 | + <el-table :data="tableData5" | |
| 1159 | + :header-cell-style="{fontSize: '14px', backgroundColor: '#fff',color:'#000',fontWeight: 'normal'}" | |
| 1160 | + style="width: 100%;margin: auto;"> | |
| 1161 | + <el-table-column class-name="first-column-bg" label="创建人" prop="name" min-width="15%"> | |
| 1162 | + </el-table-column> | |
| 1163 | + <el-table-column :label="createUser" prop="eventTheme" min-width="35%"> | |
| 1164 | + | |
| 1165 | + </el-table-column> | |
| 1166 | + <el-table-column class-name="first-column-bg" label="创建时间" prop="text" min-width="15%"> | |
| 1167 | + | |
| 1168 | + </el-table-column> | |
| 1169 | + <el-table-column :label="createDate" prop="planName" min-width="35%"> | |
| 1170 | + | |
| 1171 | + </el-table-column> | |
| 1172 | + </el-table> | |
| 1173 | + </div> | |
| 1174 | + </div> | |
| 1175 | + </div> | |
| 1176 | + </div> | |
| 1177 | + | |
| 1178 | + | |
| 1179 | + </div> | |
| 1180 | +</el-dialog> | |
| 1181 | + | |
| 1182 | +<el-dialog title="新增明细" :visible.sync="addMing" custom-class='dialog_css' style="padding: 0;" width="50%" append-to-body | |
| 1183 | + center :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false"> | |
| 1184 | + <div style="padding: 15px;width:100%"> | |
| 1185 | + <div style=""> | |
| 1186 | + <div style="padding: 15px;"> | |
| 1187 | + <el-form label-position="right" ref="ruleFormInfo" :model="mingFrom" label-width="140px" | |
| 1188 | + style="position: relative"> | |
| 1189 | + <el-form-item label="明细项名称" class="grid-content bg-purple device-from" prop="planName"> | |
| 1190 | + <el-input v-model="mingFrom.detailLtemName" placeholder="请输入" /> | |
| 1191 | + </el-form-item> | |
| 1192 | + <el-form-item label="预估数量" class="grid-content bg-purple" prop=" planType"> | |
| 1193 | + <el-input v-model="mingFrom.estimatedQuantity" placeholder="请输入" /> | |
| 1194 | + </el-form-item> | |
| 1195 | + | |
| 1196 | + <el-form-item label="预估费用" class="grid-content bg-purple" prop="eventAddrs"> | |
| 1197 | + <el-input v-model="mingFrom.estimatedCost" placeholder="请输入" /> | |
| 1198 | + </el-form-item> | |
| 1199 | + <el-form-item label="备注" class="grid-content bg-purple device-from" prop="planName"> | |
| 1200 | + <el-input v-model="mingFrom.notes" placeholder="请输入" /> | |
| 1201 | + </el-form-item> | |
| 1202 | + </el-form> | |
| 1203 | + </div> | |
| 1204 | + </div> | |
| 1205 | + | |
| 1206 | + </div> | |
| 1207 | + <div style="display: flex;justify-content: flex-end;padding: 10px 20px 10px 0"> | |
| 1208 | + | |
| 1209 | + <el-button plain @click="minSev" style="background-color: #3F9B6A;color: #fff;">保存 | |
| 1210 | + </el-button> | |
| 1211 | + <el-button plain @click="addMing=false" style="background-color: #3F9B6A;color: #fff;">取消 | |
| 1212 | + </el-button> | |
| 1213 | + </div> | |
| 1214 | +</el-dialog> | |
| 1215 | +<!-- 效果对比 --> | |
| 1216 | +<el-dialog :visible.sync="xiaoDui" custom-class='dialog_css' style="padding: 0;" width="60%" center | |
| 1217 | + :close-on-click-modal="false" :close-on-press-escape="false"> | |
| 1218 | + <div style="padding: 0 50px;display:flex;justify-content: space-evenly;"> | |
| 1219 | + <div style="width:30%"> | |
| 1220 | + <div style="display: flex;"> | |
| 1221 | + <div style="margin-right: 10px;padding: 10px 0;"> | |
| 1222 | + <div>调整前方案</div> | |
| 1223 | + <div style="font-size: 22px;color: #3F9B6A;font-weight: 600;margin: 10px 0;">{{xiaoduiObj.biliOne}}</div> | |
| 1224 | + <div style="font-size: 16px;color: #3F9B6A;font-weight: 600;">投入产出比</div> | |
| 1225 | + </div> | |
| 1226 | + <el-progress type="circle" :percentage="xiaoduiObj.bilis" :show-text="false" :width="100"> | |
| 1227 | + </el-progress> | |
| 1228 | + </div> | |
| 1229 | + <div style="padding:30px 0">计划任务(完成度)</div> | |
| 1230 | + <div class="jindutiao"> | |
| 1231 | + <div style="margin-right:10px;width:56px">直接收入</div> | |
| 1232 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1233 | + <el-progress | |
| 1234 | + style="width: 150px;" | |
| 1235 | + :text-inside="true" | |
| 1236 | + :stroke-width="20" | |
| 1237 | + :percentage="baifenbi(duibiOne.expectedDirectBenefits)" | |
| 1238 | + status="success" | |
| 1239 | + :format="() => customFormat(duibiOne.expectedDirectBenefits)" | |
| 1240 | + ></el-progress> | |
| 1241 | + </div> | |
| 1242 | + <div class="jindutiao"> | |
| 1243 | + <div style="margin-right:10px;width:56px">间接收入</div> | |
| 1244 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1245 | + <el-progress | |
| 1246 | + style="width: 150px;" | |
| 1247 | + :text-inside="true" | |
| 1248 | + :stroke-width="20" | |
| 1249 | + :percentage="baifenbi(duibiOne.expectedIndirectBenefits)" | |
| 1250 | + status="success" | |
| 1251 | + :format="() => customFormat(duibiOne.expectedIndirectBenefits)" | |
| 1252 | + ></el-progress> | |
| 1253 | + </div> | |
| 1254 | + <div class="jindutiao"> | |
| 1255 | + <div style="margin-right:10px;width:56px">人力</div> | |
| 1256 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1257 | + <el-progress | |
| 1258 | + style="width: 150px;" | |
| 1259 | + :text-inside="true" | |
| 1260 | + :stroke-width="20" | |
| 1261 | + :percentage="baifenbi(duibiOne.internalLaborCostEstimation)" | |
| 1262 | + status="success" | |
| 1263 | + :format="() => customFormat(duibiOne.internalLaborCostEstimation)" | |
| 1264 | + ></el-progress> | |
| 1265 | + </div> | |
| 1266 | + <div class="jindutiao"> | |
| 1267 | + <div style="margin-right:10px;width:56px">设备</div> | |
| 1268 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1269 | + <el-progress | |
| 1270 | + style="width: 150px;" | |
| 1271 | + :text-inside="true" | |
| 1272 | + :stroke-width="20" | |
| 1273 | + :percentage="baifenbi(duibiOne.setCostEstimate)" | |
| 1274 | + status="success" | |
| 1275 | + :format="() => customFormat(duibiOne.setCostEstimate)" | |
| 1276 | + ></el-progress> | |
| 1277 | + </div> | |
| 1278 | + <div class="jindutiao"> | |
| 1279 | + <div style="margin-right:10px;width:56px">宣传</div> | |
| 1280 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1281 | + <el-progress | |
| 1282 | + style="width: 150px;" | |
| 1283 | + :text-inside="true" | |
| 1284 | + :stroke-width="20" | |
| 1285 | + :percentage="baifenbi(duibiOne.estimatedPromotionalExpenses)" | |
| 1286 | + status="success" | |
| 1287 | + :format="() => customFormat(duibiOne.estimatedPromotionalExpenses)" | |
| 1288 | + ></el-progress> | |
| 1289 | + </div> | |
| 1290 | + <div class="jindutiao"> | |
| 1291 | + <div style="margin-right:10px;width:56px">其他</div> | |
| 1292 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1293 | + <el-progress | |
| 1294 | + style="width: 150px;" | |
| 1295 | + :text-inside="true" | |
| 1296 | + :stroke-width="20" | |
| 1297 | + :percentage="baifenbi(duibiOne.otherNecessaryEstimates)" | |
| 1298 | + status="success" | |
| 1299 | + :format="() => customFormat(duibiOne.otherNecessaryEstimates)" | |
| 1300 | + ></el-progress> | |
| 1301 | + </div> | |
| 1302 | + </div> | |
| 1303 | + <div style="width:30%"> | |
| 1304 | + <div style="display: flex;"> | |
| 1305 | + <div style="margin-right: 10px;padding: 10px 0;"> | |
| 1306 | + <div>调整后方案</div> | |
| 1307 | + <div style="font-size: 22px;color: #3F9B6A;font-weight: 600;margin: 10px 0;">{{xiaoduiObj.biliTwo}}</div> | |
| 1308 | + <div style="font-size: 16px;color: #3F9B6A;font-weight: 600;">投入产出比</div> | |
| 1309 | + </div> | |
| 1310 | + <el-progress type="circle" :percentage="xiaoduiObj.biliT" :show-text="false" :width="100"> | |
| 1311 | + </el-progress> | |
| 1312 | + </div> | |
| 1313 | + <div style="padding:30px 0">计划任务(完成度)</div> | |
| 1314 | + <div class="jindutiao"> | |
| 1315 | + <div style="margin-right:10px;width:56px">直接收入</div> | |
| 1316 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1317 | + <el-progress | |
| 1318 | + style="width: 150px;" | |
| 1319 | + :text-inside="true" | |
| 1320 | + :stroke-width="20" | |
| 1321 | + :percentage="baifenbi(duibiTwo.expectedDirectBenefits==undefined?'':duibiTwo.expectedDirectBenefits)" | |
| 1322 | + status="success" | |
| 1323 | + :format="() => customFormat(duibiTwo.expectedDirectBenefits==undefined?'':duibiTwo.expectedDirectBenefits)" | |
| 1324 | + ></el-progress> | |
| 1325 | + </div> | |
| 1326 | + <div class="jindutiao"> | |
| 1327 | + <div style="margin-right:10px;width:56px">间接收入</div> | |
| 1328 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1329 | + <el-progress | |
| 1330 | + style="width: 150px;" | |
| 1331 | + :text-inside="true" | |
| 1332 | + :stroke-width="20" | |
| 1333 | + :percentage="baifenbi(duibiTwo.expectedIndirectBenefits==undefined?'':duibiTwo.expectedIndirectBenefits)" | |
| 1334 | + status="success" | |
| 1335 | + :format="() => customFormat(duibiTwo.expectedIndirectBenefits==undefined?'':duibiTwo.expectedIndirectBenefits)" | |
| 1336 | + ></el-progress> | |
| 1337 | + </div> | |
| 1338 | + <div class="jindutiao"> | |
| 1339 | + <div style="margin-right:10px;width:56px">人力</div> | |
| 1340 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1341 | + <el-progress | |
| 1342 | + style="width: 150px;" | |
| 1343 | + :text-inside="true" | |
| 1344 | + :stroke-width="20" | |
| 1345 | + :percentage="baifenbi(duibiTwo.internalLaborCostEstimation==undefined?'':duibiTwo.internalLaborCostEstimation)" | |
| 1346 | + status="success" | |
| 1347 | + :format="() => customFormat(duibiTwo.internalLaborCostEstimation==undefined?'':duibiTwo.internalLaborCostEstimation)" | |
| 1348 | + ></el-progress> | |
| 1349 | + </div> | |
| 1350 | + <div class="jindutiao"> | |
| 1351 | + <div style="margin-right:10px;width:56px">设备</div> | |
| 1352 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1353 | + <el-progress | |
| 1354 | + style="width: 150px;" | |
| 1355 | + :text-inside="true" | |
| 1356 | + :stroke-width="20" | |
| 1357 | + :percentage="baifenbi(duibiTwo.setCostEstimate==undefined?'':duibiTwo.setCostEstimate)" | |
| 1358 | + status="success" | |
| 1359 | + :format="() => customFormat(duibiTwo.setCostEstimate==undefined?'':duibiTwo.setCostEstimate)" | |
| 1360 | + ></el-progress> | |
| 1361 | + </div> | |
| 1362 | + <div class="jindutiao"> | |
| 1363 | + <div style="margin-right:10px;width:56px">宣传</div> | |
| 1364 | + <!-- <el-progress :text-inside="true" :stroke-width="26" :format="format(xiaoduiObj.shou)" :percentage="xiaoduiObj.shouBi"></el-progress> --> | |
| 1365 | + <el-progress | |
| 1366 | + style="width: 150px;" | |
| 1367 | + :text-inside="true" | |
| 1368 | + :stroke-width="20" | |
| 1369 | + :percentage="baifenbi(duibiTwo.estimatedPromotionalExpenses==undefined?'':duibiTwo.estimatedPromotionalExpenses)" | |
| 1370 | + status="success" | |
| 1371 | + :format="() => customFormat(duibiTwo.estimatedPromotionalExpenses==undefined?'':duibiTwo.estimatedPromotionalExpenses)" | |
| 1372 | + ></el-progress> | |
| 1373 | + </div> | |
| 1374 | + <div class="jindutiao"> | |
| 1375 | + <div style="margin-right:10px;width:56px">其他</div> | |
| 1376 | + <el-progress | |
| 1377 | + style="width: 150px;" | |
| 1378 | + :text-inside="true" | |
| 1379 | + :stroke-width="20" | |
| 1380 | + :percentage="baifenbi(duibiTwo.otherNecessaryEstimates==undefined?'':duibiTwo.otherNecessaryEstimates)" | |
| 1381 | + status="success" | |
| 1382 | + :format="() => customFormat(duibiTwo.otherNecessaryEstimates==undefined?'':duibiTwo.otherNecessaryEstimates)" | |
| 1383 | + ></el-progress> | |
| 1384 | + </div> | |
| 1385 | + </div> | |
| 1386 | + </div> | |
| 1387 | +</el-dialog> | |
| 1388 | + | |
| 1389 | + | |
| 1390 | + <!-- 复制 --> | |
| 1391 | + <el-dialog :visible.sync="copyShow" custom-class='xiaoguo_css' style="padding: 0;" width="50%" | |
| 1392 | + center :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false"> | |
| 1393 | + <div style="padding:15px;background-color:#F9F9F9;font-size:14px;border:1px solid #ECECEC;margin-bottom:20px;display: flex;justify-content: space-between;"> | |
| 1394 | + <div>复制页</div> | |
| 1395 | + </div> | |
| 1396 | + <div style="padding:0 36px;"> | |
| 1397 | + <el-form label-position="right" :model="copy" label-width="120px" | |
| 1398 | + style="position: relative"> | |
| 1399 | + <el-form-item label="新方案名称" class="grid-content bg-purple device-from" prop="planName"> | |
| 1400 | + <el-input v-model="copy.planName" placeholder="请输入" /> | |
| 1401 | + </el-form-item> | |
| 1402 | + </el-form> | |
| 1403 | + </div> | |
| 1404 | + | |
| 1405 | + <div style="display: flex;justify-content: flex-end;padding: 10px 20px 10px 0"> | |
| 1406 | + <el-button class="buttonHover" | |
| 1407 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" | |
| 1408 | + @click="copyClose" >返回</el-button> | |
| 1409 | + <el-button plain @click="copysev" style="background-color: #3F9B6A;color: #fff;" >保存 | |
| 1410 | + </el-button> | |
| 1411 | + </div> | |
| 1412 | + </el-dialog> | |
| 1413 | +<el-dialog :visible.sync="searchShow" custom-class='xiaoguo_css' style="padding: 0;" width="50%" | |
| 1414 | + center :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false"> | |
| 1415 | + <div style="padding:15px;background-color:#F9F9F9;font-size:14px;border:1px solid #ECECEC;margin-bottom:20px;display: flex;justify-content: space-between;"> | |
| 1416 | + <div>搜索关键词配置</div> | |
| 1417 | + </div> | |
| 1418 | + <div style="padding:0 36px;"> | |
| 1419 | + <el-checkbox v-model="searPei.name">方案名称</el-checkbox> | |
| 1420 | + <!-- <el-checkbox v-model="searPei.lei">方案类型</el-checkbox> --> | |
| 1421 | + <el-checkbox v-model="searPei.staut">审核状态</el-checkbox> | |
| 1422 | + </div> | |
| 1423 | + | |
| 1424 | + <div style="display: flex;justify-content: flex-end;padding: 10px 20px 10px 0"> | |
| 1425 | + <el-button class="buttonHover" | |
| 1426 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" | |
| 1427 | + @click="searchShow=false" >返回</el-button> | |
| 1428 | + <el-button plain @click="searchShow=false" style="background-color: #3F9B6A;color: #fff;" >保存 | |
| 1429 | + </el-button> | |
| 1430 | + </div> | |
| 1431 | + </el-dialog> | |
| 1432 | + | |
| 1433 | +<el-dialog :visible.sync="jiucuoShow" custom-class='bian_css' style="padding: 0;" width="50%" | |
| 1434 | + :close-on-press-escape="false" center :close-on-click-modal="false" class="dialog_css_Xq" :show-close="false"> | |
| 1435 | + <div style="padding:20px;"> | |
| 1436 | + <div style="font-size: 14px;padding-bottom: 20px;color: #000;">氛围策划调整纠错</div> | |
| 1437 | + <wangEditor v-model="jiuMsg" ref="editor"></wangEditor> | |
| 1438 | + <div style="padding-top:20px;display:flex;justify-content: flex-end;"> | |
| 1439 | + <el-button style="background-color: #3F9B6A;color: #fff" | |
| 1440 | + @click="jiuCheck">确定</el-button> | |
| 1441 | + <el-button @click="jiucuoShow = false" style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" class="buttonHover">取消</el-button> | |
| 1442 | + | |
| 1443 | + </div> | |
| 1444 | + | |
| 1445 | + </div> | |
| 1446 | + | |
| 1447 | + </el-dialog> | |
| 1448 | +<actbians :showBian="actbianMsg" @BianchildClose='BianchildClose'></actbians> | |
| 1449 | +</div> | |
| 1450 | +</template> | |
| 1451 | + | |
| 1452 | +<script> | |
| 1453 | + import { | |
| 1454 | + deleteById, | |
| 1455 | + queryByPage, | |
| 1456 | + xiangByPage, | |
| 1457 | + fujiaTable, | |
| 1458 | + mingTable, | |
| 1459 | + danqueryById, | |
| 1460 | + xiangedit, | |
| 1461 | + actEdit, | |
| 1462 | + actAdd, | |
| 1463 | + actPage, | |
| 1464 | + MingAdd, | |
| 1465 | + MingDel, | |
| 1466 | + cereGet, | |
| 1467 | + cereAdd, | |
| 1468 | + cereEdit, | |
| 1469 | + cereDel, | |
| 1470 | + copy, | |
| 1471 | + excelQueryByPage, | |
| 1472 | + excelAdd, | |
| 1473 | + effectEvaluation, | |
| 1474 | + lishiDeta | |
| 1475 | + } from '../../api/activityBz' | |
| 1476 | + import actbians from "./atmosphereBian" | |
| 1477 | + import * as echarts from 'echarts' | |
| 1478 | + import Vue from 'vue' | |
| 1479 | + import html2canvas from 'html2canvas' | |
| 1480 | + import jsPDF from 'jspdf' | |
| 1481 | + import wangEditor from "@/components/editor/index"; | |
| 1482 | + import { | |
| 1483 | + uploadUrl | |
| 1484 | + } from '@/utils/request' | |
| 1485 | + export default { | |
| 1486 | + components: { | |
| 1487 | + actbians, | |
| 1488 | + wangEditor | |
| 1489 | + }, | |
| 1490 | + data() { | |
| 1491 | + return { | |
| 1492 | + uploadFileUrl: uploadUrl, // 请求地址 | |
| 1493 | + daoData:[], | |
| 1494 | + actbianMsg: { | |
| 1495 | + acBian: '', //编辑数据 | |
| 1496 | + bianshow: false, //编辑页 | |
| 1497 | + }, | |
| 1498 | + fileData:[], | |
| 1499 | + fenlei: [], | |
| 1500 | + secondData: {}, | |
| 1501 | + | |
| 1502 | + formSear:{ | |
| 1503 | + planName: '', | |
| 1504 | + state:null, | |
| 1505 | + dataOwnership: '2', | |
| 1506 | + pageNumber: 1, | |
| 1507 | + pageSize: 10, | |
| 1508 | + isDraft:0 | |
| 1509 | + }, | |
| 1510 | + | |
| 1511 | + planFen: '', | |
| 1512 | + eventTheme: '', | |
| 1513 | + currentPage: 1, | |
| 1514 | + total: 100, | |
| 1515 | + flag: false, | |
| 1516 | + pageSize: 10, | |
| 1517 | + ggXin: false, | |
| 1518 | + radio: '1', | |
| 1519 | + shan: '', | |
| 1520 | + activeName: 'first', | |
| 1521 | + rules: { | |
| 1522 | + coDe: [{ | |
| 1523 | + required: true, | |
| 1524 | + message: '请输入氛围名称', | |
| 1525 | + trigger: 'blur' | |
| 1526 | + }, | |
| 1527 | + | |
| 1528 | + ], | |
| 1529 | + }, | |
| 1530 | + formInline: { | |
| 1531 | + merchantName: '', // 商家名称 | |
| 1532 | + storeId: '', // 编码 | |
| 1533 | + contacts: '', // 联系人 | |
| 1534 | + businessEntity: '', //经营主体 | |
| 1535 | + page: 1, // 当前页 | |
| 1536 | + pageSize: 10 // 每页记录数 | |
| 1537 | + }, | |
| 1538 | + tableData: [], | |
| 1539 | + id: '', | |
| 1540 | + text: '123', | |
| 1541 | + tableData1: [{ | |
| 1542 | + id: 0, | |
| 1543 | + name: '类型', | |
| 1544 | + planName: '', | |
| 1545 | + text: '氛围地点', | |
| 1546 | + eventTheme: '' | |
| 1547 | + }, { | |
| 1548 | + id: 0, | |
| 1549 | + name: '氛围开始时间', | |
| 1550 | + planName: '', | |
| 1551 | + text: '氛围结束时间', | |
| 1552 | + eventTheme: '' | |
| 1553 | + }, { | |
| 1554 | + id: 0, | |
| 1555 | + name: '氛围主题', | |
| 1556 | + planName: '', | |
| 1557 | + text: '氛围主办方', | |
| 1558 | + eventTheme: '' | |
| 1559 | + }, { | |
| 1560 | + id: 0, | |
| 1561 | + name: '氛围参与方', | |
| 1562 | + planName: '', | |
| 1563 | + text: '氛围主要目的', | |
| 1564 | + eventTheme: '' | |
| 1565 | + }, { | |
| 1566 | + id: 0, | |
| 1567 | + name: '范围设置', | |
| 1568 | + planName: '', | |
| 1569 | + text: '状态', | |
| 1570 | + eventTheme: '' | |
| 1571 | + }], | |
| 1572 | + internalLaborCostEstimation: '', | |
| 1573 | + externalLaborCostEstimation: '', | |
| 1574 | + tableData3: [{ | |
| 1575 | + id: 0, | |
| 1576 | + name: '商品成本预估', | |
| 1577 | + planName: '', | |
| 1578 | + text: '设备成本预估', | |
| 1579 | + eventTheme: '' | |
| 1580 | + }, { | |
| 1581 | + id: 0, | |
| 1582 | + name: '宣传费用预估', | |
| 1583 | + planName: '', | |
| 1584 | + text: '其他必要成本预估', | |
| 1585 | + eventTheme: '' | |
| 1586 | + }, { | |
| 1587 | + id: 0, | |
| 1588 | + name: '总成本预估', | |
| 1589 | + planName: '', | |
| 1590 | + text: '备注', | |
| 1591 | + eventTheme: '' | |
| 1592 | + }], | |
| 1593 | + expectedAttractTraffic: '', | |
| 1594 | + expectedParticipation: '', | |
| 1595 | + tableData4: [{ | |
| 1596 | + id: 0, | |
| 1597 | + name: '预计直接收益', | |
| 1598 | + planName: '', | |
| 1599 | + text: '预计间接收益', | |
| 1600 | + eventTheme: '-' | |
| 1601 | + }], | |
| 1602 | + createUser: '', | |
| 1603 | + createDate: '', | |
| 1604 | + tableData5: [{ | |
| 1605 | + id: 0, | |
| 1606 | + name: '更新人', | |
| 1607 | + planName: '', | |
| 1608 | + text: '更新时间', | |
| 1609 | + eventTheme: '-' | |
| 1610 | + }], | |
| 1611 | + tableData2: [], //基本信息明细列表 | |
| 1612 | + tableData6: [], //基本信息附件列表 | |
| 1613 | + addMing: false, //执行效果添加明细 | |
| 1614 | + zhixingBian: false, //判断是否编辑执行效果 | |
| 1615 | + tableDa: [], //执行效果明细列表 | |
| 1616 | + zhiXing: true, //判断是否是新增的执行效果 | |
| 1617 | + mingFrom: { | |
| 1618 | + detailLtemName: '', | |
| 1619 | + estimatedQuantity: '', | |
| 1620 | + estimatedCost: '', | |
| 1621 | + notes: '' | |
| 1622 | + }, | |
| 1623 | + planTime:[], | |
| 1624 | + zhixingList: { | |
| 1625 | + planTime: [], | |
| 1626 | + planName: '', //氛围名称 | |
| 1627 | + eventAddrs: '', //实际举办地点 | |
| 1628 | + eventStartTime: 0, //实际开始时间 | |
| 1629 | + eventEndTime: 0, //实际结束时间 | |
| 1630 | + sponsor: '', //实际主办方 | |
| 1631 | + participants: '', //实际参与方 | |
| 1632 | + internalLaborCostEstimation: '', //内部人工成本 | |
| 1633 | + externalLaborCostEstimation: '', //外部人工成本 | |
| 1634 | + costEstimationGoods: '', //商品成本 | |
| 1635 | + setCostEstimate: '', //设备成本 | |
| 1636 | + estimatedPromotionalExpenses: '', //宣传费用预估 | |
| 1637 | + otherNecessaryEstimates: '', //其他成本预估 | |
| 1638 | + totalCostEstimation: '', //总成本预估 | |
| 1639 | + notes: '', //备注 | |
| 1640 | + expectedAttractTraffic: '', //吸引流量 | |
| 1641 | + expectedParticipation: '', //参与人数 | |
| 1642 | + expectedDirectBenefits: '', //直接收益 | |
| 1643 | + expectedIndirectBenefits: '', //间接收益 | |
| 1644 | + createDate: '', //创建时间 | |
| 1645 | + feedbackContent:'' | |
| 1646 | + }, //执行效果列表 | |
| 1647 | + pageindex: { | |
| 1648 | + pageNumber: 1, | |
| 1649 | + pageSize: 10, | |
| 1650 | + dataOwnership: '2', | |
| 1651 | + isDraft:0 | |
| 1652 | + }, | |
| 1653 | + multipleSelection: [], | |
| 1654 | + options: [], | |
| 1655 | + xinADD:{ | |
| 1656 | + classificationName:'', | |
| 1657 | + parentId:'', | |
| 1658 | + classificationType:'0' | |
| 1659 | + }, | |
| 1660 | + value: '', | |
| 1661 | + xiaoDui: false, //效果对比 | |
| 1662 | + dataList:[], | |
| 1663 | + | |
| 1664 | + fenleiDelId:null,//删除的分类ID | |
| 1665 | + xiaoduiObj:{ | |
| 1666 | + biliOne:'0%', | |
| 1667 | + bilis:0, | |
| 1668 | + biliTwo:'0%', | |
| 1669 | + biliT:0 | |
| 1670 | + },//效果对比数据 | |
| 1671 | + fujiLei:'', | |
| 1672 | + defaultProps:{ | |
| 1673 | + children: 'children', | |
| 1674 | + label: 'classificationName' | |
| 1675 | + }, | |
| 1676 | + | |
| 1677 | + copy:{ | |
| 1678 | + planName:'' | |
| 1679 | + }, | |
| 1680 | + copyShow:false, | |
| 1681 | + duibiOne:{}, | |
| 1682 | + duibiTwo:{}, | |
| 1683 | + searchShow:false, | |
| 1684 | + searPei:{ | |
| 1685 | + name:true, | |
| 1686 | + lei:false, | |
| 1687 | + staut:false, | |
| 1688 | + }, | |
| 1689 | + lishiList:null, | |
| 1690 | + labelStyle:{ | |
| 1691 | + width:'197px', | |
| 1692 | + height:'42px', | |
| 1693 | + }, | |
| 1694 | + labelStyleOne:{ | |
| 1695 | + width:'110px', | |
| 1696 | + height:'42px', | |
| 1697 | + color:'#000', | |
| 1698 | + }, | |
| 1699 | + lidata:[], | |
| 1700 | + lixiang:{}, | |
| 1701 | + duibiList:{}, | |
| 1702 | + tiaozhengShow:false, | |
| 1703 | + jiucuoShow:false, | |
| 1704 | + jiuMsg:'', | |
| 1705 | + editId:'' | |
| 1706 | + } | |
| 1707 | + }, | |
| 1708 | + created() { | |
| 1709 | + this.getAll() | |
| 1710 | + | |
| 1711 | + }, | |
| 1712 | + computed: { | |
| 1713 | + | |
| 1714 | + }, | |
| 1715 | + methods: { | |
| 1716 | + getStatus(state) { | |
| 1717 | + switch (state) { | |
| 1718 | + case '': | |
| 1719 | + return '待提交'; | |
| 1720 | + case '1': | |
| 1721 | + return '待审核'; | |
| 1722 | + case '2': | |
| 1723 | + return '业务部审核'; | |
| 1724 | + case '3': | |
| 1725 | + return '品牌审核'; | |
| 1726 | + case '4': | |
| 1727 | + return '审核通过'; | |
| 1728 | + case '5': | |
| 1729 | + return '审核不通过' | |
| 1730 | + } | |
| 1731 | + }, | |
| 1732 | + //查询全数据 | |
| 1733 | + async getAll() { | |
| 1734 | + const res = await queryByPage(this.pageindex) | |
| 1735 | + this.tableData = res.data.content | |
| 1736 | + this.total = res.data.content.length | |
| 1737 | + | |
| 1738 | + }, | |
| 1739 | + //删除记录按钮 | |
| 1740 | + handleDelete(val) { | |
| 1741 | + if (this.multipleSelection.length == 1) { | |
| 1742 | + | |
| 1743 | + const h = this.$createElement; | |
| 1744 | + this.$msgbox({ | |
| 1745 | + title: '消息', | |
| 1746 | + message: h('p', null, [ | |
| 1747 | + h('span', null, '是否删除 '), | |
| 1748 | + ]), | |
| 1749 | + showCancelButton: true, | |
| 1750 | + showClose: false, | |
| 1751 | + confirmButtonText: '确定', | |
| 1752 | + cancelButtonText: '取消', | |
| 1753 | + customClass: 'oe-dialog-btn', | |
| 1754 | + beforeClose: (action, instance, done) => { | |
| 1755 | + if (action === 'confirm') { | |
| 1756 | + deleteById({ | |
| 1757 | + id: this.multipleSelection[0].id | |
| 1758 | + }).then(res => { | |
| 1759 | + this.getAll() | |
| 1760 | + done(); | |
| 1761 | + }) | |
| 1762 | + } else { | |
| 1763 | + done(); | |
| 1764 | + } | |
| 1765 | + } | |
| 1766 | + }) | |
| 1767 | + } else { | |
| 1768 | + this.$message({ | |
| 1769 | + message: '请选择一个文件删除', | |
| 1770 | + customClass: 'custom-message', | |
| 1771 | + offset: 100 | |
| 1772 | + }) | |
| 1773 | + } | |
| 1774 | + }, | |
| 1775 | + //查询 | |
| 1776 | + async onSubmit() { | |
| 1777 | + const res = await danqueryById(this.formSear) | |
| 1778 | + this.tableData = res.data.content | |
| 1779 | + }, | |
| 1780 | + //重置按钮 | |
| 1781 | + resetting() { | |
| 1782 | + this.formSear ={ | |
| 1783 | + planName: '', | |
| 1784 | + state:null, | |
| 1785 | + dataOwnership: '2', | |
| 1786 | + pageNumber: 1, | |
| 1787 | + pageSize: 10, | |
| 1788 | + isDraft:0 | |
| 1789 | + | |
| 1790 | + } | |
| 1791 | + this.getAll() | |
| 1792 | + }, | |
| 1793 | + //编辑页 | |
| 1794 | + BianchildClose(msg) { | |
| 1795 | + this.actbianMsg.bianshow = msg | |
| 1796 | + this.getAll() | |
| 1797 | + }, | |
| 1798 | + actBian(item) { | |
| 1799 | + this.actbianMsg.acBian = item | |
| 1800 | + this.actbianMsg.bianshow = true | |
| 1801 | + }, | |
| 1802 | + //详情点击 | |
| 1803 | + handleEditForm(item) { | |
| 1804 | + this.liData = [] | |
| 1805 | + this.lixiang = {} | |
| 1806 | + this.lishiList=null | |
| 1807 | + this.fileData = [] | |
| 1808 | + this.zhixingList = { | |
| 1809 | + planTime:[], | |
| 1810 | + planName: '', //氛围名称 | |
| 1811 | + eventAddrs: '', //实际举办地点 | |
| 1812 | + eventStartTime: 0, //实际开始时间 | |
| 1813 | + eventEndTime: 0, //实际结束时间 | |
| 1814 | + sponsor: '', //实际主办方 | |
| 1815 | + participants: '', //实际参与方 | |
| 1816 | + internalLaborCostEstimation: '', //内部人工成本 | |
| 1817 | + externalLaborCostEstimation: '', //外部人工成本 | |
| 1818 | + costEstimationGoods: '', //商品成本 | |
| 1819 | + setCostEstimate: '', //设备成本 | |
| 1820 | + estimatedPromotionalExpenses: '', //宣传费用预估 | |
| 1821 | + otherNecessaryEstimates: '', //其他成本预估 | |
| 1822 | + totalCostEstimation: '', //总成本预估 | |
| 1823 | + notes: '', //备注 | |
| 1824 | + expectedAttractTraffic: '', //吸引流量 | |
| 1825 | + expectedParticipation: '', //参与人数 | |
| 1826 | + expectedDirectBenefits: '', //直接收益 | |
| 1827 | + expectedIndirectBenefits: '', //间接收益 | |
| 1828 | + createDate: '', //创建时间 | |
| 1829 | + feedbackContent:'' | |
| 1830 | + } //执行效果列表 | |
| 1831 | + actPage({ | |
| 1832 | + detailsId: item.id, | |
| 1833 | + pageNumber: 1, | |
| 1834 | + pageSize: 10, | |
| 1835 | + }).then(res => { | |
| 1836 | + console.log(res.data.content) | |
| 1837 | + if (res.data.content.length == 0) { | |
| 1838 | + this.zhiXing = true | |
| 1839 | + } else { | |
| 1840 | + mingTable({ | |
| 1841 | + detailsId: res.data.content[0].id, | |
| 1842 | + pageNumber: 1, | |
| 1843 | + pageSize: 10, | |
| 1844 | + }).then(res => { | |
| 1845 | + this.tableDa = res.data.content | |
| 1846 | + }) | |
| 1847 | + this.zhiXing = false | |
| 1848 | + this.zhixingList = res.data.content[0] | |
| 1849 | + if((typeof this.zhixingList.eventStartTime) == 'object' || (typeof this.zhixingList.eventEndTime) == 'object' ){ | |
| 1850 | + this.zhixingList.planTime = [] | |
| 1851 | + }else{ | |
| 1852 | + console.log(typeof this.zhixingList.eventStartTime) | |
| 1853 | + this.zhixingList.planTime = [ this.zhixingList.eventStartTime, this.zhixingList.eventEndTime] | |
| 1854 | + } | |
| 1855 | + | |
| 1856 | + } | |
| 1857 | + }) | |
| 1858 | + let that = this | |
| 1859 | + this.planTime = [item.eventStartTime, item.eventEndTime] | |
| 1860 | + fujiaTable({ | |
| 1861 | + detailsId: item.id, | |
| 1862 | + pageNumber: 1, | |
| 1863 | + pageSize: 10, | |
| 1864 | + }).then(res => { | |
| 1865 | + this.tableData6 = res.data.content | |
| 1866 | + }) | |
| 1867 | + mingTable({ | |
| 1868 | + detailsId: item.id, | |
| 1869 | + pageNumber: 1, | |
| 1870 | + pageSize: 10, | |
| 1871 | + }).then(res => { | |
| 1872 | + this.tableData2 = res.data.content | |
| 1873 | + }) | |
| 1874 | + | |
| 1875 | + | |
| 1876 | + danqueryById({ | |
| 1877 | + id: item.id, | |
| 1878 | + dataOwnership: '2', | |
| 1879 | + pageNumber: 1, | |
| 1880 | + pageSize: 10, | |
| 1881 | + }).then(res => { | |
| 1882 | + this.secondData = res.data.content[0] | |
| 1883 | + //基本信息 | |
| 1884 | + // that.id=res.data.content[0].id | |
| 1885 | + that.text = res.data.content[0].planName | |
| 1886 | + that.tableData1[0].eventTheme = res.data.content[0].planType | |
| 1887 | + that.tableData1[0].planName = res.data.content[0].eventAddrs | |
| 1888 | + that.tableData1[1].eventTheme = res.data.content[0].eventStartTime | |
| 1889 | + that.tableData1[1].planName = res.data.content[0].eventEndTime | |
| 1890 | + that.tableData1[2].eventTheme = res.data.content[0].eventTheme | |
| 1891 | + that.tableData1[2].planName = res.data.content[0].sponsor | |
| 1892 | + that.tableData1[3].eventTheme = res.data.content[0].participants | |
| 1893 | + that.tableData1[3].planName = res.data.content[0].mainPurpose | |
| 1894 | + that.tableData1[4].planName = this.getStatus(res.data.content[0].state) | |
| 1895 | + that.tableData1[4].eventTheme = res.data.content[0].rangeSetting | |
| 1896 | + //氛围成本信息 | |
| 1897 | + that.internalLaborCostEstimation = res.data.content[0].internalLaborCostEstimation | |
| 1898 | + that.externalLaborCostEstimation = res.data.content[0].externalLaborCostEstimation | |
| 1899 | + that.tableData3[0].eventTheme = res.data.content[0].costEstimationGoods | |
| 1900 | + that.tableData3[0].planName = res.data.content[0].setCostEstimate | |
| 1901 | + that.tableData3[1].eventTheme = res.data.content[0].estimatedPromotionalExpenses | |
| 1902 | + that.tableData3[1].planName = res.data.content[0].otherNecessaryEstimates | |
| 1903 | + that.tableData3[2].eventTheme = res.data.content[0].totalCostEstimation | |
| 1904 | + that.tableData3[2].planName = res.data.content[0].notes | |
| 1905 | + //预估效果 | |
| 1906 | + that.expectedAttractTraffic = res.data.content[0].expectedAttractTraffic | |
| 1907 | + that.expectedParticipation = res.data.content[0].expectedParticipation | |
| 1908 | + that.tableData4[0].eventTheme = res.data.content[0].expectedDirectBenefits | |
| 1909 | + that.tableData4[0].planName = res.data.content[0].expectedIndirectBenefits | |
| 1910 | + //系统信息 | |
| 1911 | + that.createUser = res.data.content[0].createUser | |
| 1912 | + that.createDate = res.data.content[0].createDate | |
| 1913 | + | |
| 1914 | + that.tableData5[0].planName = '-' | |
| 1915 | + that.tableData5[0].eventTheme = res.data.content[0].updateUser | |
| 1916 | + | |
| 1917 | + }).catch(err => { | |
| 1918 | + console.log(err) | |
| 1919 | + | |
| 1920 | + }) | |
| 1921 | + if (!item) { | |
| 1922 | + this.formItem = {} | |
| 1923 | + } else { | |
| 1924 | + this.formItem = item | |
| 1925 | + } | |
| 1926 | + lishiDeta({eventDetailsId:item.id}).then(res=>{ | |
| 1927 | + this.liData = res.data | |
| 1928 | + }) | |
| 1929 | + this.ggXin = true | |
| 1930 | + }, | |
| 1931 | + formTime(data){ | |
| 1932 | + this.zhixingList.planTime = data | |
| 1933 | + }, | |
| 1934 | + removeEmptyValues(obj) { | |
| 1935 | + if (typeof obj !== 'object' || obj === null) { | |
| 1936 | + return obj; | |
| 1937 | + } | |
| 1938 | + | |
| 1939 | + const newObj = Array.isArray(obj) ? [] : {}; | |
| 1940 | + | |
| 1941 | + for (const key in obj) { | |
| 1942 | + if (Object.prototype.hasOwnProperty.call(obj, key)) { | |
| 1943 | + const value = obj[key]; | |
| 1944 | + if (value !== null && value !== undefined && value !== '' && !this.isEmptyObject(value)) { | |
| 1945 | + if (Array.isArray(newObj)) { | |
| 1946 | + newObj.push(this.removeEmptyValues(value)); | |
| 1947 | + } else { | |
| 1948 | + newObj[key] = this.removeEmptyValues(value); | |
| 1949 | + } | |
| 1950 | + } | |
| 1951 | + } | |
| 1952 | + } | |
| 1953 | + | |
| 1954 | + return newObj; | |
| 1955 | + }, | |
| 1956 | + isEmptyObject(obj) { | |
| 1957 | + return Object.keys(obj).length === 0 && obj.constructor === Object; | |
| 1958 | + }, | |
| 1959 | + //获取当前时间 | |
| 1960 | + updateCurrentTime() { | |
| 1961 | + const now = new Date(); | |
| 1962 | + const year = now.getFullYear(); | |
| 1963 | + const month = (now.getMonth() + 1).toString().padStart(2, '0'); | |
| 1964 | + const day = now.getDate().toString().padStart(2, '0'); | |
| 1965 | + const hours = now.getHours().toString().padStart(2, '0'); | |
| 1966 | + const minutes = now.getMinutes().toString().padStart(2, '0'); | |
| 1967 | + const seconds = now.getSeconds().toString().padStart(2, '0'); | |
| 1968 | + | |
| 1969 | + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; | |
| 1970 | + }, | |
| 1971 | + | |
| 1972 | + handleCurrentChange(val) { | |
| 1973 | + this.currentPage = val | |
| 1974 | + }, | |
| 1975 | + handleSizeChange(val) { | |
| 1976 | + this.pageSize = val | |
| 1977 | + }, | |
| 1978 | + closeFn() { | |
| 1979 | + this.ggXin = false | |
| 1980 | + }, | |
| 1981 | + handleClick() { | |
| 1982 | + console.log() | |
| 1983 | + }, | |
| 1984 | + refreshData() { | |
| 1985 | + // console.log('12123') | |
| 1986 | + this.tableDa = [] | |
| 1987 | + this.activeName = 'first' | |
| 1988 | + this.zhixingBian = false | |
| 1989 | + }, | |
| 1990 | + reshData() { | |
| 1991 | + this.tableDa = [] | |
| 1992 | + this.tiaozhengShow = false | |
| 1993 | + }, | |
| 1994 | + | |
| 1995 | + handleSelectionChange(val) { | |
| 1996 | + this.multipleSelection = val; | |
| 1997 | + }, | |
| 1998 | + toggleSelection(rows) { | |
| 1999 | + if (rows) { | |
| 2000 | + rows.forEach(row => { | |
| 2001 | + this.$refs.mulTable.toggleRowSelection(row); | |
| 2002 | + }); | |
| 2003 | + } | |
| 2004 | + }, | |
| 2005 | + tableAll() { | |
| 2006 | + this.$refs.mulTable.clearSelection(); // 清除所有选项 | |
| 2007 | + const allRows = this.$refs.mulTable.data; // 获取所有行数据 | |
| 2008 | + allRows.forEach(row => { | |
| 2009 | + this.$refs.mulTable.toggleRowSelection(row, true); // 全选所有项 | |
| 2010 | + }); | |
| 2011 | + }, | |
| 2012 | + TabClick(tab, event) { | |
| 2013 | + console.log(tab, event) | |
| 2014 | + if (tab.index == '0') { | |
| 2015 | + this.getAll() | |
| 2016 | + } else { | |
| 2017 | + this.tableData = [] | |
| 2018 | + } | |
| 2019 | + }, | |
| 2020 | + minSev() { | |
| 2021 | + if (this.zhiXing) { | |
| 2022 | + this.tableDa.push(this.mingFrom) | |
| 2023 | + } else { | |
| 2024 | + this.mingFrom.detailsId = this.zhixingList.id | |
| 2025 | + MingAdd(this.mingFrom).then(res => { | |
| 2026 | + this.mingcha(this.zhixingList.id) | |
| 2027 | + }) | |
| 2028 | + } | |
| 2029 | + this.mingFrom = { | |
| 2030 | + detailLtemName: '', | |
| 2031 | + estimatedQuantity: '', | |
| 2032 | + estimatedCost: '', | |
| 2033 | + notes: '' | |
| 2034 | + } | |
| 2035 | + this.addMing = false | |
| 2036 | + }, | |
| 2037 | + // 查询执行明细 | |
| 2038 | + mingcha(id) { | |
| 2039 | + mingTable({ | |
| 2040 | + detailsId: id, | |
| 2041 | + pageNumber: 1, | |
| 2042 | + pageSize: 10 | |
| 2043 | + }).then(res => { | |
| 2044 | + this.tableDa = res.data.content | |
| 2045 | + }) | |
| 2046 | + }, | |
| 2047 | + MingDelete(index, item) { | |
| 2048 | + const h = this.$createElement; | |
| 2049 | + this.$msgbox({ | |
| 2050 | + title: '消息', | |
| 2051 | + message: h('p', null, [ | |
| 2052 | + h('span', null, '是否删除 '), | |
| 2053 | + ]), | |
| 2054 | + showCancelButton: true, | |
| 2055 | + showClose: false, | |
| 2056 | + confirmButtonText: '确定', | |
| 2057 | + cancelButtonText: '取消', | |
| 2058 | + customClass: 'oe-dialog-btn', | |
| 2059 | + beforeClose: (action, instance, done) => { | |
| 2060 | + if (action === 'confirm') { | |
| 2061 | + if (this.zhiXing) { | |
| 2062 | + this.tableDa.splice(item, 1); | |
| 2063 | + } else { | |
| 2064 | + MingDel({ | |
| 2065 | + id: item.id | |
| 2066 | + }).then(res => { | |
| 2067 | + this.mingcha(this.zhixingList.id) | |
| 2068 | + }) | |
| 2069 | + } | |
| 2070 | + done(); | |
| 2071 | + } else { | |
| 2072 | + done(); | |
| 2073 | + } | |
| 2074 | + } | |
| 2075 | + }) | |
| 2076 | + }, | |
| 2077 | + tianMing() { | |
| 2078 | + if (this.zhixingBian) { | |
| 2079 | + this.addMing = true | |
| 2080 | + } | |
| 2081 | + }, | |
| 2082 | + | |
| 2083 | + duibi(){ | |
| 2084 | + if (this.multipleSelection.length ==1 ) { | |
| 2085 | + this.xiaoDui = true | |
| 2086 | + this.duibiOne = this.multipleSelection[0] | |
| 2087 | + console.log(this.multipleSelection[0]) | |
| 2088 | + let that = this | |
| 2089 | + actPage({ | |
| 2090 | + detailsId:this.multipleSelection[0].id, | |
| 2091 | + pageNumber: 1, | |
| 2092 | + pageSize: 10, | |
| 2093 | + }).then(res => { | |
| 2094 | + this.duibiTwo = res.data.content[0] === undefined ? {} : res.data.content[0]; | |
| 2095 | + console.log(this.duibiTwo) | |
| 2096 | + if( res.data.content[0] === undefined || res.data.content[0].totalCostEstimation =='' ){ | |
| 2097 | + that.xiaoduiObj.biliTwo = '0%' | |
| 2098 | + that.xiaoduiObj.biliT = 0 | |
| 2099 | + }else{ | |
| 2100 | + that.xiaoduiObj.biliT = that.duibiTwo.internalLaborCostEstimation / that.duibiTwo.totalCostEstimation*100 | |
| 2101 | + that.xiaoduiObj.biliTwo =`${Math.round(that.duibiTwo.internalLaborCostEstimation / that.duibiTwo.totalCostEstimation*100)}%` | |
| 2102 | + } | |
| 2103 | + | |
| 2104 | + }) | |
| 2105 | + if(that.duibiOne.totalCostEstimation ==''){ | |
| 2106 | + that.xiaoduiObj.biliOne = '0%' | |
| 2107 | + that.xiaoduiObj.bilis = 0 | |
| 2108 | + }else{ | |
| 2109 | + that.xiaoduiObj.bilis = that.duibiOne.internalLaborCostEstimation / that.duibiOne.totalCostEstimation*100 | |
| 2110 | + that.xiaoduiObj.biliOne = `${Math.round(that.duibiOne.internalLaborCostEstimation / that.duibiOne.totalCostEstimation*100)}%` | |
| 2111 | + } | |
| 2112 | + | |
| 2113 | + }else{ | |
| 2114 | + this.$message({ | |
| 2115 | + message: '请选择一个文件对比', | |
| 2116 | + customClass: 'custom-message', | |
| 2117 | + offset: 100 | |
| 2118 | + }) | |
| 2119 | + } | |
| 2120 | + | |
| 2121 | + }, | |
| 2122 | + | |
| 2123 | + koop(item){ | |
| 2124 | + this.copy.id = item.id | |
| 2125 | + this.copyShow = true | |
| 2126 | + }, | |
| 2127 | + copyClose(){ | |
| 2128 | + this.copyShow = false | |
| 2129 | + this.copy.planName = '' | |
| 2130 | + }, | |
| 2131 | + copysev(){ | |
| 2132 | + if(this.copy.planName == ''){ | |
| 2133 | + this.$message({ | |
| 2134 | + message: '请填写数据', | |
| 2135 | + customClass: 'custom-message', | |
| 2136 | + offset: 100 | |
| 2137 | + }) | |
| 2138 | + return; | |
| 2139 | + }else{ | |
| 2140 | + copy(this.copy).then(res=>{ | |
| 2141 | + this.copyShow = false | |
| 2142 | + this.getAll() | |
| 2143 | + }) | |
| 2144 | + } | |
| 2145 | + }, | |
| 2146 | + | |
| 2147 | + | |
| 2148 | + fenleiChange(value){ | |
| 2149 | + this.xinADD.parentId = value[value.length - 1] | |
| 2150 | + }, | |
| 2151 | + | |
| 2152 | + | |
| 2153 | + customFormat(percentage) { | |
| 2154 | + let zong | |
| 2155 | + if(percentage==undefined ||percentage === null || percentage == '' ){ | |
| 2156 | + percentage = 0 | |
| 2157 | + zong = 10000 | |
| 2158 | + } | |
| 2159 | + return `${percentage} / ${percentage==''?zong:parseInt(percentage) *10}`; | |
| 2160 | + }, | |
| 2161 | + baifenbi(item){ | |
| 2162 | + | |
| 2163 | + let zong | |
| 2164 | + if(item == undefined || item === null || item == '' ){ | |
| 2165 | + item = 0 | |
| 2166 | + zong = 10000 | |
| 2167 | + return Math.round(item / (item*10) * 100); | |
| 2168 | + }else{ | |
| 2169 | + return Math.round(item / zong * 100); | |
| 2170 | + } | |
| 2171 | + | |
| 2172 | + }, | |
| 2173 | + handleUploadSuccess(response, file, fileList) { | |
| 2174 | + const fileMsg = { | |
| 2175 | + name:file.name, | |
| 2176 | + url: file.response.data.url, | |
| 2177 | + } | |
| 2178 | + // 将文件地址存储在 uploadedFiles 数组中 | |
| 2179 | + this.fileData.push(fileMsg); | |
| 2180 | + }, | |
| 2181 | + handleRemove(){ | |
| 2182 | + this.fileData = [] | |
| 2183 | + }, | |
| 2184 | + daoru(response, file, fileList){ | |
| 2185 | + this.daoData.push(file.raw) | |
| 2186 | + const formDate = new FormData() | |
| 2187 | + formDate.append('file', this.daoData[0]) | |
| 2188 | + excelAdd(formDate).then(res => { | |
| 2189 | + this.getAll() | |
| 2190 | + }) | |
| 2191 | + }, | |
| 2192 | + | |
| 2193 | + | |
| 2194 | + async daochu(){ | |
| 2195 | + let res = await excelQueryByPage(this.pageindex) | |
| 2196 | + if(!res){ | |
| 2197 | + return | |
| 2198 | + } | |
| 2199 | + const blob = new Blob([res], { type: 'application/vnd.ms-excel' }) | |
| 2200 | + const fileName = '审核流程.xls' | |
| 2201 | + if ('download' in document.createElement('a')) { | |
| 2202 | + // 非IE下载 | |
| 2203 | + const elink = document.createElement('a') | |
| 2204 | + elink.download = fileName | |
| 2205 | + elink.style.display = 'none' | |
| 2206 | + elink.href = URL.createObjectURL(blob) | |
| 2207 | + document.body.appendChild(elink) | |
| 2208 | + elink.click() | |
| 2209 | + URL.revokeObjectURL(elink.href) // 释放URL 对象 | |
| 2210 | + document.body.removeChild(elink) | |
| 2211 | + } else { | |
| 2212 | + // IE10+下载 | |
| 2213 | + navigator.msSaveBlob(blob, fileName) | |
| 2214 | + } | |
| 2215 | + this.$message({ | |
| 2216 | + message: '导出成功', | |
| 2217 | + type: 'success' | |
| 2218 | + }) | |
| 2219 | + | |
| 2220 | + | |
| 2221 | + }, | |
| 2222 | + // 下载 | |
| 2223 | + async downloadPdf() { | |
| 2224 | + const content = this.$refs.actXiang; | |
| 2225 | + | |
| 2226 | + // 使用 html2canvas 将 div 渲染为画布 | |
| 2227 | + const canvas = await html2canvas(content); | |
| 2228 | + | |
| 2229 | + // 获取画布的图像数据 | |
| 2230 | + const imgData = canvas.toDataURL('image/png'); | |
| 2231 | + | |
| 2232 | + // 创建一个新的 PDF 文档 | |
| 2233 | + const pdf = new jsPDF('p', 'mm', 'a4'); | |
| 2234 | + | |
| 2235 | + // 添加图像到 PDF,第二个参数是图像格式,第三个参数是缩放比例 | |
| 2236 | + const imgWidth = 190; // 图像的宽度(mm) | |
| 2237 | + const imgHeight = (canvas.height * imgWidth) / canvas.width; // 保持图像的宽高比 | |
| 2238 | + | |
| 2239 | + pdf.addImage(imgData, 'PNG', 10, 10, imgWidth, imgHeight); // 10, 10 是图像在 PDF 中的位置(mm) | |
| 2240 | + | |
| 2241 | + // 保存 PDF 文件 | |
| 2242 | + pdf.save('氛围方案.pdf'); | |
| 2243 | + }, | |
| 2244 | + // 下载 | |
| 2245 | + async lishidownloadPdf() { | |
| 2246 | + const content = this.$refs.lishiRef; | |
| 2247 | + | |
| 2248 | + // 使用 html2canvas 将 div 渲染为画布 | |
| 2249 | + const canvas = await html2canvas(content); | |
| 2250 | + | |
| 2251 | + // 获取画布的图像数据 | |
| 2252 | + const imgData = canvas.toDataURL('image/png'); | |
| 2253 | + | |
| 2254 | + // 创建一个新的 PDF 文档 | |
| 2255 | + const pdf = new jsPDF('p', 'mm', 'a4'); | |
| 2256 | + | |
| 2257 | + // 添加图像到 PDF,第二个参数是图像格式,第三个参数是缩放比例 | |
| 2258 | + const imgWidth = 190; // 图像的宽度(mm) | |
| 2259 | + const imgHeight = (canvas.height * imgWidth) / canvas.width; // 保持图像的宽高比 | |
| 2260 | + | |
| 2261 | + pdf.addImage(imgData, 'PNG', 10, 10, imgWidth, imgHeight); // 10, 10 是图像在 PDF 中的位置(mm) | |
| 2262 | + | |
| 2263 | + // 保存 PDF 文件 | |
| 2264 | + pdf.save('历史方案.pdf'); | |
| 2265 | + }, | |
| 2266 | + | |
| 2267 | +setSearch(){ | |
| 2268 | +this.searchShow = true | |
| 2269 | +}, | |
| 2270 | +lichange(e){ | |
| 2271 | +console.log(this.liData[e]) | |
| 2272 | +this.lishiList=e | |
| 2273 | + let msg =this.liData[e] | |
| 2274 | +this.duibiList = JSON.parse(msg.modifyContent) | |
| 2275 | +this.lixiang = JSON.parse(msg.originalData) | |
| 2276 | + | |
| 2277 | +}, | |
| 2278 | +tiaozheng(){ | |
| 2279 | + this.tiaozhengShow = true | |
| 2280 | +}, | |
| 2281 | +jiucuo(){ | |
| 2282 | + this.jiuMsg = '' | |
| 2283 | + this.jiucuoShow =true | |
| 2284 | +}, | |
| 2285 | +jiuCheck(){ | |
| 2286 | + xiangedit({id:this.editId,isErrorCorrection:this.jiuMsg}).then(res=>{ | |
| 2287 | + this.jiucuoShow = false | |
| 2288 | + }) | |
| 2289 | +}, | |
| 2290 | + } | |
| 2291 | + } | |
| 2292 | +</script> | |
| 2293 | + | |
| 2294 | +<style scoped> | |
| 2295 | + .custom-tree-node { | |
| 2296 | + flex: 1; | |
| 2297 | + display: flex; | |
| 2298 | + align-items: center; | |
| 2299 | + justify-content: space-between; | |
| 2300 | + font-size: 14px; | |
| 2301 | + padding-right: 8px; | |
| 2302 | + } | |
| 2303 | + /deep/ .first-column-bg { | |
| 2304 | + background-color: #f4f4f5 !important; | |
| 2305 | + } | |
| 2306 | + | |
| 2307 | + .zhuti { | |
| 2308 | + padding: 0 20px 20px 20px; | |
| 2309 | + min-height: calc(100vh - 50px - 20px); | |
| 2310 | + background-color: #Fff; | |
| 2311 | + | |
| 2312 | + } | |
| 2313 | +::v-deep .el-form-item{ | |
| 2314 | + margin-bottom:16px; | |
| 2315 | +} | |
| 2316 | + /deep/ .el-form-item__content { | |
| 2317 | + line-height: 0; | |
| 2318 | + } | |
| 2319 | + | |
| 2320 | + .tableBtn { | |
| 2321 | + display: inline-block; | |
| 2322 | + margin-right: 10px; | |
| 2323 | + } | |
| 2324 | + | |
| 2325 | + .formSearch { | |
| 2326 | + display: flex; | |
| 2327 | + width: 100%; | |
| 2328 | + font-size: 14px; | |
| 2329 | + justify-content: space-between; | |
| 2330 | + padding-bottom: 10px; | |
| 2331 | + align-items: center; | |
| 2332 | + } | |
| 2333 | + | |
| 2334 | + .greens { | |
| 2335 | + color: #3F9B6A; | |
| 2336 | + } | |
| 2337 | + | |
| 2338 | + /deep/ .el-table__row { | |
| 2339 | + font-size: 14px; | |
| 2340 | + color:#000000e6; | |
| 2341 | + height:42px; | |
| 2342 | + } | |
| 2343 | + | |
| 2344 | + .fenye { | |
| 2345 | + margin-top: 20px; | |
| 2346 | + display: flex; | |
| 2347 | + justify-content: space-between; | |
| 2348 | + position: relative; | |
| 2349 | + } | |
| 2350 | + | |
| 2351 | + /deep/ .el-pagination.is-background .el-pager li:not(.disabled).active { | |
| 2352 | + background-color: #3F9B6A; | |
| 2353 | + } | |
| 2354 | + | |
| 2355 | + .el-row { | |
| 2356 | + margin-bottom: 20px; | |
| 2357 | + } | |
| 2358 | + | |
| 2359 | + :last-child { | |
| 2360 | + margin-bottom: 0; | |
| 2361 | + } | |
| 2362 | + | |
| 2363 | + .el-col { | |
| 2364 | + border-radius: 4px; | |
| 2365 | + } | |
| 2366 | + | |
| 2367 | + .bg-purple-dark { | |
| 2368 | + background: #99a9bf; | |
| 2369 | + } | |
| 2370 | + | |
| 2371 | + .bg-purple { | |
| 2372 | + /* background: #d3dce6; */ | |
| 2373 | + } | |
| 2374 | + | |
| 2375 | + .bg-purple-light { | |
| 2376 | + background: #e5e9f2; | |
| 2377 | + } | |
| 2378 | + | |
| 2379 | + .grid-content { | |
| 2380 | + border-radius: 4px; | |
| 2381 | + min-height: 36px; | |
| 2382 | + } | |
| 2383 | + | |
| 2384 | + .row-bg { | |
| 2385 | + padding: 10px 0; | |
| 2386 | + background-color: #f9fafc; | |
| 2387 | + } | |
| 2388 | + | |
| 2389 | + /deep/ .bg-purple[data-v-0e3fe4ec] { | |
| 2390 | + background: #fff; | |
| 2391 | + height: 50px; | |
| 2392 | + } | |
| 2393 | + | |
| 2394 | + /deep/ .el-form--label-top .el-form-item__label { | |
| 2395 | + padding: 0; | |
| 2396 | + } | |
| 2397 | + | |
| 2398 | + | |
| 2399 | + .pagination { | |
| 2400 | + text-align: right; | |
| 2401 | + line-height: 20px; | |
| 2402 | + } | |
| 2403 | + | |
| 2404 | + /deep/ .el-pagination__total { | |
| 2405 | + margin-top: 4px; | |
| 2406 | + } | |
| 2407 | + | |
| 2408 | +::v-deep .xiang_css{ | |
| 2409 | + margin-top:11vh !important; | |
| 2410 | + margin-left: 13%; | |
| 2411 | + max-height:600px; | |
| 2412 | + overflow-y: auto; | |
| 2413 | +} | |
| 2414 | + /deep/ .dialog_css { | |
| 2415 | + margin-top: 11vh; | |
| 2416 | + margin-left: 25%; | |
| 2417 | + padding: 0px; | |
| 2418 | + | |
| 2419 | + .el-dialog__title { | |
| 2420 | + font-size: 14px; | |
| 2421 | + color: #000000e6; | |
| 2422 | + } | |
| 2423 | + } | |
| 2424 | + | |
| 2425 | + /deep/.el-dialog__body { | |
| 2426 | + padding: 0px; | |
| 2427 | + } | |
| 2428 | + | |
| 2429 | + /deep/ .el-dialog__header { | |
| 2430 | + background-color: #fff; | |
| 2431 | + } | |
| 2432 | + | |
| 2433 | + /deep/.el-dialog__title { | |
| 2434 | + font-size: 14px; | |
| 2435 | + color: #000000e6; | |
| 2436 | + } | |
| 2437 | + | |
| 2438 | + .el-row { | |
| 2439 | + margin-bottom: 20px; | |
| 2440 | + | |
| 2441 | + &:last-child { | |
| 2442 | + margin-bottom: 0; | |
| 2443 | + } | |
| 2444 | + } | |
| 2445 | + | |
| 2446 | + /deep/ .avatar-uploader .el-upload { | |
| 2447 | + border: 1px dashed #d9d9d9; | |
| 2448 | + border-radius: 6px; | |
| 2449 | + cursor: pointer; | |
| 2450 | + position: relative; | |
| 2451 | + overflow: hidden; | |
| 2452 | + } | |
| 2453 | + | |
| 2454 | + .avatar-uploader .el-upload:hover { | |
| 2455 | + border-color: #409EFF; | |
| 2456 | + } | |
| 2457 | + | |
| 2458 | + .avatar-uploader-icon { | |
| 2459 | + font-size: 28px; | |
| 2460 | + color: #8c939d; | |
| 2461 | + width: 108px; | |
| 2462 | + height: 108px; | |
| 2463 | + line-height: 108px; | |
| 2464 | + /*text-align: center;*/ | |
| 2465 | + } | |
| 2466 | + | |
| 2467 | + .avatar { | |
| 2468 | + width: 108px; | |
| 2469 | + height: 108px; | |
| 2470 | + display: block; | |
| 2471 | + } | |
| 2472 | + | |
| 2473 | + ::v-deep .el-tabs__item.is-active { | |
| 2474 | + color: #3F9B6A; | |
| 2475 | + opacity: 1; | |
| 2476 | + } | |
| 2477 | + | |
| 2478 | + /deep/ .el-tabs__nav-wrap::after { | |
| 2479 | + background-color: #fff; | |
| 2480 | + } | |
| 2481 | + | |
| 2482 | + ::v-deep .el-tabs__item:hover { | |
| 2483 | + color: #3F9B6A; | |
| 2484 | + cursor: pointer; | |
| 2485 | + opacity: 1; | |
| 2486 | + } | |
| 2487 | + | |
| 2488 | + /deep/ .el-tabs__active-bar { | |
| 2489 | + background-color: #389865; | |
| 2490 | + } | |
| 2491 | + | |
| 2492 | + /deep/ .el-table_2_column_13 { | |
| 2493 | + font-weight: 100; | |
| 2494 | + } | |
| 2495 | +::v-deep .el-input__inner{ | |
| 2496 | + height:32px; | |
| 2497 | + line-height:32px; | |
| 2498 | +} | |
| 2499 | + ::v-deep .el-input__inner:focus { | |
| 2500 | + border: #3F9B6A 1px solid; | |
| 2501 | + } | |
| 2502 | + | |
| 2503 | + ::v-deep .el-input__inner:hover { | |
| 2504 | + border: #3F9B6A 1px solid; | |
| 2505 | + } | |
| 2506 | + | |
| 2507 | + ::v-deep .el-select .el-input.is-focus .el-input__inner { | |
| 2508 | + border-color: #3F9B6A | |
| 2509 | + } | |
| 2510 | + | |
| 2511 | + ::v-deep .el-form-item__label { | |
| 2512 | + font-weight: 100; | |
| 2513 | + font-size: 14px; | |
| 2514 | + color:#000000e6; | |
| 2515 | + } | |
| 2516 | + | |
| 2517 | + /* ::v-deep .el-steps .el-step__head.is-wait { | |
| 2518 | + background-color: red; /* 修改为你想要的颜色 */ | |
| 2519 | + | |
| 2520 | + /* 修改未进行步骤的描述文字颜色 */ | |
| 2521 | + ::v-deep .el-steps .el-step__description.is-wait { | |
| 2522 | + color: #999; | |
| 2523 | + /* 修改为你想要的颜色 */ | |
| 2524 | + } | |
| 2525 | + | |
| 2526 | + /* 修改未进行步骤的图标颜色 */ | |
| 2527 | + ::v-deep .el-steps .el-step__icon.is-text.is-wait { | |
| 2528 | + color: #999; | |
| 2529 | + /* 修改为你想要的颜色 */ | |
| 2530 | + } | |
| 2531 | + | |
| 2532 | + /* 修改未进行步骤的边框色 */ | |
| 2533 | + ::v-deep .el-steps .el-step__line.is-wait { | |
| 2534 | + border-color: #eee; | |
| 2535 | + /* 修改为你想要的颜色 */ | |
| 2536 | + } | |
| 2537 | + | |
| 2538 | + ::v-deep .el-steps .is-process .el-step__line { | |
| 2539 | + background-color: #3F9B6A; | |
| 2540 | + /* 修改线的颜色 */ | |
| 2541 | + } | |
| 2542 | + | |
| 2543 | + ::v-deep .el-steps .is-process .el-step__title { | |
| 2544 | + color: #fe7b6a; | |
| 2545 | + /* 修改进行中步骤的标题颜色 */ | |
| 2546 | + } | |
| 2547 | + | |
| 2548 | + ::v-deep .el-steps .is-process .el-step__icon { | |
| 2549 | + color: #fff; | |
| 2550 | + /* 修改进行中步骤的图标颜色 */ | |
| 2551 | + background: #3F9B6A; | |
| 2552 | + /* 修改进行中步骤图标的边框颜色 */ | |
| 2553 | + border: 0px; | |
| 2554 | + } | |
| 2555 | + | |
| 2556 | + ::v-deep .el-step__icon-inner { | |
| 2557 | + line-height: 0 | |
| 2558 | + } | |
| 2559 | + | |
| 2560 | + /* 线条长度 */ | |
| 2561 | + ::v-deep .el-step.is-vertical .el-step__line { | |
| 2562 | + top: 30px; | |
| 2563 | + height: 60px; | |
| 2564 | + } | |
| 2565 | + | |
| 2566 | + .fenlan { | |
| 2567 | + display: flex; | |
| 2568 | + } | |
| 2569 | + | |
| 2570 | + .souLei { | |
| 2571 | + border: 1px solid #d7d7d7; | |
| 2572 | + background-color: #fff; | |
| 2573 | + width:300px; | |
| 2574 | + margin-right:20px; | |
| 2575 | + | |
| 2576 | + } | |
| 2577 | +::v-deep .el-menu{ | |
| 2578 | + border-right:0px; | |
| 2579 | +} | |
| 2580 | +::v-deep .el-menu-item{ | |
| 2581 | + height:36px; | |
| 2582 | + line-height: 33px; | |
| 2583 | +} | |
| 2584 | + | |
| 2585 | +::v-deep .el-submenu__title{ | |
| 2586 | + height:36px; | |
| 2587 | + line-height: 33px; | |
| 2588 | + font-weight:600; | |
| 2589 | + border-radius:4px; | |
| 2590 | + margin:4px 0; | |
| 2591 | +} | |
| 2592 | +::v-deep .el-menu-item-group__title{ | |
| 2593 | + padding:0px | |
| 2594 | +} | |
| 2595 | + ::v-deep .fudan{ | |
| 2596 | + font-weight:600; | |
| 2597 | + border-radius:4px; | |
| 2598 | + padding-left:29px !important; | |
| 2599 | + margin:4px 0; | |
| 2600 | + } | |
| 2601 | + ::v-deep .chinddan{ | |
| 2602 | + margin:5px 0; | |
| 2603 | + } | |
| 2604 | +</style> | |
| 2605 | +<style lang="scss" scoped> | |
| 2606 | + ::v-deep .el-table tr:hover{ | |
| 2607 | + background-color: #F0F7F3 !important; | |
| 2608 | + } | |
| 2609 | + ::v-deep .souTabs { | |
| 2610 | + padding:0 15px 0 12px; | |
| 2611 | + .el-submenu{ | |
| 2612 | + padding:0px; | |
| 2613 | + } | |
| 2614 | + .el-menu-item:focus, .el-menu-item:hover{ | |
| 2615 | + background-color: #3F9B6A !important; | |
| 2616 | + } | |
| 2617 | + .el-menu-item:hover{ | |
| 2618 | + background-color:#3f9b6a1a !important; | |
| 2619 | + color:#000 !important; | |
| 2620 | + } | |
| 2621 | + .el-tabs--left .el-tabs__header.is-left { | |
| 2622 | + width: 100%; | |
| 2623 | + margin-right: 0px; | |
| 2624 | + } | |
| 2625 | + | |
| 2626 | + .el-tabs--left .el-tabs__item.is-left { | |
| 2627 | + text-align: center; | |
| 2628 | + } | |
| 2629 | + | |
| 2630 | + .el-tabs__item.is-active { | |
| 2631 | + background-color: #DEEBE2; | |
| 2632 | + } | |
| 2633 | + } | |
| 2634 | + | |
| 2635 | + ::v-deep .tableList { | |
| 2636 | + width: 100%; | |
| 2637 | + } | |
| 2638 | + ::v-deep .fenxi_css{ | |
| 2639 | + margin-top: 9vh !important; | |
| 2640 | + margin-left: 10%; | |
| 2641 | + .el-dialog__header{ | |
| 2642 | + padding:0; | |
| 2643 | + } | |
| 2644 | + .el-tabs--border-card { | |
| 2645 | + border: none; | |
| 2646 | + -webkit-box-shadow:none; | |
| 2647 | + box-shadow:none; | |
| 2648 | + .el-tabs__content{ | |
| 2649 | + border: 1px solid #E4E7ED; | |
| 2650 | + padding:0; | |
| 2651 | + } | |
| 2652 | + .el-tabs__header{ | |
| 2653 | + background-color: #fff; | |
| 2654 | + border-bottom:none; | |
| 2655 | + } | |
| 2656 | + .el-tabs__content{ | |
| 2657 | + border: none; | |
| 2658 | + } | |
| 2659 | + .el-tabs__header .el-tabs__item{ | |
| 2660 | + border: none; | |
| 2661 | + margin-right: 10px; | |
| 2662 | + background-color: #F2F2F2; | |
| 2663 | + font-size:12px; | |
| 2664 | + border-top-left-radius: 8px; | |
| 2665 | + border-top-right-radius: 8px; | |
| 2666 | + padding:0 15px; | |
| 2667 | + } | |
| 2668 | + .el-tabs__header .el-tabs__item.is-active{ | |
| 2669 | + color:#fff; | |
| 2670 | + background-color: #3F9B6A; | |
| 2671 | + } | |
| 2672 | + .el-tabs__header .el-tabs__item:not(.is-disabled):hover{ | |
| 2673 | + color:#3F9B6A; | |
| 2674 | + } | |
| 2675 | + } | |
| 2676 | + | |
| 2677 | + } | |
| 2678 | + ::v-deep .xiaoguo_css{ | |
| 2679 | + margin-top: 30vh !important; | |
| 2680 | + margin-left: 25%; | |
| 2681 | + .el-dialog__header{ | |
| 2682 | + padding:0; | |
| 2683 | + } | |
| 2684 | + .el-tabs--border-card { | |
| 2685 | + border: none; | |
| 2686 | + -webkit-box-shadow:none; | |
| 2687 | + box-shadow:none; | |
| 2688 | + .el-tabs__content{ | |
| 2689 | + border: 1px solid #E4E7ED; | |
| 2690 | + padding:0; | |
| 2691 | + } | |
| 2692 | + .el-tabs__header{ | |
| 2693 | + background-color: #fff; | |
| 2694 | + border-bottom:none; | |
| 2695 | + } | |
| 2696 | + .el-tabs__content{ | |
| 2697 | + border: none; | |
| 2698 | + } | |
| 2699 | + .el-tabs__header .el-tabs__item{ | |
| 2700 | + border: none; | |
| 2701 | + margin-right: 10px; | |
| 2702 | + background-color: #F2F2F2; | |
| 2703 | + font-size:12px; | |
| 2704 | + border-top-left-radius: 8px; | |
| 2705 | + border-top-right-radius: 8px; | |
| 2706 | + padding:0 15px; | |
| 2707 | + } | |
| 2708 | + .el-tabs__header .el-tabs__item.is-active{ | |
| 2709 | + color:#fff; | |
| 2710 | + background-color: #3F9B6A; | |
| 2711 | + } | |
| 2712 | + .el-tabs__header .el-tabs__item:not(.is-disabled):hover{ | |
| 2713 | + color:#3F9B6A; | |
| 2714 | + } | |
| 2715 | + } | |
| 2716 | + } | |
| 2717 | + ::v-deep .demo-input-suffix { | |
| 2718 | + display: flex; | |
| 2719 | + margin-right: 20px; | |
| 2720 | + width: 83%; | |
| 2721 | + | |
| 2722 | + .el-input__inner{ | |
| 2723 | + height:32px; | |
| 2724 | + } | |
| 2725 | + } | |
| 2726 | + ::v-deep .el-input__icon{ | |
| 2727 | + line-height:25px; | |
| 2728 | + } | |
| 2729 | + ::v-deep .el-input--mini .el-input__icon{ | |
| 2730 | + line-height:33px; | |
| 2731 | + } | |
| 2732 | + | |
| 2733 | + ::v-deep .buttonHover:hover{ | |
| 2734 | + color:#3f9b6a !important; | |
| 2735 | + border-color: #c5e1d2 !important; | |
| 2736 | + background-color: #ecf5f0 !important; | |
| 2737 | + outline: none; | |
| 2738 | + } | |
| 2739 | + ::v-deep .DelBtnHover:hover{ | |
| 2740 | + color:#fff !important; | |
| 2741 | + border-color: rgb(226, 78, 90) !important; | |
| 2742 | + background-color: rgb(226, 78, 90) !important; | |
| 2743 | + outline: none; | |
| 2744 | + } | |
| 2745 | +::v-deep .el-menu-item.is-active { | |
| 2746 | + background-color: #3F9B6A !important; | |
| 2747 | +} | |
| 2748 | +::v-deep .jindutiao{ | |
| 2749 | + display:flex; | |
| 2750 | + align-items:center; | |
| 2751 | + margin-bottom:15px; | |
| 2752 | + .el-progress-bar__outer{ | |
| 2753 | + border-radius:0px; | |
| 2754 | + } | |
| 2755 | + .el-progress-bar__inner{ | |
| 2756 | + border-radius:0px; | |
| 2757 | + } | |
| 2758 | +} | |
| 2759 | + | |
| 2760 | +</style> | ... | ... |
yanshouban/src/views/atmosphere/atmosphereSp.vue
| ... | ... | @@ -61,7 +61,7 @@ |
| 61 | 61 | </el-table-column> |
| 62 | 62 | <el-table-column label="创建时间" prop="createDate" min-width="250" > |
| 63 | 63 | </el-table-column> |
| 64 | - <el-table-column prop="createUser" label="上传人员" min-width="80"> | |
| 64 | + <el-table-column prop="auditReminderTime" label="审核提醒时间" width="200"> | |
| 65 | 65 | |
| 66 | 66 | </el-table-column> |
| 67 | 67 | <el-table-column label="操作" min-width="200"> | ... | ... |
yanshouban/src/views/business/autd/index.vue
| ... | ... | @@ -360,7 +360,8 @@ export default { |
| 360 | 360 | contractStatus: '', //合同状态 |
| 361 | 361 | dataStatus: '1', //数据状态(1.使用中 2.往期合同 3.已终止) |
| 362 | 362 | }, //合同字段 |
| 363 | - hefuData:[] | |
| 363 | + hefuData:[], | |
| 364 | + hemiList:['earnestMoney','contractAmount','lessorName','telephone','bankAccount','tenantName','tenantTelephone','tenantBankAccount'], | |
| 364 | 365 | } |
| 365 | 366 | }, |
| 366 | 367 | mounted () { |
| ... | ... | @@ -499,7 +500,8 @@ export default { |
| 499 | 500 | if(this.hefuData.length !=0){ |
| 500 | 501 | this.heForm.appendicesContract = JSON.stringify(this.hefuData[0]) |
| 501 | 502 | } |
| 502 | - await contractAdd(this.heForm) | |
| 503 | + let heinfo = this.$decryptall(this.heForm,this.hemiList) | |
| 504 | + await contractAdd(heinfo) | |
| 503 | 505 | this.hetongBox = false |
| 504 | 506 | }, |
| 505 | 507 | hefuRemove() { | ... | ... |
yanshouban/src/views/business/businessList/index.vue
| ... | ... | @@ -802,7 +802,8 @@ export default { |
| 802 | 802 | }, |
| 803 | 803 | business:[], |
| 804 | 804 | plan_Time:[], |
| 805 | - miList:['shopPhone','shopPassword','idCardNum','emailAddress','shopAdress','legalRepresentative','chargePersonPhone','emailAddress'] | |
| 805 | + miList:['shopPhone','shopPassword','idCardNum','emailAddress','shopAdress','legalRepresentative','chargePersonPhone','emailAddress','chargePersonName'], | |
| 806 | + dataIntegrity:'' | |
| 806 | 807 | } |
| 807 | 808 | }, |
| 808 | 809 | // 监听属性 类似于data概念 |
| ... | ... | @@ -967,9 +968,8 @@ export default { |
| 967 | 968 | }) |
| 968 | 969 | } else { |
| 969 | 970 | let newinfo = this.$decryptall(this.ruleForm,this.miList) |
| 970 | - let arr = [newinfo.shopPhone,newinfo.shopPassword,newinfo.idCardNum,newinfo.emailAddress,newinfo.shopAdress,newinfo.legalRepresentative,newinfo.chargePersonPhone] | |
| 971 | - arr = arr.join(',') | |
| 972 | - newinfo.dataIntegrity = this.$encrypt(arr) | |
| 971 | + | |
| 972 | + newinfo.dataIntegrity = this.dataIntegrity | |
| 973 | 973 | businessListUpdate(newinfo).then(res => { |
| 974 | 974 | |
| 975 | 975 | if (res.code === '') { |
| ... | ... | @@ -1009,9 +1009,8 @@ export default { |
| 1009 | 1009 | this.ruleForm.shopPhone = this.$decrypt(this.ruleForm.shopPhone) |
| 1010 | 1010 | this.ruleForm.shopPassword = this.$decrypt(this.ruleForm.shopPassword) |
| 1011 | 1011 | this.ruleForm.shopAdress = this.$decrypt(this.ruleForm.shopAdress) |
| 1012 | - this.ruleForm.dataIntegrity = this.$decrypt(this.ruleForm.dataIntegrity) | |
| 1013 | 1012 | this.ruleForm.chargePersonPhone = this.$decrypt(this.ruleForm.chargePersonPhone) |
| 1014 | - | |
| 1013 | + this.ruleForm.chargePersonName = this.$decrypt(this.ruleForm.chargePersonName) | |
| 1015 | 1014 | } |
| 1016 | 1015 | }, |
| 1017 | 1016 | // 编辑 |
| ... | ... | @@ -1031,10 +1030,14 @@ export default { |
| 1031 | 1030 | this.ruleForm.shopPhone = this.$decrypt(this.ruleForm.shopPhone) |
| 1032 | 1031 | this.ruleForm.shopPassword = this.$decrypt(this.ruleForm.shopPassword) |
| 1033 | 1032 | this.ruleForm.shopAdress = this.$decrypt(this.ruleForm.shopAdress) |
| 1034 | - this.ruleForm.dataIntegrity = this.$decrypt(this.ruleForm.dataIntegrity) | |
| 1035 | 1033 | this.ruleForm.chargePersonPhone = this.$decrypt(this.ruleForm.chargePersonPhone) |
| 1034 | + this.ruleForm.chargePersonName = this.$decrypt(this.ruleForm.chargePersonName) | |
| 1036 | 1035 | |
| 1037 | - | |
| 1036 | +let c1 =JSON.parse((JSON.stringify(this.ruleForm))) | |
| 1037 | + let newinfo = this.$decryptall(c1,this.miList) | |
| 1038 | + let arr = [newinfo.shopPhone,newinfo.shopPassword,newinfo.idCardNum,newinfo.emailAddress,newinfo.shopAdress,newinfo.legalRepresentative,newinfo.chargePersonPhone,newinfo.chargePersonName] | |
| 1039 | + arr = arr.join(',') | |
| 1040 | + this.dataIntegrity = this.$encrypt(arr) | |
| 1038 | 1041 | }, |
| 1039 | 1042 | // 删除 |
| 1040 | 1043 | async del (row) { |
| ... | ... | @@ -1104,6 +1107,7 @@ export default { |
| 1104 | 1107 | item.shopAdress = this.$decrypt(item.shopAdress) |
| 1105 | 1108 | item.legalRepresentative = this.$decrypt(item.legalRepresentative) |
| 1106 | 1109 | item.chargePersonPhone = this.$decrypt(item.chargePersonPhone) |
| 1110 | + item.chargePersonName = this.$decrypt(item.chargePersonName) | |
| 1107 | 1111 | }) |
| 1108 | 1112 | |
| 1109 | 1113 | }, | ... | ... |
yanshouban/src/views/customer/icManagement/index.vue
| ... | ... | @@ -459,7 +459,8 @@ |
| 459 | 459 | trigger: 'change' |
| 460 | 460 | }, ], |
| 461 | 461 | }, |
| 462 | - miList:['unifiedSocialCreditCode','legalRepresentative','address','emailAddress','contactName','contactPhone'] | |
| 462 | + miList:['unifiedSocialCreditCode','legalRepresentative','address','emailAddress','contactName','contactPhone'], | |
| 463 | + dataIntegrity:'' | |
| 463 | 464 | } |
| 464 | 465 | }, |
| 465 | 466 | |
| ... | ... | @@ -521,9 +522,7 @@ |
| 521 | 522 | this.secondData.businessEndDate = this.businessStartDate[1] |
| 522 | 523 | } |
| 523 | 524 | let newinfo = this.$decryptall(this.secondData,this.miList) |
| 524 | - let arr = [newinfo.unifiedSocialCreditCode,newinfo.legalRepresentative,newinfo.address,newinfo.emailAddress,newinfo.contactName,newinfo.contactPhone] | |
| 525 | - arr = arr.join(',') | |
| 526 | - newinfo.dataIntegrity = this.$encrypt(arr) | |
| 525 | + newinfo.dataIntegrity = this.dataIntegrity | |
| 527 | 526 | await icManEdit(newinfo); |
| 528 | 527 | this.detbox = false |
| 529 | 528 | this.getAll(); |
| ... | ... | @@ -537,14 +536,23 @@ |
| 537 | 536 | bianjilist(item) { |
| 538 | 537 | this.detbox = true; |
| 539 | 538 | this.secondData = item; |
| 539 | + let c1 =JSON.parse((JSON.stringify(this.secondData))) | |
| 540 | 540 | this.businessStartDate[0] = item.businessStartDate |
| 541 | 541 | this.businessStartDate[1] = item.businessEndDate |
| 542 | 542 | this.msgid = item.id; |
| 543 | + let newinfo = this.$decryptall(c1,this.miList) | |
| 544 | + let arr = [newinfo.contactPhone,newinfo.idCardNumber,newinfo.unifiedSocialCreditCode,newinfo.legalRepresentative,newinfo.address,newinfo.emailAddress] | |
| 545 | + arr = arr.join(',') | |
| 546 | + this.dataIntegrity = this.$encrypt(arr) | |
| 543 | 547 | if (this.edit) { |
| 544 | 548 | this.edit = false; |
| 545 | 549 | } |
| 546 | 550 | }, |
| 547 | 551 | tijiao(item,val){ |
| 552 | + let c1 =JSON.parse((JSON.stringify(item))) | |
| 553 | + let newinfo = this.$decryptall(c1,this.miList) | |
| 554 | + let arr = [newinfo.contactPhone,newinfo.idCardNumber,newinfo.unifiedSocialCreditCode,newinfo.legalRepresentative,newinfo.address,newinfo.emailAddress] | |
| 555 | + arr = arr.join(',') | |
| 548 | 556 | if(val == 2){ |
| 549 | 557 | const h = this.$createElement; |
| 550 | 558 | this.$msgbox({ |
| ... | ... | @@ -559,7 +567,7 @@ |
| 559 | 567 | customClass:'oe-dialog-btn', |
| 560 | 568 | beforeClose: (action, instance, done) => { |
| 561 | 569 | if (action === 'confirm') { |
| 562 | - icManEdit({id: item.id,auditStatus:val}).then(res=>{ | |
| 570 | + icManEdit({id: item.id,auditStatus:val,dataIntegrity:newinfo.dataIntegrity}).then(res=>{ | |
| 563 | 571 | this.$message({ |
| 564 | 572 | message: '提交成功', |
| 565 | 573 | type: 'success' |
| ... | ... | @@ -586,7 +594,7 @@ |
| 586 | 594 | customClass:'oe-dialog-btn', |
| 587 | 595 | beforeClose: (action, instance, done) => { |
| 588 | 596 | if (action === 'confirm') { |
| 589 | - icManEdit({id: item.id,auditStatus:val}).then(res=>{ | |
| 597 | + icManEdit({id: item.id,auditStatus:val,dataIntegrity:newinfo.dataIntegrity}).then(res=>{ | |
| 590 | 598 | this.$message({ |
| 591 | 599 | message: '撤回成功', |
| 592 | 600 | type: 'success' |
| ... | ... | @@ -617,7 +625,9 @@ |
| 617 | 625 | }, |
| 618 | 626 | // 查询 |
| 619 | 627 | async onSubmit() { |
| 620 | - const res = await icManAll(this.formSel) | |
| 628 | + let c1 =JSON.parse((JSON.stringify(this.formSel))) | |
| 629 | + c1.contactName = this.$encrypt(c1.contactName) | |
| 630 | + const res = await icManAll(c1) | |
| 621 | 631 | this.tableData = res.data.content |
| 622 | 632 | this.total = res.data.content.length |
| 623 | 633 | this.tableData.map(res=>{ |
| ... | ... | @@ -756,6 +766,10 @@ let newinfo = this.$decryptall(this.ruleForm,this.miList) |
| 756 | 766 | icManDel({ |
| 757 | 767 | id: item.id |
| 758 | 768 | }).then(res => { |
| 769 | + this.$message({ | |
| 770 | + message: '删除成功', | |
| 771 | + type: 'success' | |
| 772 | + }) | |
| 759 | 773 | this.getAll() |
| 760 | 774 | done(); |
| 761 | 775 | }) | ... | ... |
yanshouban/src/views/customer/icReview/index.vue
| ... | ... | @@ -840,7 +840,9 @@ export default { |
| 840 | 840 | }, |
| 841 | 841 | // 查询 |
| 842 | 842 | async onSubmit() { |
| 843 | - const res = await icManAll(this.formSel) | |
| 843 | + let c1 =JSON.parse((JSON.stringify(this.formSel))) | |
| 844 | + c1.contactName = this.$encrypt(c1.contactName) | |
| 845 | + const res = await icManAll(c1) | |
| 844 | 846 | this.tableData = res.data.content |
| 845 | 847 | this.total = res.data.content.length |
| 846 | 848 | this.tableData.map(res=>{ | ... | ... |
yanshouban/src/views/customer/rsaManagement/index.vue
| ... | ... | @@ -763,7 +763,8 @@ |
| 763 | 763 | pageNumber:1, |
| 764 | 764 | pageSize:10, |
| 765 | 765 | }, |
| 766 | - miList:['contactPhone','idCardNumber','unifiedSocialCreditCode','legalRepresentative','address','emailAddress'] | |
| 766 | + miList:['contactPhone','idCardNumber','unifiedSocialCreditCode','legalRepresentative','address','emailAddress'], | |
| 767 | + dataIntegrity:'' | |
| 767 | 768 | } |
| 768 | 769 | }, |
| 769 | 770 | |
| ... | ... | @@ -832,9 +833,7 @@ |
| 832 | 833 | this.secondData.rentalPeriodEndTime = this.rentalPeriodTime[1] |
| 833 | 834 | } |
| 834 | 835 | let newinfo = this.$decryptall(this.secondData,this.miList) |
| 835 | - let arr = [newinfo.contactPhone,newinfo.idCardNumber,newinfo.unifiedSocialCreditCode,newinfo.legalRepresentative,newinfo.address,newinfo.emailAddress] | |
| 836 | - arr = arr.join(',') | |
| 837 | - newinfo.dataIntegrity = this.$encrypt(arr) | |
| 836 | + newinfo.dataIntegrity = this.dataIntegrity | |
| 838 | 837 | const res = await rsaManEdit(newinfo) |
| 839 | 838 | this.detbox = false; |
| 840 | 839 | this.getAll(); |
| ... | ... | @@ -848,24 +847,37 @@ let newinfo = this.$decryptall(this.secondData,this.miList) |
| 848 | 847 | // 编辑 |
| 849 | 848 | bianjilist(item) { |
| 850 | 849 | this.secondData = item |
| 850 | + let c1 =JSON.parse((JSON.stringify(this.secondData))) | |
| 851 | 851 | this.$set(this.idCardValidStart, 0, item.idCardValidStart) |
| 852 | 852 | this.$set(this.idCardValidStart, 1, item.idCardValidEnd) |
| 853 | 853 | this.$set(this.businessStartTime, 0, item.businessStartTime) |
| 854 | 854 | this.$set(this.businessStartTime, 1, item.businessEndTime) |
| 855 | 855 | this.$set(this.rentalPeriodTime, 0, item.rentalPeriodStartTime) |
| 856 | 856 | this.$set(this.rentalPeriodTime, 1, item.rentalPeriodEndTime) |
| 857 | - this.msgid = item.id; | |
| 857 | + this.msgid = item.id | |
| 858 | + let newinfo = this.$decryptall(c1,this.miList) | |
| 859 | + let arr = [newinfo.contactPhone,newinfo.idCardNumber,newinfo.unifiedSocialCreditCode,newinfo.legalRepresentative,newinfo.address,newinfo.emailAddress] | |
| 860 | + arr = arr.join(',') | |
| 861 | + this.dataIntegrity = this.$encrypt(arr) | |
| 858 | 862 | this.detbox = true |
| 859 | 863 | if (this.edit) { |
| 860 | 864 | this.edit = false; |
| 861 | 865 | } |
| 862 | 866 | }, |
| 863 | 867 | async chehui(item){ |
| 864 | - await rsaManEdit({id:item.id,auditStatus:'1'}) | |
| 868 | + let c1 =JSON.parse((JSON.stringify(item))) | |
| 869 | + let newinfo = this.$decryptall(c1,this.miList) | |
| 870 | + let arr = [newinfo.contactPhone,newinfo.idCardNumber,newinfo.unifiedSocialCreditCode,newinfo.legalRepresentative,newinfo.address,newinfo.emailAddress] | |
| 871 | + arr = arr.join(',') | |
| 872 | + await rsaManEdit({id:item.id,auditStatus:'1',dataIntegrity:newinfo.dataIntegrity}) | |
| 865 | 873 | this.getAll() |
| 866 | 874 | }, |
| 867 | 875 | async getshen(item){ |
| 868 | - await rsaManEdit({id:item.id,auditStatus:'2'}) | |
| 876 | + let c1 =JSON.parse((JSON.stringify(item))) | |
| 877 | + let newinfo = this.$decryptall(c1,this.miList) | |
| 878 | + let arr = [newinfo.contactPhone,newinfo.idCardNumber,newinfo.unifiedSocialCreditCode,newinfo.legalRepresentative,newinfo.address,newinfo.emailAddress] | |
| 879 | + arr = arr.join(',') | |
| 880 | + await rsaManEdit({id:item.id,auditStatus:'2',dataIntegrity:newinfo.dataIntegrity}) | |
| 869 | 881 | this.getAll() |
| 870 | 882 | }, |
| 871 | 883 | ... | ... |
yanshouban/src/views/customer/rsaReview/index.vue
| ... | ... | @@ -893,7 +893,9 @@ export default { |
| 893 | 893 | auditStatus:'' |
| 894 | 894 | }, |
| 895 | 895 | shenheData:[], |
| 896 | - rentalPeriodTime:[] | |
| 896 | + rentalPeriodTime:[], | |
| 897 | + dataIntegrity:'', | |
| 898 | + miList:['contactPhone','idCardNumber','unifiedSocialCreditCode','legalRepresentative','address','emailAddress'], | |
| 897 | 899 | }; |
| 898 | 900 | }, |
| 899 | 901 | |
| ... | ... | @@ -975,12 +977,17 @@ export default { |
| 975 | 977 | this.idCardValidStart =[] |
| 976 | 978 | this.businessStartTime =[] |
| 977 | 979 | this.secondData = item |
| 980 | + let c1 =JSON.parse((JSON.stringify(item))) | |
| 978 | 981 | this.$set(this.idCardValidStart, 0, item.idCardValidStart) |
| 979 | 982 | this.$set(this.idCardValidStart, 1, item.idCardValidEnd) |
| 980 | 983 | this.$set(this.businessStartTime, 0, item.businessStartTime) |
| 981 | 984 | this.$set(this.businessStartTime, 1, item.businessEndTime) |
| 982 | 985 | this.$set(this.rentalPeriodTime, 0, item.rentalPeriodStartTime) |
| 983 | 986 | this.$set(this.rentalPeriodTime, 1, item.rentalPeriodEndTime) |
| 987 | + let newinfo = this.$decryptall(c1,this.miList) | |
| 988 | + let arr = [newinfo.contactPhone,newinfo.idCardNumber,newinfo.unifiedSocialCreditCode,newinfo.legalRepresentative,newinfo.address,newinfo.emailAddress] | |
| 989 | + arr = arr.join(',') | |
| 990 | + this.dataIntegrity = this.$encrypt(arr) | |
| 984 | 991 | this.actSpye = true |
| 985 | 992 | }, |
| 986 | 993 | |
| ... | ... | @@ -1034,9 +1041,9 @@ export default { |
| 1034 | 1041 | }, |
| 1035 | 1042 | async OAshen(){ |
| 1036 | 1043 | if(this.liuYe == '1'){ |
| 1037 | - await rsaManEdit({id:this.secondData.id,auditStatus:'3'}) | |
| 1044 | + await rsaManEdit({id:this.secondData.id,auditStatus:'3',dataIntegrity:this.dataIntegrity}) | |
| 1038 | 1045 | }else{ |
| 1039 | - await rsaManEdit({id:this.secondData.id,auditStatus:'4'}) | |
| 1046 | + await rsaManEdit({id:this.secondData.id,auditStatus:'4',dataIntegrity:this.dataIntegrity}) | |
| 1040 | 1047 | } |
| 1041 | 1048 | this.Liunie = false |
| 1042 | 1049 | this.actSpye = false | ... | ... |
yanshouban/src/views/customer/yixiang/index.vue
| ... | ... | @@ -42,39 +42,80 @@ |
| 42 | 42 | @click="addbuss">新增</el-button> |
| 43 | 43 | </div> |
| 44 | 44 | <!-- 表格 --> |
| 45 | - <el-table :data=" | |
| 46 | - tableData.slice( | |
| 47 | - (currentPage - 1) * pageSize, | |
| 48 | - currentPage * pageSize | |
| 49 | - ) | |
| 50 | - " :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"> | |
| 51 | - <el-table-column label="序号" min-width="80"> | |
| 52 | - <template slot-scope="scope"> | |
| 53 | - {{scope.$index+1}} | |
| 54 | - </template> | |
| 55 | - </el-table-column> | |
| 56 | - <el-table-column label="意向客户名称" prop="intentCustomerName" min-width="150" /> | |
| 57 | - <el-table-column label="意向资源名称" prop="intentionalStoreName" min-width="150" /> | |
| 58 | - <el-table-column label="编号" prop="id" min-width="150" /> | |
| 59 | - <el-table-column label="意向资源类型" prop="intentionalBusinessType" min-width="150" /> | |
| 60 | - <el-table-column label="开始日期" prop="businessStartTime" min-width="200" /> | |
| 61 | - <el-table-column label="意向租期" prop="leaseTerm" min-width="150" /> | |
| 62 | - <el-table-column label="意向租金单价(元/平方)" prop="rent" min-width="250" /> | |
| 63 | - | |
| 64 | - <el-table-column label="操作" min-width="350"> | |
| 65 | - <template slot-scope="scope"> | |
| 66 | - <div class="tableBtn greens" @click="handleEditForm(scope.row)"> | |
| 67 | - 查看 | |
| 68 | - </div> | |
| 69 | - <div class="tableBtn greens" @click="bianjilist(scope.row)" > | |
| 70 | - 编辑 | |
| 71 | - </div> | |
| 72 | - <div class="tableBtn greens" @click="pipei(scope.row)" > | |
| 73 | - 一键匹配 | |
| 74 | - </div> | |
| 75 | - </template> | |
| 76 | - </el-table-column> | |
| 77 | - </el-table> | |
| 45 | + | |
| 46 | + <div>招商意向信息列表</div> | |
| 47 | + <el-table :data=" | |
| 48 | + tableData.slice( | |
| 49 | + (currentPage - 1) * pageSize, | |
| 50 | + currentPage * pageSize | |
| 51 | + ) | |
| 52 | + " :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"> | |
| 53 | + <el-table-column label="序号" min-width="80"> | |
| 54 | + <template slot-scope="scope"> | |
| 55 | + {{scope.$index+1}} | |
| 56 | + </template> | |
| 57 | + </el-table-column> | |
| 58 | + <el-table-column label="意向客户名称" prop="intentCustomerName" min-width="150" /> | |
| 59 | + <el-table-column label="意向资源名称" prop="intentionalStoreName" min-width="150" /> | |
| 60 | + <el-table-column label="编号" prop="id" min-width="150" /> | |
| 61 | + <el-table-column label="意向资源类型" prop="intentionalBusinessType" min-width="150" /> | |
| 62 | + <el-table-column label="开始日期" prop="businessStartTime" min-width="200" /> | |
| 63 | + <el-table-column label="意向租期" prop="leaseTerm" min-width="150" /> | |
| 64 | + <el-table-column label="意向租金单价(元/平方)" prop="rent" min-width="250" /> | |
| 65 | + | |
| 66 | + <el-table-column label="操作" min-width="350"> | |
| 67 | + <template slot-scope="scope"> | |
| 68 | + <div class="tableBtn greens" @click="handleEditForm(scope.row)"> | |
| 69 | + 查看 | |
| 70 | + </div> | |
| 71 | + <div class="tableBtn greens" @click="bianjilist(scope.row)" > | |
| 72 | + 编辑 | |
| 73 | + </div> | |
| 74 | + <div class="tableBtn greens" @click="pipei(scope.row)" > | |
| 75 | + 一键匹配 | |
| 76 | + </div> | |
| 77 | + </template> | |
| 78 | + </el-table-column> | |
| 79 | + </el-table> | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + <div style="padding: 20px 0;">用户信誉库列表</div> | |
| 84 | + <el-table :data=" | |
| 85 | + tableData.slice( | |
| 86 | + (currentPage - 1) * pageSize, | |
| 87 | + currentPage * pageSize | |
| 88 | + ) | |
| 89 | + " :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"> | |
| 90 | + <el-table-column label="序号" min-width="100"> | |
| 91 | + <template slot-scope="scope"> | |
| 92 | + {{scope.$index+1}} | |
| 93 | + </template> | |
| 94 | + </el-table-column> | |
| 95 | + <el-table-column label="意向客户名称" prop="intentCustomerName" min-width="150" /> | |
| 96 | + <el-table-column label="意向资源名称" prop="intentionalStoreName" min-width="150" /> | |
| 97 | + <el-table-column label="当前评级" prop="customerLevel" min-width="120"> | |
| 98 | + </el-table-column> | |
| 99 | + <el-table-column label="更新时间" prop="temporaryPavingPlanName" min-width="200" /> | |
| 100 | + <el-table-column label="操作" min-width="200"> | |
| 101 | + <template slot-scope="scope"> | |
| 102 | + <div class="tableBtn greens" @click="handleEditForm(scope.row)"> | |
| 103 | + 详情 | |
| 104 | + </div> | |
| 105 | + <div class="tableBtn greens" @click="pingji(scope.row)"> | |
| 106 | + 评级 | |
| 107 | + </div> | |
| 108 | + | |
| 109 | + | |
| 110 | + </template> | |
| 111 | + </el-table-column> | |
| 112 | + </el-table> | |
| 113 | + | |
| 114 | +<div class="fenye"> | |
| 115 | + <el-pagination class="pagination" :hide-on-single-page="flag" background small :current-page="currentPage" | |
| 116 | + layout="prev, pager, next,total" :total="total" @size-change="handleSizeChange" | |
| 117 | + @current-change="handleCurrentChange" /> | |
| 118 | + </div> | |
| 78 | 119 | <!-- 详情框 :visible.sync="detbox" --> |
| 79 | 120 | <!-- <div v-show="detbox" class="dialog_css_Xq " style="padding: 0;width:85%"> --> |
| 80 | 121 | <el-dialog :visible.sync="detbox" custom-class="tongyong_css" style="padding: 0" width="55%" center |
| ... | ... | @@ -613,13 +654,50 @@ |
| 613 | 654 | </div> |
| 614 | 655 | </el-dialog> --> |
| 615 | 656 | </el-dialog> |
| 616 | - <div class="fenye"> | |
| 617 | - <el-pagination class="pagination" :hide-on-single-page="flag" background small :current-page="currentPage" | |
| 618 | - layout="prev, pager, next,total" :total="total" @size-change="handleSizeChange" | |
| 619 | - @current-change="handleCurrentChange" /> | |
| 620 | - </div> | |
| 657 | + | |
| 621 | 658 | </div> |
| 622 | 659 | </div> |
| 660 | + <el-dialog :visible.sync="peiPingShow" custom-class="tongyong_css" style="padding: 0" width="65%" center | |
| 661 | + :close-on-click-modal="false" class="dialog_css_Xq" :show-close="false"> | |
| 662 | + <div style=" | |
| 663 | + background-color: #fafafa; | |
| 664 | + border: 1px solid #eaeaea; | |
| 665 | + height: 42px; | |
| 666 | + width: 100%; | |
| 667 | + margin-bottom: 20px; | |
| 668 | + padding: 0 20px; | |
| 669 | + line-height: 42px; | |
| 670 | + "> | |
| 671 | + 评级 | |
| 672 | + </div> | |
| 673 | + | |
| 674 | + | |
| 675 | + | |
| 676 | + <div style="padding: 0 20px 20px 20px"> | |
| 677 | + <el-form ref="peiPing" :model="peiPing" label-width="130px"> | |
| 678 | + | |
| 679 | + | |
| 680 | + <el-form-item label="评级" prop="isLegalPerson"> | |
| 681 | + <el-select v-model="peiPing.customerLevel" placeholder="请选择" style="width:100%"> | |
| 682 | + <el-option label="A" value="A" /> | |
| 683 | + <el-option label="B" value="B" /> | |
| 684 | + <el-option label="C" value="C" /> | |
| 685 | + </el-select> | |
| 686 | + </el-form-item> | |
| 687 | + | |
| 688 | + </el-form> | |
| 689 | + | |
| 690 | + | |
| 691 | + </div> | |
| 692 | + <span slot="footer" class="dialog-footer"> | |
| 693 | + <el-button class="buttonHover" style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" | |
| 694 | + @click="peiPingShow=false">取 消</el-button> | |
| 695 | + <el-button style="background-color: #3F9B6A;color: #fff" @click="peiPingChenk">确 | |
| 696 | + 定</el-button> | |
| 697 | + </span> | |
| 698 | + | |
| 699 | + | |
| 700 | + </el-dialog> | |
| 623 | 701 | </div> |
| 624 | 702 | </template> |
| 625 | 703 | |
| ... | ... | @@ -735,7 +813,14 @@ |
| 735 | 813 | }, |
| 736 | 814 | pageNumber:1, |
| 737 | 815 | pageSize:10, |
| 738 | - } | |
| 816 | + }, | |
| 817 | + miList:['contactPhone','idCardNumber','unifiedSocialCreditCode','legalRepresentative','address','emailAddress'], | |
| 818 | + dataIntegrity:'', | |
| 819 | + peiPing:{ | |
| 820 | + customerLevel:'', | |
| 821 | + id:'' | |
| 822 | + }, | |
| 823 | + peiPingShow:false, | |
| 739 | 824 | } |
| 740 | 825 | }, |
| 741 | 826 | |
| ... | ... | @@ -896,6 +981,7 @@ async getshen(item){ |
| 896 | 981 | this.ggXin = true; |
| 897 | 982 | this.getAll(); |
| 898 | 983 | }, |
| 984 | + | |
| 899 | 985 | // 新增确定 |
| 900 | 986 | async addCheck() { |
| 901 | 987 | if (this.idCardValidStart.length != 0) { |
| ... | ... | @@ -1041,6 +1127,22 @@ async getshen(item){ |
| 1041 | 1127 | }, |
| 1042 | 1128 | this.pipData = [] |
| 1043 | 1129 | }, |
| 1130 | + pingji(item){ | |
| 1131 | + this.peiPing.id = item.id | |
| 1132 | + this.peiPing.customerLevel = item.customerLevel | |
| 1133 | + let c1 =JSON.parse((JSON.stringify(item))) | |
| 1134 | + let newinfo = this.$decryptall(c1,this.miList) | |
| 1135 | + let arr = [newinfo.contactPhone,newinfo.idCardNumber,newinfo.unifiedSocialCreditCode,newinfo.legalRepresentative,newinfo.address,newinfo.emailAddress] | |
| 1136 | + arr = arr.join(',') | |
| 1137 | + this.peiPing.dataIntegrity = this.$encrypt(arr) | |
| 1138 | + this.peiPingShow = true | |
| 1139 | + }, | |
| 1140 | + async peiPingChenk(){ | |
| 1141 | + await rsaManEdit(this.peiPing) | |
| 1142 | + this.getAll() | |
| 1143 | + this.peiPingShow = false | |
| 1144 | + | |
| 1145 | + }, | |
| 1044 | 1146 | } |
| 1045 | 1147 | } |
| 1046 | 1148 | </script> | ... | ... |
yanshouban/src/views/detect/addziyuan.vue
| ... | ... | @@ -158,6 +158,16 @@ |
| 158 | 158 | </el-col> |
| 159 | 159 | </el-row> |
| 160 | 160 | <el-row :gutter="20"> |
| 161 | + <el-col :span="12"> | |
| 162 | + <el-form-item label="商铺业态" prop="commercialForm"> | |
| 163 | + <el-select v-model="ruleForm.commercialForm" placeholder="请选择" style="margin-top:5px;width: 100%;"> | |
| 164 | + <el-option label="商超" value="商超"></el-option> | |
| 165 | + </el-select> | |
| 166 | + </el-form-item> | |
| 167 | + </el-col> | |
| 168 | + | |
| 169 | + </el-row> | |
| 170 | + <el-row :gutter="20"> | |
| 161 | 171 | <el-col :span="24"> |
| 162 | 172 | <el-form-item label="地图标点" prop="mapPunctuation"> |
| 163 | 173 | <div style="width: 100%;height: 300px;border: 1px solid #3F9B6A;" v-if="showAdd"> |
| ... | ... | @@ -275,6 +285,12 @@ |
| 275 | 285 | </el-input> |
| 276 | 286 | </el-form-item> |
| 277 | 287 | </el-col> |
| 288 | + <el-col :span="12"> | |
| 289 | + <el-form-item label="场地编号" prop="venueSpaceNumber"> | |
| 290 | + <el-input v-model="ruleForm.venueSpaceNumber" disabled placeholder="将根据类型自动为资源编号" | |
| 291 | + style="margin-top:5px;"></el-input> | |
| 292 | + </el-form-item> | |
| 293 | + </el-col> | |
| 278 | 294 | </el-row> |
| 279 | 295 | <el-row :gutter="20"> |
| 280 | 296 | <el-col :span="24"> |
| ... | ... | @@ -572,6 +588,7 @@ |
| 572 | 588 | belongingRegion: '', |
| 573 | 589 | belongingDepartment: '', |
| 574 | 590 | head: '', |
| 591 | + commercialForm:'', | |
| 575 | 592 | detailedLocation: '', |
| 576 | 593 | mapPunctuation: '', |
| 577 | 594 | shopDescription: '', |
| ... | ... | @@ -755,6 +772,7 @@ |
| 755 | 772 | belongingRegion: '', |
| 756 | 773 | belongingDepartment: '', |
| 757 | 774 | head: '', |
| 775 | + commercialForm:'', | |
| 758 | 776 | detailedLocation: '', |
| 759 | 777 | mapPunctuation: '', |
| 760 | 778 | shopDescription: '', |
| ... | ... | @@ -874,6 +892,7 @@ |
| 874 | 892 | belongingRegion: '', |
| 875 | 893 | belongingDepartment: '', |
| 876 | 894 | head: '', |
| 895 | + commercialForm:'', | |
| 877 | 896 | detailedLocation: '', |
| 878 | 897 | mapPunctuation: '', |
| 879 | 898 | shopDescription: '', |
| ... | ... | @@ -895,6 +914,7 @@ |
| 895 | 914 | detailedLocation: '',//详细位置 |
| 896 | 915 | mapMarker: '',//地图标点 |
| 897 | 916 | description: '',//场地描述 |
| 917 | + venueSpaceNumber:'', | |
| 898 | 918 | planningDrawing: '',//规划图纸 |
| 899 | 919 | displayImage: '',//展示主图 |
| 900 | 920 | otherMedia: '', //其他图片视频 | ... | ... |
yanshouban/src/views/detect/admap.vue
| ... | ... | @@ -63,7 +63,7 @@ |
| 63 | 63 | :file-list="daoData" |
| 64 | 64 | :auto-upload="true" |
| 65 | 65 | :show-file-list="false"> |
| 66 | - <el-button style="background-color: #fff;color: #3F9B6A;border: 1px solid #dcdfe6;" class="buttonHover">导入</el-button> | |
| 66 | + <el-button style="background-color: #fff;color: #3F9B6A;border: 1px solid #dcdfe6;margin-left:15px;" class="buttonHover">导入</el-button> | |
| 67 | 67 | </el-upload> |
| 68 | 68 | </div> |
| 69 | 69 | <!-- 地图 --> |
| ... | ... | @@ -142,9 +142,9 @@ |
| 142 | 142 | </el-table-column> |
| 143 | 143 | <el-table-column prop="detailedLocation" label="详细地址" min-width="300"> |
| 144 | 144 | </el-table-column> |
| 145 | - <el-table-column label="商户名称" prop="actualUsableArea" min-width="150"> | |
| 145 | + <el-table-column label="商户名称" prop="commercialTenantName" min-width="150"> | |
| 146 | 146 | </el-table-column> |
| 147 | - <el-table-column label="商户电话" prop="belongingDepartment" min-width="150"> | |
| 147 | + <el-table-column label="商户电话" prop="commercialTenantPhone" min-width="150"> | |
| 148 | 148 | </el-table-column> |
| 149 | 149 | <el-table-column label="实际使用面积" prop="actualUsableArea" min-width="150"> |
| 150 | 150 | </el-table-column> |
| ... | ... | @@ -152,6 +152,8 @@ |
| 152 | 152 | </el-table-column> |
| 153 | 153 | <el-table-column label="负责人" prop="head" min-width="120"> |
| 154 | 154 | </el-table-column> |
| 155 | + <el-table-column label="商铺业态" prop="commercialForm" min-width="120"> | |
| 156 | + </el-table-column> | |
| 155 | 157 | <el-table-column label="租赁状态" prop="rentalStatus" min-width="120"> |
| 156 | 158 | <template slot-scope="scope"> |
| 157 | 159 | {{scope.row.rentalStatus == 0?'未租':'已租'}} |
| ... | ... | @@ -193,7 +195,7 @@ |
| 193 | 195 | </el-table-column> |
| 194 | 196 | <el-table-column label="设备尺寸" prop="equipmentSize" min-width="200" v-if="activeName == 'second'"> |
| 195 | 197 | </el-table-column> |
| 196 | - <el-table-column label="场地编号" prop="venueNumber" min-width="150" v-if="activeName == 'second'"> | |
| 198 | + <el-table-column label="广告位编号" prop="advertisingSpaceNumber" min-width="150" v-if="activeName == 'second'"> | |
| 197 | 199 | </el-table-column> |
| 198 | 200 | <el-table-column label="广告尺寸" prop="dimensions" min-width="200" v-if="activeName == 'second'"> |
| 199 | 201 | </el-table-column> |
| ... | ... | @@ -240,6 +242,7 @@ |
| 240 | 242 | </el-table-column> |
| 241 | 243 | <el-table-column label="实际使用面积" min-width="6%" prop="actualArea" v-if="activeName == 'third'"> |
| 242 | 244 | </el-table-column> |
| 245 | + <el-table-column label="场地编号" prop="venueSpaceNumber" min-width="10%" v-if="activeName == 'third'" /> | |
| 243 | 246 | <el-table-column label="场地类型" min-width="6%" prop="venueType" v-if="activeName == 'third'"> |
| 244 | 247 | </el-table-column> |
| 245 | 248 | <el-table-column label="所属区域" min-width="6%" prop="district" v-if="activeName == 'third'"> |
| ... | ... | @@ -803,7 +806,7 @@ |
| 803 | 806 | style="text-align:left;border-right: 1px solid #EBEEF5;height: 42px;line-height: 42px;width: 119px;padding-left:10px;background-color:#FAFAFA"> |
| 804 | 807 | <span style="font-size: 14px;color: #000;">商铺业态</span> |
| 805 | 808 | </div> |
| 806 | - <div style="height: 42px;line-height: 42px;">{{secondData.spyt}}</div> | |
| 809 | + <div style="height: 42px;line-height: 42px;">{{secondData.commercialForm}}</div> | |
| 807 | 810 | |
| 808 | 811 | </el-form-item> |
| 809 | 812 | </el-form> |
| ... | ... | @@ -1112,7 +1115,18 @@ |
| 1112 | 1115 | </el-form-item> |
| 1113 | 1116 | </el-col> |
| 1114 | 1117 | </el-row> |
| 1118 | +<el-row :gutter="20"> | |
| 1119 | + <el-col :span="12"> | |
| 1120 | + <el-form-item label="商铺业态" prop="commercialForm"> | |
| 1121 | + <div v-if="edit" class="duiqi">{{editbgid.commercialForm}}</div> | |
| 1122 | + <el-select v-model="ruleForm.commercialForm" placeholder="请选择" style="margin-top:5px;width: 100%;" v-else> | |
| 1123 | + <el-option label="商超" value="商超"></el-option> | |
| 1124 | + </el-select> | |
| 1125 | + </el-input> | |
| 1126 | + </el-form-item> | |
| 1127 | + </el-col> | |
| 1115 | 1128 | |
| 1129 | + </el-row> | |
| 1116 | 1130 | <el-row :gutter="20"> |
| 1117 | 1131 | <el-col :span="24"> |
| 1118 | 1132 | <el-form-item label="地图标点" prop="mapPunctuation"> |
| ... | ... | @@ -1238,6 +1252,12 @@ |
| 1238 | 1252 | maxlength="100" v-else /> |
| 1239 | 1253 | </el-form-item> |
| 1240 | 1254 | </el-col> |
| 1255 | + <el-col :span="12"> | |
| 1256 | + <el-form-item label="场地编号" prop="venueSpaceNumber"> | |
| 1257 | + <div v-if="edit" class="duiqi">{{editbgid.venueSpaceNumber}}</div> | |
| 1258 | + </el-form-item> | |
| 1259 | + </el-col> | |
| 1260 | + | |
| 1241 | 1261 | </el-row> |
| 1242 | 1262 | <el-row :gutter="20"> |
| 1243 | 1263 | <el-col :span="24"> |
| ... | ... | @@ -1489,6 +1509,28 @@ |
| 1489 | 1509 | <div class="titles"> |
| 1490 | 1510 | 历史租赁信息 |
| 1491 | 1511 | </div> |
| 1512 | + <div style="margin:20px 0;"> | |
| 1513 | + <el-table :data="lishiData" | |
| 1514 | + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}" tooltip-effect="dark custom-tooltip-effect"> | |
| 1515 | + <el-table-column label="承租人" min-width="80" prop="tenantName"> | |
| 1516 | + | |
| 1517 | + </el-table-column> | |
| 1518 | + <el-table-column label="租赁期限" prop="leaseStartDate" min-width="200" show-overflow-tooltip> | |
| 1519 | + </el-table-column> | |
| 1520 | + <el-table-column label="经营类型" prop="houseNumber" min-width="80" show-overflow-tooltip> | |
| 1521 | + | |
| 1522 | + </el-table-column> | |
| 1523 | + <el-table-column label="租金/周期" prop="shopName" min-width="250" show-overflow-tooltip> | |
| 1524 | + <template slot-scope="scope"> | |
| 1525 | + {{scope.row.contractAmount}}/{{scope.row.intendedLeaseTerm}} | |
| 1526 | + | |
| 1527 | + </template> | |
| 1528 | + </el-table-column> | |
| 1529 | + <el-table-column label="当前状态" prop="belongingRegion" min-width="150" show-overflow-tooltip> | |
| 1530 | + </el-table-column> | |
| 1531 | + | |
| 1532 | + </el-table> | |
| 1533 | + </div> | |
| 1492 | 1534 | </div> |
| 1493 | 1535 | </el-tab-pane> |
| 1494 | 1536 | |
| ... | ... | @@ -1521,13 +1563,15 @@ |
| 1521 | 1563 | changadd, |
| 1522 | 1564 | changedit, |
| 1523 | 1565 | changDel, |
| 1524 | - | |
| 1566 | + excelAdd, | |
| 1567 | + zulxin | |
| 1525 | 1568 | } from '../../api/information' |
| 1526 | 1569 | import { |
| 1527 | 1570 | getAlls as getAllMap, |
| 1528 | 1571 | addList as addMap, |
| 1529 | 1572 | delList as deleteMap, |
| 1530 | - likeGet as likeGetMap | |
| 1573 | + likeGet as likeGetMap, | |
| 1574 | + editList as ggwedit | |
| 1531 | 1575 | } from '../../api/map1' |
| 1532 | 1576 | import MapContainer from "@/components/MapContainer/MapContainer" |
| 1533 | 1577 | import addziyuan from "./addziyuan" |
| ... | ... | @@ -1776,7 +1820,8 @@ |
| 1776 | 1820 | mapData: {}, |
| 1777 | 1821 | fileData:[], |
| 1778 | 1822 | uploadFileUrl: uploadUrl, // 请求地址 |
| 1779 | -daoData:[] | |
| 1823 | +daoData:[], | |
| 1824 | +lishiData:[] | |
| 1780 | 1825 | } |
| 1781 | 1826 | |
| 1782 | 1827 | |
| ... | ... | @@ -1916,8 +1961,13 @@ daoData:[] |
| 1916 | 1961 | delList({ |
| 1917 | 1962 | id: item.id |
| 1918 | 1963 | }).then(res => { |
| 1964 | + this.$message({ | |
| 1965 | + message: '删除成功', | |
| 1966 | + type: 'success' | |
| 1967 | + }) | |
| 1919 | 1968 | this.getAll() |
| 1920 | 1969 | getAlls(this.pageindex).then((datas) => { |
| 1970 | + | |
| 1921 | 1971 | this.tableData = datas.data.content |
| 1922 | 1972 | this.parentMessage = datas.data.content |
| 1923 | 1973 | }) |
| ... | ... | @@ -1929,6 +1979,10 @@ daoData:[] |
| 1929 | 1979 | deleteMap({ |
| 1930 | 1980 | id: item.id |
| 1931 | 1981 | }).then(res => { |
| 1982 | + this.$message({ | |
| 1983 | + message: '删除成功', | |
| 1984 | + type: 'success' | |
| 1985 | + }) | |
| 1932 | 1986 | getAllMap(this.pageindex).then((datas) => { |
| 1933 | 1987 | this.tableData = datas.data.content |
| 1934 | 1988 | this.parentMessage = datas.data.content |
| ... | ... | @@ -1942,6 +1996,10 @@ daoData:[] |
| 1942 | 1996 | changDel({ |
| 1943 | 1997 | id: item.id |
| 1944 | 1998 | }).then(res => { |
| 1999 | + this.$message({ | |
| 2000 | + message: '删除成功', | |
| 2001 | + type: 'success' | |
| 2002 | + }) | |
| 1945 | 2003 | changAlls(this.pageindex).then((datas) => { |
| 1946 | 2004 | this.tableData = datas.data.content |
| 1947 | 2005 | this.parentMessage = datas.data.content |
| ... | ... | @@ -2005,10 +2063,14 @@ daoData:[] |
| 2005 | 2063 | |
| 2006 | 2064 | //查看点击 |
| 2007 | 2065 | handleEditForm(item) { |
| 2066 | + | |
| 2008 | 2067 | if (this.activeName == 'first') { |
| 2009 | 2068 | this.editbgid = item |
| 2010 | 2069 | this.restype = '商铺' |
| 2011 | - | |
| 2070 | + zulxin({venueNumber:item.venueNumber}).then(res=>{ | |
| 2071 | + this.lishiData = res.data.content | |
| 2072 | + console.log(res) | |
| 2073 | + }) | |
| 2012 | 2074 | this.showBian = true |
| 2013 | 2075 | if (typeof this.editbgid.mapPunctuation == 'string') { |
| 2014 | 2076 | this.parentMessage = JSON.parse(this.editbgid.mapPunctuation) |
| ... | ... | @@ -2017,7 +2079,19 @@ daoData:[] |
| 2017 | 2079 | } else if (this.activeName == 'second') { |
| 2018 | 2080 | this.editbgid = item |
| 2019 | 2081 | this.restype = '广告位' |
| 2020 | - | |
| 2082 | + zulxin({venueNumber:item.advertisingSpaceNumber}).then(res=>{ | |
| 2083 | + this.lishiData = res.data | |
| 2084 | + this.lishiData.map(item=>{ | |
| 2085 | + item.earnestMoney =this.$decrypt(item.earnestMoney) | |
| 2086 | + item.contractAmount =this.$decrypt(item.contractAmount) | |
| 2087 | + item.lessorName =this.$decrypt(item.lessorName) | |
| 2088 | + item.telephone =this.$decrypt(item.telephone) | |
| 2089 | + item.bankAccount =this.$decrypt(item.bankAccount) | |
| 2090 | + item.tenantName =this.$decrypt(item.tenantName) | |
| 2091 | + item.tenantTelephone =this.$decrypt(item.tenantTelephone) | |
| 2092 | + item.tenantBankAccount =this.$decrypt(item.tenantBankAccount) | |
| 2093 | + }) | |
| 2094 | + }) | |
| 2021 | 2095 | this.showBian = true |
| 2022 | 2096 | if(item.advertisingType == '线上广告位'){ |
| 2023 | 2097 | this.leixing =true |
| ... | ... | @@ -2031,15 +2105,26 @@ daoData:[] |
| 2031 | 2105 | } else if (this.activeName == 'third') { |
| 2032 | 2106 | this.editbgid = item |
| 2033 | 2107 | this.restype = '场地' |
| 2034 | - | |
| 2108 | + zulxin({venueNumber:item.venueSpaceNumber}).then(res=>{ | |
| 2109 | + this.lishiData = res.data | |
| 2110 | + this.lishiData.map(item=>{ | |
| 2111 | + item.earnestMoney =this.$decrypt(item.earnestMoney) | |
| 2112 | + item.contractAmount =this.$decrypt(item.contractAmount) | |
| 2113 | + item.lessorName =this.$decrypt(item.lessorName) | |
| 2114 | + item.telephone =this.$decrypt(item.telephone) | |
| 2115 | + item.bankAccount =this.$decrypt(item.bankAccount) | |
| 2116 | + item.tenantName =this.$decrypt(item.tenantName) | |
| 2117 | + item.tenantTelephone =this.$decrypt(item.tenantTelephone) | |
| 2118 | + item.tenantBankAccount =this.$decrypt(item.tenantBankAccount) | |
| 2119 | + }) | |
| 2120 | + }) | |
| 2035 | 2121 | this.showBian = true |
| 2036 | 2122 | if (typeof this.editbgid.mapMarker == 'string') { |
| 2037 | 2123 | this.parentMessage = JSON.parse(this.editbgid.mapMarker) |
| 2038 | 2124 | } |
| 2039 | - } else if (this.activeName == 'fourth') { | |
| 2040 | - | |
| 2041 | 2125 | } |
| 2042 | 2126 | |
| 2127 | + | |
| 2043 | 2128 | }, |
| 2044 | 2129 | // 查看取消 |
| 2045 | 2130 | colse() { |
| ... | ... | @@ -2071,6 +2156,11 @@ daoData:[] |
| 2071 | 2156 | } |
| 2072 | 2157 | } else if (this.activeName == 'second') { |
| 2073 | 2158 | this.editbgid = item |
| 2159 | + this.editbgid.equipmentSizeH = '' | |
| 2160 | + this.editbgid.equipmentSizeK = '' | |
| 2161 | + this.editbgid.equipmentSizeG = '' | |
| 2162 | + this.editbgid.dimensionsH= '' | |
| 2163 | + this.editbgid.dimensionsK ='' | |
| 2074 | 2164 | this.restype = '广告位' |
| 2075 | 2165 | this.showBian = true |
| 2076 | 2166 | this.$nextTick(() => { |
| ... | ... | @@ -2122,7 +2212,7 @@ daoData:[] |
| 2122 | 2212 | if (this.fileData.length != 0) { |
| 2123 | 2213 | this.editbgid.otherImageVideos = this.fileData[0].url |
| 2124 | 2214 | } |
| 2125 | - console.log(this.editbgid) | |
| 2215 | + | |
| 2126 | 2216 | editList(this.editbgid).then(res=>{ |
| 2127 | 2217 | this.edit = true |
| 2128 | 2218 | this.showBian = false |
| ... | ... | @@ -2132,7 +2222,8 @@ daoData:[] |
| 2132 | 2222 | }) |
| 2133 | 2223 | }else if(this.restype =='广告位'){ |
| 2134 | 2224 | this.editbgid.updateDate = this.updateCurrentTime() |
| 2135 | - if(this.advue.type =='实体广告位'){ | |
| 2225 | + | |
| 2226 | + if(this.leixing ==false ){ | |
| 2136 | 2227 | this.editbgid.equipmentSize = `长:${this.editbgid.equipmentSizeH} 宽:${this.editbgid.equipmentSizeK} 高:${this.editbgid.equipmentSizeG}` |
| 2137 | 2228 | this.editbgid.dimensions =`长:${this.editbgid.dimensionsH} 宽:${this.editbgid.dimensionsK}` |
| 2138 | 2229 | } | ... | ... |
yanshouban/src/views/detect/information.vue
| ... | ... | @@ -56,6 +56,7 @@ |
| 56 | 56 | icon="el-icon-circle-plus-outline">新增</el-button> |
| 57 | 57 | </div> |
| 58 | 58 | <!-- 表格 --> |
| 59 | + | |
| 59 | 60 | <el-table :data="tableData.slice((currentPage - 1) * pageSize, currentPage * pageSize)" |
| 60 | 61 | :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}" tooltip-effect="dark custom-tooltip-effect"> |
| 61 | 62 | <el-table-column label="序号" min-width="80"> |
| ... | ... | @@ -83,6 +84,8 @@ |
| 83 | 84 | </el-table-column> |
| 84 | 85 | <el-table-column label="负责人" prop="head" min-width="120" show-overflow-tooltip> |
| 85 | 86 | </el-table-column> |
| 87 | + <el-table-column label="商铺业态" prop="commercialForm" min-width="120" show-overflow-tooltip> | |
| 88 | + </el-table-column> | |
| 86 | 89 | <el-table-column label="租赁状态" prop="rentalStatus" min-width="120" show-overflow-tooltip> |
| 87 | 90 | <template slot-scope="scope"> |
| 88 | 91 | {{scope.row.rentalStatus=='0'?'待租':'已租'}} |
| ... | ... | @@ -235,6 +238,16 @@ |
| 235 | 238 | </el-col> |
| 236 | 239 | </el-row> |
| 237 | 240 | <el-row :gutter="20"> |
| 241 | + <el-col :span="12"> | |
| 242 | + <el-form-item label="商铺业态" prop="commercialForm"> | |
| 243 | + <el-select v-model="ruleForm.commercialForm" placeholder="请选择" style="margin-top:5px;width: 100%;"> | |
| 244 | + <el-option label="商超" value="商超"></el-option> | |
| 245 | + </el-select> | |
| 246 | + </el-form-item> | |
| 247 | + </el-col> | |
| 248 | + | |
| 249 | + </el-row> | |
| 250 | + <el-row :gutter="20"> | |
| 238 | 251 | <el-col :span="24"> |
| 239 | 252 | <el-form-item label="地图标点" prop="mapPunctuation"> |
| 240 | 253 | <div style="width: 100%;height: 300px;"> |
| ... | ... | @@ -431,6 +444,18 @@ |
| 431 | 444 | </el-form-item> |
| 432 | 445 | </el-col> |
| 433 | 446 | </el-row> |
| 447 | +<el-row :gutter="20"> | |
| 448 | + <el-col :span="12"> | |
| 449 | + <el-form-item label="商铺业态" prop="commercialForm"> | |
| 450 | + <div v-if="edit" class="duiqi">{{editbgid.commercialForm}}</div> | |
| 451 | + <el-select v-model="ruleForm.commercialForm" placeholder="请选择" style="margin-top:5px;width: 100%;" v-else> | |
| 452 | + <el-option label="商超" value="商超"></el-option> | |
| 453 | + </el-select> | |
| 454 | + </el-input> | |
| 455 | + </el-form-item> | |
| 456 | + </el-col> | |
| 457 | + | |
| 458 | + </el-row> | |
| 434 | 459 | |
| 435 | 460 | <el-row :gutter="20"> |
| 436 | 461 | <el-col :span="24"> |
| ... | ... | @@ -492,6 +517,33 @@ |
| 492 | 517 | <div class="titles"> |
| 493 | 518 | 历史租赁信息 |
| 494 | 519 | </div> |
| 520 | + <div style="margin:20px 0;"> | |
| 521 | + <el-table :data="lishiData" | |
| 522 | + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}" tooltip-effect="dark custom-tooltip-effect"> | |
| 523 | + <el-table-column label="承租人" min-width="80" prop="tenantName"> | |
| 524 | + | |
| 525 | + </el-table-column> | |
| 526 | + <el-table-column label="租赁期限" prop="leaseStartDate" min-width="200" show-overflow-tooltip> | |
| 527 | + </el-table-column> | |
| 528 | + <el-table-column label="经营类型" prop="houseNumber" min-width="80" show-overflow-tooltip> | |
| 529 | + | |
| 530 | + </el-table-column> | |
| 531 | + <el-table-column label="租金/周期" prop="shopName" min-width="250" show-overflow-tooltip> | |
| 532 | +<template slot-scope="scope"> | |
| 533 | + {{scope.row.contractAmount}}/{{scope.row.intendedLeaseTerm}} | |
| 534 | + | |
| 535 | + </template> | |
| 536 | + </el-table-column> | |
| 537 | + <el-table-column label="当前状态" prop="belongingRegion" min-width="150" show-overflow-tooltip> | |
| 538 | + </el-table-column> | |
| 539 | + | |
| 540 | + <!-- <el-table-column label="操作" min-width="160" fixed="right"> | |
| 541 | + <template slot-scope="scope"> | |
| 542 | + <div @click="handleEditForm(scope.row)" class="tableBtn greens">查看</div> | |
| 543 | + </template> | |
| 544 | + </el-table-column> --> | |
| 545 | + </el-table> | |
| 546 | + </div> | |
| 495 | 547 | </div> |
| 496 | 548 | </el-tab-pane> |
| 497 | 549 | <!-- <el-tab-pane label="租赁信息" name="third" v-if="edit"> |
| ... | ... | @@ -544,7 +596,8 @@ |
| 544 | 596 | delList, |
| 545 | 597 | likeGet, |
| 546 | 598 | lvdaoduan, |
| 547 | - gongyuan | |
| 599 | + gongyuan, | |
| 600 | + zulxin | |
| 548 | 601 | } from '../../api/information'; |
| 549 | 602 | import { |
| 550 | 603 | getToken, |
| ... | ... | @@ -598,6 +651,7 @@ |
| 598 | 651 | belongingRegion: '', |
| 599 | 652 | belongingDepartment: '', |
| 600 | 653 | head: '', |
| 654 | + commercialForm:'', | |
| 601 | 655 | detailedLocation: '', |
| 602 | 656 | mapPunctuation: '', |
| 603 | 657 | shopDescription: '', |
| ... | ... | @@ -645,11 +699,6 @@ |
| 645 | 699 | message: '请输入详细位置', |
| 646 | 700 | trigger: 'blur' |
| 647 | 701 | }, ], |
| 648 | - displayMainImage: [{ | |
| 649 | - required: true, | |
| 650 | - message: '请上传主图', | |
| 651 | - trigger: 'blur' | |
| 652 | - }, ], | |
| 653 | 702 | belongingGreenwaySection: [{ |
| 654 | 703 | required: true, |
| 655 | 704 | message: '请选择所属绿道段', |
| ... | ... | @@ -664,7 +713,8 @@ |
| 664 | 713 | parentMessage: {}, |
| 665 | 714 | lvdaoList: [], |
| 666 | 715 | gongyuanList: [], |
| 667 | - biangongyuanList: [] | |
| 716 | + biangongyuanList: [], | |
| 717 | + lishiData:[] | |
| 668 | 718 | } |
| 669 | 719 | }, |
| 670 | 720 | components: { |
| ... | ... | @@ -735,6 +785,7 @@ |
| 735 | 785 | }, |
| 736 | 786 | //查看编辑 |
| 737 | 787 | bianji() { |
| 788 | + | |
| 738 | 789 | if (this.edit) { |
| 739 | 790 | this.edit = false |
| 740 | 791 | |
| ... | ... | @@ -745,6 +796,7 @@ |
| 745 | 796 | this.detbox = false |
| 746 | 797 | this.editbgid = item |
| 747 | 798 | this.parentMessage = JSON.parse(item.mapPunctuation) |
| 799 | + console.log(item) | |
| 748 | 800 | const fileMsg = { |
| 749 | 801 | name: '文件', |
| 750 | 802 | url: item.otherImageVideos |
| ... | ... | @@ -833,6 +885,19 @@ |
| 833 | 885 | //查看点击 |
| 834 | 886 | handleEditForm(item) { |
| 835 | 887 | |
| 888 | + zulxin({venueNumber:item.venueNumber}).then(res=>{ | |
| 889 | + this.lishiData = res.data | |
| 890 | + this.lishiData.map(item=>{ | |
| 891 | + item.earnestMoney =this.$decrypt(item.earnestMoney) | |
| 892 | + item.contractAmount =this.$decrypt(item.contractAmount) | |
| 893 | + item.lessorName =this.$decrypt(item.lessorName) | |
| 894 | + item.telephone =this.$decrypt(item.telephone) | |
| 895 | + item.bankAccount =this.$decrypt(item.bankAccount) | |
| 896 | + item.tenantName =this.$decrypt(item.tenantName) | |
| 897 | + item.tenantTelephone =this.$decrypt(item.tenantTelephone) | |
| 898 | + item.tenantBankAccount =this.$decrypt(item.tenantBankAccount) | |
| 899 | + }) | |
| 900 | + }) | |
| 836 | 901 | this.editbgid = item |
| 837 | 902 | this.parentMessage = JSON.parse(item.mapPunctuation) |
| 838 | 903 | this.detbox = false |
| ... | ... | @@ -866,6 +931,7 @@ |
| 866 | 931 | belongingRegion: '', |
| 867 | 932 | belongingDepartment: '', |
| 868 | 933 | head: '', |
| 934 | + commercialForm:'', | |
| 869 | 935 | detailedLocation: '', |
| 870 | 936 | mapPunctuation: '', |
| 871 | 937 | shopDescription: '', | ... | ... |
yanshouban/src/views/detect/map.vue
| ... | ... | @@ -529,17 +529,43 @@ |
| 529 | 529 | </div> |
| 530 | 530 | </div> |
| 531 | 531 | </el-tab-pane> |
| 532 | - <el-tab-pane label="招商方案信息" name="second" v-if="edit"> | |
| 532 | + <!-- <el-tab-pane label="招商方案信息" name="second" v-if="edit"> | |
| 533 | 533 | <div style="margin-top: 30px;" class="editcss"> |
| 534 | 534 | <div class="titles"> |
| 535 | 535 | 招商方案信息 |
| 536 | 536 | </div> |
| 537 | 537 | </div> |
| 538 | - </el-tab-pane> | |
| 539 | - <el-tab-pane label="租赁信息" name="third" v-if="edit"> | |
| 538 | + </el-tab-pane> --> | |
| 539 | + <el-tab-pane label="历史租赁信息" name="third" v-if="edit"> | |
| 540 | 540 | <div style="margin-top: 30px;" class="editcss"> |
| 541 | 541 | <div class="titles"> |
| 542 | - 租赁信息 | |
| 542 | + 历史租赁信息 | |
| 543 | + </div> | |
| 544 | + <div style="margin:20px 0;"> | |
| 545 | + <el-table :data="lishiData" | |
| 546 | + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}" tooltip-effect="dark custom-tooltip-effect"> | |
| 547 | + <el-table-column label="承租人" min-width="80" prop="tenantName"> | |
| 548 | + | |
| 549 | + </el-table-column> | |
| 550 | + <el-table-column label="租赁期限" prop="leaseStartDate" min-width="200" show-overflow-tooltip> | |
| 551 | + </el-table-column> | |
| 552 | + <el-table-column label="经营类型" prop="houseNumber" min-width="80" show-overflow-tooltip> | |
| 553 | + | |
| 554 | + </el-table-column> | |
| 555 | + <el-table-column label="租金/周期" prop="shopName" min-width="250" show-overflow-tooltip> | |
| 556 | + <template slot-scope="scope"> | |
| 557 | + {{scope.row.contractAmount}}/{{scope.row.intendedLeaseTerm}} | |
| 558 | + | |
| 559 | + </template> | |
| 560 | + </el-table-column> | |
| 561 | + <el-table-column label="当前状态" prop="belongingRegion" min-width="150" show-overflow-tooltip> | |
| 562 | + </el-table-column> | |
| 563 | + <!-- <el-table-column label="操作" min-width="160" fixed="right"> | |
| 564 | + <template slot-scope="scope"> | |
| 565 | + <div @click="handleEditForm(scope.row)" class="tableBtn greens">查看</div> | |
| 566 | + </template> | |
| 567 | + </el-table-column> --> | |
| 568 | + </el-table> | |
| 543 | 569 | </div> |
| 544 | 570 | </div> |
| 545 | 571 | </el-tab-pane> |
| ... | ... | @@ -572,7 +598,8 @@ |
| 572 | 598 | addList, |
| 573 | 599 | delList, |
| 574 | 600 | likeGet, |
| 575 | - editList | |
| 601 | + editList, | |
| 602 | + zulxin | |
| 576 | 603 | } from '../../api/map1' |
| 577 | 604 | import MapMark from "@/components/MapContainer/MapMark"; |
| 578 | 605 | import MapXian from "@/components/MapContainer/MapXian"; |
| ... | ... | @@ -715,7 +742,8 @@ |
| 715 | 742 | //地图标点的经纬度 |
| 716 | 743 | mapData: {}, |
| 717 | 744 | parentMessage: {}, |
| 718 | - xiangTab:'first' | |
| 745 | + xiangTab:'first', | |
| 746 | + lishiData:[] | |
| 719 | 747 | |
| 720 | 748 | } |
| 721 | 749 | }, |
| ... | ... | @@ -806,11 +834,11 @@ |
| 806 | 834 | const res = await likeGet(val) |
| 807 | 835 | this.tableData = res.data.content |
| 808 | 836 | if (this.pageindex.advertisingType == '线上广告位') { |
| 809 | - this.xsNum = res.data.content.length | |
| 837 | + this.xsNum = res.data.numberOfElements | |
| 810 | 838 | } else { |
| 811 | - this.xxNum = res.data.content.length | |
| 839 | + this.xxNum = res.data.numberOfElements | |
| 812 | 840 | } |
| 813 | - this.total = res.data.content.length | |
| 841 | + this.total = res.data.numberOfElements | |
| 814 | 842 | |
| 815 | 843 | }, |
| 816 | 844 | //获取当前时间 |
| ... | ... | @@ -863,7 +891,19 @@ |
| 863 | 891 | dimensionsK: '' |
| 864 | 892 | } |
| 865 | 893 | |
| 866 | - console.log(item) | |
| 894 | + zulxin({venueNumber:item.advertisingSpaceNumber}).then(res=>{ | |
| 895 | + this.lishiData = res.data | |
| 896 | + this.lishiData.map(item=>{ | |
| 897 | + item.earnestMoney =this.$decrypt(item.earnestMoney) | |
| 898 | + item.contractAmount =this.$decrypt(item.contractAmount) | |
| 899 | + item.lessorName =this.$decrypt(item.lessorName) | |
| 900 | + item.telephone =this.$decrypt(item.telephone) | |
| 901 | + item.bankAccount =this.$decrypt(item.bankAccount) | |
| 902 | + item.tenantName =this.$decrypt(item.tenantName) | |
| 903 | + item.tenantTelephone =this.$decrypt(item.tenantTelephone) | |
| 904 | + item.tenantBankAccount =this.$decrypt(item.tenantBankAccount) | |
| 905 | + }) | |
| 906 | + }) | |
| 867 | 907 | let dimensions_parts = item.dimensions.split(" ") |
| 868 | 908 | let dimensions = item.equipmentSize.split(" ") |
| 869 | 909 | console.log(dimensions) |
| ... | ... | @@ -1070,21 +1110,23 @@ |
| 1070 | 1110 | }, |
| 1071 | 1111 | // 查询按钮 |
| 1072 | 1112 | onSubmit() { |
| 1073 | - | |
| 1074 | 1113 | if (this.pageindex.advertisingType == '线上广告位') { |
| 1075 | 1114 | this.formSel.advertisingType = '线上广告位' |
| 1076 | 1115 | getAlls(this.formSel).then(res => { |
| 1116 | + this.currentPage = 1 | |
| 1077 | 1117 | this.tableData = res.data.content |
| 1078 | - this.total = res.data.content.length | |
| 1118 | + this.total = res.data.numberOfElements | |
| 1079 | 1119 | }) |
| 1080 | 1120 | |
| 1081 | 1121 | } else { |
| 1082 | 1122 | this.formSel.advertisingType = '实体广告位' |
| 1083 | 1123 | getAlls(this.formSel).then(res => { |
| 1124 | + this.currentPage = 1 | |
| 1084 | 1125 | this.tableData = res.data.content |
| 1085 | - this.total = res.data.content.length | |
| 1126 | + this.total = res.data.numberOfElements | |
| 1086 | 1127 | }) |
| 1087 | 1128 | } |
| 1129 | + console.log(this.currentPage) | |
| 1088 | 1130 | // if(this.formSel.createDate=='' && this.formSel.createUser == '' && this.formSel.affiliation == ''){ |
| 1089 | 1131 | // console.log(1) |
| 1090 | 1132 | // console.log(this.pageindex) | ... | ... |
yanshouban/src/views/detect/ziyuanList.vue
| ... | ... | @@ -73,6 +73,11 @@ |
| 73 | 73 | <el-input v-model="ruleForm.detailedLocation" style="margin-top:5px;" :disabled="edit" maxlength="100"> |
| 74 | 74 | </el-input> |
| 75 | 75 | </el-form-item> |
| 76 | + <el-form-item label="商铺业态" prop="commercialForm"> | |
| 77 | + <el-select v-model="ruleForm.commercialForm" :disabled="edit" style="margin-top:5px;width: 100%;"> | |
| 78 | + <el-option label="商超" value="商超"></el-option> | |
| 79 | + </el-select> | |
| 80 | + </el-form-item> | |
| 76 | 81 | <el-form-item label="地图标点" prop="mapPunctuation"> |
| 77 | 82 | <div style="width: 100%;height: 100px;border: 1px solid #3F9B6A;" v-if="showBian"> |
| 78 | 83 | |
| ... | ... | @@ -630,6 +635,7 @@ |
| 630 | 635 | belongingRegion: '', |
| 631 | 636 | belongingDepartment: '', |
| 632 | 637 | head: '', |
| 638 | + commercialForm:'', | |
| 633 | 639 | detailedLocation: '', |
| 634 | 640 | mapPunctuation: '', |
| 635 | 641 | shopDescription: '', | ... | ... |
yanshouban/src/views/ipm/followup/index.vue
| ... | ... | @@ -86,6 +86,7 @@ |
| 86 | 86 | <template slot-scope="scope"> |
| 87 | 87 | <div @click="details(scope.row)" class="tableBtn greens">查看</div> |
| 88 | 88 | <div @click="genad(scope.row)" class="tableBtn greens" v-if="scope.row.status =='1'">跟进录入</div> |
| 89 | + <div @click="biangen(scope.row)" class="tableBtn greens" v-if="scope.row.status =='1'">编辑</div> | |
| 89 | 90 | <div @click="zhongzhi(scope.row)" class="tableBtn greens" v-if="scope.row.status =='1'">终止</div> |
| 90 | 91 | <div @click="deltab(scope.row)" class="tableBtn greens" >删除</div> |
| 91 | 92 | </template> |
| ... | ... | @@ -271,8 +272,8 @@ |
| 271 | 272 | <el-button class="buttonHover" style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" |
| 272 | 273 | @click="closeFn(2)">返回</el-button> |
| 273 | 274 | <el-button @click="addTanpan" style="background-color: #3F9B6A;color: #fff" v-if="zhong.status=='2' && zhong.currentStage =='达成共识'">进入谈判</el-button> |
| 274 | - <!-- <el-button @click="edit = false" style="background-color: #3F9B6A;color: #fff" v-if="edit && zhong.status=='1'">编辑</el-button> --> | |
| 275 | - <!-- <el-button @click="addbuss(2)" style="background-color: #3F9B6A;color: #fff" v-if="!edit && zhong.status =='1'">确认</el-button> --> | |
| 275 | + <!-- <el-button @click="edit = false" style="background-color: #3F9B6A;color: #fff" v-if="edit && zhong.status=='1'">编辑</el-button> | |
| 276 | + <el-button @click="addbuss(2)" style="background-color: #3F9B6A;color: #fff" v-if="!edit && zhong.status =='1'">确认</el-button> --> | |
| 276 | 277 | |
| 277 | 278 | </div> |
| 278 | 279 | </div> |
| ... | ... | @@ -631,7 +632,9 @@ |
| 631 | 632 | xiangData:[], |
| 632 | 633 | yixiangList:{}, |
| 633 | 634 | idCardTime:[], |
| 634 | - busTime:[] | |
| 635 | + busTime:[], | |
| 636 | + miList:['contactPhone','idCardNumber','unifiedSocialCreditCode','legalRepresentative','address','emailAddress'], | |
| 637 | + dataIntegrity:'' | |
| 635 | 638 | } |
| 636 | 639 | }, |
| 637 | 640 | created() { |
| ... | ... | @@ -659,26 +662,20 @@ |
| 659 | 662 | this.tableData = res.data.content |
| 660 | 663 | this.total = res.data.content.length |
| 661 | 664 | this.tableData.map(res=>{ |
| 662 | - res.contactPhone = this.$decrypt(res.contactPhone) | |
| 663 | - res.idCardNumber = this.$decrypt(res.idCardNumber) | |
| 664 | - res.unifiedSocialCreditCode = this.$decrypt(res.unifiedSocialCreditCode) | |
| 665 | - res.legalRepresentative = this.$decrypt(res.legalRepresentative) | |
| 666 | - res.address = this.$decrypt(res.address) | |
| 667 | - res.emailAddress = this.$decrypt(res.emailAddress) | |
| 665 | + | |
| 666 | + res.cereCustomerInfo.contactPhone = this.$decrypt(res.cereCustomerInfo.contactPhone) | |
| 667 | + res.cereCustomerInfo.idCardNumber = this.$decrypt(res.cereCustomerInfo.idCardNumber) | |
| 668 | + res.cereCustomerInfo.unifiedSocialCreditCode = this.$decrypt(res.cereCustomerInfo.unifiedSocialCreditCode) | |
| 669 | + res.cereCustomerInfo.legalRepresentative = this.$decrypt(res.cereCustomerInfo.legalRepresentative) | |
| 670 | + res.cereCustomerInfo.address = this.$decrypt(res.cereCustomerInfo.address) | |
| 671 | + res.cereCustomerInfo.emailAddress = this.$decrypt(res.cereCustomerInfo.emailAddress) | |
| 668 | 672 | }) |
| 669 | 673 | const ziyuan = await getAlls(this.pageindex) |
| 670 | 674 | const ggw = await map1(this.pageindex) |
| 671 | 675 | this.ziyuanData = [...ziyuan.data.content,...ggw.data.content] |
| 672 | 676 | const kehu = await icManAll(this.pageindex); |
| 673 | 677 | this.kehuData = kehu.data.content |
| 674 | - this.kehuData.map(res=>{ | |
| 675 | - res.unifiedSocialCreditCode = this.$decrypt(res.unifiedSocialCreditCode) | |
| 676 | - res.legalRepresentative = this.$decrypt(res.legalRepresentative) | |
| 677 | - res.address = this.$decrypt(res.address) | |
| 678 | - res.emailAddress = this.$decrypt(res.emailAddress) | |
| 679 | - res.contactName = this.$decrypt(res.contactName) | |
| 680 | - res.contactPhone = this.$decrypt(res.contactPhone) | |
| 681 | - }) | |
| 678 | + | |
| 682 | 679 | }, |
| 683 | 680 | |
| 684 | 681 | // 新增确定按钮 |
| ... | ... | @@ -691,7 +688,7 @@ |
| 691 | 688 | this.formInline.status = '2' |
| 692 | 689 | } |
| 693 | 690 | if(this.formInline.customerLevel !=''){ |
| 694 | - await rsaManEdit({id:this.yixiangList.id,customerLevel:this.formInline.customerLevel}) | |
| 691 | + await rsaManEdit({id:this.yixiangList.id,customerLevel:this.formInline.customerLevel,dataIntegrity:this.dataIntegrity}) | |
| 695 | 692 | } |
| 696 | 693 | if(this.plan_Time.length !=0){ |
| 697 | 694 | this.formInline.nextFollowUpStartTime = this.plan_Time[0] |
| ... | ... | @@ -798,11 +795,7 @@ |
| 798 | 795 | this.detbox = false |
| 799 | 796 | } |
| 800 | 797 | }, |
| 801 | - // 详情编辑 | |
| 802 | - bianji() { | |
| 803 | 798 | |
| 804 | - | |
| 805 | - }, | |
| 806 | 799 | //查看合同 |
| 807 | 800 | lookHetong(val) { |
| 808 | 801 | this.hetongBox = true |
| ... | ... | @@ -813,12 +806,12 @@ |
| 813 | 806 | this.tableData = res.data.content |
| 814 | 807 | this.total = res.data.content.length |
| 815 | 808 | this.tableData.map(res=>{ |
| 816 | - res.contactPhone = this.$decrypt(res.contactPhone) | |
| 817 | - res.idCardNumber = this.$decrypt(res.idCardNumber) | |
| 818 | - res.unifiedSocialCreditCode = this.$decrypt(res.unifiedSocialCreditCode) | |
| 819 | - res.legalRepresentative = this.$decrypt(res.legalRepresentative) | |
| 820 | - res.address = this.$decrypt(res.address) | |
| 821 | - res.emailAddress = this.$decrypt(res.emailAddress) | |
| 809 | + res.cereCustomerInfo.contactPhone = this.$decrypt(res.cereCustomerInfo.contactPhone) | |
| 810 | + res.cereCustomerInfo.idCardNumber = this.$decrypt(res.cereCustomerInfo.idCardNumber) | |
| 811 | + res.cereCustomerInfo.unifiedSocialCreditCode = this.$decrypt(res.cereCustomerInfo.unifiedSocialCreditCode) | |
| 812 | + res.cereCustomerInfo.legalRepresentative = this.$decrypt(res.cereCustomerInfo.legalRepresentative) | |
| 813 | + res.cereCustomerInfo.address = this.$decrypt(res.cereCustomerInfo.address) | |
| 814 | + res.cereCustomerInfo.emailAddress = this.$decrypt(res.cereCustomerInfo.emailAddress) | |
| 822 | 815 | }) |
| 823 | 816 | }, |
| 824 | 817 | //重置按钮 |
| ... | ... | @@ -918,6 +911,10 @@ |
| 918 | 911 | if (action === 'confirm') { |
| 919 | 912 | |
| 920 | 913 | genDel({id:item.id}).then(res=>{ |
| 914 | + this.$message({ | |
| 915 | + message: '删除成功', | |
| 916 | + type: 'success' | |
| 917 | + }) | |
| 921 | 918 | this.getAll() |
| 922 | 919 | done(); |
| 923 | 920 | }) |
| ... | ... | @@ -928,10 +925,32 @@ |
| 928 | 925 | }) |
| 929 | 926 | }, |
| 930 | 927 | genad(item){ |
| 928 | + console.log(this.formInline) | |
| 929 | +let c1 =JSON.parse((JSON.stringify(item))) | |
| 930 | + let newinfo = this.$decryptall(c1,this.miList) | |
| 931 | + let arr = [newinfo.cereCustomerInfo.contactPhone,newinfo.cereCustomerInfo.idCardNumber,newinfo.cereCustomerInfo.unifiedSocialCreditCode,newinfo.cereCustomerInfo.legalRepresentative,newinfo.cereCustomerInfo.address,newinfo.cereCustomerInfo.emailAddress] | |
| 932 | + arr = arr.join(',') | |
| 933 | + this.dataIntegrity = this.$encrypt(arr) | |
| 931 | 934 | this.formInline.id = item.id |
| 932 | 935 | this.yixiangList = item.cereCustomerInfo |
| 933 | - // console.log(this.formInline) | |
| 936 | + | |
| 937 | + this.ggXin = true | |
| 938 | + }, | |
| 939 | + biangen(item){ | |
| 940 | + let c1 =JSON.parse((JSON.stringify(item))) | |
| 941 | + let newinfo = this.$decryptall(c1,this.miList) | |
| 942 | + let arr = [newinfo.cereCustomerInfo.contactPhone,newinfo.cereCustomerInfo.idCardNumber,newinfo.cereCustomerInfo.unifiedSocialCreditCode,newinfo.cereCustomerInfo.legalRepresentative,newinfo.cereCustomerInfo.address,newinfo.cereCustomerInfo.emailAddress] | |
| 943 | + arr = arr.join(',') | |
| 944 | + this.dataIntegrity = this.$encrypt(arr) | |
| 945 | + this.formInline.id = item.id | |
| 946 | + this.yixiangList = item.cereCustomerInfo | |
| 947 | + | |
| 934 | 948 | this.ggXin = true |
| 949 | + this.formInline = item | |
| 950 | + this.addziyuanData = JSON.parse(item.intendedResource) | |
| 951 | + this.plan_Time[0] = item.nextFollowUpStartTime | |
| 952 | + this.plan_Time[1] = item.nextFollowUpEndTime | |
| 953 | + this.formInline.customerLevel = item.cereCustomerInfo.customerLevel | |
| 935 | 954 | }, |
| 936 | 955 | closemsg(index){ |
| 937 | 956 | this.addziyuanData.splice(index, 1); | ... | ... |
yanshouban/src/views/ipm/inr/index.vue
| ... | ... | @@ -501,6 +501,15 @@ |
| 501 | 501 | const res = await tanGetAll(this.pageindex) |
| 502 | 502 | this.tableData = res.data.content |
| 503 | 503 | this.total = res.data.content.length |
| 504 | + this.tableData.map(res=>{ | |
| 505 | + | |
| 506 | + res.cereFollowDetails.cereCustomerInfo.contactPhone = this.$decrypt(res.cereFollowDetails.cereCustomerInfo.contactPhone) | |
| 507 | + res.cereFollowDetails.cereCustomerInfo.idCardNumber = this.$decrypt(res.cereFollowDetails.cereCustomerInfo.idCardNumber) | |
| 508 | + res.cereFollowDetails.cereCustomerInfo.unifiedSocialCreditCode = this.$decrypt(res.cereFollowDetails.cereCustomerInfo.unifiedSocialCreditCode) | |
| 509 | + res.cereFollowDetails.cereCustomerInfo.legalRepresentative = this.$decrypt(res.cereFollowDetails.cereCustomerInfo.legalRepresentative) | |
| 510 | + res.cereFollowDetails.cereCustomerInfo.address = this.$decrypt(res.cereFollowDetails.cereCustomerInfo.address) | |
| 511 | + res.cereFollowDetails.cereCustomerInfo.emailAddress = this.$decrypt(res.cereFollowDetails.cereCustomerInfo.emailAddress) | |
| 512 | + }) | |
| 504 | 513 | }, |
| 505 | 514 | |
| 506 | 515 | // 新增确定按钮 |
| ... | ... | @@ -594,7 +603,15 @@ this.secondData.otherAttachments = item.otherAttachments |
| 594 | 603 | const res = await tanGetAll(this.formSel) |
| 595 | 604 | this.tableData = res.data.content |
| 596 | 605 | this.total = res.data.content.length |
| 597 | - | |
| 606 | + this.tableData.map(res=>{ | |
| 607 | + | |
| 608 | + res.cereFollowDetails.cereCustomerInfo.contactPhone = this.$decrypt(res.cereFollowDetails.cereCustomerInfo.contactPhone) | |
| 609 | + res.cereFollowDetails.cereCustomerInfo.idCardNumber = this.$decrypt(res.cereFollowDetails.cereCustomerInfo.idCardNumber) | |
| 610 | + res.cereFollowDetails.cereCustomerInfo.unifiedSocialCreditCode = this.$decrypt(res.cereFollowDetails.cereCustomerInfo.unifiedSocialCreditCode) | |
| 611 | + res.cereFollowDetails.cereCustomerInfo.legalRepresentative = this.$decrypt(res.cereFollowDetails.cereCustomerInfo.legalRepresentative) | |
| 612 | + res.cereFollowDetails.cereCustomerInfo.address = this.$decrypt(res.cereFollowDetails.cereCustomerInfo.address) | |
| 613 | + res.cereFollowDetails.cereCustomerInfo.emailAddress = this.$decrypt(res.cereFollowDetails.cereCustomerInfo.emailAddress) | |
| 614 | + }) | |
| 598 | 615 | }, |
| 599 | 616 | //重置按钮 |
| 600 | 617 | resetting() { | ... | ... |
yanshouban/src/views/media/mediaMana.vue
| ... | ... | @@ -230,24 +230,24 @@ |
| 230 | 230 | </div> |
| 231 | 231 | <div style="padding:0 20px;margin-top:20px;"> |
| 232 | 232 | <div style="padding:55px 10px 10px 10px;background-color:#fff;position:relative"> |
| 233 | - <div style="position: absolute;top: 60px;right: 10px; z-index: 10;"> | |
| 234 | - <el-radio-group v-model="radio1" style="margin-right:10px"> | |
| 235 | - <el-radio-button label="本周"></el-radio-button> | |
| 236 | - <el-radio-button label="本月"></el-radio-button> | |
| 237 | - <el-radio-button label="今年 "></el-radio-button> | |
| 238 | - <el-radio-button label="自定义"></el-radio-button> | |
| 239 | - </el-radio-group> | |
| 240 | - <el-date-picker | |
| 241 | - v-if="radio1=='自定义'" | |
| 242 | - | |
| 243 | - style="width:250px" | |
| 244 | - v-model="radio1_time" | |
| 245 | - type="datetimerange" | |
| 246 | - range-separator="至" | |
| 247 | - start-placeholder="开始日期" | |
| 248 | - end-placeholder="结束日期"> | |
| 249 | - </el-date-picker> | |
| 250 | - </div> | |
| 233 | + <!-- <div style="position: absolute;top: 60px;right: 10px; z-index: 10;"> | |
| 234 | + <el-radio-group v-model="radio1" style="margin-right:10px"> | |
| 235 | + <el-radio-button label="本周"></el-radio-button> | |
| 236 | + <el-radio-button label="本月"></el-radio-button> | |
| 237 | + <el-radio-button label="今年 "></el-radio-button> | |
| 238 | + <el-radio-button label="自定义"></el-radio-button> | |
| 239 | + </el-radio-group> | |
| 240 | + <el-date-picker | |
| 241 | + v-if="radio1=='自定义'" | |
| 242 | + | |
| 243 | + style="width:250px" | |
| 244 | + v-model="radio1_time" | |
| 245 | + type="datetimerange" | |
| 246 | + range-separator="至" | |
| 247 | + start-placeholder="开始日期" | |
| 248 | + end-placeholder="结束日期"> | |
| 249 | + </el-date-picker> | |
| 250 | + </div> --> | |
| 251 | 251 | <el-tabs type="border-card" @tab-click="xiaoguoTab"> |
| 252 | 252 | <el-tab-pane label="整体效果分析"> |
| 253 | 253 | <el-table :data="dataList" |
| ... | ... | @@ -285,12 +285,12 @@ |
| 285 | 285 | </el-table-column> |
| 286 | 286 | </el-table> |
| 287 | 287 | </el-tab-pane> |
| 288 | - <el-tab-pane label="纵向分析"> | |
| 288 | + <!-- <el-tab-pane label="纵向分析"> | |
| 289 | 289 | |
| 290 | 290 | </el-tab-pane> |
| 291 | 291 | <el-tab-pane label="横向分析"> |
| 292 | 292 | |
| 293 | - </el-tab-pane> | |
| 293 | + </el-tab-pane> --> | |
| 294 | 294 | </el-tabs> |
| 295 | 295 | </div> |
| 296 | 296 | |
| ... | ... | @@ -338,7 +338,7 @@ |
| 338 | 338 | <div style="width:30%"> |
| 339 | 339 | <div style="display: flex;"> |
| 340 | 340 | <div style="margin-right: 10px;padding: 10px 0;"> |
| 341 | - <div>调整前方案</div> | |
| 341 | + <div>方案1</div> | |
| 342 | 342 | <div style="font-size: 22px;color: #3F9B6A;font-weight: 600;margin: 10px 0;">{{xiaoduiObj.bili}}</div> |
| 343 | 343 | <div style="font-size: 16px;color: #3F9B6A;font-weight: 600;">总流量</div> |
| 344 | 344 | </div> |
| ... | ... | @@ -422,7 +422,7 @@ |
| 422 | 422 | <div style="width:30%"> |
| 423 | 423 | <div style="display: flex;"> |
| 424 | 424 | <div style="margin-right: 10px;padding: 10px 0;"> |
| 425 | - <div>调整后方案</div> | |
| 425 | + <div>方案2</div> | |
| 426 | 426 | <div style="font-size: 22px;color: #3F9B6A;font-weight: 600;margin: 10px 0;">{{xiaoduiObj.bili}}</div> |
| 427 | 427 | <div style="font-size: 16px;color: #3F9B6A;font-weight: 600;">总流量</div> |
| 428 | 428 | </div> | ... | ... |
yanshouban/src/views/media/mediaMannaAdd.vue
| ... | ... | @@ -44,19 +44,19 @@ |
| 44 | 44 | <div style="padding:15px"> |
| 45 | 45 | <div style="display:flex;"> |
| 46 | 46 | <div style="display:flex;margin-right:30px;"> |
| 47 | - <div>微信</div> | |
| 47 | + <div>海报图片</div> | |
| 48 | 48 | <div style="margin:0 10px;"><upimg v-model="ruleForm.coverImage" :limit="1" :fileSize="1" :isShowTip="false"></upimg></div> |
| 49 | 49 | <div style="color:#E5E5E5"> |
| 50 | 50 | 请选择海报 |
| 51 | 51 | </div> |
| 52 | 52 | </div> |
| 53 | - <div style="display:flex"> | |
| 53 | + <!-- <div style="display:flex"> | |
| 54 | 54 | <div>微信朋友圈</div> |
| 55 | 55 | <div style="margin:0 10px;"><upimg v-model="ruleForm.wxpyPoster" :limit="1" :fileSize="1" :isShowTip="false"></upimg></div> |
| 56 | 56 | <div style="color:#E5E5E5"> |
| 57 | 57 | 请选择海报 |
| 58 | 58 | </div> |
| 59 | - </div> | |
| 59 | + </div> --> | |
| 60 | 60 | </div> |
| 61 | 61 | </div> |
| 62 | 62 | </div> |
| ... | ... | @@ -69,10 +69,10 @@ |
| 69 | 69 | </el-button> |
| 70 | 70 | <!-- <el-button plain @click="close" size="mini" style="background-color: #3F9B6A;color: #fff;">发布信息填写 |
| 71 | 71 | </el-button> --> |
| 72 | - <el-button plain @click="close" size="mini" style="background-color: #3F9B6A;color: #fff;">媒体上传 | |
| 72 | + <!-- <el-button plain @click="close" size="mini" style="background-color: #3F9B6A;color: #fff;">媒体上传 | |
| 73 | 73 | </el-button> |
| 74 | 74 | <el-button plain @click="close" size="mini" style="background-color: #fff;color: #000;border:1px solid #A0A0A0" class="buttonHover">一键发布 |
| 75 | - </el-button> | |
| 75 | + </el-button> --> | |
| 76 | 76 | <el-button plain @click="close" size="mini" style="background-color: #fff;color: #000;border:1px solid #A0A0A0" class="buttonHover">返回 |
| 77 | 77 | </el-button> |
| 78 | 78 | </div> | ... | ... |
yanshouban/src/views/order/pending/index.vue
| ... | ... | @@ -198,16 +198,17 @@ export default { |
| 198 | 198 | const res = await orderGetAll(formInline) |
| 199 | 199 | this.tableData = res.data.list |
| 200 | 200 | this.total = res.data.total |
| 201 | - this.tableLoading = false | |
| 202 | 201 | this.tableData.map(res=>{ |
| 203 | 202 | res.customerName = this.$decrypt(res.customerName) |
| 204 | 203 | res.receiveName = this.$decrypt(res.receiveName) |
| 205 | 204 | res.receivePhone = this.$decrypt(res.receivePhone) |
| 205 | + res.customerPhone = this.$decrypt(res.customerPhone) | |
| 206 | 206 | res.receiveAdress = this.$decrypt(res.receiveAdress) |
| 207 | 207 | res.price = this.$decrypt(res.price) |
| 208 | - res.customerPhone = this.$decrypt(res.customerPhone) | |
| 209 | 208 | res.address = this.$decrypt(res.address) |
| 210 | 209 | }) |
| 210 | + this.tableLoading = false | |
| 211 | + | |
| 211 | 212 | }, |
| 212 | 213 | // 导出订单 |
| 213 | 214 | async orderDataExport() { | ... | ... |
yanshouban/src/views/order/pending/pendDetails.vue
| ... | ... | @@ -247,6 +247,12 @@ export default { |
| 247 | 247 | async getProductList() { |
| 248 | 248 | const res = await orderGetById({ orderId: this.detailRow.orderId }) |
| 249 | 249 | this.order = res.data |
| 250 | + this.order.address = this.$decrypt(this.order.address) | |
| 251 | + this.order.price = this.$decrypt(this.order.price) | |
| 252 | + this.order.customerName = this.$decrypt(this.order.customerName) | |
| 253 | + this.order.receiveAdress = this.$decrypt(this.order.receiveAdress) | |
| 254 | + this.order.receiveName = this.$decrypt(this.order.receiveName) | |
| 255 | + this.order.receivePhone = this.$decrypt(this.order.receivePhone) | |
| 250 | 256 | }, |
| 251 | 257 | close() { |
| 252 | 258 | this.$emit('cancel') | ... | ... |
yanshouban/src/views/promotion/account.vue
| ... | ... | @@ -27,6 +27,17 @@ |
| 27 | 27 | style="background-color: #3F9B6A;color: #fff;">新增</el-button> |
| 28 | 28 | <el-button style="background-color: #fff;color: #000;border: 1px solid #B1B1B1;" |
| 29 | 29 | icon="el-icon-folder-add" class="buttonHover" @click="xinFenlei">渠道分类管理</el-button> |
| 30 | + <el-button @click="toufang('投放周期管理')" | |
| 31 | + style="background-color: #3F9B6A;color: #fff;">投放周期管理</el-button> | |
| 32 | + <el-button @click="toufang('投放费用管理')" | |
| 33 | + style="background-color: #3F9B6A;color: #fff;">投放费用管理</el-button> | |
| 34 | + <el-button @click="toufang('投放效果评价管理')" | |
| 35 | + style="background-color: #3F9B6A;color: #fff;">投放效果评价管理</el-button> | |
| 36 | + <el-button @click="xiaoguo" | |
| 37 | + style="background-color: #3F9B6A;color: #fff;">渠道发布内容汇总统计</el-button> | |
| 38 | + <el-button @click="" | |
| 39 | + style="background-color: #3F9B6A;color: #fff;">发布历史效果评估</el-button> | |
| 40 | + | |
| 30 | 41 | </div> |
| 31 | 42 | <div class="fenlan"> |
| 32 | 43 | <div class="souLei"> |
| ... | ... | @@ -84,7 +95,10 @@ |
| 84 | 95 | <el-table-column label="操作" min-width="250"> |
| 85 | 96 | <template slot-scope="scope"> |
| 86 | 97 | <div @click="addbuss(2,scope.row)" class="tableBtn greens">查看</div> |
| 98 | + | |
| 87 | 99 | <div @click="addbuss(3,scope.row)" class="tableBtn greens">编辑</div> |
| 100 | + <div @click="" class="tableBtn greens">内容统计数据设置</div> | |
| 101 | + <div @click="" class="tableBtn greens">投放统计数据设置</div> | |
| 88 | 102 | <div @click="handleDelete(scope.row)" class="tableBtn greens">删除</div> |
| 89 | 103 | </template> |
| 90 | 104 | </el-table-column> |
| ... | ... | @@ -171,7 +185,7 @@ |
| 171 | 185 | </div> |
| 172 | 186 | </div> --> |
| 173 | 187 | </el-dialog> |
| 174 | - <el-dialog :visible.sync="xinlei" custom-class='xiaoguo_css' style="padding: 0;" width="50%" | |
| 188 | + <el-dialog :visible.sync="xinlei" custom-class='fenlei' style="padding: 0;" width="50%" | |
| 175 | 189 | center :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false"> |
| 176 | 190 | <div style="padding:15px;background-color:#F9F9F9;font-size:14px;border:1px solid #ECECEC;margin-bottom:20px;display: flex;justify-content: space-between;"> |
| 177 | 191 | <div>新增</div> |
| ... | ... | @@ -204,6 +218,187 @@ |
| 204 | 218 | </el-button> |
| 205 | 219 | </div> |
| 206 | 220 | </el-dialog> |
| 221 | + <el-dialog :visible.sync="xiaoguoBox" custom-class='xiaoguo_css' style="padding: 0;" width="75%" | |
| 222 | + center :close-on-click-modal="false" :close-on-press-escape="false"> | |
| 223 | + <div style="padding:15px;background-color:#F9F9F9;font-size:14px;border:1px solid #ECECEC;margin-bottom:20px"> | |
| 224 | + 活动效果分析 | |
| 225 | + </div> | |
| 226 | + <div style="padding:0 20px;"> | |
| 227 | + <div style="font-size:12px;margin-bottom:10px;">统计分析</div> | |
| 228 | + <div style="display:flex;padding:10px 0;" v-for="(item,index) in xiaoguoList"> | |
| 229 | + <div style="margin-right:40px;width:17%"> | |
| 230 | + <div style="color:#BBBBBB;font-size:10px;">{{item.channelCategory}}</div> | |
| 231 | + <div style="color:#BBBBBB;font-size:10px;margin-bottom:10px">{{item.contentCategory}}</div> | |
| 232 | + <div style="font-size:14px;padding:10px 0"><span style="font-size:20px;font-weight:600;">{{item.contentCategoryNum}}</span></div> | |
| 233 | + <div style="height:5px;background-color:#FEC03D;"></div> | |
| 234 | + </div> | |
| 235 | + | |
| 236 | + </div> | |
| 237 | + | |
| 238 | + </div> | |
| 239 | + <div style="padding:0 20px;"> | |
| 240 | + <div style="font-size:12px;margin-bottom:10px;">数据分析</div> | |
| 241 | + <div style="display:flex;padding:10px 0;" v-for="(item,index) in xiaoguoList"> | |
| 242 | + <div style="margin-right:40px;width:17%"> | |
| 243 | + <div style="color:#BBBBBB;font-size:10px;margin-bottom:10px">{{item.contentCategory}}</div> | |
| 244 | + <div style="font-size:14px;padding:10px 0"><span style="font-size:20px;font-weight:600;">{{item.contentCategoryNum}}</span></div> | |
| 245 | + <div style="height:5px;background-color:#FEC03D;"></div> | |
| 246 | + </div> | |
| 247 | + | |
| 248 | + </div> | |
| 249 | + | |
| 250 | + </div> | |
| 251 | + <div style="padding:0 20px;margin-top:20px;"> | |
| 252 | + <div style="border:1px solid #EFEFEF;padding:20px 15px"> | |
| 253 | + <div style="display:flex"> | |
| 254 | + <div style="width:30%;margin-right:40px"> | |
| 255 | + <div>排名</div> | |
| 256 | + <div style="margin-top:20px;"> | |
| 257 | + <div style="display:flex;justify-content: space-between;margin-bottom:10px;"> | |
| 258 | + <div style="font-size:12px;color:#BBBBBB">主题1</div> | |
| 259 | + <div>300/100家</div> | |
| 260 | + </div> | |
| 261 | + <el-progress :text-inside="true" :stroke-width="15" :percentage="70"></el-progress> | |
| 262 | + <div style="display:flex;justify-content: space-between;margin:10px 0;"> | |
| 263 | + <div style="font-size:12px;color:#BBBBBB">主题2</div> | |
| 264 | + <div>300/100家</div> | |
| 265 | + </div> | |
| 266 | + <el-progress :text-inside="true" :stroke-width="15" :percentage="100" status="success"></el-progress> | |
| 267 | + <div style="display:flex;justify-content: space-between;margin:10px 0;"> | |
| 268 | + <div style="font-size:12px;color:#BBBBBB">主题3</div> | |
| 269 | + <div>300/100家</div> | |
| 270 | + </div> | |
| 271 | + <el-progress :text-inside="true" :stroke-width="15" :percentage="80" status="warning"></el-progress> | |
| 272 | + <div style="display:flex;justify-content: space-between;margin:10px 0;"> | |
| 273 | + <div style="font-size:12px;color:#BBBBBB">主题4</div> | |
| 274 | + <div>300/100家</div> | |
| 275 | + </div> | |
| 276 | + <el-progress :text-inside="true" :stroke-width="15" :percentage="50" status="exception"></el-progress> | |
| 277 | + </div> | |
| 278 | + </div> | |
| 279 | + <div style="width:30%;margin-right:40px"> | |
| 280 | + <div>人群占比</div> | |
| 281 | + <div style="height:250px;width:100%;" ref="shopL"> | |
| 282 | + </div> | |
| 283 | + </div> | |
| 284 | + <div style="width:30%;margin-right:40px"> | |
| 285 | + <div>交易漏斗</div> | |
| 286 | + <div style="height:250px;width:100%;" ref="jiaoL"> | |
| 287 | + </div> | |
| 288 | + </div> | |
| 289 | + </div> | |
| 290 | + </div> | |
| 291 | + <div style="padding:55px 10px 10px 10px;background-color:#fff; position:relative"> | |
| 292 | + | |
| 293 | + <el-tabs type="border-card" > | |
| 294 | + <el-tab-pane label="整体效果分析"> | |
| 295 | + <el-table :data="dataList" | |
| 296 | + :header-cell-style="{fontSize: '12px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 297 | + style="width: 100%"> | |
| 298 | + <el-table-column label="主题" width="auto" min-width="12%" align="center"> | |
| 299 | + <template slot-scope="scope"> | |
| 300 | + {{scope.$index + 1}} | |
| 301 | + </template> | |
| 302 | + </el-table-column> | |
| 303 | + <el-table-column label="环比比较" width="auto" min-width="15%" align="center"> | |
| 304 | + <template slot-scope="scope"> | |
| 305 | + {{scope.$index + 1}} | |
| 306 | + </template> | |
| 307 | + </el-table-column> | |
| 308 | + <el-table-column label="增长量" width="auto" min-width="15%" align="center"> | |
| 309 | + <template slot-scope="scope"> | |
| 310 | + {{scope.$index + 1}} | |
| 311 | + </template> | |
| 312 | + </el-table-column> | |
| 313 | + <el-table-column label="增长率" prop="name" width="auto" min-width="15%"> | |
| 314 | + <template slot-scope="scope"> | |
| 315 | + {{scope.row.name}} | |
| 316 | + </template> | |
| 317 | + </el-table-column> | |
| 318 | + <el-table-column label="投入总金额" prop="name" width="auto" min-width="15%"> | |
| 319 | + <template slot-scope="scope"> | |
| 320 | + {{scope.row.name}} | |
| 321 | + </template> | |
| 322 | + </el-table-column> | |
| 323 | + <el-table-column label="投入产出比" prop="name" width="auto" min-width="15%"> | |
| 324 | + <template slot-scope="scope"> | |
| 325 | + {{scope.row.name}} | |
| 326 | + </template> | |
| 327 | + </el-table-column> | |
| 328 | + </el-table> | |
| 329 | + </el-tab-pane> | |
| 330 | + | |
| 331 | + | |
| 332 | + </el-tabs> | |
| 333 | + </div> | |
| 334 | + | |
| 335 | + </div> | |
| 336 | + </el-dialog> | |
| 337 | + <el-dialog :visible.sync="touShow" custom-class='xiaoguo_css' style="padding: 0;" width="75%" | |
| 338 | + center :close-on-click-modal="false" :close-on-press-escape="false"> | |
| 339 | + <div style="padding:15px;background-color:#F9F9F9;font-size:14px;border:1px solid #ECECEC;margin-bottom:20px"> | |
| 340 | + {{title}} | |
| 341 | + </div> | |
| 342 | + | |
| 343 | + <div style="padding:0 20px;margin-top:20px;"> | |
| 344 | + | |
| 345 | + <el-table :data="tableData" | |
| 346 | + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}" | |
| 347 | + align="left"> | |
| 348 | + <el-table-column label="序号" min-width="10%" prop="id" > | |
| 349 | + <template slot-scope="scope"> | |
| 350 | + {{scope.$index +1 }} | |
| 351 | + </template> | |
| 352 | + </el-table-column> | |
| 353 | + <el-table-column label="渠道名称" prop="channelName" min-width="30%"> | |
| 354 | + </el-table-column> | |
| 355 | + <el-table-column label="投放周期" prop="releaseCycle" min-width="30%" v-if="title=='投放周期管理'"> | |
| 356 | + </el-table-column> | |
| 357 | + <el-table-column label="投放费用" prop="deliveryCost" min-width="30%" v-if="title=='投放费用管理'"> | |
| 358 | + </el-table-column> | |
| 359 | + <el-table-column label="投放效果评价" prop="deliveryEffect" min-width="30%" v-if="title=='投放效果评价管理'"> | |
| 360 | + </el-table-column> | |
| 361 | + | |
| 362 | + <el-table-column label="操作" min-width="30%"> | |
| 363 | + <template slot-scope="scope"> | |
| 364 | + <div @click="addbuss(2,scope.row)" class="tableBtn greens">查看</div> | |
| 365 | + <div @click="peicao('releaseCycle',scope.row)" class="tableBtn greens" v-if="title=='投放周期管理'">投放周期设置</div> | |
| 366 | + <div @click="peicao('deliveryCost',scope.row)" class="tableBtn greens" v-if="title=='投放费用管理'">投放费用设置</div> | |
| 367 | + <div @click="peicao('deliveryEffect',scope.row)" class="tableBtn greens" v-if="title=='投放效果评价管理'">评价</div> | |
| 368 | + </template> | |
| 369 | + </el-table-column> | |
| 370 | + </el-table> | |
| 371 | + | |
| 372 | + </div> | |
| 373 | + </el-dialog> | |
| 374 | + <el-dialog :visible.sync="peiShow" custom-class='bian_css' style="padding: 0;" width="45%" | |
| 375 | + :close-on-press-escape="false" center :close-on-click-modal="false" class="dialog_css_Xq" :show-close="false"> | |
| 376 | + <div style="padding:20px;"> | |
| 377 | + <div style="font-size: 14px;padding-bottom: 20px;color: #000;">{{title}}</div> | |
| 378 | + <el-form label-position="right" ref="jibenFrom" :model="peiForm" label-width="140px" | |
| 379 | + style="position: relative"> | |
| 380 | + <el-form-item label="投放周期" class="grid-content bg-purple device-from" prop="auditReminderTime" v-if="title=='投放周期管理'"> | |
| 381 | + <el-date-picker style="width:240px;margin-right:5px" v-model="peiForm.auditReminderTime" | |
| 382 | + value-format="yyyy-MM-dd HH:mm:ss" type="datetime" prefix-icon="none" > | |
| 383 | + </el-date-picker> | |
| 384 | + </el-form-item> | |
| 385 | + <el-form-item label="投放费用" class="grid-content bg-purple device-from" prop="auditReminderTime" v-if="title=='投放费用管理'"> | |
| 386 | + <el-input v-model="peiForm.auditReminderTime" placeholder="请输入" /> | |
| 387 | + </el-form-item> | |
| 388 | + <el-form-item label="评级" class="grid-content bg-purple device-from" prop="auditReminderTime" v-if="title=='投放效果评价管理'"> | |
| 389 | + <el-input v-model="peiForm.auditReminderTime" placeholder="请输入" /> | |
| 390 | + </el-form-item> | |
| 391 | + </el-form> | |
| 392 | + <div style="padding-top:20px;display:flex;justify-content: flex-end;"> | |
| 393 | + <el-button style="background-color: #3F9B6A;color: #fff" | |
| 394 | + @click="peiCheck">确定</el-button> | |
| 395 | + <el-button @click="peiShow = false" style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" class="buttonHover">取消</el-button> | |
| 396 | + | |
| 397 | + </div> | |
| 398 | + | |
| 399 | + </div> | |
| 400 | + | |
| 401 | + </el-dialog> | |
| 207 | 402 | </div> |
| 208 | 403 | |
| 209 | 404 | </template> |
| ... | ... | @@ -215,7 +410,8 @@ |
| 215 | 410 | quGetOne, |
| 216 | 411 | quAdd, |
| 217 | 412 | quEdit, |
| 218 | - quDel | |
| 413 | + quDel, | |
| 414 | + statisticalAnalysis | |
| 219 | 415 | } from '@/api/account.js' |
| 220 | 416 | import { |
| 221 | 417 | cereGet, |
| ... | ... | @@ -224,6 +420,7 @@ |
| 224 | 420 | cereDel |
| 225 | 421 | } from '../../api/activityBz' |
| 226 | 422 | import upimg from "@/components/ImageUpload/index" |
| 423 | + import * as echarts from 'echarts' | |
| 227 | 424 | export default { |
| 228 | 425 | components: { upimg}, |
| 229 | 426 | data() { |
| ... | ... | @@ -291,7 +488,21 @@ |
| 291 | 488 | children: 'children', |
| 292 | 489 | label: 'classificationName' |
| 293 | 490 | }, |
| 294 | - xianFenlei:[] | |
| 491 | + xianFenlei:[], | |
| 492 | + xiaoguoBox:false, | |
| 493 | + chart: null, //饼图 | |
| 494 | + chart1: null, //漏斗图 | |
| 495 | + dataList:[], | |
| 496 | + xiaoguoList:[], | |
| 497 | + touShow:false, | |
| 498 | + title:'', | |
| 499 | + | |
| 500 | + peiShow:false, | |
| 501 | + peiForm:{ | |
| 502 | + auditReminderTime:'' | |
| 503 | + }, | |
| 504 | + ziduan:'' | |
| 505 | + | |
| 295 | 506 | } |
| 296 | 507 | }, |
| 297 | 508 | computed: {}, |
| ... | ... | @@ -549,6 +760,151 @@ |
| 549 | 760 | } |
| 550 | 761 | this.getAll() |
| 551 | 762 | }, |
| 763 | + async xiaoguo() { | |
| 764 | + // let res = await statisticalAnalysis() | |
| 765 | + // this.xiaoguoList = res.data | |
| 766 | + this.xiaoguoBox = true | |
| 767 | + this.$nextTick(() => { | |
| 768 | + this.shopLiu(this.$refs.shopL); | |
| 769 | + this.jiaoLiu(this.$refs.jiaoL); | |
| 770 | + this.resizeChart = () => { | |
| 771 | + try { | |
| 772 | + this.chart.resize(); | |
| 773 | + this.chart1.resize(); | |
| 774 | + } catch (error) { | |
| 775 | + console.log(error); | |
| 776 | + } | |
| 777 | + }; | |
| 778 | + window.addEventListener('resize', this.resizeChart, false); // false代表事件句柄在冒泡阶段执行 | |
| 779 | + }) | |
| 780 | + }, | |
| 781 | + shopLiu(Dom){ | |
| 782 | + this.chart = echarts.init(Dom) | |
| 783 | + let option = { | |
| 784 | + tooltip: { | |
| 785 | + trigger: 'item' | |
| 786 | + }, | |
| 787 | + | |
| 788 | + legend: { | |
| 789 | + textStyle:{ | |
| 790 | + fontSize: 14 | |
| 791 | + }, | |
| 792 | + icon:'circle', | |
| 793 | + top: '40%', | |
| 794 | + left: '65%' | |
| 795 | + }, | |
| 796 | + color:['#50B5FF','#FFC542','#8167F5','#FF7474','#58A3F7'], | |
| 797 | + series: [ | |
| 798 | + { | |
| 799 | + type: 'pie', | |
| 800 | + radius: ['40%', '70%'], | |
| 801 | + center:['35%','60%'], | |
| 802 | + avoidLabelOverlap: false, | |
| 803 | + padAngle: 5, | |
| 804 | + itemStyle: { | |
| 805 | + borderRadius: 10 | |
| 806 | + }, | |
| 807 | + label: { | |
| 808 | + show: false, | |
| 809 | + position: 'center', | |
| 810 | + formatter: '{c}' | |
| 811 | + }, | |
| 812 | + emphasis: { | |
| 813 | + label: { | |
| 814 | + show: true, | |
| 815 | + fontSize: 16, | |
| 816 | + } | |
| 817 | + }, | |
| 818 | + labelLine: { | |
| 819 | + show: false | |
| 820 | + }, | |
| 821 | + data: [ | |
| 822 | + { value: 1048, name: '0-20' }, | |
| 823 | + { value: 735, name: '20-30' }, | |
| 824 | + { value: 580, name: '30-40' }, | |
| 825 | + { value: 484, name: '40-50' }, | |
| 826 | + { value: 300, name: '50-60' } | |
| 827 | + ] | |
| 828 | + } | |
| 829 | + ] | |
| 830 | + } | |
| 831 | + this.chart.setOption(option) | |
| 832 | + }, | |
| 833 | + jiaoLiu(Dom){ | |
| 834 | + this.chart1 = echarts.init(Dom) | |
| 835 | + let option = { | |
| 836 | + tooltip: { | |
| 837 | + trigger: 'item', | |
| 838 | + formatter: '{b} : {c}%' | |
| 839 | + }, | |
| 840 | + series: [ | |
| 841 | + { | |
| 842 | + type: 'funnel', | |
| 843 | + left: '10%', | |
| 844 | + top: 60, | |
| 845 | + bottom: 30, | |
| 846 | + width: '70%', | |
| 847 | + min: 0, | |
| 848 | + max: 100, | |
| 849 | + minSize: '45%', | |
| 850 | + maxSize: '100%', | |
| 851 | + sort: 'descending', | |
| 852 | + gap: 2, | |
| 853 | + label: { | |
| 854 | + show: true, | |
| 855 | + position: 'inside' | |
| 856 | + }, | |
| 857 | + labelLine: { | |
| 858 | + length: 10, | |
| 859 | + lineStyle: { | |
| 860 | + width: 1, | |
| 861 | + type: 'solid' | |
| 862 | + } | |
| 863 | + }, | |
| 864 | + itemStyle: { | |
| 865 | + borderColor: '#fff', | |
| 866 | + borderWidth: 1 | |
| 867 | + }, | |
| 868 | + emphasis: { | |
| 869 | + label: { | |
| 870 | + fontSize: 20 | |
| 871 | + } | |
| 872 | + }, | |
| 873 | + color:['#50B5FF','#5AD8A6','#5D7092','#F6BD16'], | |
| 874 | + data: [ | |
| 875 | + { value: 60, name: '访问人数' }, | |
| 876 | + { value: 40, name: '提交订单' }, | |
| 877 | + { value: 20, name: '支付成功' }, | |
| 878 | + { value: 80, name: '到店消费' }, | |
| 879 | + ] | |
| 880 | + } | |
| 881 | + ] | |
| 882 | + } | |
| 883 | + this.chart1.setOption(option) | |
| 884 | + }, | |
| 885 | + toufang(title){ | |
| 886 | + | |
| 887 | + this.title = title | |
| 888 | + this.touShow = true | |
| 889 | + }, | |
| 890 | + peicao(ziduan,item){ | |
| 891 | + | |
| 892 | + this.peiId= item.id | |
| 893 | + this.ziduan = ziduan | |
| 894 | + this.peiForm.auditReminderTime = '' | |
| 895 | + this.peiShow = true | |
| 896 | + }, | |
| 897 | + async peiCheck(){ | |
| 898 | + if(this.ziduan == 'releaseCycle'){ | |
| 899 | + await quEdit({id:this.peiId,releaseCycle:this.peiForm.auditReminderTime}) | |
| 900 | + }else if(this.ziduan == 'deliveryCost'){ | |
| 901 | + await quEdit({id:this.peiId,deliveryCost:this.peiForm.auditReminderTime}) | |
| 902 | + }else{ | |
| 903 | + await quEdit({id:this.peiId,deliveryEffect:this.peiForm.auditReminderTime}) | |
| 904 | + } | |
| 905 | + | |
| 906 | + }, | |
| 907 | + | |
| 552 | 908 | } |
| 553 | 909 | } |
| 554 | 910 | </script> |
| ... | ... | @@ -766,8 +1122,16 @@ |
| 766 | 1122 | font-weight:100 |
| 767 | 1123 | } |
| 768 | 1124 | ::v-deep .xiaoguo_css{ |
| 1125 | + margin-top:10vh !important; | |
| 1126 | + margin-left:10% !important; | |
| 769 | 1127 | .el-dialog__body{ |
| 770 | 1128 | padding:0px !important; |
| 771 | 1129 | } |
| 772 | 1130 | } |
| 1131 | + ::v-deep .fenlei{ | |
| 1132 | + .el-dialog__body{ | |
| 1133 | + padding:0px !important; | |
| 1134 | + } | |
| 1135 | + } | |
| 1136 | + | |
| 773 | 1137 | </style> | ... | ... |
yanshouban/src/views/revenue/details/index.vue
| ... | ... | @@ -130,7 +130,11 @@ export default { |
| 130 | 130 | let res = await getSalesParticular(this.pageIndex) |
| 131 | 131 | this.tableData = res.data.list |
| 132 | 132 | this.total = res.data.total |
| 133 | - | |
| 133 | + this.tableData.map(res=>{ | |
| 134 | + res.dataIntegrity = this.$decrypt(res.dataIntegrity) | |
| 135 | + res.price = this.$decrypt(res.price) | |
| 136 | + res.ticketPrice = this.$decrypt(res.ticketPrice) | |
| 137 | + }) | |
| 134 | 138 | |
| 135 | 139 | }, |
| 136 | 140 | search(){ | ... | ... |
yanshouban/src/views/revenue/totalsales/index.vue
| ... | ... | @@ -47,6 +47,9 @@ |
| 47 | 47 | </el-form-item> |
| 48 | 48 | </el-form> |
| 49 | 49 | </div> |
| 50 | + <div> | |
| 51 | + <el-button style="background-color: #3F9B6A;color: #fff" @click="daochu">导出</el-button> | |
| 52 | + </div> | |
| 50 | 53 | </div> |
| 51 | 54 | <!-- 表格 --> |
| 52 | 55 | <div class="content_table" style="padding: 15px 10px 10px 20px;background-color:#F2F3F5"> |
| ... | ... | @@ -152,7 +155,7 @@ |
| 152 | 155 | |
| 153 | 156 | <script> |
| 154 | 157 | import * as echarts from 'echarts'; |
| 155 | -import {getTotalSales} from '@/api/piaowu' | |
| 158 | +import {getTotalSales,excelToTotalSales} from '@/api/piaowu' | |
| 156 | 159 | export default { |
| 157 | 160 | data() { |
| 158 | 161 | return { |
| ... | ... | @@ -229,6 +232,12 @@ numOne:0, |
| 229 | 232 | let res = await getTotalSales(this.pageIndex) |
| 230 | 233 | this.tableData = res.data.list |
| 231 | 234 | this.total = res.data.total |
| 235 | + this.tableData.map(res=>{ | |
| 236 | + | |
| 237 | + res.price = this.$decrypt(res.price) | |
| 238 | + res.ticketPrice = this.$decrypt(res.ticketPrice) | |
| 239 | + console.log(res.price) | |
| 240 | + }) | |
| 232 | 241 | // this.echar(res.data.list) |
| 233 | 242 | let numOne =0 |
| 234 | 243 | let moyeOne =0 |
| ... | ... | @@ -239,18 +248,20 @@ numOne:0, |
| 239 | 248 | let moyethree =0 |
| 240 | 249 | |
| 241 | 250 | this.tableData.map(item=>{ |
| 242 | - moyeOne += item.price | |
| 251 | + moyeOne += Number(item.price) | |
| 243 | 252 | if(item.ticketChannel == '美团'){ |
| 244 | 253 | numOne += item.num |
| 245 | - meimoye+=item.price | |
| 254 | + meimoye = meimoye + Number(item.price) | |
| 246 | 255 | } |
| 247 | 256 | if(item.ticketChannel == '大麦'){ |
| 248 | 257 | numTwo += item.num |
| 249 | - moyeTwo += item.price | |
| 258 | + | |
| 259 | + moyeTwo = moyeTwo + Number(item.price) | |
| 250 | 260 | } |
| 251 | 261 | if(item.ticketChannel == '携程'){ |
| 252 | 262 | numthree += item.num |
| 253 | - moyethree += item.price | |
| 263 | + | |
| 264 | + moyethree = moyethree + Number(item.price) | |
| 254 | 265 | } |
| 255 | 266 | }) |
| 256 | 267 | this.numOne = numOne |
| ... | ... | @@ -260,9 +271,9 @@ numOne:0, |
| 260 | 271 | this.meimoye = meimoye |
| 261 | 272 | this.numthree = numthree |
| 262 | 273 | this.moyethree = moyethree |
| 263 | -this.echar2(res.data.list) | |
| 264 | -this.echar3(res.data.list) | |
| 265 | -this.echar(res.data.list) | |
| 274 | +this.echar2(this.tableData) | |
| 275 | +this.echar3( this.tableData) | |
| 276 | +this.echar( this.tableData) | |
| 266 | 277 | }, |
| 267 | 278 | search(){ |
| 268 | 279 | if(this.pageIndex.list.length !=0){ |
| ... | ... | @@ -335,10 +346,10 @@ this.echar(res.data.list) |
| 335 | 346 | |
| 336 | 347 | // 如果存在,则累加值 |
| 337 | 348 | if (existingItemIndex !== -1) { |
| 338 | - accumulator[existingItemIndex].value += item.price; | |
| 349 | + accumulator[existingItemIndex].value += Number(item.price); | |
| 339 | 350 | } else { |
| 340 | 351 | // 如果不存在,则添加新项 |
| 341 | - accumulator.push({ name: item.ticketChannel, value: item.price }); | |
| 352 | + accumulator.push({ name: item.ticketChannel, value:Number(item.price)}); | |
| 342 | 353 | } |
| 343 | 354 | |
| 344 | 355 | return accumulator; |
| ... | ... | @@ -372,10 +383,10 @@ this.echar(res.data.list) |
| 372 | 383 | |
| 373 | 384 | // 如果存在,则累加值 |
| 374 | 385 | if (existingItemIndex !== -1) { |
| 375 | - accumulator[existingItemIndex].value += item.price; | |
| 386 | + accumulator[existingItemIndex].value +=Number(item.price); | |
| 376 | 387 | } else { |
| 377 | 388 | // 如果不存在,则添加新项 |
| 378 | - accumulator.push({ name: item.ticketType, value: item.price }); | |
| 389 | + accumulator.push({ name: item.ticketType, value: Number(item.price) }); | |
| 379 | 390 | } |
| 380 | 391 | |
| 381 | 392 | return accumulator; |
| ... | ... | @@ -426,15 +437,43 @@ this.echar(res.data.list) |
| 426 | 437 | }); |
| 427 | 438 | |
| 428 | 439 | return sums; |
| 429 | - } | |
| 430 | - }, | |
| 440 | + }, | |
| 441 | + | |
| 431 | 442 | handleCurrentChange(val) { |
| 432 | 443 | this.currentPage = val |
| 433 | 444 | }, |
| 434 | 445 | handleSizeChange(val) { |
| 435 | 446 | this.pageSize = val |
| 436 | 447 | }, |
| 448 | + async daochu(){ | |
| 449 | + let res = await excelToTotalSales(this.pageIndex) | |
| 450 | + if(!res){ | |
| 451 | + return | |
| 452 | + } | |
| 453 | + const blob = new Blob([res], { type: 'application/vnd.ms-excel' }) | |
| 454 | + const fileName = '总销售额明细表.xls' | |
| 455 | + if ('download' in document.createElement('a')) { | |
| 456 | + // 非IE下载 | |
| 457 | + const elink = document.createElement('a') | |
| 458 | + elink.download = fileName | |
| 459 | + elink.style.display = 'none' | |
| 460 | + elink.href = URL.createObjectURL(blob) | |
| 461 | + document.body.appendChild(elink) | |
| 462 | + elink.click() | |
| 463 | + URL.revokeObjectURL(elink.href) // 释放URL 对象 | |
| 464 | + document.body.removeChild(elink) | |
| 465 | + } else { | |
| 466 | + // IE10+下载 | |
| 467 | + navigator.msSaveBlob(blob, fileName) | |
| 468 | + } | |
| 469 | + this.$message({ | |
| 470 | + message: '导出成功', | |
| 471 | + type: 'success' | |
| 472 | + }) | |
| 473 | + | |
| 437 | 474 | |
| 475 | + }, | |
| 476 | + } | |
| 438 | 477 | } |
| 439 | 478 | </script> |
| 440 | 479 | ... | ... |
yanshouban/src/views/scheme/addressguan.vue
| ... | ... | @@ -9,7 +9,7 @@ |
| 9 | 9 | <div class="formSearch"> |
| 10 | 10 | <div class="demo-input-suffix"> |
| 11 | 11 | <div style="width:68px;height:36px;line-height:32px;">位置</div> |
| 12 | - <el-input placeholder="请输入" v-model="formSel.policyName" style="width:168px;margin-right: 15px"> | |
| 12 | + <el-input placeholder="请输入" v-model="formSel.locationName" style="width:168px;margin-right: 15px"> | |
| 13 | 13 | </el-input> |
| 14 | 14 | </div> |
| 15 | 15 | <div> |
| ... | ... | @@ -34,9 +34,9 @@ |
| 34 | 34 | {{scope.$index +1}} |
| 35 | 35 | </template> |
| 36 | 36 | </el-table-column> |
| 37 | - <el-table-column label="位置名称" prop="policyName" min-width="200" > | |
| 37 | + <el-table-column label="位置名称" prop="locationName" min-width="200" > | |
| 38 | 38 | </el-table-column> |
| 39 | - <el-table-column label="创建时间" prop="applicableResources" min-width="100" > | |
| 39 | + <el-table-column label="创建时间" prop="createDate" min-width="100" > | |
| 40 | 40 | </el-table-column> |
| 41 | 41 | <el-table-column label="操作" min-width="200" > |
| 42 | 42 | <template slot-scope="scope"> |
| ... | ... | @@ -55,8 +55,8 @@ |
| 55 | 55 | :close-on-click-modal="false" > |
| 56 | 56 | <div style="padding:20px;" class="xinFrom"> |
| 57 | 57 | <el-form :model="form" ref="ruleForm" label-width="80px"> |
| 58 | - <el-form-item label="商铺位置" prop="policyName"> | |
| 59 | - <el-input v-model="form.policyName" placeholder="请输入" style="width: 87%;margin-right: 15px" maxlength="50"></el-input> | |
| 58 | + <el-form-item label="商铺位置" prop="locationName"> | |
| 59 | + <el-input v-model="form.locationName" placeholder="请输入" style="width: 87%;margin-right: 15px" maxlength="50"></el-input> | |
| 60 | 60 | </el-form-item> |
| 61 | 61 | |
| 62 | 62 | </el-form> |
| ... | ... | @@ -69,6 +69,8 @@ |
| 69 | 69 | </div> |
| 70 | 70 | </div> |
| 71 | 71 | </el-dialog> |
| 72 | + <el-button @click="quxiao()" style="background-color: #fff;color: #000;border: 1px solid #B1B1B1;" | |
| 73 | + class="buttonHover">取 消</el-button> | |
| 72 | 74 | </div> |
| 73 | 75 | </template> |
| 74 | 76 | |
| ... | ... | @@ -78,6 +80,10 @@ |
| 78 | 80 | ceAdd, |
| 79 | 81 | ceEdit, |
| 80 | 82 | ceDel, |
| 83 | + addAddress, | |
| 84 | + deleteAddress, | |
| 85 | + editAddress, | |
| 86 | + getAllAddress, | |
| 81 | 87 | } from '../../api/sam.js' |
| 82 | 88 | import wangEditor from "@/components/editor/index" |
| 83 | 89 | import upimg from "@/components/ImageUpload/index" |
| ... | ... | @@ -95,7 +101,9 @@ |
| 95 | 101 | data() { |
| 96 | 102 | return { |
| 97 | 103 | formSel:{ |
| 98 | - policyName:'' | |
| 104 | + locationName:'', | |
| 105 | + pageNumber: 1, | |
| 106 | + pageSize: 10, | |
| 99 | 107 | }, |
| 100 | 108 | tableData:[], |
| 101 | 109 | currentPage: 1, |
| ... | ... | @@ -104,10 +112,14 @@ |
| 104 | 112 | pageSize: 10, |
| 105 | 113 | xinShow:false, |
| 106 | 114 | form:{ |
| 107 | - policyName:'', | |
| 108 | - }, | |
| 109 | - index:0 | |
| 115 | + locationName:'', | |
| 110 | 116 | |
| 117 | + }, | |
| 118 | + index:0, | |
| 119 | + formPage:{ | |
| 120 | + pageNumber: 1, | |
| 121 | + pageSize: 10, | |
| 122 | + }, | |
| 111 | 123 | } |
| 112 | 124 | }, |
| 113 | 125 | |
| ... | ... | @@ -120,38 +132,101 @@ this.getAll() |
| 120 | 132 | }, |
| 121 | 133 | |
| 122 | 134 | methods: { |
| 123 | - getAll(){ | |
| 124 | - | |
| 135 | + async getAll(){ | |
| 136 | + let res = await getAllAddress(this.formPage) | |
| 137 | + this.tableData = res.data.content | |
| 138 | + this.total = res.data.numberOfElements | |
| 125 | 139 | }, |
| 126 | 140 | handleCurrentChange(){ |
| 127 | 141 | |
| 128 | 142 | }, |
| 129 | - onSubmit(){ | |
| 130 | - | |
| 143 | + async onSubmit(){ | |
| 144 | + let res = await getAllAddress(this.formSel) | |
| 145 | + this.tableData = res.data.content | |
| 146 | + this.total = res.data.numberOfElements | |
| 131 | 147 | }, |
| 132 | 148 | resetting(){ |
| 133 | - | |
| 149 | + this.formSel={ | |
| 150 | + locationName:'', | |
| 151 | + pageNumber: 1, | |
| 152 | + pageSize: 10, | |
| 153 | + } | |
| 154 | + this.getAll() | |
| 134 | 155 | }, |
| 135 | 156 | closeFn(){ |
| 136 | 157 | |
| 137 | 158 | this.xinShow = false |
| 138 | 159 | this.getAll() |
| 139 | 160 | }, |
| 140 | - addCheck(){ | |
| 141 | - this.xinShow = false | |
| 142 | -this.getAll() | |
| 161 | + addCheck(index){ | |
| 162 | + if(index ==0){ | |
| 163 | + addAddress(this.form).then(res=>{ | |
| 164 | + this.$message({ | |
| 165 | + message: '新增成功', | |
| 166 | + type: 'success' | |
| 167 | + }) | |
| 168 | + this.getAll() | |
| 169 | + this.xinShow = false | |
| 170 | + }) | |
| 171 | + }else{ | |
| 172 | + editAddress(this.form).then(res=>{ | |
| 173 | + this.$message({ | |
| 174 | + message: '修改成功', | |
| 175 | + type: 'success' | |
| 176 | + }) | |
| 177 | + this.getAll() | |
| 178 | + this.xinShow = false | |
| 179 | + }) | |
| 180 | + } | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 143 | 184 | }, |
| 144 | 185 | addbuss(){ |
| 145 | 186 | this.index = 0 |
| 146 | 187 | this.xinShow = true |
| 147 | 188 | }, |
| 148 | - handleEditForm(){ | |
| 189 | + handleEditForm(item){ | |
| 149 | 190 | this.index =1 |
| 191 | + this.form = item | |
| 150 | 192 | this.xinShow = true |
| 151 | 193 | }, |
| 152 | - handleDelete(){ | |
| 194 | + handleDelete(item){ | |
| 195 | + | |
| 196 | + const h = this.$createElement; | |
| 197 | + this.$msgbox({ | |
| 198 | + title: '消息', | |
| 199 | + message: h('p', null, [ | |
| 200 | + h('span', null, '是否删除 '), | |
| 201 | + ]), | |
| 202 | + showCancelButton: true, | |
| 203 | + showClose: false, | |
| 204 | + confirmButtonText: '确定', | |
| 205 | + cancelButtonText: '取消', | |
| 206 | + customClass: 'oe-dialog-btn', | |
| 207 | + beforeClose: (action, instance, done) => { | |
| 208 | + if (action === 'confirm') { | |
| 209 | + deleteAddress({ | |
| 210 | + id: item.id | |
| 211 | + }).then(res => { | |
| 212 | + this.$message({ | |
| 213 | + message: '删除成功', | |
| 214 | + type: 'success' | |
| 215 | + }) | |
| 216 | + this.getAll() | |
| 217 | + done(); | |
| 218 | + }) | |
| 219 | + } else { | |
| 220 | + done(); | |
| 221 | + } | |
| 222 | + } | |
| 223 | + }) | |
| 224 | + | |
| 153 | 225 | |
| 154 | 226 | }, |
| 227 | + quxiao(){ | |
| 228 | + this.$emit('addClose', false); | |
| 229 | + }, | |
| 155 | 230 | } |
| 156 | 231 | } |
| 157 | 232 | </script> | ... | ... |
yanshouban/src/views/scheme/planningBz.vue
| ... | ... | @@ -36,6 +36,8 @@ |
| 36 | 36 | <div style="margin:20px 0;display:flex;"> |
| 37 | 37 | <el-button icon="el-icon-circle-plus-outline" @click="addbuss(1)" |
| 38 | 38 | style="background-color: #3F9B6A;color: #fff;padding:8px 15px;">新增</el-button> |
| 39 | + <el-button @click="addbuss(1)" | |
| 40 | + style="background-color: #3F9B6A;color: #fff;padding:8px 15px;">招商规划方案参数化配置</el-button> | |
| 39 | 41 | <el-upload class="upload-demo" ref="upload" |
| 40 | 42 | :limit="1" |
| 41 | 43 | accept=".xlsx" |
| ... | ... | @@ -77,9 +79,9 @@ |
| 77 | 79 | <el-table-column label="操作" min-width="250" > |
| 78 | 80 | <template slot-scope="scope"> |
| 79 | 81 | <div @click="handleEditForm(scope.row,1)" class="tableBtn greens">查看</div> |
| 80 | - <div @click="handleEditForm(scope.row,2)" class="tableBtn greens" >编辑</div> | |
| 82 | + <div @click="handleEditForm(scope.row,2)" class="tableBtn greens" v-if="scope.row.reviewStatus == 1">编辑</div> | |
| 81 | 83 | <!-- <div class="tableBtn greens">撤回</div> --> |
| 82 | - <div @click="handleDelete(scope.row)" class="tableBtn greens" >删除</div> | |
| 84 | + <div @click="handleDelete(scope.row)" class="tableBtn greens" v-if="scope.row.reviewStatus == 1">删除</div> | |
| 83 | 85 | </template> |
| 84 | 86 | </el-table-column> |
| 85 | 87 | </el-table> |
| ... | ... | @@ -605,6 +607,7 @@ this.total = res.data.content.length |
| 605 | 607 | }, |
| 606 | 608 | closexaing(val){ |
| 607 | 609 | this.xiang = false |
| 610 | + this.getAll() | |
| 608 | 611 | }, |
| 609 | 612 | handleClick() { |
| 610 | 613 | |
| ... | ... | @@ -628,7 +631,8 @@ this.total = res.data.content.length |
| 628 | 631 | this.getAll() |
| 629 | 632 | }, |
| 630 | 633 | yulanFu(item){ |
| 631 | - console.log(item) | |
| 634 | + window.location.href =item.url ; | |
| 635 | + | |
| 632 | 636 | }, |
| 633 | 637 | getCurrentDateRange() { |
| 634 | 638 | const today = new Date(); | ... | ... |
yanshouban/src/views/scheme/planningPar.vue
| ... | ... | @@ -142,7 +142,7 @@ |
| 142 | 142 | </el-row> |
| 143 | 143 | <el-row :gutter="20"> |
| 144 | 144 | <el-form-item label="附件信息"> |
| 145 | - <div style="color: #3F9B6A;" v-if="secondData.annex"> | |
| 145 | + <div style="color: #3F9B6A;" v-if="secondData.annex" @click="yulanFu(secondData.annex)"> | |
| 146 | 146 | {{secondData.annex.name}} |
| 147 | 147 | </div> |
| 148 | 148 | <!-- <el-upload class="upload-demo" ref="upload" :action="upload" :on-preview="handlePreview" |
| ... | ... | @@ -638,6 +638,7 @@ |
| 638 | 638 | pageindex: { |
| 639 | 639 | pageNumber: 1, |
| 640 | 640 | pageSize: 10, |
| 641 | + reviewStatus:'1' | |
| 641 | 642 | }, |
| 642 | 643 | fileList: [], |
| 643 | 644 | ggXinShow:true, |
| ... | ... | @@ -754,6 +755,10 @@ this.total = res.data.content.length |
| 754 | 755 | |
| 755 | 756 | this.xiang = true |
| 756 | 757 | }, |
| 758 | + yulanFu(item){ | |
| 759 | + window.location.href =item.url ; | |
| 760 | + | |
| 761 | + }, | |
| 757 | 762 | } |
| 758 | 763 | } |
| 759 | 764 | </script> | ... | ... |
yanshouban/src/views/scheme/sam.vue
yanshouban/src/views/scheme/samXin.vue
| ... | ... | @@ -50,7 +50,7 @@ |
| 50 | 50 | </el-col> |
| 51 | 51 | <el-col :span="12"> |
| 52 | 52 | <el-form-item label="租金价格" prop="rentalPrice"> |
| 53 | - <el-input v-model.number="form.rentalPrice" placeholder="请输入" style="width: 72%;margin-right: 15px;" maxlength="30"> | |
| 53 | + <el-input v-model="form.rentalPrice" placeholder="请输入" style="width: 72%;margin-right: 15px;" maxlength="30"> | |
| 54 | 54 | <template slot="suffix"><span |
| 55 | 55 | style="position: absolute;top: 19px;right: 1px;width: 50px;">元/m<sup>2</sup></span></template> |
| 56 | 56 | <!-- <i slot="suffix" class="el-input__icon el-icon-date"></i> --> |
| ... | ... | @@ -223,7 +223,7 @@ |
| 223 | 223 | </el-col> |
| 224 | 224 | <el-col :span="12"> |
| 225 | 225 | <el-form-item label="租金价格" prop="rentalPrice"> |
| 226 | - <el-input v-model.number="formInline.rentalPrice" placeholder="请输入" style="width: 72%;margin-right: 15px" maxlength="30"> | |
| 226 | + <el-input v-model="formInline.rentalPrice" placeholder="请输入" style="width: 72%;margin-right: 15px" maxlength="30"> | |
| 227 | 227 | <template slot="suffix"><span |
| 228 | 228 | style="position: absolute;top: 19px;right: 1px;width: 50px;">元/m<sup>2</sup></span></template> |
| 229 | 229 | </el-input> |
| ... | ... | @@ -391,10 +391,6 @@ |
| 391 | 391 | message: '请输入租金价格' |
| 392 | 392 | }, |
| 393 | 393 | { |
| 394 | - type: 'number', | |
| 395 | - message: '必须为数字值' | |
| 396 | - }, | |
| 397 | - { | |
| 398 | 394 | validator: (rule, value, callback) => { |
| 399 | 395 | if (value <= 0) { |
| 400 | 396 | callback(new Error('租金价格必须大于0')); | ... | ... |
yanshouban/src/views/serve/kefuServe/index.vue
| ... | ... | @@ -7,16 +7,8 @@ |
| 7 | 7 | </div> |
| 8 | 8 | <!-- 搜索 --> |
| 9 | 9 | <!-- <div class="formSearch"> |
| 10 | - <el-form :inline="true" :model="formSel"> | |
| 11 | - <el-form-item label="标题"> | |
| 12 | - <el-input v-model="formSel.title" placeholder="请输入" style="width:168px;" /> | |
| 13 | - </el-form-item> | |
| 14 | - </el-form> | |
| 15 | 10 | <div> |
| 16 | - <el-button @click="onSubmit" style="background-color: #3F9B6A;color: #fff">查询 | |
| 17 | - </el-button> | |
| 18 | - <el-button @click="resetting" class="buttonHover" | |
| 19 | - style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;">重置 | |
| 11 | + <el-button @click="setPei" style="background-color: #3F9B6A;color: #fff">报修流程配置 | |
| 20 | 12 | </el-button> |
| 21 | 13 | </div> |
| 22 | 14 | </div> --> |
| ... | ... | @@ -44,16 +36,23 @@ |
| 44 | 36 | <el-table-column label="设备名称" prop="deviceName" width="auto" min-width="12%" /> |
| 45 | 37 | <el-table-column label="备注" prop="memo" width="auto" min-width="12%" /> |
| 46 | 38 | |
| 47 | - <el-table-column label="申请时间" prop="applicationTime" width="auto" min-width="12%" /> | |
| 48 | 39 | |
| 40 | + <el-table-column label="申请时间" prop="applicationTime" width="auto" min-width="12%" /> | |
| 41 | + <el-table-column label="报修到期时间" prop="repairEndTime" width="auto" min-width="12%" /> | |
| 42 | + <el-table-column label="报修人" prop="repairman" width="auto" min-width="12%" /> | |
| 43 | +<el-table-column label="状态" prop="repairStatus" width="auto" min-width="12%" > | |
| 44 | + <template slot-scope="scope"> | |
| 45 | + {{scope.row.repairStatus==0?'暂未派单':scope.row.repairStatus==1?'已派单':scope.row.repairStatus==2?'已完成':scope.row.repairStatus==3?'已过期':''}} | |
| 46 | + </template> | |
| 47 | + </el-table-column> | |
| 49 | 48 | <el-table-column label="操作" width="auto" min-width="17%"> |
| 50 | 49 | <template slot-scope="scope"> |
| 51 | 50 | <div class="tableBtn greens" @click="handleEditForm(scope.row)"> |
| 52 | 51 | 查看 |
| 53 | 52 | </div> |
| 54 | - <!-- <div class="tableBtn greens"> | |
| 55 | - 再次发布 | |
| 56 | - </div> --> | |
| 53 | +<div class="tableBtn greens" @click="setPei(scope.row)"> | |
| 54 | + 报修流程配置 | |
| 55 | + </div> | |
| 57 | 56 | <div class="tableBtn greens" @click="delGuan(scope.row,1)"> |
| 58 | 57 | 删除 |
| 59 | 58 | </div> |
| ... | ... | @@ -86,6 +85,7 @@ |
| 86 | 85 | <el-table-column label="问题描述" prop="problemDescription" width="auto" min-width="12%" /> |
| 87 | 86 | <el-table-column label="备注" prop="remark" width="auto" min-width="12%" /> |
| 88 | 87 | <el-table-column label="申请时间" prop="applicationTime" width="auto" min-width="12%" /> |
| 88 | + | |
| 89 | 89 | <el-table-column label="操作" width="auto" min-width="17%"> |
| 90 | 90 | <template slot-scope="scope"> |
| 91 | 91 | <div class="tableBtn greens" @click="handleEditForm(scope.row)"> |
| ... | ... | @@ -158,6 +158,31 @@ |
| 158 | 158 | |
| 159 | 159 | </div> |
| 160 | 160 | </div> |
| 161 | + <el-dialog :visible.sync="setPeiShow" custom-class='bian_css' style="padding: 0;" width="45%" | |
| 162 | + :close-on-press-escape="false" center :close-on-click-modal="false" class="dialog_css_Xq" :show-close="false"> | |
| 163 | + <div style="padding:20px;"> | |
| 164 | + <div style="font-size: 14px;padding-bottom: 20px;color: #000;">报修流程配置</div> | |
| 165 | + <el-form label-position="right" ref="jibenFrom" :model="peiForm" label-width="140px" | |
| 166 | + style="position: relative"> | |
| 167 | + <el-form-item label="报修到期时间" class="grid-content bg-purple device-from" prop="repairEndTime"> | |
| 168 | + <el-date-picker style="width:240px;margin-right:5px" v-model="peiForm.repairEndTime" | |
| 169 | + value-format="yyyy-MM-dd HH:mm:ss" type="datetime" prefix-icon="none" > | |
| 170 | + </el-date-picker> | |
| 171 | + </el-form-item> | |
| 172 | + <el-form-item label="报修人" class="grid-content bg-purple device-from" prop="repairman"> | |
| 173 | + <el-input v-model="peiForm.repairman" placeholder="请输入" style="margin-top:5px;" maxlength="20"/> | |
| 174 | + </el-form-item> | |
| 175 | + </el-form> | |
| 176 | + <div style="padding-top:20px;display:flex;justify-content: flex-end;"> | |
| 177 | + <el-button style="background-color: #3F9B6A;color: #fff" | |
| 178 | + @click="peiCheck">确定</el-button> | |
| 179 | + <el-button @click="setPeiShow = false" style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" class="buttonHover">取消</el-button> | |
| 180 | + | |
| 181 | + </div> | |
| 182 | + | |
| 183 | + </div> | |
| 184 | + | |
| 185 | + </el-dialog> | |
| 161 | 186 | </div> |
| 162 | 187 | </template> |
| 163 | 188 | |
| ... | ... | @@ -172,6 +197,7 @@ |
| 172 | 197 | ReportDel, |
| 173 | 198 | ComplaintGetAll, |
| 174 | 199 | ComplaintDel, |
| 200 | + Reportedit | |
| 175 | 201 | } from '../../../api/kefuServeBao.js' |
| 176 | 202 | |
| 177 | 203 | export default { |
| ... | ... | @@ -210,6 +236,15 @@ |
| 210 | 236 | pageSize: 10, |
| 211 | 237 | }, |
| 212 | 238 | fabutype:'1', |
| 239 | + setPeiShow:false, | |
| 240 | + peiForm:{ | |
| 241 | + repairEndTime:'', | |
| 242 | + repairman:'', | |
| 243 | + peiId:'', | |
| 244 | + id:'' | |
| 245 | + } | |
| 246 | + | |
| 247 | + | |
| 213 | 248 | } |
| 214 | 249 | }, |
| 215 | 250 | |
| ... | ... | @@ -359,7 +394,26 @@ |
| 359 | 394 | }, |
| 360 | 395 | radioClick(tiem){ |
| 361 | 396 | this.ruleForm.time ='' |
| 362 | - } | |
| 397 | + }, | |
| 398 | + setPei(item){ | |
| 399 | + this.peiForm = { | |
| 400 | + repairEndTime:'', | |
| 401 | + repairman:'', | |
| 402 | + id:'', | |
| 403 | + } | |
| 404 | + | |
| 405 | + this.peiForm.id= item.id | |
| 406 | + this.setPeiShow = true | |
| 407 | + }, | |
| 408 | + async peiCheck(){ | |
| 409 | + if (this.peiForm.repairEndTime) { | |
| 410 | + this.peiForm.repairEndTime = new Date(this.peiForm.repairEndTime); | |
| 411 | + } | |
| 412 | + await Reportedit(this.peiForm) | |
| 413 | + this.setPeiShow = false | |
| 414 | + this.getAll() | |
| 415 | + | |
| 416 | + }, | |
| 363 | 417 | } |
| 364 | 418 | }; |
| 365 | 419 | </script> | ... | ... |
yanshouban/src/views/serve/procedure.vue
| ... | ... | @@ -42,7 +42,12 @@ |
| 42 | 42 | width="auto" |
| 43 | 43 | min-width="12%" |
| 44 | 44 | /> |
| 45 | - | |
| 45 | + <el-table-column | |
| 46 | + label="信息类型" | |
| 47 | + prop="informationType" | |
| 48 | + width="auto" | |
| 49 | + min-width="12%" | |
| 50 | + /> | |
| 46 | 51 | <el-table-column |
| 47 | 52 | label="创建时间" |
| 48 | 53 | prop="releaseTime" |
| ... | ... | @@ -178,9 +183,9 @@ |
| 178 | 183 | font-size: 14px; |
| 179 | 184 | " |
| 180 | 185 | > |
| 181 | - {{secondData.announcementTitle}} | |
| 186 | + {{secondData.informationType}} | |
| 182 | 187 | </div> |
| 183 | - <el-select v-model="secondData.contentCategory" placeholder="请选择" v-else> | |
| 188 | + <el-select v-model="secondData.informationType" placeholder="请选择" v-else> | |
| 184 | 189 | <el-option label="通知" value="通知" /> |
| 185 | 190 | <el-option label="热点租赁信息" value="热点租赁信息" /> |
| 186 | 191 | <el-option label="广告信息" value="广告信息" /> |
| ... | ... | @@ -292,8 +297,8 @@ |
| 292 | 297 | size="mini" |
| 293 | 298 | /> |
| 294 | 299 | </el-form-item> |
| 295 | - <el-form-item label="信息类型" prop="contentCategory"> | |
| 296 | - <el-select v-model="formSel.contentCategory" placeholder="请选择" style="width: 168px;"> | |
| 300 | + <el-form-item label="信息类型" prop="informationType"> | |
| 301 | + <el-select v-model="ruleForm.informationType" placeholder="请选择" style="width: 168px;"> | |
| 297 | 302 | <el-option label="通知" value="通知" /> |
| 298 | 303 | <el-option label="热点租赁信息" value="热点租赁信息" /> |
| 299 | 304 | <el-option label="广告信息" value="广告信息" /> |
| ... | ... | @@ -372,6 +377,7 @@ export default { |
| 372 | 377 | }, |
| 373 | 378 | ruleForm: { |
| 374 | 379 | announcementTitle:'',//公告标题 |
| 380 | + informationType:'', | |
| 375 | 381 | announcementContent:'',//公告内容 |
| 376 | 382 | releaseTime:''//时间 |
| 377 | 383 | }, | ... | ... |
yanshouban/src/views/shopRental/manage/index.vue
| ... | ... | @@ -46,8 +46,9 @@ |
| 46 | 46 | :action="uploadFileUrl" |
| 47 | 47 | :on-success="daoru" |
| 48 | 48 | :file-list="fileData" |
| 49 | - :auto-upload="true" | |
| 50 | - :show-file-list="false"> | |
| 49 | + :auto-upload="true" | |
| 50 | + :show-file-list="false" | |
| 51 | + multiple > | |
| 51 | 52 | <el-button style="background-color: #fff;color: #3F9B6A;border: 1px solid #dcdfe6;" class="buttonHover">导入</el-button> |
| 52 | 53 | </el-upload> |
| 53 | 54 | </div> |
| ... | ... | @@ -359,21 +360,30 @@ |
| 359 | 360 | 合同签订日期 |
| 360 | 361 | </template> |
| 361 | 362 | <div v-if="index ==2">{{heForm.contractSigningDate}}</div> |
| 362 | - <el-input v-model="heForm.contractSigningDate" style="width:100%;" v-else placeholder="请输入"/> | |
| 363 | + <!-- <el-input v-model="heForm.contractSigningDate" style="width:100%;" v-else placeholder="请输入"/> --> | |
| 364 | + <el-date-picker v-model="heForm.contractSigningDate" | |
| 365 | + value-format="yyyy-MM-dd HH:mm:ss" type="datetime" v-else placeholder="请选择" prefix-icon="none"> | |
| 366 | + </el-date-picker> | |
| 363 | 367 | </el-descriptions-item> |
| 364 | 368 | <el-descriptions-item> |
| 365 | 369 | <template slot="label"> |
| 366 | 370 | 合同终止日期 |
| 367 | 371 | </template> |
| 368 | 372 | <div v-if="index ==2">{{heForm.contractTerminationDate}}</div> |
| 369 | - <el-input v-model="heForm.contractTerminationDate" style="width:100%;" v-else placeholder="请输入"/> | |
| 373 | + <!-- <el-input v-model="heForm.contractTerminationDate" style="width:100%;" v-else placeholder="请输入"/> --> | |
| 374 | + <el-date-picker v-model="heForm.contractTerminationDate" | |
| 375 | + value-format="yyyy-MM-dd HH:mm:ss" type="datetime" v-else placeholder="请选择" prefix-icon="none"> | |
| 376 | + </el-date-picker> | |
| 370 | 377 | </el-descriptions-item> |
| 371 | 378 | <el-descriptions-item> |
| 372 | 379 | <template slot="label"> |
| 373 | 380 | 起租日期 |
| 374 | 381 | </template> |
| 375 | 382 | <div v-if="index ==2">{{heForm.leaseStartDate}}</div> |
| 376 | - <el-input v-model="heForm.leaseStartDate" style="width:100%;" v-else placeholder="请输入"/> | |
| 383 | + <!-- <el-input v-model="heForm.leaseStartDate" style="width:100%;" v-else placeholder="请输入"/> --> | |
| 384 | + <el-date-picker v-model="heForm.leaseStartDate" | |
| 385 | + value-format="yyyy-MM-dd HH:mm:ss" type="datetime" v-else placeholder="请选择" prefix-icon="none"> | |
| 386 | + </el-date-picker> | |
| 377 | 387 | </el-descriptions-item> |
| 378 | 388 | <el-descriptions-item> |
| 379 | 389 | <template slot="label"> |
| ... | ... | @@ -1369,7 +1379,8 @@ bianList:{ |
| 1369 | 1379 | biangengPan:false, |
| 1370 | 1380 | |
| 1371 | 1381 | miList:['telephone','commander','leaseAddress','administrativeRegion','operator','tenant' ], |
| 1372 | -hemiList:['earnestMoney','contractAmount','lessorName','telephone','bankAccount','tenantName','tenantTelephone','tenantBankAccount'] | |
| 1382 | +hemiList:['earnestMoney','contractAmount','lessorName','telephone','bankAccount','tenantName','tenantTelephone','tenantBankAccount'], | |
| 1383 | + daoIndex:0 | |
| 1373 | 1384 | } |
| 1374 | 1385 | }, |
| 1375 | 1386 | created() { |
| ... | ... | @@ -1766,13 +1777,32 @@ this.ggXin = true |
| 1766 | 1777 | this.biangengTab.splice(index, 1); |
| 1767 | 1778 | }, |
| 1768 | 1779 | daoru(response, file, fileList){ |
| 1769 | - this.fileData.push(file.raw) | |
| 1770 | - const formDate = new FormData() | |
| 1771 | - formDate.append('file', this.fileData[0]) | |
| 1772 | - excelAdd(formDate).then(res => { | |
| 1773 | - this.getAll() | |
| 1774 | - }) | |
| 1780 | + if(this.daoIndex == 0){ | |
| 1781 | + for(let i=0;i<fileList.length;i++){ | |
| 1782 | + this.fileData.push(fileList[i].raw) | |
| 1783 | + } | |
| 1784 | + let uniqueFileData = [...new Set(this.fileData)]; // 使用 Set 去重 | |
| 1785 | + | |
| 1786 | + // 删除值为 undefined 的元素 | |
| 1787 | + uniqueFileData = uniqueFileData.filter(item => item !== undefined); | |
| 1788 | + | |
| 1789 | + // 更新 this.fileData | |
| 1790 | + this.fileData = uniqueFileData; | |
| 1791 | + this.fileData.map(item=>{ | |
| 1792 | + let formDate = new FormData() | |
| 1793 | + formDate.append('file', item) | |
| 1794 | + excelAdd(formDate).then(res => { | |
| 1795 | + this.getAll() | |
| 1796 | + | |
| 1797 | + }) | |
| 1798 | + }) | |
| 1799 | + | |
| 1800 | + this.daoIndex = 1 | |
| 1801 | + } | |
| 1802 | + | |
| 1803 | + | |
| 1775 | 1804 | }, |
| 1805 | + | |
| 1776 | 1806 | } |
| 1777 | 1807 | } |
| 1778 | 1808 | </script> | ... | ... |
yanshouban/src/views/shopRental/warning/index.vue
| ... | ... | @@ -818,6 +818,22 @@ |
| 818 | 818 | const res = await cereLeasingByPage(this.pageindex) |
| 819 | 819 | this.tableData = res.data.content |
| 820 | 820 | this.total = res.data.content.length |
| 821 | + this.tableData.map(item=>{ | |
| 822 | + res.telephone = this.$decrypt(res.telephone) | |
| 823 | + res.commander = this.$decrypt(res.commander) | |
| 824 | + res.leaseAddress = this.$decrypt(res.leaseAddress) | |
| 825 | + res.administrativeRegion = this.$decrypt(res.administrativeRegion) | |
| 826 | + res.operator = this.$decrypt(res.operator) | |
| 827 | + res.tenant = this.$decrypt(res.tenant) | |
| 828 | + res.cereContractInformation.earnestMoney =this.$decrypt(res.cereContractInformation.earnestMoney) | |
| 829 | + res.cereContractInformation.contractAmount =this.$decrypt(res.cereContractInformation.contractAmount) | |
| 830 | + res.cereContractInformation.lessorName =this.$decrypt(res.cereContractInformation.lessorName) | |
| 831 | + res.cereContractInformation.telephone =this.$decrypt(res.cereContractInformation.telephone) | |
| 832 | + res.cereContractInformation.bankAccount =this.$decrypt(res.cereContractInformation.bankAccount) | |
| 833 | + res.cereContractInformation.tenantName =this.$decrypt(res.cereContractInformation.tenantName) | |
| 834 | + res.cereContractInformation.tenantTelephone =this.$decrypt(res.cereContractInformation.tenantTelephone) | |
| 835 | + res.cereContractInformation.tenantBankAccount =this.$decrypt(res.cereContractInformation.tenantBankAccount) | |
| 836 | + }) | |
| 821 | 837 | }, |
| 822 | 838 | // 新增确定按钮 |
| 823 | 839 | async addCheck(val) { | ... | ... |