diff --git a/pages/goods/comments/components/comments-card/components/images-videos/index.wxml b/pages/goods/comments/components/comments-card/components/images-videos/index.wxml index a7aefd2..cd185bb 100644 --- a/pages/goods/comments/components/comments-card/components/images-videos/index.wxml +++ b/pages/goods/comments/components/comments-card/components/images-videos/index.wxml @@ -5,9 +5,9 @@ wx:for-item="resource" wx:key="*this" > - + - + diff --git a/pages/goods/comments/create/index.js b/pages/goods/comments/create/index.js index 5296bc3..e3a1296 100644 --- a/pages/goods/comments/create/index.js +++ b/pages/goods/comments/create/index.js @@ -1,5 +1,12 @@ // import { getCommentDetail } from '../../../../services/good/comments/fetchCommentDetail'; import Toast from 'tdesign-miniprogram/toast/index'; +import { + ServerBasePath +} from '~/app' +import { + addComment +} from '~/services/order/addComment'; + Page({ data: { serviceRateValue: 1, @@ -13,16 +20,21 @@ Page({ column: 3, }, isAllowedSubmit: false, + orderGuid: 0, + goodsGuid: 0, imgUrl: '', title: '', goodsDetail: '', imageProps: { mode: 'aspectFit', }, + textAreaValue: "" }, onLoad(options) { this.setData({ + orderGuid: options.orderGuid, + goodsGuid: options.goodsGuid, imgUrl: options.imgUrl, title: options.title, goodsDetail: options.specs, @@ -30,20 +42,28 @@ Page({ }, onRateChange(e) { - const { value } = e?.detail; + const { + value + } = e?.detail; const item = e?.currentTarget?.dataset?.item; - this.setData({ [item]: value }, () => { + this.setData({ + [item]: value + }, () => { this.updateButtonStatus(); }); }, onAnonymousChange(e) { const status = !!e?.detail?.checked; - this.setData({ isAnonymous: status }); + this.setData({ + isAnonymous: status + }); }, handleSuccess(e) { - const { files } = e.detail; + const { + files + } = e.detail; this.setData({ uploadFiles: files, @@ -51,8 +71,12 @@ Page({ }, handleRemove(e) { - const { index } = e.detail; - const { uploadFiles } = this.data; + const { + index + } = e.detail; + const { + uploadFiles + } = this.data; uploadFiles.splice(index, 1); this.setData({ uploadFiles, @@ -61,26 +85,125 @@ Page({ onTextAreaChange(e) { const value = e?.detail?.value; - this.textAreaValue = value; + this.setData({ + textAreaValue: value + }) this.updateButtonStatus(); }, updateButtonStatus() { - const { serviceRateValue, goodRateValue, conveyRateValue, isAllowedSubmit } = this.data; - const { textAreaValue } = this; + const { + serviceRateValue, + goodRateValue, + conveyRateValue, + isAllowedSubmit + } = this.data; + const { + textAreaValue + } = this.data; const temp = serviceRateValue && goodRateValue && conveyRateValue && textAreaValue; - if (temp !== isAllowedSubmit) this.setData({ isAllowedSubmit: temp }); + if (temp !== isAllowedSubmit) this.setData({ + isAllowedSubmit: temp + }); }, - onSubmitBtnClick() { - const { isAllowedSubmit } = this.data; - if (!isAllowedSubmit) return; - Toast({ - context: this, - selector: '#t-toast', - message: '评价提交成功', - icon: 'check-circle', - }); - wx.navigateBack(); + // 上传图片 + handleAddPic(e) { + const { + files + } = e.detail; + + // 每次选择图片都上传,展示每次上传图片的进度 + files.forEach(file => this.onUploadPic(file)) }, -}); + + // 移除Pic + handleRemovePic(e) { + const { + index + } = e.detail; + const { + uploadFiles + } = this.data; + + uploadFiles.splice(index, 1); + this.setData({ + uploadFiles: uploadFiles, + }); + }, + + // 上传图片方法 + onUploadPic(file) { + let { + uploadFiles + } = this.data + + this.setData({ + uploadFiles : [...uploadFiles, { + ...file, + status: 'loading' + }], + }); + const { + length + } = uploadFiles; + + const task = wx.uploadFile({ + url: ServerBasePath + 'Common/UploadFile', // 仅为示例,非真实的接口地址 + filePath: file.url, + name: 'file', + formData: { + fileDir: 'Shops' + }, + success: (res) => { + this.setData({ + [`uploadFiles[${length}].url`]: JSON.parse(res.data).data.url, + [`uploadFiles[${length}].status`]: 'done', + }); + // this.triggerEventToParent() + }, + }); + task.onProgressUpdate((res) => { + this.setData({ + [`uploadFiles[${length}].percent`]: res.progress, + }); + }); + }, + + + // 提交 + onSubmitBtnClick() { + // goodRateValue 评分 + // textAreaValue 评价内容 + // uploadFiles 评价图片 + const { + orderGuid, + goodsGuid, + goodRateValue, + textAreaValue, + uploadFiles, + isAllowedSubmit + } = this.data; + let data = { + orderGuid: orderGuid, + goodsGuid: goodsGuid, + GoodsCommentRating: goodRateValue, + GoodsCommentContent: textAreaValue, + GoodsCommentImages: uploadFiles.map(item => item.url).join(','), + } + if (!isAllowedSubmit) return; + + addComment(data).then((res) =>{ + if(res.code === 200){ + Toast({ + context: this, + selector: '#t-toast', + message: '评价提交成功', + icon: 'check-circle', + }); + wx.navigateBack(); + } + }) + + }, +}); \ No newline at end of file diff --git a/pages/goods/comments/create/index.wxml b/pages/goods/comments/create/index.wxml index 5009beb..a22df03 100644 --- a/pages/goods/comments/create/index.wxml +++ b/pages/goods/comments/create/index.wxml @@ -2,7 +2,8 @@ - + + {{title}} @@ -32,14 +33,16 @@ /> - + /> --> + + diff --git a/pages/usercenter/index.js b/pages/usercenter/index.js index a7e8335..8ca6303 100644 --- a/pages/usercenter/index.js +++ b/pages/usercenter/index.js @@ -8,13 +8,13 @@ import Toast from 'tdesign-miniprogram/toast/index'; const menuData = [ [ - // { - // title: '申请开店', - // tit: '', - // url: '', - // status: 0, - // type: 'apply-shop', - // }, + { + title: '申请开店', + tit: '', + url: '', + status: 0, + type: 'apply-shop', + }, { title: '收货地址', tit: '', @@ -60,7 +60,7 @@ const menuData = [ const orderTagInfos = [{ title: '待付款', iconName: 'wallet', - orderNum: 1, + orderNum: 0, tabType: 5, status: 1, }, @@ -104,6 +104,11 @@ const getDefaultData = () => ({ collectData: { collectCount: 0, historyCount: 0, + waitPayCount: 0, + deliverCount: 0, + packageCount: 0, + commentCount: 0, + exchangCount: 0, }, menuData, orderTagInfos, @@ -156,11 +161,18 @@ Page({ // ...v, // ...orderInfo[index], // })); + console.log(collectData,'数据'); + this.data.orderTagInfos[0].orderNum = collectData.waitPayCount + this.data.orderTagInfos[1].orderNum = collectData.deliverCount + this.data.orderTagInfos[2].orderNum = collectData.packageCount + this.data.orderTagInfos[3].orderNum = collectData.commentCount + this.data.orderTagInfos[4].orderNum = collectData.exchangCount + console.log(this.data.orderTagInfos,'asdasdasd'); this.setData({ userInfo, collectData, // menuData, - // orderTagInfos: info, + orderTagInfos: this.data.orderTagInfos, // customerServiceInfo, currAuthStep: 2, }); diff --git a/services/order/addComment.js b/services/order/addComment.js new file mode 100644 index 0000000..8c71e5d --- /dev/null +++ b/services/order/addComment.js @@ -0,0 +1,21 @@ +import { + request +} from '../_utils/request'; + +/** 评价 */ +export function addComment(data) { + return new Promise((resolve, reject) => { + request({ + url: `OrderApi/addComment`, + method: 'POST', + data: data, + success: function (res) { + + resolve(res); + }, + fail: function (error) { + reject(error); + } + }); + }); +} \ No newline at end of file diff --git a/services/order/confirmReceipt.js b/services/order/confirmReceipt.js new file mode 100644 index 0000000..a5078ce --- /dev/null +++ b/services/order/confirmReceipt.js @@ -0,0 +1,21 @@ +import { + request +} from '../_utils/request'; + +/** 确认收货 */ +export function confirmReceipt(data) { + return new Promise((resolve, reject) => { + request({ + url: `OrderApi/confirmReceipt`, + method: 'POST', + data: data, + success: function (res) { + + resolve(res); + }, + fail: function (error) { + reject(error); + } + }); + }); +} \ No newline at end of file diff --git a/services/order/delOrder.js b/services/order/delOrder.js new file mode 100644 index 0000000..59f9ae8 --- /dev/null +++ b/services/order/delOrder.js @@ -0,0 +1,20 @@ +import { + request +} from '../_utils/request'; + +/** 删除订单 */ +export function delOrder(id) { + return new Promise((resolve, reject) => { + request({ + url: `OrderApi/` + id, + method: 'DELETE', + success: function (res) { + + resolve(res); + }, + fail: function (error) { + reject(error); + } + }); + }); +} \ No newline at end of file diff --git a/services/order/payCancelOrder.js b/services/order/payCancelOrder.js new file mode 100644 index 0000000..67dcf5f --- /dev/null +++ b/services/order/payCancelOrder.js @@ -0,0 +1,21 @@ +import { + request +} from '../_utils/request'; + +/** 已支付取消订单 */ +export function payCancelOrder(data) { + return new Promise((resolve, reject) => { + request({ + url: `OrderApi/payCancelOrder`, + method: 'POST', + data: data, + success: function (res) { + + resolve(res); + }, + fail: function (error) { + reject(error); + } + }); + }); +} \ No newline at end of file diff --git a/services/order/waitPayCancelOrder.js b/services/order/waitPayCancelOrder.js new file mode 100644 index 0000000..fe5d615 --- /dev/null +++ b/services/order/waitPayCancelOrder.js @@ -0,0 +1,21 @@ +import { + request +} from '../_utils/request'; + +/** 待支付取消订单 */ +export function waitPayCancelOrder(data) { + return new Promise((resolve, reject) => { + request({ + url: `OrderApi/waitPayCancelOrder`, + method: 'POST', + data: data, + success: function (res) { + + resolve(res); + }, + fail: function (error) { + reject(error); + } + }); + }); +} \ No newline at end of file diff --git a/services/order/wxRepay.js b/services/order/wxRepay.js new file mode 100644 index 0000000..cef14a3 --- /dev/null +++ b/services/order/wxRepay.js @@ -0,0 +1,21 @@ +import { + request +} from '../_utils/request'; + +/** 重新调起微信支付 */ +export function wxRepay(data) { + return new Promise((resolve, reject) => { + request({ + url: `WxPay/wxRepay`, + method: 'POST', + data: data, + success: function (res) { + + resolve(res); + }, + fail: function (error) { + reject(error); + } + }); + }); +} \ No newline at end of file diff --git a/pages/order/order-confirm/pay.js b/services/pay.js similarity index 100% rename from pages/order/order-confirm/pay.js rename to services/pay.js diff --git a/services/usercenter/fetchUsercenter.js b/services/usercenter/fetchUsercenter.js index df9a7cc..8651f25 100644 --- a/services/usercenter/fetchUsercenter.js +++ b/services/usercenter/fetchUsercenter.js @@ -22,6 +22,11 @@ export function fetchUserCenter() { collectData: { collectCount: res.data.collectCount, historyCount: res.data.historyCount, + waitPayCount: res.data.waitPayCount, + deliverCount: res.data.deliverCount, + packageCount: res.data.packageCount, + commentCount: res.data.commentCount, + exchangCount: res.data.exchangCount, } }; resolve(data);