Commit ad7d1a78891d20834ff6f8bf64a82e09342edab6
1 parent
53fc345a
'最新'
Showing
35 changed files
with
3525 additions
and
2698 deletions
admin-web-master/dist.zip
No preview for this file type
admin-web-master/public/canvas.html
| ... | ... | @@ -5,7 +5,8 @@ |
| 5 | 5 | <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> |
| 6 | 6 | <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> |
| 7 | 7 | |
| 8 | - <title><%= webpackConfig.name %></title> | |
| 8 | + <!-- <title><%= webpackConfig.name %></title> --> | |
| 9 | + <title>招商服务系统</title> | |
| 9 | 10 | </head> |
| 10 | 11 | <body> |
| 11 | 12 | <noscript> | ... | ... |
admin-web-master/public/index.html
| ... | ... | @@ -5,7 +5,8 @@ |
| 5 | 5 | <meta http-equiv="X-UA-Compatible" content="IE=edge"> |
| 6 | 6 | <meta name="viewport" content="width=device-width,initial-scale=1.0"> |
| 7 | 7 | <link rel="icon" href="<%= BASE_URL %>favicon.ico"> |
| 8 | - <title><%= htmlWebpackPlugin.options.title %></title> | |
| 8 | + <!-- <title><%= htmlWebpackPlugin.options.title %></title> --> | |
| 9 | + <title>招商服务系统</title> | |
| 9 | 10 | <!-- 删除: <script src="https://map.qq.com/api/js?v=2.exp&key=YOUR_API_KEY&callback=initMap"></script> --> |
| 10 | 11 | <script src="https://map.qq.com/api/js?v=2.exp&key=PGRBZ-Z3FRJ-DTYFB-XNX4X-DC6HZ-MCFYU"></script> |
| 11 | 12 | <script src="https://map.qq.com/api/gljs?v=1.exp&key=PGRBZ-Z3FRJ-DTYFB-XNX4X-DC6HZ-MCFYU"></script> | ... | ... |
admin-web-master/src/api/online.js
| ... | ... | @@ -8,10 +8,18 @@ export function MerchantQRcode(data) { |
| 8 | 8 | }) |
| 9 | 9 | } |
| 10 | 10 | |
| 11 | -// 对账明细 | |
| 11 | +// 明细查询 | |
| 12 | 12 | export function merchantQueries(data) { |
| 13 | 13 | return request({ |
| 14 | - url: '/aggregationPayment/merchantQueriesOrderDetails', | |
| 14 | + url: '/onlineTransaction/detailQuery', | |
| 15 | + method: 'post', | |
| 16 | + data | |
| 17 | + }) | |
| 18 | +} | |
| 19 | +// 对账明细 | |
| 20 | +export function reconciliationDetail(data) { | |
| 21 | + return request({ | |
| 22 | + url: '/onlineTransaction/reconciliationDetail', | |
| 15 | 23 | method: 'post', |
| 16 | 24 | data |
| 17 | 25 | }) |
| ... | ... | @@ -70,13 +78,20 @@ export function consumerTrends(data) { |
| 70 | 78 | // 报表导出 |
| 71 | 79 | export function excelMerchantQueriesOrderDetails(data) { |
| 72 | 80 | return request({ |
| 73 | - url: '/aggregationPayment/excelMerchantQueriesOrderDetails', | |
| 81 | + url: '/onlineTransaction/excelReportDownload', | |
| 74 | 82 | method: 'post', |
| 75 | 83 | data, |
| 76 | 84 | responseType: 'blob' |
| 77 | 85 | }) |
| 78 | 86 | } |
| 79 | - | |
| 87 | +// 报表下载列表 | |
| 88 | +export function reportDownload(data) { | |
| 89 | + return request({ | |
| 90 | + url: '/onlineTransaction/reportDownload', | |
| 91 | + method: 'post', | |
| 92 | + data, | |
| 93 | + }) | |
| 94 | +} | |
| 80 | 95 | // 对账 |
| 81 | 96 | export function reconciliation(data) { |
| 82 | 97 | return request({ |
| ... | ... | @@ -101,3 +116,19 @@ export function excelGetAll(data) { |
| 101 | 116 | responseType: 'blob' |
| 102 | 117 | }) |
| 103 | 118 | } |
| 119 | +// 对账订单 | |
| 120 | +export function orderGetAll(data) { | |
| 121 | + return request({ | |
| 122 | + url: '/order/getAllS', | |
| 123 | + method: 'post', | |
| 124 | + data | |
| 125 | + }) | |
| 126 | +} | |
| 127 | +// 对账分析 | |
| 128 | +export function reconciliationAnalysis(data) { | |
| 129 | + return request({ | |
| 130 | + url: '/onlineTransaction/reconciliationAnalysis', | |
| 131 | + method: 'post', | |
| 132 | + data | |
| 133 | + }) | |
| 134 | +} | |
| 104 | 135 | \ No newline at end of file | ... | ... |
admin-web-master/src/settings.js
admin-web-master/src/utils/get-page-title.js
| ... | ... | @@ -4,7 +4,8 @@ const title = defaultSettings.title || 'Vue Admin Template' |
| 4 | 4 | |
| 5 | 5 | export default function getPageTitle(pageTitle) { |
| 6 | 6 | if (pageTitle) { |
| 7 | - return `${pageTitle} - ${title}` | |
| 7 | + // return `${pageTitle} - ${title}` | |
| 8 | + return `${title}` | |
| 8 | 9 | } |
| 9 | 10 | return `${title}` |
| 10 | 11 | } | ... | ... |
admin-web-master/src/utils/request.js
| ... | ... | @@ -18,7 +18,7 @@ if(host === 'localhost:8080' || host === 'localhost:8081' || host === 'localhost |
| 18 | 18 | |
| 19 | 19 | // baseURL = 'https://jy.scjysm.asia:18086/cdwlMall/meserver/admin-server'; |
| 20 | 20 | // baseURL = process.env.VUE_APP_DOMAIN_PREFIX_1; |
| 21 | - baseURL = 'http://128.10.249.48:9003'; | |
| 21 | + baseURL = 'http://128.10.249.26:9003'; | |
| 22 | 22 | |
| 23 | 23 | } else { |
| 24 | 24 | console.error('---------------------') |
| ... | ... | @@ -31,12 +31,12 @@ if(host === 'localhost:8080' || host === 'localhost:8081' || host === 'localhost |
| 31 | 31 | // const baseURL = process.env.VUE_APP_DOMAIN_PREFIX |
| 32 | 32 | // create an axios instance |
| 33 | 33 | Vue.prototype.axios = axios |
| 34 | -axios.defaults.timeout = 1000000 | |
| 34 | +axios.defaults.timeout = 100000 | |
| 35 | 35 | const service = axios.create({ |
| 36 | 36 | // baseURL:'/cdwlMall/meserver/admin-server/', // url = base url + request url |
| 37 | 37 | baseURL, // url = base url + request url |
| 38 | 38 | // withCredentials: true, // send cookies when cross-domain requests |
| 39 | - timeout: 1000000 // request timeout | |
| 39 | + timeout: 100000 // request timeout | |
| 40 | 40 | }) |
| 41 | 41 | // export const upurl = baseURL |
| 42 | 42 | export const uploadUrl = `${baseURL}/miniio/upload` | ... | ... |
admin-web-master/src/views/online/chartAnalysis/index.vue
| ... | ... | @@ -24,7 +24,7 @@ |
| 24 | 24 | </el-form-item> |
| 25 | 25 | </el-form> |
| 26 | 26 | </div> |
| 27 | - <div class="zhuti"> | |
| 27 | + <div style="padding: 10px 0;"> | |
| 28 | 28 | <div style="display: flex;"> |
| 29 | 29 | <div style="width:100%;background-color: #fff;padding:20px 20px 10px 20px;margin-right:20px;"> |
| 30 | 30 | <div style="">支付渠道监控</div> |
| ... | ... | @@ -32,6 +32,23 @@ |
| 32 | 32 | <div style="height:350px;width:100%" ref="shopBing"> |
| 33 | 33 | </div> |
| 34 | 34 | </div> |
| 35 | + <div style="width:100%;background-color: #fff;padding:20px 20px 10px 20px;"> | |
| 36 | + <div>交易成功率</div> | |
| 37 | + <div style="background-color: #F4F4F4;height: 2px;margin:20px 0 10px 0"></div> | |
| 38 | + <div class="card_body">{{transactionSuccessRates.totalSuccessRate}}%</div> | |
| 39 | + | |
| 40 | + <div style="display:flex;justify-content: space-between;" class="card_tu"> | |
| 41 | + <div style="width:100%;height:15px;position: relative;background-color: #F1F2F5;margin-top: 20px;"> | |
| 42 | + <div style="position: absolute;top: 0;left: 0;background-color: #448EF7;height:15px;" :style="`width:${transactionSuccessRates.thisWeekSuccessRate?transactionSuccessRates.totalSuccessRate:0}%`"></div> | |
| 43 | + </div> | |
| 44 | + </div> | |
| 45 | + <div style="background-color: #F4F4F4;height: 2px;margin:20px 0 10px 0"></div> | |
| 46 | + <div> | |
| 47 | + 周同比<i class="el-icon-caret-top" v-if="transactionSuccessRates.changeDirection&&transactionSuccessRates.changeDirection=='上升'" style="color:green;padding: 0 5px;"></i><i class="el-icon-caret-top" v-if="transactionSuccessRates.changeDirection&&transactionSuccessRates.changeDirection=='下降'" style="color:red;padding: 0 5px;"></i><span :style="transactionSuccessRates.changeDirection&&transactionSuccessRates.changeDirection=='上升'?'color:green':transactionSuccessRates.changeDirection&&transactionSuccessRates.changeDirection=='下降'?'color:red':''">{{transactionSuccessRates.changeAmount}}</span> | |
| 48 | + | |
| 49 | + </div> | |
| 50 | + </div> | |
| 51 | + </div> | |
| 35 | 52 | |
| 36 | 53 | </div> |
| 37 | 54 | |
| ... | ... | @@ -62,10 +79,11 @@ |
| 62 | 79 | tabTitle: '', |
| 63 | 80 | jiaosucc:78, |
| 64 | 81 | pageindex:{ |
| 65 | - startTime:"2024-09-11", | |
| 82 | + startTime:"2020-09-11", | |
| 66 | 83 | endTime:"2024-11-09" |
| 67 | 84 | }, |
| 68 | - Time:[] | |
| 85 | + Time:[], | |
| 86 | + transactionSuccessRates:{} | |
| 69 | 87 | } |
| 70 | 88 | }, |
| 71 | 89 | computed: {}, |
| ... | ... | @@ -73,11 +91,19 @@ |
| 73 | 91 | |
| 74 | 92 | }, |
| 75 | 93 | mounted() { |
| 94 | + const now = new Date(); | |
| 95 | + const year = now.getFullYear(); | |
| 96 | + const month = String(now.getMonth() + 1).padStart(2, '0') | |
| 97 | + const day = String(now.getDate()).padStart(2, '0') | |
| 98 | + this.pageindex.endTime= `${year}-${month}-${day}` | |
| 76 | 99 | this.getAll() |
| 100 | + | |
| 101 | + | |
| 77 | 102 | }, |
| 78 | 103 | methods: { |
| 79 | 104 | getAll(){ |
| 80 | 105 | chartAnalysis(this.pageindex).then(res=>{ |
| 106 | + this.transactionSuccessRates = res.data.transactionSuccessRates | |
| 81 | 107 | if(res.data.userTraffics &&res.data.paymentChannels ){ |
| 82 | 108 | this.kong(res.data.userTraffics) |
| 83 | 109 | this.shopB(res.data.paymentChannels) |
| ... | ... | @@ -93,6 +119,7 @@ |
| 93 | 119 | shopB(datas){ |
| 94 | 120 | let Dom = this.$refs.shopBing |
| 95 | 121 | let myChart = echarts.init(Dom) |
| 122 | + let totalRevenue = datas.reduce((sum, item) => sum + item.price, 0); | |
| 96 | 123 | let processedData = datas.map(item => { |
| 97 | 124 | let paymentModeName; |
| 98 | 125 | if (item.paymentMode === 1) { |
| ... | ... | @@ -107,9 +134,11 @@ |
| 107 | 134 | }) |
| 108 | 135 | |
| 109 | 136 | let option = { |
| 110 | - tooltip: { | |
| 111 | - trigger: 'item' | |
| 112 | - }, | |
| 137 | + tooltip: { | |
| 138 | + trigger: 'item', | |
| 139 | + // 设置提示框显示在右侧 | |
| 140 | + position: 'right' , | |
| 141 | + }, | |
| 113 | 142 | legend: { |
| 114 | 143 | top: '38%', |
| 115 | 144 | left: 'right', |
| ... | ... | @@ -119,21 +148,22 @@ |
| 119 | 148 | { |
| 120 | 149 | name: '营业额', |
| 121 | 150 | type: 'pie', |
| 122 | - radius: ['40%', '70%'], | |
| 151 | + radius: ['50%', '70%'], | |
| 123 | 152 | avoidLabelOverlap: false, |
| 124 | 153 | itemStyle: { |
| 125 | 154 | borderRadius: 10, |
| 126 | 155 | borderColor: '#fff', |
| 127 | - borderWidth: 2 | |
| 156 | + borderWidth: 1, | |
| 157 | + color: function(params) { | |
| 158 | + return 'green'; | |
| 159 | + } | |
| 128 | 160 | }, |
| 129 | 161 | label: { |
| 130 | 162 | show: false, |
| 131 | - position: 'center', | |
| 132 | - fontSize:'16px' | |
| 133 | 163 | }, |
| 134 | 164 | emphasis: { |
| 135 | 165 | label: { |
| 136 | - show: true, | |
| 166 | + show: false, | |
| 137 | 167 | fontSize: 40, |
| 138 | 168 | } |
| 139 | 169 | }, |
| ... | ... | @@ -142,7 +172,20 @@ |
| 142 | 172 | }, |
| 143 | 173 | data:processedData |
| 144 | 174 | } |
| 145 | - ] | |
| 175 | + ], | |
| 176 | + // 在中间添加营业额文本 | |
| 177 | + graphic: [ | |
| 178 | + { | |
| 179 | + type: 'text', | |
| 180 | + left: 'center', | |
| 181 | + top: 'center', | |
| 182 | + style: { | |
| 183 | + text: `营业额${totalRevenue}`, | |
| 184 | + fontSize: 20, | |
| 185 | + fill: '#333' | |
| 186 | + } | |
| 187 | + } | |
| 188 | + ] | |
| 146 | 189 | } |
| 147 | 190 | option && myChart.setOption(option) |
| 148 | 191 | }, |
| ... | ... | @@ -154,18 +197,36 @@ |
| 154 | 197 | value: item.tradingVolume |
| 155 | 198 | })) |
| 156 | 199 | const option = { |
| 157 | - grid: { // 图表距离边框的距离,可用百分比和数字(px)配置 | |
| 158 | - top: '5%', | |
| 159 | - left: '3%', | |
| 160 | - right: '10%', | |
| 161 | - bottom: '5%', | |
| 162 | - containLabel: true | |
| 200 | + tooltip: { | |
| 201 | + trigger: 'axis', // 触发类型,折线图常用 axis | |
| 202 | + formatter: function (params) { | |
| 203 | + // params[0] 取第一个系列的数据(这里只有一个系列) | |
| 204 | + return `商家名称:${params[0].name}<br>销售额:${params[0].value}`; | |
| 205 | + } | |
| 206 | + }, | |
| 207 | + grid: { | |
| 208 | + top: '5%', | |
| 209 | + left: '10%', // 增大左侧间距,给 X 轴更多显示空间 | |
| 210 | + right: '10%', | |
| 211 | + bottom: '5%', | |
| 212 | + containLabel: true | |
| 163 | 213 | }, |
| 164 | 214 | |
| 165 | 215 | xAxis: { |
| 166 | 216 | name: '商家名称', |
| 167 | 217 | type: 'category', |
| 168 | 218 | data:processedData.map(item => item.name), |
| 219 | + axisLabel: { interval: 0 }, // 0=显示所有刻度 | |
| 220 | + axisTick: { interval: 0 }, // 同步显示所有刻度线 | |
| 221 | + label: { | |
| 222 | + // 自定义文本显示规则 | |
| 223 | + formatter: function (name) { | |
| 224 | + if (name.length > 3) { // 超过4字时截断 | |
| 225 | + return `${name.slice(0, 3)}...`; | |
| 226 | + } | |
| 227 | + return name; | |
| 228 | + } | |
| 229 | + } | |
| 169 | 230 | }, |
| 170 | 231 | |
| 171 | 232 | yAxis: { |
| ... | ... | @@ -370,6 +431,11 @@ |
| 370 | 431 | |
| 371 | 432 | } |
| 372 | 433 | |
| 434 | + .card_body { | |
| 435 | + font-size: 24px; | |
| 436 | + margin-top: 10px; | |
| 437 | + font-weight: 600; | |
| 438 | + } | |
| 373 | 439 | .card_tree { |
| 374 | 440 | padding: 20px 20px 10px 20px; |
| 375 | 441 | margin-right: 20px; |
| ... | ... | @@ -377,13 +443,9 @@ |
| 377 | 443 | |
| 378 | 444 | .card_title { |
| 379 | 445 | color: #B0B0B0; |
| 446 | + font-size: 16px; | |
| 380 | 447 | } |
| 381 | 448 | |
| 382 | - .card_body { | |
| 383 | - font-size: 24px; | |
| 384 | - margin-top: 10px; | |
| 385 | - font-weight: 600; | |
| 386 | - } | |
| 387 | 449 | |
| 388 | 450 | .card_tu { |
| 389 | 451 | height: 80px; | ... | ... |
admin-web-master/src/views/online/detailQuery/index.vue
| ... | ... | @@ -21,7 +21,7 @@ |
| 21 | 21 | placeholder="请输入订单号" |
| 22 | 22 | |
| 23 | 23 | style="width: 168px" |
| 24 | - v-model="pageindex.orderNo"> | |
| 24 | + v-model="pageindex.orderFormId"> | |
| 25 | 25 | </el-input> |
| 26 | 26 | </el-form-item> |
| 27 | 27 | |
| ... | ... | @@ -31,46 +31,47 @@ |
| 31 | 31 | placeholder="请输入" |
| 32 | 32 | |
| 33 | 33 | style="width: 168px" |
| 34 | - v-model="pageindex.minOrderPrice"> | |
| 34 | + v-model="pageindex.minPrice"> | |
| 35 | 35 | </el-input> |
| 36 | 36 | 至 |
| 37 | 37 | <el-input |
| 38 | 38 | placeholder="请输入" |
| 39 | 39 | |
| 40 | 40 | style="width:168px" |
| 41 | - v-model="pageindex.maxOrderPrice"> | |
| 41 | + v-model="pageindex.maxPrice"> | |
| 42 | 42 | </el-input> |
| 43 | 43 | </div> |
| 44 | 44 | </el-form-item> |
| 45 | 45 | <el-form-item label="交易状态"> |
| 46 | 46 | <el-select |
| 47 | - v-model="pageindex.payState " | |
| 47 | + v-model="pageindex.paymentState" | |
| 48 | 48 | placeholder="请选择" |
| 49 | 49 | |
| 50 | 50 | style="width: 100px;" |
| 51 | 51 | > |
| 52 | - <el-option label="PAY_SUCCESS | |
| 53 | -" value="PAY_SUCCESS | |
| 54 | -" /> | |
| 52 | + <el-option label="未支付 | |
| 53 | +" value="0" /> | |
| 54 | + <el-option label="已支付 | |
| 55 | +" value="1" /> | |
| 55 | 56 | </el-select> |
| 56 | 57 | </el-form-item> |
| 57 | - <el-form-item> | |
| 58 | - <el-button | |
| 59 | - style="background-color: #3F9B6A;color: #fff;" | |
| 60 | - @click="onSubmit" | |
| 61 | - >查询 | |
| 62 | - </el-button> | |
| 63 | - <el-button | |
| 64 | - | |
| 65 | - | |
| 66 | - class="buttonHover" | |
| 67 | - style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" | |
| 68 | - @click="resetting" | |
| 69 | - >重置 | |
| 70 | - </el-button> | |
| 71 | - </el-form-item> | |
| 58 | + | |
| 72 | 59 | </el-form> |
| 73 | - | |
| 60 | + <div> | |
| 61 | + <el-button | |
| 62 | + style="background-color: #3F9B6A;color: #fff;" | |
| 63 | + @click="onSubmit" | |
| 64 | + >查询 | |
| 65 | + </el-button> | |
| 66 | + <el-button | |
| 67 | + | |
| 68 | + | |
| 69 | + class="buttonHover" | |
| 70 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" | |
| 71 | + @click="resetting" | |
| 72 | + >重置 | |
| 73 | + </el-button> | |
| 74 | + </div> | |
| 74 | 75 | </div> |
| 75 | 76 | <!-- 表格 --> |
| 76 | 77 | <el-table |
| ... | ... | @@ -87,7 +88,7 @@ |
| 87 | 88 | </el-table-column> |
| 88 | 89 | <el-table-column |
| 89 | 90 | label="订单号" |
| 90 | - prop="orderNo" | |
| 91 | + prop="orderFormId" | |
| 91 | 92 | min-width="12%" |
| 92 | 93 | > |
| 93 | 94 | |
| ... | ... | @@ -97,65 +98,68 @@ |
| 97 | 98 | prop="payId" |
| 98 | 99 | width="auto" |
| 99 | 100 | min-width="12%" |
| 101 | + show-overflow-tooltip | |
| 100 | 102 | > |
| 101 | 103 | |
| 102 | 104 | </el-table-column> |
| 103 | 105 | <el-table-column |
| 104 | 106 | label="账单金额" |
| 105 | - prop="realAmount" | |
| 107 | + prop="price" | |
| 106 | 108 | width="auto" |
| 107 | - min-width="5%" | |
| 109 | + min-width="7%" | |
| 108 | 110 | > |
| 109 | 111 | |
| 110 | 112 | </el-table-column> |
| 111 | 113 | <el-table-column |
| 112 | 114 | label="支付方式" |
| 113 | - prop="channel" | |
| 115 | + prop="paymentMode" | |
| 114 | 116 | width="auto" |
| 115 | 117 | min-width="10%" |
| 116 | 118 | |
| 117 | 119 | > |
| 120 | + <template slot-scope="scope"> | |
| 121 | + {{scope.row.paymentMode=='1'?'微信':''}} | |
| 122 | + | |
| 123 | + </template> | |
| 118 | 124 | </el-table-column> |
| 119 | 125 | <el-table-column |
| 120 | - prop="createDate" | |
| 126 | + prop="createTime" | |
| 121 | 127 | label="交易创建时间" |
| 122 | 128 | width="auto" |
| 123 | 129 | min-width="10%" |
| 124 | - | |
| 130 | +show-overflow-tooltip | |
| 125 | 131 | > |
| 126 | 132 | |
| 127 | 133 | </el-table-column> |
| 128 | 134 | <el-table-column |
| 129 | - prop="time" | |
| 135 | + prop="payType" | |
| 130 | 136 | label="交易类型" |
| 131 | 137 | width="auto" |
| 132 | 138 | min-width="10%" |
| 133 | 139 | |
| 134 | 140 | > |
| 135 | - | |
| 141 | +<template slot-scope="scope"> | |
| 142 | + {{scope.row.payType=='1'?'线上支付':''}} | |
| 143 | + | |
| 144 | + </template> | |
| 136 | 145 | </el-table-column> |
| 137 | 146 | <el-table-column |
| 138 | - prop="payState" | |
| 147 | + prop="paymentState" | |
| 139 | 148 | label="交易状态" |
| 140 | 149 | width="auto" |
| 141 | 150 | min-width="10%" |
| 142 | 151 | |
| 143 | 152 | > |
| 144 | - | |
| 145 | - </el-table-column> | |
| 146 | - <el-table-column | |
| 147 | - prop="body" | |
| 148 | - label="营业点" | |
| 149 | - width="auto" | |
| 150 | - min-width="10%" | |
| 151 | - | |
| 152 | - > | |
| 153 | - | |
| 153 | + <template slot-scope="scope"> | |
| 154 | + {{scope.row.paymentState=='1'?'已支付':'未支付'}} | |
| 155 | + | |
| 156 | + </template> | |
| 154 | 157 | </el-table-column> |
| 158 | + | |
| 155 | 159 | <el-table-column |
| 156 | 160 | label="操作" |
| 157 | 161 | width="auto" |
| 158 | - min-width="17%"> | |
| 162 | + min-width="5%"> | |
| 159 | 163 | <template slot-scope="scope"> |
| 160 | 164 | <div @click="addbuss(scope.row)" class="tableBtn greens">查看</div> |
| 161 | 165 | |
| ... | ... | @@ -163,16 +167,16 @@ |
| 163 | 167 | </el-table-column> |
| 164 | 168 | </el-table> |
| 165 | 169 | <div class="fenye"> |
| 170 | + <div>共{{total}}条</div> | |
| 166 | 171 | <el-pagination |
| 167 | 172 | class="pagination" |
| 168 | 173 | :hide-on-single-page="flag" |
| 169 | 174 | background |
| 170 | - small | |
| 171 | - :current-page="currentPage" | |
| 175 | + :current-page="pageindex.pageNumber+1" | |
| 172 | 176 | :page-sizes="[10, 20, 50, 100]" |
| 173 | - :page-size="pageSize" | |
| 174 | - layout="total,sizes,prev, pager,next" | |
| 175 | - :total="total " | |
| 177 | + :page-size="pageindex.pageSize" | |
| 178 | + layout="prev, pager,next" | |
| 179 | + :total="total" | |
| 176 | 180 | @size-change="handleSizeChange" |
| 177 | 181 | @current-change="handleCurrentChange" |
| 178 | 182 | /> |
| ... | ... | @@ -182,20 +186,17 @@ |
| 182 | 186 | <el-dialog title="详情" :visible.sync="ggXin" custom-class="diaslog_zhong" style="padding: 0;" width="80%" class="dialog_css_Xq" center :close-on-click-modal="false" :show-close="false" > |
| 183 | 187 | <div > |
| 184 | 188 | <el-descriptions :column="2"> |
| 185 | - <el-descriptions-item label="用户名称">kooriookami</el-descriptions-item> | |
| 186 | - <el-descriptions-item label="商户号">18100000000</el-descriptions-item> | |
| 187 | - <el-descriptions-item label="交易类型">苏州市</el-descriptions-item> | |
| 188 | - <el-descriptions-item label="交易状态"></el-descriptions-item> | |
| 189 | - <el-descriptions-item label="订单金额(元)">12</el-descriptions-item> | |
| 190 | - <el-descriptions-item label="交易金额(元)">12</el-descriptions-item> | |
| 191 | - <el-descriptions-item label="优惠金额(元)">12</el-descriptions-item> | |
| 192 | - <el-descriptions-item label="手续费金额(元)">12</el-descriptions-item> | |
| 193 | - <el-descriptions-item label="交易币种"></el-descriptions-item> | |
| 194 | - <el-descriptions-item label="交易创建时间"></el-descriptions-item> | |
| 195 | - <el-descriptions-item label="交易完成时间"></el-descriptions-item> | |
| 196 | - <el-descriptions-item label="支付工具"></el-descriptions-item> | |
| 197 | - <el-descriptions-item label="商户订单号"></el-descriptions-item> | |
| 198 | - <el-descriptions-item label="系统交易订单号"></el-descriptions-item> | |
| 189 | + <el-descriptions-item label="用户名称">{{rules.shopName}}</el-descriptions-item> | |
| 190 | + <el-descriptions-item label="商户号">{{rules.shopCode}}</el-descriptions-item> | |
| 191 | + <el-descriptions-item label="交易类型">{{rules.payType=='1'?'线上支付':''}}</el-descriptions-item> | |
| 192 | + <el-descriptions-item label="交易状态">{{rules.payStatus}}</el-descriptions-item> | |
| 193 | + <el-descriptions-item label="订单金额(元)">{{rules.price}}</el-descriptions-item> | |
| 194 | + <el-descriptions-item label="交易金额(元)">{{rules.realPrice}}</el-descriptions-item> | |
| 195 | + <el-descriptions-item label="交易创建时间">{{rules.createTime}}</el-descriptions-item> | |
| 196 | + <el-descriptions-item label="交易完成时间">{{rules.payTime}}</el-descriptions-item> | |
| 197 | + <el-descriptions-item label="支付工具">{{rules.paymentMode=='1'?'微信':''}}</el-descriptions-item> | |
| 198 | + <el-descriptions-item label="商户订单号">{{rules.orderFormId}}</el-descriptions-item> | |
| 199 | + <el-descriptions-item label="系统交易订单号">{{rules.subOrderId}}</el-descriptions-item> | |
| 199 | 200 | </el-descriptions> |
| 200 | 201 | |
| 201 | 202 | <div style="display: flex;justify-content: flex-end;"> |
| ... | ... | @@ -216,27 +217,17 @@ export default { |
| 216 | 217 | data () { |
| 217 | 218 | return { |
| 218 | 219 | rules: {}, |
| 219 | - currentPage: 1, | |
| 220 | - total: 100, | |
| 220 | + total: 0, | |
| 221 | 221 | flag: false, |
| 222 | - pageSize: 10, | |
| 223 | 222 | ggXin: false, |
| 224 | - formInline: { | |
| 225 | -paryTime:[] | |
| 226 | - }, | |
| 227 | 223 | pageindex: { |
| 228 | - orderNo:'', | |
| 229 | - payState:'', | |
| 230 | - merchantId:'9E602E5977EC48DEA06D42C67F4C93F0', | |
| 231 | - page: 1, | |
| 232 | - limit: 10, | |
| 233 | - minOrderPrice:'', | |
| 234 | - maxOrderPrice:'', | |
| 235 | - orderTimeStart:'2024-1-1 00:00:00', | |
| 236 | - orderTimeEnd:'', | |
| 224 | + orderFormId:'', | |
| 225 | + paymentState:'', | |
| 226 | + pageSize: 10, | |
| 227 | + pageNumber: 0, | |
| 228 | + minPrice:'', | |
| 229 | + maxPrice:'', | |
| 237 | 230 | }, |
| 238 | - minMach:'', | |
| 239 | - maxMach:'', | |
| 240 | 231 | tableData: [] |
| 241 | 232 | } |
| 242 | 233 | }, |
| ... | ... | @@ -246,11 +237,9 @@ paryTime:[] |
| 246 | 237 | }, |
| 247 | 238 | methods: { |
| 248 | 239 | async getOrder(){ |
| 249 | - // this.getFirstDayOfYear() | |
| 250 | - this.getLastDayOfYear() | |
| 251 | 240 | const res = await merchantQueries(this.pageindex) |
| 252 | - this.tableData = res.data | |
| 253 | - this.total = res.data.length | |
| 241 | + this.tableData = res.data.content | |
| 242 | + this.total = res.data.totalElements | |
| 254 | 243 | |
| 255 | 244 | }, |
| 256 | 245 | getFirstDayOfYear() { |
| ... | ... | @@ -276,42 +265,33 @@ paryTime:[] |
| 276 | 265 | }, |
| 277 | 266 | addbuss (item) { |
| 278 | 267 | this.ggXin = true |
| 268 | + this.rules = item | |
| 279 | 269 | }, |
| 280 | 270 | |
| 281 | 271 | onSubmit(){ |
| 282 | 272 | |
| 283 | 273 | |
| 284 | 274 | this.getOrder() |
| 285 | - // if(this.formInline.paryTime.length !=0){ | |
| 286 | - // this.pageindex.orderTimeStart = this.formInline.paryTime[0] | |
| 287 | - // this.pageindex.orderTimeEnd = this.formInline.paryTime[1] | |
| 288 | - // const res = merchantQueries(this.pageindex).then(res=>{ | |
| 289 | - // this.tableData = JSON.parse(res.data).records | |
| 290 | - // this.total = JSON.parse(res.data).records.length | |
| 291 | - // }) | |
| 292 | - // } | |
| 293 | 275 | |
| 294 | 276 | }, |
| 295 | 277 | resetting(){ |
| 296 | 278 | this.pageindex={ |
| 297 | - orderNo:'', | |
| 298 | - payState:'', | |
| 299 | - merchantId:'9E602E5977EC48DEA06D42C67F4C93F0', | |
| 300 | - page: 1, | |
| 301 | - limit: 10, | |
| 302 | - minOrderPrice:'', | |
| 303 | - maxOrderPrice:'', | |
| 304 | - orderTimeStart:'', | |
| 305 | - orderTimeEnd:'', | |
| 279 | + orderFormId:'', | |
| 280 | + paymentState:'', | |
| 281 | + pageSize: 10, | |
| 282 | + pageNumber: 0, | |
| 283 | + minPrice:'', | |
| 284 | + maxPrice:'', | |
| 306 | 285 | } |
| 307 | 286 | this.getOrder() |
| 308 | 287 | |
| 309 | 288 | }, |
| 310 | - handleSizeChange(){ | |
| 289 | + handleSizeChange(val){ | |
| 311 | 290 | |
| 312 | 291 | }, |
| 313 | - handleCurrentChange(){ | |
| 314 | - | |
| 292 | + handleCurrentChange(val){ | |
| 293 | + this.pageindex.pageNumber = val-1 | |
| 294 | + this.getOrder() | |
| 315 | 295 | }, |
| 316 | 296 | closeFn () { |
| 317 | 297 | this.ggXin = false |
| ... | ... | @@ -365,7 +345,7 @@ paryTime:[] |
| 365 | 345 | .fenye { |
| 366 | 346 | margin-top: 20px; |
| 367 | 347 | display: flex; |
| 368 | - justify-content: flex-start; | |
| 348 | + justify-content:space-between; | |
| 369 | 349 | position: relative; |
| 370 | 350 | } |
| 371 | 351 | |
| ... | ... | @@ -425,21 +405,7 @@ paryTime:[] |
| 425 | 405 | /deep/ .el-pagination__total{ |
| 426 | 406 | margin-top:4px; |
| 427 | 407 | } |
| 428 | -/deep/ .btn-prev{ | |
| 429 | - position:absolute ; | |
| 430 | - top: 4px; | |
| 431 | - right: 266px; | |
| 432 | -} | |
| 433 | -/deep/ .el-pager{ | |
| 434 | - position:absolute ; | |
| 435 | - top: 4px; | |
| 436 | - right: 40px; | |
| 437 | -} | |
| 438 | -/deep/ .btn-next{ | |
| 439 | - position:absolute; | |
| 440 | - top: 4px; | |
| 441 | - right: 10px; | |
| 442 | -} | |
| 408 | + | |
| 443 | 409 | ::v-deep .buttonHover:hover { |
| 444 | 410 | color: #3f9b6a !important; |
| 445 | 411 | border-color: #c5e1d2 !important; | ... | ... |
admin-web-master/src/views/online/reconciliationAnalysis/index.vue
| 1 | 1 | <template> |
| 2 | - <div style="background-color:#f7f7f7;padding:10px 10px;"> | |
| 3 | - <div style="padding: 0 20px;background-color:#fff;"> | |
| 4 | - <div style="height:58px;line-height:58px;"> | |
| 5 | - <div style="color:#0006"> <span>联机交易</span> <span style="padding:0 5px;">></span> <span style="color:#000000e6">对账分析</span></div> | |
| 6 | - </div> | |
| 7 | - <el-calendar v-model="value"> | |
| 8 | - </el-calendar> | |
| 9 | - </div> | |
| 10 | - </div> | |
| 2 | + <div style="background-color:#f7f7f7;padding:10px 10px;"> | |
| 3 | + <div class="zhuti" v-if="ontype == '1'"> | |
| 4 | + <div style="height:58px;line-height:58px;"> | |
| 5 | + <div style="color:#0006"> <span>联机交易</span> <span style="padding:0 5px;">></span> <span | |
| 6 | + style="color:#000000e6">对账分析</span></div> | |
| 7 | + </div> | |
| 8 | + <!-- 搜索 --> | |
| 9 | + <div class="formSearch"> | |
| 10 | + <el-form :inline="true" :model="formSel"> | |
| 11 | + <el-form-item label="年月"> | |
| 12 | + <el-date-picker style="width: 100%;" v-model="formSel.yytime" value-format="yyyy-MM" | |
| 13 | + type="month" placeholder="选择日期"> | |
| 14 | + </el-date-picker> | |
| 15 | + </el-form-item> | |
| 16 | + | |
| 17 | + | |
| 18 | + </el-form> | |
| 19 | + <div> | |
| 20 | + <el-button style="background-color: #3F9B6A;color: #fff" @click="onSubmit">查询 | |
| 21 | + </el-button> | |
| 22 | + <el-button class="buttonHover" | |
| 23 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" @click="resetting">重置 | |
| 24 | + </el-button> | |
| 25 | + </div> | |
| 26 | + | |
| 27 | + </div> | |
| 28 | + | |
| 29 | + <div> | |
| 30 | + <el-calendar v-model="morenCard"> | |
| 31 | + <template slot="dateCell" slot-scope="{date, data}"> | |
| 32 | + {{data.day.split("-").slice(2).join("-")}} | |
| 33 | + <div style="overflow: auto;height:75px;"> | |
| 34 | + <div style="width:100%," v-for="(item,index) in tableData" | |
| 35 | + @click="genjinMsg(item,data.day)"> | |
| 36 | + <div style="font-size:12px;margin-top:10px;"> | |
| 37 | + | |
| 38 | + <div v-if="item.nowDay == data.day && val.count!=0" | |
| 39 | + v-for="val in item.checkTypes" | |
| 40 | + :style="val.checkType==0?'color:red':val.checkType==1?'color:green':val.checkType==2?'':''"> | |
| 41 | + {{val.checkType==0?'未对账':val.checkType==1?'平账':val.checkType==2?'金额不符':''}}:{{val.count}} | |
| 42 | + </div> | |
| 43 | + | |
| 44 | + </div> | |
| 45 | + </div> | |
| 46 | + </div> | |
| 47 | + </template> | |
| 48 | + </el-calendar> | |
| 49 | + </div> | |
| 50 | + <div> | |
| 51 | + <el-button class="buttonHover" style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" | |
| 52 | + @click="closeGenjin">返回 | |
| 53 | + </el-button> | |
| 54 | + </div> | |
| 55 | + </div> | |
| 56 | + <div class="zhuti" v-if="ontype == '3'"> | |
| 57 | + <div style="height:58px;line-height:58px;"> | |
| 58 | + <div style="color:#0006"> <span>联机交易</span> <span style="padding:0 5px;">></span> <span | |
| 59 | + style="color:#000000e6">对账明细</span></div> | |
| 60 | + </div> | |
| 61 | + <div class="formSearch"> | |
| 62 | + <el-form :inline="true" :model="listIndex" label-position="left"> | |
| 63 | + <el-form-item label="账单金额"> | |
| 64 | + <div> | |
| 65 | + <el-input placeholder="请输入" style="width: 168px" v-model="listIndex.minPrice"> | |
| 66 | + </el-input> | |
| 67 | + 至 | |
| 68 | + <el-input placeholder="请输入" style="width:168px" v-model="listIndex.maxPrice"> | |
| 69 | + </el-input> | |
| 70 | + </div> | |
| 71 | + </el-form-item> | |
| 72 | + | |
| 73 | + <el-form-item label="核对状态"> | |
| 74 | + <el-select v-model="listIndex.checkType" placeholder="请选择" style="width: 100px;"> | |
| 75 | + <el-option label="未对账" value="0" /> | |
| 76 | + <el-option label="平账" value="1" /> | |
| 77 | + <el-option label="金额不符" value="2" /> | |
| 78 | + </el-select> | |
| 79 | + </el-form-item> | |
| 80 | + <el-form-item> | |
| 81 | + <el-button style="background-color: #3F9B6A;color: #fff;" @click="listSubmit">查询 | |
| 82 | + </el-button> | |
| 83 | + <el-button class="buttonHover" | |
| 84 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" | |
| 85 | + @click="listResetting">重置 | |
| 86 | + </el-button> | |
| 87 | + </el-form-item> | |
| 88 | + </el-form> | |
| 89 | + | |
| 90 | + </div> | |
| 91 | + <div> | |
| 92 | + <el-table :data="addziyuanData" | |
| 93 | + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}" | |
| 94 | + style="width: 100%"> | |
| 95 | + <el-table-column label="序号" min-width="4%"> | |
| 96 | + <template slot-scope="scope"> | |
| 97 | + {{scope.$index+1}} | |
| 98 | + </template> | |
| 99 | + </el-table-column> | |
| 100 | + <el-table-column prop="orderFormId" label="订单号" width="auto" min-width="10%"> | |
| 101 | + | |
| 102 | + </el-table-column> | |
| 103 | + <el-table-column prop="payId" label="交易号" width="auto" min-width="10%" show-overflow-tooltip> | |
| 104 | + | |
| 105 | + </el-table-column> | |
| 106 | + <el-table-column label="支付金额" prop="price" width="auto" min-width="12%"> | |
| 107 | + | |
| 108 | + </el-table-column> | |
| 109 | + | |
| 110 | + | |
| 111 | + <el-table-column prop="payChannel" label="支付渠道" width="auto" min-width="10%"> | |
| 112 | + | |
| 113 | + </el-table-column> | |
| 114 | + | |
| 115 | + <el-table-column prop="payTime" label="支付完成时间" width="auto" min-width="10%" show-overflow-tooltip> | |
| 116 | + <template slot-scope="scope"> | |
| 117 | + {{formatIsoToDateTime(scope.row.payTime)}} | |
| 118 | + </template> | |
| 119 | + </el-table-column> | |
| 120 | + <el-table-column prop="reconciliationTime" label="对账日期" width="auto" min-width="10%" | |
| 121 | + show-overflow-tooltip> | |
| 122 | + | |
| 123 | + <template slot-scope="scope"> | |
| 124 | + {{formatIsoToDateTime(scope.row.reconciliationTime)}} | |
| 125 | + </template> | |
| 126 | + </el-table-column> | |
| 127 | + <el-table-column prop="checkType" label="核对状态" width="auto" min-width="10%"> | |
| 128 | + <template slot-scope="scope"> | |
| 129 | + {{scope.row.checkType == '0'?'未对账':scope.row.checkType == '1'?'平账':scope.row.checkType == '2'?'金额不符':''}} | |
| 130 | + </template> | |
| 131 | + </el-table-column> | |
| 132 | + | |
| 133 | + </el-table> | |
| 134 | + <div class="fenye"> | |
| 135 | + <div style="line-height: 34px">共{{total}}条</div> | |
| 136 | + <el-pagination class="pagination" :hide-on-single-page="flag" background :current-page="listIndex.pageNumber+1" | |
| 137 | + :page-sizes="[10, 20, 50, 100]" :page-size="listIndex.pageSize" layout="prev, pager,next" :total="total" | |
| 138 | + @size-change="handleSizeChange" @current-change="handleCurrentChange" /> | |
| 139 | + </div> | |
| 140 | + </div> | |
| 141 | + <div style="display: flex;"> | |
| 142 | + <el-button @click="closeFn" class="buttonHover" | |
| 143 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;">返回</el-button> | |
| 144 | + </div> | |
| 145 | + </div> | |
| 146 | + | |
| 147 | + </div> | |
| 11 | 148 | </template> |
| 12 | 149 | |
| 13 | 150 | <script> |
| 14 | - export default { | |
| 15 | - data() { | |
| 16 | - return { | |
| 17 | - value: new Date() | |
| 18 | - } | |
| 19 | - } | |
| 20 | - } | |
| 151 | + import { | |
| 152 | + reconciliationAnalysis,reconciliationDetail | |
| 153 | + } from '../../../api/online.js' | |
| 154 | + export default { | |
| 155 | + data() { | |
| 156 | + return { | |
| 157 | + ontype: "1", | |
| 158 | + formSel: { | |
| 159 | + yytime: '' | |
| 160 | + }, | |
| 161 | + addziyuanData: [], | |
| 162 | + morenCard: new Date(), | |
| 163 | + pageSize: 10, | |
| 164 | + currentPage: 1, | |
| 165 | + flag:false, | |
| 166 | + total: 0, | |
| 167 | + pageindex: { | |
| 168 | + startTime: '', | |
| 169 | + endTime: '', | |
| 170 | + pageNumber: 0, | |
| 171 | + pageSize: 10, | |
| 172 | + }, | |
| 173 | + listIndex:{ | |
| 174 | + minPrice: '', | |
| 175 | + maxPrice: '', | |
| 176 | + checkType: '', | |
| 177 | + pageSize: 10, | |
| 178 | + pageNumber: 0, | |
| 179 | + nowTime:'', | |
| 180 | + }, | |
| 181 | + tableData: [], | |
| 182 | + } | |
| 183 | + }, | |
| 184 | + created() { | |
| 185 | + | |
| 186 | + }, | |
| 187 | + mounted() { | |
| 188 | + this.getCurrentMonthStartAndEnd() | |
| 189 | + this.getAll() | |
| 190 | + }, | |
| 191 | + methods: { | |
| 192 | + getCurrentMonthStartAndEnd() { | |
| 193 | + let date = new Date(); | |
| 194 | + let year = date.getFullYear(); | |
| 195 | + let month = date.getMonth() + 1; | |
| 196 | + if(month > 12){ | |
| 197 | + month = 1; | |
| 198 | + year++; | |
| 199 | + } | |
| 200 | + if (month < 10) { | |
| 201 | + month = '0' + month | |
| 202 | + } | |
| 203 | + let monthLastDay = new Date(year, month, 0).getDate(); | |
| 204 | + let firstDate = year + '-' + month + '-' + '01'; | |
| 205 | + let lastDate = year + '-' + month + '-' + monthLastDay; | |
| 206 | + this.pageindex.startTime =firstDate | |
| 207 | + this.pageindex.endTime =lastDate | |
| 208 | + | |
| 209 | + }, | |
| 210 | + changimg(e, type) { | |
| 211 | + this.formInline[type] = e | |
| 212 | + }, | |
| 213 | + async getAll() { | |
| 214 | + const res = await reconciliationAnalysis(this.pageindex) | |
| 215 | + this.tableData = res.data.onlineTransactionTimeByNowDayVOS | |
| 216 | + | |
| 217 | + }, | |
| 218 | + async genjinMsg(item, data) { | |
| 219 | + this.listIndex.nowTime = data | |
| 220 | + this.ontype = '3' | |
| 221 | + const res = await reconciliationDetail(this.listIndex) | |
| 222 | + this.addziyuanData = res.data.content | |
| 223 | + this.total = res.data.totalElements | |
| 224 | + }, | |
| 225 | + onSubmit() { | |
| 226 | + this.morenCard = this.formSel.yytime | |
| 227 | + if(this.formSel.yytime != ''){ | |
| 228 | + this.getfirstDateAndlastDate(this.formSel.yytime) | |
| 229 | + } | |
| 230 | + | |
| 231 | + this.getAll() | |
| 232 | + }, | |
| 233 | + resetting() { | |
| 234 | + this.morenCard = new Date() | |
| 235 | + this.formSel.yytime = '' | |
| 236 | + this.getCurrentMonthStartAndEnd() | |
| 237 | + this.getAll() | |
| 238 | + }, | |
| 239 | + getfirstDateAndlastDate(dateStr){ | |
| 240 | + let date = new Date(dateStr); | |
| 241 | + let year = date.getFullYear(); | |
| 242 | + let month = date.getMonth() + 1; | |
| 243 | + if(month > 12){ | |
| 244 | + month = 1; | |
| 245 | + year++; | |
| 246 | + } | |
| 247 | + if (month < 10) { | |
| 248 | + month = '0' + month | |
| 249 | + } | |
| 250 | + let monthLastDay = new Date(year, month, 0).getDate(); | |
| 251 | + let firstDate = year + '-' + month + '-' + '01'; | |
| 252 | + let lastDate = year + '-' + month + '-' + monthLastDay; | |
| 253 | + this.pageindex.startTime =firstDate | |
| 254 | + this.pageindex.endTime =lastDate | |
| 255 | + }, | |
| 256 | + | |
| 257 | + closeGenjin() { | |
| 258 | + this.ontype = '1' | |
| 259 | + this.addziyuanData = [] | |
| 260 | + }, | |
| 261 | + | |
| 262 | + closeFn(val) { | |
| 263 | + this.addziyuanData = [] | |
| 264 | + this.ontype = '1' | |
| 265 | + }, | |
| 266 | + handleSizeChange(){ | |
| 267 | + | |
| 268 | + }, | |
| 269 | + handleCurrentChange(val) { | |
| 270 | + this.listIndex.pageNumber = val | |
| 271 | + this.getAll() | |
| 272 | + }, | |
| 273 | + formatIsoToDateTime(isoTime) { | |
| 274 | + // 1. 空值/非法值处理 | |
| 275 | + if (!isoTime) return ''; | |
| 276 | + if (typeof isoTime !== 'string') return '时间格式错误'; | |
| 277 | + | |
| 278 | + // 2. 解析时间(兼容带时区的ISO格式,如2025-03-11T14:19:54+08:00) | |
| 279 | + const date = new Date(isoTime.replace('T', ' ').replace(/-/g, '/')); | |
| 280 | + if (isNaN(date.getTime())) return '时间格式错误'; | |
| 281 | + | |
| 282 | + // 3. 补零函数(确保两位数) | |
| 283 | + const pad = (num) => num.toString().padStart(2, '0'); | |
| 284 | + | |
| 285 | + // 4. 提取时间分量(注意:月份从0开始,需+1) | |
| 286 | + return [ | |
| 287 | + date.getFullYear(), // 年 | |
| 288 | + pad(date.getMonth() + 1), // 月(0→1月) | |
| 289 | + pad(date.getDate()), // 日 | |
| 290 | + pad(date.getHours()), // 时 | |
| 291 | + pad(date.getMinutes()), // 分 | |
| 292 | + pad(date.getSeconds()) // 秒 | |
| 293 | + ].join('-').replace(/(\d{4})-(\d{2})-(\d{2})/, '$1-$2-$3 ').slice(0, 19); | |
| 294 | + // 最终格式:YYYY-MM-DD HH:mm:ss(精确到秒,共19位) | |
| 295 | + }, | |
| 296 | + async listSubmit(){ | |
| 297 | + const res = await reconciliationDetail(this.listIndex) | |
| 298 | + this.addziyuanData = res.data.content | |
| 299 | + this.total = res.data.totalElements | |
| 300 | + }, | |
| 301 | + async listResetting(){ | |
| 302 | + this.listIndex={ | |
| 303 | + minPrice: '', | |
| 304 | + maxPrice: '', | |
| 305 | + checkType: '', | |
| 306 | + pageSize: 10, | |
| 307 | + pageNumber: 0, | |
| 308 | + nowTime:'', | |
| 309 | + } | |
| 310 | + const res = await reconciliationDetail(this.listIndex) | |
| 311 | + this.addziyuanData = res.data.content | |
| 312 | + this.total = res.data.totalElements | |
| 313 | + }, | |
| 314 | + } | |
| 315 | + } | |
| 21 | 316 | </script> |
| 22 | 317 | |
| 23 | -<style> | |
| 24 | -</style> | |
| 318 | +<style lang="scss" scoped> | |
| 319 | + .fenye { | |
| 320 | + margin-top: 20px; | |
| 321 | + display: flex; | |
| 322 | + justify-content: space-between; | |
| 323 | + position: relative; | |
| 324 | + } | |
| 325 | + | |
| 326 | + ::v-deep .el-calendar button-group { | |
| 327 | + display: none; | |
| 328 | + } | |
| 329 | + | |
| 330 | + .zhuti { | |
| 331 | + padding: 0 20px 20px 20px; | |
| 332 | + min-height: calc(100vh - 50px - 20px); | |
| 333 | + background-color: #fff; | |
| 334 | + box-sizing: border-box; | |
| 335 | + } | |
| 336 | + | |
| 337 | + .formSearch { | |
| 338 | + | |
| 339 | + display: flex; | |
| 340 | + width: 100%; | |
| 341 | + font-size: 14px; | |
| 342 | + justify-content: space-between; | |
| 343 | + | |
| 344 | + } | |
| 345 | + | |
| 346 | + ::v-deep .el-calendar-table:not(.is-range)td.next { | |
| 347 | + display: none; | |
| 348 | + } | |
| 349 | + | |
| 350 | + ::v-deep .el-calendar-table:not(.is-range)td.prev { | |
| 351 | + visibility: hidden; | |
| 352 | + } | |
| 353 | + | |
| 354 | + ::v-deep .el-calendar__button-group { | |
| 355 | + display: none; | |
| 356 | + } | |
| 357 | +</style> | |
| 25 | 358 | \ No newline at end of file | ... | ... |
admin-web-master/src/views/online/reconciliationAnalysis/index11.vue
0 → 100644
| 1 | +<template> | |
| 2 | + <div style="background-color:#f7f7f7;padding:10px 10px;"> | |
| 3 | + <div style="padding: 0 20px;background-color:#fff;"> | |
| 4 | + <div style="height:58px;line-height:58px;"> | |
| 5 | + <div style="color:#0006"> <span>联机交易</span> <span style="padding:0 5px;">></span> <span style="color:#000000e6">对账分析</span></div> | |
| 6 | + </div> | |
| 7 | + <el-calendar v-model="value"> | |
| 8 | + </el-calendar> | |
| 9 | + </div> | |
| 10 | + </div> | |
| 11 | +</template> | |
| 12 | + | |
| 13 | +<script> | |
| 14 | + export default { | |
| 15 | + data() { | |
| 16 | + return { | |
| 17 | + value: new Date() | |
| 18 | + } | |
| 19 | + } | |
| 20 | + } | |
| 21 | +</script> | |
| 22 | + | |
| 23 | +<style> | |
| 24 | +</style> | ... | ... |
admin-web-master/src/views/online/reconciliationDetails/index.vue
| 1 | 1 | <template> |
| 2 | - <div style="background-color:#f7f7f7;padding:10px 10px;"> | |
| 3 | - <div class="zhuti"> | |
| 4 | - <div style="height:58px;line-height:58px;"> | |
| 5 | - <div style="color:#0006"> <span>交易联机</span> <span style="padding:0 5px;">></span> <span | |
| 6 | - style="color:#000000e6">对账明细</span></div> | |
| 7 | - </div> | |
| 8 | - <div> | |
| 9 | - | |
| 10 | - <!-- 搜索 --> | |
| 11 | - <div class="formSearch"> | |
| 12 | - <el-form | |
| 13 | - :inline="true" | |
| 14 | - :model="pageindex" | |
| 15 | - | |
| 16 | - label-position="left" | |
| 17 | - > | |
| 18 | - <el-form-item label="账单金额"> | |
| 19 | - <div> | |
| 20 | - <el-input | |
| 21 | - placeholder="请输入" | |
| 22 | - | |
| 23 | - style="width: 168px" | |
| 24 | - v-model="pageindex.minOrderPrice"> | |
| 25 | - </el-input> | |
| 26 | - 至 | |
| 27 | - <el-input | |
| 28 | - placeholder="请输入" | |
| 29 | - | |
| 30 | - style="width:168px" | |
| 31 | - v-model="pageindex.maxOrderPrice"> | |
| 32 | - </el-input> | |
| 33 | - </div> | |
| 34 | - </el-form-item> | |
| 35 | - <el-form-item label="交易状态"> | |
| 36 | - <el-select | |
| 37 | - v-model="pageindex.payState " | |
| 38 | - placeholder="请选择" | |
| 39 | - | |
| 40 | - style="width: 100px;" | |
| 41 | - > | |
| 42 | - <el-option label="PAY_SUCCESS" value="PAY_SUCCESS" /> | |
| 43 | - </el-select> | |
| 44 | - </el-form-item> | |
| 45 | - <el-form-item> | |
| 46 | - <el-button | |
| 47 | - style="background-color: #3F9B6A;color: #fff;" | |
| 48 | - @click="onSubmit" | |
| 49 | - >查询 | |
| 50 | - </el-button> | |
| 51 | - <el-button | |
| 52 | - | |
| 53 | - | |
| 54 | - class="buttonHover" | |
| 55 | - style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" | |
| 56 | - @click="resetting" | |
| 57 | - >重置 | |
| 58 | - </el-button> | |
| 59 | - </el-form-item> | |
| 60 | - </el-form> | |
| 61 | - | |
| 62 | - </div> | |
| 63 | - <!-- 表格 --> | |
| 64 | - <el-table | |
| 65 | - :data="tableData" | |
| 66 | - :header-cell-style="{fontSize: '12px', backgroundColor: '#FAFAFA',color:'#000',fontWeight: 'normal'}" | |
| 67 | - :border="true" | |
| 68 | - style="width: 100%" | |
| 69 | - > | |
| 70 | - <el-table-column | |
| 71 | - label="序号" | |
| 72 | - min-width="4%" | |
| 73 | - > | |
| 74 | - <template slot-scope="scope"> | |
| 75 | - {{scope.$index+1}} | |
| 76 | - </template> | |
| 77 | - </el-table-column> | |
| 78 | - <el-table-column | |
| 79 | - label="营业点" | |
| 80 | - prop="body" | |
| 81 | - width="auto" | |
| 82 | - min-width="12%" | |
| 83 | - > | |
| 84 | - </el-table-column> | |
| 85 | - <el-table-column | |
| 86 | - label="支付金额" | |
| 87 | - prop="realAmount" | |
| 88 | - width="auto" | |
| 89 | - min-width="12%" | |
| 90 | - > | |
| 91 | - | |
| 92 | - </el-table-column> | |
| 93 | - <el-table-column | |
| 94 | - label="手续费" | |
| 95 | - prop="platformCouponAmount" | |
| 96 | - width="auto" | |
| 97 | - min-width="5%" | |
| 98 | - > | |
| 99 | - | |
| 100 | - </el-table-column> | |
| 101 | - <el-table-column | |
| 102 | - label="调整金额" | |
| 103 | - prop="totalDiscountAmount" | |
| 104 | - width="auto" | |
| 105 | - min-width="10%" | |
| 106 | - | |
| 107 | - > | |
| 108 | - </el-table-column> | |
| 109 | - <el-table-column | |
| 110 | - prop="channel" | |
| 111 | - label="支付渠道" | |
| 112 | - width="auto" | |
| 113 | - min-width="10%" | |
| 114 | - | |
| 115 | - > | |
| 116 | - | |
| 117 | - </el-table-column> | |
| 118 | - <el-table-column | |
| 119 | - prop="orderNo" | |
| 120 | - label="订单号" | |
| 121 | - width="auto" | |
| 122 | - min-width="10%" | |
| 123 | - | |
| 124 | - > | |
| 125 | - | |
| 126 | - </el-table-column> | |
| 127 | -<el-table-column | |
| 128 | - prop="payId" | |
| 129 | - label="交易号" | |
| 130 | - width="auto" | |
| 131 | - min-width="10%" | |
| 132 | - | |
| 133 | - > | |
| 134 | - | |
| 135 | - </el-table-column> | |
| 136 | - <el-table-column | |
| 137 | - prop="createDate" | |
| 138 | - label="支付完成时间" | |
| 139 | - width="auto" | |
| 140 | - min-width="10%" | |
| 141 | - | |
| 142 | - > | |
| 143 | - | |
| 144 | - </el-table-column> | |
| 145 | - <el-table-column | |
| 146 | - prop="time" | |
| 147 | - label="对账日期" | |
| 148 | - width="auto" | |
| 149 | - min-width="10%" | |
| 150 | - | |
| 151 | - > | |
| 152 | - | |
| 153 | - </el-table-column> | |
| 154 | - <el-table-column | |
| 155 | - prop="payState" | |
| 156 | - label="状态" | |
| 157 | - width="auto" | |
| 158 | - min-width="10%" | |
| 159 | - | |
| 160 | - > | |
| 161 | - | |
| 162 | - </el-table-column> | |
| 163 | - | |
| 164 | - </el-table> | |
| 165 | - <!-- <div class="fenye"> | |
| 166 | - <div style="line-height: 34px">显示第1到第10条记录</div> | |
| 167 | - <el-pagination | |
| 168 | - class="pagination" | |
| 169 | - :hide-on-single-page="flag" | |
| 170 | - background | |
| 171 | - small | |
| 172 | - :current-page="currentPage" | |
| 173 | - :page-sizes="[10, 20, 50, 100]" | |
| 174 | - :page-size="pageSize" | |
| 175 | - layout="total,sizes,prev, pager,next" | |
| 176 | - :total="total " | |
| 177 | - @size-change="handleSizeChange" | |
| 178 | - @current-change="handleCurrentChange" | |
| 179 | - /> | |
| 180 | - </div> --> | |
| 181 | - | |
| 182 | - </div> | |
| 183 | - </div> | |
| 184 | - | |
| 185 | - </div> | |
| 2 | + <div style="background-color:#f7f7f7;padding:10px 10px;"> | |
| 3 | + <div class="zhuti"> | |
| 4 | + <div style="height:58px;line-height:58px;"> | |
| 5 | + <div style="color:#0006"> <span>交易联机</span> <span style="padding:0 5px;">></span> <span | |
| 6 | + style="color:#000000e6">对账明细</span></div> | |
| 7 | + </div> | |
| 8 | + <div> | |
| 9 | + | |
| 10 | + <!-- 搜索 --> | |
| 11 | + <div class="formSearch"> | |
| 12 | + <el-form :inline="true" :model="pageindex" label-position="left"> | |
| 13 | + <el-form-item label="账单金额"> | |
| 14 | + <div> | |
| 15 | + <el-input placeholder="请输入" style="width: 168px" v-model="pageindex.minPrice"> | |
| 16 | + </el-input> | |
| 17 | + 至 | |
| 18 | + <el-input placeholder="请输入" style="width:168px" v-model="pageindex.maxPrice"> | |
| 19 | + </el-input> | |
| 20 | + </div> | |
| 21 | + </el-form-item> | |
| 22 | + | |
| 23 | + <el-form-item label="核对状态"> | |
| 24 | + <el-select v-model="pageindex.checkType" placeholder="请选择" style="width: 100px;"> | |
| 25 | + <el-option label="未对账" value="0" /> | |
| 26 | + <el-option label="平账" value="1" /> | |
| 27 | + <el-option label="金额不符" value="2" /> | |
| 28 | + </el-select> | |
| 29 | + </el-form-item> | |
| 30 | + <el-form-item> | |
| 31 | + <el-button style="background-color: #3F9B6A;color: #fff;" @click="onSubmit">查询 | |
| 32 | + </el-button> | |
| 33 | + <el-button class="buttonHover" | |
| 34 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" | |
| 35 | + @click="resetting">重置 | |
| 36 | + </el-button> | |
| 37 | + </el-form-item> | |
| 38 | + </el-form> | |
| 39 | + | |
| 40 | + </div> | |
| 41 | + <!-- 表格 --> | |
| 42 | + <el-table :data="tableData" | |
| 43 | + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}" | |
| 44 | + style="width: 100%"> | |
| 45 | + <el-table-column label="序号" min-width="4%"> | |
| 46 | + <template slot-scope="scope"> | |
| 47 | + {{scope.$index+1}} | |
| 48 | + </template> | |
| 49 | + </el-table-column> | |
| 50 | + <el-table-column prop="orderFormId" label="订单号" width="auto" min-width="10%"> | |
| 51 | + | |
| 52 | + </el-table-column> | |
| 53 | + <el-table-column prop="payId" label="交易号" width="auto" min-width="10%" show-overflow-tooltip> | |
| 54 | + | |
| 55 | + </el-table-column> | |
| 56 | + <el-table-column label="支付金额" prop="price" width="auto" min-width="12%"> | |
| 57 | + | |
| 58 | + </el-table-column> | |
| 59 | + | |
| 60 | + | |
| 61 | + <el-table-column prop="payChannel" label="支付渠道" width="auto" min-width="10%"> | |
| 62 | + | |
| 63 | + </el-table-column> | |
| 64 | + | |
| 65 | + <el-table-column prop="payTime" label="支付完成时间" width="auto" min-width="10%" show-overflow-tooltip> | |
| 66 | + <template slot-scope="scope"> | |
| 67 | + {{formatIsoToDateTime(scope.row.payTime)}} | |
| 68 | + </template> | |
| 69 | + </el-table-column> | |
| 70 | + <el-table-column prop="reconciliationTime" label="对账日期" width="auto" min-width="10%" show-overflow-tooltip> | |
| 71 | + | |
| 72 | + <template slot-scope="scope"> | |
| 73 | + {{formatIsoToDateTime(scope.row.reconciliationTime)}} | |
| 74 | + </template> | |
| 75 | + </el-table-column> | |
| 76 | + <el-table-column prop="checkType" label="核对状态" width="auto" min-width="10%"> | |
| 77 | +<template slot-scope="scope"> | |
| 78 | + {{scope.row.checkType == '0'?'未对账':scope.row.checkType == '1'?'平账':scope.row.checkType == '2'?'金额不符':''}} | |
| 79 | + </template> | |
| 80 | + </el-table-column> | |
| 81 | + | |
| 82 | + </el-table> | |
| 83 | + <div class="fenye"> | |
| 84 | + <div style="line-height: 34px">共{{total}}条</div> | |
| 85 | + <el-pagination class="pagination" :hide-on-single-page="flag" background :current-page="currentPage" | |
| 86 | + :page-sizes="[10, 20, 50, 100]" :page-size="pageSize" layout="prev, pager,next" :total="total" | |
| 87 | + @size-change="handleSizeChange" @current-change="handleCurrentChange" /> | |
| 88 | + </div> | |
| 89 | + | |
| 90 | + </div> | |
| 91 | + </div> | |
| 92 | + | |
| 93 | + </div> | |
| 186 | 94 | </template> |
| 187 | 95 | |
| 188 | 96 | <script> |
| 189 | -import {merchantQueries} from '../../../api/online.js' | |
| 190 | -export default { | |
| 191 | - data () { | |
| 192 | - return { | |
| 193 | - rules: {}, | |
| 194 | - currentPage: 1, | |
| 195 | - total: 100, | |
| 196 | - flag: false, | |
| 197 | - pageSize: 10, | |
| 198 | - ggXin: false, | |
| 199 | - tableData: [], | |
| 200 | - pageindex: { | |
| 201 | - minOrderPrice:'', | |
| 202 | - maxOrderPrice:'', | |
| 203 | - payState:'', | |
| 204 | - merchantId:'9E602E5977EC48DEA06D42C67F4C93F0', | |
| 205 | - page: 1, | |
| 206 | - limit: 10, | |
| 207 | - orderTimeStart:'2024-1-1 00:00:00', | |
| 208 | - orderTimeEnd:'', | |
| 209 | - }, | |
| 210 | - } | |
| 211 | - }, | |
| 212 | - computed: {}, | |
| 213 | - mounted(){ | |
| 214 | - this.getOrder() | |
| 215 | - }, | |
| 216 | - methods: { | |
| 217 | - async getOrder(){ | |
| 218 | - // this.getFirstDayOfYear() | |
| 219 | - this.getLastDayOfYear() | |
| 220 | - const res = await merchantQueries(this.pageindex) | |
| 221 | - this.tableData = res.data | |
| 222 | - this.total = res.data.length | |
| 223 | - | |
| 224 | - }, | |
| 225 | - getFirstDayOfYear() { | |
| 226 | - const now = new Date(); | |
| 227 | - const year = now.getFullYear(); | |
| 228 | - const firstDay = new Date(year, 0, 1, 0, 0, 0, 0); | |
| 229 | - this.pageindex.orderTimeStart = this.formatDate(firstDay); | |
| 230 | - }, | |
| 231 | - getLastDayOfYear() { | |
| 232 | - const now = new Date() | |
| 233 | - const year = now.getFullYear() | |
| 234 | - const lastDay = new Date(year, 11, 31, 23, 59, 59, 999) | |
| 235 | - this.pageindex.orderTimeEnd = this.formatDate(lastDay) | |
| 236 | - }, | |
| 237 | - formatDate(date) { | |
| 238 | - const year = date.getFullYear() | |
| 239 | - const month = String(date.getMonth() + 1).padStart(2, '0') | |
| 240 | - const day = String(date.getDate()).padStart(2, '0') | |
| 241 | - const hours = String(date.getHours()).padStart(2, '0') | |
| 242 | - const minutes = String(date.getMinutes()).padStart(2, '0') | |
| 243 | - const seconds = String(date.getSeconds()).padStart(2, '0') | |
| 244 | - return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}` | |
| 245 | - }, | |
| 246 | - onSubmit(){ | |
| 247 | - this.getOrder() | |
| 248 | - }, | |
| 249 | - resetting(){ | |
| 250 | - | |
| 251 | - this.pageindex={ | |
| 252 | - orderNo:'', | |
| 253 | - payState:'', | |
| 254 | - merchantId:'9E602E5977EC48DEA06D42C67F4C93F0', | |
| 255 | - page: 1, | |
| 256 | - limit: 10, | |
| 257 | - minOrderPrice:'', | |
| 258 | - maxOrderPrice:'', | |
| 259 | - orderTimeStart:'', | |
| 260 | - orderTimeEnd:'', | |
| 261 | - } | |
| 262 | - this.getOrder() | |
| 263 | - | |
| 264 | - | |
| 265 | - }, | |
| 266 | - handleSizeChange(){ | |
| 267 | - | |
| 268 | - }, | |
| 269 | - handleCurrentChange(){ | |
| 270 | - | |
| 271 | - } | |
| 272 | - } | |
| 273 | -} | |
| 97 | + import { | |
| 98 | + reconciliationDetail | |
| 99 | + } from '../../../api/online.js' | |
| 100 | + export default { | |
| 101 | + data() { | |
| 102 | + return { | |
| 103 | + rules: {}, | |
| 104 | + currentPage: 1, | |
| 105 | + total: 100, | |
| 106 | + flag: false, | |
| 107 | + pageSize: 10, | |
| 108 | + ggXin: false, | |
| 109 | + tableData: [], | |
| 110 | + pageindex: { | |
| 111 | + minPrice: '', | |
| 112 | + maxPrice: '', | |
| 113 | + checkType: '', | |
| 114 | + pageSize: 10, | |
| 115 | + pageNumber: 0, | |
| 116 | + }, | |
| 117 | + } | |
| 118 | + }, | |
| 119 | + computed: {}, | |
| 120 | + mounted() { | |
| 121 | + this.getOrder() | |
| 122 | + }, | |
| 123 | + methods: { | |
| 124 | + async getOrder() { | |
| 125 | + // this.getFirstDayOfYear() | |
| 126 | + // this.getLastDayOfYear() | |
| 127 | + const res = await reconciliationDetail(this.pageindex) | |
| 128 | + this.tableData = res.data.content | |
| 129 | + this.total = res.data.totalElements | |
| 130 | + | |
| 131 | + }, | |
| 132 | + getFirstDayOfYear() { | |
| 133 | + const now = new Date(); | |
| 134 | + const year = now.getFullYear(); | |
| 135 | + const firstDay = new Date(year, 0, 1, 0, 0, 0, 0); | |
| 136 | + this.pageindex.orderTimeStart = this.formatDate(firstDay); | |
| 137 | + }, | |
| 138 | + getLastDayOfYear() { | |
| 139 | + const now = new Date() | |
| 140 | + const year = now.getFullYear() | |
| 141 | + const lastDay = new Date(year, 11, 31, 23, 59, 59, 999) | |
| 142 | + this.pageindex.orderTimeEnd = this.formatDate(lastDay) | |
| 143 | + }, | |
| 144 | + formatDate(date) { | |
| 145 | + const year = date.getFullYear() | |
| 146 | + const month = String(date.getMonth() + 1).padStart(2, '0') | |
| 147 | + const day = String(date.getDate()).padStart(2, '0') | |
| 148 | + const hours = String(date.getHours()).padStart(2, '0') | |
| 149 | + const minutes = String(date.getMinutes()).padStart(2, '0') | |
| 150 | + const seconds = String(date.getSeconds()).padStart(2, '0') | |
| 151 | + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}` | |
| 152 | + }, | |
| 153 | + formatIsoToDateTime(isoTime) { | |
| 154 | + // 1. 空值/非法值处理 | |
| 155 | + if (!isoTime) return ''; | |
| 156 | + if (typeof isoTime !== 'string') return '时间格式错误'; | |
| 157 | + | |
| 158 | + // 2. 解析时间(兼容带时区的ISO格式,如2025-03-11T14:19:54+08:00) | |
| 159 | + const date = new Date(isoTime.replace('T', ' ').replace(/-/g, '/')); | |
| 160 | + if (isNaN(date.getTime())) return '时间格式错误'; | |
| 161 | + | |
| 162 | + // 3. 补零函数(确保两位数) | |
| 163 | + const pad = (num) => num.toString().padStart(2, '0'); | |
| 164 | + | |
| 165 | + // 4. 提取时间分量(注意:月份从0开始,需+1) | |
| 166 | + return `${date.getFullYear()}-${pad(date.getMonth() + 1)}-${pad(date.getDate())} ${pad(date.getHours())}:${pad(date.getMinutes())}:${pad(date.getSeconds())}` | |
| 167 | + // return [ | |
| 168 | + // date.getFullYear(), // 年 | |
| 169 | + // pad(date.getMonth() + 1), // 月(0→1月) | |
| 170 | + // pad(date.getDate()), // 日 | |
| 171 | + // pad(date.getHours()), // 时 | |
| 172 | + // pad(date.getMinutes()), // 分 | |
| 173 | + // pad(date.getSeconds()) // 秒 | |
| 174 | + // ].join('-').replace(/(\d{4})-(\d{2})-(\d{2})/, '$1-$2-$3 ').slice(0, 19); | |
| 175 | + // 最终格式:YYYY-MM-DD HH:mm:ss(精确到秒,共19位) | |
| 176 | + }, | |
| 177 | + onSubmit() { | |
| 178 | + this.getOrder() | |
| 179 | + }, | |
| 180 | + resetting() { | |
| 181 | + | |
| 182 | + this.pageindex = { | |
| 183 | + minPrice: '', | |
| 184 | + maxPrice: '', | |
| 185 | + checkType: '', | |
| 186 | + pageSize: 10, | |
| 187 | + pageNumber: 0, | |
| 188 | + } | |
| 189 | + this.getOrder() | |
| 190 | + | |
| 191 | + | |
| 192 | + }, | |
| 193 | + handleSizeChange() { | |
| 194 | + | |
| 195 | + }, | |
| 196 | + handleCurrentChange(val) { | |
| 197 | + this.pageindex.pageNumber = val | |
| 198 | + this.getOrder() | |
| 199 | + } | |
| 200 | + } | |
| 201 | + } | |
| 274 | 202 | </script> |
| 275 | 203 | |
| 276 | -<style scoped > | |
| 277 | -.zhuti { | |
| 278 | - padding: 0 20px 20px 20px; | |
| 279 | - min-height: calc(100vh - 50px - 20px); | |
| 280 | - background-color: #Fff; | |
| 281 | - position: relative; | |
| 282 | - } | |
| 283 | - | |
| 284 | -/deep/ .el-form-item__content { | |
| 285 | - line-height: 0; | |
| 286 | -} | |
| 287 | - | |
| 288 | -.tableBtn { | |
| 289 | - display: inline-block; | |
| 290 | - margin-right: 10px; | |
| 291 | -} | |
| 292 | - | |
| 293 | -::v-deep .formSearch { | |
| 294 | - position: relative; | |
| 295 | - margin-bottom: 20px; | |
| 296 | - display: flex; | |
| 297 | - width: 100%; | |
| 298 | - height: 30px; | |
| 299 | - font-size: 12px; | |
| 300 | - justify-content: space-between; | |
| 301 | - .el-form-item__label{ | |
| 302 | - line-height: 28px; | |
| 303 | - font-size: 12px; | |
| 304 | - color: #000; | |
| 305 | - font-weight: 100; | |
| 306 | - } | |
| 307 | -} | |
| 308 | - | |
| 309 | -.greens { | |
| 310 | - color: #3F9B6A; | |
| 311 | -} | |
| 312 | - | |
| 313 | -/deep/ .el-table__row { | |
| 314 | - font-size: 14px; | |
| 315 | -} | |
| 316 | - | |
| 317 | -.fenye { | |
| 318 | - margin-top: 20px; | |
| 319 | - display: flex; | |
| 320 | - justify-content: flex-start; | |
| 321 | - position: relative; | |
| 322 | -} | |
| 323 | - | |
| 324 | -/deep/ .el-pagination.is-background .el-pager li:not(.disabled).active { | |
| 325 | - background-color: #3F9B6A; | |
| 326 | -} | |
| 327 | - | |
| 328 | -.el-row { | |
| 329 | - margin-bottom: 20px; | |
| 330 | -} | |
| 331 | -:last-child { | |
| 332 | - margin-bottom: 0; | |
| 333 | -} | |
| 334 | - | |
| 335 | -.el-col { | |
| 336 | - border-radius: 4px; | |
| 337 | -} | |
| 338 | - | |
| 339 | -.bg-purple-dark { | |
| 340 | - background: #99a9bf; | |
| 341 | -} | |
| 342 | - | |
| 343 | -.bg-purple { | |
| 344 | - background: #d3dce6; | |
| 345 | -} | |
| 346 | - | |
| 347 | -.bg-purple-light { | |
| 348 | - background: #e5e9f2; | |
| 349 | -} | |
| 350 | - | |
| 351 | -.grid-content { | |
| 352 | - border-radius: 4px; | |
| 353 | - min-height: 36px; | |
| 354 | -} | |
| 355 | - | |
| 356 | -.row-bg { | |
| 357 | - padding: 10px 0; | |
| 358 | - background-color: #f9fafc; | |
| 359 | -} | |
| 360 | - | |
| 361 | -/deep/ .bg-purple[data-v-0e3fe4ec] { | |
| 362 | - background: #fff; | |
| 363 | - height: 50px; | |
| 364 | -} | |
| 365 | - | |
| 366 | -/deep/ .el-form--label-top .el-form-item__label { | |
| 367 | - padding: 0; | |
| 368 | -} | |
| 369 | -.demo-input-suffix{ | |
| 370 | - display: flex; | |
| 371 | - margin-right: 20px; | |
| 372 | -} | |
| 373 | -.pagination{ | |
| 374 | - text-align:right; | |
| 375 | - line-height: 20px; | |
| 376 | -} | |
| 377 | -/deep/ .el-pagination__total{ | |
| 378 | - margin-top:4px; | |
| 379 | -} | |
| 380 | -/deep/ .btn-prev{ | |
| 381 | - position:absolute ; | |
| 382 | - top: 4px; | |
| 383 | - right: 266px; | |
| 384 | -} | |
| 385 | -/deep/ .el-pager{ | |
| 386 | - position:absolute ; | |
| 387 | - top: 4px; | |
| 388 | - right: 40px; | |
| 389 | -} | |
| 390 | -/deep/ .btn-next{ | |
| 391 | - position:absolute; | |
| 392 | - top: 4px; | |
| 393 | - right: 10px; | |
| 394 | -} | |
| 395 | -::v-deep .btn .el-button:focus, | |
| 396 | -.el-button:hover { | |
| 397 | - border: 1px solid #3F9B6A; | |
| 398 | -} | |
| 399 | - ::v-deep .el-select .el-input.is-focus .el-input__inner{ | |
| 400 | - border-color:#3F9B6A | |
| 401 | - } | |
| 402 | - ::v-deep .dialog_css_Xq{ | |
| 403 | - .el-dialog__header{ | |
| 404 | - background-color:#fafafa; | |
| 405 | - | |
| 406 | - } | |
| 407 | - .el-dialog__title{ | |
| 408 | - color:#000 | |
| 409 | - } | |
| 410 | - } | |
| 411 | -</style> | |
| 204 | +<style scoped> | |
| 205 | + .zhuti { | |
| 206 | + padding: 0 20px 20px 20px; | |
| 207 | + min-height: calc(100vh - 50px - 20px); | |
| 208 | + background-color: #Fff; | |
| 209 | + position: relative; | |
| 210 | + } | |
| 211 | + | |
| 212 | + /deep/ .el-form-item__content { | |
| 213 | + line-height: 0; | |
| 214 | + } | |
| 215 | + | |
| 216 | + .tableBtn { | |
| 217 | + display: inline-block; | |
| 218 | + margin-right: 10px; | |
| 219 | + } | |
| 220 | + | |
| 221 | + ::v-deep .formSearch { | |
| 222 | + position: relative; | |
| 223 | + margin-bottom: 20px; | |
| 224 | + display: flex; | |
| 225 | + width: 100%; | |
| 226 | + height: 30px; | |
| 227 | + font-size: 14px; | |
| 228 | + justify-content: space-between; | |
| 229 | + | |
| 230 | + } | |
| 231 | + | |
| 232 | + .greens { | |
| 233 | + color: #3F9B6A; | |
| 234 | + } | |
| 235 | + | |
| 236 | + /deep/ .el-table__row { | |
| 237 | + font-size: 14px; | |
| 238 | + } | |
| 239 | + | |
| 240 | + .fenye { | |
| 241 | + margin-top: 20px; | |
| 242 | + display: flex; | |
| 243 | + justify-content: space-between; | |
| 244 | + position: relative; | |
| 245 | + } | |
| 246 | + | |
| 247 | + /deep/ .el-pagination.is-background .el-pager li:not(.disabled).active { | |
| 248 | + background-color: #3F9B6A; | |
| 249 | + } | |
| 250 | + | |
| 251 | + .el-row { | |
| 252 | + margin-bottom: 20px; | |
| 253 | + } | |
| 254 | + | |
| 255 | + :last-child { | |
| 256 | + margin-bottom: 0; | |
| 257 | + } | |
| 258 | + | |
| 259 | + .el-col { | |
| 260 | + border-radius: 4px; | |
| 261 | + } | |
| 262 | + | |
| 263 | + .bg-purple-dark { | |
| 264 | + background: #99a9bf; | |
| 265 | + } | |
| 266 | + | |
| 267 | + .bg-purple { | |
| 268 | + background: #d3dce6; | |
| 269 | + } | |
| 270 | + | |
| 271 | + .bg-purple-light { | |
| 272 | + background: #e5e9f2; | |
| 273 | + } | |
| 274 | + | |
| 275 | + .grid-content { | |
| 276 | + border-radius: 4px; | |
| 277 | + min-height: 36px; | |
| 278 | + } | |
| 279 | + | |
| 280 | + .row-bg { | |
| 281 | + padding: 10px 0; | |
| 282 | + background-color: #f9fafc; | |
| 283 | + } | |
| 284 | + | |
| 285 | + /deep/ .bg-purple[data-v-0e3fe4ec] { | |
| 286 | + background: #fff; | |
| 287 | + height: 50px; | |
| 288 | + } | |
| 289 | + | |
| 290 | + /deep/ .el-form--label-top .el-form-item__label { | |
| 291 | + padding: 0; | |
| 292 | + } | |
| 293 | + | |
| 294 | + .demo-input-suffix { | |
| 295 | + display: flex; | |
| 296 | + margin-right: 20px; | |
| 297 | + } | |
| 298 | + | |
| 299 | + .pagination { | |
| 300 | + text-align: right; | |
| 301 | + line-height: 20px; | |
| 302 | + } | |
| 303 | + | |
| 304 | + ::v-deep .btn .el-button:focus, | |
| 305 | + .el-button:hover { | |
| 306 | + border: 1px solid #3F9B6A; | |
| 307 | + } | |
| 308 | + | |
| 309 | + ::v-deep .el-select .el-input.is-focus .el-input__inner { | |
| 310 | + border-color: #3F9B6A | |
| 311 | + } | |
| 312 | + | |
| 313 | + ::v-deep .dialog_css_Xq { | |
| 314 | + .el-dialog__header { | |
| 315 | + background-color: #fafafa; | |
| 316 | + | |
| 317 | + } | |
| 318 | + | |
| 319 | + .el-dialog__title { | |
| 320 | + color: #000 | |
| 321 | + } | |
| 322 | + } | |
| 323 | +</style> | |
| 412 | 324 | \ No newline at end of file | ... | ... |
admin-web-master/src/views/online/reconciliationProcessing/index.vue
| ... | ... | @@ -115,7 +115,7 @@ |
| 115 | 115 | </template> |
| 116 | 116 | </el-table-column> |
| 117 | 117 | |
| 118 | - <el-table-column label="操作" show-overflow-tooltip> | |
| 118 | + <el-table-column label="操作"> | |
| 119 | 119 | <template slot-scope="scope"> |
| 120 | 120 | <div class="btnList"> |
| 121 | 121 | <div class="tableBtn greens" @click="addbuss(scope.row)" v-if="scope.row.isReconciliation == 0" >对账</div> |
| ... | ... | @@ -144,8 +144,8 @@ |
| 144 | 144 | </template> |
| 145 | 145 | |
| 146 | 146 | <script> |
| 147 | -import {merchantQueries,reconciliation,excelGetAll} from '../../../api/online.js' | |
| 148 | -import { orderGetAll , orderExport} from '@/api/order' | |
| 147 | +import {merchantQueries,reconciliation,excelGetAll,orderGetAll} from '../../../api/online.js' | |
| 148 | +import { orderExport} from '@/api/order' | |
| 149 | 149 | export default { |
| 150 | 150 | data () { |
| 151 | 151 | return { |
| ... | ... | @@ -153,7 +153,7 @@ export default { |
| 153 | 153 | formInline: { |
| 154 | 154 | searchType: '1', |
| 155 | 155 | search: '', // 搜索字段 |
| 156 | - state: '4', | |
| 156 | + state: [2,3,4], | |
| 157 | 157 | // afterState: '', // 售后状态 0-无售后 1-售后中 2-售后成功 3-售后关闭 |
| 158 | 158 | dates: [], // 下单时间数组 |
| 159 | 159 | page: 1, |
| ... | ... | @@ -242,13 +242,9 @@ getFirstDayOfYear() { |
| 242 | 242 | }, |
| 243 | 243 | addbuss(item) { |
| 244 | 244 | let obj ={ |
| 245 | - orderNo:item.orderFormid, | |
| 246 | - payState:"", | |
| 247 | - merchantId:"9E602E5977EC48DEA06D42C67F4C93F0", | |
| 248 | - page:1, | |
| 249 | - limit:10, | |
| 250 | - orderTimeStart:this.orderTimeStart, | |
| 251 | - orderTimeEnd:this.orderTimeEnd | |
| 245 | + merchantId: "9E602E5977EC48DEA06D42C67F4C93F0", | |
| 246 | + payId: item.payId | |
| 247 | + | |
| 252 | 248 | } |
| 253 | 249 | const h = this.$createElement; |
| 254 | 250 | this.$msgbox({ |
| ... | ... | @@ -304,7 +300,7 @@ getFirstDayOfYear() { |
| 304 | 300 | |
| 305 | 301 | searchType: '1', |
| 306 | 302 | search: '', // 搜索字段 |
| 307 | - state: '4', | |
| 303 | + state: [2,3,4], | |
| 308 | 304 | // afterState: '', // 售后状态 0-无售后 1-售后中 2-售后成功 3-售后关闭 |
| 309 | 305 | dates: [], // 下单时间数组 |
| 310 | 306 | page: 1, | ... | ... |
admin-web-master/src/views/online/reportDownload/index.vue
| ... | ... | @@ -14,7 +14,7 @@ |
| 14 | 14 | > |
| 15 | 15 | <el-form-item label="支付状态"> |
| 16 | 16 | <el-select |
| 17 | - v-model="pageindex.payState" | |
| 17 | + v-model="pageindex.payStatus" | |
| 18 | 18 | placeholder="请选择" |
| 19 | 19 | style="width: 168px;" |
| 20 | 20 | > |
| ... | ... | @@ -24,8 +24,8 @@ |
| 24 | 24 | <el-form-item label="选择日期"> |
| 25 | 25 | <el-date-picker |
| 26 | 26 | v-model="createDate" |
| 27 | - type="datetimerange" | |
| 28 | - value-format="yyyy-MM-dd HH:mm:ss" | |
| 27 | + type="daterange" | |
| 28 | + value-format="yyyy-MM-dd" | |
| 29 | 29 | style="width: 200px;" |
| 30 | 30 | range-separator="至" |
| 31 | 31 | start-placeholder="开始日期" |
| ... | ... | @@ -75,7 +75,7 @@ |
| 75 | 75 | </el-table-column> |
| 76 | 76 | <el-table-column |
| 77 | 77 | label="订单号" |
| 78 | - prop="orderNo" | |
| 78 | + prop="orderFormId" | |
| 79 | 79 | width="auto" |
| 80 | 80 | min-width="12%" |
| 81 | 81 | > |
| ... | ... | @@ -85,42 +85,45 @@ |
| 85 | 85 | prop="payId" |
| 86 | 86 | width="auto" |
| 87 | 87 | min-width="12%" |
| 88 | + show-overflow-tooltip | |
| 88 | 89 | > |
| 89 | 90 | </el-table-column> |
| 90 | 91 | <el-table-column |
| 91 | 92 | label="账单金额" |
| 92 | - prop="realAmount" | |
| 93 | + prop="price" | |
| 93 | 94 | width="auto" |
| 94 | 95 | min-width="12%" |
| 95 | 96 | > |
| 96 | 97 | </el-table-column> |
| 97 | 98 | <el-table-column |
| 98 | 99 | label="平台流水" |
| 99 | - prop="realAmount" | |
| 100 | + prop="realPrice" | |
| 100 | 101 | width="auto" |
| 101 | - min-width="5%" | |
| 102 | + min-width="7%" | |
| 102 | 103 | > |
| 103 | 104 | |
| 104 | 105 | </el-table-column> |
| 105 | 106 | <el-table-column |
| 106 | 107 | label="交易流水" |
| 107 | - prop="realAmount" | |
| 108 | + prop="realPrice" | |
| 108 | 109 | width="auto" |
| 109 | - min-width="10%" | |
| 110 | + min-width="7%" | |
| 110 | 111 | |
| 111 | 112 | > |
| 112 | 113 | </el-table-column> |
| 113 | 114 | <el-table-column |
| 114 | - prop="createDate" | |
| 115 | + prop="payTime" | |
| 115 | 116 | label="支付时间" |
| 116 | 117 | width="auto" |
| 117 | 118 | min-width="10%" |
| 118 | - | |
| 119 | + show-overflow-tooltip | |
| 119 | 120 | > |
| 120 | - | |
| 121 | + <template slot-scope="scope"> | |
| 122 | + {{formatIsoToDateTime(scope.row.payTime)}} | |
| 123 | + </template> | |
| 121 | 124 | </el-table-column> |
| 122 | 125 | <el-table-column |
| 123 | - prop="channel" | |
| 126 | + prop="payChannel" | |
| 124 | 127 | label="支付方式" |
| 125 | 128 | width="auto" |
| 126 | 129 | min-width="10%" |
| ... | ... | @@ -128,19 +131,9 @@ |
| 128 | 131 | > |
| 129 | 132 | |
| 130 | 133 | </el-table-column> |
| 131 | -<el-table-column | |
| 132 | - prop="body" | |
| 133 | - label="营业点" | |
| 134 | - width="auto" | |
| 135 | - min-width="10%" | |
| 136 | - | |
| 137 | - > | |
| 138 | - | |
| 139 | - </el-table-column> | |
| 140 | - | |
| 141 | 134 | |
| 142 | 135 | <el-table-column |
| 143 | - prop="payState" | |
| 136 | + prop="payStatus" | |
| 144 | 137 | label="交易状态" |
| 145 | 138 | width="auto" |
| 146 | 139 | min-width="10%" |
| ... | ... | @@ -150,22 +143,21 @@ |
| 150 | 143 | </el-table-column> |
| 151 | 144 | |
| 152 | 145 | </el-table> |
| 153 | - <!-- <div class="fenye"> | |
| 154 | - <div style="line-height: 34px">显示第1到第10条记录</div> | |
| 146 | + <div class="fenye"> | |
| 147 | + <div style="line-height: 34px">共{{total}}条</div> | |
| 155 | 148 | <el-pagination |
| 156 | 149 | class="pagination" |
| 157 | 150 | :hide-on-single-page="flag" |
| 158 | 151 | background |
| 159 | - small | |
| 160 | - :current-page="currentPage" | |
| 152 | + :current-page="pageindex.pageNumber+1" | |
| 161 | 153 | :page-sizes="[10, 20, 50, 100]" |
| 162 | - :page-size="pageSize" | |
| 163 | - layout="total,sizes,prev, pager,next" | |
| 164 | - :total="total " | |
| 154 | + :page-size="pageindex.pageSize" | |
| 155 | + layout="prev, pager,next" | |
| 156 | + :total="total" | |
| 165 | 157 | @size-change="handleSizeChange" |
| 166 | 158 | @current-change="handleCurrentChange" |
| 167 | 159 | /> |
| 168 | - </div> --> | |
| 160 | + </div> | |
| 169 | 161 | |
| 170 | 162 | </div> |
| 171 | 163 | </div> |
| ... | ... | @@ -174,26 +166,20 @@ |
| 174 | 166 | </template> |
| 175 | 167 | |
| 176 | 168 | <script> |
| 177 | -import {merchantQueries,excelMerchantQueriesOrderDetails} from '../../../api/online.js' | |
| 169 | +import {reportDownload,excelMerchantQueriesOrderDetails} from '../../../api/online.js' | |
| 178 | 170 | export default { |
| 179 | 171 | data () { |
| 180 | 172 | return { |
| 181 | - currentPage: 1, | |
| 182 | - total: 100, | |
| 173 | + total: 0, | |
| 183 | 174 | flag: false, |
| 184 | - pageSize: 10, | |
| 185 | - activeName: 'zfb', | |
| 186 | - tabTitle:'', | |
| 187 | 175 | tableData: [], |
| 188 | 176 | createDate:[], |
| 189 | 177 | pageindex: { |
| 190 | - payState:'', | |
| 191 | - createDate:'', | |
| 192 | - merchantId:'9E602E5977EC48DEA06D42C67F4C93F0', | |
| 193 | - page: 1, | |
| 194 | - limit: 10, | |
| 195 | - orderTimeStart:'2024-1-1 00:00:00', | |
| 196 | - orderTimeEnd:'', | |
| 178 | + payStatus:'', | |
| 179 | + pageSize: 10, | |
| 180 | + pageNumber: 0, | |
| 181 | + startTime:'', | |
| 182 | + endTime:'', | |
| 197 | 183 | }, |
| 198 | 184 | } |
| 199 | 185 | }, |
| ... | ... | @@ -203,37 +189,12 @@ export default { |
| 203 | 189 | }, |
| 204 | 190 | methods: { |
| 205 | 191 | async getOrder(){ |
| 206 | - // this.getFirstDayOfYear() | |
| 207 | - this.getLastDayOfYear() | |
| 208 | - const res = await merchantQueries(this.pageindex) | |
| 209 | - this.tableData = res.data | |
| 210 | - this.total = res.data.length | |
| 192 | + const res = await reportDownload(this.pageindex) | |
| 193 | + this.tableData = res.data.content | |
| 194 | + this.total = res.data.totalElements | |
| 211 | 195 | |
| 212 | 196 | }, |
| 213 | - getFirstDayOfYear() { | |
| 214 | - const now = new Date(); | |
| 215 | - const year = now.getFullYear(); | |
| 216 | - const firstDay = new Date(year, 0, 1, 0, 0, 0, 0); | |
| 217 | - this.pageindex.orderTimeStart = this.formatDate(firstDay); | |
| 218 | - }, | |
| 219 | - getLastDayOfYear() { | |
| 220 | - const now = new Date() | |
| 221 | - const year = now.getFullYear() | |
| 222 | - const lastDay = new Date(year, 11, 31, 23, 59, 59, 999) | |
| 223 | - this.pageindex.orderTimeEnd = this.formatDate(lastDay) | |
| 224 | - }, | |
| 225 | - formatDate(date) { | |
| 226 | - const year = date.getFullYear() | |
| 227 | - const month = String(date.getMonth() + 1).padStart(2, '0') | |
| 228 | - const day = String(date.getDate()).padStart(2, '0') | |
| 229 | - const hours = String(date.getHours()).padStart(2, '0') | |
| 230 | - const minutes = String(date.getMinutes()).padStart(2, '0') | |
| 231 | - const seconds = String(date.getSeconds()).padStart(2, '0') | |
| 232 | - return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}` | |
| 233 | - }, | |
| 234 | 197 | async downloadImage(){ |
| 235 | - this.getFirstDayOfYear() | |
| 236 | - this.getLastDayOfYear() | |
| 237 | 198 | let res = await excelMerchantQueriesOrderDetails(this.pageindex) |
| 238 | 199 | if(!res){ |
| 239 | 200 | return |
| ... | ... | @@ -267,28 +228,53 @@ export default { |
| 267 | 228 | // link.click(); // 触发点击事件 |
| 268 | 229 | // document.body.removeChild(link); // 下载完成后移除<a>标签 |
| 269 | 230 | }, |
| 231 | + formatIsoToDateTime(isoTime) { | |
| 232 | + // 1. 空值/非法值处理 | |
| 233 | + if (!isoTime) return ''; | |
| 234 | + if (typeof isoTime !== 'string') return ''; | |
| 235 | + | |
| 236 | + // 2. 解析时间(兼容带时区的ISO格式,如2025-03-11T14:19:54+08:00) | |
| 237 | + const date = new Date(isoTime.replace('T', ' ').replace(/-/g, '/')); | |
| 238 | + if (isNaN(date.getTime())) return ''; | |
| 239 | + | |
| 240 | + // 3. 补零函数(确保两位数) | |
| 241 | + const pad = (num) => num.toString().padStart(2, '0'); | |
| 242 | + | |
| 243 | + // 4. 提取时间分量(注意:月份从0开始,需+1) | |
| 244 | + return `${date.getFullYear()}-${pad(date.getMonth() + 1)}-${pad(date.getDate())} ${pad(date.getHours())}:${pad(date.getMinutes())}:${pad(date.getSeconds())}` | |
| 245 | + // [ | |
| 246 | + // date.getFullYear(), // 年 | |
| 247 | + // pad(date.getMonth() + 1), // 月(0→1月) | |
| 248 | + // pad(date.getDate()), // 日 | |
| 249 | + // pad(date.getHours()), // 时 | |
| 250 | + // pad(date.getMinutes()), // 分 | |
| 251 | + // pad(date.getSeconds()) // 秒 | |
| 252 | + // ].join('-').replace(/(\d{4})-(\d{2})-(\d{2})/, '$1-$2-$3 ').slice(0, 19); | |
| 253 | + // 最终格式:YYYY-MM-DD HH:mm:ss(精确到秒,共19位) | |
| 254 | + }, | |
| 270 | 255 | handleSizeChange(){ |
| 271 | 256 | |
| 272 | 257 | }, |
| 273 | - handleCurrentChange(){ | |
| 274 | - | |
| 258 | + | |
| 259 | + handleCurrentChange(val){ | |
| 260 | + this.pageindex.pageNumber = val -1 | |
| 261 | + this.getOrder() | |
| 275 | 262 | }, |
| 276 | 263 | onSubmit(){ |
| 277 | 264 | if(this.createDate.length !=0){ |
| 278 | - this.pageindex.createDate = this.createDate.join(',') | |
| 265 | + this.pageindex.startTime =this.createDate[0] | |
| 266 | + this.pageindex.endTime =this.createDate[1] | |
| 279 | 267 | } |
| 280 | 268 | this.getOrder() |
| 281 | 269 | }, |
| 282 | 270 | resetting(){ |
| 283 | 271 | this.createDate= [], |
| 284 | 272 | this.pageindex = { |
| 285 | - payState:'', | |
| 286 | - createDate:'', | |
| 287 | - merchantId:'9E602E5977EC48DEA06D42C67F4C93F0', | |
| 288 | - page: 1, | |
| 289 | - limit: 10, | |
| 290 | - orderTimeStart:'', | |
| 291 | - orderTimeEnd:'', | |
| 273 | + payStatus:'', | |
| 274 | + pageSize: 10, | |
| 275 | + pageNumber: 0, | |
| 276 | + startTime:'', | |
| 277 | + endTime:'', | |
| 292 | 278 | } |
| 293 | 279 | this.getOrder(this.pageindex) |
| 294 | 280 | }, |
| ... | ... | @@ -339,7 +325,7 @@ export default { |
| 339 | 325 | .fenye { |
| 340 | 326 | margin-top: 20px; |
| 341 | 327 | display: flex; |
| 342 | - justify-content: flex-start; | |
| 328 | + justify-content: space-between; | |
| 343 | 329 | position: relative; |
| 344 | 330 | } |
| 345 | 331 | |
| ... | ... | @@ -396,24 +382,7 @@ export default { |
| 396 | 382 | text-align:right; |
| 397 | 383 | line-height: 20px; |
| 398 | 384 | } |
| 399 | -/deep/ .el-pagination__total{ | |
| 400 | - margin-top:4px; | |
| 401 | -} | |
| 402 | -/deep/ .btn-prev{ | |
| 403 | - position:absolute ; | |
| 404 | - top: 4px; | |
| 405 | - right: 266px; | |
| 406 | -} | |
| 407 | -/deep/ .el-pager{ | |
| 408 | - position:absolute ; | |
| 409 | - top: 4px; | |
| 410 | - right: 40px; | |
| 411 | -} | |
| 412 | -/deep/ .btn-next{ | |
| 413 | - position:absolute; | |
| 414 | - top: 4px; | |
| 415 | - right: 10px; | |
| 416 | -} | |
| 385 | + | |
| 417 | 386 | ::v-deep .btn .el-button:focus, |
| 418 | 387 | .el-button:hover { |
| 419 | 388 | border: 1px solid #3F9B6A; | ... | ... |
admin-web-master/src/views/online/summaryQuery/index.vue
| ... | ... | @@ -5,7 +5,7 @@ |
| 5 | 5 | <div style="color:#0006"> <span>联机交易</span> <span style="padding:0 5px;">></span> <span |
| 6 | 6 | style="color:#000000e6">汇总查询</span></div> |
| 7 | 7 | </div> |
| 8 | - <div class="filter-container"> | |
| 8 | + <!-- <div class="filter-container"> | |
| 9 | 9 | <div style="display:flex;justify-content: space-between;background-color: #f5f5f5;padding:10px"> |
| 10 | 10 | <div style="line-height:200%">筛选查询</div> |
| 11 | 11 | <div> |
| ... | ... | @@ -23,23 +23,14 @@ |
| 23 | 23 | |
| 24 | 24 | </el-select> |
| 25 | 25 | </el-form-item> |
| 26 | - <!-- <el-form-item label="交易项目" prop="affiliation"> | |
| 27 | - <el-select v-model="formInline.affiliation" placeholder="请选择" style="width: 168px;margin-right: 10px"> | |
| 28 | - <el-option label="1" value="1" /> | |
| 29 | - </el-select> | |
| 30 | - </el-form-item> | |
| 31 | - <el-form-item label="商户名称"> | |
| 32 | - <el-input v-model="formInline.eqwe" placeholder="请输入" | |
| 33 | - style="width: 168px;margin-right: 10px;" /> | |
| 34 | - </el-form-item> --> | |
| 35 | - | |
| 26 | + | |
| 36 | 27 | |
| 37 | 28 | </el-form> |
| 38 | 29 | </div> |
| 39 | - </div> | |
| 30 | + </div> --> | |
| 40 | 31 | |
| 41 | - <div style="display:flex;"> | |
| 42 | - <!-- <div style="width:50%"> | |
| 32 | + <!-- <div style="display:flex;"> | |
| 33 | + <div style="width:50%"> | |
| 43 | 34 | <div style="display:flex;"> |
| 44 | 35 | <div style="width:50%;padding:20px;"> |
| 45 | 36 | <div>最高营业额</div> |
| ... | ... | @@ -88,15 +79,15 @@ |
| 88 | 79 | </el-table-column> |
| 89 | 80 | </el-table> |
| 90 | 81 | </div> |
| 91 | - </div> --> | |
| 82 | + </div> | |
| 92 | 83 | |
| 93 | 84 | <div style="width:100%;"> |
| 94 | 85 | <div ref="tongji" style="height:300px"></div> |
| 95 | 86 | </div> |
| 96 | - </div> | |
| 87 | + </div> --> | |
| 97 | 88 | |
| 98 | 89 | <div style="margin-top:20px;"> |
| 99 | - <div style="padding:0 20px 20px 20px ;border-bottom:1px solid #F2F3F5">交易流水</div> | |
| 90 | + <!-- <div style="padding:0 20px 20px 20px ;border-bottom:1px solid #F2F3F5">交易流水</div> --> | |
| 100 | 91 | <!-- <div style="display:flex;padding: 10px 0"> |
| 101 | 92 | <el-form :inline="true" :model="formInline" label-width="auto"> |
| 102 | 93 | <el-form-item label="用户名"> |
| ... | ... | @@ -120,8 +111,8 @@ |
| 120 | 111 | </template> |
| 121 | 112 | </el-table-column> |
| 122 | 113 | <el-table-column |
| 123 | - label="合同编号" | |
| 124 | - prop="contractNumber" | |
| 114 | + label="商家编号" | |
| 115 | + prop="shopId" | |
| 125 | 116 | min-width="12%" |
| 126 | 117 | > |
| 127 | 118 | </el-table-column> |
| ... | ... | @@ -132,14 +123,7 @@ |
| 132 | 123 | min-width="12%" |
| 133 | 124 | > |
| 134 | 125 | </el-table-column> |
| 135 | - <el-table-column | |
| 136 | - label="品牌" | |
| 137 | - prop="name" | |
| 138 | - width="auto" | |
| 139 | - min-width="12%" | |
| 140 | - > | |
| 141 | - | |
| 142 | - </el-table-column> | |
| 126 | + | |
| 143 | 127 | <el-table-column |
| 144 | 128 | label="营业期间" |
| 145 | 129 | prop="" |
| ... | ... | @@ -152,13 +136,27 @@ |
| 152 | 136 | </el-table-column> |
| 153 | 137 | <el-table-column |
| 154 | 138 | label="营业额(元)" |
| 155 | - prop="name" | |
| 139 | + prop="price" | |
| 156 | 140 | width="auto" |
| 157 | 141 | min-width="12%" |
| 158 | 142 | > |
| 159 | 143 | |
| 160 | 144 | </el-table-column> |
| 161 | 145 | </el-table> |
| 146 | + <div class="fenye"> | |
| 147 | + <div>共{{total}}条</div> | |
| 148 | + <el-pagination | |
| 149 | + class="pagination" | |
| 150 | + :hide-on-single-page="flag" | |
| 151 | + background | |
| 152 | + :current-page="pageindex.pageNumber+1" | |
| 153 | + :page-sizes="[10, 20, 50, 100]" | |
| 154 | + :page-size="pageindex.pageSize" | |
| 155 | + layout="prev, pager,next" | |
| 156 | + :total="total" | |
| 157 | + @current-change="handleCurrentChange" | |
| 158 | + /> | |
| 159 | + </div> | |
| 162 | 160 | </div> |
| 163 | 161 | </div> |
| 164 | 162 | </div> |
| ... | ... | @@ -177,8 +175,11 @@ |
| 177 | 175 | fut: true, |
| 178 | 176 | lvdaoList:[], |
| 179 | 177 | tableData: [], |
| 178 | + total:0, | |
| 179 | + flag:false, | |
| 180 | 180 | pageindex: { |
| 181 | - belongingGreenwaySection:'LDQD0029', | |
| 181 | + pageSize:10, | |
| 182 | + pageNumber:0, | |
| 182 | 183 | }, |
| 183 | 184 | } |
| 184 | 185 | }, |
| ... | ... | @@ -190,16 +191,19 @@ |
| 190 | 191 | }, |
| 191 | 192 | methods: { |
| 192 | 193 | async getAll(){ |
| 193 | - const lvdao = await lvdaoduan() | |
| 194 | - this.lvdaoList = lvdao.data | |
| 194 | + // const lvdao = await lvdaoduan() | |
| 195 | + // this.lvdaoList = lvdao.data | |
| 195 | 196 | const res= await aggregateQuery(this.pageindex) |
| 196 | - this.tableData = res.data | |
| 197 | - | |
| 198 | - this.tong(res.data) | |
| 197 | + this.tableData = res.data.content | |
| 198 | + this.total = res.data.totalElements // this.tong(res.data) | |
| 199 | 199 | }, |
| 200 | 200 | toggleFilter() { |
| 201 | 201 | this.fut = !this.fut |
| 202 | 202 | }, |
| 203 | + handleCurrentChange(val){ | |
| 204 | + this.pageindex.pageNumber = val | |
| 205 | + this.getAll() | |
| 206 | + }, | |
| 203 | 207 | // max() { |
| 204 | 208 | // var chartDom = this.$refs.maxYe |
| 205 | 209 | // var myChart = echarts.init(chartDom); |
| ... | ... | @@ -408,6 +412,11 @@ this.getAll() |
| 408 | 412 | </script> |
| 409 | 413 | |
| 410 | 414 | <style lang="scss" scoped> |
| 415 | + .fenye { | |
| 416 | + margin-top: 20px; | |
| 417 | + display: flex; | |
| 418 | + justify-content: space-between; | |
| 419 | + } | |
| 411 | 420 | .filter-container { |
| 412 | 421 | border: 1px solid #EBEEF5; |
| 413 | 422 | ... | ... |
admin-web-master/src/views/renovation/brand/index.vue
| ... | ... | @@ -35,7 +35,7 @@ |
| 35 | 35 | label="Logo" |
| 36 | 36 | > |
| 37 | 37 | <template v-slot="scope"> |
| 38 | - <el-image :src="$baseURL+scope.row.brandLogo" :preview-src-list="[scope.row.brandLogo]" style="width: 100px;height: 100px" /> | |
| 38 | + <el-image :src="$baseURL+scope.row.brandLogo" :preview-src-list="[`${$baseURL+scope.row.brandLogo}`]" style="width: 100px;height: 100px" /> | |
| 39 | 39 | </template> |
| 40 | 40 | </el-table-column> |
| 41 | 41 | <el-table-column | ... | ... |
admin-web-master/src/views/serve/salesReport.vue
0 → 100644
| 1 | +<template> | |
| 2 | + <div style="background-color:#f7f7f7;padding:10px 10px;"> | |
| 3 | + <div class="zhuti"> | |
| 4 | + <div style="height:58px;line-height:58px;"> | |
| 5 | + <div style="color:#0006"> <span>客服服务管理</span> <span style="padding:0 5px;">></span> <span | |
| 6 | + style="color:#000000e6">销售上报</span></div> | |
| 7 | + </div> | |
| 8 | + <div> | |
| 9 | + | |
| 10 | + <!-- 搜索 --> | |
| 11 | + <div class="formSearch"> | |
| 12 | + <el-form | |
| 13 | + :inline="true" | |
| 14 | + :model="pageIndex" | |
| 15 | + | |
| 16 | + label-position="left" | |
| 17 | + > | |
| 18 | + <el-form-item label="品牌"> | |
| 19 | + <el-input | |
| 20 | + placeholder="请输入" | |
| 21 | + | |
| 22 | + v-model="pageIndex.shopName"> | |
| 23 | + </el-input> | |
| 24 | + </el-form-item> | |
| 25 | + <el-form-item label="上报状态"> | |
| 26 | + <el-select | |
| 27 | + v-model="pageIndex.isReconciliation" | |
| 28 | + placeholder="请选择" | |
| 29 | + | |
| 30 | + style="width: 100px;" | |
| 31 | + > | |
| 32 | + <el-option label="未对账" value="0" /> | |
| 33 | + <el-option label="对账成功" value="1" /> | |
| 34 | + <el-option label="对账失败" value="2" /> | |
| 35 | + | |
| 36 | + </el-select> | |
| 37 | + </el-form-item> | |
| 38 | + | |
| 39 | + | |
| 40 | + <el-form-item label="商品名称"> | |
| 41 | + <el-input | |
| 42 | + placeholder="请输入" | |
| 43 | + | |
| 44 | + v-model="pageIndex.shopName"> | |
| 45 | + </el-input> | |
| 46 | + </el-form-item> | |
| 47 | + | |
| 48 | + </el-form> | |
| 49 | + <div> | |
| 50 | + <el-button | |
| 51 | + style="background-color: #3F9B6A;color: #fff;" | |
| 52 | + @click="search" | |
| 53 | + >查询 | |
| 54 | + </el-button> | |
| 55 | + <el-button | |
| 56 | + class="buttonHover" | |
| 57 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;" | |
| 58 | + @click="resetting" | |
| 59 | + >重置 | |
| 60 | + </el-button> | |
| 61 | + </div> | |
| 62 | + </div> | |
| 63 | + <!-- <div style="padding-bottom:20px;"> | |
| 64 | + <el-button | |
| 65 | + style="background-color: #3F9B6A;color: #fff;" | |
| 66 | + @click="daochu" | |
| 67 | + >导出 | |
| 68 | + </el-button> | |
| 69 | + | |
| 70 | + </div> --> | |
| 71 | + <!-- 表格 --> | |
| 72 | + | |
| 73 | + <div class="tableBox"> | |
| 74 | + <el-table | |
| 75 | + ref="multipleTable" | |
| 76 | + :data="tableData" | |
| 77 | + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}" | |
| 78 | + tooltip-effect="dark" | |
| 79 | + | |
| 80 | + > | |
| 81 | + <el-table-column label="序号" width="150"> | |
| 82 | + <template slot-scope="scope">{{ scope.$index +1 }}</template> | |
| 83 | + </el-table-column> | |
| 84 | + <el-table-column prop="number" label="商品名称" width="100" /> | |
| 85 | + <el-table-column prop="shopName" label="品牌" width="220" show-overflow-tooltip /> | |
| 86 | + <el-table-column prop="customerName" label="商品类型" show-overflow-tooltip /> | |
| 87 | + <el-table-column prop="receiveName" label="单价" show-overflow-tooltip /> | |
| 88 | + <el-table-column prop="receivePhone" label="销售时间" show-overflow-tooltip /> | |
| 89 | + <el-table-column label="上报状态" show-overflow-tooltip> | |
| 90 | + <template slot-scope="scope"> | |
| 91 | + <span v-if="scope.row.isReconciliation == 0" >未发布</span> | |
| 92 | + <span v-if="scope.row.isReconciliation == 2" >已上报</span> | |
| 93 | + | |
| 94 | + </template> | |
| 95 | + </el-table-column> | |
| 96 | + | |
| 97 | + <el-table-column label="操作" fixed="right"> | |
| 98 | + <template slot-scope="scope"> | |
| 99 | + <div class="btnList"> | |
| 100 | + <div class="tableBtn greens" @click="addbuss(scope.row)" v-if="scope.row.isReconciliation == 0">上报</div> | |
| 101 | + <div class="tableBtn greens" @click="addbuss(scope.row)" v-if="scope.row.isReconciliation == 0">删除</div> | |
| 102 | + </div> | |
| 103 | + </template> | |
| 104 | + </el-table-column> | |
| 105 | + </el-table> | |
| 106 | + <div class="fenye"> | |
| 107 | + <el-pagination | |
| 108 | + :current-page="pageIndex.page" | |
| 109 | + :page-sizes="[10, 20, 50, 100]" | |
| 110 | + :page-size="pageIndex.pageSize" | |
| 111 | + layout="total, prev, pager, next" | |
| 112 | + background | |
| 113 | + :total="total" | |
| 114 | + @current-change="handleCurrentChange" | |
| 115 | + /> | |
| 116 | + </div> | |
| 117 | + </div> | |
| 118 | + | |
| 119 | + | |
| 120 | + </div> | |
| 121 | + </div> | |
| 122 | + | |
| 123 | + </div> | |
| 124 | +</template> | |
| 125 | + | |
| 126 | +<script> | |
| 127 | + | |
| 128 | +export default { | |
| 129 | + data () { | |
| 130 | + return { | |
| 131 | + pageIndex: { | |
| 132 | + searchType: '1', | |
| 133 | + search: '', // 搜索字段 | |
| 134 | + state: '', | |
| 135 | + page: 1, | |
| 136 | + shopName: '', | |
| 137 | + pageSize: 10 | |
| 138 | + | |
| 139 | + }, | |
| 140 | + total: 0, | |
| 141 | + flag: false, | |
| 142 | + tableData:[] | |
| 143 | + } | |
| 144 | + }, | |
| 145 | + computed: {}, | |
| 146 | + mounted(){ | |
| 147 | + | |
| 148 | + }, | |
| 149 | + methods: { | |
| 150 | + search(){ | |
| 151 | + | |
| 152 | + }, | |
| 153 | + resetting(){ | |
| 154 | + this.pageIndex={ | |
| 155 | + searchType: '1', | |
| 156 | + search: '', // 搜索字段 | |
| 157 | + state: '', | |
| 158 | + page: 1, | |
| 159 | + shopName: '', | |
| 160 | + pageSize: 10 | |
| 161 | + } | |
| 162 | + }, | |
| 163 | + handleCurrentChange(val){ | |
| 164 | + this.pageIndex.currentPage = val | |
| 165 | + } | |
| 166 | + } | |
| 167 | +} | |
| 168 | +</script> | |
| 169 | + | |
| 170 | +<style scoped > | |
| 171 | +.zhuti { | |
| 172 | + padding: 0 20px 20px 20px; | |
| 173 | + min-height: calc(100vh - 50px - 20px); | |
| 174 | + background-color: #Fff; | |
| 175 | + position: relative; | |
| 176 | + } | |
| 177 | + | |
| 178 | +/deep/ .el-form-item__content { | |
| 179 | + line-height: 0; | |
| 180 | +} | |
| 181 | + | |
| 182 | +.tableBtn { | |
| 183 | + display: inline-block; | |
| 184 | + margin-right: 10px; | |
| 185 | +} | |
| 186 | + | |
| 187 | +::v-deep .formSearch { | |
| 188 | + position: relative; | |
| 189 | + margin: 20px 0; | |
| 190 | + display: flex; | |
| 191 | + width: 100%; | |
| 192 | + font-size: 14px; | |
| 193 | + justify-content: space-between; | |
| 194 | + .el-form-item__label{ | |
| 195 | + font-size: 14px; | |
| 196 | + color: #000; | |
| 197 | + } | |
| 198 | +} | |
| 199 | + | |
| 200 | +.greens { | |
| 201 | + color: #3F9B6A; | |
| 202 | +} | |
| 203 | + | |
| 204 | + | |
| 205 | +.fenye { | |
| 206 | + margin-top: 20px; | |
| 207 | + display: flex; | |
| 208 | + justify-content: flex-start; | |
| 209 | + position: relative; | |
| 210 | +} | |
| 211 | + | |
| 212 | +/deep/ .el-pagination.is-background .el-pager li:not(.disabled).active { | |
| 213 | + background-color: #3F9B6A; | |
| 214 | +} | |
| 215 | + | |
| 216 | +.el-row { | |
| 217 | + margin-bottom: 20px; | |
| 218 | +} | |
| 219 | +:last-child { | |
| 220 | + margin-bottom: 0; | |
| 221 | +} | |
| 222 | + | |
| 223 | +.el-col { | |
| 224 | + border-radius: 4px; | |
| 225 | +} | |
| 226 | + | |
| 227 | +.bg-purple-dark { | |
| 228 | + background: #99a9bf; | |
| 229 | +} | |
| 230 | + | |
| 231 | +.bg-purple { | |
| 232 | + background: #d3dce6; | |
| 233 | +} | |
| 234 | + | |
| 235 | +.bg-purple-light { | |
| 236 | + background: #e5e9f2; | |
| 237 | +} | |
| 238 | + | |
| 239 | +.grid-content { | |
| 240 | + border-radius: 4px; | |
| 241 | + min-height: 36px; | |
| 242 | +} | |
| 243 | + | |
| 244 | +.row-bg { | |
| 245 | + padding: 10px 0; | |
| 246 | + background-color: #f9fafc; | |
| 247 | +} | |
| 248 | + | |
| 249 | +/deep/ .bg-purple[data-v-0e3fe4ec] { | |
| 250 | + background: #fff; | |
| 251 | + height: 50px; | |
| 252 | +} | |
| 253 | + | |
| 254 | +/deep/ .el-form--label-top .el-form-item__label { | |
| 255 | + padding: 0; | |
| 256 | +} | |
| 257 | +.demo-input-suffix{ | |
| 258 | + display: flex; | |
| 259 | + margin-right: 20px; | |
| 260 | +} | |
| 261 | +.pagination{ | |
| 262 | + text-align:right; | |
| 263 | + line-height: 20px; | |
| 264 | +} | |
| 265 | + | |
| 266 | +</style> | |
| 267 | +<style lang="scss" scoped> | |
| 268 | + | |
| 269 | + ::v-deep .buttonHover:hover { | |
| 270 | + color: #3f9b6a !important; | |
| 271 | + border-color: #c5e1d2 !important; | |
| 272 | + background-color: #ecf5f0 !important; | |
| 273 | + outline: none; | |
| 274 | + } | |
| 275 | + | |
| 276 | + | |
| 277 | +</style> | ... | ... |
admin-web-master/src/views/stockControl/stocksForewarn/index.vue
ceres-uniapp-master/App.vue
| ... | ... | @@ -8,10 +8,10 @@ import API from "@/config/api"; |
| 8 | 8 | |
| 9 | 9 | export default { |
| 10 | 10 | onLoad: function (options) { |
| 11 | - | |
| 12 | - | |
| 11 | + | |
| 13 | 12 | }, |
| 14 | 13 | onLaunch: function (options) { |
| 14 | + | |
| 15 | 15 | if (options.query.token) { |
| 16 | 16 | // 将 token 存入本地缓存 |
| 17 | 17 | uni.setStorageSync('storage_key', options.query); |
| ... | ... | @@ -75,6 +75,29 @@ export default { |
| 75 | 75 | isIphone: false, |
| 76 | 76 | } |
| 77 | 77 | , |
| 78 | + methods:{ | |
| 79 | + //绑定关系 | |
| 80 | + bindSalesCustomer(salesId, storeId) { | |
| 81 | + if (salesId && storeId) { | |
| 82 | + //如果已登录,静默绑定客户关系,否则跳转到登录页面 | |
| 83 | + NET.request(API.BindSalesCustomer, { | |
| 84 | + shopId: storeId, | |
| 85 | + distributorId: salesId | |
| 86 | + }, 'POST').then(res => { | |
| 87 | + uni.showToast({ | |
| 88 | + title: "绑定成功", | |
| 89 | + icon: "none" | |
| 90 | + }) | |
| 91 | + }).catch(res => { | |
| 92 | + uni.showToast({ | |
| 93 | + title: res.data.message, | |
| 94 | + icon: "none" | |
| 95 | + }) | |
| 96 | + }) | |
| 97 | + | |
| 98 | + } | |
| 99 | + } | |
| 100 | + } | |
| 78 | 101 | } |
| 79 | 102 | ; |
| 80 | 103 | </script> | ... | ... |
ceres-uniapp-master/config/api.js
| ... | ... | @@ -5,8 +5,8 @@ |
| 5 | 5 | // const DOMAIN_PREFIX = 'https://zhgw-uat.028wlkj.com/cdwlMall/meserver/api' |
| 6 | 6 | |
| 7 | 7 | const TIAOZHUAN = 'https://jy.scjysm.asia:18086/cdwlMall/' |
| 8 | -const DOMAIN_PREFIXPING = 'http://128.10.249.48:9003' | |
| 9 | -const DOMAIN_PREFIX = 'http://128.10.249.48:9007' | |
| 8 | +const DOMAIN_PREFIXPING = 'http://128.10.249.26:9003' | |
| 9 | +const DOMAIN_PREFIX = 'http://128.10.249.26:9007' | |
| 10 | 10 | // const host = `${window.location.protocol}//${window.location.host}` |
| 11 | 11 | // const DOMAIN_PREFIXPING = `${host}/cdwlMall/meserver/admin-server` |
| 12 | 12 | // const DOMAIN_PREFIX =`${host}/cdwlMall/meserver/api` | ... | ... |
ceres-uniapp-master/pages/tabbar/index/index.vue
| ... | ... | @@ -60,7 +60,7 @@ |
| 60 | 60 | </view> |
| 61 | 61 | </view> |
| 62 | 62 | <!-- #endif --> |
| 63 | - <!--<category-list @tabChange="tabChange"></category-list>--> | |
| 63 | + <!-- <category-list @tabChange="tabChange"></category-list> --> | |
| 64 | 64 | </view> |
| 65 | 65 | </u-sticky> |
| 66 | 66 | <canvas-page ref="canvasPage" |
| ... | ... | @@ -135,7 +135,28 @@ export default { |
| 135 | 135 | onReachBottom() { |
| 136 | 136 | this.HandleLoadMoreProduct() |
| 137 | 137 | }, |
| 138 | - onLoad() { | |
| 138 | + onLoad(options) { | |
| 139 | + console.log(options.phone,'phjas') | |
| 140 | + if(options.phone&&options.phone!=''){ | |
| 141 | + NET.request(API.Login, { | |
| 142 | + phone: options.phone, | |
| 143 | + verificationCode:'wGnknz0SpYZ0YkFTCqnWXDWqoNRJm3w2f3BVrUvEpbk=' | |
| 144 | + }, 'POST').then(res => { | |
| 145 | + uni.hideLoading() | |
| 146 | + const item = res.data | |
| 147 | + uni.setStorageSync('storage_key', item); | |
| 148 | + if (uni.getStorageSync("salesId")) { | |
| 149 | + NET.request(API.huiyuanList, {phone:options.phone}, 'POST').then(item => { | |
| 150 | + uni.setStorageSync('memerId', JSON.parse(item.data).data.id); | |
| 151 | + }) | |
| 152 | + let salesId = uni.getStorageSync("salesId") | |
| 153 | + let shopId = uni.getStorageSync("shopId") | |
| 154 | + this.bindSalesCustomer(salesId, shopId) | |
| 155 | + uni.removeStorageSync('salesId'); | |
| 156 | + uni.removeStorageSync('shopId'); | |
| 157 | + } | |
| 158 | + }) | |
| 159 | + } | |
| 139 | 160 | const homePageUrl = window.location.href |
| 140 | 161 | localStorage.setItem('homePageUrl', homePageUrl) |
| 141 | 162 | if (!uni.getStorageSync('storage_key')) { |
| ... | ... | @@ -160,6 +181,27 @@ export default { |
| 160 | 181 | this.topLeft = e.scrollTop |
| 161 | 182 | }, |
| 162 | 183 | methods: { |
| 184 | + //绑定关系 | |
| 185 | + bindSalesCustomer(salesId, storeId) { | |
| 186 | + if (salesId && storeId) { | |
| 187 | + //如果已登录,静默绑定客户关系,否则跳转到登录页面 | |
| 188 | + NET.request(API.BindSalesCustomer, { | |
| 189 | + shopId: storeId, | |
| 190 | + distributorId: salesId | |
| 191 | + }, 'POST').then(res => { | |
| 192 | + uni.showToast({ | |
| 193 | + title: "绑定成功", | |
| 194 | + icon: "none" | |
| 195 | + }) | |
| 196 | + }).catch(res => { | |
| 197 | + uni.showToast({ | |
| 198 | + title: res.data.message, | |
| 199 | + icon: "none" | |
| 200 | + }) | |
| 201 | + }) | |
| 202 | + | |
| 203 | + } | |
| 204 | + }, | |
| 163 | 205 | // 读取画布 |
| 164 | 206 | canvasGet() { |
| 165 | 207 | var _this = this | ... | ... |
ceres-uniapp-master/pages_category_page1/customer/chatBox.vue
| ... | ... | @@ -3,7 +3,7 @@ |
| 3 | 3 | <view class="uni-padding-wrap"> |
| 4 | 4 | <view class="" style="position:fixed;bottom: 0rpx;left: 0;width: 100%;"> |
| 5 | 5 | <form @submit="commitComments"> |
| 6 | - <view style="display: flex;"> | |
| 6 | + <view style="display: flex;justify-content: space-between;;padding: 10px;"> | |
| 7 | 7 | <input class="contentTextArea" name="commentContent" v-model="commentContent" placeholder="请输入"></input> |
| 8 | 8 | <button class="commitButton" formType="submit">发送</button> |
| 9 | 9 | </view> |
| ... | ... | @@ -43,6 +43,9 @@ |
| 43 | 43 | }, |
| 44 | 44 | mounted() { |
| 45 | 45 | }, |
| 46 | + onLoad(option) { | |
| 47 | + console.log(option.shopId) | |
| 48 | + }, | |
| 46 | 49 | methods:{ |
| 47 | 50 | |
| 48 | 51 | } |
| ... | ... | @@ -99,7 +102,7 @@ |
| 99 | 102 | } |
| 100 | 103 | |
| 101 | 104 | .uni-comment-top text { |
| 102 | - color: #0A98D5; | |
| 105 | + color: #3F9B6A; | |
| 103 | 106 | margin-right: 20rpx; |
| 104 | 107 | font-size: 24upx; |
| 105 | 108 | } |
| ... | ... | @@ -127,22 +130,24 @@ |
| 127 | 130 | } |
| 128 | 131 | .commitButton{ |
| 129 | 132 | height: 64rpx; |
| 130 | - color: white; | |
| 133 | + color: #fff; | |
| 131 | 134 | width: 20%; |
| 132 | 135 | margin: 0rpx auto; |
| 133 | 136 | font-size: 27rpx; |
| 134 | - color: #000; | |
| 135 | - background: #fff; | |
| 137 | + border-radius: 10px; | |
| 138 | + line-height: 64rpx; | |
| 139 | + background-color: #3F9B6A; | |
| 136 | 140 | } |
| 137 | 141 | .contentTextArea{ |
| 142 | + | |
| 138 | 143 | font-size: 30rpx; |
| 139 | 144 | background-color: #fff; |
| 140 | 145 | border:1rpx solid #e9e7ef; |
| 141 | 146 | border-right: 0px solid transparent; |
| 142 | - width: 80%; | |
| 147 | + width: 72%; | |
| 143 | 148 | height: 40rpx; |
| 144 | 149 | margin: 0rpx auto; |
| 145 | 150 | padding: 10rpx 0 10rpx 20rpx; |
| 146 | - border-radius: 6rpx; | |
| 151 | + border-radius: 10px; | |
| 147 | 152 | } |
| 148 | 153 | </style> |
| 149 | 154 | \ No newline at end of file | ... | ... |
ceres-uniapp-master/pages_category_page1/goodsModule/goodsDetails.vue
| 1 | 1 | <template> |
| 2 | - <view | |
| 3 | - class="container u-skeleton" | |
| 4 | - @scroll="handlePageScroll" | |
| 5 | - > | |
| 6 | - <global-loading/> | |
| 7 | - <view class=""> | |
| 8 | - <!-- 拼团滚动--> | |
| 9 | - <view class="news-box"> | |
| 10 | - <view class="news-bg"> | |
| 11 | - <swiper | |
| 12 | - class="goodsImgswiper-box" | |
| 13 | - :vertical="true" | |
| 14 | - :circular="true" | |
| 15 | - interval="8000" | |
| 16 | - duration="2000" | |
| 17 | - :autoplay="true" | |
| 18 | - > | |
| 19 | - <swiper-item | |
| 20 | - v-for="(item, index) of broadCastList" | |
| 21 | - :key="index" | |
| 22 | - > | |
| 23 | - <view class="news-item flex-items"> | |
| 24 | - <image | |
| 25 | - class="item-avatar" | |
| 26 | - :src="item.headImage" | |
| 27 | - ></image> | |
| 28 | - <view class="news-item-user">{{ item.name }}</view> | |
| 29 | - <view class="news-item-info">{{ item.timeStr }}</view> | |
| 30 | - <view | |
| 31 | - class="news-item-info" | |
| 32 | - v-if="item.type === 1" | |
| 33 | - >给了好评 | |
| 34 | - </view> | |
| 35 | - <view | |
| 36 | - class="news-item-info" | |
| 37 | - v-if="item.type === 2" | |
| 38 | - >正在拼单 | |
| 39 | - </view> | |
| 40 | - <view | |
| 41 | - class="news-item-info" | |
| 42 | - v-if="item.type === 3" | |
| 43 | - >拼单成功 | |
| 44 | - </view> | |
| 45 | - <view | |
| 46 | - class="news-item-info" | |
| 47 | - v-if="item.type === 4" | |
| 48 | - >下单 | |
| 49 | - </view> | |
| 50 | - </view> | |
| 51 | - </swiper-item> | |
| 52 | - </swiper> | |
| 53 | - </view> | |
| 54 | - </view> | |
| 55 | - | |
| 56 | - <!-- 轮播图+分享+价格名称+活动倒计时+优惠券 --> | |
| 57 | - <GoodActivityDetail | |
| 58 | - ref="goodActivityDetail" | |
| 59 | - :sku-select="selectedSku" | |
| 60 | - :product-info="productData" | |
| 61 | - :time-active-type="timeActiveType" | |
| 62 | - :mark-tools="markTools" | |
| 63 | - :shop-mark-tools="shopMarkTools" | |
| 64 | - @activityEnd="handleActivityEnd" | |
| 65 | - @couponClick="handleShowCoupon" | |
| 66 | - /> | |
| 67 | - | |
| 68 | - <!-- 发货 --> | |
| 69 | - <view class="express-box flex-items flex-row fs24 u-skeleton-fillet"> | |
| 70 | - <label class="fs24 font-color-999 mar-right-20 ">发货</label> | |
| 71 | - <image | |
| 72 | - src="https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/images/mapIcon.png" | |
| 73 | - v-if="productData.receive && productData.receive.receiveAdress" | |
| 74 | - ></image> | |
| 75 | - <label | |
| 76 | - class="mar-left-10 mapName mar-right-30" | |
| 77 | - v-if="productData.receive && productData.receive.receiveAdress" | |
| 78 | - >{{ | |
| 2 | + <view class="container u-skeleton" @scroll="handlePageScroll"> | |
| 3 | + <global-loading /> | |
| 4 | + <view class=""> | |
| 5 | + <!-- 拼团滚动--> | |
| 6 | + <view class="news-box"> | |
| 7 | + <view class="news-bg"> | |
| 8 | + <swiper class="goodsImgswiper-box" :vertical="true" :circular="true" interval="8000" duration="2000" | |
| 9 | + :autoplay="true"> | |
| 10 | + <swiper-item v-for="(item, index) of broadCastList" :key="index"> | |
| 11 | + <view class="news-item flex-items"> | |
| 12 | + <image class="item-avatar" :src="item.headImage"></image> | |
| 13 | + <view class="news-item-user">{{ item.name }}</view> | |
| 14 | + <view class="news-item-info">{{ item.timeStr }}</view> | |
| 15 | + <view class="news-item-info" v-if="item.type === 1">给了好评 | |
| 16 | + </view> | |
| 17 | + <view class="news-item-info" v-if="item.type === 2">正在拼单 | |
| 18 | + </view> | |
| 19 | + <view class="news-item-info" v-if="item.type === 3">拼单成功 | |
| 20 | + </view> | |
| 21 | + <view class="news-item-info" v-if="item.type === 4">下单 | |
| 22 | + </view> | |
| 23 | + </view> | |
| 24 | + </swiper-item> | |
| 25 | + </swiper> | |
| 26 | + </view> | |
| 27 | + </view> | |
| 28 | + | |
| 29 | + <!-- 轮播图+分享+价格名称+活动倒计时+优惠券 --> | |
| 30 | + <GoodActivityDetail ref="goodActivityDetail" :sku-select="selectedSku" :product-info="productData" | |
| 31 | + :time-active-type="timeActiveType" :mark-tools="markTools" :shop-mark-tools="shopMarkTools" | |
| 32 | + @activityEnd="handleActivityEnd" @couponClick="handleShowCoupon" /> | |
| 33 | + | |
| 34 | + <!-- 发货 --> | |
| 35 | + <view class="express-box flex-items flex-row fs24 u-skeleton-fillet"> | |
| 36 | + <label class="fs24 font-color-999 mar-right-20 ">发货</label> | |
| 37 | + <image src="https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/images/mapIcon.png" | |
| 38 | + v-if="productData.receive && productData.receive.receiveAdress"></image> | |
| 39 | + <label class="mar-left-10 mapName mar-right-30" | |
| 40 | + v-if="productData.receive && productData.receive.receiveAdress">{{ | |
| 79 | 41 | productData.receive.receiveAdress |
| 80 | 42 | }}</label> |
| 81 | - <label>快递:¥ {{ productData.logisticsPrice || 0 }}</label> | |
| 82 | - </view> | |
| 83 | - | |
| 84 | - <!-- 选择SKU --> | |
| 85 | - <view | |
| 86 | - class="fs24 chooseSize-box flex-start" | |
| 87 | - @click=" handleShowGoodsSkuSelect(6)" | |
| 88 | - > | |
| 89 | - <view class="chooseSize-content flex-items flex-row flex-sp-between u-skeleton-fillet"> | |
| 90 | - <view class="flex-row-plus "> | |
| 91 | - <label class="fs26 mar-left-30 font-color-999">选择</label> | |
| 92 | - <view class="valueBox mar-left-20 flex-items"> | |
| 93 | - <view | |
| 94 | - class="mar-right-10" | |
| 95 | - v-for="(item, index) of currentSuk" | |
| 96 | - :key="index" | |
| 97 | - >{{ item.skuText || '-' }} | |
| 98 | - </view> | |
| 99 | - </view> | |
| 100 | - </view> | |
| 101 | - <image | |
| 102 | - class="arrow-icon" | |
| 103 | - src="https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/img//user/arrow.png" | |
| 104 | - ></image> | |
| 105 | - </view> | |
| 106 | - </view> | |
| 107 | - | |
| 108 | - <!--结合销售--> | |
| 109 | - <combined-sales | |
| 110 | - :pid="productId" | |
| 111 | - :productData="productData" | |
| 112 | - ></combined-sales> | |
| 113 | - <!--拼团--> | |
| 114 | - <view | |
| 115 | - v-if="selectedSku.activityType === 1" | |
| 116 | - class="borRig-line-20" | |
| 117 | - ></view> | |
| 118 | - <!-- 拼单列表 --> | |
| 119 | - <view | |
| 120 | - v-if="selectedSku.activityType === 1&&topThreeCollageOrders.length > 0" | |
| 121 | - class="goodsDiscount" | |
| 122 | - > | |
| 123 | - <view class="questionTit mar-left-30 flex-items flex-row flex-sp-between"> | |
| 124 | - <label class="">这些人正在拼单</label> | |
| 125 | - <view class="allMoreBox"> | |
| 126 | - <view | |
| 127 | - class="allMore" | |
| 128 | - @click="handleOpenGroupBookingList" | |
| 129 | - >查看全部 | |
| 130 | - </view> | |
| 131 | - <image | |
| 132 | - class="evaluateAllArrow-icon mar-left-10" | |
| 133 | - src="https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/img//user/arrow.png" | |
| 134 | - ></image> | |
| 135 | - </view> | |
| 136 | - </view> | |
| 137 | - <view | |
| 138 | - class="groupBuy" | |
| 139 | - v-for="(Gitem, index) in topThreeCollageOrders" | |
| 140 | - :key="index" | |
| 141 | - > | |
| 142 | - <view | |
| 143 | - class="groupBuyList" | |
| 144 | - v-if="Gitem.time > 0" | |
| 145 | - > | |
| 146 | - <view class="groupBuyItem"> | |
| 147 | - <view class="leftAvatar"> | |
| 148 | - <img | |
| 149 | - :src="Gitem.headImage" | |
| 150 | - alt="" | |
| 151 | - > | |
| 152 | - <span>{{ Gitem.name }}</span> | |
| 153 | - </view> | |
| 154 | - <view class="rightInfo"> | |
| 155 | - <view | |
| 156 | - class="groupBuyTime" | |
| 157 | - style="width: 70%;" | |
| 158 | - > | |
| 159 | - <view class="needPeople flex-row-plus">还差<b>{{ Gitem.person }}人</b>拼成</view> | |
| 160 | - <view class="endDate">剩余{{ handleGetDownTime(Gitem.time) }}</view> | |
| 161 | - </view> | |
| 162 | - <view | |
| 163 | - class="groupBuyBtn" | |
| 164 | - @click="handleGoGroupBooking(Gitem.collageId)" | |
| 165 | - >和Ta拼 | |
| 166 | - </view> | |
| 167 | - </view> | |
| 168 | - </view> | |
| 169 | - </view> | |
| 170 | - </view> | |
| 171 | - </view> | |
| 172 | - <!-- 评价 --> | |
| 173 | - <GoodEvaluateAndQuestion | |
| 174 | - ref="goodEvaluateAndQuestion" | |
| 175 | - class=" u-skeleton-fillet" | |
| 176 | - :product-info="productData" | |
| 177 | - :comment-list="commentList" | |
| 178 | - /> | |
| 179 | - <!-- 店铺 --> | |
| 180 | - <view class="inStore-box flex-items flex-row flex-sp-between u-skeleton-fillet"> | |
| 181 | - <view class="flex-display flex-row"> | |
| 182 | - <view> | |
| 183 | - <image | |
| 184 | - @click="handleJumpToStore" | |
| 185 | - class="inStore-logo default-img" | |
| 186 | - :src="$baseURL+productData.shopLogo" | |
| 187 | - ></image> | |
| 188 | - </view> | |
| 189 | - <view class="flex-display flex-column mar-left-20"> | |
| 190 | - <label @click="handleJumpToStore">{{ productData.shopName }}</label> | |
| 191 | - <view class="flex-display flex-row fs24 font-color-999 mar-top-5"> | |
| 192 | - <label>商品总类:{{ productData.classifyNumber }}</label> | |
| 193 | - <label class="mar-left-30">已售:{{ productData.number }}件</label> | |
| 194 | - </view> | |
| 195 | - </view> | |
| 196 | - </view> | |
| 197 | - <view | |
| 198 | - class="inStore-but" | |
| 199 | - @click="handleJumpToStore" | |
| 200 | - >去逛逛 | |
| 201 | - </view> | |
| 202 | - </view> | |
| 203 | - <!-- 详细信息 --> | |
| 204 | - <view class="goodsDetails-box u-skeleton-fillet"> | |
| 205 | - <view class="goodsDetails-title"> | |
| 206 | - <view class="goodsDetails-Line"></view> | |
| 207 | - <label class="goodsDetails-text">宝贝详情</label> | |
| 208 | - <view class="goodsDetails-Line"></view> | |
| 209 | - </view> | |
| 210 | - <view class="goodsDetailsimg-box"> | |
| 211 | - <view class=""> | |
| 212 | - <rich-text :nodes="sellDescList"></rich-text> | |
| 213 | - </view> | |
| 214 | - </view> | |
| 215 | - </view> | |
| 216 | - </view> | |
| 217 | - <!-- 底部购买 --> | |
| 218 | - <view class="buygoods-box"> | |
| 219 | - <view | |
| 220 | - class="buygoodsBut-box flex-row-plus" | |
| 221 | - :style="{'height':(isIphone === true? 160:130)+'rpx'}" | |
| 222 | - > | |
| 223 | - <view class="btns_container"> | |
| 224 | - <view | |
| 225 | - class="btns flex-column-plus" | |
| 226 | - @click="handleJumpToStore" | |
| 227 | - > | |
| 228 | - <image | |
| 229 | - class="store-icon" | |
| 230 | - src="https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/images/storeIcon.png" | |
| 231 | - ></image> | |
| 232 | - <label class="fs22">店铺</label> | |
| 233 | - </view> | |
| 234 | - <!-- #ifdef MP-WEIXIN || APP-PLUS || H5 --> | |
| 235 | - | |
| 236 | - <!-- #endif --> | |
| 237 | - <view | |
| 238 | - class="btns flex-column-plus mar-left-10 flex-items Cart" | |
| 239 | - @click="handleJumpToShopCart" | |
| 240 | - > | |
| 241 | - <view | |
| 242 | - class="cartAllNum" | |
| 243 | - v-if="allCartNum>0" | |
| 244 | - >{{ allCartNum }} | |
| 245 | - </view> | |
| 246 | - <image | |
| 247 | - class="store-icon" | |
| 248 | - src="https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/images/gouwuche.png" | |
| 249 | - ></image> | |
| 250 | - <label class="fs22">购物车</label> | |
| 251 | - </view> | |
| 252 | - </view> | |
| 253 | - <view class="btns_container"> | |
| 254 | - <view | |
| 255 | - class="flex-row-plus offShelf" | |
| 256 | - v-if="productData.shelveState === 0" | |
| 257 | - > | |
| 258 | - 商品已下架 | |
| 259 | - </view> | |
| 260 | - <view | |
| 261 | - class="flex-row-plus flex-items" | |
| 262 | - v-else-if="selectedSku.activityType === 1" | |
| 263 | - > | |
| 264 | - <view | |
| 265 | - class="joinShopCartBut" | |
| 266 | - @click=" handleShowGoodsSkuSelect(4)" | |
| 267 | - >单独购买 | |
| 268 | - </view> | |
| 269 | - <view | |
| 270 | - class="buyNowBut" | |
| 271 | - @click=" handleShowGoodsSkuSelect(3)" | |
| 272 | - >我要开团 | |
| 273 | - </view> | |
| 274 | - </view> | |
| 275 | - <view | |
| 276 | - class="flex-row-plus flex-items" | |
| 277 | - v-else | |
| 278 | - > | |
| 279 | - <view | |
| 280 | - class="joinShopCartBut" | |
| 281 | - @click=" handleShowGoodsSkuSelect(1)" | |
| 282 | - >加入购物车 | |
| 283 | - </view> | |
| 284 | - <view | |
| 285 | - class="buyNowBut" | |
| 286 | - @click=" handleShowGoodsSkuSelect(2)" | |
| 287 | - >立即购买 | |
| 288 | - </view> | |
| 289 | - </view> | |
| 290 | - </view> | |
| 291 | - </view> | |
| 292 | - </view> | |
| 293 | - <!-- 回到顶部 --> | |
| 294 | - <view class="returnTopService-box"> | |
| 295 | - <view | |
| 296 | - class="returnTop-box flex-items-plus flex-column" | |
| 297 | - @click="handleReturnTop" | |
| 298 | - :style="{'display':(returnTopFlag===true? 'flex':'none')}" | |
| 299 | - > | |
| 300 | - <image | |
| 301 | - class="returnTopImg" | |
| 302 | - src="https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/images/backTop.png" | |
| 303 | - ></image> | |
| 304 | - </view> | |
| 305 | - </view> | |
| 306 | - <!-- SKU选择器 --> | |
| 307 | - <GoodSkuSelect | |
| 308 | - ref="skuSelect" | |
| 309 | - :product-data="productData" | |
| 310 | - :selected-sku="selectedSku" | |
| 311 | - :collage-id="collageId" | |
| 312 | - @postSelectSku="selectSkuPostProcessor" | |
| 313 | - @getCurrentSku="handleSelectSku" | |
| 314 | - @changeCartNum="(num)=>allCartNum = num" | |
| 315 | - /> | |
| 316 | - <!-- 优惠券选择器 --> | |
| 317 | - <coupon-popup | |
| 318 | - ref="couponPopup" | |
| 319 | - :markTools="markTools" | |
| 320 | - :shopMarkTools="shopMarkTools" | |
| 321 | - :setTop="topLeft" | |
| 322 | - :currentActive="0" | |
| 323 | - ></coupon-popup> | |
| 324 | - <!-- 拼单弹框 --> | |
| 325 | - <u-popup | |
| 326 | - class="popupDiscount" | |
| 327 | - v-model="showGroupBuyList" | |
| 328 | - mode="center" | |
| 329 | - border-radius="14" | |
| 330 | - close-icon-pos="top-right" | |
| 331 | - close-icon-size="20" | |
| 332 | - > | |
| 333 | - <view class="popupDiscountTit">这些人正在拼单</view> | |
| 334 | - <view class="groupBuy"> | |
| 335 | - <view class="groupBuyList"> | |
| 336 | - <scroll-view | |
| 337 | - style="height: 480upx;" | |
| 338 | - scroll-y | |
| 339 | - > | |
| 340 | - <view | |
| 341 | - class="groupBuyItem1" | |
| 342 | - v-for="(aitem,index) in selectedSku.collageOrders" | |
| 343 | - :key="index" | |
| 344 | - > | |
| 345 | - <view | |
| 346 | - class="leftAvatar" | |
| 347 | - v-if="aitem.time > 0" | |
| 348 | - > | |
| 349 | - <img | |
| 350 | - :src="aitem.headImage" | |
| 351 | - alt="" | |
| 352 | - > | |
| 353 | - <view class="groupBuyTime"> | |
| 354 | - <view class="needPeople"><span>{{ aitem.name }}</span>还差<b>{{ aitem.person }}人</b> | |
| 355 | - </view> | |
| 356 | - <view class="endDate">剩余{{ handleGetDownTime(aitem.time) }}</view> | |
| 357 | - </view> | |
| 358 | - </view> | |
| 359 | - <view | |
| 360 | - class="rightInfo" | |
| 361 | - v-if="aitem.time > 0" | |
| 362 | - > | |
| 363 | - <view | |
| 364 | - class="groupBuyBtn" | |
| 365 | - @click="handleGoGroupBooking(aitem.collageId)" | |
| 366 | - >和Ta拼 | |
| 367 | - </view> | |
| 368 | - </view> | |
| 369 | - </view> | |
| 370 | - </scroll-view> | |
| 371 | - </view> | |
| 372 | - </view> | |
| 373 | - </u-popup> | |
| 374 | - <!-- 骨架屏 --> | |
| 375 | - <Skeleton | |
| 376 | - el-color="#efefef" | |
| 377 | - bg-color="#fff" | |
| 378 | - :loading="isFirstComeIn&&loading" | |
| 379 | - :animation="true" | |
| 380 | - ></Skeleton> | |
| 381 | - </view> | |
| 43 | + <label>快递:¥ {{ productData.logisticsPrice || 0 }}</label> | |
| 44 | + </view> | |
| 45 | + | |
| 46 | + <!-- 选择SKU --> | |
| 47 | + <view class="fs24 chooseSize-box flex-start" @click=" handleShowGoodsSkuSelect(6)"> | |
| 48 | + <view class="chooseSize-content flex-items flex-row flex-sp-between u-skeleton-fillet"> | |
| 49 | + <view class="flex-row-plus "> | |
| 50 | + <label class="fs26 mar-left-30 font-color-999">选择</label> | |
| 51 | + <view class="valueBox mar-left-20 flex-items"> | |
| 52 | + <view class="mar-right-10" v-for="(item, index) of currentSuk" :key="index"> | |
| 53 | + {{ item.skuText || '-' }} | |
| 54 | + </view> | |
| 55 | + </view> | |
| 56 | + </view> | |
| 57 | + <image class="arrow-icon" | |
| 58 | + src="https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/img//user/arrow.png"> | |
| 59 | + </image> | |
| 60 | + </view> | |
| 61 | + </view> | |
| 62 | + | |
| 63 | + <!--结合销售--> | |
| 64 | + <combined-sales :pid="productId" :productData="productData"></combined-sales> | |
| 65 | + <!--拼团--> | |
| 66 | + <view v-if="selectedSku.activityType === 1" class="borRig-line-20"></view> | |
| 67 | + <!-- 拼单列表 --> | |
| 68 | + <view v-if="selectedSku.activityType === 1&&topThreeCollageOrders.length > 0" class="goodsDiscount"> | |
| 69 | + <view class="questionTit mar-left-30 flex-items flex-row flex-sp-between"> | |
| 70 | + <label class="">这些人正在拼单</label> | |
| 71 | + <view class="allMoreBox"> | |
| 72 | + <view class="allMore" @click="handleOpenGroupBookingList">查看全部 | |
| 73 | + </view> | |
| 74 | + <image class="evaluateAllArrow-icon mar-left-10" | |
| 75 | + src="https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/img//user/arrow.png"> | |
| 76 | + </image> | |
| 77 | + </view> | |
| 78 | + </view> | |
| 79 | + <view class="groupBuy" v-for="(Gitem, index) in topThreeCollageOrders" :key="index"> | |
| 80 | + <view class="groupBuyList" v-if="Gitem.time > 0"> | |
| 81 | + <view class="groupBuyItem"> | |
| 82 | + <view class="leftAvatar"> | |
| 83 | + <img :src="Gitem.headImage" alt=""> | |
| 84 | + <span>{{ Gitem.name }}</span> | |
| 85 | + </view> | |
| 86 | + <view class="rightInfo"> | |
| 87 | + <view class="groupBuyTime" style="width: 70%;"> | |
| 88 | + <view class="needPeople flex-row-plus">还差<b>{{ Gitem.person }}人</b>拼成</view> | |
| 89 | + <view class="endDate">剩余{{ handleGetDownTime(Gitem.time) }}</view> | |
| 90 | + </view> | |
| 91 | + <view class="groupBuyBtn" @click="handleGoGroupBooking(Gitem.collageId)">和Ta拼 | |
| 92 | + </view> | |
| 93 | + </view> | |
| 94 | + </view> | |
| 95 | + </view> | |
| 96 | + </view> | |
| 97 | + </view> | |
| 98 | + <!-- 评价 --> | |
| 99 | + <GoodEvaluateAndQuestion ref="goodEvaluateAndQuestion" class=" u-skeleton-fillet" | |
| 100 | + :product-info="productData" :comment-list="commentList" /> | |
| 101 | + <!-- 店铺 --> | |
| 102 | + <view class="inStore-box flex-items flex-row flex-sp-between u-skeleton-fillet"> | |
| 103 | + <view class="flex-display flex-row"> | |
| 104 | + <view> | |
| 105 | + <image @click="handleJumpToStore" class="inStore-logo default-img" | |
| 106 | + :src="$baseURL+productData.shopLogo"></image> | |
| 107 | + </view> | |
| 108 | + <view class="flex-display flex-column mar-left-20"> | |
| 109 | + <label @click="handleJumpToStore">{{ productData.shopName }}</label> | |
| 110 | + <view class="flex-display flex-row fs24 font-color-999 mar-top-5"> | |
| 111 | + <label>商品总类:{{ productData.classifyNumber }}</label> | |
| 112 | + <label class="mar-left-30">已售:{{ productData.number }}件</label> | |
| 113 | + </view> | |
| 114 | + </view> | |
| 115 | + </view> | |
| 116 | + <view class="inStore-but" @click="handleJumpToStore">去逛逛 | |
| 117 | + </view> | |
| 118 | + </view> | |
| 119 | + <!-- 详细信息 --> | |
| 120 | + <view class="goodsDetails-box u-skeleton-fillet"> | |
| 121 | + <view class="goodsDetails-title"> | |
| 122 | + <view class="goodsDetails-Line"></view> | |
| 123 | + <label class="goodsDetails-text">宝贝详情</label> | |
| 124 | + <view class="goodsDetails-Line"></view> | |
| 125 | + </view> | |
| 126 | + <view class="goodsDetailsimg-box"> | |
| 127 | + <view class=""> | |
| 128 | + <rich-text :nodes="sellDescList"></rich-text> | |
| 129 | + </view> | |
| 130 | + </view> | |
| 131 | + </view> | |
| 132 | + </view> | |
| 133 | + <!-- 底部购买 --> | |
| 134 | + <view class="buygoods-box"> | |
| 135 | + <view class="buygoodsBut-box flex-row-plus" :style="{'height':(isIphone === true? 160:130)+'rpx'}"> | |
| 136 | + <view class="btns_container"> | |
| 137 | + <view class="btns flex-column-plus" @click="handleJumpToStore"> | |
| 138 | + <image class="store-icon" | |
| 139 | + src="https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/images/storeIcon.png"> | |
| 140 | + </image> | |
| 141 | + <label class="fs22">店铺</label> | |
| 142 | + </view> | |
| 143 | + <view class="btns flex-column-plus" @click="kefu"> | |
| 144 | + <image class="store-icon" | |
| 145 | + src="https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/images/storeIcon.png"> | |
| 146 | + </image> | |
| 147 | + <label class="fs22">客服</label> | |
| 148 | + </view> | |
| 149 | + <!-- #ifdef MP-WEIXIN || APP-PLUS || H5 --> | |
| 150 | + | |
| 151 | + <!-- #endif --> | |
| 152 | + <view class="btns flex-column-plus mar-left-10 flex-items Cart" @click="handleJumpToShopCart"> | |
| 153 | + <view class="cartAllNum" v-if="allCartNum>0">{{ allCartNum }} | |
| 154 | + </view> | |
| 155 | + <image class="store-icon" | |
| 156 | + src="https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/images/gouwuche.png"> | |
| 157 | + </image> | |
| 158 | + <label class="fs22">购物车</label> | |
| 159 | + </view> | |
| 160 | + </view> | |
| 161 | + <view class="btns_container"> | |
| 162 | + <view class="flex-row-plus offShelf" v-if="productData.shelveState === 0"> | |
| 163 | + 商品已下架 | |
| 164 | + </view> | |
| 165 | + <view class="flex-row-plus flex-items" v-else-if="selectedSku.activityType === 1"> | |
| 166 | + <view class="joinShopCartBut" @click=" handleShowGoodsSkuSelect(4)">单独购买 | |
| 167 | + </view> | |
| 168 | + <view class="buyNowBut" @click=" handleShowGoodsSkuSelect(3)">我要开团 | |
| 169 | + </view> | |
| 170 | + </view> | |
| 171 | + <view class="flex-row-plus flex-items" v-else> | |
| 172 | + <view class="joinShopCartBut" @click=" handleShowGoodsSkuSelect(1)">加入购物车 | |
| 173 | + </view> | |
| 174 | + <view class="buyNowBut" @click=" handleShowGoodsSkuSelect(2)">立即购买 | |
| 175 | + </view> | |
| 176 | + </view> | |
| 177 | + </view> | |
| 178 | + </view> | |
| 179 | + </view> | |
| 180 | + <!-- 回到顶部 --> | |
| 181 | + <view class="returnTopService-box"> | |
| 182 | + <view class="returnTop-box flex-items-plus flex-column" @click="handleReturnTop" | |
| 183 | + :style="{'display':(returnTopFlag===true? 'flex':'none')}"> | |
| 184 | + <image class="returnTopImg" | |
| 185 | + src="https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/images/backTop.png"></image> | |
| 186 | + </view> | |
| 187 | + </view> | |
| 188 | + <!-- SKU选择器 --> | |
| 189 | + <GoodSkuSelect ref="skuSelect" :product-data="productData" :selected-sku="selectedSku" :collage-id="collageId" | |
| 190 | + @postSelectSku="selectSkuPostProcessor" @getCurrentSku="handleSelectSku" | |
| 191 | + @changeCartNum="(num)=>allCartNum = num" /> | |
| 192 | + <!-- 优惠券选择器 --> | |
| 193 | + <coupon-popup ref="couponPopup" :markTools="markTools" :shopMarkTools="shopMarkTools" :setTop="topLeft" | |
| 194 | + :currentActive="0"></coupon-popup> | |
| 195 | + <!-- 拼单弹框 --> | |
| 196 | + <u-popup class="popupDiscount" v-model="showGroupBuyList" mode="center" border-radius="14" | |
| 197 | + close-icon-pos="top-right" close-icon-size="20"> | |
| 198 | + <view class="popupDiscountTit">这些人正在拼单</view> | |
| 199 | + <view class="groupBuy"> | |
| 200 | + <view class="groupBuyList"> | |
| 201 | + <scroll-view style="height: 480upx;" scroll-y> | |
| 202 | + <view class="groupBuyItem1" v-for="(aitem,index) in selectedSku.collageOrders" :key="index"> | |
| 203 | + <view class="leftAvatar" v-if="aitem.time > 0"> | |
| 204 | + <img :src="aitem.headImage" alt=""> | |
| 205 | + <view class="groupBuyTime"> | |
| 206 | + <view class="needPeople"><span>{{ aitem.name }}</span>还差<b>{{ aitem.person }}人</b> | |
| 207 | + </view> | |
| 208 | + <view class="endDate">剩余{{ handleGetDownTime(aitem.time) }}</view> | |
| 209 | + </view> | |
| 210 | + </view> | |
| 211 | + <view class="rightInfo" v-if="aitem.time > 0"> | |
| 212 | + <view class="groupBuyBtn" @click="handleGoGroupBooking(aitem.collageId)">和Ta拼 | |
| 213 | + </view> | |
| 214 | + </view> | |
| 215 | + </view> | |
| 216 | + </scroll-view> | |
| 217 | + </view> | |
| 218 | + </view> | |
| 219 | + </u-popup> | |
| 220 | + <!-- 骨架屏 --> | |
| 221 | + <Skeleton el-color="#efefef" bg-color="#fff" :loading="isFirstComeIn&&loading" :animation="true"></Skeleton> | |
| 222 | + </view> | |
| 382 | 223 | </template> |
| 383 | 224 | |
| 384 | 225 | <script> |
| 385 | -import Skeleton from "../../components/Skeleton"; | |
| 386 | -import UButton from "../../uview-ui/components/u-button/u-button"; | |
| 387 | -import CombinedSales from "@/components/activities/combinedSales"; | |
| 388 | -import CouponPopup from "../../components/goodsDetalils/coupon-popup"; | |
| 389 | -import { Services } from "../../utils/services"; | |
| 390 | -import GoodEvaluateAndQuestion from "./components/GoodEvaluateAndQuestion"; | |
| 391 | -import GoodActivityDetail from "./components/GoodActivityDetail"; | |
| 392 | -import GoodSkuSelect from "./components/GoodSkuSelect"; | |
| 393 | -import { TimeFormatting } from "../../utils/timeUtil"; | |
| 394 | -import USkeleton from "../../uview-ui/components/u-skeleton/u-skeleton"; | |
| 395 | - | |
| 396 | -const NET = require('../../utils/request') | |
| 397 | -const API = require('../../config/api') | |
| 398 | -export default { | |
| 399 | - components: { | |
| 400 | - USkeleton, | |
| 401 | - Skeleton, | |
| 402 | - CouponPopup, | |
| 403 | - CombinedSales, | |
| 404 | - UButton, | |
| 405 | - GoodEvaluateAndQuestion, GoodActivityDetail, GoodSkuSelect | |
| 406 | - }, | |
| 407 | - data() { | |
| 408 | - return { | |
| 409 | - isFirstComeIn: true, | |
| 410 | - loading: true, | |
| 411 | - isIphone: "", | |
| 412 | - returnTopFlag: false, // 回到顶部 | |
| 413 | - productId: '', // 商品ID,有可能屎缓存数据 | |
| 414 | - shopGroupWorkId: null,// 拼团数据ID | |
| 415 | - topThreeCollageOrders: {}, //当前商品拼单数据 | |
| 416 | - collageId: 0, // 去拼团时的拼单ID | |
| 417 | - broadCastList: [], // 拼团滚动数据 | |
| 418 | - showGroupBuyList: false, // 是否展示拼单弹窗 | |
| 419 | - shopGroupWorkTicker: null, // 拼团倒计时定时器 | |
| 420 | - paramSkuId: null, // 秒杀商品ID | |
| 421 | - // 商品详情 | |
| 422 | - productData: {}, | |
| 423 | - // 当前选中SKU | |
| 424 | - selectedSku: {}, | |
| 425 | - currentSuk: [], // 选中的SKU(子组件给当前页面做数据渲染) | |
| 426 | - buyNum: 1,// 当前选取的SKU购买数量 | |
| 427 | - storeId: '',// 店铺ID | |
| 428 | - commentList: [], // 商品评价列表 | |
| 429 | - sellDescList: '', // 商品详情长图(富文本) | |
| 430 | - timeActiveType: true,// 是否开启活动(非则预热) | |
| 431 | - btnType: 1, // 拉起SKU窗口的按钮类型 1加入购物车 2立即购买 3开团 4单独购买 6选择SKU | |
| 432 | - allCartNum: 0, // 购物车数量 | |
| 433 | - markTools: [], //平台优惠券 | |
| 434 | - shopMarkTools: [], //店铺优惠券 | |
| 435 | - currentActive: 0, // 优惠券选项卡类型 | |
| 436 | - topLeft: 0, // 距离顶部(返回顶部使用) | |
| 437 | - // 埋点对象 | |
| 438 | - pointOption: { | |
| 439 | - inTime: null, | |
| 440 | - data: { | |
| 441 | - eventType: 1, | |
| 442 | - productIds: '', | |
| 443 | - } | |
| 444 | - } | |
| 445 | - } | |
| 446 | - }, | |
| 447 | - created() { | |
| 448 | - if (this.ticker) { //这一段是防止进入页面出去后再进来计时器重复启动 | |
| 449 | - clearInterval(this.ticker); | |
| 450 | - } | |
| 451 | - if (this.allCartNum > 99) { | |
| 452 | - this.allCartNum = '...' | |
| 453 | - } | |
| 454 | - }, | |
| 455 | - beforeDestroy() { | |
| 456 | - | |
| 457 | - | |
| 458 | - }, | |
| 459 | - onShow() { | |
| 460 | - | |
| 461 | - }, | |
| 462 | - onLoad(options) { | |
| 463 | - // 页面滚动条归0,不然骨架屏有问题 | |
| 464 | - uni.pageScrollTo({ | |
| 465 | - scrollTop:0, | |
| 466 | - duration:0 | |
| 467 | - }) | |
| 468 | - this.productData = { | |
| 469 | - logisticsPrice: 0, | |
| 470 | - images: ['123', '123', '123'], | |
| 471 | - productName: '....', | |
| 472 | - ifCollect: 1, | |
| 473 | - } | |
| 474 | - this.selectedSku = { | |
| 475 | - activityType: 0, | |
| 476 | - originalPrice: 0 | |
| 477 | - } | |
| 478 | - if(options.detail){ | |
| 479 | - options = this.$getJumpParam(options) | |
| 480 | - } | |
| 481 | - this.isFirstComeIn = true | |
| 482 | - this.loading = true | |
| 483 | - let salesId = null | |
| 484 | - this.pointOption.inTime = new Date().getTime() | |
| 485 | - this.isIphone = getApp().globalData.isIphone; | |
| 486 | - let item = getApp().globalData.productShareItem | |
| 487 | - if (item) { | |
| 488 | - const item = getApp().globalData.productShareItem | |
| 489 | - this.shopId = parseInt(item.shopId) | |
| 490 | - this.productId = item.productId | |
| 491 | - this.paramSkuId = item.skuId | |
| 492 | - salesId = parseInt(item.salesId) | |
| 493 | - getApp().globalData.productShareItem = undefined | |
| 494 | - } else { | |
| 495 | - this.shopId = parseInt(options.shopId) | |
| 496 | - this.productId = options.productId | |
| 497 | - this.paramSkuId = options.skuId | |
| 498 | - salesId = parseInt(options.salesId) | |
| 499 | - } | |
| 500 | - // 判断是否是拼团 | |
| 501 | - if (options.shopGroupWorkId) { | |
| 502 | - this.shopGroupWorkId = options.shopGroupWorkId | |
| 503 | - } | |
| 504 | - this.handleGetProductDetail() | |
| 505 | - // 绑定分销关系 | |
| 506 | - salesId && this.shopId ? this.bindSalesCustomer(salesId, this.shopId) : '' | |
| 507 | - this.allCartNum = uni.getStorageSync('allCartNum') | |
| 508 | - }, | |
| 509 | - onUnload() { | |
| 510 | - // 判断是否要埋点 | |
| 511 | - const nowTime = new Date().getTime() | |
| 512 | - if (nowTime - this.pointOption.inTime >= 5000) { | |
| 513 | - // 埋点 | |
| 514 | - this.pointOption.data.productIds = this.productId | |
| 515 | - this.$store.dispatch('doPointer', this.pointOption.data) | |
| 516 | - } | |
| 517 | - // 销毁平团倒计时计时器 | |
| 518 | - if (this.shopGroupWorkTicker) { | |
| 519 | - clearInterval(this.shopGroupWorkTicker) | |
| 520 | - this.shopGroupWorkTicker = null | |
| 521 | - } | |
| 522 | - }, | |
| 523 | - mounted() { | |
| 524 | - | |
| 525 | - }, | |
| 526 | - onPageScroll(e) { | |
| 527 | - this.returnTopFlag = e.scrollTop > 600; | |
| 528 | - this.topLeft = e.scrollTop | |
| 529 | - }, | |
| 530 | - methods: { | |
| 531 | - /** | |
| 532 | - * 页面滚动事件 | |
| 533 | - * @param e | |
| 534 | - */ | |
| 535 | - handlePageScroll(e) { | |
| 536 | - this.topLeft = e.scrollTop | |
| 537 | - }, | |
| 538 | - | |
| 539 | - /** | |
| 540 | - * 选取sku | |
| 541 | - * @param skuObj:{currentSuk:object,selectedSku:object,buyNum:number} | |
| 542 | - */ | |
| 543 | - handleSelectSku(skuObj) { | |
| 544 | - this.currentSuk = skuObj.currentSku | |
| 545 | - this.selectedSku = skuObj.skuItem | |
| 546 | - this.buyNum = skuObj.buyNum | |
| 547 | - }, | |
| 548 | - | |
| 549 | - /** | |
| 550 | - * 选择sku后置方法 | |
| 551 | - * 判断有无活动等操作 | |
| 552 | - */ | |
| 553 | - selectSkuPostProcessor() { | |
| 554 | - const ifEnable = this.selectedSku['ifEnable'] | |
| 555 | - if (this.selectedSku.activityType === 1 && ifEnable === 0) { | |
| 556 | - this.topThreeCollageOrders = this.selectedSku.collageOrders.slice(0, 3) | |
| 557 | - } | |
| 558 | - if ([1, 2, 3, 4, 5].includes(this.selectedSku.activityType) && ifEnable === 0) { | |
| 559 | - this.$refs.goodActivityDetail.handleGetCountDownNumber(this.selectedSku.endTime) | |
| 560 | - } | |
| 561 | - this.timeActiveType = ifEnable === 0; | |
| 562 | - }, | |
| 563 | - | |
| 564 | - /** | |
| 565 | - * 获取拼团滚动数据 | |
| 566 | - */ | |
| 567 | - async handleGetGroupBookingRollList() { | |
| 568 | - let param = { | |
| 569 | - productId: this.productId, | |
| 570 | - shopGroupWorkId: this.shopGroupWorkId ?? undefined, | |
| 571 | - } | |
| 572 | - const res = await NET.request(API.GetBroadCastList, param, 'GET') | |
| 573 | - this.broadCastList = res.data | |
| 574 | - }, | |
| 575 | - | |
| 576 | - /** | |
| 577 | - * 和他人拼单 | |
| 578 | - * @param collageId 已存在的拼团订单ID | |
| 579 | - */ | |
| 580 | - handleGoGroupBooking(collageId) { | |
| 581 | - this.showGroupBuyList = false | |
| 582 | - this.collageId = collageId | |
| 583 | - this.$refs.skuSelect.goodsDetailShowFlag = true | |
| 584 | - }, | |
| 585 | - | |
| 586 | - /** | |
| 587 | - * 设置拼团倒计时 | |
| 588 | - */ | |
| 589 | - handleSetDownTime() { //这个计时器是每秒减去数组中指定字段的时间 | |
| 590 | - let productHaveCollageOrder = false | |
| 591 | - // 判断sku组合中是否存在拼单 | |
| 592 | - const skuCollects = this.productData.map | |
| 593 | - for (const skuCollectItemKey in skuCollects) { | |
| 594 | - const collageOrders = skuCollects[skuCollectItemKey]['collageOrders'] | |
| 595 | - if (collageOrders && collageOrders.length > 0) { | |
| 596 | - productHaveCollageOrder = true | |
| 597 | - break | |
| 598 | - } | |
| 599 | - } | |
| 600 | - if (!productHaveCollageOrder) return | |
| 601 | - | |
| 602 | - this.shopGroupWorkTicker = setInterval(() => { | |
| 603 | - for (const skuCollectItemKey in skuCollects) { | |
| 604 | - const collageOrders = skuCollects[skuCollectItemKey]['collageOrders'] | |
| 605 | - if (collageOrders && collageOrders.length > 0) { | |
| 606 | - collageOrders.forEach(collageItem => { | |
| 607 | - collageItem.time > 0 ? collageItem.time -= 1000 : '' | |
| 608 | - }) | |
| 609 | - } | |
| 610 | - } | |
| 611 | - }, 1000); | |
| 612 | - }, | |
| 613 | - | |
| 614 | - /** | |
| 615 | - * 根据时间戳获取格式化时间(处理计时器) | |
| 616 | - * @param remainMillSecs 毫秒,还有多久结束 | |
| 617 | - * @return {string} | |
| 618 | - */ | |
| 619 | - handleGetDownTime(remainMillSecs) { | |
| 620 | - if (remainMillSecs <= 0) { | |
| 621 | - clearInterval(this.shopGroupWorkTicker) | |
| 622 | - this.shopGroupWorkTicker = null | |
| 623 | - this.handleGetProductDetail() | |
| 624 | - } | |
| 625 | - const timeFormatting = TimeFormatting(remainMillSecs / 1000); | |
| 626 | - return `${ timeFormatting.hour }:${ timeFormatting.min }:${ timeFormatting.sec }`; | |
| 627 | - }, | |
| 628 | - | |
| 629 | - /** | |
| 630 | - * 跳转到购物车 | |
| 631 | - */ | |
| 632 | - handleJumpToShopCart() { | |
| 633 | - this.$jumpToTabbar('../../pages/tabbar/cart/index') | |
| 634 | - }, | |
| 635 | - | |
| 636 | - /** | |
| 637 | - * 跳转到店铺 | |
| 638 | - */ | |
| 639 | - handleJumpToStore() { | |
| 640 | - this.$jump(`../store/index?storeId=${ this.shopId }`) | |
| 641 | - }, | |
| 642 | - | |
| 643 | - /** | |
| 644 | - * 返回头部 | |
| 645 | - */ | |
| 646 | - handleReturnTop() { | |
| 647 | - uni.pageScrollTo({ | |
| 648 | - scrollTop: 0, | |
| 649 | - duration: 300 | |
| 650 | - }); | |
| 651 | - }, | |
| 652 | - | |
| 653 | - /** | |
| 654 | - * 打开SKU弹窗 | |
| 655 | - * @param type 1加入购物车 2立即购买 3开团 4单独购买 6选择SKU | |
| 656 | - */ | |
| 657 | - handleShowGoodsSkuSelect(type) { | |
| 658 | - // 为type情况时,绝不可能为和他人拼单 | |
| 659 | - this.collageId = 0 | |
| 660 | - this.$refs.skuSelect.btnType = type | |
| 661 | - this.$refs.skuSelect.goodsDetailShowFlag = true | |
| 662 | - }, | |
| 663 | - | |
| 664 | - /** | |
| 665 | - * 打开优惠券弹窗 | |
| 666 | - */ | |
| 667 | - handleShowCoupon() { | |
| 668 | - this.$refs.couponPopup.showActivity = true | |
| 669 | - }, | |
| 670 | - | |
| 671 | - /** | |
| 672 | - * 活动商品时间到后置方法 | |
| 673 | - * 供GoodActivityDetail组件调用 | |
| 674 | - */ | |
| 675 | - handleActivityEnd() { | |
| 676 | - this.selectedSku.activityType = 0 | |
| 677 | - location.reload() | |
| 678 | - }, | |
| 679 | - | |
| 680 | - /** | |
| 681 | - * 获取商品详情 | |
| 682 | - */ | |
| 683 | - async handleGetProductDetail() { | |
| 684 | - this.loading = true | |
| 685 | - // uni.showLoading({ | |
| 686 | - // title: '加载中...', | |
| 687 | - // mask: true | |
| 688 | - // }) | |
| 689 | - try { | |
| 690 | - let postData = { | |
| 691 | - shopId: this.shopId, | |
| 692 | - productId: this.productId, | |
| 693 | - skuId: this.paramSkuId, | |
| 694 | - terminal: 1 | |
| 695 | - } | |
| 696 | - const res = await NET.request(API.QueryProductDetail, postData, "GET") | |
| 697 | - this.isFirstComeIn = false | |
| 698 | - this.loading = false | |
| 699 | - this.productData = res.data | |
| 700 | - this.markTools = res.data.markTools //平台优惠券 | |
| 701 | - console.log('平台优惠券',res.data.markTools) | |
| 702 | - this.shopMarkTools = res.data.shopMarkTools //店铺优惠券 | |
| 703 | - this.currentActive = this.markTools.length === 0 && this.shopMarkTools.length > 0 ? 1 : 0 | |
| 704 | - //处理单规格商品,如果是单款式商品,需要特殊处理productData.names | |
| 705 | - const skuCollectionList = this.productData.map | |
| 706 | - const skuCollectionListKeys = Object.keys(skuCollectionList) | |
| 707 | - if (skuCollectionListKeys.length === 1 && skuCollectionListKeys[0] === '单款项') { | |
| 708 | - this.productData.names[0].values.push({ | |
| 709 | - skuValue: this.productData.names[0].skuName, | |
| 710 | - valueCode: '单款项' | |
| 711 | - }) | |
| 712 | - } | |
| 713 | - | |
| 714 | - //如果sku的图像为空,设置为商品的图像 | |
| 715 | - for (const key in skuCollectionList) { | |
| 716 | - if (!skuCollectionList[key].image) { | |
| 717 | - skuCollectionList[key].image = this.productData.images[0] | |
| 718 | - } | |
| 719 | - } | |
| 720 | - | |
| 721 | - // 评价 | |
| 722 | - this.commentList = res.data.comments | |
| 723 | - // 宝贝详情 | |
| 724 | - this.sellDescList = res.data.text.replace(/\<img/gi, | |
| 725 | - '<img style="max-width:100%;height:auto" ') | |
| 726 | - | |
| 727 | - //渲染商详之后,如果参数传了skuId,则选中该skuId,否则选中第一个规格 | |
| 728 | - this.$nextTick(async () => { | |
| 729 | - if (this.paramSkuId) { | |
| 730 | - this.$refs.skuSelect.handleSelectBySkuId(this.paramSkuId) | |
| 731 | - } else { | |
| 732 | - // 默认选中第0个 | |
| 733 | - for (const skuRowItem of this.productData.names) { | |
| 734 | - this.$refs.skuSelect.handleClickSkuItem(skuRowItem.nameCode, skuRowItem.values[0].valueCode) | |
| 735 | - } | |
| 736 | - } | |
| 737 | - //如果是拼团,设置拼团id | |
| 738 | - if (this.productData.activityType === 1) { | |
| 739 | - this.shopGroupWorkId = this.productData.shopGroupWorkId | |
| 740 | - await this.handleGetGroupBookingRollList() | |
| 741 | - this.handleSetDownTime(); | |
| 742 | - } | |
| 743 | - await this.$refs.goodEvaluateAndQuestion.handleGetProblemList() | |
| 744 | - }) | |
| 745 | - } finally { | |
| 746 | - uni.hideLoading() | |
| 747 | - // this.loading = false | |
| 748 | - } | |
| 749 | - }, | |
| 750 | - | |
| 751 | - /** | |
| 752 | - * 绑定分销关系 | |
| 753 | - * @param salesId 分销员ID | |
| 754 | - * @param storeId 店铺ID | |
| 755 | - */ | |
| 756 | - bindSalesCustomer(salesId, storeId) { | |
| 757 | - //如果已登录,静默绑定客户关系,否则跳转到登录页面 | |
| 758 | - if (!uni.getStorageSync('storage_key')) { | |
| 759 | - uni.setStorageSync('salesId', salesId) | |
| 760 | - uni.setStorageSync("shopId", storeId) | |
| 761 | - uni.navigateTo({ | |
| 762 | - url: '../../pages_category_page2/userModule/login' | |
| 763 | - }) | |
| 764 | - return | |
| 765 | - } | |
| 766 | - NET.request(API.BindSalesCustomer, { | |
| 767 | - shopId: storeId, | |
| 768 | - distributorId: salesId | |
| 769 | - }, 'POST').then(res => { | |
| 770 | - console.log('分销关系绑定成功!') | |
| 771 | - }) | |
| 772 | - } | |
| 773 | - , | |
| 774 | - | |
| 775 | - /** | |
| 776 | - * 打开拼团列表 | |
| 777 | - */ | |
| 778 | - handleOpenGroupBookingList() { | |
| 779 | - if (this.topThreeCollageOrders.length > 0) { | |
| 780 | - this.showGroupBuyList = true | |
| 781 | - } else { | |
| 782 | - uni.showToast({ | |
| 783 | - title: "还没有人拼单,快去拼单吧!", | |
| 784 | - icon: "none" | |
| 785 | - }) | |
| 786 | - } | |
| 787 | - } | |
| 788 | - , | |
| 789 | - | |
| 790 | - /** | |
| 791 | - * 打开客服 | |
| 792 | - * @return {Promise<void>} | |
| 793 | - */ | |
| 794 | - async flyToService() { | |
| 795 | - // (await Services(this.shopId)).flyToService() | |
| 796 | - uni.navigateTo({ | |
| 797 | - url: '/pages_category_page1/customer/chatBox' | |
| 798 | - }); | |
| 799 | - } | |
| 800 | - , | |
| 801 | - | |
| 802 | - } | |
| 803 | -} | |
| 226 | + import Skeleton from "../../components/Skeleton"; | |
| 227 | + import UButton from "../../uview-ui/components/u-button/u-button"; | |
| 228 | + import CombinedSales from "@/components/activities/combinedSales"; | |
| 229 | + import CouponPopup from "../../components/goodsDetalils/coupon-popup"; | |
| 230 | + import { | |
| 231 | + Services | |
| 232 | + } from "../../utils/services"; | |
| 233 | + import GoodEvaluateAndQuestion from "./components/GoodEvaluateAndQuestion"; | |
| 234 | + import GoodActivityDetail from "./components/GoodActivityDetail"; | |
| 235 | + import GoodSkuSelect from "./components/GoodSkuSelect"; | |
| 236 | + import { | |
| 237 | + TimeFormatting | |
| 238 | + } from "../../utils/timeUtil"; | |
| 239 | + import USkeleton from "../../uview-ui/components/u-skeleton/u-skeleton"; | |
| 240 | + | |
| 241 | + const NET = require('../../utils/request') | |
| 242 | + const API = require('../../config/api') | |
| 243 | + export default { | |
| 244 | + components: { | |
| 245 | + USkeleton, | |
| 246 | + Skeleton, | |
| 247 | + CouponPopup, | |
| 248 | + CombinedSales, | |
| 249 | + UButton, | |
| 250 | + GoodEvaluateAndQuestion, | |
| 251 | + GoodActivityDetail, | |
| 252 | + GoodSkuSelect | |
| 253 | + }, | |
| 254 | + data() { | |
| 255 | + return { | |
| 256 | + isFirstComeIn: true, | |
| 257 | + loading: true, | |
| 258 | + isIphone: "", | |
| 259 | + returnTopFlag: false, // 回到顶部 | |
| 260 | + productId: '', // 商品ID,有可能屎缓存数据 | |
| 261 | + shopGroupWorkId: null, // 拼团数据ID | |
| 262 | + topThreeCollageOrders: {}, //当前商品拼单数据 | |
| 263 | + collageId: 0, // 去拼团时的拼单ID | |
| 264 | + broadCastList: [], // 拼团滚动数据 | |
| 265 | + showGroupBuyList: false, // 是否展示拼单弹窗 | |
| 266 | + shopGroupWorkTicker: null, // 拼团倒计时定时器 | |
| 267 | + paramSkuId: null, // 秒杀商品ID | |
| 268 | + // 商品详情 | |
| 269 | + productData: {}, | |
| 270 | + // 当前选中SKU | |
| 271 | + selectedSku: {}, | |
| 272 | + currentSuk: [], // 选中的SKU(子组件给当前页面做数据渲染) | |
| 273 | + buyNum: 1, // 当前选取的SKU购买数量 | |
| 274 | + storeId: '', // 店铺ID | |
| 275 | + commentList: [], // 商品评价列表 | |
| 276 | + sellDescList: '', // 商品详情长图(富文本) | |
| 277 | + timeActiveType: true, // 是否开启活动(非则预热) | |
| 278 | + btnType: 1, // 拉起SKU窗口的按钮类型 1加入购物车 2立即购买 3开团 4单独购买 6选择SKU | |
| 279 | + allCartNum: 0, // 购物车数量 | |
| 280 | + markTools: [], //平台优惠券 | |
| 281 | + shopMarkTools: [], //店铺优惠券 | |
| 282 | + currentActive: 0, // 优惠券选项卡类型 | |
| 283 | + topLeft: 0, // 距离顶部(返回顶部使用) | |
| 284 | + // 埋点对象 | |
| 285 | + pointOption: { | |
| 286 | + inTime: null, | |
| 287 | + data: { | |
| 288 | + eventType: 1, | |
| 289 | + productIds: '', | |
| 290 | + } | |
| 291 | + } | |
| 292 | + } | |
| 293 | + }, | |
| 294 | + created() { | |
| 295 | + if (this.ticker) { //这一段是防止进入页面出去后再进来计时器重复启动 | |
| 296 | + clearInterval(this.ticker); | |
| 297 | + } | |
| 298 | + if (this.allCartNum > 99) { | |
| 299 | + this.allCartNum = '...' | |
| 300 | + } | |
| 301 | + }, | |
| 302 | + beforeDestroy() { | |
| 303 | + | |
| 304 | + | |
| 305 | + }, | |
| 306 | + onShow() { | |
| 307 | + | |
| 308 | + }, | |
| 309 | + onLoad(options) { | |
| 310 | + // 页面滚动条归0,不然骨架屏有问题 | |
| 311 | + uni.pageScrollTo({ | |
| 312 | + scrollTop: 0, | |
| 313 | + duration: 0 | |
| 314 | + }) | |
| 315 | + this.productData = { | |
| 316 | + logisticsPrice: 0, | |
| 317 | + images: ['123', '123', '123'], | |
| 318 | + productName: '....', | |
| 319 | + ifCollect: 1, | |
| 320 | + } | |
| 321 | + this.selectedSku = { | |
| 322 | + activityType: 0, | |
| 323 | + originalPrice: 0 | |
| 324 | + } | |
| 325 | + if (options.detail) { | |
| 326 | + options = this.$getJumpParam(options) | |
| 327 | + } | |
| 328 | + this.isFirstComeIn = true | |
| 329 | + this.loading = true | |
| 330 | + let salesId = null | |
| 331 | + this.pointOption.inTime = new Date().getTime() | |
| 332 | + this.isIphone = getApp().globalData.isIphone; | |
| 333 | + let item = getApp().globalData.productShareItem | |
| 334 | + if (item) { | |
| 335 | + const item = getApp().globalData.productShareItem | |
| 336 | + this.shopId = parseInt(item.shopId) | |
| 337 | + this.productId = item.productId | |
| 338 | + this.paramSkuId = item.skuId | |
| 339 | + salesId = parseInt(item.salesId) | |
| 340 | + getApp().globalData.productShareItem = undefined | |
| 341 | + } else { | |
| 342 | + this.shopId = parseInt(options.shopId) | |
| 343 | + this.productId = options.productId | |
| 344 | + this.paramSkuId = options.skuId | |
| 345 | + salesId = parseInt(options.salesId) | |
| 346 | + } | |
| 347 | + // 判断是否是拼团 | |
| 348 | + if (options.shopGroupWorkId) { | |
| 349 | + this.shopGroupWorkId = options.shopGroupWorkId | |
| 350 | + } | |
| 351 | + this.handleGetProductDetail() | |
| 352 | + // 绑定分销关系 | |
| 353 | + salesId && this.shopId ? this.bindSalesCustomer(salesId, this.shopId) : '' | |
| 354 | + this.allCartNum = uni.getStorageSync('allCartNum') | |
| 355 | + }, | |
| 356 | + onUnload() { | |
| 357 | + // 判断是否要埋点 | |
| 358 | + const nowTime = new Date().getTime() | |
| 359 | + if (nowTime - this.pointOption.inTime >= 5000) { | |
| 360 | + // 埋点 | |
| 361 | + this.pointOption.data.productIds = this.productId | |
| 362 | + this.$store.dispatch('doPointer', this.pointOption.data) | |
| 363 | + } | |
| 364 | + // 销毁平团倒计时计时器 | |
| 365 | + if (this.shopGroupWorkTicker) { | |
| 366 | + clearInterval(this.shopGroupWorkTicker) | |
| 367 | + this.shopGroupWorkTicker = null | |
| 368 | + } | |
| 369 | + }, | |
| 370 | + mounted() { | |
| 371 | + | |
| 372 | + }, | |
| 373 | + onPageScroll(e) { | |
| 374 | + this.returnTopFlag = e.scrollTop > 600; | |
| 375 | + this.topLeft = e.scrollTop | |
| 376 | + }, | |
| 377 | + methods: { | |
| 378 | + /** | |
| 379 | + * 页面滚动事件 | |
| 380 | + * @param e | |
| 381 | + */ | |
| 382 | + handlePageScroll(e) { | |
| 383 | + this.topLeft = e.scrollTop | |
| 384 | + }, | |
| 385 | + | |
| 386 | + /** | |
| 387 | + * 选取sku | |
| 388 | + * @param skuObj:{currentSuk:object,selectedSku:object,buyNum:number} | |
| 389 | + */ | |
| 390 | + handleSelectSku(skuObj) { | |
| 391 | + this.currentSuk = skuObj.currentSku | |
| 392 | + this.selectedSku = skuObj.skuItem | |
| 393 | + this.buyNum = skuObj.buyNum | |
| 394 | + }, | |
| 395 | + | |
| 396 | + /** | |
| 397 | + * 选择sku后置方法 | |
| 398 | + * 判断有无活动等操作 | |
| 399 | + */ | |
| 400 | + selectSkuPostProcessor() { | |
| 401 | + const ifEnable = this.selectedSku['ifEnable'] | |
| 402 | + if (this.selectedSku.activityType === 1 && ifEnable === 0) { | |
| 403 | + this.topThreeCollageOrders = this.selectedSku.collageOrders.slice(0, 3) | |
| 404 | + } | |
| 405 | + if ([1, 2, 3, 4, 5].includes(this.selectedSku.activityType) && ifEnable === 0) { | |
| 406 | + this.$refs.goodActivityDetail.handleGetCountDownNumber(this.selectedSku.endTime) | |
| 407 | + } | |
| 408 | + this.timeActiveType = ifEnable === 0; | |
| 409 | + }, | |
| 410 | + | |
| 411 | + /** | |
| 412 | + * 获取拼团滚动数据 | |
| 413 | + */ | |
| 414 | + async handleGetGroupBookingRollList() { | |
| 415 | + let param = { | |
| 416 | + productId: this.productId, | |
| 417 | + shopGroupWorkId: this.shopGroupWorkId ?? undefined, | |
| 418 | + } | |
| 419 | + const res = await NET.request(API.GetBroadCastList, param, 'GET') | |
| 420 | + this.broadCastList = res.data | |
| 421 | + }, | |
| 422 | + | |
| 423 | + /** | |
| 424 | + * 和他人拼单 | |
| 425 | + * @param collageId 已存在的拼团订单ID | |
| 426 | + */ | |
| 427 | + handleGoGroupBooking(collageId) { | |
| 428 | + this.showGroupBuyList = false | |
| 429 | + this.collageId = collageId | |
| 430 | + this.$refs.skuSelect.goodsDetailShowFlag = true | |
| 431 | + }, | |
| 432 | + | |
| 433 | + /** | |
| 434 | + * 设置拼团倒计时 | |
| 435 | + */ | |
| 436 | + handleSetDownTime() { //这个计时器是每秒减去数组中指定字段的时间 | |
| 437 | + let productHaveCollageOrder = false | |
| 438 | + // 判断sku组合中是否存在拼单 | |
| 439 | + const skuCollects = this.productData.map | |
| 440 | + for (const skuCollectItemKey in skuCollects) { | |
| 441 | + const collageOrders = skuCollects[skuCollectItemKey]['collageOrders'] | |
| 442 | + if (collageOrders && collageOrders.length > 0) { | |
| 443 | + productHaveCollageOrder = true | |
| 444 | + break | |
| 445 | + } | |
| 446 | + } | |
| 447 | + if (!productHaveCollageOrder) return | |
| 448 | + | |
| 449 | + this.shopGroupWorkTicker = setInterval(() => { | |
| 450 | + for (const skuCollectItemKey in skuCollects) { | |
| 451 | + const collageOrders = skuCollects[skuCollectItemKey]['collageOrders'] | |
| 452 | + if (collageOrders && collageOrders.length > 0) { | |
| 453 | + collageOrders.forEach(collageItem => { | |
| 454 | + collageItem.time > 0 ? collageItem.time -= 1000 : '' | |
| 455 | + }) | |
| 456 | + } | |
| 457 | + } | |
| 458 | + }, 1000); | |
| 459 | + }, | |
| 460 | + | |
| 461 | + /** | |
| 462 | + * 根据时间戳获取格式化时间(处理计时器) | |
| 463 | + * @param remainMillSecs 毫秒,还有多久结束 | |
| 464 | + * @return {string} | |
| 465 | + */ | |
| 466 | + handleGetDownTime(remainMillSecs) { | |
| 467 | + if (remainMillSecs <= 0) { | |
| 468 | + clearInterval(this.shopGroupWorkTicker) | |
| 469 | + this.shopGroupWorkTicker = null | |
| 470 | + this.handleGetProductDetail() | |
| 471 | + } | |
| 472 | + const timeFormatting = TimeFormatting(remainMillSecs / 1000); | |
| 473 | + return `${ timeFormatting.hour }:${ timeFormatting.min }:${ timeFormatting.sec }`; | |
| 474 | + }, | |
| 475 | + | |
| 476 | + /** | |
| 477 | + * 跳转到购物车 | |
| 478 | + */ | |
| 479 | + handleJumpToShopCart() { | |
| 480 | + this.$jumpToTabbar('../../pages/tabbar/cart/index') | |
| 481 | + }, | |
| 482 | + | |
| 483 | + /** | |
| 484 | + * 跳转到店铺 | |
| 485 | + */ | |
| 486 | + handleJumpToStore() { | |
| 487 | + this.$jump(`../store/index?storeId=${ this.shopId }`) | |
| 488 | + }, | |
| 489 | + | |
| 490 | + /** | |
| 491 | + * 返回头部 | |
| 492 | + */ | |
| 493 | + handleReturnTop() { | |
| 494 | + uni.pageScrollTo({ | |
| 495 | + scrollTop: 0, | |
| 496 | + duration: 300 | |
| 497 | + }); | |
| 498 | + }, | |
| 499 | + | |
| 500 | + /** | |
| 501 | + * 打开SKU弹窗 | |
| 502 | + * @param type 1加入购物车 2立即购买 3开团 4单独购买 6选择SKU | |
| 503 | + */ | |
| 504 | + handleShowGoodsSkuSelect(type) { | |
| 505 | + // 为type情况时,绝不可能为和他人拼单 | |
| 506 | + this.collageId = 0 | |
| 507 | + this.$refs.skuSelect.btnType = type | |
| 508 | + this.$refs.skuSelect.goodsDetailShowFlag = true | |
| 509 | + }, | |
| 510 | + | |
| 511 | + /** | |
| 512 | + * 打开优惠券弹窗 | |
| 513 | + */ | |
| 514 | + handleShowCoupon() { | |
| 515 | + this.$refs.couponPopup.showActivity = true | |
| 516 | + }, | |
| 517 | + | |
| 518 | + /** | |
| 519 | + * 活动商品时间到后置方法 | |
| 520 | + * 供GoodActivityDetail组件调用 | |
| 521 | + */ | |
| 522 | + handleActivityEnd() { | |
| 523 | + this.selectedSku.activityType = 0 | |
| 524 | + location.reload() | |
| 525 | + }, | |
| 526 | + | |
| 527 | + /** | |
| 528 | + * 获取商品详情 | |
| 529 | + */ | |
| 530 | + async handleGetProductDetail() { | |
| 531 | + this.loading = true | |
| 532 | + // uni.showLoading({ | |
| 533 | + // title: '加载中...', | |
| 534 | + // mask: true | |
| 535 | + // }) | |
| 536 | + try { | |
| 537 | + let postData = { | |
| 538 | + shopId: this.shopId, | |
| 539 | + productId: this.productId, | |
| 540 | + skuId: this.paramSkuId, | |
| 541 | + terminal: 1 | |
| 542 | + } | |
| 543 | + const res = await NET.request(API.QueryProductDetail, postData, "GET") | |
| 544 | + this.isFirstComeIn = false | |
| 545 | + this.loading = false | |
| 546 | + this.productData = res.data | |
| 547 | + this.markTools = res.data.markTools //平台优惠券 | |
| 548 | + console.log('平台优惠券', res.data.markTools) | |
| 549 | + this.shopMarkTools = res.data.shopMarkTools //店铺优惠券 | |
| 550 | + this.currentActive = this.markTools.length === 0 && this.shopMarkTools.length > 0 ? 1 : 0 | |
| 551 | + //处理单规格商品,如果是单款式商品,需要特殊处理productData.names | |
| 552 | + const skuCollectionList = this.productData.map | |
| 553 | + const skuCollectionListKeys = Object.keys(skuCollectionList) | |
| 554 | + if (skuCollectionListKeys.length === 1 && skuCollectionListKeys[0] === '单款项') { | |
| 555 | + this.productData.names[0].values.push({ | |
| 556 | + skuValue: this.productData.names[0].skuName, | |
| 557 | + valueCode: '单款项' | |
| 558 | + }) | |
| 559 | + } | |
| 560 | + | |
| 561 | + //如果sku的图像为空,设置为商品的图像 | |
| 562 | + for (const key in skuCollectionList) { | |
| 563 | + if (!skuCollectionList[key].image) { | |
| 564 | + skuCollectionList[key].image = this.productData.images[0] | |
| 565 | + } | |
| 566 | + } | |
| 567 | + | |
| 568 | + // 评价 | |
| 569 | + this.commentList = res.data.comments | |
| 570 | + // 宝贝详情 | |
| 571 | + this.sellDescList = res.data.text.replace(/\<img/gi, | |
| 572 | + '<img style="max-width:100%;height:auto" ') | |
| 573 | + | |
| 574 | + //渲染商详之后,如果参数传了skuId,则选中该skuId,否则选中第一个规格 | |
| 575 | + this.$nextTick(async () => { | |
| 576 | + if (this.paramSkuId) { | |
| 577 | + this.$refs.skuSelect.handleSelectBySkuId(this.paramSkuId) | |
| 578 | + } else { | |
| 579 | + // 默认选中第0个 | |
| 580 | + for (const skuRowItem of this.productData.names) { | |
| 581 | + this.$refs.skuSelect.handleClickSkuItem(skuRowItem.nameCode, skuRowItem | |
| 582 | + .values[0].valueCode) | |
| 583 | + } | |
| 584 | + } | |
| 585 | + //如果是拼团,设置拼团id | |
| 586 | + if (this.productData.activityType === 1) { | |
| 587 | + this.shopGroupWorkId = this.productData.shopGroupWorkId | |
| 588 | + await this.handleGetGroupBookingRollList() | |
| 589 | + this.handleSetDownTime(); | |
| 590 | + } | |
| 591 | + await this.$refs.goodEvaluateAndQuestion.handleGetProblemList() | |
| 592 | + }) | |
| 593 | + } finally { | |
| 594 | + uni.hideLoading() | |
| 595 | + // this.loading = false | |
| 596 | + } | |
| 597 | + }, | |
| 598 | + | |
| 599 | + /** | |
| 600 | + * 绑定分销关系 | |
| 601 | + * @param salesId 分销员ID | |
| 602 | + * @param storeId 店铺ID | |
| 603 | + */ | |
| 604 | + bindSalesCustomer(salesId, storeId) { | |
| 605 | + //如果已登录,静默绑定客户关系,否则跳转到登录页面 | |
| 606 | + if (!uni.getStorageSync('storage_key')) { | |
| 607 | + uni.setStorageSync('salesId', salesId) | |
| 608 | + uni.setStorageSync("shopId", storeId) | |
| 609 | + uni.navigateTo({ | |
| 610 | + url: '../../pages_category_page2/userModule/login' | |
| 611 | + }) | |
| 612 | + return | |
| 613 | + } | |
| 614 | + NET.request(API.BindSalesCustomer, { | |
| 615 | + shopId: storeId, | |
| 616 | + distributorId: salesId | |
| 617 | + }, 'POST').then(res => { | |
| 618 | + console.log('分销关系绑定成功!') | |
| 619 | + }) | |
| 620 | + }, | |
| 621 | + | |
| 622 | + /** | |
| 623 | + * 打开拼团列表 | |
| 624 | + */ | |
| 625 | + handleOpenGroupBookingList() { | |
| 626 | + if (this.topThreeCollageOrders.length > 0) { | |
| 627 | + this.showGroupBuyList = true | |
| 628 | + } else { | |
| 629 | + uni.showToast({ | |
| 630 | + title: "还没有人拼单,快去拼单吧!", | |
| 631 | + icon: "none" | |
| 632 | + }) | |
| 633 | + } | |
| 634 | + }, | |
| 635 | + kefu() { | |
| 636 | + NET.request(API.GetUser, {}, 'GET').then(res => { | |
| 637 | + if(res.code != '20004'){ | |
| 638 | + uni.navigateTo({ | |
| 639 | + url: `/pages_category_page1/customer/chatBox?shopId=${this.shopId}` | |
| 640 | + }) | |
| 641 | + } | |
| 642 | + | |
| 643 | + }) | |
| 644 | + | |
| 645 | + }, | |
| 646 | + /** | |
| 647 | + * 打开客服 | |
| 648 | + * @return {Promise<void>} | |
| 649 | + */ | |
| 650 | + | |
| 651 | + async flyToService() { | |
| 652 | + // (await Services(this.shopId)).flyToService() | |
| 653 | + uni.navigateTo({ | |
| 654 | + url: '/pages_category_page1/customer/chatBox' | |
| 655 | + }); | |
| 656 | + }, | |
| 657 | + | |
| 658 | + } | |
| 659 | + } | |
| 804 | 660 | </script> |
| 805 | 661 | <style> |
| 806 | -.page { | |
| 807 | -background-color: #F7F7F7; | |
| 808 | -} | |
| 809 | -</style> | |
| 810 | -<style | |
| 811 | - scoped | |
| 812 | - lang="scss" | |
| 813 | -> | |
| 814 | -.page { | |
| 815 | - background-color: #F7F7F7; | |
| 816 | -} | |
| 817 | - | |
| 818 | -.news-box { | |
| 819 | - position: fixed; | |
| 820 | - left: 20rpx; | |
| 821 | - top: 200rpx; | |
| 822 | - z-index: 9999; | |
| 823 | - | |
| 824 | - .news-bg { | |
| 825 | - width: 450rpx; | |
| 826 | - height: 70rpx; | |
| 827 | - overflow: hidden; | |
| 828 | - | |
| 829 | - .news-item { | |
| 830 | - background: rgba(0, 0, 0, 0.75); | |
| 831 | - border-radius: 16rpx; | |
| 832 | - height: 70rpx; | |
| 833 | - color: #FFFFFF; | |
| 834 | - font-size: 24rpx; | |
| 835 | - padding: 0 20rpx; | |
| 836 | - width: 450rpx; | |
| 837 | - | |
| 838 | - .item-avatar { | |
| 839 | - width: 50rpx; | |
| 840 | - height: 50rpx; | |
| 841 | - border-radius: 50%; | |
| 842 | - margin-right: 20rpx; | |
| 843 | - } | |
| 844 | - } | |
| 845 | - } | |
| 846 | -} | |
| 847 | - | |
| 848 | - | |
| 849 | -.tabsbox { | |
| 850 | - width: 100%; | |
| 851 | - margin-top: 20rpx; | |
| 852 | - background-color: #FFFFFF; | |
| 853 | -} | |
| 854 | - | |
| 855 | - | |
| 856 | -.checkimg { | |
| 857 | - width: 40rpx; | |
| 858 | - height: 40rpx; | |
| 859 | - margin-right: 30rpx; | |
| 860 | -} | |
| 861 | - | |
| 862 | -.container { | |
| 863 | - padding-bottom: 180upx; | |
| 864 | - | |
| 865 | - .arrow-icon { | |
| 866 | - width: 16rpx; | |
| 867 | - height: 24rpx; | |
| 868 | - margin-right: 25rpx; | |
| 869 | - } | |
| 870 | - | |
| 871 | - .goodgDes-box { | |
| 872 | - background-color: #FFFFFF; | |
| 873 | - width: 100%; | |
| 874 | - padding-bottom: 25rpx; | |
| 875 | - | |
| 876 | - .priceBuyNum-box { | |
| 877 | - width: 677rpx; | |
| 878 | - margin-top: 30rpx; | |
| 879 | - } | |
| 880 | - | |
| 881 | - .nameContainer { | |
| 882 | - display: flex; | |
| 883 | - | |
| 884 | - .goodsName-box { | |
| 885 | - width: 677rpx; | |
| 886 | - height: 85rpx; | |
| 887 | - | |
| 888 | - .img618-cion { | |
| 889 | - width: 70rpx; | |
| 890 | - height: 36rpx; | |
| 891 | - } | |
| 892 | - } | |
| 893 | - | |
| 894 | - .collectBox { | |
| 895 | - width: 80rpx; | |
| 896 | - margin: 0 30rpx 0 15rpx; | |
| 897 | - display: flex; | |
| 898 | - flex-direction: column; | |
| 899 | - justify-content: center; | |
| 900 | - align-items: center; | |
| 901 | - } | |
| 902 | - | |
| 903 | - .store-icon { | |
| 904 | - width: 48rpx; | |
| 905 | - height: 48rpx; | |
| 906 | - } | |
| 907 | - } | |
| 908 | - | |
| 909 | - .discounts-box { | |
| 910 | - margin-top: 20rpx; | |
| 911 | - | |
| 912 | - .discounts-text { | |
| 913 | - margin-left: 10rpx; | |
| 914 | - color: #FF7800; | |
| 915 | - background-color: #FFE4CC; | |
| 916 | - padding: 6rpx 12rpx; | |
| 917 | - border-radius: 4rpx; | |
| 918 | - } | |
| 919 | - } | |
| 920 | - | |
| 921 | - .activity-box { | |
| 922 | - display: flex; | |
| 923 | - flex-direction: row; | |
| 924 | - justify-content: center; | |
| 925 | - align-items: flex-end; | |
| 926 | - border-top: 1upx solid #EDEDED; | |
| 927 | - | |
| 928 | - .activity-content { | |
| 929 | - width: 614rpx; | |
| 930 | - padding-top: 20rpx; | |
| 931 | - | |
| 932 | - .activity-text { | |
| 933 | - color: #FF7700; | |
| 934 | - border: 1rpx solid #FF7700; | |
| 935 | - padding: 6rpx 23rpx; | |
| 936 | - } | |
| 937 | - | |
| 938 | - .coupon-arrow { | |
| 939 | - width: 16rpx; | |
| 940 | - height: 24rpx; | |
| 941 | - margin-left: 15rpx; | |
| 942 | - } | |
| 943 | - } | |
| 944 | - } | |
| 945 | - } | |
| 946 | - | |
| 947 | - .express-box { | |
| 948 | - height: 100rpx; | |
| 949 | - background-color: #FFFFFF; | |
| 950 | - padding-left: 30rpx; | |
| 951 | - border-top: 12rpx solid #F8F8F8; | |
| 952 | - border-bottom: 12rpx solid #F8F8F8; | |
| 953 | - | |
| 954 | - image { | |
| 955 | - width: 21rpx; | |
| 956 | - height: 27rpx; | |
| 957 | - } | |
| 958 | - | |
| 959 | - .expressSite-icon { | |
| 960 | - width: 30rpx; | |
| 961 | - height: 30rpx; | |
| 962 | - } | |
| 963 | - | |
| 964 | - .mapName { | |
| 965 | - position: relative; | |
| 966 | - | |
| 967 | - &:before { | |
| 968 | - content: ''; | |
| 969 | - width: 2rpx; | |
| 970 | - height: 30rpx; | |
| 971 | - background: #CCCCCC; | |
| 972 | - display: block; | |
| 973 | - position: absolute; | |
| 974 | - right: -16rpx; | |
| 975 | - top: 5rpx; | |
| 976 | - } | |
| 977 | - } | |
| 978 | - } | |
| 979 | - | |
| 980 | - .chooseSize-box { | |
| 981 | - height: 90rpx; | |
| 982 | - background-color: #FFFFFF; | |
| 983 | - margin: 10rpx 0; | |
| 984 | - | |
| 985 | - .chooseSize-content { | |
| 986 | - width: 100%; | |
| 987 | - } | |
| 988 | - } | |
| 989 | - | |
| 990 | - .questionTit { | |
| 991 | - height: 90rpx; | |
| 992 | - border-bottom: 1rpx solid #EEEEEE; | |
| 993 | - margin-right: 35rpx; | |
| 994 | - color: #333333; | |
| 995 | - font-size: 30rpx; | |
| 996 | - | |
| 997 | - .allMoreBox { | |
| 998 | - display: flex; | |
| 999 | - align-items: center; | |
| 1000 | - color: #999999; | |
| 1001 | - font-size: 24rpx; | |
| 1002 | - | |
| 1003 | - .evaluateAllArrow-icon { | |
| 1004 | - width: 18rpx; | |
| 1005 | - height: 24rpx; | |
| 1006 | - } | |
| 1007 | - } | |
| 1008 | - } | |
| 1009 | - | |
| 1010 | - .shopEvaList { | |
| 1011 | - display: flex; | |
| 1012 | - padding: 30rpx; | |
| 1013 | - flex-wrap: wrap; | |
| 1014 | - border-bottom: 20rpx solid #EEEEEE; | |
| 1015 | - | |
| 1016 | - .shopEvaItem { | |
| 1017 | - padding: 0 14rpx; | |
| 1018 | - height: 60rpx; | |
| 1019 | - background: #ffe4cc; | |
| 1020 | - border-radius: 6rpx; | |
| 1021 | - line-height: 60rpx; | |
| 1022 | - text-align: center; | |
| 1023 | - font-size: 28rpx; | |
| 1024 | - color: #666666; | |
| 1025 | - margin: 0 20rpx 20rpx 0; | |
| 1026 | - } | |
| 1027 | - } | |
| 1028 | - | |
| 1029 | - .storeEvaluate-box { | |
| 1030 | - background-color: #FFFFFF; | |
| 1031 | - margin-top: 20rpx; | |
| 1032 | - | |
| 1033 | - .storeEvaluate { | |
| 1034 | - width: 690rpx; | |
| 1035 | - padding: 20rpx 0; | |
| 1036 | - border-bottom: 1rpx solid #EDEDED; | |
| 1037 | - } | |
| 1038 | - | |
| 1039 | - .storeEvaluateTag-box { | |
| 1040 | - margin-top: 10rpx; | |
| 1041 | - margin-left: 10rpx; | |
| 1042 | - padding-bottom: 30rpx; | |
| 1043 | - display: flex; | |
| 1044 | - flex-wrap: wrap; | |
| 1045 | - | |
| 1046 | - .storeEvaluateTag-text { | |
| 1047 | - background-color: #FFE4CC; | |
| 1048 | - border-radius: 6rpx; | |
| 1049 | - padding: 16rpx 14rpx; | |
| 1050 | - color: #656565; | |
| 1051 | - margin-left: 20rpx; | |
| 1052 | - margin-top: 20rpx; | |
| 1053 | - } | |
| 1054 | - } | |
| 1055 | - } | |
| 1056 | - | |
| 1057 | - .inStore-box { | |
| 1058 | - background-color: #FFFFFF; | |
| 1059 | - margin-top: 20rpx; | |
| 1060 | - padding: 20rpx 30rpx; | |
| 1061 | - | |
| 1062 | - .inStore-logo { | |
| 1063 | - width: 70rpx; | |
| 1064 | - height: 70rpx; | |
| 1065 | - } | |
| 1066 | - | |
| 1067 | - .inStore-but { | |
| 1068 | - width: 140rpx; | |
| 1069 | - height: 60rpx; | |
| 1070 | - line-height: 60rpx; | |
| 1071 | - text-align: center; | |
| 1072 | - font-size: 24rpx; | |
| 1073 | - color: #fff; | |
| 1074 | - background: #2ca536; | |
| 1075 | - /*padding-left: 20rpx;*/ | |
| 1076 | - position: relative; | |
| 1077 | - | |
| 1078 | - } | |
| 1079 | - } | |
| 1080 | - | |
| 1081 | - .goodsDetails-box { | |
| 1082 | - background-color: #FFFFFF; | |
| 1083 | - margin-top: 20rpx; | |
| 1084 | - padding: 20rpx 30rpx; | |
| 1085 | - | |
| 1086 | - .goodsDetails-title { | |
| 1087 | - display: flex; | |
| 1088 | - flex-direction: row; | |
| 1089 | - align-items: center; | |
| 1090 | - | |
| 1091 | - .goodsDetails-Line { | |
| 1092 | - width: 265rpx; | |
| 1093 | - border-bottom: 1rpx solid #EDEDED; | |
| 1094 | - } | |
| 1095 | - | |
| 1096 | - .goodsDetails-text { | |
| 1097 | - padding: 0 22rpx; | |
| 1098 | - } | |
| 1099 | - } | |
| 1100 | - | |
| 1101 | - .goodsDetailsimg-box { | |
| 1102 | - } | |
| 1103 | - } | |
| 1104 | - | |
| 1105 | - .priceExplain-box { | |
| 1106 | - background-color: #FFFFFF; | |
| 1107 | - margin-top: 20rpx; | |
| 1108 | - padding: 20rpx 30rpx; | |
| 1109 | - | |
| 1110 | - .priceExplain-title { | |
| 1111 | - display: flex; | |
| 1112 | - flex-direction: row; | |
| 1113 | - align-items: center; | |
| 1114 | - | |
| 1115 | - .priceExplain-Line { | |
| 1116 | - width: 265rpx; | |
| 1117 | - border-bottom: 1rpx solid #EDEDED; | |
| 1118 | - } | |
| 1119 | - | |
| 1120 | - .priceExplain-text { | |
| 1121 | - padding: 0 22rpx; | |
| 1122 | - } | |
| 1123 | - } | |
| 1124 | - | |
| 1125 | - .priceExplain-dot { | |
| 1126 | - width: 9rpx; | |
| 1127 | - height: 9rpx; | |
| 1128 | - border: 1rpx solid #FF7700; | |
| 1129 | - border-radius: 50%; | |
| 1130 | - background-color: #FF7700; | |
| 1131 | - } | |
| 1132 | - } | |
| 1133 | - | |
| 1134 | - .buygoods-box { | |
| 1135 | - position: fixed; | |
| 1136 | - bottom: 0rpx; | |
| 1137 | - box-sizing: border-box; | |
| 1138 | - z-index: 999; | |
| 1139 | - .groupByInfo { | |
| 1140 | - background: #fffbe9; | |
| 1141 | - padding: 0 30rpx; | |
| 1142 | - height: 80rpx; | |
| 1143 | - | |
| 1144 | - .groupByInfoBox { | |
| 1145 | - height: 80rpx; | |
| 1146 | - } | |
| 1147 | - | |
| 1148 | - .groupByLeft { | |
| 1149 | - .groupByAvatar { | |
| 1150 | - margin-right: 15rpx; | |
| 1151 | - } | |
| 1152 | - | |
| 1153 | - img { | |
| 1154 | - width: 50rpx; | |
| 1155 | - height: 50rpx; | |
| 1156 | - } | |
| 1157 | - | |
| 1158 | - .name { | |
| 1159 | - font-size: 24rpx; | |
| 1160 | - } | |
| 1161 | - | |
| 1162 | - .groupByNum { | |
| 1163 | - margin-right: 10rpx; | |
| 1164 | - } | |
| 1165 | - | |
| 1166 | - .groupByTime { | |
| 1167 | - color: #333333; | |
| 1168 | - } | |
| 1169 | - } | |
| 1170 | - | |
| 1171 | - .groupByBtn { | |
| 1172 | - height: 60rpx; | |
| 1173 | - background: #333333; | |
| 1174 | - color: #FFEBC4; | |
| 1175 | - font-size: 14rpx; | |
| 1176 | - line-height: 60rpx; | |
| 1177 | - text-align: center; | |
| 1178 | - padding: 0 20rpx; | |
| 1179 | - } | |
| 1180 | - } | |
| 1181 | - | |
| 1182 | - .buygoodsBut-box { | |
| 1183 | - background-color: #FFFFFF; | |
| 1184 | - width: 750rpx; | |
| 1185 | - padding: 20rpx 32rpx; | |
| 1186 | - box-shadow: 0rpx 0rpx 10rpx 1rpx #EDEDED; | |
| 1187 | - box-sizing: border-box; | |
| 1188 | - display: flex; | |
| 1189 | - justify-content: space-between; | |
| 1190 | - | |
| 1191 | - .btns_container { | |
| 1192 | - display: flex; | |
| 1193 | - align-items: center; | |
| 1194 | - } | |
| 1195 | - | |
| 1196 | - .btns { | |
| 1197 | - width: 80rpx; | |
| 1198 | - } | |
| 1199 | - | |
| 1200 | - .Cart { | |
| 1201 | - position: relative; | |
| 1202 | - | |
| 1203 | - .cartAllNum { | |
| 1204 | - position: absolute; | |
| 1205 | - width: 30rpx; | |
| 1206 | - height: 30rpx; | |
| 1207 | - line-height: 30rpx; | |
| 1208 | - text-align: center; | |
| 1209 | - font-size: 17rpx; | |
| 1210 | - color: #FFFFFF; | |
| 1211 | - background: #2ea436; | |
| 1212 | - border-radius: 50%; | |
| 1213 | - opacity: 1; | |
| 1214 | - z-index: 999; | |
| 1215 | - } | |
| 1216 | - | |
| 1217 | - // #ifdef APP-PLUS | |
| 1218 | - .cartAllNum { | |
| 1219 | - right: -6rpx; | |
| 1220 | - top: -6rpx; | |
| 1221 | - } | |
| 1222 | - | |
| 1223 | - // #endif | |
| 1224 | - /* #ifdef H5 */ | |
| 1225 | - .cartAllNum { | |
| 1226 | - right: -10rpx; | |
| 1227 | - top: -6rpx; | |
| 1228 | - } | |
| 1229 | - | |
| 1230 | - /* #endif */ | |
| 1231 | - /* #ifdef MP-WEIXIN */ | |
| 1232 | - .cartAllNum { | |
| 1233 | - right: -3rpx; | |
| 1234 | - top: 0; | |
| 1235 | - } | |
| 1236 | - | |
| 1237 | - /* #endif */ | |
| 1238 | - } | |
| 1239 | - | |
| 1240 | - .store-icon { | |
| 1241 | - width: 48rpx; | |
| 1242 | - height: 48rpx; | |
| 1243 | - } | |
| 1244 | - | |
| 1245 | - .joinShopCartBut { | |
| 1246 | - width: 190rpx; | |
| 1247 | - height: 80rpx; | |
| 1248 | - background-color: #FFFFFF; | |
| 1249 | - color: #333333; | |
| 1250 | - font-size: 28rpx; | |
| 1251 | - line-height: 80rpx; | |
| 1252 | - border: 2rpx solid #333333; | |
| 1253 | - text-align: center; | |
| 1254 | - margin-left: 40rpx; | |
| 1255 | - box-sizing: border-box; | |
| 1256 | - } | |
| 1257 | - | |
| 1258 | - .buyNowBut { | |
| 1259 | - width: 190rpx; | |
| 1260 | - height: 80rpx; | |
| 1261 | - background: #2ea436; | |
| 1262 | - color: #fff; | |
| 1263 | - font-size: 28rpx; | |
| 1264 | - line-height: 80rpx; | |
| 1265 | - text-align: center; | |
| 1266 | - margin-left: 16rpx; | |
| 1267 | - } | |
| 1268 | - | |
| 1269 | - .offShelf { | |
| 1270 | - background: #b7b7b7; | |
| 1271 | - border-radius: 50rpx; | |
| 1272 | - width: 360rpx; | |
| 1273 | - margin-left: 50rpx; | |
| 1274 | - line-height: 80rpx; | |
| 1275 | - height: 80rpx; | |
| 1276 | - justify-content: center; | |
| 1277 | - color: #333333; | |
| 1278 | - } | |
| 1279 | - } | |
| 1280 | - } | |
| 1281 | - | |
| 1282 | - .returnTopService-box { | |
| 1283 | - position: fixed; | |
| 1284 | - bottom: 160rpx; | |
| 1285 | - right: 30rpx; | |
| 1286 | - | |
| 1287 | - .fs16 { | |
| 1288 | - font-size: 16rpx; | |
| 1289 | - } | |
| 1290 | - | |
| 1291 | - .returnTop-box { | |
| 1292 | - width: 88rpx; | |
| 1293 | - height: 88rpx; | |
| 1294 | - border-radius: 50%; | |
| 1295 | - background: #FFFFFF; | |
| 1296 | - opacity: 0.8; | |
| 1297 | - | |
| 1298 | - .returnTopImg { | |
| 1299 | - width: 58rpx; | |
| 1300 | - height: 58rpx; | |
| 1301 | - } | |
| 1302 | - } | |
| 1303 | - | |
| 1304 | - .serviceImg-box { | |
| 1305 | - width: 90rpx; | |
| 1306 | - height: 90rpx; | |
| 1307 | - border-radius: 50%; | |
| 1308 | - background-color: #FFFFFF; | |
| 1309 | - box-shadow: 0rpx 0rpx 5rpx 3rpx #999999; | |
| 1310 | - | |
| 1311 | - .serviceImg { | |
| 1312 | - width: 36rpx; | |
| 1313 | - height: 36rpx; | |
| 1314 | - display: block; | |
| 1315 | - background: url("https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/images/serviceImg.png") no-repeat center center; | |
| 1316 | - background-size: contain; | |
| 1317 | - } | |
| 1318 | - } | |
| 1319 | - } | |
| 1320 | - | |
| 1321 | - | |
| 1322 | - .parameterShow-box { | |
| 1323 | - .parameter-title { | |
| 1324 | - width: 100%; | |
| 1325 | - text-align: center; | |
| 1326 | - padding-bottom: 36rpx; | |
| 1327 | - } | |
| 1328 | - | |
| 1329 | - .parameter-modle { | |
| 1330 | - width: 690rpx; | |
| 1331 | - padding-bottom: 36rpx; | |
| 1332 | - font-size: 26rpx; | |
| 1333 | - } | |
| 1334 | - | |
| 1335 | - .parameterTruebut-box { | |
| 1336 | - background-color: #FFFFFF; | |
| 1337 | - padding: 20rpx 0; | |
| 1338 | - | |
| 1339 | - .parameterTruebut { | |
| 1340 | - width: 690rpx; | |
| 1341 | - height: 80rpx; | |
| 1342 | - background-image: linear-gradient(135deg, #FFA100 10%, #FF7911 100%); | |
| 1343 | - color: #FFFFFF; | |
| 1344 | - border-radius: 40rpx; | |
| 1345 | - line-height: 80rpx; | |
| 1346 | - text-align: center; | |
| 1347 | - font-size: 26rpx; | |
| 1348 | - } | |
| 1349 | - } | |
| 1350 | - } | |
| 1351 | - | |
| 1352 | - .couponShow-box { | |
| 1353 | - .couponShow { | |
| 1354 | - z-index: 333; | |
| 1355 | - height: 1000rpx; | |
| 1356 | - | |
| 1357 | - .couponTitle-box { | |
| 1358 | - width: 100%; | |
| 1359 | - } | |
| 1360 | - | |
| 1361 | - .coupon-title-active { | |
| 1362 | - color: #FF7700; | |
| 1363 | - border-bottom: 2rpx solid #FF7700; | |
| 1364 | - padding-bottom: 30rpx; | |
| 1365 | - } | |
| 1366 | - | |
| 1367 | - .usableCoupon-content { | |
| 1368 | - padding: 30rpx 0; | |
| 1369 | - | |
| 1370 | - .usableCoupon-box { | |
| 1371 | - width: 690rpx; | |
| 1372 | - height: 140rpx; | |
| 1373 | - border-radius: 10rpx; | |
| 1374 | - background-color: #FFE9D8; | |
| 1375 | - | |
| 1376 | - .immediateUse-but { | |
| 1377 | - color: #FF7800; | |
| 1378 | - border-radius: 30rpx; | |
| 1379 | - padding: 0 40rpx; | |
| 1380 | - border-left: 3rpx solid #EBD7C7; | |
| 1381 | - height: 140rpx; | |
| 1382 | - border-radius: 60rpx; | |
| 1383 | - line-height: 140rpx; | |
| 1384 | - font-weight: bold; | |
| 1385 | - } | |
| 1386 | - } | |
| 1387 | - } | |
| 1388 | - } | |
| 1389 | - } | |
| 1390 | - | |
| 1391 | - .succeedShow-box { | |
| 1392 | - position: absolute; | |
| 1393 | - top: 220rpx; | |
| 1394 | - left: 185rpx; | |
| 1395 | - | |
| 1396 | - .succeedShow { | |
| 1397 | - background-color: #7F7F7F; | |
| 1398 | - width: 380rpx; | |
| 1399 | - height: 280rpx; | |
| 1400 | - border-radius: 10rpx; | |
| 1401 | - opacity: 0.8; | |
| 1402 | - | |
| 1403 | - .couponSucceedImg { | |
| 1404 | - width: 200rpx; | |
| 1405 | - height: 130rpx; | |
| 1406 | - } | |
| 1407 | - } | |
| 1408 | - } | |
| 1409 | - | |
| 1410 | -} | |
| 1411 | - | |
| 1412 | -.activity-box { | |
| 1413 | - display: flex; | |
| 1414 | - flex-direction: column; | |
| 1415 | - width: 100%; | |
| 1416 | - height: 100%; | |
| 1417 | - | |
| 1418 | - .title-box { | |
| 1419 | - width: 100%; | |
| 1420 | - height: 100upx; | |
| 1421 | - display: flex; | |
| 1422 | - flex-direction: row; | |
| 1423 | - align-items: center; | |
| 1424 | - justify-content: center; | |
| 1425 | - position: relative; | |
| 1426 | - border-bottom: solid 1px #EEEEEE; | |
| 1427 | - } | |
| 1428 | -} | |
| 1429 | - | |
| 1430 | -.activity-coupon-box { | |
| 1431 | - display: flex; | |
| 1432 | - flex-direction: column; | |
| 1433 | - width: 100%; | |
| 1434 | - overflow: auto; | |
| 1435 | - flex: 1; | |
| 1436 | -} | |
| 1437 | - | |
| 1438 | -.content-box { | |
| 1439 | - width: 100%; | |
| 1440 | - box-sizing: border-box; | |
| 1441 | - display: flex; | |
| 1442 | - flex-direction: column; | |
| 1443 | - padding: 30rpx; | |
| 1444 | -} | |
| 1445 | - | |
| 1446 | -.tag-box { | |
| 1447 | - width: 100%; | |
| 1448 | - box-sizing: border-box; | |
| 1449 | - height: 80rpx; | |
| 1450 | - line-height: 80rpx; | |
| 1451 | - font-size: 28rpx; | |
| 1452 | - font-weight: 500; | |
| 1453 | - color: #FF7911; | |
| 1454 | -} | |
| 1455 | - | |
| 1456 | -.label-lingqu { | |
| 1457 | - width: 100%; | |
| 1458 | - font-weight: 500; | |
| 1459 | - color: rgba(51, 51, 51, 1); | |
| 1460 | -} | |
| 1461 | - | |
| 1462 | -.coupon-item { | |
| 1463 | - width: 690rpx; | |
| 1464 | - height: 120rpx; | |
| 1465 | - border-radius: 10rpx; | |
| 1466 | - display: flex; | |
| 1467 | - flex-direction: row; | |
| 1468 | - justify-content: space-between; | |
| 1469 | - align-items: center; | |
| 1470 | - margin-top: 20rpx; | |
| 1471 | - flex-shrink: 0; | |
| 1472 | - background-color: #FFE9D8; | |
| 1473 | -} | |
| 1474 | - | |
| 1475 | -.money-box { | |
| 1476 | - width: 160rpx; | |
| 1477 | - box-sizing: border-box; | |
| 1478 | - padding-left: 30rpx; | |
| 1479 | - font-weight: 500; | |
| 1480 | - color: #FF7911; | |
| 1481 | -} | |
| 1482 | - | |
| 1483 | -.info-box { | |
| 1484 | - display: flex; | |
| 1485 | - flex-direction: column; | |
| 1486 | - align-items: flex-start; | |
| 1487 | - color: rgba(255, 121, 17, 1); | |
| 1488 | -} | |
| 1489 | - | |
| 1490 | -.receive-btn { | |
| 1491 | - width: 200rpx; | |
| 1492 | - height: 120rpx; | |
| 1493 | - background: rgba(255, 233, 216, 1); | |
| 1494 | - box-shadow: 0px 0px 5rpx 0px rgba(102, 102, 102, 0.35); | |
| 1495 | - line-height: 120rpx; | |
| 1496 | - text-align: center; | |
| 1497 | - font-size: 28rpx; | |
| 1498 | - font-weight: bold; | |
| 1499 | - color: rgba(255, 121, 17, 1); | |
| 1500 | - border-bottom-right-radius: 10rpx; | |
| 1501 | - border-top-right-radius: 10rpx; | |
| 1502 | - border-top-left-radius: 120rpx; | |
| 1503 | - border-bottom-left-radius: 120rpx; | |
| 1504 | -} | |
| 1505 | - | |
| 1506 | -.received { | |
| 1507 | - background: #f1f1f1; | |
| 1508 | - color: #999; | |
| 1509 | -} | |
| 1510 | - | |
| 1511 | - | |
| 1512 | -.canvas-box { | |
| 1513 | - display: block; | |
| 1514 | - position: absolute; | |
| 1515 | - top: 100rpx; | |
| 1516 | -} | |
| 1517 | - | |
| 1518 | -.sceneMarketingBox { | |
| 1519 | - width: 100%; | |
| 1520 | - background: url("https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/images/5f85fe4782e34c10b15b04f76c571d12_sceneMarketingDetailsIcon.png" | |
| 1521 | - ) no-repeat center; | |
| 1522 | - padding: 20rpx 30rpx; | |
| 1523 | - background-size: cover; | |
| 1524 | - display: flex; | |
| 1525 | - justify-content: space-between; | |
| 1526 | - align-items: center; | |
| 1527 | - | |
| 1528 | - .sceneNameBox { | |
| 1529 | - width: 220rpx; | |
| 1530 | - text-align: center; | |
| 1531 | - color: #C83732; | |
| 1532 | - font-size: 20rpx; | |
| 1533 | - } | |
| 1534 | -} | |
| 1535 | - | |
| 1536 | - | |
| 1537 | -.goodsDiscount { | |
| 1538 | - .groupBuy { | |
| 1539 | - .groupBuyList { | |
| 1540 | - .groupBuyItem { | |
| 1541 | - padding: 0 30rpx; | |
| 1542 | - height: 116rpx; | |
| 1543 | - display: flex; | |
| 1544 | - align-items: center; | |
| 1545 | - justify-content: space-between; | |
| 1546 | - border-bottom: 1rpx solid #EEEEEE; | |
| 1547 | - | |
| 1548 | - .leftAvatar { | |
| 1549 | - display: flex; | |
| 1550 | - align-items: center; | |
| 1551 | - width: 50%; | |
| 1552 | - | |
| 1553 | - img { | |
| 1554 | - width: 72rpx; | |
| 1555 | - height: 72rpx; | |
| 1556 | - margin-right: 10rpx; | |
| 1557 | - border-radius: 50%; | |
| 1558 | - } | |
| 1559 | - } | |
| 1560 | - | |
| 1561 | - .rightInfo { | |
| 1562 | - display: flex; | |
| 1563 | - align-items: center; | |
| 1564 | - width: 50%; | |
| 1565 | - | |
| 1566 | - .groupBuyTime { | |
| 1567 | - .needPeople { | |
| 1568 | - font-size: 28rpx; | |
| 1569 | - color: #333333; | |
| 1570 | - margin-bottom: 10rpx; | |
| 1571 | - font-weight: 400; | |
| 1572 | - | |
| 1573 | - b { | |
| 1574 | - color: #C5AA7B; | |
| 1575 | - font-weight: 400; | |
| 1576 | - } | |
| 1577 | - } | |
| 1578 | - | |
| 1579 | - .endDate { | |
| 1580 | - color: #666666; | |
| 1581 | - } | |
| 1582 | - } | |
| 1583 | - | |
| 1584 | - .groupBuyBtn { | |
| 1585 | - width: 140rpx; | |
| 1586 | - height: 60rpx; | |
| 1587 | - line-height: 60rpx; | |
| 1588 | - background: #333333; | |
| 1589 | - text-align: center; | |
| 1590 | - color: #FFEBC4; | |
| 1591 | - font-size: 24rpx; | |
| 1592 | - } | |
| 1593 | - } | |
| 1594 | - } | |
| 1595 | - } | |
| 1596 | - } | |
| 1597 | -} | |
| 1598 | - | |
| 1599 | -.popupDiscount { | |
| 1600 | - padding-bottom: 70rpx; | |
| 1601 | - | |
| 1602 | - .popupDiscountTit { | |
| 1603 | - font-size: 36rpx; | |
| 1604 | - color: #333333; | |
| 1605 | - height: 105rpx; | |
| 1606 | - line-height: 105rpx; | |
| 1607 | - text-align: center; | |
| 1608 | - border-bottom: 1rpx solid #EEEEEE; | |
| 1609 | - } | |
| 1610 | - | |
| 1611 | - .groupBuy { | |
| 1612 | - padding-bottom: 80rpx; | |
| 1613 | - | |
| 1614 | - .groupBuyList { | |
| 1615 | - .groupBuyItem1 { | |
| 1616 | - padding: 0 30rpx; | |
| 1617 | - height: 116rpx; | |
| 1618 | - display: flex; | |
| 1619 | - align-items: center; | |
| 1620 | - justify-content: space-between; | |
| 1621 | - border-bottom: 1rpx solid #EEEEEE; | |
| 1622 | - | |
| 1623 | - .leftAvatar { | |
| 1624 | - display: flex; | |
| 1625 | - align-items: center; | |
| 1626 | - | |
| 1627 | - img { | |
| 1628 | - width: 72rpx; | |
| 1629 | - height: 72rpx; | |
| 1630 | - margin-right: 10rpx; | |
| 1631 | - border-radius: 50%; | |
| 1632 | - } | |
| 1633 | - | |
| 1634 | - .groupBuyTime { | |
| 1635 | - margin-right: 80rpx; | |
| 1636 | - margin-bottom: 10rpx; | |
| 1637 | - width: 320rpx; | |
| 1638 | - | |
| 1639 | - .needPeople { | |
| 1640 | - font-size: 26rpx; | |
| 1641 | - color: #333333; | |
| 1642 | - | |
| 1643 | - span { | |
| 1644 | - color: #333333; | |
| 1645 | - padding-right: 10rpx; | |
| 1646 | - } | |
| 1647 | - | |
| 1648 | - b { | |
| 1649 | - color: #C5AA7B; | |
| 1650 | - font-weight: 400; | |
| 1651 | - } | |
| 1652 | - } | |
| 1653 | - | |
| 1654 | - .endDate { | |
| 1655 | - color: #333333; | |
| 1656 | - opacity: 0.7; | |
| 1657 | - font-size: 24rpx; | |
| 1658 | - } | |
| 1659 | - } | |
| 1660 | - } | |
| 1661 | - | |
| 1662 | - .rightInfo { | |
| 1663 | - display: flex; | |
| 1664 | - align-items: center; | |
| 1665 | - | |
| 1666 | - .groupBuyBtn { | |
| 1667 | - width: 140rpx; | |
| 1668 | - height: 70rpx; | |
| 1669 | - line-height: 70rpx; | |
| 1670 | - background: #333333; | |
| 1671 | - text-align: center; | |
| 1672 | - color: #FFEBC4; | |
| 1673 | - font-weight: 400; | |
| 1674 | - } | |
| 1675 | - } | |
| 1676 | - } | |
| 1677 | - } | |
| 1678 | - } | |
| 1679 | -} | |
| 1680 | - | |
| 1681 | -.combination { | |
| 1682 | - padding: 0 20rpx; | |
| 1683 | - | |
| 1684 | - .combinationList { | |
| 1685 | - width: 100%; | |
| 1686 | - height: 680rpx; | |
| 1687 | - background: #333333; | |
| 1688 | - box-shadow: 0 20rpx 30rpx rgba(0, 0, 0, 0.3); | |
| 1689 | - border-radius: 20rpx; | |
| 1690 | - | |
| 1691 | - .combinationTitle { | |
| 1692 | - padding: 32rpx 20rpx 0 30rpx; | |
| 1693 | - | |
| 1694 | - image { | |
| 1695 | - width: 211rpx; | |
| 1696 | - height: 33rpx; | |
| 1697 | - } | |
| 1698 | - | |
| 1699 | - .combinationPrice { | |
| 1700 | - padding: 0 20px; | |
| 1701 | - height: 50rpx; | |
| 1702 | - background: linear-gradient(90deg, #C83732 0%, #E25C44 100%); | |
| 1703 | - box-shadow: 0 6rpx 12rpx rgba(233, 0, 0, 0.3); | |
| 1704 | - border-radius: 26rpx; | |
| 1705 | - line-height: 50rpx; | |
| 1706 | - text-align: center; | |
| 1707 | - color: #FFFFFF; | |
| 1708 | - opacity: 0.8; | |
| 1709 | - } | |
| 1710 | - } | |
| 1711 | - | |
| 1712 | - .buyBtn { | |
| 1713 | - width: 96%; | |
| 1714 | - height: 84rpx; | |
| 1715 | - line-height: 84rpx; | |
| 1716 | - border: 2rpx solid rgba(0, 0, 0, 0); | |
| 1717 | - background: linear-gradient(88deg, #C5AA7B 0%, #FFEBC4 100%); | |
| 1718 | - text-align: center; | |
| 1719 | - color: #333333; | |
| 1720 | - margin: 0 auto; | |
| 1721 | - } | |
| 1722 | - } | |
| 1723 | -} | |
| 662 | + .page { | |
| 663 | + background-color: #F7F7F7; | |
| 664 | + } | |
| 1724 | 665 | </style> |
| 666 | +<style scoped lang="scss"> | |
| 667 | + .page { | |
| 668 | + background-color: #F7F7F7; | |
| 669 | + } | |
| 670 | + | |
| 671 | + .news-box { | |
| 672 | + position: fixed; | |
| 673 | + left: 20rpx; | |
| 674 | + top: 200rpx; | |
| 675 | + z-index: 9999; | |
| 676 | + | |
| 677 | + .news-bg { | |
| 678 | + width: 450rpx; | |
| 679 | + height: 70rpx; | |
| 680 | + overflow: hidden; | |
| 681 | + | |
| 682 | + .news-item { | |
| 683 | + background: rgba(0, 0, 0, 0.75); | |
| 684 | + border-radius: 16rpx; | |
| 685 | + height: 70rpx; | |
| 686 | + color: #FFFFFF; | |
| 687 | + font-size: 24rpx; | |
| 688 | + padding: 0 20rpx; | |
| 689 | + width: 450rpx; | |
| 690 | + | |
| 691 | + .item-avatar { | |
| 692 | + width: 50rpx; | |
| 693 | + height: 50rpx; | |
| 694 | + border-radius: 50%; | |
| 695 | + margin-right: 20rpx; | |
| 696 | + } | |
| 697 | + } | |
| 698 | + } | |
| 699 | + } | |
| 700 | + | |
| 701 | + | |
| 702 | + .tabsbox { | |
| 703 | + width: 100%; | |
| 704 | + margin-top: 20rpx; | |
| 705 | + background-color: #FFFFFF; | |
| 706 | + } | |
| 707 | + | |
| 708 | + | |
| 709 | + .checkimg { | |
| 710 | + width: 40rpx; | |
| 711 | + height: 40rpx; | |
| 712 | + margin-right: 30rpx; | |
| 713 | + } | |
| 714 | + | |
| 715 | + .container { | |
| 716 | + padding-bottom: 180upx; | |
| 717 | + | |
| 718 | + .arrow-icon { | |
| 719 | + width: 16rpx; | |
| 720 | + height: 24rpx; | |
| 721 | + margin-right: 25rpx; | |
| 722 | + } | |
| 723 | + | |
| 724 | + .goodgDes-box { | |
| 725 | + background-color: #FFFFFF; | |
| 726 | + width: 100%; | |
| 727 | + padding-bottom: 25rpx; | |
| 728 | + | |
| 729 | + .priceBuyNum-box { | |
| 730 | + width: 677rpx; | |
| 731 | + margin-top: 30rpx; | |
| 732 | + } | |
| 733 | + | |
| 734 | + .nameContainer { | |
| 735 | + display: flex; | |
| 736 | + | |
| 737 | + .goodsName-box { | |
| 738 | + width: 677rpx; | |
| 739 | + height: 85rpx; | |
| 740 | + | |
| 741 | + .img618-cion { | |
| 742 | + width: 70rpx; | |
| 743 | + height: 36rpx; | |
| 744 | + } | |
| 745 | + } | |
| 746 | + | |
| 747 | + .collectBox { | |
| 748 | + width: 80rpx; | |
| 749 | + margin: 0 30rpx 0 15rpx; | |
| 750 | + display: flex; | |
| 751 | + flex-direction: column; | |
| 752 | + justify-content: center; | |
| 753 | + align-items: center; | |
| 754 | + } | |
| 755 | + | |
| 756 | + .store-icon { | |
| 757 | + width: 48rpx; | |
| 758 | + height: 48rpx; | |
| 759 | + } | |
| 760 | + } | |
| 761 | + | |
| 762 | + .discounts-box { | |
| 763 | + margin-top: 20rpx; | |
| 764 | + | |
| 765 | + .discounts-text { | |
| 766 | + margin-left: 10rpx; | |
| 767 | + color: #FF7800; | |
| 768 | + background-color: #FFE4CC; | |
| 769 | + padding: 6rpx 12rpx; | |
| 770 | + border-radius: 4rpx; | |
| 771 | + } | |
| 772 | + } | |
| 773 | + | |
| 774 | + .activity-box { | |
| 775 | + display: flex; | |
| 776 | + flex-direction: row; | |
| 777 | + justify-content: center; | |
| 778 | + align-items: flex-end; | |
| 779 | + border-top: 1upx solid #EDEDED; | |
| 780 | + | |
| 781 | + .activity-content { | |
| 782 | + width: 614rpx; | |
| 783 | + padding-top: 20rpx; | |
| 784 | + | |
| 785 | + .activity-text { | |
| 786 | + color: #FF7700; | |
| 787 | + border: 1rpx solid #FF7700; | |
| 788 | + padding: 6rpx 23rpx; | |
| 789 | + } | |
| 790 | + | |
| 791 | + .coupon-arrow { | |
| 792 | + width: 16rpx; | |
| 793 | + height: 24rpx; | |
| 794 | + margin-left: 15rpx; | |
| 795 | + } | |
| 796 | + } | |
| 797 | + } | |
| 798 | + } | |
| 799 | + | |
| 800 | + .express-box { | |
| 801 | + height: 100rpx; | |
| 802 | + background-color: #FFFFFF; | |
| 803 | + padding-left: 30rpx; | |
| 804 | + border-top: 12rpx solid #F8F8F8; | |
| 805 | + border-bottom: 12rpx solid #F8F8F8; | |
| 806 | + | |
| 807 | + image { | |
| 808 | + width: 21rpx; | |
| 809 | + height: 27rpx; | |
| 810 | + } | |
| 811 | + | |
| 812 | + .expressSite-icon { | |
| 813 | + width: 30rpx; | |
| 814 | + height: 30rpx; | |
| 815 | + } | |
| 816 | + | |
| 817 | + .mapName { | |
| 818 | + position: relative; | |
| 819 | + | |
| 820 | + &:before { | |
| 821 | + content: ''; | |
| 822 | + width: 2rpx; | |
| 823 | + height: 30rpx; | |
| 824 | + background: #CCCCCC; | |
| 825 | + display: block; | |
| 826 | + position: absolute; | |
| 827 | + right: -16rpx; | |
| 828 | + top: 5rpx; | |
| 829 | + } | |
| 830 | + } | |
| 831 | + } | |
| 832 | + | |
| 833 | + .chooseSize-box { | |
| 834 | + height: 90rpx; | |
| 835 | + background-color: #FFFFFF; | |
| 836 | + margin: 10rpx 0; | |
| 837 | + | |
| 838 | + .chooseSize-content { | |
| 839 | + width: 100%; | |
| 840 | + } | |
| 841 | + } | |
| 842 | + | |
| 843 | + .questionTit { | |
| 844 | + height: 90rpx; | |
| 845 | + border-bottom: 1rpx solid #EEEEEE; | |
| 846 | + margin-right: 35rpx; | |
| 847 | + color: #333333; | |
| 848 | + font-size: 30rpx; | |
| 849 | + | |
| 850 | + .allMoreBox { | |
| 851 | + display: flex; | |
| 852 | + align-items: center; | |
| 853 | + color: #999999; | |
| 854 | + font-size: 24rpx; | |
| 855 | + | |
| 856 | + .evaluateAllArrow-icon { | |
| 857 | + width: 18rpx; | |
| 858 | + height: 24rpx; | |
| 859 | + } | |
| 860 | + } | |
| 861 | + } | |
| 862 | + | |
| 863 | + .shopEvaList { | |
| 864 | + display: flex; | |
| 865 | + padding: 30rpx; | |
| 866 | + flex-wrap: wrap; | |
| 867 | + border-bottom: 20rpx solid #EEEEEE; | |
| 868 | + | |
| 869 | + .shopEvaItem { | |
| 870 | + padding: 0 14rpx; | |
| 871 | + height: 60rpx; | |
| 872 | + background: #ffe4cc; | |
| 873 | + border-radius: 6rpx; | |
| 874 | + line-height: 60rpx; | |
| 875 | + text-align: center; | |
| 876 | + font-size: 28rpx; | |
| 877 | + color: #666666; | |
| 878 | + margin: 0 20rpx 20rpx 0; | |
| 879 | + } | |
| 880 | + } | |
| 881 | + | |
| 882 | + .storeEvaluate-box { | |
| 883 | + background-color: #FFFFFF; | |
| 884 | + margin-top: 20rpx; | |
| 885 | + | |
| 886 | + .storeEvaluate { | |
| 887 | + width: 690rpx; | |
| 888 | + padding: 20rpx 0; | |
| 889 | + border-bottom: 1rpx solid #EDEDED; | |
| 890 | + } | |
| 891 | + | |
| 892 | + .storeEvaluateTag-box { | |
| 893 | + margin-top: 10rpx; | |
| 894 | + margin-left: 10rpx; | |
| 895 | + padding-bottom: 30rpx; | |
| 896 | + display: flex; | |
| 897 | + flex-wrap: wrap; | |
| 898 | + | |
| 899 | + .storeEvaluateTag-text { | |
| 900 | + background-color: #FFE4CC; | |
| 901 | + border-radius: 6rpx; | |
| 902 | + padding: 16rpx 14rpx; | |
| 903 | + color: #656565; | |
| 904 | + margin-left: 20rpx; | |
| 905 | + margin-top: 20rpx; | |
| 906 | + } | |
| 907 | + } | |
| 908 | + } | |
| 909 | + | |
| 910 | + .inStore-box { | |
| 911 | + background-color: #FFFFFF; | |
| 912 | + margin-top: 20rpx; | |
| 913 | + padding: 20rpx 30rpx; | |
| 914 | + | |
| 915 | + .inStore-logo { | |
| 916 | + width: 70rpx; | |
| 917 | + height: 70rpx; | |
| 918 | + } | |
| 919 | + | |
| 920 | + .inStore-but { | |
| 921 | + width: 140rpx; | |
| 922 | + height: 60rpx; | |
| 923 | + line-height: 60rpx; | |
| 924 | + text-align: center; | |
| 925 | + font-size: 24rpx; | |
| 926 | + color: #fff; | |
| 927 | + background: #2ca536; | |
| 928 | + /*padding-left: 20rpx;*/ | |
| 929 | + position: relative; | |
| 930 | + | |
| 931 | + } | |
| 932 | + } | |
| 933 | + | |
| 934 | + .goodsDetails-box { | |
| 935 | + background-color: #FFFFFF; | |
| 936 | + margin-top: 20rpx; | |
| 937 | + padding: 20rpx 30rpx; | |
| 938 | + | |
| 939 | + .goodsDetails-title { | |
| 940 | + display: flex; | |
| 941 | + flex-direction: row; | |
| 942 | + align-items: center; | |
| 943 | + | |
| 944 | + .goodsDetails-Line { | |
| 945 | + width: 265rpx; | |
| 946 | + border-bottom: 1rpx solid #EDEDED; | |
| 947 | + } | |
| 948 | + | |
| 949 | + .goodsDetails-text { | |
| 950 | + padding: 0 22rpx; | |
| 951 | + } | |
| 952 | + } | |
| 953 | + | |
| 954 | + .goodsDetailsimg-box {} | |
| 955 | + } | |
| 956 | + | |
| 957 | + .priceExplain-box { | |
| 958 | + background-color: #FFFFFF; | |
| 959 | + margin-top: 20rpx; | |
| 960 | + padding: 20rpx 30rpx; | |
| 961 | + | |
| 962 | + .priceExplain-title { | |
| 963 | + display: flex; | |
| 964 | + flex-direction: row; | |
| 965 | + align-items: center; | |
| 966 | + | |
| 967 | + .priceExplain-Line { | |
| 968 | + width: 265rpx; | |
| 969 | + border-bottom: 1rpx solid #EDEDED; | |
| 970 | + } | |
| 971 | + | |
| 972 | + .priceExplain-text { | |
| 973 | + padding: 0 22rpx; | |
| 974 | + } | |
| 975 | + } | |
| 976 | + | |
| 977 | + .priceExplain-dot { | |
| 978 | + width: 9rpx; | |
| 979 | + height: 9rpx; | |
| 980 | + border: 1rpx solid #FF7700; | |
| 981 | + border-radius: 50%; | |
| 982 | + background-color: #FF7700; | |
| 983 | + } | |
| 984 | + } | |
| 985 | + | |
| 986 | + .buygoods-box { | |
| 987 | + position: fixed; | |
| 988 | + bottom: 0rpx; | |
| 989 | + box-sizing: border-box; | |
| 990 | + z-index: 999; | |
| 991 | + | |
| 992 | + .groupByInfo { | |
| 993 | + background: #fffbe9; | |
| 994 | + padding: 0 30rpx; | |
| 995 | + height: 80rpx; | |
| 996 | + | |
| 997 | + .groupByInfoBox { | |
| 998 | + height: 80rpx; | |
| 999 | + } | |
| 1000 | + | |
| 1001 | + .groupByLeft { | |
| 1002 | + .groupByAvatar { | |
| 1003 | + margin-right: 15rpx; | |
| 1004 | + } | |
| 1005 | + | |
| 1006 | + img { | |
| 1007 | + width: 50rpx; | |
| 1008 | + height: 50rpx; | |
| 1009 | + } | |
| 1010 | + | |
| 1011 | + .name { | |
| 1012 | + font-size: 24rpx; | |
| 1013 | + } | |
| 1014 | + | |
| 1015 | + .groupByNum { | |
| 1016 | + margin-right: 10rpx; | |
| 1017 | + } | |
| 1018 | + | |
| 1019 | + .groupByTime { | |
| 1020 | + color: #333333; | |
| 1021 | + } | |
| 1022 | + } | |
| 1023 | + | |
| 1024 | + .groupByBtn { | |
| 1025 | + height: 60rpx; | |
| 1026 | + background: #333333; | |
| 1027 | + color: #FFEBC4; | |
| 1028 | + font-size: 14rpx; | |
| 1029 | + line-height: 60rpx; | |
| 1030 | + text-align: center; | |
| 1031 | + padding: 0 20rpx; | |
| 1032 | + } | |
| 1033 | + } | |
| 1034 | + | |
| 1035 | + .buygoodsBut-box { | |
| 1036 | + background-color: #FFFFFF; | |
| 1037 | + width: 750rpx; | |
| 1038 | + padding: 20rpx 32rpx; | |
| 1039 | + box-shadow: 0rpx 0rpx 10rpx 1rpx #EDEDED; | |
| 1040 | + box-sizing: border-box; | |
| 1041 | + display: flex; | |
| 1042 | + justify-content: space-between; | |
| 1043 | + | |
| 1044 | + .btns_container { | |
| 1045 | + display: flex; | |
| 1046 | + align-items: center; | |
| 1047 | + } | |
| 1048 | + | |
| 1049 | + .btns { | |
| 1050 | + width: 80rpx; | |
| 1051 | + } | |
| 1052 | + | |
| 1053 | + .Cart { | |
| 1054 | + position: relative; | |
| 1055 | + | |
| 1056 | + .cartAllNum { | |
| 1057 | + position: absolute; | |
| 1058 | + width: 30rpx; | |
| 1059 | + height: 30rpx; | |
| 1060 | + line-height: 30rpx; | |
| 1061 | + text-align: center; | |
| 1062 | + font-size: 17rpx; | |
| 1063 | + color: #FFFFFF; | |
| 1064 | + background: #2ea436; | |
| 1065 | + border-radius: 50%; | |
| 1066 | + opacity: 1; | |
| 1067 | + z-index: 999; | |
| 1068 | + } | |
| 1069 | + | |
| 1070 | + // #ifdef APP-PLUS | |
| 1071 | + .cartAllNum { | |
| 1072 | + right: -6rpx; | |
| 1073 | + top: -6rpx; | |
| 1074 | + } | |
| 1075 | + | |
| 1076 | + // #endif | |
| 1077 | + /* #ifdef H5 */ | |
| 1078 | + .cartAllNum { | |
| 1079 | + right: -10rpx; | |
| 1080 | + top: -6rpx; | |
| 1081 | + } | |
| 1082 | + | |
| 1083 | + /* #endif */ | |
| 1084 | + /* #ifdef MP-WEIXIN */ | |
| 1085 | + .cartAllNum { | |
| 1086 | + right: -3rpx; | |
| 1087 | + top: 0; | |
| 1088 | + } | |
| 1089 | + | |
| 1090 | + /* #endif */ | |
| 1091 | + } | |
| 1092 | + | |
| 1093 | + .store-icon { | |
| 1094 | + width: 48rpx; | |
| 1095 | + height: 48rpx; | |
| 1096 | + } | |
| 1097 | + | |
| 1098 | + .joinShopCartBut { | |
| 1099 | + width: 190rpx; | |
| 1100 | + height: 80rpx; | |
| 1101 | + background-color: #FFFFFF; | |
| 1102 | + color: #333333; | |
| 1103 | + font-size: 28rpx; | |
| 1104 | + line-height: 80rpx; | |
| 1105 | + border: 2rpx solid #333333; | |
| 1106 | + text-align: center; | |
| 1107 | + margin-left: 40rpx; | |
| 1108 | + box-sizing: border-box; | |
| 1109 | + } | |
| 1110 | + | |
| 1111 | + .buyNowBut { | |
| 1112 | + width: 190rpx; | |
| 1113 | + height: 80rpx; | |
| 1114 | + background: #2ea436; | |
| 1115 | + color: #fff; | |
| 1116 | + font-size: 28rpx; | |
| 1117 | + line-height: 80rpx; | |
| 1118 | + text-align: center; | |
| 1119 | + margin-left: 16rpx; | |
| 1120 | + } | |
| 1121 | + | |
| 1122 | + .offShelf { | |
| 1123 | + background: #b7b7b7; | |
| 1124 | + border-radius: 50rpx; | |
| 1125 | + width: 360rpx; | |
| 1126 | + margin-left: 50rpx; | |
| 1127 | + line-height: 80rpx; | |
| 1128 | + height: 80rpx; | |
| 1129 | + justify-content: center; | |
| 1130 | + color: #333333; | |
| 1131 | + } | |
| 1132 | + } | |
| 1133 | + } | |
| 1134 | + | |
| 1135 | + .returnTopService-box { | |
| 1136 | + position: fixed; | |
| 1137 | + bottom: 160rpx; | |
| 1138 | + right: 30rpx; | |
| 1139 | + | |
| 1140 | + .fs16 { | |
| 1141 | + font-size: 16rpx; | |
| 1142 | + } | |
| 1143 | + | |
| 1144 | + .returnTop-box { | |
| 1145 | + width: 88rpx; | |
| 1146 | + height: 88rpx; | |
| 1147 | + border-radius: 50%; | |
| 1148 | + background: #FFFFFF; | |
| 1149 | + opacity: 0.8; | |
| 1150 | + | |
| 1151 | + .returnTopImg { | |
| 1152 | + width: 58rpx; | |
| 1153 | + height: 58rpx; | |
| 1154 | + } | |
| 1155 | + } | |
| 1156 | + | |
| 1157 | + .serviceImg-box { | |
| 1158 | + width: 90rpx; | |
| 1159 | + height: 90rpx; | |
| 1160 | + border-radius: 50%; | |
| 1161 | + background-color: #FFFFFF; | |
| 1162 | + box-shadow: 0rpx 0rpx 5rpx 3rpx #999999; | |
| 1163 | + | |
| 1164 | + .serviceImg { | |
| 1165 | + width: 36rpx; | |
| 1166 | + height: 36rpx; | |
| 1167 | + display: block; | |
| 1168 | + background: url("https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/images/serviceImg.png") no-repeat center center; | |
| 1169 | + background-size: contain; | |
| 1170 | + } | |
| 1171 | + } | |
| 1172 | + } | |
| 1173 | + | |
| 1174 | + | |
| 1175 | + .parameterShow-box { | |
| 1176 | + .parameter-title { | |
| 1177 | + width: 100%; | |
| 1178 | + text-align: center; | |
| 1179 | + padding-bottom: 36rpx; | |
| 1180 | + } | |
| 1181 | + | |
| 1182 | + .parameter-modle { | |
| 1183 | + width: 690rpx; | |
| 1184 | + padding-bottom: 36rpx; | |
| 1185 | + font-size: 26rpx; | |
| 1186 | + } | |
| 1187 | + | |
| 1188 | + .parameterTruebut-box { | |
| 1189 | + background-color: #FFFFFF; | |
| 1190 | + padding: 20rpx 0; | |
| 1191 | + | |
| 1192 | + .parameterTruebut { | |
| 1193 | + width: 690rpx; | |
| 1194 | + height: 80rpx; | |
| 1195 | + background-image: linear-gradient(135deg, #FFA100 10%, #FF7911 100%); | |
| 1196 | + color: #FFFFFF; | |
| 1197 | + border-radius: 40rpx; | |
| 1198 | + line-height: 80rpx; | |
| 1199 | + text-align: center; | |
| 1200 | + font-size: 26rpx; | |
| 1201 | + } | |
| 1202 | + } | |
| 1203 | + } | |
| 1204 | + | |
| 1205 | + .couponShow-box { | |
| 1206 | + .couponShow { | |
| 1207 | + z-index: 333; | |
| 1208 | + height: 1000rpx; | |
| 1209 | + | |
| 1210 | + .couponTitle-box { | |
| 1211 | + width: 100%; | |
| 1212 | + } | |
| 1213 | + | |
| 1214 | + .coupon-title-active { | |
| 1215 | + color: #FF7700; | |
| 1216 | + border-bottom: 2rpx solid #FF7700; | |
| 1217 | + padding-bottom: 30rpx; | |
| 1218 | + } | |
| 1219 | + | |
| 1220 | + .usableCoupon-content { | |
| 1221 | + padding: 30rpx 0; | |
| 1222 | + | |
| 1223 | + .usableCoupon-box { | |
| 1224 | + width: 690rpx; | |
| 1225 | + height: 140rpx; | |
| 1226 | + border-radius: 10rpx; | |
| 1227 | + background-color: #FFE9D8; | |
| 1228 | + | |
| 1229 | + .immediateUse-but { | |
| 1230 | + color: #FF7800; | |
| 1231 | + border-radius: 30rpx; | |
| 1232 | + padding: 0 40rpx; | |
| 1233 | + border-left: 3rpx solid #EBD7C7; | |
| 1234 | + height: 140rpx; | |
| 1235 | + border-radius: 60rpx; | |
| 1236 | + line-height: 140rpx; | |
| 1237 | + font-weight: bold; | |
| 1238 | + } | |
| 1239 | + } | |
| 1240 | + } | |
| 1241 | + } | |
| 1242 | + } | |
| 1243 | + | |
| 1244 | + .succeedShow-box { | |
| 1245 | + position: absolute; | |
| 1246 | + top: 220rpx; | |
| 1247 | + left: 185rpx; | |
| 1248 | + | |
| 1249 | + .succeedShow { | |
| 1250 | + background-color: #7F7F7F; | |
| 1251 | + width: 380rpx; | |
| 1252 | + height: 280rpx; | |
| 1253 | + border-radius: 10rpx; | |
| 1254 | + opacity: 0.8; | |
| 1255 | + | |
| 1256 | + .couponSucceedImg { | |
| 1257 | + width: 200rpx; | |
| 1258 | + height: 130rpx; | |
| 1259 | + } | |
| 1260 | + } | |
| 1261 | + } | |
| 1262 | + | |
| 1263 | + } | |
| 1264 | + | |
| 1265 | + .activity-box { | |
| 1266 | + display: flex; | |
| 1267 | + flex-direction: column; | |
| 1268 | + width: 100%; | |
| 1269 | + height: 100%; | |
| 1270 | + | |
| 1271 | + .title-box { | |
| 1272 | + width: 100%; | |
| 1273 | + height: 100upx; | |
| 1274 | + display: flex; | |
| 1275 | + flex-direction: row; | |
| 1276 | + align-items: center; | |
| 1277 | + justify-content: center; | |
| 1278 | + position: relative; | |
| 1279 | + border-bottom: solid 1px #EEEEEE; | |
| 1280 | + } | |
| 1281 | + } | |
| 1282 | + | |
| 1283 | + .activity-coupon-box { | |
| 1284 | + display: flex; | |
| 1285 | + flex-direction: column; | |
| 1286 | + width: 100%; | |
| 1287 | + overflow: auto; | |
| 1288 | + flex: 1; | |
| 1289 | + } | |
| 1290 | + | |
| 1291 | + .content-box { | |
| 1292 | + width: 100%; | |
| 1293 | + box-sizing: border-box; | |
| 1294 | + display: flex; | |
| 1295 | + flex-direction: column; | |
| 1296 | + padding: 30rpx; | |
| 1297 | + } | |
| 1298 | + | |
| 1299 | + .tag-box { | |
| 1300 | + width: 100%; | |
| 1301 | + box-sizing: border-box; | |
| 1302 | + height: 80rpx; | |
| 1303 | + line-height: 80rpx; | |
| 1304 | + font-size: 28rpx; | |
| 1305 | + font-weight: 500; | |
| 1306 | + color: #FF7911; | |
| 1307 | + } | |
| 1308 | + | |
| 1309 | + .label-lingqu { | |
| 1310 | + width: 100%; | |
| 1311 | + font-weight: 500; | |
| 1312 | + color: rgba(51, 51, 51, 1); | |
| 1313 | + } | |
| 1314 | + | |
| 1315 | + .coupon-item { | |
| 1316 | + width: 690rpx; | |
| 1317 | + height: 120rpx; | |
| 1318 | + border-radius: 10rpx; | |
| 1319 | + display: flex; | |
| 1320 | + flex-direction: row; | |
| 1321 | + justify-content: space-between; | |
| 1322 | + align-items: center; | |
| 1323 | + margin-top: 20rpx; | |
| 1324 | + flex-shrink: 0; | |
| 1325 | + background-color: #FFE9D8; | |
| 1326 | + } | |
| 1327 | + | |
| 1328 | + .money-box { | |
| 1329 | + width: 160rpx; | |
| 1330 | + box-sizing: border-box; | |
| 1331 | + padding-left: 30rpx; | |
| 1332 | + font-weight: 500; | |
| 1333 | + color: #FF7911; | |
| 1334 | + } | |
| 1335 | + | |
| 1336 | + .info-box { | |
| 1337 | + display: flex; | |
| 1338 | + flex-direction: column; | |
| 1339 | + align-items: flex-start; | |
| 1340 | + color: rgba(255, 121, 17, 1); | |
| 1341 | + } | |
| 1342 | + | |
| 1343 | + .receive-btn { | |
| 1344 | + width: 200rpx; | |
| 1345 | + height: 120rpx; | |
| 1346 | + background: rgba(255, 233, 216, 1); | |
| 1347 | + box-shadow: 0px 0px 5rpx 0px rgba(102, 102, 102, 0.35); | |
| 1348 | + line-height: 120rpx; | |
| 1349 | + text-align: center; | |
| 1350 | + font-size: 28rpx; | |
| 1351 | + font-weight: bold; | |
| 1352 | + color: rgba(255, 121, 17, 1); | |
| 1353 | + border-bottom-right-radius: 10rpx; | |
| 1354 | + border-top-right-radius: 10rpx; | |
| 1355 | + border-top-left-radius: 120rpx; | |
| 1356 | + border-bottom-left-radius: 120rpx; | |
| 1357 | + } | |
| 1358 | + | |
| 1359 | + .received { | |
| 1360 | + background: #f1f1f1; | |
| 1361 | + color: #999; | |
| 1362 | + } | |
| 1363 | + | |
| 1364 | + | |
| 1365 | + .canvas-box { | |
| 1366 | + display: block; | |
| 1367 | + position: absolute; | |
| 1368 | + top: 100rpx; | |
| 1369 | + } | |
| 1370 | + | |
| 1371 | + .sceneMarketingBox { | |
| 1372 | + width: 100%; | |
| 1373 | + background: url("https://jy.scjysm.asia:18086/cdwlMall/questionnaire/file/static/images/5f85fe4782e34c10b15b04f76c571d12_sceneMarketingDetailsIcon.png" | |
| 1374 | + ) no-repeat center; | |
| 1375 | + padding: 20rpx 30rpx; | |
| 1376 | + background-size: cover; | |
| 1377 | + display: flex; | |
| 1378 | + justify-content: space-between; | |
| 1379 | + align-items: center; | |
| 1380 | + | |
| 1381 | + .sceneNameBox { | |
| 1382 | + width: 220rpx; | |
| 1383 | + text-align: center; | |
| 1384 | + color: #C83732; | |
| 1385 | + font-size: 20rpx; | |
| 1386 | + } | |
| 1387 | + } | |
| 1388 | + | |
| 1389 | + | |
| 1390 | + .goodsDiscount { | |
| 1391 | + .groupBuy { | |
| 1392 | + .groupBuyList { | |
| 1393 | + .groupBuyItem { | |
| 1394 | + padding: 0 30rpx; | |
| 1395 | + height: 116rpx; | |
| 1396 | + display: flex; | |
| 1397 | + align-items: center; | |
| 1398 | + justify-content: space-between; | |
| 1399 | + border-bottom: 1rpx solid #EEEEEE; | |
| 1400 | + | |
| 1401 | + .leftAvatar { | |
| 1402 | + display: flex; | |
| 1403 | + align-items: center; | |
| 1404 | + width: 50%; | |
| 1405 | + | |
| 1406 | + img { | |
| 1407 | + width: 72rpx; | |
| 1408 | + height: 72rpx; | |
| 1409 | + margin-right: 10rpx; | |
| 1410 | + border-radius: 50%; | |
| 1411 | + } | |
| 1412 | + } | |
| 1413 | + | |
| 1414 | + .rightInfo { | |
| 1415 | + display: flex; | |
| 1416 | + align-items: center; | |
| 1417 | + width: 50%; | |
| 1418 | + | |
| 1419 | + .groupBuyTime { | |
| 1420 | + .needPeople { | |
| 1421 | + font-size: 28rpx; | |
| 1422 | + color: #333333; | |
| 1423 | + margin-bottom: 10rpx; | |
| 1424 | + font-weight: 400; | |
| 1425 | + | |
| 1426 | + b { | |
| 1427 | + color: #C5AA7B; | |
| 1428 | + font-weight: 400; | |
| 1429 | + } | |
| 1430 | + } | |
| 1431 | + | |
| 1432 | + .endDate { | |
| 1433 | + color: #666666; | |
| 1434 | + } | |
| 1435 | + } | |
| 1436 | + | |
| 1437 | + .groupBuyBtn { | |
| 1438 | + width: 140rpx; | |
| 1439 | + height: 60rpx; | |
| 1440 | + line-height: 60rpx; | |
| 1441 | + background: #333333; | |
| 1442 | + text-align: center; | |
| 1443 | + color: #FFEBC4; | |
| 1444 | + font-size: 24rpx; | |
| 1445 | + } | |
| 1446 | + } | |
| 1447 | + } | |
| 1448 | + } | |
| 1449 | + } | |
| 1450 | + } | |
| 1451 | + | |
| 1452 | + .popupDiscount { | |
| 1453 | + padding-bottom: 70rpx; | |
| 1454 | + | |
| 1455 | + .popupDiscountTit { | |
| 1456 | + font-size: 36rpx; | |
| 1457 | + color: #333333; | |
| 1458 | + height: 105rpx; | |
| 1459 | + line-height: 105rpx; | |
| 1460 | + text-align: center; | |
| 1461 | + border-bottom: 1rpx solid #EEEEEE; | |
| 1462 | + } | |
| 1463 | + | |
| 1464 | + .groupBuy { | |
| 1465 | + padding-bottom: 80rpx; | |
| 1466 | + | |
| 1467 | + .groupBuyList { | |
| 1468 | + .groupBuyItem1 { | |
| 1469 | + padding: 0 30rpx; | |
| 1470 | + height: 116rpx; | |
| 1471 | + display: flex; | |
| 1472 | + align-items: center; | |
| 1473 | + justify-content: space-between; | |
| 1474 | + border-bottom: 1rpx solid #EEEEEE; | |
| 1475 | + | |
| 1476 | + .leftAvatar { | |
| 1477 | + display: flex; | |
| 1478 | + align-items: center; | |
| 1479 | + | |
| 1480 | + img { | |
| 1481 | + width: 72rpx; | |
| 1482 | + height: 72rpx; | |
| 1483 | + margin-right: 10rpx; | |
| 1484 | + border-radius: 50%; | |
| 1485 | + } | |
| 1486 | + | |
| 1487 | + .groupBuyTime { | |
| 1488 | + margin-right: 80rpx; | |
| 1489 | + margin-bottom: 10rpx; | |
| 1490 | + width: 320rpx; | |
| 1491 | + | |
| 1492 | + .needPeople { | |
| 1493 | + font-size: 26rpx; | |
| 1494 | + color: #333333; | |
| 1495 | + | |
| 1496 | + span { | |
| 1497 | + color: #333333; | |
| 1498 | + padding-right: 10rpx; | |
| 1499 | + } | |
| 1500 | + | |
| 1501 | + b { | |
| 1502 | + color: #C5AA7B; | |
| 1503 | + font-weight: 400; | |
| 1504 | + } | |
| 1505 | + } | |
| 1506 | + | |
| 1507 | + .endDate { | |
| 1508 | + color: #333333; | |
| 1509 | + opacity: 0.7; | |
| 1510 | + font-size: 24rpx; | |
| 1511 | + } | |
| 1512 | + } | |
| 1513 | + } | |
| 1514 | + | |
| 1515 | + .rightInfo { | |
| 1516 | + display: flex; | |
| 1517 | + align-items: center; | |
| 1518 | + | |
| 1519 | + .groupBuyBtn { | |
| 1520 | + width: 140rpx; | |
| 1521 | + height: 70rpx; | |
| 1522 | + line-height: 70rpx; | |
| 1523 | + background: #333333; | |
| 1524 | + text-align: center; | |
| 1525 | + color: #FFEBC4; | |
| 1526 | + font-weight: 400; | |
| 1527 | + } | |
| 1528 | + } | |
| 1529 | + } | |
| 1530 | + } | |
| 1531 | + } | |
| 1532 | + } | |
| 1533 | + | |
| 1534 | + .combination { | |
| 1535 | + padding: 0 20rpx; | |
| 1536 | + | |
| 1537 | + .combinationList { | |
| 1538 | + width: 100%; | |
| 1539 | + height: 680rpx; | |
| 1540 | + background: #333333; | |
| 1541 | + box-shadow: 0 20rpx 30rpx rgba(0, 0, 0, 0.3); | |
| 1542 | + border-radius: 20rpx; | |
| 1543 | + | |
| 1544 | + .combinationTitle { | |
| 1545 | + padding: 32rpx 20rpx 0 30rpx; | |
| 1546 | + | |
| 1547 | + image { | |
| 1548 | + width: 211rpx; | |
| 1549 | + height: 33rpx; | |
| 1550 | + } | |
| 1551 | + | |
| 1552 | + .combinationPrice { | |
| 1553 | + padding: 0 20px; | |
| 1554 | + height: 50rpx; | |
| 1555 | + background: linear-gradient(90deg, #C83732 0%, #E25C44 100%); | |
| 1556 | + box-shadow: 0 6rpx 12rpx rgba(233, 0, 0, 0.3); | |
| 1557 | + border-radius: 26rpx; | |
| 1558 | + line-height: 50rpx; | |
| 1559 | + text-align: center; | |
| 1560 | + color: #FFFFFF; | |
| 1561 | + opacity: 0.8; | |
| 1562 | + } | |
| 1563 | + } | |
| 1564 | + | |
| 1565 | + .buyBtn { | |
| 1566 | + width: 96%; | |
| 1567 | + height: 84rpx; | |
| 1568 | + line-height: 84rpx; | |
| 1569 | + border: 2rpx solid rgba(0, 0, 0, 0); | |
| 1570 | + background: linear-gradient(88deg, #C5AA7B 0%, #FFEBC4 100%); | |
| 1571 | + text-align: center; | |
| 1572 | + color: #333333; | |
| 1573 | + margin: 0 auto; | |
| 1574 | + } | |
| 1575 | + } | |
| 1576 | + } | |
| 1577 | +</style> | |
| 1725 | 1578 | \ No newline at end of file | ... | ... |
lvdao-miniapp/pages.json
| ... | ... | @@ -239,6 +239,20 @@ |
| 239 | 239 | } |
| 240 | 240 | }, |
| 241 | 241 | { |
| 242 | + "path": "pages/orderList/inventory", | |
| 243 | + "style": { | |
| 244 | + "navigationBarTitleText": "库存管理", | |
| 245 | + "navigationBarBackgroundColor": "#FFFFFF" | |
| 246 | + } | |
| 247 | + }, | |
| 248 | + { | |
| 249 | + "path": "pages/orderList/aftersale", | |
| 250 | + "style": { | |
| 251 | + "navigationBarTitleText": "售后管理", | |
| 252 | + "navigationBarBackgroundColor": "#FFFFFF" | |
| 253 | + } | |
| 254 | + }, | |
| 255 | + { | |
| 242 | 256 | "path": "pages/salesSta/salesSta", |
| 243 | 257 | "style": { |
| 244 | 258 | "navigationBarTitleText": "销售统计", |
| ... | ... | @@ -394,9 +408,8 @@ |
| 394 | 408 | "subpackages": [{ |
| 395 | 409 | "root": "pagesA", |
| 396 | 410 | "name": "pagesA", |
| 397 | - "pages": [ | |
| 398 | - { | |
| 399 | - "path": "/payweb/payweb", | |
| 411 | + "pages": [{ | |
| 412 | + "path": "payweb/payweb", | |
| 400 | 413 | "style": { |
| 401 | 414 | "navigationBarBackgroundColor": "#FFFFFF", |
| 402 | 415 | "navigationBarTitleText": "" |
| ... | ... | @@ -439,69 +452,69 @@ |
| 439 | 452 | }, |
| 440 | 453 | |
| 441 | 454 | { |
| 442 | - "path": "moreZu/moreZu", | |
| 443 | - "style": { | |
| 444 | - "navigationBarBackgroundColor": "#FFFFFF", | |
| 445 | - "navigationBarTitleText": "租金方案" | |
| 446 | - } | |
| 447 | - }, | |
| 448 | - { | |
| 449 | - "path": "myZiyuan/myZiyuan", | |
| 450 | - "style": { | |
| 451 | - "navigationBarBackgroundColor": "#FFFFFF", | |
| 452 | - "navigationBarTitleText": "我租赁的资产" | |
| 453 | - } | |
| 454 | - }, | |
| 455 | - { | |
| 456 | - "path": "myZiyuan/myZiDetails", | |
| 457 | - "style": { | |
| 458 | - "navigationBarBackgroundColor": "#FFFFFF", | |
| 459 | - "navigationBarTitleText": "资产详情" | |
| 460 | - } | |
| 461 | - }, | |
| 462 | - { | |
| 463 | - "path": "myZiyuan/myZiyuanQuit", | |
| 464 | - "style": { | |
| 465 | - "navigationBarBackgroundColor": "#FFFFFF", | |
| 466 | - "navigationBarTitleText": "申请退租" | |
| 467 | - } | |
| 468 | - }, | |
| 469 | - { | |
| 470 | - "path": "myZiyuan/addMyshop", | |
| 471 | - "style": { | |
| 472 | - "navigationBarBackgroundColor": "#FFFFFF", | |
| 473 | - "navigationBarTitleText": "店铺信息" | |
| 474 | - } | |
| 475 | - }, | |
| 476 | - { | |
| 477 | - "path": "rentPay/rentPay", | |
| 478 | - "style": { | |
| 479 | - "navigationBarBackgroundColor": "#FFFFFF", | |
| 480 | - "navigationBarTitleText": "租金缴费" | |
| 481 | - } | |
| 482 | - }, | |
| 483 | - { | |
| 484 | - "path": "rentPay/rentPayDetails", | |
| 485 | - "style": { | |
| 486 | - "navigationBarBackgroundColor": "#FFFFFF", | |
| 487 | - "navigationBarTitleText": "缴费记录" | |
| 488 | - } | |
| 489 | - }, | |
| 490 | - { | |
| 491 | - "path": "rentPay/goPay", | |
| 492 | - "style": { | |
| 493 | - "navigationBarBackgroundColor": "#FFFFFF", | |
| 494 | - "navigationBarTitleText": "支付" | |
| 495 | - } | |
| 496 | - }, | |
| 497 | - { | |
| 498 | - "path": "rentPay/webView", | |
| 499 | - "style": { | |
| 500 | - "navigationBarBackgroundColor": "#FFFFFF", | |
| 501 | - "navigationBarTitleText": "支付中" | |
| 455 | + "path": "moreZu/moreZu", | |
| 456 | + "style": { | |
| 457 | + "navigationBarBackgroundColor": "#FFFFFF", | |
| 458 | + "navigationBarTitleText": "租金方案" | |
| 459 | + } | |
| 460 | + }, | |
| 461 | + { | |
| 462 | + "path": "myZiyuan/myZiyuan", | |
| 463 | + "style": { | |
| 464 | + "navigationBarBackgroundColor": "#FFFFFF", | |
| 465 | + "navigationBarTitleText": "我租赁的资产" | |
| 466 | + } | |
| 467 | + }, | |
| 468 | + { | |
| 469 | + "path": "myZiyuan/myZiDetails", | |
| 470 | + "style": { | |
| 471 | + "navigationBarBackgroundColor": "#FFFFFF", | |
| 472 | + "navigationBarTitleText": "资产详情" | |
| 473 | + } | |
| 474 | + }, | |
| 475 | + { | |
| 476 | + "path": "myZiyuan/myZiyuanQuit", | |
| 477 | + "style": { | |
| 478 | + "navigationBarBackgroundColor": "#FFFFFF", | |
| 479 | + "navigationBarTitleText": "申请退租" | |
| 480 | + } | |
| 481 | + }, | |
| 482 | + { | |
| 483 | + "path": "myZiyuan/addMyshop", | |
| 484 | + "style": { | |
| 485 | + "navigationBarBackgroundColor": "#FFFFFF", | |
| 486 | + "navigationBarTitleText": "店铺信息" | |
| 487 | + } | |
| 488 | + }, | |
| 489 | + { | |
| 490 | + "path": "rentPay/rentPay", | |
| 491 | + "style": { | |
| 492 | + "navigationBarBackgroundColor": "#FFFFFF", | |
| 493 | + "navigationBarTitleText": "租金缴费" | |
| 494 | + } | |
| 495 | + }, | |
| 496 | + { | |
| 497 | + "path": "rentPay/rentPayDetails", | |
| 498 | + "style": { | |
| 499 | + "navigationBarBackgroundColor": "#FFFFFF", | |
| 500 | + "navigationBarTitleText": "缴费记录" | |
| 501 | + } | |
| 502 | + }, | |
| 503 | + { | |
| 504 | + "path": "rentPay/goPay", | |
| 505 | + "style": { | |
| 506 | + "navigationBarBackgroundColor": "#FFFFFF", | |
| 507 | + "navigationBarTitleText": "支付" | |
| 508 | + } | |
| 509 | + }, | |
| 510 | + { | |
| 511 | + "path": "rentPay/webView", | |
| 512 | + "style": { | |
| 513 | + "navigationBarBackgroundColor": "#FFFFFF", | |
| 514 | + "navigationBarTitleText": "支付中" | |
| 515 | + } | |
| 502 | 516 | } |
| 503 | - } | |
| 504 | - ] | |
| 517 | + ] | |
| 505 | 518 | }], |
| 506 | 519 | "globalStyle": { |
| 507 | 520 | "navigationBarTextStyle": "black" | ... | ... |
lvdao-miniapp/pages/application/application.vue
| ... | ... | @@ -24,7 +24,7 @@ |
| 24 | 24 | </view> |
| 25 | 25 | <view class="list"> |
| 26 | 26 | <view class="title"> |
| 27 | - <text>方案名称</text> | |
| 27 | + <text>宣传标题</text> | |
| 28 | 28 | <text class="star">*</text> |
| 29 | 29 | </view> |
| 30 | 30 | <view class="content"> |
| ... | ... | @@ -55,7 +55,7 @@ |
| 55 | 55 | <view class="feedback-data"> |
| 56 | 56 | <view> |
| 57 | 57 | <view class="title"> |
| 58 | - <text>渠道海报</text> | |
| 58 | + <text>宣传海报</text> | |
| 59 | 59 | <text class="star">*</text> |
| 60 | 60 | </view> |
| 61 | 61 | </view> | ... | ... |
lvdao-miniapp/pages/orderList/aftersale.vue
0 → 100644
lvdao-miniapp/pages/orderList/inventory.vue
0 → 100644
lvdao-miniapp/pages/orderList/orderList.vue
| 1 | 1 | <template> |
| 2 | 2 | <view class="page"> |
| 3 | - <u-collapse-item :title="`订单${item.orderId}`" v-for="(item, index) in list" :key="index"> | |
| 4 | - <view style="display: flex;justify-content: space-between;"> | |
| 5 | - <view>下单账号</view> | |
| 6 | - <view>{{item.customerName}}</view> | |
| 7 | - </view> | |
| 8 | - <view style="display: flex;justify-content: space-between;"> | |
| 9 | - <view>支付单号</view> | |
| 10 | - <view>{{item.transactionId}}</view> | |
| 11 | - </view> | |
| 12 | - <view style="display: flex;justify-content: space-between;"> | |
| 13 | - <view>支付时间</view> | |
| 14 | - <view>{{item.paymentTime}}</view> | |
| 15 | - </view> | |
| 16 | - <view style="display: flex;justify-content: space-between;"> | |
| 17 | - <view>商品名称</view> | |
| 18 | - <view>{{item.products[0].productName}}</view> | |
| 19 | - </view> | |
| 20 | - <view style="display: flex;justify-content: space-between;"> | |
| 21 | - <view>商品总价</view> | |
| 22 | - <view>{{item.products[0].productPrice}}</view> | |
| 23 | - </view> | |
| 24 | - </u-collapse-item> | |
| 3 | + <view class="screen-list"> | |
| 4 | + <view class="list" @click="show = true"> | |
| 5 | + <text>日期:{{dataTime}}</text> | |
| 6 | + <image :src="$imgUrl('/down.png')"></image> | |
| 7 | + </view> | |
| 8 | + <view class="list"> | |
| 9 | + <u-button type="info" style="height:26px;font-size:14px;" @click="close">重置</u-button> | |
| 10 | + </view> | |
| 25 | 11 | |
| 12 | + </view> | |
| 13 | + <u-collapse-item :title="`订单${item.orderId}`" v-for="(item, index) in list" :key="index"> | |
| 14 | + <view style="display: flex;justify-content: space-between;"> | |
| 15 | + <view>下单账号</view> | |
| 16 | + <view>{{item.customerName}}</view> | |
| 17 | + </view> | |
| 18 | + <view style="display: flex;justify-content: space-between;"> | |
| 19 | + <view>支付单号</view> | |
| 20 | + <view>{{item.transactionId}}</view> | |
| 21 | + </view> | |
| 22 | + <view style="display: flex;justify-content: space-between;"> | |
| 23 | + <view>支付时间</view> | |
| 24 | + <view>{{item.paymentTime}}</view> | |
| 25 | + </view> | |
| 26 | + <view style="display: flex;justify-content: space-between;"> | |
| 27 | + <view>商品名称</view> | |
| 28 | + <view>{{item.products[0].productName}}</view> | |
| 29 | + </view> | |
| 30 | + <view style="display: flex;justify-content: space-between;"> | |
| 31 | + <view>支付金额</view> | |
| 32 | + <view>{{item.price}}</view> | |
| 33 | + </view> | |
| 34 | + <view style="display: flex;justify-content: space-between;"> | |
| 35 | + <view>订单状态</view> | |
| 36 | + <view> | |
| 37 | + <span v-if="item.state == 1">待付款</span> | |
| 38 | + <span v-if="item.state == 2">待发货</span> | |
| 39 | + <span v-if="item.state == 3">已发货</span> | |
| 40 | + <span v-if="item.state == 4">已完成</span> | |
| 41 | + <span v-if="item.state == 5">已关闭</span> | |
| 42 | + <span v-if="item.state == 6">待成团</span> | |
| 43 | + <span v-if="item.state == 7">待售后</span> | |
| 44 | + <span v-if="item.state == 8">已退款</span> | |
| 45 | + </view> | |
| 46 | + </view> | |
| 47 | + </u-collapse-item> | |
| 48 | + <u-calendar v-model="show" mode="range" @change="change" @close="handleClose" active-bg-color="#19be6b" active-color="#fff" range-bg-color="#19be6b" range-color="#fff" btn-type="success"></u-calendar> | |
| 26 | 49 | |
| 27 | 50 | </view> |
| 28 | 51 | </template> |
| ... | ... | @@ -31,37 +54,8 @@ |
| 31 | 54 | export default { |
| 32 | 55 | data() { |
| 33 | 56 | return { |
| 34 | - action: 'http://8.130.38.56:8027/admin-server/file/upload', | |
| 35 | - fileList: [], | |
| 36 | - lableXian: '', | |
| 37 | - rulform: { | |
| 38 | - schemeTitle: '', | |
| 39 | - classificationCode: '', | |
| 40 | - createDate: '', | |
| 41 | - createUser: '', | |
| 42 | - promotionContent: '', | |
| 43 | - coverImage: '' | |
| 44 | - }, | |
| 45 | - params: { | |
| 46 | - year: true, | |
| 47 | - month: true, | |
| 48 | - day: true, | |
| 49 | - hour: true, | |
| 50 | - minute: true, | |
| 51 | - second: true, | |
| 52 | - province: true, | |
| 53 | - }, | |
| 54 | 57 | show: false, |
| 55 | - popup1: false, | |
| 56 | - list: [{ | |
| 57 | - value: '1', | |
| 58 | - label: '江' | |
| 59 | - }, | |
| 60 | - { | |
| 61 | - value: '2', | |
| 62 | - label: '湖' | |
| 63 | - } | |
| 64 | - ], | |
| 58 | + list: [], | |
| 65 | 59 | pageindex: { |
| 66 | 60 | afterState: "", |
| 67 | 61 | dates: [], |
| ... | ... | @@ -71,7 +65,7 @@ |
| 71 | 65 | searchType: "1", |
| 72 | 66 | state: "" |
| 73 | 67 | }, |
| 74 | - Fenshow: true, | |
| 68 | + dataTime:'' | |
| 75 | 69 | }; |
| 76 | 70 | }, |
| 77 | 71 | mounted() { |
| ... | ... | @@ -81,19 +75,20 @@ |
| 81 | 75 | |
| 82 | 76 | }, |
| 83 | 77 | methods: { |
| 84 | - padZero(num) { | |
| 85 | - return num < 10 ? '0' + num : num; | |
| 78 | + change(e){ | |
| 79 | + console.log(e) | |
| 80 | + this.dataTime = `${e.startDate}-${e.endDate}` | |
| 81 | + this.getALL() | |
| 86 | 82 | }, |
| 87 | - getCurrentTimeFormatted() { | |
| 88 | - const now = new Date(); | |
| 89 | - return `${now.getFullYear()}-${this.padZero(now.getMonth() + 1)}-${this.padZero(now.getDate())} ${this.padZero(now.getHours())}:${this.padZero(now.getMinutes())}:${this.padZero(now.getSeconds())}`; | |
| 83 | + close(){ | |
| 84 | + this.dataTime = '' | |
| 85 | + this.getALL() | |
| 90 | 86 | }, |
| 91 | - | |
| 92 | 87 | getALL() { |
| 93 | - this.$http.sendRequest('/order/getAll', 'POST', this.pageindex, 2).then(res => { | |
| 94 | - //成功回调 | |
| 95 | - this.list = res.data.data.list | |
| 96 | - }) | |
| 88 | + // this.$http.sendRequest('/order/getAll', 'POST', this.pageindex, 2).then(res => { | |
| 89 | + // //成功回调 | |
| 90 | + // this.list = res.data.data.list | |
| 91 | + // }) | |
| 97 | 92 | } |
| 98 | 93 | |
| 99 | 94 | } |
| ... | ... | @@ -102,10 +97,11 @@ |
| 102 | 97 | |
| 103 | 98 | <style scoped lang="scss"> |
| 104 | 99 | // @import 'application.scss'; |
| 105 | -.page{ | |
| 106 | - background-color: #fff; | |
| 107 | - padding: 20px; | |
| 108 | -} | |
| 100 | + .page { | |
| 101 | + background-color: #fff; | |
| 102 | + padding: 20px; | |
| 103 | + } | |
| 104 | + | |
| 109 | 105 | .juli { |
| 110 | 106 | padding: 10rpx; |
| 111 | 107 | display: flex; |
| ... | ... | @@ -267,4 +263,40 @@ |
| 267 | 263 | ::v-deep .u-input__input { |
| 268 | 264 | text-align: right; |
| 269 | 265 | } |
| 266 | + .screen-list { | |
| 267 | + display: flex; | |
| 268 | + align-items: center; | |
| 269 | + justify-content: space-between; | |
| 270 | + width: 100%; | |
| 271 | + .zidong{ | |
| 272 | + width: 160rpx; | |
| 273 | + background-color: #19be6b; | |
| 274 | + color: #fff; | |
| 275 | + padding: 10rpx; | |
| 276 | + border-radius: 30rpx; | |
| 277 | + font-size: 24rpx; | |
| 278 | + text-align: center; | |
| 279 | + } | |
| 280 | + .list { | |
| 281 | + display: flex; | |
| 282 | + justify-content: center; | |
| 283 | + align-items: center; | |
| 284 | + height: 100%; | |
| 285 | + text { | |
| 286 | + font-size: 26rpx; | |
| 287 | + color: #555555; | |
| 288 | + } | |
| 289 | + image { | |
| 290 | + width: 30rpx; | |
| 291 | + height: 30rpx; | |
| 292 | + margin-left: 10rpx; | |
| 293 | + } | |
| 294 | + } | |
| 295 | + .action { | |
| 296 | + text { | |
| 297 | + color: $base; | |
| 298 | + } | |
| 299 | + } | |
| 300 | + } | |
| 301 | + | |
| 270 | 302 | </style> |
| 271 | 303 | \ No newline at end of file | ... | ... |
lvdao-miniapp/pages/workbench/workbench.vue
| 1 | 1 | <template> |
| 2 | 2 | <view class="page"> |
| 3 | 3 | <view style="position: absolute; top: 0; width: 100%;"> |
| 4 | - <image :src="$imgUrl('/bg.png')" style="width: 100%; height: 490rpx;border-radius: 0 0 40rpx 40rpx;"></image></view> | |
| 4 | + <image :src="$imgUrl('/bg.png')" style="width: 100%; height: 490rpx;border-radius: 0 0 40rpx 40rpx;"> | |
| 5 | + </image> | |
| 6 | + </view> | |
| 5 | 7 | <view class="my-top"> |
| 6 | 8 | <view class="head" :style="'background-color: rgba(38,197,112,'+(scrollTop/50)+');'"> |
| 7 | 9 | <view class="logo-title"> |
| 8 | 10 | <image :src="$imgUrl('/logo.png')"></image> |
| 9 | 11 | </view> |
| 10 | 12 | <view class="title"> |
| 11 | - | |
| 13 | + | |
| 12 | 14 | </view> |
| 13 | 15 | <view class="setting-mess"></view> |
| 14 | 16 | </view> |
| ... | ... | @@ -30,7 +32,9 @@ |
| 30 | 32 | </view> --> |
| 31 | 33 | <view class="main"> |
| 32 | 34 | <view class="bg-white" v-for="item in pageList2" :key="item.id"> |
| 33 | - <view class="bidding-title"><view class="bidding-title-line"></view>{{item.title}}</view> | |
| 35 | + <view class="bidding-title"> | |
| 36 | + <view class="bidding-title-line"></view>{{item.title}} | |
| 37 | + </view> | |
| 34 | 38 | <view class="wallet-info"> |
| 35 | 39 | <view class="list" v-for="v in item.children" :key="v.name" @click="toPath(v.path)"> |
| 36 | 40 | <view class="icon"> |
| ... | ... | @@ -45,7 +49,9 @@ |
| 45 | 49 | </view> |
| 46 | 50 | <view class="main"> |
| 47 | 51 | <view class="bg-white" v-for="item in pageList3" :key="item.id"> |
| 48 | - <view class="bidding-title"><view class="bidding-title-line"></view>{{item.title}}</view> | |
| 52 | + <view class="bidding-title"> | |
| 53 | + <view class="bidding-title-line"></view>{{item.title}} | |
| 54 | + </view> | |
| 49 | 55 | <view class="wallet-info"> |
| 50 | 56 | <view class="list" v-for="v in item.children" :key="v.name" @click="toPath(v.path)"> |
| 51 | 57 | <view class="icon"> |
| ... | ... | @@ -60,7 +66,26 @@ |
| 60 | 66 | </view> |
| 61 | 67 | <view class="main"> |
| 62 | 68 | <view class="bg-white" v-for="item in pageList4" :key="item.id"> |
| 63 | - <view class="bidding-title"><view class="bidding-title-line"></view>{{item.title}}</view> | |
| 69 | + <view class="bidding-title"> | |
| 70 | + <view class="bidding-title-line"></view>{{item.title}} | |
| 71 | + </view> | |
| 72 | + <view class="wallet-info"> | |
| 73 | + <view class="list" v-for="v in item.children" :key="v.name" @click="toPath(v.path)"> | |
| 74 | + <view class="icon"> | |
| 75 | + <image :src="$imgUrl(`${v.img}`)"></image> | |
| 76 | + </view> | |
| 77 | + <view class="title"> | |
| 78 | + <text>{{v.name}}</text> | |
| 79 | + </view> | |
| 80 | + </view> | |
| 81 | + </view> | |
| 82 | + </view> | |
| 83 | + </view> | |
| 84 | + <view class="main"> | |
| 85 | + <view class="bg-white" v-for="item in pageList6" :key="item.id"> | |
| 86 | + <view class="bidding-title"> | |
| 87 | + <view class="bidding-title-line"></view>{{item.title}} | |
| 88 | + </view> | |
| 64 | 89 | <view class="wallet-info"> |
| 65 | 90 | <view class="list" v-for="v in item.children" :key="v.name" @click="toPath(v.path)"> |
| 66 | 91 | <view class="icon"> |
| ... | ... | @@ -126,46 +151,105 @@ |
| 126 | 151 | // ] |
| 127 | 152 | // }, |
| 128 | 153 | ], |
| 129 | - pageList2: [ | |
| 130 | - { | |
| 131 | - id: 1, | |
| 132 | - title: '活动与意向申请', | |
| 133 | - children: [ | |
| 134 | - { name: '问卷调查', img: '/wjdc.png', path: '/pages/questionnaire/questionnaire' }, | |
| 135 | - // { name: '招商方案', img: '/workbench2.png', path: '/pages/Iproposal/Iproposal' }, | |
| 136 | - { name: '活动参与', img: '/wdhd.png', path: '/pages/participation/participation' }, | |
| 137 | - { name: '活动申请', img: '/hdsq.png', path: '/pages/activityAdd/activityAdd' }, | |
| 138 | - { name: '意向申请', img: '/yxsq.png', path: '/pages/rsaManagement/rsaManagement' }, | |
| 139 | - ] | |
| 140 | - }, | |
| 141 | - ], | |
| 142 | - pageList3: [ | |
| 143 | - { | |
| 144 | - id: 1, | |
| 154 | + pageList2: [{ | |
| 155 | + id: 1, | |
| 156 | + title: '活动与意向申请', | |
| 157 | + children: [{ | |
| 158 | + name: '问卷调查', | |
| 159 | + img: '/wjdc.png', | |
| 160 | + path: '/pages/questionnaire/questionnaire' | |
| 161 | + }, | |
| 162 | + // { name: '招商方案', img: '/workbench2.png', path: '/pages/Iproposal/Iproposal' }, | |
| 163 | + { | |
| 164 | + name: '活动参与', | |
| 165 | + img: '/wdhd.png', | |
| 166 | + path: '/pages/participation/participation' | |
| 167 | + }, | |
| 168 | + { | |
| 169 | + name: '活动申请', | |
| 170 | + img: '/hdsq.png', | |
| 171 | + path: '/pages/activityAdd/activityAdd' | |
| 172 | + }, | |
| 173 | + { | |
| 174 | + name: '意向申请', | |
| 175 | + img: '/yxsq.png', | |
| 176 | + path: '/pages/rsaManagement/rsaManagement' | |
| 177 | + }, | |
| 178 | + ] | |
| 179 | + }, ], | |
| 180 | + pageList3: [{ | |
| 181 | + id: 2, | |
| 145 | 182 | title: '销售上报与统计', |
| 146 | 183 | children: [ |
| 147 | 184 | // { name: '文件调查', img: '/workbench1.png', path: '/pages/questionnaire/questionnaire' }, |
| 148 | 185 | // { name: '招商方案', img: '/workbench2.png', path: '/pages/Iproposal/Iproposal' }, |
| 149 | 186 | // { name: '我的活动', img: '/workbench3.png', path: '/pages/participation/participation' }, |
| 150 | 187 | // { name: '活动申请', img: '/workbench4.png', path: '/pages/mycreated/mycreated' }, |
| 151 | - { name: '销售上报', img: '/xssb.png', path: '/pages/saleReport/saleReport' }, | |
| 152 | - { name: '销售统计', img: '/xstj.png', path: '/pages/salesReporting/salesReporting' }, | |
| 153 | - ] | |
| 154 | - }, | |
| 155 | - ], | |
| 156 | - pageList4: [ | |
| 157 | - { | |
| 158 | - id: 1, | |
| 159 | - title: '商铺缴费', | |
| 160 | - children: [ | |
| 161 | - // { name: '文件调查', img: '/workbench1.png', path: '/pages/questionnaire/questionnaire' }, | |
| 162 | - // { name: '招商方案', img: '/workbench2.png', path: '/pages/Iproposal/Iproposal' }, | |
| 163 | - // { name: '我的活动', img: '/workbench3.png', path: '/pages/participation/participation' }, | |
| 164 | - // { name: '活动申请', img: '/wyjf.png', path: '/pages/mycreated/mycreated' }, | |
| 165 | - { name: '租金缴费', img: '/zjjf.png', path: '/pagesA/rentPay/rentPay' }, | |
| 188 | + { | |
| 189 | + name: '销售上报', | |
| 190 | + img: '/xssb.png', | |
| 191 | + path: '/pages/saleReport/saleReport' | |
| 192 | + }, | |
| 193 | + { | |
| 194 | + name: '销售统计', | |
| 195 | + img: '/xstj.png', | |
| 196 | + path: '/pages/salesReporting/salesReporting' | |
| 197 | + }, | |
| 166 | 198 | ] |
| 167 | 199 | }, |
| 200 | + | |
| 168 | 201 | ], |
| 202 | + pageList4: [{ | |
| 203 | + id: 3, | |
| 204 | + title: '在线商城', | |
| 205 | + children: [{ | |
| 206 | + name: '订单查询', | |
| 207 | + img: '/xssb.png', | |
| 208 | + path: '/pages/orderList/orderList' | |
| 209 | + }, | |
| 210 | + { | |
| 211 | + name: '售后查询', | |
| 212 | + img: '/xssb.png', | |
| 213 | + path: '/pages/orderList/aftersale', | |
| 214 | + }, | |
| 215 | + { | |
| 216 | + name: '商品库存', | |
| 217 | + img: '/xssb.png', | |
| 218 | + path: '/pages/orderList/inventory' | |
| 219 | + }, | |
| 220 | + ] | |
| 221 | + }], | |
| 222 | + | |
| 223 | + pageList5: [{ | |
| 224 | + id: 4, | |
| 225 | + title: '商铺缴费', | |
| 226 | + children: [ | |
| 227 | + // { name: '文件调查', img: '/workbench1.png', path: '/pages/questionnaire/questionnaire' }, | |
| 228 | + // { name: '招商方案', img: '/workbench2.png', path: '/pages/Iproposal/Iproposal' }, | |
| 229 | + // { name: '我的活动', img: '/workbench3.png', path: '/pages/participation/participation' }, | |
| 230 | + // { name: '活动申请', img: '/wyjf.png', path: '/pages/mycreated/mycreated' }, | |
| 231 | + { | |
| 232 | + name: '租金缴费', | |
| 233 | + img: '/zjjf.png', | |
| 234 | + path: '/pagesA/rentPay/rentPay' | |
| 235 | + }, | |
| 236 | + ] | |
| 237 | + }, ], | |
| 238 | +pageList6: [{ | |
| 239 | + id: 5, | |
| 240 | + title: '推广管理', | |
| 241 | + children: [{ | |
| 242 | + name: '推广申请', | |
| 243 | + img: '/xssb.png', | |
| 244 | + path: '/pages/application/application' | |
| 245 | + }, | |
| 246 | + { | |
| 247 | + name: '我的推广', | |
| 248 | + img: '/xssb.png', | |
| 249 | + path: '/pages/projectManagement/projectManagement', | |
| 250 | + } | |
| 251 | + ] | |
| 252 | + }], | |
| 169 | 253 | scrollTop: 0, |
| 170 | 254 | }; |
| 171 | 255 | }, |
| ... | ... | @@ -178,12 +262,16 @@ |
| 178 | 262 | }) |
| 179 | 263 | } else { |
| 180 | 264 | |
| 181 | - this.$http.sendRequest('/cerePlatformMerchant/queryByPage', 'POST',{"pageSize":10,pageNumber:0,phone:uni.getStorageSync('user').phone}).then(res => { | |
| 182 | - if(res.data.code == '20004' || res.data.code == '20003'){ | |
| 183 | - uni.navigateTo({ | |
| 184 | - url: '/pages/login/login' | |
| 185 | - }) | |
| 186 | - } | |
| 265 | + this.$http.sendRequest('/cerePlatformMerchant/queryByPage', 'POST', { | |
| 266 | + "pageSize": 10, | |
| 267 | + pageNumber: 0, | |
| 268 | + phone: uni.getStorageSync('user').phone | |
| 269 | + }).then(res => { | |
| 270 | + if (res.data.code == '20004' || res.data.code == '20003') { | |
| 271 | + uni.navigateTo({ | |
| 272 | + url: '/pages/login/login' | |
| 273 | + }) | |
| 274 | + } | |
| 187 | 275 | }) |
| 188 | 276 | } |
| 189 | 277 | |
| ... | ... | @@ -195,7 +283,7 @@ |
| 195 | 283 | this.scrollTop = e.scrollTop; |
| 196 | 284 | }, |
| 197 | 285 | methods: { |
| 198 | - toPath(path){ | |
| 286 | + toPath(path) { | |
| 199 | 287 | uni.navigateTo({ |
| 200 | 288 | url: path, |
| 201 | 289 | }) |
| ... | ... | @@ -206,4 +294,4 @@ |
| 206 | 294 | |
| 207 | 295 | <style scoped lang="scss"> |
| 208 | 296 | @import 'workbench.scss'; |
| 209 | 297 | -</style> |
| 298 | +</style> | |
| 210 | 299 | \ No newline at end of file | ... | ... |
lvdao-miniapp/utils/request.js
| ... | ... | @@ -21,10 +21,10 @@ const sendRequest = (url, method = 'GET', data = {}, baseUrl,contentType) => { |
| 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.18: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; | ... | ... |
merchant-web-master/src/utils/request.js
| ... | ... | @@ -19,8 +19,8 @@ let PREFIX; |
| 19 | 19 | if( host == 'localhost:9528' || host == '8.130.38.56:8027' || host == 'localhost:9529'|| host == 'localhost:9530'){ |
| 20 | 20 | // 其他情况的默认值 |
| 21 | 21 | // PREFIX = 'http://8.130.38.56:8027/business-server'; |
| 22 | - // PREFIX = 'https://jy.scjysm.asia:18086/cdwlMall/business-server'; | |
| 23 | - PREFIX = 'http://128.10.249.48:9004'; | |
| 22 | + PREFIX = 'https://jy.scjysm.asia:18086/cdwlMall/business-server'; | |
| 23 | + // PREFIX = 'http://128.10.249.48:9004'; | |
| 24 | 24 | }else{ |
| 25 | 25 | // PREFIX = '/merchant-business'; |
| 26 | 26 | // PREFIX = 'http://8.130.38.56:9004'; | ... | ... |
merchant-web-master/src/views/commodity/commoditySystem/index.vue
| ... | ... | @@ -40,7 +40,7 @@ |
| 40 | 40 | </div> |
| 41 | 41 | <div style="margin-bottom:20px;"> |
| 42 | 42 | <el-button @click="add" style="background-color: #3F9B6A;color: #fff;">新增商品</el-button> |
| 43 | - <!-- <el-button @click="sends" style="background-color: #3F9B6A;color: #fff;">批量导入</el-button> --> | |
| 43 | + <el-button @click="sends" style="background-color: #3F9B6A;color: #fff;">批量导入</el-button> | |
| 44 | 44 | <el-button @click="productDataExport" style="background-color: #3F9B6A;color: #fff;">导出商品</el-button> |
| 45 | 45 | </div> |
| 46 | 46 | <!-- 表格 --> |
| ... | ... | @@ -134,7 +134,7 @@ |
| 134 | 134 | :auto-upload="false" |
| 135 | 135 | accept=".xlsx" |
| 136 | 136 | :headers="headers" |
| 137 | - :action="UploadUrls" | |
| 137 | + :action="UploadUrl" | |
| 138 | 138 | :before-upload="beforeUploadFile" |
| 139 | 139 | :on-change="fileChange" |
| 140 | 140 | :on-remove="batchRemove" |
| ... | ... | @@ -145,7 +145,7 @@ |
| 145 | 145 | > |
| 146 | 146 | <i class="el-icon-upload" /> |
| 147 | 147 | <div class="el-upload__text"> |
| 148 | - <em>点击上传</em> | |
| 148 | + <em style="color:#3F9B6A;">点击上传</em> | |
| 149 | 149 | </div> |
| 150 | 150 | <div slot="tip" class="el-upload__tip">只能上传xlsx文件,且不超过10M</div> |
| 151 | 151 | <div slot="tip" class="el-upload__tip"> | ... | ... |
merchant-web-master/src/views/customerService/kefuMsg/index.vue
0 → 100644
| 1 | +<template> | |
| 2 | +<div style="background-color:#f7f7f7;padding:10px 10px;"> | |
| 3 | + <div class="zhuti"> | |
| 4 | + <div style="display:flex;border: 1px solid #d7d7d7;width: 100%;"> | |
| 5 | + <div class="left_list"> | |
| 6 | + <div :class="index == msgListIndex ?'cardClick' :'card'" v-for="index in 10" @click="getMsg(index)"> | |
| 7 | + <div style="display:flex;justify-content: space-between; margin-bottom: 10px;"> | |
| 8 | + <div class="name">我我去请问而且</div> | |
| 9 | + <div>2024-10-18 17:50:20</div> | |
| 10 | + </div> | |
| 11 | + <div class="const">这里是内容内容内容这里是内容内容内容这里是内容内容内容这里是内容内容内容</div> | |
| 12 | + </div> | |
| 13 | + </div> | |
| 14 | + <div class="right_list" v-if="msgListIndex!=null"> | |
| 15 | + <div class="title_name">我我去请问而且我我去请问而且我我去请问而且</div> | |
| 16 | + <div class="neiBox"> | |
| 17 | + <div class="kehu">Chat Bubble</div> | |
| 18 | + <div class="time">17:50:20</div> | |
| 19 | + </div> | |
| 20 | + <div class="zijiBox"> | |
| 21 | + <div class="ziji">Chat Bubble</div> | |
| 22 | + <div class="time" style="text-align: right;">17:50:20</div> | |
| 23 | + </div> | |
| 24 | + | |
| 25 | + <div class="footput"> | |
| 26 | + <el-input v-model="msg" placeholder="请输入" style="width:90%;margin-right: 15px;" /> | |
| 27 | + <el-button @click="onSubmit" style="background-color: #3F9B6A;color: #fff">发送 | |
| 28 | + </el-button> | |
| 29 | + </div> | |
| 30 | + </div> | |
| 31 | + </div> | |
| 32 | + | |
| 33 | + </div> | |
| 34 | + </div> | |
| 35 | +</template> | |
| 36 | + | |
| 37 | +<script> | |
| 38 | + export default { | |
| 39 | + data() { | |
| 40 | + return { | |
| 41 | + msg:'', | |
| 42 | + msgListIndex:null, | |
| 43 | + tableData:[] | |
| 44 | + } | |
| 45 | + }, | |
| 46 | + created() { | |
| 47 | + | |
| 48 | + }, | |
| 49 | + computed: { | |
| 50 | + | |
| 51 | + }, | |
| 52 | + methods: { | |
| 53 | + getMsg(index){ | |
| 54 | + console.log(index) | |
| 55 | + this.msgListIndex = index | |
| 56 | + } | |
| 57 | + } | |
| 58 | + } | |
| 59 | +</script> | |
| 60 | + | |
| 61 | +<style scoped> | |
| 62 | + /deep/ .first-column-bg { | |
| 63 | + background-color: #f4f4f5 !important; | |
| 64 | + } | |
| 65 | + | |
| 66 | + .zhuti { | |
| 67 | + padding: 20px; | |
| 68 | + background-color: #fff; | |
| 69 | + } | |
| 70 | + | |
| 71 | + /deep/ .el-form-item__content { | |
| 72 | + width: 80%; | |
| 73 | + } | |
| 74 | + .left_list{ | |
| 75 | +border-right: 1px solid #d7d7d7; | |
| 76 | +width: 25%; | |
| 77 | +height: 80vh; | |
| 78 | + overflow-y: auto; /* 允许垂直滚动 */ | |
| 79 | + } | |
| 80 | +.right_list{ | |
| 81 | +width: 75%; | |
| 82 | +height: 80vh; | |
| 83 | +position: relative; | |
| 84 | + overflow-y: auto; /* 允许垂直滚动 */ | |
| 85 | +} | |
| 86 | +.card{ | |
| 87 | + padding:20px; | |
| 88 | + border-bottom:1px solid #d7d7d7 ; | |
| 89 | +} | |
| 90 | +.card:hover{ | |
| 91 | + background-color: #DEEBE2; | |
| 92 | + color: #3F9B6A; | |
| 93 | +} | |
| 94 | + | |
| 95 | +.cardClick{ | |
| 96 | + padding:20px; | |
| 97 | + border-bottom:1px solid #d7d7d7 ; | |
| 98 | + background-color: #3F9B6A; | |
| 99 | + color: #fff; | |
| 100 | +} | |
| 101 | +.cardClick:hover{ | |
| 102 | + background-color: #3F9B6A; | |
| 103 | + color: #fff; | |
| 104 | +} | |
| 105 | + | |
| 106 | +/* 针对WebKit内核的浏览器(如Chrome和Safari)隐藏滚动条 */ | |
| 107 | +.left_list::-webkit-scrollbar { | |
| 108 | + display: none; | |
| 109 | +} | |
| 110 | + | |
| 111 | +/* 对于Firefox,使用以下CSS属性隐藏滚动条 */ | |
| 112 | +.left_list { | |
| 113 | + scrollbar-width: none; /* Firefox 64 */ | |
| 114 | +} | |
| 115 | +/* 针对WebKit内核的浏览器(如Chrome和Safari)隐藏滚动条 */ | |
| 116 | +.right_list::-webkit-scrollbar { | |
| 117 | + display: none; | |
| 118 | +} | |
| 119 | + | |
| 120 | +/* 对于Firefox,使用以下CSS属性隐藏滚动条 */ | |
| 121 | +.right_list { | |
| 122 | + scrollbar-width: none; /* Firefox 64 */ | |
| 123 | +} | |
| 124 | +.const{ | |
| 125 | + width:80%; | |
| 126 | + white-space: nowrap; /* 防止文字换行 */ | |
| 127 | + overflow: hidden; /* 隐藏溢出的文字 */ | |
| 128 | + text-overflow: ellipsis; /* 显示省略号 */ | |
| 129 | +} | |
| 130 | +.title_name{ | |
| 131 | + border-bottom:1px solid #d7d7d7; | |
| 132 | + padding: 20px; | |
| 133 | +} | |
| 134 | +.neiBox{ | |
| 135 | + padding: 20px; | |
| 136 | +} | |
| 137 | +.zijiBox{ | |
| 138 | + padding: 20px; | |
| 139 | +align-content: flex-end; | |
| 140 | + flex-wrap: wrap; | |
| 141 | + flex-direction: column; | |
| 142 | + display: flex; | |
| 143 | +} | |
| 144 | +.footput{ | |
| 145 | + display: flex; | |
| 146 | + position: absolute; | |
| 147 | + bottom:0; | |
| 148 | + left:0; | |
| 149 | + padding: 10px; | |
| 150 | + width: 100%; | |
| 151 | + align-items: center; | |
| 152 | +} | |
| 153 | + .kehu { | |
| 154 | + width: 30%; /* 假设消息框占据了屏幕宽度的80% */ | |
| 155 | + padding: 16px; /* 消息框内的内边距 */ | |
| 156 | + background-color: #F7F5F6; /* 蓝色背景 */ | |
| 157 | + color: #000; /* 白色文字 */ | |
| 158 | + position: relative; /* 为了定位右上角的表情符号 */ | |
| 159 | + font-size: 16px; /* 字体大小 */ | |
| 160 | + text-align: left; /* 文字左对齐 */ | |
| 161 | + /* 移除圆角 */ | |
| 162 | + border-radius: 0; | |
| 163 | + /* 只给右上角添加圆角(如果需要的话,这里设置为0表示不添加) */ | |
| 164 | + border-top-right-radius: 22px; /* 可以根据需要调整或删除此行 */ | |
| 165 | + border-bottom-right-radius: 22px; /* 同上 */ | |
| 166 | + /* 只保留左下角的直角(实际上不需要特别设置,因为默认就是直角) */ | |
| 167 | + /* 但为了明确,我们可以设置其他三个角为0(如果之前设置了圆角的话) */ | |
| 168 | + border-top-left-radius: 40px; | |
| 169 | + border-bottom-left-radius: 0; /* 左下角保持直角,这其实是默认值 */ | |
| 170 | + } | |
| 171 | + .ziji{ | |
| 172 | + width: 30%; /* 假设消息框占据了屏幕宽度的80% */ | |
| 173 | + padding: 16px; /* 消息框内的内边距 */ | |
| 174 | + background-color: #3F9B6A; /* 蓝色背景 */ | |
| 175 | + color: white; /* 白色文字 */ | |
| 176 | + position: relative; /* 为了定位右上角的表情符号 */ | |
| 177 | + font-size: 16px; /* 字体大小 */ | |
| 178 | + text-align: left; /* 文字左对齐 */ | |
| 179 | + /* 移除圆角 */ | |
| 180 | + border-radius: 0; | |
| 181 | + /* 只给右上角添加圆角(如果需要的话,这里设置为0表示不添加) */ | |
| 182 | + border-top-right-radius: 40px; /* 可以根据需要调整或删除此行 */ | |
| 183 | + border-bottom-right-radius: 0px; /* 同上 */ | |
| 184 | + /* 只保留左下角的直角(实际上不需要特别设置,因为默认就是直角) */ | |
| 185 | + /* 但为了明确,我们可以设置其他三个角为0(如果之前设置了圆角的话) */ | |
| 186 | + border-top-left-radius: 22px; | |
| 187 | + border-bottom-left-radius:22px; /* 左下角保持直角,这其实是默认值 */ | |
| 188 | + } | |
| 189 | +.time{ | |
| 190 | +padding:5px; | |
| 191 | +} | |
| 192 | +</style> | ... | ... |
wenjuan-h5/pages_category_page1/question/question.vue
| ... | ... | @@ -711,11 +711,10 @@ |
| 711 | 711 | uni.reLaunch({ |
| 712 | 712 | url: `/pages_category_page1/question/succe?ids=${this.wenjuanIds}` |
| 713 | 713 | }) |
| 714 | - if(this.wenjuan.rewardForParticipation !=''){ | |
| 715 | - // window.location.replace( `https://jy.scjysm.asia:18086/h5-web/#/activity/pages/lottery/index?detailId=${this.wenjuan.rewardForParticipation}&style=${this.wenjuan.style}`); | |
| 716 | - window.location.replace( `https://jy.scjysm.asia:18086/h5-web/#/activity/pages/lottery/index?detailId=${this.wenjuan.rewardForParticipation}&style=${this.wenjuan.actStyle}`); | |
| 714 | + // if(this.wenjuan.rewardForParticipation !=''){ | |
| 715 | + // window.location.replace( `https://jy.scjysm.asia:18086/h5-web/#/activity/pages/lottery/index?detailId=${this.wenjuan.rewardForParticipation}&style=${this.wenjuan.actStyle}`); | |
| 717 | 716 | |
| 718 | - } | |
| 717 | + // } | |
| 719 | 718 | } |
| 720 | 719 | |
| 721 | 720 | }) | ... | ... |
wenjuan-pc/src/views/investigation/index.vue
| ... | ... | @@ -359,8 +359,8 @@ |
| 359 | 359 | fit="fill" /> |
| 360 | 360 | <!-- <img :src="secondData.coverImage" alt="" style="width:25%" /> --> |
| 361 | 361 | </div> |
| 362 | - <div style="padding: 20px 0 ;">参与答卷奖励</div> | |
| 363 | - <el-descriptions class="margin-top" :column="3" border :label-style="labelStylejiang" | |
| 362 | + <!-- <div style="padding: 20px 0 ;">参与答卷奖励</div> --> | |
| 363 | + <!-- <el-descriptions class="margin-top" :column="3" border :label-style="labelStylejiang" | |
| 364 | 364 | :content-style="contentStylejiang"> |
| 365 | 365 | <el-descriptions-item> |
| 366 | 366 | <template slot="label"> |
| ... | ... | @@ -379,7 +379,7 @@ |
| 379 | 379 | style="padding: 0 20px;color: #3F9B6A;cursor: pointer;" @click="actGo(1)">查看</span> |
| 380 | 380 | </div> |
| 381 | 381 | </el-descriptions-item> |
| 382 | - </el-descriptions> | |
| 382 | + </el-descriptions> --> | |
| 383 | 383 | <div style="padding: 20px 0 ;">问卷题目</div> |
| 384 | 384 | <el-table :data="wenData" |
| 385 | 385 | :header-cell-style="{ fontSize: '14px', color: '#0009', fontWeight: 'normal', backgroundColor: '#F2F3F5' }"> |
| ... | ... | @@ -565,7 +565,7 @@ |
| 565 | 565 | </el-form> |
| 566 | 566 | </div> |
| 567 | 567 | <div> |
| 568 | - <div style="border:1px solid #DCDFE6;font-size:14px;margin-bottom:10px;"> | |
| 568 | + <!-- <div style="border:1px solid #DCDFE6;font-size:14px;margin-bottom:10px;"> | |
| 569 | 569 | <div |
| 570 | 570 | style="padding:10px 20px;border-bottom:1px solid #DCDFE6;display:flex;justify-content: space-between;"> |
| 571 | 571 | <div>参与答卷奖励</div> |
| ... | ... | @@ -574,18 +574,10 @@ |
| 574 | 574 | style="padding:20px;"> |
| 575 | 575 | <el-radio-group v-model="radioreward" @change="radioClick"> |
| 576 | 576 | <el-radio label="不设置奖励" value="不设置奖励">不设置奖励</el-radio> |
| 577 | - <!-- <el-radio label="奖励积分" value="奖励积分">奖励积分</el-radio> --> | |
| 578 | 577 | <el-radio label="转盘抽奖" value="转盘抽奖">转盘抽奖</el-radio> |
| 579 | - <!-- <el-radio label="优惠券" value="优惠券">优惠券</el-radio> --> | |
| 580 | 578 | </el-radio-group> |
| 581 | - </el-form> | |
| 582 | - <!-- <div v-if="formInline.rewardForParticipation === '奖励积分'" | |
| 583 | - style="padding: 0 0 20px 20px;"> | |
| 584 | - <div> | |
| 585 | - 奖励 <el-input v-model="jifen" style="width:50px;" />积分 | |
| 586 | - </div> | |
| 587 | - </div> --> | |
| 588 | - <div v-if="radioreward === '转盘抽奖'" style="padding: 0 0 20px 20px;"> | |
| 579 | + </el-form> --> | |
| 580 | + <!-- <div v-if="radioreward === '转盘抽奖'" style="padding: 0 0 20px 20px;"> | |
| 589 | 581 | <div v-if="jiangli.id && jiangli.id!=''" style="padding: 10px 0;"> |
| 590 | 582 | <span>{{jiangli.actName}}</span> |
| 591 | 583 | <span style="padding: 0 20px;color: #3F9B6A;cursor: pointer;" |
| ... | ... | @@ -597,15 +589,8 @@ |
| 597 | 589 | <el-button style="color: #fff;background-color: #3F9B6A;" |
| 598 | 590 | @click="actGo(0)">创建活动</el-button> |
| 599 | 591 | </div> |
| 600 | - </div> | |
| 601 | - <!-- <div v-if="formInline.rewardForParticipation === '优惠券'" | |
| 602 | - style="padding: 0 0 20px 20px;"> | |
| 603 | - <div> | |
| 604 | - <el-select v-model="yhq" placeholder="请选择" style="width:20%"> | |
| 605 | - <el-option v-for="item in yhqSel" :label="item" :value="item" /> | |
| 606 | - </el-select> | |
| 607 | - </div> | |
| 608 | 592 | </div> --> |
| 593 | + | |
| 609 | 594 | </div> |
| 610 | 595 | |
| 611 | 596 | </div> |
| ... | ... | @@ -992,17 +977,15 @@ |
| 992 | 977 | </el-form-item> |
| 993 | 978 | </el-form> |
| 994 | 979 | </div> |
| 995 | - <div style="border:1px solid #DCDFE6;font-size:14px;margin-bottom:10px;"> | |
| 980 | + <!-- <div style="border:1px solid #DCDFE6;font-size:14px;margin-bottom:10px;"> | |
| 996 | 981 | <div |
| 997 | 982 | style="padding:10px 20px;border-bottom:1px solid #DCDFE6;display:flex;justify-content: space-between;"> |
| 998 | 983 | <div>参与答卷奖励</div> |
| 999 | - </div> | |
| 1000 | - <el-form ref="form" :model="secondData" label-width="140px" style="padding:20px;"> | |
| 984 | + </div> --> | |
| 985 | + <!-- <el-form ref="form" :model="secondData" label-width="140px" style="padding:20px;"> | |
| 1001 | 986 | <el-radio-group v-model="radioreward" @change="radioClick"> |
| 1002 | 987 | <el-radio label="不设置奖励" value="不设置奖励">不设置奖励</el-radio> |
| 1003 | - <!-- <el-radio label="奖励积分" value="奖励积分">奖励积分</el-radio> --> | |
| 1004 | 988 | <el-radio label="转盘抽奖" value="转盘抽奖">转盘抽奖</el-radio> |
| 1005 | - <!-- <el-radio label="优惠券" value="优惠券">优惠券</el-radio> --> | |
| 1006 | 989 | </el-radio-group> |
| 1007 | 990 | <div v-if="radioreward === '转盘抽奖'" style="padding: 0 0 20px 20px;"> |
| 1008 | 991 | <div v-if="jiangli.id && jiangli.id!=''" style="padding: 10px 0;"> |
| ... | ... | @@ -1019,7 +1002,7 @@ |
| 1019 | 1002 | |
| 1020 | 1003 | |
| 1021 | 1004 | </div> |
| 1022 | - </el-form> | |
| 1005 | + </el-form> --> | |
| 1023 | 1006 | </div> |
| 1024 | 1007 | </div> |
| 1025 | 1008 | </el-tab-pane> |
| ... | ... | @@ -1737,12 +1720,12 @@ |
| 1737 | 1720 | iframaShow: false, |
| 1738 | 1721 | iframeWin: null, |
| 1739 | 1722 | jiangli: { |
| 1740 | - id: '1895043663592030209', //活动id | |
| 1741 | - actName: '商业测试活动1', //活动名称 | |
| 1742 | - actStyle: '1', //抽奖样式 1:大转盘 2:砸金蛋 3:刮刮卡 4:翻牌乐 5:福袋 6:摇一摇 | |
| 1743 | - // id:'', | |
| 1744 | - // actName:'', | |
| 1745 | - // actStyle:'', //抽奖样式 1:大转盘 2:砸金蛋 3:刮刮卡 4:翻牌乐 5:福袋 6:摇一摇 | |
| 1723 | + // id: '1895043663592030209', //活动id | |
| 1724 | + // actName: '商业测试活动1', //活动名称 | |
| 1725 | + // actStyle: '1', //抽奖样式 1:大转盘 2:砸金蛋 3:刮刮卡 4:翻牌乐 5:福袋 6:摇一摇 | |
| 1726 | + id:'', | |
| 1727 | + actName:'', | |
| 1728 | + actStyle:'', //抽奖样式 1:大转盘 2:砸金蛋 3:刮刮卡 4:翻牌乐 5:福袋 6:摇一摇 | |
| 1746 | 1729 | }, |
| 1747 | 1730 | radioreward: '不设置奖励' |
| 1748 | 1731 | } |
| ... | ... | @@ -2834,27 +2817,26 @@ |
| 2834 | 2817 | this.options[index].index = index + 1 |
| 2835 | 2818 | this.options.sort() |
| 2836 | 2819 | }, |
| 2837 | - actGo(val) { | |
| 2838 | - let token = localStorage.getItem('token'); | |
| 2839 | - if (token && token.startsWith('Bearer')) { | |
| 2840 | - token = token.substring(7); | |
| 2841 | - } | |
| 2842 | - token = | |
| 2843 | - 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJqd3RfdXNlcl9pbmZvIjoie1wiYXBwSWRcIjoxLFwiYXJlYUNvZGVzXCI6W10sXCJjb21wYW55QWRtaW5cIjpmYWxzZSxcImNvbXBhbnlDb2RlXCI6XCJKSkxEXzAwMVwiLFwiZGVwdENvZGVcIjpcIjAwMlwiLFwiZGVwdFRhZ1wiOlwiXCIsXCJsb2dpblR5cGVcIjpcIlBDXCIsXCJtYWluRGVwdENvZGVcIjpcIjAwMlwiLFwibWFuYWdlclwiOnRydWUsXCJuYW1lXCI6XCLotoXnuqfnrqHnkIblkZhcIixcInBob25lXCI6XCIxMzU0MTMwNDkxMFwiLFwicm9sZXNcIjpbXCJyb2xlX3N1cGVyX2FkbWluXCIsXCJ2aXAtYWRtaW5cIl0sXCJzdXBlckFkbWluXCI6dHJ1ZSxcInRvcERlcHRDb2RlXCI6XCIwMDJcIixcInVzZXJJZFwiOjEsXCJ1c2VybmFtZVwiOlwic3VwZXItampsZFwifSIsImp0aSI6ImMxMWQ5ZjJjLTc1ZjItNDM5Yy05NjMzLTliYzU4MTc2NmZmYiIsImV4cCI6MTc0MDY2Mjg2NywiaWF0IjoxNzQwNjQ4NDY3LCJzdWIiOiJDRFdMIiwiaXNzIjoiT0EifQ.-2jv7Vq8pqn8PehIpd1lMXJrSqPsmCfhXp7fddL56qI' | |
| 2844 | - this.iframaShow = true | |
| 2845 | - if (val == 0) { | |
| 2846 | - this.iframaUrl = | |
| 2847 | - `https://jy.scjysm.asia:18086/cdwltool/addEmptyLottery?token=${token}&channel=shangye&thirdPartyUrl=http://localhost:9529/#/investigation/index` | |
| 2848 | - } else if (val == 1) { | |
| 2849 | - this.iframaUrl = | |
| 2850 | - `https://jy.scjysm.asia:18086/cdwltool/addEmptyLottery?token=${token}&id=${this.jiangli.id}&title=活动详情&channel=shangye&thirdPartyUrl=http://localhost:9529/#/investigation/index` | |
| 2851 | - } else if (val == 2) { | |
| 2852 | - this.iframaUrl = | |
| 2853 | - `https://jy.scjysm.asia:18086/cdwltool/addEmptyLottery?token=${token}&id=${this.jiangli.id}&channel=shangye&thirdPartyUrl=http://localhost:9529/#/investigation/index` | |
| 2854 | - } | |
| 2855 | - | |
| 2856 | - // window.location.href = | |
| 2857 | - }, | |
| 2820 | + // actGo(val) { | |
| 2821 | + // let token = localStorage.getItem('token'); | |
| 2822 | + // if (token && token.startsWith('Bearer')) { | |
| 2823 | + // token = token.substring(7); | |
| 2824 | + // } | |
| 2825 | + // token = | |
| 2826 | + // 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJqd3RfdXNlcl9pbmZvIjoie1wiYXBwSWRcIjoxLFwiYXJlYUNvZGVzXCI6W10sXCJjb21wYW55QWRtaW5cIjpmYWxzZSxcImNvbXBhbnlDb2RlXCI6XCJKSkxEXzAwMVwiLFwiZGVwdENvZGVcIjpcIjAwMlwiLFwiZGVwdFRhZ1wiOlwiXCIsXCJsb2dpblR5cGVcIjpcIlBDXCIsXCJtYWluRGVwdENvZGVcIjpcIjAwMlwiLFwibWFuYWdlclwiOnRydWUsXCJuYW1lXCI6XCLotoXnuqfnrqHnkIblkZhcIixcInBob25lXCI6XCIxMzU0MTMwNDkxMFwiLFwicm9sZXNcIjpbXCJyb2xlX3N1cGVyX2FkbWluXCIsXCJ2aXAtYWRtaW5cIl0sXCJzdXBlckFkbWluXCI6dHJ1ZSxcInRvcERlcHRDb2RlXCI6XCIwMDJcIixcInVzZXJJZFwiOjEsXCJ1c2VybmFtZVwiOlwic3VwZXItampsZFwifSIsImp0aSI6ImMxMWQ5ZjJjLTc1ZjItNDM5Yy05NjMzLTliYzU4MTc2NmZmYiIsImV4cCI6MTc0MDY2Mjg2NywiaWF0IjoxNzQwNjQ4NDY3LCJzdWIiOiJDRFdMIiwiaXNzIjoiT0EifQ.-2jv7Vq8pqn8PehIpd1lMXJrSqPsmCfhXp7fddL56qI' | |
| 2827 | + // this.iframaShow = true | |
| 2828 | + // if (val == 0) { | |
| 2829 | + // this.iframaUrl = | |
| 2830 | + // `https://jy.scjysm.asia:18086/cdwltool/addEmptyLottery?token=${token}&channel=shangye&thirdPartyUrl=http://localhost:9529/#/investigation/index` | |
| 2831 | + // } else if (val == 1) { | |
| 2832 | + // this.iframaUrl = | |
| 2833 | + // `https://jy.scjysm.asia:18086/cdwltool/addEmptyLottery?token=${token}&id=${this.jiangli.id}&title=活动详情&channel=shangye&thirdPartyUrl=http://localhost:9529/#/investigation/index` | |
| 2834 | + // } else if (val == 2) { | |
| 2835 | + // this.iframaUrl = | |
| 2836 | + // `https://jy.scjysm.asia:18086/cdwltool/addEmptyLottery?token=${token}&id=${this.jiangli.id}&channel=shangye&thirdPartyUrl=http://localhost:9529/#/investigation/index` | |
| 2837 | + // } | |
| 2838 | + | |
| 2839 | + // }, | |
| 2858 | 2840 | getStatusText(val) { |
| 2859 | 2841 | switch (val) { |
| 2860 | 2842 | case '1': | ... | ... |