Commit 02c2ca01c16a549fc1c74f4f9c95b0756c852599

Authored by 杨鑫
1 parent 9f3b931f

最新2

admin-web-master/src/api/newly.js
@@ -291,5 +291,14 @@ export function cerePlatformMerchantedit(data) { @@ -291,5 +291,14 @@ export function cerePlatformMerchantedit(data) {
291 } 291 }
292 292
293 293
  294 +// 修改
  295 +export function cerePlatformMerchantdelet(data) {
  296 + return request({
  297 + url: '/cerePlatformMerchant/deleteById',
  298 + method: 'post',
  299 + data
  300 + })
  301 + }
294 302
  303 +
295 304
296 \ No newline at end of file 305 \ No newline at end of file
admin-web-master/src/components/add/addss.vue
@@ -92,7 +92,9 @@ @@ -92,7 +92,9 @@
92 miniioupload 92 miniioupload
93 } from '@/api/commodityLease.js' 93 } from '@/api/commodityLease.js'
94 import { 94 import {
95 - cerePlatformMerchantadd 95 + cerePlatformMerchantadd,
  96 + cerePlatformMerchantedit,
  97 +
96 } from '@/api/newly.js' 98 } from '@/api/newly.js'
97 99
98 export default { 100 export default {
@@ -182,7 +184,8 @@ @@ -182,7 +184,8 @@
182 pageSize: 10, 184 pageSize: 10,
183 }, 185 },
184 uploadFiles: [], 186 uploadFiles: [],
185 - filesLength: 1 187 + filesLength: 1,
  188 + moren:0
186 }; 189 };
187 }, 190 },
188 props: { 191 props: {
@@ -191,6 +194,19 @@ @@ -191,6 +194,19 @@
191 default: {} 194 default: {}
192 } 195 }
193 }, 196 },
  197 + watch: {
  198 + info: {
  199 + immediate: true,
  200 + handler(newVal) {
  201 + if (Object.keys(newVal).length > 0) {
  202 + this.formInline = newVal
  203 + this.moren = 1
  204 + } else {
  205 + this.moren = 0
  206 + }
  207 + }
  208 + }
  209 + },
194 created() { 210 created() {
195 businessListGetAll(this.shopfrom).then(res => { 211 businessListGetAll(this.shopfrom).then(res => {
196 this.shopList = res.data.list 212 this.shopList = res.data.list
@@ -219,26 +235,46 @@ @@ -219,26 +235,46 @@
219 }) 235 })
220 this.$refs.heForm.validate((valid) => { 236 this.$refs.heForm.validate((valid) => {
221 if (valid) { 237 if (valid) {
222 -  
223 - cerePlatformMerchantadd({  
224 - ...this.formInline,  
225 - checkState: '2',  
226 - state:'1',  
227 - applyTime: this.updateCurrentTime()  
228 - }).then(res => {  
229 - if (res.code == 200) {  
230 - this.$message({  
231 - message: '添加成功',  
232 - type: 'success'  
233 - })  
234 - this.$emit('removeonaction', '1')  
235 - } else {  
236 - this.$message({  
237 - message: res.msg,  
238 - type: 'error'  
239 - })  
240 - }  
241 - }) 238 + if(this.moren == 0){
  239 + cerePlatformMerchantadd({
  240 + ...this.formInline,
  241 + checkState: '2',
  242 + state:'1',
  243 + applyTime: this.updateCurrentTime()
  244 + }).then(res => {
  245 + if (res.code == 200) {
  246 + this.$message({
  247 + message: '添加成功',
  248 + type: 'success'
  249 + })
  250 + this.$emit('removeonaction', '1')
  251 + } else {
  252 + this.$message({
  253 + message: res.msg,
  254 + type: 'error'
  255 + })
  256 + }
  257 + })
  258 + }else if(this.moren == 1){
  259 + cerePlatformMerchantedit({
  260 + ...this.formInline,
  261 + checkState: '2',
  262 + }).then(res => {
  263 + if (res.code == 200) {
  264 + this.$message({
  265 + message: '修改成功',
  266 + type: 'success'
  267 + })
  268 + this.$emit('removeonaction', '1')
  269 + } else {
  270 + this.$message({
  271 + message: res.msg,
  272 + type: 'error'
  273 + })
  274 + }
  275 + })
  276 + }
  277 +
242 } else { 278 } else {
243 this.$message({ 279 this.$message({
244 message: '请填写完整信息', 280 message: '请填写完整信息',
admin-web-master/src/components/chakan/map.vue
1 <template> 1 <template>
2 - <div>  
3 - <div v-show="type == '1'">  
4 - <el-tabs v-model="xiangTab">  
5 - <el-tab-pane label="资源信息" name="first">  
6 - <div style="margin-top: 30px;" class="editcss">  
7 - <TitleWithCircle title="基础信息" />  
8 - <div style="padding: 20px;">  
9 - <el-form :model="editbgid" ref="formInline" label-width="130px" class="demo-ruleForm">  
10 - <el-row :gutter="20">  
11 - <el-col :span="8">  
12 - <el-form-item label="广告位名称" prop="advertisingName">  
13 - <div class="duiqi">{{editbgid.advertisingName || '无'}}</div>  
14 - </el-form-item>  
15 - </el-col>  
16 - <el-col :span="8">  
17 - <el-form-item label="广告位编号" prop="advertisingSpaceNumber">  
18 - <div class="duiqi">{{editbgid.advertisingSpaceNumber || '无'}}</div>  
19 - </el-form-item>  
20 - </el-col>  
21 - <el-col :span="8">  
22 - <el-form-item label="广告位类型" prop="advertisingType">  
23 - <div class="duiqi">{{editbgid.advertisingType || '无'}}</div>  
24 - </el-form-item>  
25 - </el-col>  
26 - </el-row>  
27 - <el-row :gutter="20" v-if="editbgid.advertisingType == '线上广告位'">  
28 - <el-col :span="8">  
29 - <el-form-item label="所属端" prop="affiliation" >  
30 - <div class="duiqi">{{editbgid.affiliation || '无'}}</div>  
31 - </el-form-item>  
32 - </el-col>  
33 - <el-col :span="8">  
34 - <el-form-item label="轮播顺序" prop="rotationOrder" >  
35 - <div class="duiqi">{{editbgid.rotationOrder || '无'}}</div>  
36 - </el-form-item>  
37 - </el-col>  
38 - <el-col :span="8">  
39 - <el-form-item label="广告尺寸" prop="dimensions">  
40 - <div class="duiqi">{{editbgid.dimensions || '无'}}</div>  
41 - </el-form-item>  
42 - </el-col>  
43 - <el-col :span="8">  
44 - <el-form-item label="可上传大小" prop="size">  
45 - <div class="duiqi">{{editbgid.size || '无'}}</div>  
46 - </el-form-item>  
47 - </el-col>  
48 - <el-col :span="8">  
49 - <el-form-item label="播放时长" prop="playDuration">  
50 - <div class="duiqi" v-if="editbgid.playDuration!=''">{{editbgid.playDuration}}/秒</div>  
51 - <div class="duiqi" v-else>无</div>  
52 - </el-form-item>  
53 - </el-col>  
54 - <el-col :span="8">  
55 - <el-form-item label="推送地址" prop="pushAddress">  
56 - <div class="duiqi">{{editbgid.pushAddress || '无'}}</div>  
57 - </el-form-item>  
58 - </el-col>  
59 - </el-row>  
60 - <el-row :gutter="20" v-if="editbgid.advertisingType == '实体广告位'">  
61 - <el-col :span="8">  
62 - <el-form-item label="所属绿道段" prop="belongingGreenwaySection">  
63 - <div class="duiqi">{{getLvdaoNameByCode(editbgid.belongingGreenwaySection) || '无'}}</div>  
64 - </el-form-item>  
65 - </el-col>  
66 - <el-col :span="8">  
67 - <el-form-item label="所属公园/步道" prop="belongingParkTrail">  
68 - <div class="duiqi">{{getLvdaoNameByCode(editbgid.belongingParkTrail) || '无' }}</div>  
69 - </el-form-item>  
70 - </el-col>  
71 - <el-col :span="8">  
72 - <el-form-item label="设备类型" prop="deviceType" >  
73 - <div class="duiqi">{{editbgid.deviceType || '无'}}</div>  
74 - </el-form-item>  
75 - </el-col>  
76 - <el-col :span="8">  
77 - <el-form-item label="设备大小" prop="equipmentSize" >  
78 - <div class="duiqi">{{editbgid.equipmentSize || '无'}}</div>  
79 - </el-form-item>  
80 - </el-col>  
81 - <el-col :span="8">  
82 - <el-form-item label="广告尺寸" prop="dimensions">  
83 - <div class="duiqi">{{editbgid.dimensions || '无'}}</div>  
84 - </el-form-item>  
85 - </el-col>  
86 - <el-col :span="8">  
87 - <el-form-item label="广告材质" prop="advertisingMaterial">  
88 - <div class="duiqi">{{editbgid.advertisingMaterial || '无'}}</div>  
89 - </el-form-item>  
90 - </el-col>  
91 - </el-row>  
92 - <el-form-item label="详细位置" prop="detailedLocation" v-if="editbgid.advertisingType == '实体广告位'">  
93 - <div class="duiqi">{{editbgid.detailedLocation || '无'}}</div>  
94 - </el-form-item>  
95 - <el-form-item label="地图标点" prop="mapPunctuation" v-if="editbgid.advertisingType == '实体广告位'">  
96 - <div style="width: 100%;height: 300px;">  
97 - <newmap :isx="false" :message="editbgid.mapPunctuation"></newmap>  
98 - </div>  
99 - </el-form-item>  
100 - <el-form-item label="位置示意图" prop="locationDiagram">  
101 - <div style="display: flex;">  
102 - <allimg v-if="item" :src="item" fit="contain" v-for="item in editbgid.locationDiagram.split(',')" style="width: 112px;height: 112px;border: 1px dotted #dcdfe6;border-radius: 2px;overflow: hidden;margin: 0 10px 10px 0;"/>  
103 - </div>  
104 - <!-- <img v-for="item in editbgid.locationDiagram.split(',')" :src="$baseURL+item" alt="" style="width:140px;height:140px;margin-left: 15px;"> -->  
105 - </el-form-item>  
106 -  
107 - <el-form-item label="介绍" prop="memo" v-if="editbgid.advertisingType == '线上广告位'">  
108 - <!-- <div class="duiqi">{{editbgid.memo || '无'}}</div> -->  
109 - <div v-if="editbgid.memo" class="duiqi" v-html="editbgid.memo"></div>  
110 - <div class="duiqi" v-else>无</div>  
111 - </el-form-item>  
112 - </el-form>  
113 - <TitleWithCircle title="历史发布/下架记录" />  
114 - <div style="padding: 20px;">  
115 - <el-table :data="datalistxsj"  
116 - :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"  
117 - tooltip-effect="dark custom-tooltip-effect">  
118 - <el-table-column label="类型" prop="type" >  
119 - </el-table-column>  
120 - <el-table-column label="操作时间" prop="operationTime" >  
121 - </el-table-column>  
122 - <el-table-column label="操作人" prop="operator">  
123 - </el-table-column>  
124 - </el-table>  
125 - <div style="display: flex;justify-content: space-between;" class="bom">  
126 - <div style="font-size: 14px;">共 <span style="color: #3F9B6A;">{{totalsxj}}</span> 项数据</div>  
127 - <el-pagination :current-page="pagequerysxj.pageNumber+1" :page-sizes="[10, 20, 50, 100]" :page-size="pagequerysxj.pageSize"  
128 - background small layout="prev, pager, next" :total="totalsxj" @size-change="handleCurrentChange"  
129 - @current-change="handleCurrentChange">  
130 - </el-pagination>  
131 - </div>  
132 - </div>  
133 - </div>  
134 - </div>  
135 - </el-tab-pane>  
136 - <el-tab-pane label="招商方案信息" name="second">  
137 - <div style="margin-top: 30px;" class="editcss">  
138 - <TitleWithCircle title="招商方案信息" />  
139 - <div style="padding: 20px;">  
140 - <el-table :data="datalist1"  
141 - :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"  
142 - tooltip-effect="dark custom-tooltip-effect">  
143 - <el-table-column label="招商方案名称" prop="planName">  
144 - </el-table-column>  
145 - <el-table-column label="涵盖资源数" prop="createTime">  
146 - <template slot-scope="scope">  
147 - {{scope.row.resourceManagement?(scope.row.resourceManagement.split(',').length):0}}  
148 - </template>  
149 - </el-table-column>  
150 - <el-table-column label="创建时间" prop="createTime">  
151 - <template slot-scope="scope">  
152 - {{scope.row.createTime || '-' }}  
153 - </template>  
154 - </el-table-column>  
155 - <el-table-column label="创建人" prop="createUser">  
156 - <template slot-scope="scope">  
157 - {{scope.row.createUser || '-' }}  
158 - </template>  
159 - </el-table-column>  
160 - </el-table>  
161 - </div>  
162 - <TitleWithCircle title="策略方案" />  
163 - <div style="padding: 20px;">  
164 - <el-table :data="datalist"  
165 - :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"  
166 - tooltip-effect="dark custom-tooltip-effect">  
167 - <el-table-column label="策略名称" prop="policyName" min-width="200">  
168 - </el-table-column>  
169 - <el-table-column label="适用资源" prop="applicableResources" min-width="100">  
170 - </el-table-column>  
171 - <el-table-column label="经营类型" prop="businessType" min-width="100"> 2 + <div>
  3 + <div v-show="type == '1'">
  4 + <el-tabs v-model="xiangTab" @tab-click='tabClick'>
  5 + <el-tab-pane label="资源信息" name="first">
  6 + <div style="margin-top: 30px;" class="editcss">
  7 + <TitleWithCircle title="基础信息" />
  8 + <div style="padding: 20px;">
  9 + <el-form :model="editbgid" ref="formInline" label-width="130px" class="demo-ruleForm">
  10 + <el-row :gutter="20">
  11 + <el-col :span="8">
  12 + <el-form-item label="广告位名称" prop="advertisingName">
  13 + <div class="duiqi">{{editbgid.advertisingName || '无'}}</div>
  14 + </el-form-item>
  15 + </el-col>
  16 + <el-col :span="8">
  17 + <el-form-item label="广告位编号" prop="advertisingSpaceNumber">
  18 + <div class="duiqi">{{editbgid.advertisingSpaceNumber || '无'}}</div>
  19 + </el-form-item>
  20 + </el-col>
  21 + <el-col :span="8">
  22 + <el-form-item label="广告位类型" prop="advertisingType">
  23 + <div class="duiqi">{{editbgid.advertisingType || '无'}}</div>
  24 + </el-form-item>
  25 + </el-col>
  26 + </el-row>
  27 + <el-row :gutter="20" v-if="editbgid.advertisingType == '线上广告位'">
  28 + <el-col :span="8">
  29 + <el-form-item label="所属端" prop="affiliation">
  30 + <div class="duiqi">{{editbgid.affiliation || '无'}}</div>
  31 + </el-form-item>
  32 + </el-col>
  33 + <el-col :span="8">
  34 + <el-form-item label="轮播顺序" prop="rotationOrder">
  35 + <div class="duiqi">{{editbgid.rotationOrder || '无'}}</div>
  36 + </el-form-item>
  37 + </el-col>
  38 + <el-col :span="8">
  39 + <el-form-item label="广告尺寸" prop="dimensions">
  40 + <div class="duiqi">{{editbgid.dimensions || '无'}}</div>
  41 + </el-form-item>
  42 + </el-col>
  43 + <el-col :span="8">
  44 + <el-form-item label="可上传大小" prop="size">
  45 + <div class="duiqi">{{editbgid.size || '无'}}</div>
  46 + </el-form-item>
  47 + </el-col>
  48 + <el-col :span="8">
  49 + <el-form-item label="播放时长" prop="playDuration">
  50 + <div class="duiqi" v-if="editbgid.playDuration!=''">
  51 + {{editbgid.playDuration}}/秒</div>
  52 + <div class="duiqi" v-else>无</div>
  53 + </el-form-item>
  54 + </el-col>
  55 + <el-col :span="8">
  56 + <el-form-item label="推送地址" prop="pushAddress">
  57 + <div class="duiqi">{{editbgid.pushAddress || '无'}}</div>
  58 + </el-form-item>
  59 + </el-col>
  60 + </el-row>
  61 + <el-row :gutter="20" v-if="editbgid.advertisingType == '实体广告位'">
  62 + <el-col :span="8">
  63 + <el-form-item label="所属绿道段" prop="belongingGreenwaySection">
  64 + <div class="duiqi">
  65 + {{getLvdaoNameByCode(editbgid.belongingGreenwaySection) || '无'}}</div>
  66 + </el-form-item>
  67 + </el-col>
  68 + <el-col :span="8">
  69 + <el-form-item label="所属公园/步道" prop="belongingParkTrail">
  70 + <div class="duiqi">
  71 + {{getLvdaoNameByCode(editbgid.belongingParkTrail) || '无' }}</div>
  72 + </el-form-item>
  73 + </el-col>
  74 + <el-col :span="8">
  75 + <el-form-item label="设备类型" prop="deviceType">
  76 + <div class="duiqi">{{editbgid.deviceType || '无'}}</div>
  77 + </el-form-item>
  78 + </el-col>
  79 + <el-col :span="8">
  80 + <el-form-item label="设备大小" prop="equipmentSize">
  81 + <div class="duiqi">{{editbgid.equipmentSize || '无'}}</div>
  82 + </el-form-item>
  83 + </el-col>
  84 + <el-col :span="8">
  85 + <el-form-item label="广告尺寸" prop="dimensions">
  86 + <div class="duiqi">{{editbgid.dimensions || '无'}}</div>
  87 + </el-form-item>
  88 + </el-col>
  89 + <el-col :span="8">
  90 + <el-form-item label="广告材质" prop="advertisingMaterial">
  91 + <div class="duiqi">{{editbgid.advertisingMaterial || '无'}}</div>
  92 + </el-form-item>
  93 + </el-col>
  94 + </el-row>
  95 + <el-form-item label="详细位置" prop="detailedLocation"
  96 + v-if="editbgid.advertisingType == '实体广告位'">
  97 + <div class="duiqi">{{editbgid.detailedLocation || '无'}}</div>
  98 + </el-form-item>
  99 + <el-form-item label="地图标点" prop="mapPunctuation"
  100 + v-if="editbgid.advertisingType == '实体广告位'">
  101 + <div style="width: 100%;height: 300px;">
  102 + <newmap :isx="false" :message="editbgid.mapPunctuation"></newmap>
  103 + </div>
  104 + </el-form-item>
  105 + <el-form-item label="位置示意图" prop="locationDiagram">
  106 + <div style="display: flex;">
  107 + <allimg v-if="item" :src="item" fit="contain"
  108 + v-for="item in editbgid.locationDiagram.split(',')"
  109 + style="width: 112px;height: 112px;border: 1px dotted #dcdfe6;border-radius: 2px;overflow: hidden;margin: 0 10px 10px 0;" />
  110 + </div>
  111 + <!-- <img v-for="item in editbgid.locationDiagram.split(',')" :src="$baseURL+item" alt="" style="width:140px;height:140px;margin-left: 15px;"> -->
  112 + </el-form-item>
172 113
173 - </el-table-column>  
174 - <el-table-column label="租金价格" prop="rentalPrice" min-width="150">  
175 - </el-table-column>  
176 - <el-table-column label="租期" prop="leaseTerm" min-width="100">  
177 - </el-table-column>  
178 - <el-table-column label="是否出租" prop="isRental" min-width="100">  
179 - <template slot-scope="scope">  
180 - {{scope.row.isRental == '0'?'否':'是'}}  
181 - </template>  
182 - </el-table-column>  
183 - <el-table-column label="是否自营" prop="planningObjectives" min-width="100">  
184 - <template slot-scope="scope">  
185 - {{scope.row.isSelfOperated == '0'?'否':'是'}}  
186 - </template>  
187 - </el-table-column>  
188 - </el-table>  
189 - </div>  
190 - </div>  
191 - </el-tab-pane>  
192 - <el-tab-pane label="租赁记录" name="third" >  
193 - <div style="margin-top: 30px;" class="editcss">  
194 - <div class="titles">  
195 - 租赁记录  
196 - </div>  
197 - <div style="padding: 20px;">  
198 - <el-table :data="datalistzl"  
199 - :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"  
200 - tooltip-effect="dark custom-tooltip-effect">  
201 - <el-table-column label="承租商家" prop="tenantName" show-overflow-tooltip> 114 + <el-form-item label="介绍" prop="memo" v-if="editbgid.advertisingType == '线上广告位'">
  115 + <!-- <div class="duiqi">{{editbgid.memo || '无'}}</div> -->
  116 + <div v-if="editbgid.memo" class="duiqi" v-html="editbgid.memo"></div>
  117 + <div class="duiqi" v-else>无</div>
  118 + </el-form-item>
  119 + </el-form>
  120 + <TitleWithCircle title="历史发布/下架记录" />
  121 + <div style="padding: 20px;">
  122 + <el-table :data="datalistxsj"
  123 + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"
  124 + tooltip-effect="dark custom-tooltip-effect">
  125 + <el-table-column label="类型" prop="type">
  126 + </el-table-column>
  127 + <el-table-column label="操作时间" prop="operationTime">
  128 + </el-table-column>
  129 + <el-table-column label="操作人" prop="operator">
  130 + </el-table-column>
  131 + </el-table>
  132 + <div style="display: flex;justify-content: space-between;" class="bom">
  133 + <div style="font-size: 14px;">共 <span style="color: #3F9B6A;">{{totalsxj}}</span>
  134 + 项数据</div>
  135 + <el-pagination :current-page="pagequerysxj.pageNumber+1"
  136 + :page-sizes="[10, 20, 50, 100]" :page-size="pagequerysxj.pageSize" background
  137 + small layout="prev, pager, next" :total="totalsxj"
  138 + @size-change="handleCurrentChange" @current-change="handleCurrentChange">
  139 + </el-pagination>
  140 + </div>
  141 + </div>
  142 + </div>
  143 + </div>
  144 + </el-tab-pane>
  145 + <el-tab-pane label="招商方案信息" name="second">
  146 + <div style="margin-top: 30px;" class="editcss">
  147 + <TitleWithCircle title="招商方案信息" />
  148 + <div style="padding: 20px;">
  149 + <el-table :data="datalist1"
  150 + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"
  151 + tooltip-effect="dark custom-tooltip-effect">
  152 + <el-table-column label="招商方案名称" prop="planName">
  153 + </el-table-column>
  154 + <el-table-column label="涵盖资源数" prop="createTime">
  155 + <template slot-scope="scope">
  156 + {{scope.row.resourceManagement?(scope.row.resourceManagement.split(',').length):0}}
  157 + </template>
  158 + </el-table-column>
  159 + <el-table-column label="创建时间" prop="createTime">
  160 + <template slot-scope="scope">
  161 + {{scope.row.createTime || '-' }}
  162 + </template>
  163 + </el-table-column>
  164 + <el-table-column label="创建人" prop="createUser">
  165 + <template slot-scope="scope">
  166 + {{scope.row.createUser || '-' }}
  167 + </template>
  168 + </el-table-column>
  169 + </el-table>
  170 + </div>
  171 + <TitleWithCircle title="策略方案" />
  172 + <div style="padding: 20px;">
  173 + <el-table :data="datalist"
  174 + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"
  175 + tooltip-effect="dark custom-tooltip-effect">
  176 + <el-table-column label="策略名称" prop="policyName" min-width="200">
  177 + </el-table-column>
  178 + <el-table-column label="适用资源" prop="applicableResources" min-width="100">
  179 + </el-table-column>
  180 + <el-table-column label="经营类型" prop="businessType" min-width="100">
  181 + <template slot-scope="scope">
  182 + {{scope.row.businessType || '-' }}
  183 + </template>
  184 + </el-table-column>
  185 + <el-table-column label="租金价格" prop="rentalPrice" min-width="150">
  186 + <template slot-scope="scope">
  187 + {{scope.row.rentalPrice || '-' }}
  188 + </template>
  189 + </el-table-column>
  190 + <el-table-column label="租期" prop="leaseTerm" min-width="100">
  191 + <template slot-scope="scope">
  192 + {{scope.row.leaseTerm || '-' }}
  193 + </template>
  194 + </el-table-column>
  195 + <el-table-column label="是否出租" prop="isRental" min-width="100">
  196 + <template slot-scope="scope">
  197 + {{scope.row.isRental == '0'?'否':'是'}}
  198 + </template>
  199 + </el-table-column>
  200 + <el-table-column label="是否自营" prop="planningObjectives" min-width="100">
  201 + <template slot-scope="scope">
  202 + {{scope.row.isSelfOperated == '0'?'否':'是'}}
  203 + </template>
  204 + </el-table-column>
  205 + </el-table>
  206 + </div>
  207 + </div>
  208 + </el-tab-pane>
  209 + <el-tab-pane label="租赁记录" name="third">
  210 + <div style="margin-top: 30px;" class="editcss">
  211 + <div class="titles">
  212 + 租赁记录
  213 + </div>
  214 + <div style="padding: 20px;">
  215 + <el-table :data="datalistzl"
  216 + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"
  217 + tooltip-effect="dark custom-tooltip-effect">
  218 + <el-table-column label="承租商家" prop="tenantName" show-overflow-tooltip>
202 219
203 - </el-table-column>  
204 - <el-table-column label="租赁期限" prop="houseNumber" show-overflow-tooltip>  
205 - <template slot-scope="scope">  
206 - {{scope.row.leaseStartDate}}至{{scope.row.contractTerminationDate}}  
207 - </template>  
208 - </el-table-column>  
209 - <!-- <el-table-column label="经营类型" prop="actualUsableArea"show-overflow-tooltip> 220 + </el-table-column>
  221 + <el-table-column label="租赁期限" prop="houseNumber" show-overflow-tooltip>
  222 + <template slot-scope="scope">
  223 + {{scope.row.leaseStartDate}}至{{scope.row.contractTerminationDate}}
  224 + </template>
  225 + </el-table-column>
  226 + <!-- <el-table-column label="经营类型" prop="actualUsableArea"show-overflow-tooltip>
210 </el-table-column> --> 227 </el-table-column> -->
211 228
212 - <el-table-column label="租金/周期" prop="head" show-overflow-tooltip>  
213 - <template slot-scope="scope">  
214 - ¥{{scope.row.contractAmount}}/{{scope.row.paymentCycle}}  
215 - </template>  
216 - </el-table-column>  
217 - <el-table-column label="当前状态" prop="publishStatus" show-overflow-tooltip>  
218 - <template slot-scope="scope">  
219 - <span v-if='scope.row.dataStatus == 1'>使用中</span>  
220 - <span v-else-if='scope.row.dataStatus == 2'>往期合同</span>  
221 - <span v-else-if='scope.row.dataStatus == 3'>已终止</span>  
222 - <span v-else>-</span>  
223 - </template>  
224 - </el-table-column> 229 + <el-table-column label="租金/周期" prop="head" show-overflow-tooltip>
  230 + <template slot-scope="scope">
  231 + ¥{{scope.row.contractAmount}}/{{scope.row.paymentCycle}}
  232 + </template>
  233 + </el-table-column>
  234 + <el-table-column label="当前状态" prop="publishStatus" show-overflow-tooltip>
  235 + <template slot-scope="scope">
  236 + <span v-if='scope.row.dataStatus == 1'>使用中</span>
  237 + <span v-else-if='scope.row.dataStatus == 2'>往期合同</span>
  238 + <span v-else-if='scope.row.dataStatus == 3'>已终止</span>
  239 + <span v-else>-</span>
  240 + </template>
  241 + </el-table-column>
225 242
226 - <el-table-column label="操作" fixed="right">  
227 - <template slot-scope="scope">  
228 - <div @click="open(scope.row)" class="tableBtn greens">查看</div>  
229 - </template>  
230 - </el-table-column>  
231 - </el-table>  
232 - <div style="display: flex;justify-content: space-between;" class="bom">  
233 - <div style="font-size: 14px;">共 <span style="color: #3F9B6A;">{{totalzl}}</span> 项数据</div>  
234 - <el-pagination :current-page="pagequeryzl.pageNumber+1" :page-sizes="[10, 20, 50, 100]" :page-size="pagequeryzl.pageSize"  
235 - background small layout="prev, pager, next" :total="totalzl" @size-change="e => handleSizeChange(e,'pagequeryzl')"  
236 - @current-change="e=> handleCurrentChange(e,'pagequeryzl')">  
237 - </el-pagination>  
238 - </div>  
239 - </div>  
240 - </div>  
241 - </el-tab-pane>  
242 - </el-tabs>  
243 - </div>  
244 - <div v-show="type == '2'">  
245 - <oneht ref="onhet"></oneht>  
246 - </div>  
247 - <div v-if="editbgid.publishStatus == '1' && issp == '2'">  
248 - <TitleWithCircle title="审核情况"/>  
249 - <div style="padding: 20px;">  
250 - <el-form :model="editbgid" label-width="100px" class="demo-ruleForm">  
251 - <el-form-item label="状态">  
252 - <el-radio v-model="radio" label="2">通过</el-radio>  
253 - <el-radio v-model="radio" label="3">不通过</el-radio>  
254 - </el-form-item>  
255 - <el-form-item label="审核意见">  
256 - <el-input maxlength="200" show-word-limit rows="4" v-model="reviewComments" placeholder="请输入审核意见"  
257 - type="textarea" />  
258 - </el-form-item>  
259 - </el-form>  
260 - </div>  
261 - </div>  
262 - <div v-if="(editbgid.publishStatus == '2' || editbgid.publishStatus == '3') && xiangTab == 'first'">  
263 - <TitleWithCircle title="审核结果"/>  
264 - <div style="padding: 20px;">  
265 - <el-form :model="editbgid" label-width="100px" class="demo-ruleForm">  
266 - <el-form-item label="状态">  
267 - <div class="duiqi">{{editbgid.publishStatus=='2'?'已发布':editbgid.publishStatus=='3'?'不通过':'无'}}</div>  
268 - </el-form-item>  
269 - <el-form-item label="审核意见">  
270 - <div class="duiqi">{{editbgid.reviewComments || '无'}}</div>  
271 - </el-form-item>  
272 - </el-form>  
273 - </div>  
274 - </div>  
275 - <div>  
276 - <el-button v-if="editbgid.publishStatus == '1' && issp == '2'" @click="minSev"  
277 - style="background-color: #3F9B6A;color: #fff;">确定</el-button>  
278 - <el-button class="buttonHover"  
279 - style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;margin-top: 20px;"  
280 - @click="changetype">返回</el-button>  
281 - </div>  
282 - </div> 243 + <el-table-column label="操作" fixed="right">
  244 + <template slot-scope="scope">
  245 + <div @click="open(scope.row)" class="tableBtn greens">查看</div>
  246 + </template>
  247 + </el-table-column>
  248 + </el-table>
  249 + <div style="display: flex;justify-content: space-between;" class="bom">
  250 + <div style="font-size: 14px;">共 <span style="color: #3F9B6A;">{{totalzl}}</span> 项数据
  251 + </div>
  252 + <el-pagination :current-page="pagequeryzl.pageNumber+1" :page-sizes="[10, 20, 50, 100]"
  253 + :page-size="pagequeryzl.pageSize" background small layout="prev, pager, next"
  254 + :total="totalzl" @size-change="e => handleSizeChange(e,'pagequeryzl')"
  255 + @current-change="e=> handleCurrentChange(e,'pagequeryzl')">
  256 + </el-pagination>
  257 + </div>
  258 + </div>
  259 + </div>
  260 + </el-tab-pane>
  261 + <el-tab-pane label="投放效果" name="five">
  262 + <el-descriptions class="margin-top" :column="3" border :labelStyle="labelStyle">
  263 + <el-descriptions-item>
  264 + <template slot="label">
  265 + 点击量
  266 + </template>
  267 + 120次
  268 + </el-descriptions-item>
  269 + <el-descriptions-item>
  270 + <template slot="label">
  271 + 高频时段
  272 + </template>
  273 + 18:00-23:00
  274 + </el-descriptions-item>
  275 + <el-descriptions-item>
  276 + <template slot="label">
  277 + 平均点击价格
  278 + </template>
  279 + 无
  280 + </el-descriptions-item>
  281 +
  282 +
  283 + </el-descriptions>
  284 +
  285 + </el-tab-pane>
  286 + </el-tabs>
  287 + <div v-if="shouldShowChart" ref="shop1ZX" style="width:100%;height: 400px;margin-top: 20px;"></div>
  288 + </div>
  289 + <div v-show="type == '2'">
  290 + <oneht ref="onhet"></oneht>
  291 + </div>
  292 + <div v-if="editbgid.publishStatus == '1' && issp == '2'">
  293 + <TitleWithCircle title="审核情况" />
  294 + <div style="padding: 20px;">
  295 + <el-form :model="editbgid" label-width="100px" class="demo-ruleForm">
  296 + <el-form-item label="状态">
  297 + <el-radio v-model="radio" label="2">通过</el-radio>
  298 + <el-radio v-model="radio" label="3">不通过</el-radio>
  299 + </el-form-item>
  300 + <el-form-item label="审核意见">
  301 + <el-input maxlength="200" show-word-limit rows="4" v-model="reviewComments"
  302 + placeholder="请输入审核意见" type="textarea" />
  303 + </el-form-item>
  304 + </el-form>
  305 + </div>
  306 + </div>
  307 + <div v-if="(editbgid.publishStatus == '2' || editbgid.publishStatus == '3') && xiangTab == 'first'">
  308 + <TitleWithCircle title="审核结果" />
  309 + <div style="padding: 20px;">
  310 + <el-form :model="editbgid" label-width="100px" class="demo-ruleForm">
  311 + <el-form-item label="状态">
  312 + <div class="duiqi">{{editbgid.publishStatus=='2'?'已发布':editbgid.publishStatus=='3'?'不通过':'无'}}
  313 + </div>
  314 + </el-form-item>
  315 + <el-form-item label="审核意见">
  316 + <div class="duiqi">{{editbgid.reviewComments || '无'}}</div>
  317 + </el-form-item>
  318 + </el-form>
  319 + </div>
  320 + </div>
  321 + <div>
  322 + <el-button v-if="editbgid.publishStatus == '1' && issp == '2'" @click="minSev"
  323 + style="background-color: #3F9B6A;color: #fff;">确定</el-button>
  324 + <el-button class="buttonHover"
  325 + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;margin-top: 20px;"
  326 + @click="changetype">返回</el-button>
  327 + </div>
  328 + </div>
283 </template> 329 </template>
284 330
285 <script> 331 <script>
286 - import oneht from "@/components/chakan/oneht";  
287 - import newmap from "@/components/newmap/index";  
288 - import MapXian from "@/components/MapContainer/MapXian";  
289 - import TitleWithCircle from '@/components/top/index';  
290 - import {  
291 - cereBusinessOperationqueryByPage,  
292 - cereResourceStrategylist,  
293 - cereBusinessPlan,  
294 - cereContractInformation,resourcesFindPlan  
295 - } from '@/api/newly';  
296 - import {  
297 - editList  
298 - } from '@/api/map1.js';  
299 - import allimg from '@/components/chakan/allimg.vue';  
300 - import {  
301 - gongyuan,  
302 - parkTrails,  
303 - lvdaoduan,  
304 - } from '@/api/information.js';  
305 - export default {  
306 - components: {  
307 - TitleWithCircle,  
308 - MapXian,  
309 - newmap,  
310 - oneht,  
311 - allimg  
312 - },  
313 - props: {  
314 - leixing: {  
315 - type: Boolean,  
316 - default: true  
317 - },  
318 - editbgid: {  
319 - type: Object,  
320 - default: function() {  
321 - return {};  
322 - },  
323 - },  
324 - issp: {  
325 - type: String,  
326 - default: function() {  
327 - return '1';  
328 - },  
329 - },  
330 - },  
331 - data() {  
332 - return {  
333 - type: '1',  
334 - totalzl:0,  
335 - pagequeryzl:{  
336 - pageNumber: 0,  
337 - pageSize: 10,  
338 - shopNumber: 'gg' + this.editbgid.id  
339 - },  
340 - datalistzl:[],  
341 - reviewComments:'',  
342 - radio: '2',  
343 - datalistxsj:[],  
344 - totalsxj:0,  
345 - pagequerysxj:{  
346 - pageNumber: 0,  
347 - pageSize: 10,  
348 - resourceId: 'gg' + this.editbgid.id  
349 - },  
350 - xiangTab: 'first',  
351 - list: [],  
352 - parentMessage: {},  
353 - datalist: [],  
354 - datalist1:[],  
355 - lvdaoList:[]  
356 - }  
357 - },  
358 - created() {  
359 - if(this.editbgid.id) {  
360 - let c1 = {  
361 - pageNumber: 0,  
362 - pageSize: 10,  
363 - resourcesId: 'gg' + this.editbgid.id  
364 - }  
365 - cereResourceStrategylist(c1).then(res => {  
366 - console.error(res)  
367 - if (!Array.isArray(res.data)) {  
368 - this.datalist = [];  
369 - return;  
370 - }  
371 - this.datalist = res.data  
372 - })  
373 - // cereBusinessPlan(c1).then(res => {  
374 - // console.error(res)  
375 - // if (!Array.isArray(res.data)) {  
376 - // this.datalist1 = [];  
377 - // return;  
378 - // }  
379 - // this.datalist1 = res.data  
380 - // })  
381 - resourcesFindPlan( {resourceManagement: 'gg' + this.editbgid.id}).then(res => {  
382 - if (!Array.isArray(res.data)) {  
383 - this.datalist1 = [];  
384 - return;  
385 - }  
386 - this.datalist1 = res.data  
387 - })  
388 - this.getAllxsj()  
389 - this.getAllzl()  
390 - }  
391 -  
392 - this.getAll()  
393 - },  
394 - computed: { 332 + import oneht from "@/components/chakan/oneht";
  333 + import newmap from "@/components/newmap/index";
  334 + import MapXian from "@/components/MapContainer/MapXian";
  335 + import TitleWithCircle from '@/components/top/index';
  336 + import {
  337 + cereBusinessOperationqueryByPage,
  338 + cereResourceStrategylist,
  339 + cereBusinessPlan,
  340 + cereContractInformation,
  341 + resourcesFindPlan
  342 + } from '@/api/newly';
  343 + import {
  344 + editList
  345 + } from '@/api/map1.js';
  346 + import allimg from '@/components/chakan/allimg.vue';
  347 + import {
  348 + gongyuan,
  349 + parkTrails,
  350 + lvdaoduan,
  351 + } from '@/api/information.js';
  352 + import * as echarts from 'echarts'
  353 + export default {
  354 + components: {
  355 + TitleWithCircle,
  356 + MapXian,
  357 + newmap,
  358 + oneht,
  359 + allimg
  360 + },
  361 + props: {
  362 + leixing: {
  363 + type: Boolean,
  364 + default: true
  365 + },
  366 + editbgid: {
  367 + type: Object,
  368 + default: function() {
  369 + return {};
  370 + },
  371 + },
  372 + issp: {
  373 + type: String,
  374 + default: function() {
  375 + return '1';
  376 + },
  377 + },
  378 + },
  379 + data() {
  380 + return {
  381 + type: '1',
  382 + totalzl: 0,
  383 + pagequeryzl: {
  384 + pageNumber: 0,
  385 + pageSize: 10,
  386 + shopNumber: 'gg' + this.editbgid.id
  387 + },
  388 + datalistzl: [],
  389 + reviewComments: '',
  390 + radio: '2',
  391 + datalistxsj: [],
  392 + totalsxj: 0,
  393 + pagequerysxj: {
  394 + pageNumber: 0,
  395 + pageSize: 10,
  396 + resourceId: 'gg' + this.editbgid.id
  397 + },
  398 + xiangTab: 'first',
  399 + list: [],
  400 + parentMessage: {},
  401 + datalist: [],
  402 + datalist1: [],
  403 + lvdaoList: [],
  404 + labelStyle: {
  405 + width: '10%'
  406 + },
  407 + shouldShowChart: false
  408 + }
  409 + },
  410 + created() {
  411 + if (this.editbgid.id) {
  412 + let c1 = {
  413 + pageNumber: 0,
  414 + pageSize: 10,
  415 + resourcesId: 'gg' + this.editbgid.id
  416 + }
  417 + cereResourceStrategylist(c1).then(res => {
  418 + console.error(res)
  419 + if (!Array.isArray(res.data)) {
  420 + this.datalist = [];
  421 + return;
  422 + }
  423 + this.datalist = res.data
  424 + })
  425 + // cereBusinessPlan(c1).then(res => {
  426 + // console.error(res)
  427 + // if (!Array.isArray(res.data)) {
  428 + // this.datalist1 = [];
  429 + // return;
  430 + // }
  431 + // this.datalist1 = res.data
  432 + // })
  433 + resourcesFindPlan({
  434 + resourceManagement: 'gg' + this.editbgid.id
  435 + }).then(res => {
  436 + if (!Array.isArray(res.data)) {
  437 + this.datalist1 = [];
  438 + return;
  439 + }
  440 + this.datalist1 = res.data
  441 + })
  442 + this.getAllxsj()
  443 + this.getAllzl()
  444 + }
395 445
396 - },  
397 - methods: {  
398 - async getAll(){  
399 - const lvdao = await lvdaoduan()  
400 - const gongyua = await parkTrails()  
401 - const budao = await gongyuan()  
402 - const lvList = lvdao.data.concat(gongyua.data)  
403 -  
404 - this.lvdaoList = lvList.concat(budao.data) 446 + this.getAll()
405 }, 447 },
406 -  
407 - getLvdaoNameByCode(code) {  
408 - // 若传入的 code 为空,直接返回空字符串  
409 - if (!code) {  
410 - return '';  
411 - }  
412 - // 遍历 this.lvdaoList 数组  
413 - for (let i = 0; i < this.lvdaoList.length; i++) {  
414 - const item = this.lvdaoList[i];  
415 - // 当传入的 code 等于 item 的 code 时,返回 item 的 name  
416 - if (item.code === code) {  
417 - return item.name;  
418 - }  
419 - }  
420 - // 若遍历完数组都没找到匹配的 code,返回空字符串  
421 - return '无'; 448 + computed: {
  449 +
422 }, 450 },
423 - open(row) {  
424 - console.error(row)  
425 - this.xiangTab= 'first'  
426 - this.type = '2'  
427 - this.$refs.onhet.open(row)  
428 - },  
429 - minSev() {  
430 - console.error({  
431 - ...this.editbgid,  
432 - 'publishStatus': this.radio,  
433 - reviewComments: this.reviewComments  
434 - })  
435 - // return  
436 - editList({  
437 - ...this.editbgid,  
438 - 'publishStatus': this.radio,  
439 - reviewComments: this.reviewComments?this.reviewComments:null  
440 - }).then(res => {  
441 - console.error(res)  
442 - if (res.code == 200) {  
443 - this.$message({  
444 - message: '处理成功',  
445 - type: 'success'  
446 - })  
447 - this.editbgid.publishStatus = this.radio  
448 - this.$emit('removeonaction', '1')  
449 - } else {  
450 - this.$message({  
451 - message: '处理失败',  
452 - type: 'error'  
453 - })  
454 - }  
455 - })  
456 - },  
457 - handleCurrentChange(val,type) {  
458 - this[type].pageNumber = val - 1  
459 - if(type == 'pagequeryzl') {  
460 - this.getAllzl()  
461 - } else if(type == 'pagequerysxj') {  
462 - this.getAllsxj()  
463 - }  
464 -  
465 - },  
466 - handleSizeChange(val,type) {  
467 - this[type].pageSize = val  
468 - this[type].pageNumber = 0  
469 - if(type == 'pagequeryzl') {  
470 - this.getAllzl()  
471 - } else if(type == 'pagequerysxj') {  
472 - this.getAllsxj()  
473 - }  
474 - },  
475 - getAllxsj() {  
476 - cereBusinessOperationqueryByPage(this.pagequerysxj).then(res => {  
477 - console.error(res)  
478 - if (!Array.isArray(res.data.content)) {  
479 - this.datalistxsj = [];  
480 - return;  
481 - }  
482 - this.datalistxsj = res.data.content  
483 - this.totalsxj = res.data.totalElements  
484 - })  
485 - },  
486 - getAllzl() {  
487 - cereContractInformation(this.pagequeryzl).then(res => {  
488 - console.error(res)  
489 - if (!Array.isArray(res.data.content)) {  
490 - this.datalistzl = [];  
491 - return;  
492 - }  
493 - this.datalistzl = res.data.content  
494 - this.totalzl = res.data.totalElements  
495 - })  
496 - },  
497 - openfile(e) {  
498 - if (e) {  
499 - const fullUrl = e;  
500 - try {  
501 - window.open(fullUrl, '_blank'); // 在新标签页中打开文件  
502 - } catch (error) {  
503 - console.error('打开文件失败:', error);  
504 - }  
505 - } else {  
506 - console.error('无文件可查看');  
507 - }  
508 - },  
509 - changetype() {  
510 - this.xiangTab= 'first'  
511 - if(this.type == '1'){  
512 - this.$emit('removeonaction', '1')  
513 - }else{  
514 - this.type = '1'  
515 - }  
516 - },  
517 - }  
518 - } 451 + methods: {
  452 + async getAll() {
  453 + const lvdao = await lvdaoduan()
  454 + const gongyua = await parkTrails()
  455 + const budao = await gongyuan()
  456 + const lvList = lvdao.data.concat(gongyua.data)
  457 +
  458 + this.lvdaoList = lvList.concat(budao.data)
  459 + },
  460 +
  461 + getLvdaoNameByCode(code) {
  462 + // 若传入的 code 为空,直接返回空字符串
  463 + if (!code) {
  464 + return '';
  465 + }
  466 + // 遍历 this.lvdaoList 数组
  467 + for (let i = 0; i < this.lvdaoList.length; i++) {
  468 + const item = this.lvdaoList[i];
  469 + // 当传入的 code 等于 item 的 code 时,返回 item 的 name
  470 + if (item.code === code) {
  471 + return item.name;
  472 + }
  473 + }
  474 + // 若遍历完数组都没找到匹配的 code,返回空字符串
  475 + return '无';
  476 + },
  477 + tabClick(val) {
  478 + if (val.index == '3') {
  479 + this.shouldShowChart = true
  480 + this.$nextTick(() => {
  481 + const chartContainer = this.$refs.shop1ZX;
  482 + if (chartContainer) {
  483 + this.initChart();
  484 + } else {
  485 + console.log('图表容器元素未找到,尝试延迟初始化');
  486 + setTimeout(() => {
  487 +
  488 + if (chartContainer) {
  489 + this.initChart();
  490 + } else {
  491 + console.error('图表容器元素仍然未找到');
  492 + }
  493 + }, 100);
  494 + }
  495 + });
  496 + } else {
  497 + this.shouldShowChart = false
  498 + }
  499 +
  500 + },
  501 + initChart() {
  502 + // 初始化 echarts 实例
  503 + const chartDom = this.$refs.shop1ZX;
  504 + const myChart = echarts.init(chartDom)
  505 +
  506 + // 配置图表参数
  507 + const option = {
  508 + title: {
  509 + text: '点击量统计表',
  510 + left: 'left'
  511 + },
  512 + xAxis: {
  513 + type: 'category',
  514 + data: ['2023-11-26', '2023-11-27', '2023-11-28',
  515 + '2023-11-29', '2023-11-30', '2023-12-1', '2023-12-2'
  516 + ]
  517 + },
  518 + yAxis: {
  519 + type: 'value'
  520 + },
  521 + series: [{
  522 + name: '销售量',
  523 + data: [300, 500, 350, 300, 420, 600, 800],
  524 + type: 'line',
  525 + symbol: 'none' // 不显示数据点
  526 + }]
  527 + };
  528 +
  529 + // 使用刚指定的配置项和数据显示图表
  530 + option && myChart.setOption(option);
  531 +
  532 + // 窗口大小变化时自适应
  533 + window.addEventListener('resize', () => {
  534 + myChart.resize();
  535 + });
  536 + },
  537 + open(row) {
  538 + console.error(row)
  539 + this.xiangTab = 'first'
  540 + this.type = '2'
  541 + this.$refs.onhet.open(row)
  542 + },
  543 + minSev() {
  544 + console.error({
  545 + ...this.editbgid,
  546 + 'publishStatus': this.radio,
  547 + reviewComments: this.reviewComments
  548 + })
  549 + // return
  550 + editList({
  551 + ...this.editbgid,
  552 + 'publishStatus': this.radio,
  553 + reviewComments: this.reviewComments ? this.reviewComments : null
  554 + }).then(res => {
  555 + console.error(res)
  556 + if (res.code == 200) {
  557 + this.$message({
  558 + message: '处理成功',
  559 + type: 'success'
  560 + })
  561 + this.editbgid.publishStatus = this.radio
  562 + this.$emit('removeonaction', '1')
  563 + } else {
  564 + this.$message({
  565 + message: '处理失败',
  566 + type: 'error'
  567 + })
  568 + }
  569 + })
  570 + },
  571 + handleCurrentChange(val, type) {
  572 + this[type].pageNumber = val - 1
  573 + if (type == 'pagequeryzl') {
  574 + this.getAllzl()
  575 + } else if (type == 'pagequerysxj') {
  576 + this.getAllsxj()
  577 + }
  578 +
  579 + },
  580 + handleSizeChange(val, type) {
  581 + this[type].pageSize = val
  582 + this[type].pageNumber = 0
  583 + if (type == 'pagequeryzl') {
  584 + this.getAllzl()
  585 + } else if (type == 'pagequerysxj') {
  586 + this.getAllsxj()
  587 + }
  588 + },
  589 + getAllxsj() {
  590 + cereBusinessOperationqueryByPage(this.pagequerysxj).then(res => {
  591 + console.error(res)
  592 + if (!Array.isArray(res.data.content)) {
  593 + this.datalistxsj = [];
  594 + return;
  595 + }
  596 + this.datalistxsj = res.data.content
  597 + this.totalsxj = res.data.totalElements
  598 + })
  599 + },
  600 + getAllzl() {
  601 + cereContractInformation(this.pagequeryzl).then(res => {
  602 + console.error(res)
  603 + if (!Array.isArray(res.data.content)) {
  604 + this.datalistzl = [];
  605 + return;
  606 + }
  607 + this.datalistzl = res.data.content
  608 + this.totalzl = res.data.totalElements
  609 + })
  610 + },
  611 + openfile(e) {
  612 + if (e) {
  613 + const fullUrl = e;
  614 + try {
  615 + window.open(fullUrl, '_blank'); // 在新标签页中打开文件
  616 + } catch (error) {
  617 + console.error('打开文件失败:', error);
  618 + }
  619 + } else {
  620 + console.error('无文件可查看');
  621 + }
  622 + },
  623 + changetype() {
  624 + this.xiangTab = 'first'
  625 + if (this.type == '1') {
  626 + this.$emit('removeonaction', '1')
  627 + } else {
  628 + this.type = '1'
  629 + }
  630 + },
  631 + }
  632 + }
519 </script> 633 </script>
520 <style> 634 <style>
521 - .el-form-item__label {  
522 - color: #a2a2a2;  
523 - } 635 + .el-form-item__label {
  636 + color: #a2a2a2;
  637 + }
524 638
525 - .greens {  
526 - color: #3F9B6A;  
527 - }  
528 -</style> 639 + .greens {
  640 + color: #3F9B6A;
  641 + }
  642 +</style>
529 \ No newline at end of file 643 \ No newline at end of file
admin-web-master/src/components/chakan/zl.vue
@@ -218,7 +218,7 @@ @@ -218,7 +218,7 @@
218 </el-col> 218 </el-col>
219 <el-col :span="8"> 219 <el-col :span="8">
220 <el-form-item label="所属绿道段" prop="belongingGreenwaySection"> 220 <el-form-item label="所属绿道段" prop="belongingGreenwaySection">
221 - <div class="duiqi">{{info.cereBasicInformationShop.belongingGreenwaySection || '无'}}</div> 221 + <div class="duiqi">{{getLvdaoNameByCode(info.cereBasicInformationShop.belongingGreenwaySection) || '无'}}</div>
222 </el-form-item> 222 </el-form-item>
223 </el-col> 223 </el-col>
224 <el-col :span="8"> 224 <el-col :span="8">
@@ -282,7 +282,7 @@ @@ -282,7 +282,7 @@
282 <!-- <img v-for="item in info.cereBasicInformationShop.displayMainImage.split(',')" :src="$baseURL+item" alt="" style="width:140px;height:140px;margin-left: 15px;"> --> 282 <!-- <img v-for="item in info.cereBasicInformationShop.displayMainImage.split(',')" :src="$baseURL+item" alt="" style="width:140px;height:140px;margin-left: 15px;"> -->
283 </el-form-item> 283 </el-form-item>
284 <el-form-item label="其他视频" prop="otherImageVideos" > 284 <el-form-item label="其他视频" prop="otherImageVideos" >
285 - <div class="duiqi" :class="info.cereBasicInformationShop.otherImageVideos?'greens':''" @click ="info.cereBasicInformationShop.otherImageVideos?openfile($baseURL+info.cereBasicInformationShop.otherImageVideos):''">{{info.cereBasicInformationShop.otherImageVideos?'查看详情':'无'}}</div> 285 + <div class="duiqi" :class="info.cereBasicInformationShop.otherImageVideos?'greens':''" @click ="info.cereBasicInformationShop.otherImageVideos?openfile(info.cereBasicInformationShop.otherImageVideos):''">{{info.cereBasicInformationShop.otherImageVideos?'查看详情':'无'}}</div>
286 <!-- <div class="duiqi" v-for="item in info.cereBasicInformationShop.otherImageVideos.split(',')">{{$baseURL+item}}</div> --> 286 <!-- <div class="duiqi" v-for="item in info.cereBasicInformationShop.otherImageVideos.split(',')">{{$baseURL+item}}</div> -->
287 </el-form-item> 287 </el-form-item>
288 </el-form> 288 </el-form>
@@ -369,7 +369,7 @@ @@ -369,7 +369,7 @@
369 </div> 369 </div>
370 </el-form-item> 370 </el-form-item>
371 <el-form-item label="其他视频" prop="otherImageVideos" > 371 <el-form-item label="其他视频" prop="otherImageVideos" >
372 - <div class="duiqi" :class="info.cereBasicInformationVenue.otherImageVideos?'greens':''" @click ="info.cereBasicInformationVenue.otherImageVideos?openfile($baseURL+info.cereBasicInformationVenue.otherImageVideos):''">{{info.cereBasicInformationVenue.otherImageVideos?'查看详情':'无'}}</div> 372 + <div class="duiqi" :class="info.cereBasicInformationVenue.otherImageVideos?'greens':''" @click ="info.cereBasicInformationVenue.otherImageVideos?openfile(info.cereBasicInformationVenue.otherImageVideos):''">{{info.cereBasicInformationVenue.otherImageVideos?'查看详情':'无'}}</div>
373 </el-form-item> 373 </el-form-item>
374 </el-form> 374 </el-form>
375 </div> 375 </div>
@@ -439,6 +439,11 @@ @@ -439,6 +439,11 @@
439 import allimg from '@/components/chakan/allimg.vue'; 439 import allimg from '@/components/chakan/allimg.vue';
440 import newmap from "@/components/newmap/index"; 440 import newmap from "@/components/newmap/index";
441 import indexall from "@/components/newmap/indexall"; 441 import indexall from "@/components/newmap/indexall";
  442 + import {
  443 + gongyuan,
  444 + parkTrails,
  445 + lvdaoduan,
  446 + } from '@/api/information.js';
442 export default { 447 export default {
443 components: { 448 components: {
444 TitleWithCircle, 449 TitleWithCircle,
@@ -483,7 +488,8 @@ @@ -483,7 +488,8 @@
483 checkState:'2', 488 checkState:'2',
484 phone: '', 489 phone: '',
485 }, 490 },
486 - shopMsg:{} 491 + shopMsg:{},
  492 + lvdaoList:[]
487 } 493 }
488 }, 494 },
489 created() { 495 created() {
@@ -495,11 +501,36 @@ @@ -495,11 +501,36 @@
495 if (this.info.cereAdvertisingInformation) { 501 if (this.info.cereAdvertisingInformation) {
496 this.ontype = this.info.cereAdvertisingInformation.advertisingType 502 this.ontype = this.info.cereAdvertisingInformation.advertisingType
497 } 503 }
  504 + this.getAll()
498 }, 505 },
499 computed: { 506 computed: {
500 507
501 }, 508 },
502 methods: { 509 methods: {
  510 + async getAll(){
  511 + const lvdao = await lvdaoduan()
  512 + const gongyua = await parkTrails()
  513 + const budao = await gongyuan()
  514 + const lvList = lvdao.data.concat(gongyua.data)
  515 +
  516 + this.lvdaoList = lvList.concat(budao.data)
  517 + },
  518 + getLvdaoNameByCode(code) {
  519 + // 若传入的 code 为空,直接返回空字符串
  520 + if (!code) {
  521 + return '';
  522 + }
  523 + // 遍历 this.lvdaoList 数组
  524 + for (let i = 0; i < this.lvdaoList.length; i++) {
  525 + const item = this.lvdaoList[i];
  526 + // 当传入的 code 等于 item 的 code 时,返回 item 的 name
  527 + if (item.code === code) {
  528 + return item.name;
  529 + }
  530 + }
  531 + // 若遍历完数组都没找到匹配的 code,返回空字符串
  532 + return '无';
  533 + },
503 minSev() { 534 minSev() {
504 console.error(this.info) 535 console.error(this.info)
505 console.error(this.radio) 536 console.error(this.radio)
@@ -517,6 +548,7 @@ @@ -517,6 +548,7 @@
517 type: 'success' 548 type: 'success'
518 }) 549 })
519 this.info.auditStatus = this.radio 550 this.info.auditStatus = this.radio
  551 + this.$emit('removeonaction', '1')
520 } else { 552 } else {
521 this.$message({ 553 this.$message({
522 message: '处理失败', 554 message: '处理失败',
@@ -528,6 +560,7 @@ @@ -528,6 +560,7 @@
528 openfile(e) { 560 openfile(e) {
529 if (e) { 561 if (e) {
530 const fullUrl = this.$baseURL + e; 562 const fullUrl = this.$baseURL + e;
  563 + console.log(fullUrl,'fullUrlfullUrlfullUrl')
531 try { 564 try {
532 window.open(fullUrl, '_blank'); // 在新标签页中打开文件 565 window.open(fullUrl, '_blank'); // 在新标签页中打开文件
533 } catch (error) { 566 } catch (error) {
admin-web-master/src/components/change/cl.vue
@@ -25,13 +25,18 @@ @@ -25,13 +25,18 @@
25 </el-table-column> 25 </el-table-column>
26 <el-table-column label="策略名称" prop="policyName" show-overflow-tooltip></el-table-column> 26 <el-table-column label="策略名称" prop="policyName" show-overflow-tooltip></el-table-column>
27 <el-table-column label="适用资源" prop="applicableResources" show-overflow-tooltip></el-table-column> 27 <el-table-column label="适用资源" prop="applicableResources" show-overflow-tooltip></el-table-column>
28 - <el-table-column label="租金价格(元/m²)" prop="rentalPrice" show-overflow-tooltip> 28 + <el-table-column :label="type=='广告位'?'租金价格(元)':'租金价格(元/m²)'" prop="rentalPrice" show-overflow-tooltip>
29 <template slot-scope="scope" > 29 <template slot-scope="scope" >
30 - <span v-if="scope.row.rentalPrice!=''">{{scope.row.rentalPrice}}元/m²</span>  
31 - <span v-else>无</span> 30 + <span v-if="scope.row.rentalPrice!='' ">{{scope.row.rentalPrice}}元<span v-if="type!='广告位'">/m²</span></span>
  31 + <span v-else>-</span>
32 </template> 32 </template>
33 </el-table-column> 33 </el-table-column>
34 - <el-table-column label="付款周期" prop="leaseTerm" show-overflow-tooltip></el-table-column> 34 + <el-table-column label="付款周期" prop="leaseTerm" show-overflow-tooltip>
  35 + <template slot-scope="scope" >
  36 + <span v-if="scope.row.leaseTerm!=''">{{scope.row.leaseTerm}}</span>
  37 + <span v-else>-</span>
  38 + </template>
  39 + </el-table-column>
35 <!-- <el-table-column label="付款日" prop="payDay" show-overflow-tooltip></el-table-column> --> 40 <!-- <el-table-column label="付款日" prop="payDay" show-overflow-tooltip></el-table-column> -->
36 </el-table> 41 </el-table>
37 </div> 42 </div>
admin-web-master/src/components/change/mbadd.vue
@@ -103,7 +103,7 @@ @@ -103,7 +103,7 @@
103 style="height: 0;" @click.stop="copytit('资源类型')"></i> 103 style="height: 0;" @click.stop="copytit('资源类型')"></i>
104 </div> 104 </div>
105 <div v-else> 105 <div v-else>
106 - {{scope.row.shopName ? '商铺' : scope.row.advertisingType?scope.row.advertisingType:'场地'}} 106 + {{scope.row.shopName ? '商铺' : scope.row.advertisingType?scope.row.advertisingType:'场地'}}
107 </div> 107 </div>
108 </template> 108 </template>
109 </el-table-column> 109 </el-table-column>
@@ -114,7 +114,7 @@ @@ -114,7 +114,7 @@
114 <i class="el-icon-copy-document greens tableBtn iterem" 114 <i class="el-icon-copy-document greens tableBtn iterem"
115 style="height: 0;" @click.stop="copytit('详细地址')"></i> 115 style="height: 0;" @click.stop="copytit('详细地址')"></i>
116 </div> 116 </div>
117 - <div v-else>{{scope.row.detailedLocation}}</div> 117 + <div v-else> {{scope.row.shopName ? scope.row.detailedLocation :'-' }}</div>
118 </template> 118 </template>
119 </el-table-column> 119 </el-table-column>
120 120
admin-web-master/src/components/merchantInformation/index.vue
@@ -47,6 +47,18 @@ @@ -47,6 +47,18 @@
47 <allimg v-if="item" :src="item" fit="contain" v-for="item in info.idCardBackImage.split(',')" style="width: 112px;height: 112px;border: 1px dotted #dcdfe6;border-radius: 2px;overflow: hidden;margin: 0 10px 10px 0;"/> 47 <allimg v-if="item" :src="item" fit="contain" v-for="item in info.idCardBackImage.split(',')" style="width: 112px;height: 112px;border: 1px dotted #dcdfe6;border-radius: 2px;overflow: hidden;margin: 0 10px 10px 0;"/>
48 </div> 48 </div>
49 </el-form-item> 49 </el-form-item>
  50 + <el-row :gutter="20">
  51 + <el-col :span="9">
  52 + <el-form-item label="评级" prop="rating">
  53 + <div class="duiqi">{{info.rating || '-'}}</div>
  54 + </el-form-item>
  55 + </el-col>
  56 + <el-col :span="9">
  57 + <el-form-item label="是否黑名单" prop="idCardNumber">
  58 + <div class="duiqi">{{info.isBlackList=='2'?'是':'否'}}</div>
  59 + </el-form-item>
  60 + </el-col>
  61 + </el-row>
50 </el-form> 62 </el-form>
51 </div> 63 </div>
52 <!-- <TitleWithCircle title="审核信息" /> 64 <!-- <TitleWithCircle title="审核信息" />
admin-web-master/src/utils/request.js
@@ -22,7 +22,7 @@ if(host === &#39;localhost:8080&#39; || host === &#39;localhost:8081&#39; || host === &#39;localhost @@ -22,7 +22,7 @@ if(host === &#39;localhost:8080&#39; || host === &#39;localhost:8081&#39; || host === &#39;localhost
22 // baseURL = process.env.VUE_APP_DOMAIN_PREFIX_1; 22 // baseURL = process.env.VUE_APP_DOMAIN_PREFIX_1;
23 23
24 24
25 - baseURL = 'http://128.10.249.46:9003'; 25 + baseURL = 'http://128.10.249.44:9003';
26 26
27 27
28 } else { 28 } else {
admin-web-master/src/utils/request2.js
@@ -20,7 +20,7 @@ if(host === &#39;localhost:8080&#39; || host === &#39;localhost:8081&#39; || host === &#39;localhost @@ -20,7 +20,7 @@ if(host === &#39;localhost:8080&#39; || host === &#39;localhost:8081&#39; || host === &#39;localhost
20 // baseURL = 'https://zhgw-uat.028wlkj.com/cdwlMall/meserver/business-server'; 20 // baseURL = 'https://zhgw-uat.028wlkj.com/cdwlMall/meserver/business-server';
21 // baseURL = 'http://172.16.61.125:9004'; 21 // baseURL = 'http://172.16.61.125:9004';
22 // baseURL = 'https://jy.scjysm.asia:18086/cdwlMall/business-server'; 22 // baseURL = 'https://jy.scjysm.asia:18086/cdwlMall/business-server';
23 - baseURL = 'http://128.10.249.46:9004'; 23 + baseURL = 'http://128.10.249.44:9004';
24 } else { 24 } else {
25 console.error('---------------------') 25 console.error('---------------------')
26 console.error(hostall) 26 console.error(hostall)
admin-web-master/src/views/business/businessList/index.vue
@@ -76,6 +76,8 @@ @@ -76,6 +76,8 @@
76 <el-table-column label="操作" fixed="right"> 76 <el-table-column label="操作" fixed="right">
77 <template slot-scope="scope"> 77 <template slot-scope="scope">
78 <div @click="details(scope.row)" class="tableBtn greens">查看</div> 78 <div @click="details(scope.row)" class="tableBtn greens">查看</div>
  79 + <div @click="bianji(scope.row)" class="tableBtn greens">编辑</div>
  80 + <div @click="delmsg(scope.row.id)" class="tableBtn greens">删除</div>
79 <!-- <div @click="openyujingSet(scope.row)" class="tableBtn greens">审核</div> --> 81 <!-- <div @click="openyujingSet(scope.row)" class="tableBtn greens">审核</div> -->
80 </template> 82 </template>
81 </el-table-column> 83 </el-table-column>
@@ -145,6 +147,16 @@ @@ -145,6 +147,16 @@
145 @click="removeonaction('1')">返回</el-button> 147 @click="removeonaction('1')">返回</el-button>
146 </div> --> 148 </div> -->
147 </div> 149 </div>
  150 + <div class="zhuti" v-if="onaction == '4'">
  151 + <div style="height:58px;line-height:58px;">
  152 + <div style="color:#0006"> <span>合同管理</span> <span style="padding:0 5px;">></span> <span
  153 + style="color:#000000e6">编辑</span></div>
  154 + </div>
  155 +
  156 + <div style="padding: 20px 20px 20px 0;">
  157 + <add :info="bianinfo" @removeonaction="removeonaction"></add>
  158 + </div>
  159 + </div>
148 160
149 </div> 161 </div>
150 <!-- </div> --> 162 <!-- </div> -->
@@ -154,7 +166,7 @@ @@ -154,7 +166,7 @@
154 <script> 166 <script>
155 import add from '@/components/add/addss.vue' 167 import add from '@/components/add/addss.vue'
156 import { 168 import {
157 - cerePlatformMerchant,cerePlatformMerchantedit 169 + cerePlatformMerchant,cerePlatformMerchantedit,cerePlatformMerchantdelet
158 } from '../../../api/newly.js' 170 } from '../../../api/newly.js'
159 import { 171 import {
160 cereReminderSet, 172 cereReminderSet,
@@ -180,7 +192,8 @@ @@ -180,7 +192,8 @@
180 tableData: [], 192 tableData: [],
181 total: 0, 193 total: 0,
182 onaction: '1', 194 onaction: '1',
183 - info: {} 195 + info: {},
  196 + bianinfo:{}
184 } 197 }
185 }, 198 },
186 components: { 199 components: {
@@ -236,6 +249,10 @@ @@ -236,6 +249,10 @@
236 this.detailsinfo = row 249 this.detailsinfo = row
237 this.onaction = '3' 250 this.onaction = '3'
238 }, 251 },
  252 + bianji(row){
  253 + this.bianinfo = row
  254 + this.onaction = '4'
  255 + },
239 biangeng(row) { 256 biangeng(row) {
240 alert(`合同变更 - 店铺ID: ${row.id}`); 257 alert(`合同变更 - 店铺ID: ${row.id}`);
241 }, 258 },
@@ -277,6 +294,37 @@ @@ -277,6 +294,37 @@
277 }, 294 },
278 this.getAll() 295 this.getAll()
279 }, 296 },
  297 + delmsg(ids){
  298 + const h = this.$createElement;
  299 + this.$msgbox({
  300 + title: '消息',
  301 + message: h('p', null, [
  302 + h('span', null, '是否删除 '),
  303 + ]),
  304 + showCancelButton: true,
  305 + showClose: false,
  306 + confirmButtonText: '确定',
  307 + cancelButtonText: '取消',
  308 + customClass: 'oe-dialog-btn',
  309 + beforeClose: (action, instance, done) => {
  310 + if (action === 'confirm') {
  311 + cerePlatformMerchantdelet({
  312 + id: ids
  313 + }).then(res => {
  314 + this.$message({
  315 + message: '删除成功',
  316 + type: 'success'
  317 + })
  318 + this.getAll()
  319 + done();
  320 + })
  321 + } else {
  322 + done();
  323 + }
  324 + }
  325 + })
  326 +
  327 + },
280 } 328 }
281 329
282 } 330 }
admin-web-master/src/views/detect/map.vue
@@ -688,9 +688,15 @@ @@ -688,9 +688,15 @@
688 688
689 </el-table-column> 689 </el-table-column>
690 <el-table-column label="经营类型" prop="actualUsableArea" min-width="150" show-overflow-tooltip> 690 <el-table-column label="经营类型" prop="actualUsableArea" min-width="150" show-overflow-tooltip>
  691 + <template slot-scope="scope">
  692 + {{scope.row.actualUsableArea==''?'-':scope.row.actualUsableArea}}
  693 + </template>
691 </el-table-column> 694 </el-table-column>
692 695
693 <el-table-column label="租金/周期" prop="head" min-width="120" show-overflow-tooltip> 696 <el-table-column label="租金/周期" prop="head" min-width="120" show-overflow-tooltip>
  697 + <template slot-scope="scope">
  698 + {{scope.row.head==''?'-':scope.row.head}}
  699 + </template>
694 </el-table-column> 700 </el-table-column>
695 <el-table-column label="租赁状态" prop="rentalStatus" min-width="120" show-overflow-tooltip> 701 <el-table-column label="租赁状态" prop="rentalStatus" min-width="120" show-overflow-tooltip>
696 <template slot-scope="scope"> 702 <template slot-scope="scope">
admin-web-master/src/views/scheme/sam.vue
@@ -59,15 +59,22 @@ @@ -59,15 +59,22 @@
59 <el-table-column label="适用资源" prop="applicableResources" min-width="100"> 59 <el-table-column label="适用资源" prop="applicableResources" min-width="100">
60 </el-table-column> 60 </el-table-column>
61 <el-table-column label="经营类型" prop="businessType" min-width="100"> 61 <el-table-column label="经营类型" prop="businessType" min-width="100">
62 - 62 +<template slot-scope="scope">
  63 + <span v-if="scope.row.businessType!=''">{{scope.row.businessType}}</span>
  64 + <span v-else>-</span>
  65 + </template>
63 </el-table-column> 66 </el-table-column>
64 - <el-table-column label="租金价格(元/m²)" prop="rentalPrice" min-width="150"> 67 + <el-table-column label="租金价格(元)" prop="rentalPrice" min-width="150">
65 <template slot-scope="scope"> 68 <template slot-scope="scope">
66 <span v-if="scope.row.rentalPrice!=''">{{scope.row.rentalPrice}}元/m²</span> 69 <span v-if="scope.row.rentalPrice!=''">{{scope.row.rentalPrice}}元/m²</span>
67 - <span v-else></span> 70 + <span v-else>-</span>
68 </template> 71 </template>
69 </el-table-column> 72 </el-table-column>
70 <el-table-column label="租期" prop="leaseTerm" min-width="100"> 73 <el-table-column label="租期" prop="leaseTerm" min-width="100">
  74 + <template slot-scope="scope">
  75 + <span v-if="scope.row.leaseTerm!=''">{{scope.row.leaseTerm}}</span>
  76 + <span v-else>-</span>
  77 + </template>
71 </el-table-column> 78 </el-table-column>
72 <el-table-column label="是否出租" prop="isRental" min-width="100"> 79 <el-table-column label="是否出租" prop="isRental" min-width="100">
73 <template slot-scope="scope"> 80 <template slot-scope="scope">
lvdao-miniapp/manifest.json
1 { 1 {
2 "name" : "绿道", 2 "name" : "绿道",
3 - "appid" : "__UNI__189D96A", 3 + "appid" : "__UNI__F034047",
4 "description" : "", 4 "description" : "",
5 "versionName" : "1.0.2", 5 "versionName" : "1.0.2",
6 "versionCode" : "100", 6 "versionCode" : "100",
@@ -17,7 +17,9 @@ @@ -17,7 +17,9 @@
17 "delay" : 0 17 "delay" : 0
18 }, 18 },
19 /* 模块配置 */ 19 /* 模块配置 */
20 - "modules" : {}, 20 + "modules" : {
  21 + "Camera" : {}
  22 + },
21 /* 应用发布信息 */ 23 /* 应用发布信息 */
22 "distribute" : { 24 "distribute" : {
23 /* android打包配置 */ 25 /* android打包配置 */
@@ -107,7 +109,11 @@ @@ -107,7 +109,11 @@
107 "minified" : true 109 "minified" : true
108 }, 110 },
109 "usingComponents" : true, 111 "usingComponents" : true,
110 - "permission" : {} 112 + "permission" : {
  113 + "scope.writePhotosAlbum" : {
  114 + "desc" : "需要保存图片到相册"
  115 + }
  116 + }
111 }, 117 },
112 "mp-alipay" : { 118 "mp-alipay" : {
113 "usingComponents" : true 119 "usingComponents" : true
lvdao-miniapp/pagesA/myZiyuan/myZiyuan.vue
@@ -28,7 +28,7 @@ @@ -28,7 +28,7 @@
28 </view> 28 </view>
29 </view> 29 </view>
30 <view v-if="recordList.length == 0" style="text-align: center;margin-top: 60rpx;color:#808080;">暂无数据</view> 30 <view v-if="recordList.length == 0" style="text-align: center;margin-top: 60rpx;color:#808080;">暂无数据</view>
31 - <u-select v-model="typeShow" :list="activesType" @confirm="typeChange"></u-select> 31 + <u-select v-model="typeShow" :list="activesType" @confirm="typeChange" confirm-color="#808080"></u-select>
32 </view> 32 </view>
33 </template> 33 </template>
34 34
lvdao-miniapp/pagesA/projectManagement/projectDetails.vue
@@ -46,8 +46,10 @@ @@ -46,8 +46,10 @@
46 <view v-if="showPosterMask" class="poster-mask"> 46 <view v-if="showPosterMask" class="poster-mask">
47 <view class="poster-container"> 47 <view class="poster-container">
48 <view style="text-align: center;font-weight: bold;">宣传海报</view> 48 <view style="text-align: center;font-weight: bold;">宣传海报</view>
49 - <image v-if="posterUrl" :src="posterUrl" mode="aspectFit" style="height: 100%;"></image> 49 + <image v-if="posterUrl" :src="posterUrl" mode="aspectFit" style="height: 350px;" @click="savePoster" ></image>
50 <view class="close-btn" @click="closePosterMask">×</view> 50 <view class="close-btn" @click="closePosterMask">×</view>
  51 + <!-- 新增的保存按钮 -->
  52 + <!-- <button class="save-btn" style="padding: 8px 0;border-radius: 15px;background-color: #3f9b6a;color: #fff;" @click="savePoster">保存到本地</button> -->
51 </view> 53 </view>
52 </view> 54 </view>
53 </view> 55 </view>
@@ -148,6 +150,21 @@ @@ -148,6 +150,21 @@
148 } 150 }
149 }; 151 };
150 }, 152 },
  153 + // 保存图片到本地
  154 + savePoster() {
  155 + uni.previewImage({
  156 + urls:[this.posterUrl],
  157 + longPressActions: {
  158 + itemList: ['保存图片'],
  159 + success: function(data) {
  160 + console.log('选中了第' + (data.tapIndex + 1) + '个按钮,第' + (data.index + 1) + '张图片');
  161 + },
  162 + fail: function(err) {
  163 + console.log(err.errMsg);
  164 + }
  165 + }
  166 + });
  167 + },
151 } 168 }
152 }; 169 };
153 </script> 170 </script>
@@ -305,7 +322,7 @@ @@ -305,7 +322,7 @@
305 background-color: #fff; 322 background-color: #fff;
306 padding: 10px; 323 padding: 10px;
307 border-radius: 10px; 324 border-radius: 10px;
308 - height: 400px; 325 + // height: 400px;
309 } 326 }
310 327
311 .close-btn { 328 .close-btn {