| @@ -1,34 +1,47 @@ | |||||
| let config = require('./config/config.js') | let config = require('./config/config.js') | ||||
| const Http = require("./utils/HttpBasics"); | |||||
| App({ | App({ | ||||
| data: { | data: { | ||||
| }, | }, | ||||
| onLaunch: function (options) { | onLaunch: function (options) { | ||||
| var that = this; | |||||
| that.globalData.sceneAddress = options.scene; | |||||
| // var that = this; | |||||
| this.globalData.sceneAddress = options.scene; | |||||
| this.getLocation() | |||||
| this.getUserInfo() | |||||
| // 登录 | // 登录 | ||||
| wx.login({ | wx.login({ | ||||
| success: res => { | |||||
| console.log(res) | |||||
| wx.request({ | |||||
| success: ({ code }) => { | |||||
| Http.post({ | |||||
| url: config.api.login, | url: config.api.login, | ||||
| data: { | data: { | ||||
| appId: config.weapp.AppId, | appId: config.weapp.AppId, | ||||
| code: res.code, | |||||
| sceneAddress: that.globalData.sceneAddress, | |||||
| }, | |||||
| method: 'POST', | |||||
| success: (result)=>{ | |||||
| console.log(result) | |||||
| that.globalData.token = result.data.data.token; | |||||
| console.log(that.globalData.token) | |||||
| that.getUserInfo() | |||||
| that.getLocation() | |||||
| code: code, | |||||
| sceneAddress: this.globalData.sceneAddress, | |||||
| } | } | ||||
| }).then(res => { | |||||
| // console.log("req",res); | |||||
| this.globalData.token = res.token; | |||||
| Http.setToken(res.token) | |||||
| }) | }) | ||||
| // wx.request({ | |||||
| // url: config.api.login, | |||||
| // data: { | |||||
| // appId: config.weapp.AppId, | |||||
| // code: res.code, | |||||
| // sceneAddress: that.globalData.sceneAddress, | |||||
| // }, | |||||
| // method: 'POST', | |||||
| // success: (result) => { | |||||
| // that.globalData.token = result.data.data.token; | |||||
| // console.log(that.globalData.token) | |||||
| // that.getUserInfo() | |||||
| // that.getLocation() | |||||
| // Http.setToken(result.data.data.token) | |||||
| // } | |||||
| // }) | |||||
| } | } | ||||
| }) | }) | ||||
| // setTimeout(() => { | // setTimeout(() => { | ||||
| // this.globalData.market={ | // this.globalData.market={ | ||||
| // name:"陕西大悦城" | // name:"陕西大悦城" | ||||
| @@ -38,10 +51,10 @@ App({ | |||||
| /** | /** | ||||
| * 获取地址位置信息 | * 获取地址位置信息 | ||||
| */ | */ | ||||
| getLocation: function() { | |||||
| getLocation: function () { | |||||
| wx.getLocation({ | wx.getLocation({ | ||||
| type: 'wgs84', | type: 'wgs84', | ||||
| success: function(res) { | |||||
| success: function (res) { | |||||
| console.log("getLocation", res); | console.log("getLocation", res); | ||||
| }, | }, | ||||
| fail: error => { | fail: error => { | ||||
| @@ -52,7 +65,7 @@ App({ | |||||
| /** | /** | ||||
| * 获取用户信息 | * 获取用户信息 | ||||
| */ | */ | ||||
| getUserInfo: function() { | |||||
| getUserInfo: function () { | |||||
| // 获取用户信息 | // 获取用户信息 | ||||
| wx.getSetting({ | wx.getSetting({ | ||||
| success: res => { | success: res => { | ||||
| @@ -1,9 +1,10 @@ | |||||
| var url = 'https://ciformall.youlane.cn' | |||||
| //var url = 'http://a8b668aa.ngrok.io' | |||||
| //var url = 'http://localhost:8001' | |||||
| var apiPrefix = url + '/C'; | |||||
| // var url = 'https://ciformall.youlane.cn' | |||||
| // //var url = 'http://a8b668aa.ngrok.io' | |||||
| // //var url = 'http://localhost:8001' | |||||
| // var apiPrefix = url + '/C'; | |||||
| var config = { | var config = { | ||||
| name: "富茂", | name: "富茂", | ||||
| url: "https://ciformall.youlane.cn/C", | |||||
| api: { | api: { | ||||
| /** | /** | ||||
| * 接口用途:login | * 接口用途:login | ||||
| @@ -55,9 +56,7 @@ var config = { | |||||
| AppId: 'wx8eb8275b78db4ede', | AppId: 'wx8eb8275b78db4ede', | ||||
| } | } | ||||
| }; | }; | ||||
| for (var key in config.api) { | |||||
| config.api[key] = apiPrefix + config.api[key]; | |||||
| } | |||||
| // for (var key in config.api) { | |||||
| // config.api[key] = apiPrefix + config.api[key]; | |||||
| // } | |||||
| module.exports = config; | module.exports = config; | ||||
| @@ -1,22 +1,128 @@ | |||||
| let Common = require('../../../common/common.js') | let Common = require('../../../common/common.js') | ||||
| var app = getApp() | var app = getApp() | ||||
| const Http = require("../../../utils/HttpBasics") | |||||
| Page({ | Page({ | ||||
| data: { | data: { | ||||
| list:{}, | |||||
| couponId:null, | |||||
| orderId:'' | |||||
| list: {}, | |||||
| couponId: null, | |||||
| orderId: '' | |||||
| }, | }, | ||||
| onLoad(e) { | onLoad(e) { | ||||
| console.log(e.id) | console.log(e.id) | ||||
| Common.getCouponDetail(e.id) | |||||
| .then(res =>{ | |||||
| console.log(res) | |||||
| Http.get({ | |||||
| url: Http.config.api.couponDetail, | |||||
| data: { | |||||
| id: e.id | |||||
| } | |||||
| }).then(res => { | |||||
| this.setData({ | this.setData({ | ||||
| list: res.data.data, | |||||
| list: res, | |||||
| couponId: e.id | couponId: e.id | ||||
| }) | }) | ||||
| }) | }) | ||||
| }, | }, | ||||
| /** | |||||
| * 支付订单更新 | |||||
| */ | |||||
| payOrderUpdate: (orderId, payOrderId, status, reason) => { | |||||
| // 支付成功 | |||||
| return Http.post({ | |||||
| url: Http.config.api.payOrderUpdate, data: { | |||||
| payOrderId: payOrderId, | |||||
| orderId: orderId, | |||||
| status: status, | |||||
| reason: reason | |||||
| } | |||||
| }) | |||||
| }, | |||||
| newOrderfunc() { | |||||
| wx.showLoading({ | |||||
| title: '加载中...', | |||||
| }) | |||||
| Http.post({ | |||||
| url: Http.config.api.orderSave, | |||||
| data: { | |||||
| couponId: this.data.couponId | |||||
| } | |||||
| }).then(res => { | |||||
| const orderId = '' + res.id; | |||||
| this.setData({ | |||||
| orderId: orderId | |||||
| }) | |||||
| if (res.payment > 0) { | |||||
| return Http.post({ url: Http.config.api.payOrderCreate, data: { orderId: orderId } }) | |||||
| } else { | |||||
| this.payOrderUpdate(orderId, "0", 1) // 支付成功 | |||||
| .then(res => { | |||||
| wx.showToast({ | |||||
| title: "支付状态更新成功", | |||||
| duration: 3000 | |||||
| }) | |||||
| }) | |||||
| } | |||||
| }).then(res => { | |||||
| console.log(res) | |||||
| if (res) { | |||||
| var payOrderId = '' + res.payOrderId; | |||||
| wx.hideLoading(); | |||||
| wx.requestPayment({ | |||||
| timeStamp: res.timeStamp, | |||||
| nonceStr: res.nonceStr, | |||||
| package: res.package, | |||||
| signType: 'MD5', | |||||
| paySign: res.paySign, | |||||
| 'success': (res) => { | |||||
| this.payOrderUpdate(this.data.orderId, payOrderId, 1)// 支付成功 | |||||
| console.log(res); | |||||
| console.log('支付成功'); | |||||
| wx.showToast({ | |||||
| title: '购买成功', | |||||
| duration: 2500 | |||||
| }) | |||||
| wx.navigateBack({ | |||||
| delta: 2 | |||||
| }) | |||||
| }, | |||||
| 'fail': (res) => { | |||||
| this.payOrderUpdate(this.data.orderId, payOrderId, 2)// 支付失败 | |||||
| console.log(res) | |||||
| console.log('支付失败'); | |||||
| return; | |||||
| }, | |||||
| 'complete': (res) => { | |||||
| console.log(res); | |||||
| console.log('支付完成'); | |||||
| var url = this.data.url; | |||||
| console.log('get url', url) | |||||
| if (res.errMsg == 'requestPayment:ok') { | |||||
| wx.showModal({ | |||||
| title: '提示', | |||||
| content: '支付成功' | |||||
| }); | |||||
| if (url) { | |||||
| setTimeout(function () { | |||||
| wx.redirectTo({ | |||||
| url: '/pages' + url | |||||
| }); | |||||
| }, 2000) | |||||
| } else { | |||||
| setTimeout(() => { | |||||
| wx.navigateBack() | |||||
| }, 2000) | |||||
| } | |||||
| } else { | |||||
| wx.showModal({ | |||||
| title: '错误提示', | |||||
| content: res.errMsg | |||||
| }); | |||||
| } | |||||
| return; | |||||
| } | |||||
| }) | |||||
| } | |||||
| }) | |||||
| }, | |||||
| orderfunc() { | orderfunc() { | ||||
| var that = this | var that = this | ||||
| /* | /* | ||||
| @@ -49,7 +155,7 @@ Page({ | |||||
| */ | */ | ||||
| wx.showLoading({ | wx.showLoading({ | ||||
| title: '加载中...', | |||||
| title: '加载中...', | |||||
| }) | }) | ||||
| var couponId = '' + this.data.couponId; | var couponId = '' + this.data.couponId; | ||||
| console.log("order coupon: " + couponId) | console.log("order coupon: " + couponId) | ||||
| @@ -65,12 +171,12 @@ Page({ | |||||
| return Common.payOrderCreate(orderId) | return Common.payOrderCreate(orderId) | ||||
| } else { | } else { | ||||
| Common.payOrderUpdate(orderId, "0", 1) // 支付成功 | Common.payOrderUpdate(orderId, "0", 1) // 支付成功 | ||||
| .then(res =>{ | |||||
| wx.showToast({ | |||||
| title: res.data.message, | |||||
| duration: 3000 | |||||
| .then(res => { | |||||
| wx.showToast({ | |||||
| title: res.data.message, | |||||
| duration: 3000 | |||||
| }) | |||||
| }) | }) | ||||
| }) | |||||
| } | } | ||||
| } else { | } else { | ||||
| wx.hideLoading(); | wx.hideLoading(); | ||||
| @@ -90,7 +196,7 @@ Page({ | |||||
| package: res.data.data.package, | package: res.data.data.package, | ||||
| signType: 'MD5', | signType: 'MD5', | ||||
| paySign: res.data.data.paySign, | paySign: res.data.data.paySign, | ||||
| 'success': function(res) { | |||||
| 'success': function (res) { | |||||
| Common.payOrderUpdate(that.data.orderId, payOrderId, 1); // 支付成功 | Common.payOrderUpdate(that.data.orderId, payOrderId, 1); // 支付成功 | ||||
| console.log(res); | console.log(res); | ||||
| console.log('支付成功'); | console.log('支付成功'); | ||||
| @@ -102,13 +208,13 @@ Page({ | |||||
| delta: 2 | delta: 2 | ||||
| }) | }) | ||||
| }, | }, | ||||
| 'fail': function(res) { | |||||
| 'fail': function (res) { | |||||
| Common.payOrderUpdate(orderId, payOrderId, 2); // 支付失败 | Common.payOrderUpdate(orderId, payOrderId, 2); // 支付失败 | ||||
| console.log(res) | console.log(res) | ||||
| console.log('支付失败'); | console.log('支付失败'); | ||||
| return; | return; | ||||
| }, | }, | ||||
| 'complete': function(res) { | |||||
| 'complete': function (res) { | |||||
| console.log(res); | console.log(res); | ||||
| console.log('支付完成'); | console.log('支付完成'); | ||||
| var url = that.data.url; | var url = that.data.url; | ||||
| @@ -132,7 +238,7 @@ Page({ | |||||
| } else { | } else { | ||||
| wx.showModal({ | wx.showModal({ | ||||
| title: '错误提示', | title: '错误提示', | ||||
| content: res.errMsg | |||||
| content: res.errMsg | |||||
| }); | }); | ||||
| } | } | ||||
| return; | return; | ||||
| @@ -42,5 +42,5 @@ | |||||
| <text><text class='spot'></text>每桌限用2张</text> | <text><text class='spot'></text>每桌限用2张</text> | ||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| <button bindtap='orderfunc' class='buy'>立即购买</button> | |||||
| <button bindtap='newOrderfunc' class='buy'>立即购买</button> | |||||
| </view> | </view> | ||||
| @@ -1,6 +1,5 @@ | |||||
| // pages/index/sw/index.js | // pages/index/sw/index.js | ||||
| let Common = require('../../../common/common.js') | |||||
| let Http = require('../../../utils/http.js') | |||||
| let Http = require('../../../utils/HttpBasics') | |||||
| Component({ | Component({ | ||||
| /** | /** | ||||
| * 组件的属性列表 | * 组件的属性列表 | ||||
| @@ -41,46 +40,7 @@ Component({ | |||||
| }, | }, | ||||
| ], | ], | ||||
| list: [ | list: [ | ||||
| { | |||||
| img: "http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg", | |||||
| name: "海鲜焗饭", | |||||
| distance: "12.5km", | |||||
| address: "西单大悦城2F-012A", | |||||
| oPrice: "59.00", | |||||
| pPrice: "1.00", | |||||
| }, | |||||
| { | |||||
| img: "http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg", | |||||
| name: "海鲜焗饭", | |||||
| distance: "12.5km", | |||||
| address: "西单大悦城2F-012A", | |||||
| oPrice: "59.00", | |||||
| pPrice: "1.00", | |||||
| }, | |||||
| { | |||||
| img: "http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg", | |||||
| name: "海鲜焗饭", | |||||
| distance: "12.5km", | |||||
| address: "西单大悦城2F-012A", | |||||
| oPrice: "59.00", | |||||
| pPrice: "1.00", | |||||
| }, | |||||
| { | |||||
| img: "http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg", | |||||
| name: "海鲜焗饭", | |||||
| distance: "12.5km", | |||||
| address: "西单大悦城2F-012A", | |||||
| oPrice: "59.00", | |||||
| pPrice: "1.00", | |||||
| }, | |||||
| { | |||||
| img: "http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg", | |||||
| name: "海鲜焗饭", | |||||
| distance: "12.5km", | |||||
| address: "西单大悦城2F-012A", | |||||
| oPrice: "59.00", | |||||
| pPrice: "1.00", | |||||
| }, | |||||
| ], | ], | ||||
| current: '1', | current: '1', | ||||
| current_scroll: '1', | current_scroll: '1', | ||||
| @@ -102,12 +62,16 @@ Component({ | |||||
| }); | }); | ||||
| }, | }, | ||||
| }, | }, | ||||
| ready(){ | |||||
| Common.getCouponList(1, 10) | |||||
| .then(res=>{ | |||||
| console.log(res) | |||||
| ready() { | |||||
| Http.get({ | |||||
| url: Http.config.api.couponList, | |||||
| data: { | |||||
| pageNum: 1, | |||||
| pageSize: 10 | |||||
| } | |||||
| }).then(res => { | |||||
| this.setData({ | this.setData({ | ||||
| list: res.data.data.list | |||||
| list: res.list | |||||
| }) | }) | ||||
| }) | }) | ||||
| } | } | ||||
| @@ -1,9 +1,9 @@ | |||||
| //index.js | |||||
| const Http = require("../../utils/HttpBasics") | |||||
| //获取应用实例 | //获取应用实例 | ||||
| const app = getApp() | const app = getApp() | ||||
| Page({ | Page({ | ||||
| data: { | data: { | ||||
| market:app.globalData.market, | |||||
| market: app.globalData.market, | |||||
| imgUrls: [ | imgUrls: [ | ||||
| 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg', | 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg', | ||||
| 'http://img06.tooopen.com/images/20160818/tooopen_sy_175866434296.jpg', | 'http://img06.tooopen.com/images/20160818/tooopen_sy_175866434296.jpg', | ||||
| @@ -17,4 +17,10 @@ Page({ | |||||
| swiperCurrent: e.detail.current | swiperCurrent: e.detail.current | ||||
| }) | }) | ||||
| }, | }, | ||||
| /** | |||||
| * 生命周期函数--监听页面初次渲染完成 | |||||
| */ | |||||
| onReady: function () { | |||||
| }, | |||||
| }) | }) | ||||
| @@ -1,4 +1,4 @@ | |||||
| let Http = require('../../../utils/http.js') | |||||
| let Http = require('../../../utils/HttpBasics') | |||||
| let app = getApp() | let app = getApp() | ||||
| Page({ | Page({ | ||||
| @@ -27,15 +27,21 @@ Page({ | |||||
| }); | }); | ||||
| }, | }, | ||||
| getList(key) { | getList(key) { | ||||
| Http.getResquest('/api/order/list', app.globalData.token, '加载中', { | |||||
| pageNum: 1, | |||||
| pageSize: 10, | |||||
| orderStatus: key | |||||
| }, (res) => { | |||||
| wx.showLoading({ | |||||
| title: 'loading...', | |||||
| }) | |||||
| Http.get({ | |||||
| url: '/api/order/list', | |||||
| data: { | |||||
| pageNum: 1, | |||||
| pageSize: 10, | |||||
| orderStatus: key | |||||
| } | |||||
| }).then((res) => { | |||||
| wx.hideLoading(); | |||||
| this.setData({ | this.setData({ | ||||
| list: res.data.list | |||||
| list: res.list | |||||
| }) | }) | ||||
| console.log(res) | |||||
| }) | }) | ||||
| }, | }, | ||||
| handleChange({ detail }) { | handleChange({ detail }) { | ||||
| @@ -0,0 +1,116 @@ | |||||
| const config = require('../config/config.js') | |||||
| class HttpBasics { | |||||
| constructor(address) { | |||||
| if (address) { | |||||
| this.address = address; | |||||
| } | |||||
| } | |||||
| /** | |||||
| * 配置 | |||||
| */ | |||||
| config = config; | |||||
| /** | |||||
| * 请求路径前缀 | |||||
| */ | |||||
| address = config.url | |||||
| /** | |||||
| * 请求头 | |||||
| */ | |||||
| headers = { | |||||
| "Content-Type": "application/json;charset=UTF-8", | |||||
| "token": "" | |||||
| }; | |||||
| /** | |||||
| * 设置token | |||||
| * @param {*} token | |||||
| */ | |||||
| setToken(token) { | |||||
| this.headers.token = token; | |||||
| } | |||||
| /** | |||||
| * 获取数据 | |||||
| * @param {url,data,headers} param0 | |||||
| */ | |||||
| get({ url, data, headers }) { | |||||
| headers = { ...this.headers, ...headers }; | |||||
| url = `${this.address}${url}`; | |||||
| // wx.showLoading({ | |||||
| // title: 'loading...', | |||||
| // }) | |||||
| return new Promise((resolve, reject) => { | |||||
| wx.request({ | |||||
| url: url, | |||||
| header: headers, | |||||
| data: data, | |||||
| method: "Get", | |||||
| success: (res) => { | |||||
| // wx.hideLoading(); | |||||
| this.responseMap(res, resolve, reject) | |||||
| }, | |||||
| fail: (err) => { | |||||
| // wx.hideLoading(); | |||||
| reject(err) | |||||
| }, | |||||
| complete: (res) => { | |||||
| } | |||||
| }) | |||||
| }) | |||||
| } | |||||
| /** | |||||
| * 提交数据 | |||||
| * @param {url,data,headers} param0 | |||||
| */ | |||||
| post({ url, data, headers }) { | |||||
| headers = { ...this.headers, ...headers }; | |||||
| url = `${this.address}${url}`; | |||||
| // wx.showLoading({ | |||||
| // title: 'loading...', | |||||
| // }) | |||||
| return new Promise((resolve, reject) => { | |||||
| wx.request({ | |||||
| url: url, | |||||
| header: headers, | |||||
| data: data, | |||||
| method: "POST", | |||||
| success: (res) => { | |||||
| // wx.hideLoading(); | |||||
| this.responseMap(res, resolve, reject) | |||||
| }, | |||||
| fail: (err) => { | |||||
| // wx.hideLoading(); | |||||
| reject(err) | |||||
| }, | |||||
| complete: (res) => { | |||||
| } | |||||
| }) | |||||
| }) | |||||
| } | |||||
| /** | |||||
| * 过滤 请求信息 | |||||
| * @param {*} res | |||||
| * @param {*} resolve | |||||
| * @param {*} reject | |||||
| */ | |||||
| responseMap=(res, resolve, reject)=> { | |||||
| // 网络状态码200 | |||||
| if (res.statusCode == 200) { | |||||
| // 服务器code 200 成功 | |||||
| if (res.data.code == 200) { | |||||
| resolve(res.data.data); | |||||
| } else { | |||||
| wx.hideLoading(); | |||||
| wx.showToast({ | |||||
| title: res.data.message | |||||
| }) | |||||
| reject(res.data.message); | |||||
| } | |||||
| } else { | |||||
| console.error("请求出错:", res); | |||||
| reject(res.errMsg); | |||||
| } | |||||
| } | |||||
| /** 日志 */ | |||||
| log(url, body, headers) { | |||||
| } | |||||
| } | |||||
| module.exports = new HttpBasics(); | |||||