Commit 53fc345af486ed69c3d4c66364b37a423f96773c

Authored by 杨鑫
2 parents 52fc03a8 9d4471c1

'最新'

admin-web-master/src/components/add/addinformation.vue
... ... @@ -62,35 +62,43 @@
62 62 </el-col>
63 63  
64 64 <el-col :span="12">
  65 + <el-form-item label="所属公园/步道" prop="belongingParkTrail">
  66 + <el-select v-model="ruleForm.belongingParkTrail" placeholder="请选择" style="width: 100%;">
  67 + <el-option :label="item.name" :value="item.code" v-for="(item,index) in gongyuanList"
  68 + :key="index"></el-option>
  69 + </el-select>
  70 + </el-form-item>
  71 + </el-col>
  72 + </el-row>
  73 + <el-row :gutter="20">
  74 + <el-col :span="12">
65 75 <el-form-item label="门牌号" prop="houseNumber">
66 76 <el-input v-model="ruleForm.houseNumber" placeholder="请输入"
67 77 maxlength="20"></el-input>
68 78 </el-form-item>
69 79 </el-col>
70   - </el-row>
71   -
72   - <el-row :gutter="20">
73 80 <el-col :span="12">
74 81 <el-form-item label="归属部门" prop="belongingDepartment">
75 82 <el-input v-model="ruleForm.belongingDepartment" placeholder="请输入" maxlength="20">
76 83 </el-input>
77 84 </el-form-item>
78 85 </el-col>
  86 + </el-row>
  87 + <el-row :gutter="20">
79 88 <el-col :span="12">
80 89 <el-form-item label="负责人" prop="head">
81 90 <el-input v-model="ruleForm.head" placeholder="请输入" maxlength="10">
82 91 </el-input>
83 92 </el-form-item>
84 93 </el-col>
85   - </el-row>
86   -
87   - <el-row :gutter="20">
88 94 <el-col :span="12">
89 95 <el-form-item label="联系人" prop="contacts">
90 96 <el-input v-model="ruleForm.contacts" placeholder="请输入" maxlength="50">
91 97 </el-input>
92 98 </el-form-item>
93 99 </el-col>
  100 + </el-row>
  101 + <el-row :gutter="20">
94 102 <el-col :span="12">
95 103 <el-form-item label="联系方式" prop="telephone">
96 104 <el-input v-model="ruleForm.telephone" placeholder="请输入" maxlength="20">
... ... @@ -152,7 +160,7 @@
152 160 lvdaoduan,
153 161 addList,
154 162 editList
155   - } from '../../api/information.js';
  163 + } from '@/api/information.js';
156 164 import newmap from "@/components/newmap/index";
157 165 export default {
158 166 components: {
... ...
admin-web-master/src/views/advertisement/advertisingReview/advertisingReview.vue
... ... @@ -193,6 +193,12 @@
193 193 cereResourceStrategy,
194 194 editStatus
195 195 } from '@/api/newly.js'
  196 + import {
  197 + getAlls,changAlls
  198 + } from '@/api/information';
  199 + import {
  200 + likeGet,
  201 + } from '@/api/map1'
196 202 import cl from '@/components/change/cl.vue'
197 203 export default {
198 204 data() {
... ... @@ -232,9 +238,48 @@
232 238 this.getAll()
233 239 },
234 240 methods: {
235   - openhet(row) {
  241 + async openhet(row) {
236 242 this.formInline = row
237   - this.onaction = '2'
  243 + console.error(row)
  244 + let list = []
  245 + if(row.cereBasicInformationShop && row.cereBasicInformationShop.id) {
  246 + const res = await getAlls({
  247 + pageNumber: 0,
  248 + pageSize: 10,
  249 + publishStatus:'2',
  250 + id: row.cereBasicInformationShop.id
  251 + })
  252 + list = res.data.content
  253 +
  254 + }
  255 + if(row.cereAdvertisingInformation && row.cereAdvertisingInformation.id) {
  256 + const res = await likeGet({
  257 + pageNumber: 0,
  258 + pageSize: 10,
  259 + publishStatus:'2',
  260 + id: row.cereAdvertisingInformation.id
  261 + })
  262 + list = res.data.content
  263 + }
  264 + if(row.cereBasicInformationVenue && row.cereBasicInformationVenue.id) {
  265 + const res = await changAlls({
  266 + pageNumber: 0,
  267 + pageSize: 10,
  268 + publishStatus:'2',
  269 + id: row.cereBasicInformationVenue.id
  270 + })
  271 + list = res.data.content
  272 + }
  273 + console.error(list)
  274 + if(list.length>0) {
  275 + this.onaction = '2'
  276 + } else {
  277 + this.$message({
  278 + message: '该资源已被租赁',
  279 + type: 'error'
  280 + })
  281 + }
  282 +
238 283 },
239 284 changeauditStatus() {
240 285 AdvertiserInfoEdit({
... ...
admin-web-master/src/views/rent/audit/index.vue
... ... @@ -162,6 +162,12 @@
162 162 import addremove from '@/components/add/addremoveht.vue'
163 163 import zl from '@/components/chakan/zl'
164 164 import {
  165 + getAlls,changAlls
  166 + } from '@/api/information';
  167 + import {
  168 + likeGet,
  169 + } from '@/api/map1'
  170 + import {
165 171 cereContractInformation
166 172 } from '@/api/commodityLease.js'
167 173 export default {
... ... @@ -196,9 +202,49 @@
196 202 this.getAll()
197 203 },
198 204 methods: {
199   - openhet(row) {
  205 + async openhet(row) {
200 206 this.formInline = row
201   - this.onaction = '2'
  207 + // console.error(row)
  208 + let list = []
  209 + if(row.cereBasicInformationShop && row.cereBasicInformationShop.id) {
  210 + const res = await getAlls({
  211 + pageNumber: 0,
  212 + pageSize: 10,
  213 + publishStatus:'2',
  214 + id: row.cereBasicInformationShop.id
  215 + })
  216 + list = res.data.content
  217 +
  218 + }
  219 + if(row.cereAdvertisingInformation && row.cereAdvertisingInformation.id) {
  220 + const res = await likeGet({
  221 + pageNumber: 0,
  222 + pageSize: 10,
  223 + publishStatus:'2',
  224 + id: row.cereAdvertisingInformation.id
  225 + })
  226 + list = res.data.content
  227 + }
  228 + if(row.cereBasicInformationVenue && row.cereBasicInformationVenue.id) {
  229 + const res = await changAlls({
  230 + pageNumber: 0,
  231 + pageSize: 10,
  232 + publishStatus:'2',
  233 + id: row.cereBasicInformationVenue.id
  234 + })
  235 + list = res.data.content
  236 + }
  237 + console.error(list)
  238 + if(list.length>0) {
  239 + this.onaction = '2'
  240 + } else {
  241 + this.$message({
  242 + message: '该资源已被租赁',
  243 + type: 'error'
  244 + })
  245 + }
  246 +
  247 +
202 248 },
203 249 //删除
204 250 async closemsg(e) {
... ...
lvdao-miniapp/main.js
... ... @@ -8,13 +8,13 @@ import uView from &quot;uview-ui&quot;;
8 8 import DialogBox from './components/DialogBox/DialogBox';
9 9 // let hostall = window.location.href;
10 10 // let c1 = hostall.split('cdwlMall')[0];
11   -// let c1 = 'https://jy.scjysm.asia:18086/'
12   -let c1 = 'https://zhgw-uat.028wlkj.com/'
  11 +let c1 = 'https://jy.scjysm.asia:18086/'
  12 +// let c1 = 'https://zhgw-uat.028wlkj.com/'
13 13 Vue.config.productionTip = false
14 14 Vue.prototype.$http = http
15 15 Vue.prototype.$imgUrl = (url) => {
16   - // return (c1 + "cdwlMall/questionnaire/file/static" + url);
17   - return (c1 + "cdwlMall/zsfwzxt/test/file/static" + url);
  16 + return (c1 + "cdwlMall/questionnaire/file/static" + url);
  17 + // return (c1 + "cdwlMall/zsfwzxt/test/file/static" + url);
18 18 }
19 19 Vue.prototype.$img = c1+ 'cdwlMall'
20 20 // Vue.prototype.$upload = "https://zhld.028wlkj.com:49008/cdwlMall/admin-server/miniio/upload"
... ...
lvdao-miniapp/pages.json
... ... @@ -390,13 +390,19 @@
390 390 "navigationBarTitleText": "问卷调查"
391 391 }
392 392 }
393   -
394 393 ],
395 394 "subpackages": [{
396 395 "root": "pagesA",
397 396 "name": "pagesA",
398 397 "pages": [
399 398 {
  399 + "path": "/payweb/payweb",
  400 + "style": {
  401 + "navigationBarBackgroundColor": "#FFFFFF",
  402 + "navigationBarTitleText": ""
  403 + }
  404 + },
  405 + {
400 406 "path": "addsb/addsb",
401 407 "style": {
402 408 "navigationBarBackgroundColor": "#FFFFFF",
... ...
lvdao-miniapp/pages/leaseAdd/leaseAdd.vue
... ... @@ -5,16 +5,17 @@
5 5 </view>
6 6 <view>
7 7 <view class="add-list" v-show="active == 0">
8   - <view style="padding:15px;margin-top:10px;" v-if="map ==0">
  8 + <view style="padding:15px;margin-top:10px;" >
  9 + <!-- v-if="map ==0" -->
9 10 <wu-calendar :insert="true" @change="calendarChange" slideSwitchMode="horizontal" mode="range" :selected="selected" color="#3f9b6a" style="border-radius: 10px;" :data="today" :startDate="startDate"></wu-calendar>
10 11 </view>
11 12 <u-form labelPosition="left" :model="model1" :rules="rules" ref="uForm" :labelWidth="250">
12   - <u-form-item :required="true" label="租赁周期" prop="intendedLeaseTerm" borderBottom v-if="map==0">
  13 + <u-form-item :required="true" label="租赁周期" prop="intendedLeaseTerm" borderBottom>
13 14 <u-input v-model="model1.intendedLeaseTerm" type="select" placeholder="请选择上面时间" ></u-input>
14 15 </u-form-item>
15   - <u-form-item :required="true" label="租赁周期" prop="intendedLeaseTerm" borderBottom v-else>
  16 + <!-- <u-form-item :required="true" label="租赁周期" prop="intendedLeaseTerm" borderBottom v-else>
16 17 <u-input v-model="model1.intendedLeaseTerm" placeholder="请输入租赁周期" ></u-input>
17   - </u-form-item>
  18 + </u-form-item> -->
18 19 <u-form-item :required="true" label="经营用途" prop="businessPurpose" borderBottom>
19 20 <u-input v-model="model1.businessPurpose"></u-input>
20 21 </u-form-item>
... ...
lvdao-miniapp/pages/my/my.vue
... ... @@ -125,7 +125,7 @@
125 125 </view>
126 126 </view>
127 127 <!-- gopath('/pagesA/leaseAdd/leaseAdd') -->
128   - <view class="list" @click="isshop()" v-if="!isshopon">
  128 + <view class="list" @click="isshop()" v-if="isshopon">
129 129 <view class="icon-data">
130 130 <view class="icon">
131 131 <image src="@/static/icon/icon1.png" mode="heightFix"></image>
... ... @@ -230,7 +230,21 @@
230 230 <image :src="$imgUrl('/right2.png')"></image>
231 231 </view>
232 232 </view>
233   -
  233 + <view class="list" @click="out">
  234 + <view class="icon-data">
  235 + <view class="icon">
  236 + <image src="@/static/icon/icon7.png" mode="heightFix"></image>
  237 + </view>
  238 + <view class="data">
  239 + <view class="title">
  240 + <text>退出登录</text>
  241 + </view>
  242 + </view>
  243 + </view>
  244 + <view class="more">
  245 + <image :src="$imgUrl('/right2.png')"></image>
  246 + </view>
  247 + </view>
234 248 </view>
235 249 </view>
236 250 <!-- tabbar -->
... ... @@ -249,7 +263,7 @@
249 263 },
250 264 data() {
251 265 return {
252   - Islogin: true,
  266 + Islogin: false,
253 267 scrollTop: 0,
254 268 isHotline: false,
255 269 shopMsg: {},
... ... @@ -262,7 +276,7 @@
262 276 activityNum: 0,
263 277 wenjuanNum: 0,
264 278 user: uni.getStorageSync('user'),
265   - isshopon: false
  279 + isshopon: true
266 280 };
267 281 },
268 282 onload() {
... ... @@ -270,6 +284,7 @@
270 284 },
271 285 onShow() {
272 286 const isLogin = uni.getStorageSync('token');
  287 + this.user = uni.getStorageSync('user')
273 288 if (isLogin == '') {
274 289 // 如果未登录,跳转到登录页面
275 290 uni.navigateTo({
... ... @@ -278,18 +293,11 @@
278 293 } else {
279 294  
280 295 this.$http.sendRequest('/cerePlatformMerchant/queryByPage', 'POST',{pageSize:10,pageNumber:0,phone:uni.getStorageSync('user').phone},1).then(res => {
281   - if(res.data.code == '20004' || res.data.code == '20003'){
282   - uni.navigateTo({
283   - url: '/pages/login/login'
284   - })
285   - }
286 296 if(res.data.data.content.length>0) {
287 297 let c1 = res.data.data.content[0]
288   - this.user = c1
289 298 console.error({...c1})
290 299 if(c1.checkState == '2') {
291   - this.isshopon = true
292   - this.Islogin = false
  300 + this.isshopon = false
293 301 }
294 302 }
295 303 })
... ... @@ -306,6 +314,12 @@
306 314 this.getALL()
307 315 },
308 316 methods: {
  317 + out() {
  318 + uni.clearStorage()
  319 + uni.reLaunch({
  320 + url:'/pages/login/login'
  321 + })
  322 + },
309 323 isshop() {
310 324 this.$http.sendRequest('/cerePlatformMerchant/queryByPage', 'POST', {
311 325 pageSize: 10,
... ... @@ -392,8 +406,11 @@
392 406 },
393 407 repair() {
394 408 if (this.Islogin == false) {
  409 + // uni.navigateTo({
  410 + // url: '/pages/repair/repair'
  411 + // })
395 412 uni.navigateTo({
396   - url: '/pages/repair/repair'
  413 + url: '/pagesA/addsb/addsb'
397 414 })
398 415 }
399 416  
... ...
lvdao-miniapp/pages/procedureList/procedureList.vue
... ... @@ -2,20 +2,20 @@
2 2 <view class="pages">
3 3 <view class="contents">
4 4 <view class="box" v-for="(item,index) in tableList" @click="getDetail(item.id)">
5   - <view style="width:70%">
6   - <view class="title">
7   - {{item.title}}
8   - </view>
9   - <view class="desc">
10   - <!-- <u-parse :html="item.announcementContent"></u-parse> -->
11   -
12   - {{item.content}}
13   - </view>
14   - </view>
  5 + <view style="width:70%">
  6 + <view class="title">
  7 + {{item.title}}
  8 + </view>
  9 + <view class="desc">
  10 + <!-- <u-parse :html="item.announcementContent"></u-parse> -->
  11 +
  12 + {{item.content}}
  13 + </view>
  14 + </view>
15 15 <view class="time">
16 16 {{formatDateTime(item.createdAt)}}
17 17 </view>
18   -
  18 +
19 19 </view>
20 20 </view>
21 21 </view>
... ... @@ -25,55 +25,55 @@
25 25 export default {
26 26 data() {
27 27 return {
28   -tableList:[],
29   -pageindex: {
30   - receiverMerchant:'小程序商家',
31   - pageNumber: 1,
32   - pageSize: 10,
  28 + tableList: [],
  29 + pageindex: {
  30 + receiverMerchant: '小程序商家',
  31 + pageNumber: 1,
  32 + pageSize: 10,
33 33 },
34 34 }
35 35 },
36   - onLoad(option){
37   -
38   - // this.tableList = JSON.parse(option.item)
  36 + onLoad(option) {
  37 +
  38 + // this.tableList = JSON.parse(option.item)
39 39 },
40 40 mounted() {
41 41 this.getALL()
42 42 },
43 43 methods: {
44   - formatDateTime(dateTimeString) {
45   - // 将输入的日期时间字符串转换为Date对象
46   - const inputDate = new Date(dateTimeString);
47   - const now = new Date();
48   -
49   - // 获取年、月、日来进行比较
50   - const inputYear = inputDate.getFullYear();
51   - const inputMonth = inputDate.getMonth();
52   - const inputDay = inputDate.getDate();
53   -
54   - const currentYear = now.getFullYear();
55   - const currentMonth = now.getMonth();
56   - const currentDay = now.getDate();
57   -
58   - // 检查输入的日期是否为今天
59   - const isToday = (inputYear === currentYear) && (inputMonth === currentMonth) && (inputDay === currentDay);
60   -
61   - // 格式化时间为HH:mm
62   - const hours = inputDate.getHours().toString().padStart(2, '0');
63   - const minutes = inputDate.getMinutes().toString().padStart(2, '0');
64   - const timeString = `${hours}:${minutes}`;
65   -
66   - // 如果是今天,则在时间前面加上'今天'
67   - return isToday ? `今天${timeString}` : timeString;
68   - },
69   -getALL(){
70   - this.$http.sendRequest('/cereMessageNotification/queryByPage', 'POST', this.pageindex,1).then(res => {
71   - this.tableList =res.data.data.content
72   - })
  44 + formatDateTime(dateTimeString) {
  45 + // 将输入的日期时间字符串转换为Date对象
  46 + const inputDate = new Date(dateTimeString);
  47 + const now = new Date();
  48 +
  49 + // 获取年、月、日来进行比较
  50 + const inputYear = inputDate.getFullYear();
  51 + const inputMonth = inputDate.getMonth();
  52 + const inputDay = inputDate.getDate();
  53 +
  54 + const currentYear = now.getFullYear();
  55 + const currentMonth = now.getMonth();
  56 + const currentDay = now.getDate();
  57 +
  58 + // 检查输入的日期是否为今天
  59 + const isToday = (inputYear === currentYear) && (inputMonth === currentMonth) && (inputDay === currentDay);
  60 +
  61 + // 格式化时间为HH:mm
  62 + const hours = inputDate.getHours().toString().padStart(2, '0');
  63 + const minutes = inputDate.getMinutes().toString().padStart(2, '0');
  64 + const timeString = `${hours}:${minutes}`;
  65 +
  66 + // 如果是今天,则在时间前面加上'今天'
  67 + return isToday ? `今天${timeString}` : timeString;
  68 + },
  69 + getALL() {
  70 + this.$http.sendRequest('/cereMessageNotification/queryByPage', 'POST', this.pageindex, 1).then(res => {
  71 + this.tableList = res.data.data.content
  72 + })
73 73 },
74   - getDetail(id){
  74 + getDetail(id) {
75 75 uni.navigateTo({
76   - url:`/pages/procedureList/procedureDetail?ids=${id}`
  76 + url: `/pages/procedureList/procedureDetail?ids=${id}`
77 77 })
78 78 },
79 79 }
... ... @@ -90,7 +90,7 @@ getALL(){
90 90  
91 91 .contents {
92 92 width: 100%;
93   -
  93 +
94 94 background-color: #fff;
95 95 margin-top: 20rpx;
96 96  
... ... @@ -98,23 +98,26 @@ getALL(){
98 98 width: 94%;
99 99 margin: 0 auto;
100 100 padding: 28rpx 0;
101   - display:flex;
  101 + display: flex;
102 102 justify-content: space-between;
103 103 align-items: center;
104   - .title{
  104 +
  105 + .title {
105 106 font-size: 30rpx;
106 107 font-weight: bold;
107 108 }
108   - .time{
  109 +
  110 + .time {
109 111 margin: 20rpx 0;
110 112 color: #888D9C;
111 113 font-size: 24rpx;
112 114 }
113   - .desc{
  115 +
  116 + .desc {
114 117 color: #888D9C;
115 118 font-size: 24rpx;
116 119 text-align: justify;
117   - margin-top:10px;
  120 + margin-top: 10px;
118 121 display: -webkit-box;
119 122 -webkit-box-orient: vertical;
120 123 -webkit-line-clamp: 1;
... ...
lvdao-miniapp/pages/propertyPay/payDetail/payDetail.scss
... ... @@ -14,7 +14,7 @@
14 14 margin-bottom: 20rpx;
15 15 .form-item {
16 16 display: flex;
17   - align-items: center;
  17 + // align-items: center;
18 18 justify-content: space-between;
19 19 line-height: 50rpx;
20 20 padding: 6rpx 0;
... ...
lvdao-miniapp/pages/propertyPay/payDetail/payDetail.vue
1 1 <template>
2 2 <view class="page">
3 3 <view class="content">
4   - <view class="list-info" v-for="i in 5" :key="i">
  4 + <view class="list-info" v-for="item in cent.paymentContent" :key="i" style="align-items: flex-start;">
5 5 <view class="img">
6   - <image :src="$imgUrl('/img/2.jpg')"></image>
  6 + <image v-if="item.itemName == '物业费'" src="@/static/icon/icon11.png" mode="heightFix"></image>
  7 + <image v-else-if="item.itemName == '卫生费'" src="@/static/icon/icon12.png" mode="heightFix"></image>
  8 + <image v-else-if="item.itemName == '水费'" src="@/static/icon/icon13.png" mode="heightFix"></image>
  9 + <image v-else-if="item.itemName == '电费'" src="@/static/icon/icon14.png" mode="heightFix"></image>
  10 + <image v-else-if="item.itemName == '燃气费'" src="@/static/icon/icon15.png" mode="heightFix"></image>
  11 + <image v-else src="@/static/icon/icon16.png" mode="heightFix"></image>
7 12 </view>
8 13 <view class="info-items">
9 14 <view class="info-item">
10   - <view class="title">物业费</view>
11   - <view class="right"><text class="price"><u-icon name="rmb" style="font-size: 24rpx;" />500.00</text></view>
  15 + <view class="title">{{item.itemName}}</view>
  16 + <view class="right"><text class="price"><u-icon name="rmb" style="font-size: 24rpx;" />{{item.payPrice}}</text></view>
12 17 </view>
13 18 <view class="info-item" style="color: #808080;">
14   - <view class="left">周期:2022.02.22 - 2022.02.22</view>
15   - <view class="right">费率:100%</view>
  19 + <view class="left">单价:¥{{item.itemStandard}}</view>
  20 + <view class="right">费率:{{item.cheapRate}}%</view>
  21 + </view>
  22 + <view v-if="item.itemDetailsVOList&& item.itemDetailsVOList.length>0">
  23 + <view class="list" v-for="(item1,index1) in item.itemDetailsVOList">
  24 + <view class="info-item">周期:{{item1.startDate}} - {{item1.endDate}}</view>
  25 + <view class="info-item" style="margin-top: 6rpx;">
  26 + <text style="margin-right: 20rpx;">数量:{{item1.number}}{{item1.itemUnit}}</text>
  27 + <text class="price"><u-icon name="rmb" style="font-size: 24rpx;" />¥{{item1.payPrice}}</text>
  28 + </view>
  29 + </view>
16 30 </view>
17 31 </view>
18 32 </view>
... ... @@ -20,52 +34,54 @@
20 34 <view class="content" style="padding: 8rpx 34rpx;">
21 35 <view class="form-item">
22 36 <view class="left">订单状态</view>
23   - <view class="right">支付成功</view>
  37 + <view class="right">{{cent.orderStatus=='0'?'待支付':cent.orderStatus=='1'?'支付成功':cent.orderStatus=='2'?'支付失败':'-'}}</view>
24 38 </view>
25 39 <view class="form-item">
26 40 <view class="left">实缴费用</view>
27   - <view class="right">¥500.00</view>
  41 + <view class="right">¥{{Number(cent.actualPaymentFee)/100}}</view>
28 42 </view>
29 43 <view class="form-item">
30 44 <view class="left">商户全称</view>
31   - <view class="right">大兴鸡排</view>
  45 + <view class="right">{{cent.merchantName}}</view>
32 46 </view>
33 47 <view class="form-item">
34 48 <view class="left">门店号</view>
35   - <view class="right">A2121</view>
  49 + <view class="right">{{cent.storeNumber}}</view>
36 50 </view>
37 51 <view class="form-item">
38 52 <view class="left">(户主)付款人</view>
39   - <view class="right">张三</view>
  53 + <view class="right">{{cent.payerName}}</view>
40 54 </view>
41 55 <view class="form-item">
42 56 <view class="left">支付账号</view>
43   - <view class="right">13454546578</view>
  57 + <view class="right">{{cent.paymentAccount}}</view>
44 58 </view>
45 59 <view class="form-item">
46 60 <view class="left">支付方式</view>
47   - <view class="right">微信</view>
  61 + <view class="right">{{cent.paymentMethod}}</view>
48 62 </view>
49 63  
50 64 <view class="form-item">
51 65 <view class="left">渠道</view>
52   - <view class="right">线上</view>
  66 + <view class="right">{{cent.channel || '-'}}</view>
53 67 </view>
54 68 <view class="form-item">
55 69 <view class="left">支付开始时间</view>
56   - <view class="right">2022-02-22 14:00:00</view>
  70 + <view class="right">{{cent.paymentStartTime}}</view>
57 71 </view>
58 72 <view class="form-item">
59 73 <view class="left">支付完成时间</view>
60   - <view class="right">2022-02-22 14:00:00</view>
  74 + <view class="right">{{cent.paymentCompletionTime}}</view>
61 75 </view>
62 76 <view class="form-item">
63 77 <view class="left">支付订单号</view>
64   - <view class="right">jh5465465451</view>
  78 + <view class="right" style="width: 60%;display: flex;flex-wrap: wrap;" v-if="cent.orderNumber">
  79 + <text style="width: 100%;text-align: right;" v-for="(item,index) in cent.orderNumber.split(',')">{{item}}</text>
  80 + </view>
65 81 </view>
66 82 <view class="form-item">
67 83 <view class="left">流水号</view>
68   - <view class="right">024684651</view>
  84 + <view class="right" style="width: 60%;display: flex;flex-wrap: wrap;">{{cent.transactionNumber}}</view>
69 85 </view>
70 86 </view>
71 87 </view>
... ... @@ -83,9 +99,14 @@
83 99 {
84 100 children: [{}, {}]
85 101 },
86   - ]
  102 + ],
  103 + cent:{}
87 104 }
88 105 },
  106 + onLoad(e) {
  107 + this.cent = JSON.parse(e.cent)
  108 + console.error(this.cent)
  109 + },
89 110 methods: {
90 111 toDetail() {
91 112 uni.navigateTo({
... ...
lvdao-miniapp/pages/propertyPay/payRecord/payRecord.scss
... ... @@ -51,6 +51,7 @@
51 51 justify-content: space-between;
52 52 // line-height: 50rpx;
53 53 padding: 8rpx 10rpx;
  54 +
54 55 .title {
55 56 font-weight: 700;
56 57 }
... ...
lvdao-miniapp/pages/propertyPay/payRecord/payRecord.vue
... ... @@ -6,7 +6,7 @@
6 6 <u-icon name="arrow-down" style="font-size: 24rpx;margin-left: 10rpx;" />
7 7 <u-picker v-model="show" mode="time" :params="{year: true}" @confirm ="change"></u-picker>
8 8 </div>
9   - <div class="right"><u-icon name="rmb" class="price" /><text class="price">0</text></div>
  9 + <div class="right"><u-icon name="rmb" class="price" /><text class="price">{{allnum}}</text></div>
10 10 </view>
11 11 <view v-if="dataList.length==0" style="text-align: center;margin-top: 50rpx;" class="tit1">暂无数据</view>
12 12 <view class="record-list">
... ... @@ -16,9 +16,9 @@
16 16 <view class="right"><u-icon name="rmb" class="price" /><text class="price" >{{item.children | itemnum}}</text></view>
17 17 </view>
18 18 <view v-if="item.children.length==0" style="text-align: center;margin-top: 50rpx;margin-bottom: 30rpx;font-size: 24rpx;">暂无缴费数据</view>
19   - <view class="info-items" v-for="(v, i) in item.children" :key="i" @click="toDetail(item.children)">
  19 + <view class="info-items" v-for="(v, i) in item.children" :key="i" @click="toDetail(v)">
20 20 <view class="info-item">
21   - <view class="left title">{{v.transactionNumber}}</view>
  21 + <view class="left title one-omit" style="width: 70%;">{{v.transactionNumber}}</view>
22 22 <view class="right"><u-icon name="rmb" class="price" /><text class="price">{{Number(v.actualPaymentFee)/100}}</text></view>
23 23 </view>
24 24 <view class="info-item">
... ... @@ -34,6 +34,7 @@
34 34 </view>
35 35 </view>
36 36 </view>
  37 + <view style="height: 100rpx;"></view>
37 38 </view>
38 39 </template>
39 40  
... ... @@ -108,6 +109,16 @@
108 109 }
109 110 },
110 111 onLoad() {
  112 + this.year = new Date().getFullYear();
  113 + let yuelist = this.getCurrentYearMonths(this.year)
  114 + this.dataList = []
  115 + for (let i = 0; i < yuelist.length; i++) {
  116 + let item = {
  117 + yue:yuelist[i],
  118 + children: []
  119 + }
  120 + this.dataList.push(item)
  121 + }
111 122 this.gain()
112 123 },
113 124 filters:{
... ... @@ -116,41 +127,54 @@
116 127 let num = 0
117 128 for (let n = 0; n < e.length; n++) {
118 129 num = num + (Number(e[n].actualPaymentFee)/100)
119   - // if(e[n].isshowxz){
120   - // num = num + Number(e[n].payPrice)
121   - // }
122 130 }
123 131 return num
124 132 }
125 133 },
126 134 computed:{
127   - // allnum() {
128   - // let num = 0
129   - // for (let i = 0; i < this.recordList.length; i++) {
130   - // let list = this.recordList[i].itemDetailsVOList
131   - // for (let n = 0; n < list.length; n++) {
132   - // num = num + Number(list[n].payPrice)
133   - // }
134   - // }
135   - // return num
136   - // },
137   - // allitemnum() {
138   - // let num = 0
139   - // for (let i = 0; i < this.recordList.length; i++) {
140   - // let list = this.recordList[i].itemDetailsVOList
141   - // for (let n = 0; n < list.length; n++) {
142   - // if(list[n].isshowxz){
143   - // num = num + Number(list[n].payPrice)
144   - // }
145   - // }
146   - // }
147   - // return num
148   - // },
  135 + allnum() {
  136 + let num = 0
  137 + for (let i = 0; i < this.dataList.length; i++) {
  138 + let list = this.dataList[i].children
  139 + for (let n = 0; n < list.length; n++) {
  140 + num = num + (Number(list[n].actualPaymentFee)/100)
  141 + }
  142 + }
  143 + return num
  144 + },
149 145 },
150 146 methods: {
  147 + getCurrentYearMonths(excludePastMonths) {
  148 + const currentDate = new Date();
  149 + const currentYear = currentDate.getFullYear();
  150 + const currentMonth = currentDate.getMonth(); // getMonth() returns a zero-based index
  151 + console.error(currentYear,currentMonth)
  152 + let months = [];
  153 + if(currentYear == Number(excludePastMonths)) {
  154 + for (let i = 0; i < currentMonth+1; i++) {
  155 + months.push(i+1)
  156 + }
  157 + } else if(currentYear < Number(excludePastMonths)) {
  158 + months = []
  159 + }else if(currentYear > Number(excludePastMonths)) {
  160 + for (let i = 0; i < 12; i++) {
  161 + months.push(i+1)
  162 + }
  163 + }
  164 + return months;
  165 + },
151 166 change(e) {
152 167 console.error(e)
153 168 this.year = e.year
  169 + let yuelist = this.getCurrentYearMonths(this.year)
  170 + this.dataList = []
  171 + for (let i = 0; i < yuelist.length; i++) {
  172 + let item = {
  173 + yue:yuelist[i],
  174 + children: []
  175 + }
  176 + this.dataList.push(item)
  177 + }
154 178 this.gain()
155 179 },
156 180 async gain() {
... ... @@ -161,7 +185,7 @@
161 185     "year":this.year,
162 186     "month":this.dataList[i].yue,
163 187 }
164   - await this.$http.sendRequest('cerePaymentInfo/queryByPage','POST',c1,1).then(res => {
  188 + await this.$http.sendRequest('/cerePaymentInfo/queryByPage','POST',c1,1).then(res => {
165 189 this.dataList[i].children = res.data.data.content.map(item=>{
166 190 item.paymentContent = JSON.parse(item.paymentContent)
167 191 return item
... ... @@ -172,12 +196,14 @@
172 196 // console.error(this.dataList)
173 197 })
174 198 }
  199 + this.dataList.reverse()
175 200 console.error(this.dataList)
176 201  
177 202 },
178   - toDetail() {
  203 + toDetail(e) {
  204 + console.error(e)
179 205 uni.navigateTo({
180   - url: '/pages/propertyPay/payDetail/payDetail'
  206 + url: '/pages/propertyPay/payDetail/payDetail?cent='+JSON.stringify(e)
181 207 })
182 208 }
183 209 }
... ...
lvdao-miniapp/pages/propertyPay/propertyPayList/propertyPayList.vue
... ... @@ -2,7 +2,8 @@
2 2 <view class="page">
3 3 <view class="search-box">
4 4 <view>
5   - <u-input v-model="value" type="select" border @click="show = true" style="background-color: #F7F7F7;" placeholder="请选择店铺"/>
  5 + <u-input v-model="value" type="select" border @click="show = true" style="background-color: #F7F7F7;"
  6 + placeholder="请选择店铺" />
6 7 <u-select v-model="show" :list="list1" @confirm="confirm"></u-select>
7 8 </view>
8 9 <view class="search-total">
... ... @@ -21,20 +22,27 @@
21 22 <view class="record-list-box" v-for="(item,index) in recordList" :key="index">
22 23 <u-checkbox-group class="list-group" style="width: 100%;">
23 24 <view class="list">
24   - <u-checkbox @change="e=>quanxuanitem(e,index)" v-model="item.isshowxz" shape="circle" :label-disabled="false" />
  25 + <u-checkbox @change="e=>quanxuanitem(e,index)" v-model="item.isshowxz" shape="circle"
  26 + :label-disabled="false" />
25 27 <view class="list-item">
26 28 <view class="list-info">
27 29 <view class="img">
28   - <image v-if="item.itemName == '物业费'" src="@/static/icon/icon11.png" mode="heightFix"></image>
29   - <image v-else-if="item.itemName == '卫生费'" src="@/static/icon/icon12.png" mode="heightFix"></image>
30   - <image v-else-if="item.itemName == '水费'" src="@/static/icon/icon13.png" mode="heightFix"></image>
31   - <image v-else-if="item.itemName == '电费'" src="@/static/icon/icon14.png" mode="heightFix"></image>
32   - <image v-else-if="item.itemName == '燃气费'" src="@/static/icon/icon15.png" mode="heightFix"></image>
  30 + <image v-if="item.itemName == '物业费'" src="@/static/icon/icon11.png"
  31 + mode="heightFix"></image>
  32 + <image v-else-if="item.itemName == '卫生费'" src="@/static/icon/icon12.png"
  33 + mode="heightFix"></image>
  34 + <image v-else-if="item.itemName == '水费'" src="@/static/icon/icon13.png"
  35 + mode="heightFix"></image>
  36 + <image v-else-if="item.itemName == '电费'" src="@/static/icon/icon14.png"
  37 + mode="heightFix"></image>
  38 + <image v-else-if="item.itemName == '燃气费'" src="@/static/icon/icon15.png"
  39 + mode="heightFix"></image>
33 40 <image v-else src="@/static/icon/icon16.png" mode="heightFix"></image>
34 41 </view>
35 42 <view class="info-items">
36 43 <view class="info-title">{{item.itemName}}:<text class="price"><u-icon name="rmb"
37   - style="font-size: 24rpx;" />{{ item.itemDetailsVOList | jsitem}}</text></view>
  44 + style="font-size: 24rpx;" />{{ item.itemDetailsVOList | jsitem}}</text>
  45 + </view>
38 46 <view class="info-item">
39 47 <text style="margin-right: 20rpx;">单价:¥{{item.itemStandard}}</text>
40 48 <text>费率:{{item.cheapRate}}%</text>
... ... @@ -42,7 +50,8 @@
42 50 </view>
43 51 </view>
44 52 </view>
45   - <view><u-icon @click="changeisxl(index)" :name="item.isxl?'arrow-up':'arrow-down'"></u-icon></view>
  53 + <view><u-icon @click="changeisxl(index)" :name="item.isxl?'arrow-up':'arrow-down'"></u-icon>
  54 + </view>
46 55 </view>
47 56 <view v-if="item.itemDetailsVOList&& item.itemDetailsVOList.length>0 && item.isxl">
48 57 <view class="list" v-for="(item1,index1) in item.itemDetailsVOList">
... ... @@ -57,7 +66,8 @@
57 66 </view>
58 67 </view>
59 68 <view class="">
60   - <text class="price"><u-icon name="rmb" style="font-size: 24rpx;" />¥{{item1.payPrice}}</text>
  69 + <text class="price"><u-icon name="rmb"
  70 + style="font-size: 24rpx;" />¥{{item1.payPrice}}</text>
61 71 </view>
62 72 </view>
63 73 </view>
... ... @@ -74,7 +84,7 @@
74 84 <view class="">
75 85 合计:<text class="price"><u-icon name="rmb" style="font-size: 24rpx;" />{{allcknum}}</text>
76 86 </view>
77   - <u-button type="success" style="margin: 0 10rpx;" @click="joinShow = true">去支付</u-button>
  87 + <u-button type="success" style="margin: 0 10rpx;" @click="submit">去支付</u-button>
78 88 </view>
79 89 </view>
80 90 <u-popup class="userForm" v-model="joinShow" mode="center" :closeable="true" width="80%">
... ... @@ -153,10 +163,10 @@
153 163  
154 164 };
155 165 },
156   - filters:{
  166 + filters: {
157 167  
158   - jsitem(e){
159   - console.error(e)
  168 + jsitem(e) {
  169 + // console.error(e)
160 170 let num = 0
161 171 for (let n = 0; n < e.length; n++) {
162 172 num = num + Number(e[n].payPrice)
... ... @@ -167,9 +177,9 @@
167 177 return num
168 178 }
169 179 },
170   - computed:{
  180 + computed: {
171 181 allnum() {
172   - let num = 0
  182 + let num = 0
173 183 for (let i = 0; i < this.recordList.length; i++) {
174 184 let list = this.recordList[i].itemDetailsVOList
175 185 for (let n = 0; n < list.length; n++) {
... ... @@ -183,7 +193,7 @@
183 193 for (let i = 0; i < this.recordList.length; i++) {
184 194 let list = this.recordList[i].itemDetailsVOList
185 195 for (let n = 0; n < list.length; n++) {
186   - if(list[n].isshowxz){
  196 + if (list[n].isshowxz) {
187 197 num = num + Number(list[n].payPrice)
188 198 }
189 199 }
... ... @@ -200,7 +210,7 @@
200 210 }
201 211 const allTrue = this.recordList.every(item => item.isshowxz)
202 212 this.showAll = allTrue
203   -
  213 +
204 214 }
205 215 }
206 216 },
... ... @@ -215,27 +225,31 @@
215 225 url: '/pages/login/login'
216 226 })
217 227 } else {
218   -
219   - this.$http.sendRequest('cereAssetShopInformation/propertyQueryShopInformation', 'POST',{contactNumber:uni.getStorageSync('user').phone,pageNumber:1,pageSize:10} ,1).then(res => {
220   - this.list1 = res.data.data.records.map(item=>{
  228 +
  229 + this.$http.sendRequest('/cereAssetShopInformation/propertyQueryShopInformation', 'POST', {
  230 + contactNumber: uni.getStorageSync('user').phone,
  231 + pageNumber: 1,
  232 + pageSize: 10
  233 + }, 1).then(res => {
  234 + this.list1 = res.data.data.records.map(item => {
221 235 let c1 = {
222 236 value: item.merchantId,
223 237 label: item.shopName,
224 238 }
225 239 return c1
226 240 })
227   - // this.confirm(this.list1)
  241 + this.confirm(this.list1)
228 242 console.error(this.list1)
229 243 })
230 244 }
231 245  
232 246 },
233 247 methods: {
234   -
  248 +
235 249 changeisxl(e) {
236 250 this.recordList[e].isxl = !this.recordList[e].isxl
237 251 },
238   - quanxuanitem(e,index) {
  252 + quanxuanitem(e, index) {
239 253 console.error(e)
240 254 console.error(this.recordList[index].itemDetailsVOList)
241 255 if (e.value) {
... ... @@ -250,23 +264,23 @@
250 264 },
251 265 quanxuan(e) {
252 266 // this.showAll = e.value
253   - console.error(e)
  267 + // console.error(e)
254 268 // const allTrue = this.recordList.every(item => item.gouxuan)
255 269 if (e.value) {
256   - this.recordList = this.recordList.map(item=>{
  270 + this.recordList = this.recordList.map(item => {
257 271 item.isxl = true
258 272 item.isshowxz = true
259   - item.itemDetailsVOList = item.itemDetailsVOList.map(item1=>{
  273 + item.itemDetailsVOList = item.itemDetailsVOList.map(item1 => {
260 274 item1.isshowxz = true
261 275 return item1
262 276 })
263 277 return item
264 278 })
265 279 } else {
266   - this.recordList = this.recordList.map(item=>{
  280 + this.recordList = this.recordList.map(item => {
267 281 item.isxl = true
268 282 item.isshowxz = false
269   - item.itemDetailsVOList = item.itemDetailsVOList.map(item1=>{
  283 + item.itemDetailsVOList = item.itemDetailsVOList.map(item1 => {
270 284 item1.isshowxz = false
271 285 return item1
272 286 })
... ... @@ -293,7 +307,45 @@
293 307 // })
294 308 },
295 309 submit() {
296   - console.log(this.recordList)
  310 +
  311 + // console.log(this.recordList)
  312 + let c1 = []
  313 + for (let i = 0; i < this.recordList.length; i++) {
  314 + if (this.recordList[i].isshowxz) {
  315 + c1.push(this.recordList[i])
  316 + } else {
  317 + let newitem = JSON.parse(JSON.stringify(this.recordList[i]))
  318 + newitem.itemDetailsVOList = newitem.itemDetailsVOList.filter(function(item1) {
  319 + return item1.isshowxz
  320 + })
  321 + if (newitem.itemDetailsVOList.length > 0) {
  322 + c1.push(newitem)
  323 + }
  324 + }
  325 + }
  326 + console.log(c1)
  327 + let storeNumber = []
  328 + let orderNumber = []
  329 + for (let i = 0; i < c1.length; i++) {
  330 + for (let n = 0; n < c1[i].itemDetailsVOList.length; n++) {
  331 + // console.error(c1[i].itemDetailsVOList[n])
  332 + storeNumber.push(c1[i].itemDetailsVOList[n].storeCode)
  333 + orderNumber.push(c1[i].itemDetailsVOList[n].orderNo)
  334 + }
  335 + }
  336 + let info = {
  337 + "actualPaymentFee": this.allcknum * 100,
  338 + "merchantName": this.value,
  339 + "storeNumber": storeNumber.join(','),
  340 + "payerName": uni.getStorageSync('user').name,
  341 + "paymentAccount": uni.getStorageSync('user').phone,
  342 + "orderNumber": orderNumber.join(','),
  343 + "paymentContent": JSON.stringify(c1)
  344 + }
  345 + console.log(info)
  346 + this.$http.sendRequest('/cerePaymentInfo/payWy', 'POST',info, 1).then(res => {
  347 + console.error(res)
  348 + })
297 349 return
298 350 // this.loadShow = true
299 351 // setTimeout(()=>{
... ... @@ -363,13 +415,17 @@
363 415 },
364 416 confirm(e) {
365 417 console.log(e)
366   - this.value = e[0].label
367   - this.$http.sendRequest('eventReporting/propertyPayment', 'POST',{merchantId:e[0].value,pageNumber:1,pageSize:10} ,1).then(res => {
  418 + this.value = e[0].label
  419 + this.$http.sendRequest('/eventReporting/propertyPayment', 'POST', {
  420 + merchantId: e[0].value,
  421 + pageNumber: 1,
  422 + pageSize: 10
  423 + }, 1).then(res => {
368 424 console.error(res)
369   - this.recordList = res.data.data.itemDetailsVOList.map(item=>{
  425 + this.recordList = res.data.data.itemDetailsVOList.map(item => {
370 426 item.isxl = true
371 427 item.isshowxz = false
372   - item.itemDetailsVOList = item.itemDetailsVOList.map(item1=>{
  428 + item.itemDetailsVOList = item.itemDetailsVOList.map(item1 => {
373 429 item1.isshowxz = false
374 430 return item1
375 431 })
... ... @@ -386,6 +442,7 @@
386 442  
387 443 <style scoped lang="scss">
388 444 @import 'propertyPayList.scss';
  445 +
389 446 .tit1 {
390 447 color: #7a7a7a;
391 448 font-size: 26rpx;
... ...
lvdao-miniapp/pagesA/payweb/payweb.vue 0 → 100644
  1 +<template>
  2 + <view>
  3 +
  4 + </view>
  5 +</template>
  6 +
  7 +<script>
  8 + export default {
  9 + data() {
  10 + return {
  11 +
  12 + }
  13 + },
  14 + methods: {
  15 +
  16 + }
  17 + }
  18 +</script>
  19 +
  20 +<style>
  21 +
  22 +</style>
... ...
lvdao-miniapp/utils/request.js
1 1  
2 2 // let hostall = window.location.href;
3 3 // let c1 = hostall.split('cdwlMall')[0];
4   -// let c1 = 'https://jy.scjysm.asia:18086/'
5   -let c1 = 'https://zhgw-uat.028wlkj.com/'
  4 +let c1 = 'https://jy.scjysm.asia:18086/'
  5 +// let c1 = 'https://zhgw-uat.028wlkj.com/'
6 6 //封装request请求
7 7 const sendRequest = (url, method = 'GET', data = {}, baseUrl,contentType) => {
8 8 //判断header提交数据类型
... ... @@ -21,10 +21,10 @@ const sendRequest = (url, method = &#39;GET&#39;, data = {}, baseUrl,contentType) =&gt; {
21 21 // bases = 'https://zhgw.028wlkj.com:20443/cdwlMall/meserver/admin-server' + url;
22 22 // bases = 'https://jy.scjysm.asia:18086/cdwlMall/meserver/admin-server' + url;
23 23  
24   - // bases = 'http://128.10.249.21:9003'+ url;
  24 + bases = 'http://128.10.249.18:9003/'+ url;
25 25 // bases = 'https://zhld.028wlkj.com:49008/cdwlMall/admin-server' + url;
26 26  
27   - bases = c1 + 'cdwlMall/meserver/admin-server' + url;
  27 + // bases = c1 + 'cdwlMall/meserver/admin-server' + url;
28 28  
29 29 }else if(baseUrl == 3){
30 30 // bases = 'https://jy.scjysm.asia:18086/cdwlMall/meserver/api' + url;
... ...