123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569 |
- // pages/order/placeOrder/placeOrder.js
- const app = getApp();
- Page({
- /**
- * 页面的初始数据
- */
- data: {
- activeKey: 0,
- navList: [],
- height: '',
- show: false,
- detailsShow: false,
- carList: [
- ],
- carNum: 0,
- carPrice: 0,
- shoppingList: [],
- shop: [],
- worke: "",
- status: "",
- order_num:""
- },
- /**
- * 生命周期函数--监听页面加载
- */
- onLoad: function (options) {
- console.log(options);
- const q = decodeURIComponent(options.q) // 获取到二维码原始链接内容
-
- if(typeof options.parmise!="undefined"){
- var worke = JSON.parse(options.parmise);
- this.setData({
- worke:worke
- })
- this.getcart();
- }else if(typeof options.network_id!="undefined"){
- this.getNwetwork(options.network_id)
- }else{
- var network_id=app.getQueryVariable(q,"network_id")
- var order_num=app.getQueryVariable(q,"order_num")
- console.log(network_id);
- this.setData({
- order_num:order_num
- })
- this.getNwetwork(network_id)
- }
-
-
-
- this.setData({
- status: app.globalData.status
- })
- this.getHeight()
- this.getCarAll()
-
- this.leftList()
- },
- onShow() {
- this.getcart();
- },
- goto(){
- wx.navigateTo({
- url: '/pages/order/access/access?network_id='+this.data.worke.id,
- })
- },
- shoppingMinus(e) {
- let items = e.currentTarget.dataset.item, list = this.data.shoppingList;
- var carNum = this.data.carNum ? this.data.carNum : 0
- var carPrice = this.data.carPrice ? this.data.carPrice : 0
- list.map(item => {
- if (items.id == item.id) {
- if (item.num <= 0) {
- item.num = 0
- } else {
- item.num--
- }
- console.log(item);
- var price = (item.price.end_time == 0 && item.price.start_time == 0) ? item.price.price : item.price.sale_price
- this.setData({
- carNum: (carNum - 1) <= 0 ? 0 : carNum - 1,
- carPrice: (parseFloat(carPrice) - parseFloat(price)) <= 0 ? 0 : parseFloat(carPrice) - parseFloat(price)
- })
- this.changeCarList(item)
- var good_id = items.id;
- var money = price;
- var stock = item.num;
- this.cartChang(good_id, money, stock);
- }
- })
- this.setData({
- shoppingList: list
- })
- // this.getCarAll()
- },
- shoppingPlus(e) {
- let items = e.currentTarget.dataset.item, list = this.data.shoppingList;
- var carNum = this.data.carNum ? this.data.carNum : 0
- var carPrice = this.data.carPrice ? this.data.carPrice : 0
- list.map(item => {
- if (items.id == item.id) {
- item.num++
- console.log(item);
- this.changeCarList(item)
- var price = (item.price.end_time == 0 && item.price.start_time == 0) ? item.price.price : item.price.sale_price
- this.setData({
- carNum: carNum + 1,
- carPrice: parseFloat(carPrice) + parseFloat(price)
- })
- var type = items.good_type
- var good_id = items.id;
- var money = price;
- var stock = item.num;
- this.cartChang(good_id, money, stock, type);
- }
- })
- this.setData({
- // carList:items,
- shoppingList: list
- })
- //this.getCarAll()
- },
- changeCarList(item) {
- let carList = this.data.carList
- if (carList == {} || carList.length == 0 || !carList || carList !== []) {
- // carList.push(item)
- this.setData({
- carList: item
- })
- return false;
- } else {
- console.log(item);
- var type = false;
- carList.map((i, index) => {
- if (i.id === item.id) {
- i.stock = item.num
- if (item.num == 0) {
- carList.splice(index, 1)
- }
- this.setData({
- carList
- })
- type = false
- } else {
- type = true
- }
- })
- if (type) {
- carList.push(item)
- }
- console.log(carList);
- this.setData({
- carList
- })
- }
- },
- //修改购物车
- cartChang(good_id, money, stock, type = 1) {
- var nid = this.data.worke.id;
- app.api.useApi(app.globalData.baseAppUrl + "api/change_cart", {
- network_id: nid,
- good_id: good_id,
- money: money,
- stock: stock
- }, "post").then(function (res) {
- console.log(res);
- if (res.code != 200) {
- wx.showLoading({
- title: res.message.status,
- })
- } else {
- var data = res.message.data;
- var shop = [];
- for (var index in data) {
- shop[data[index].id] = data[index].goods
- }
- that.setData({
- navList: res.message.data,
- shoppingList: res.message.data[0].goods,
- shop: shop
- })
- if (type != 1) {
- that.getOrder();
- }
- }
- wx.hideLoading();
- }).catch(function (err) {
- console.log(222);
- })
- },
- changeShoppingList(item) {
- console.log(item);
- let shoppingList = this.data.shoppingList;
- shoppingList.map(i => {
- if (item.id == i.id) {
- i.num = item.num
- }
- })
- this.setData({
- shoppingList
- })
- },
- getCarAll() {
- let carList = this.data.carList
- var carNum = this.data.carNum ? this.data.carNum : 0
- var carPrice = this.data.carPrice ? this.data.carPrice : 0
- carList.map(item => {
- wx.nextTick(() => {
- var price = (item.price.end_time && item.price.start_time) ? item.price.sale_price : item.price.price
- carPrice = carPrice + price * item.num;
- this.setData({
- carNum: carNum + item.num,
- carPrice: carPrice
- })
- })
- })
- },
- getcart() {
- var nid = this.data.worke.id;
- var that = this;
- app.api.useApi(app.globalData.baseAppUrl + "api/cart_info", {
- network_id: nid,
- }, "get").then(function (res) {
- console.log(res);
- if (res.code != 200) {
- wx.showLoading({
- title: res.message.msg,
- })
- } else {
- console.log(res.message.msg)
- if (res.message.msg == "空购物车") {
- console.log(111)
- that.setData({
- carList: {},
- carNum: 0,
- carPrice: 0
- })
- } else {
- console.log(444)
- that.setData({
- carList: res.message.data.cart.data,
- carNum: res.message.data.carNum,
- carPrice: res.message.data.carPrice
- })
- }
- }
- wx.hideLoading();
- }).catch(function (err) {
- console.log(222);
- })
- },
- getOrder() {
- var nid = this.data.worke.id;
- app.api.useApi(app.globalData.baseAppUrl + "api/makeorder", {
- network_id: nid,
- }, "post").then(function (res) {
- console.log(res);
- if (res.code != 200) {
- wx.showLoading({
- title: res.message.msg,
- })
- wx.setTimeout(() => {
- wx.hideLoading();
- }, 1000);
- } else {
- var order_no = res.message.data.order_no;
- wx.navigateTo({
- url: '/pages/order/confirmOreder/confirmOreder?order_no=' + order_no,
- })
- }
- }).catch(function (err) {
- console.log(222);
- })
- },
- carPlus(e) {
- let items = e.currentTarget.dataset.item, list = this.data.carList;
- var carNum = this.data.carNum ? this.data.carNum : 0
- var carPrice = this.data.carPrice ? this.data.carPrice : 0
- list.map(item => {
- if (items.good_id == item.good_id) {
- item.stock++
- console.log(item);
- // this.changeShoppingList(item)
- //var price = (item.price.end_time && item.price.start_time) ? item.price.sale_price : item.price.price
- var price = item.money
- this.setData({
- carNum: carNum + 1,
- carPrice: parseFloat(carPrice) + parseFloat(price),
- })
- var good_id = items.good_id;
- var money = price;
- var stock = item.stock;
- this.cartChang(good_id, money, stock);
- }
- })
- this.setData({
- carList: list
- })
- //this.getCarAll()
- },
- carMinus(e) {
- let items = e.currentTarget.dataset.item, list = this.data.carList;
- var carNum = this.data.carNum ? this.data.carNum : 0
- var carPrice = this.data.carPrice ? this.data.carPrice : 0
- console.log(items);
- list.map(item => {
- if (items.good_id == item.good_id) {
- item.stock--
- if (item.stock <= 0) {
- item.stock = 0
- } else {
- item.stock--
- }
- console.log(item);
- var price = item.money
- this.setData({
- carNum: (carNum - 1) <= 0 ? 0 : carNum - 1,
- carPrice: (parseFloat(carPrice) - parseFloat(price)) <= 0 ? 0 : parseFloat(carPrice) - parseFloat(price)
- })
- // this.changeShoppingList(item)
- var good_id = items.good_id;
- var money = price;
- var stock = item.stock;
- this.cartChang(good_id, money, stock);
- if (item.num == 0) {
- list.splice(index, 1)
- }
- }
- })
- this.setData({
- carList: list
- })
- },
- clearCarAll() {
- this.setData({
- carList: []
- })
- let shoppingList = this.data.shoppingList
- shoppingList.map(item => {
- item.num = 0
- })
- this.setData({
- shoppingList
- })
- var that = this;
- var nid = this.data.worke.id;
- app.api.useApi(app.globalData.baseAppUrl + "api/DeleteCart", {
- network_id: nid,
- }, "DELETE").then(function (res) {
- console.log(res);
- if (res.code != 200) {
- wx.showLoading({
- title: res.message.msg,
- })
- } else {
- var data = res.message.data;
- wx.showLoading({
- title: res.message.msg,
- })
- }
- wx.hideLoading();
- }).catch(function (err) {
- console.log(222);
- })
- this.getCarAll()
- this.btnShow()
- this.getHeight()
- },
- closeNews() {
- console.log(this.data.height);
- this.setData({
- height: this.data.height + 40
- })
- },
- changeActive(e) {
- let { activekey } = e.currentTarget.dataset
- var id = e.currentTarget.dataset.id;
- var shoppingList=this.data.shop[id];
-
- if(typeof shoppingList=="undefined"){
- shoppingList=new Array();
- }
-
- this.setData({
- activeKey: activekey,
- shoppingList: shoppingList
- })
- },
- addressDetail() {
- this.setData({
- detailsShow: !this.data.detailsShow
- })
- },
- getHeight() {
- var clientHeight;
- wx.getSystemInfo({
- success: (res) => {
- clientHeight = res.windowHeight;
- }
- });
- var query1 = wx.createSelectorQuery()
- var query2 = wx.createSelectorQuery()
- var query3 = wx.createSelectorQuery()
- query1.select('#footerBar').boundingClientRect()
- query2.select('#topBox').boundingClientRect()
- query3.select('#scrollBox').boundingClientRect()
- query2.exec(result => {
- query3.exec(r => {
- query1.exec(res => {
- if (res && res[0] != null) {
- this.setData({
- height: clientHeight - res[0].height - result[0].height - r[0].height - 40
- })
- } else {
- this.setData({
- height: clientHeight - result[0].height - r[0].height - 40
- })
- }
- console.log(clientHeight, result[0].height, r[0].height);
- })
- })
- })
- },
- btnShow() {
- this.setData({
- show: !this.data.show
- })
- this.getcart()
- },
- leftList: function () {
- var that = this;
- var nid = this.data.worke.id;
- app.api.useApi(app.globalData.baseAppUrl + "api/good", {
- network_id: nid,
- }, "get").then(function (res) {
- console.log(res);
- if (res.code != 200) {
- wx.showLoading({
- title: res.message.status,
- })
- } else {
- var data = res.message.data;
- var shop = [];
- for (var index in data) {
- shop[data[index].id] = data[index].goods
- }
- that.setData({
- navList: res.message.data,
- shoppingList: res.message.data[0].goods,
- shop: shop
- })
- }
- wx.hideLoading();
- }).catch(function (err) {
- console.log(222);
- })
- },
- location() {
-
- wx.openLocation({
- latitude: Number(this.data.worke.lat),
- longitude: Number(this.data.worke.lng),
- });
- },
- /**
- * @name获取网点
- */
- getNwetwork(network_id){
- var that=this;
-
- app.api.useApi(app.globalData.baseAppUrl+'api/network/desc',{
- network_id:network_id>0?network_id:wx.getStorageSync('nid')
- }).then((res)=>{
- if(res.code!=200){
- wx.showToast({
- title: res.message.msg,
- })
- }else{
- console.log(res.message.data);
- that.setData({
- worke:res.message.data
- });
- this.getcart();
- }
-
- }).catch((err)=>{
- console.log(err.message)
- })
- }
- })
|