diff --git a/common/util.js b/common/util.js
new file mode 100644
index 0000000..ce4a39d
--- /dev/null
+++ b/common/util.js
@@ -0,0 +1,70 @@
+const util = {
+ delRepeat(arr,key){ //去重
+ let resArr = []
+ arr.some(function(item,index){
+ console.log(item);
+ let isRepeat = false;
+ resArr.some(function(item1,index1){
+ if(item.tn == item1.tn){
+ isRepeat = true;
+ }
+ });
+ if(!isRepeat){
+ resArr.push(item);
+ }
+ })
+ return resArr;
+ },
+ Format(date,fmt){
+ date = new Date(date);
+ var o = {
+ "M+": date.getMonth() + 1, //月份
+ "d+": date.getDate(), //日
+ "h+": date.getHours(), //小时
+ "m+": date.getMinutes(), //分
+ "s+": date.getSeconds(), //秒
+ "q+": Math.floor((date.getMonth() + 3) / 3), //季度
+ "S": date.getMilliseconds() //毫秒
+ };
+ if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
+ for (var k in o)
+ if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
+ return fmt;
+ },
+ formatDate(timestamp, format = 'YYYY-MM-DD HH:mm:ss') {
+ const date = new Date(timestamp);
+ const map = {
+ 'YYYY': date.getFullYear(),
+ 'MM': String(date.getMonth() + 1).padStart(2, '0'),
+ 'DD': String(date.getDate()).padStart(2, '0'),
+ 'HH': String(date.getHours()).padStart(2, '0'),
+ 'mm': String(date.getMinutes()).padStart(2, '0'),
+ 'ss': String(date.getSeconds()).padStart(2, '0')
+ };
+ return format.replace(/YYYY|MM|DD|HH|mm|ss/g, match => map[match]);
+ },
+ showMsg(msg,icon,duration = 1600) {
+ uni.showToast({
+ title: msg,
+ duration: duration,
+ icon: icon||'none'
+ });
+ },
+ getDate(time){
+ let timeStr = this.Format(time,'yyyy/MM/dd hh:mm');
+ let timeParse = Date.parse(new Date(timeStr))
+ let timer = {};
+ timer.timeStr = timeStr;
+ timer.timeParse = timeParse;
+ return timer
+ },
+ backPage(time){
+ setTimeout(function(){
+ uni.navigateBack({
+ delta:1
+ })
+ },time||3000)
+ }
+}
+
+export default util
\ No newline at end of file
diff --git a/components/commonUpload.vue b/components/commonUpload.vue
new file mode 100644
index 0000000..8e4c9d0
--- /dev/null
+++ b/components/commonUpload.vue
@@ -0,0 +1,109 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/imgUpload.vue b/components/imgUpload.vue
new file mode 100644
index 0000000..5de97c4
--- /dev/null
+++ b/components/imgUpload.vue
@@ -0,0 +1,109 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/config/api.js b/config/api.js
index 860d196..c06aa15 100644
--- a/config/api.js
+++ b/config/api.js
@@ -98,4 +98,8 @@ export const exchangeRefund = (data, callback) => post('api/recover/exchange/ref
export const question_list = (data, callback) => post('api/recover/recover/question_list', data, callback);
export const recycleOrderList = (data, callback) => post('api/recover/person/orderlist', data, callback);
// export const qiangdanlist = (data, callback) => post('api/recover/person/qiangdanlist', data, callback);
-export const personlogin = (data, callback) => post('api/recover/person/personlogin', data, callback);
\ No newline at end of file
+export const personlogin = (data, callback) => post('api/recover/person/personlogin', data, callback);
+export const applyCertification = (data, callback) => post('api/recover/person/applyCertification', data, callback);
+export const checkPayPassword = (data, callback) => post('api/recover/person/checkPayPassword', data, callback);
+export const verifyPayPassword = (data, callback) => post('api/recover/person/verifyPayPassword', data, callback);
+export const priceList = (data, callback) => post('api/recover/personmoneylog/index', data, callback);
diff --git a/pages.json b/pages.json
index 69262cf..966bdc7 100644
--- a/pages.json
+++ b/pages.json
@@ -203,6 +203,27 @@
"navigationBarTitleText": "代理加盟",
"enablePullDownRefresh": false
}
+ },{
+ "path" : "pages/feedback/index",
+ "style" :
+ {
+ "navigationBarTitleText": "意见反馈",
+ "enablePullDownRefresh": false
+ }
+ },{
+ "path" : "pages/mine/editInfo",
+ "style" :
+ {
+ "navigationBarTitleText": "信息编辑",
+ "enablePullDownRefresh": false
+ }
+ },{
+ "path" : "pages/order/pay",
+ "style" :
+ {
+ "navigationBarTitleText": "支付订单",
+ "enablePullDownRefresh": false
+ }
}
],
"globalStyle": {
diff --git a/pages/feedback/index.vue b/pages/feedback/index.vue
new file mode 100644
index 0000000..f5ce2ba
--- /dev/null
+++ b/pages/feedback/index.vue
@@ -0,0 +1,178 @@
+
+
+
+ 问题描述
+
+
+
+ 请提供问题的截图或照片(选填)
+
+
+
+ 联系方式
+
+
+ 提交
+ 您的反馈我们会尽快解决,但无法保证每一条都能及时反馈,如果有紧急咨询,请直接拨打客服电话:400-000-000
+
+
+
+
+
+
+
diff --git a/pages/index/index.vue b/pages/index/index.vue
index c1bf3b2..6ee2b9a 100644
--- a/pages/index/index.vue
+++ b/pages/index/index.vue
@@ -50,7 +50,7 @@
-
+
@@ -109,7 +109,7 @@
-
+
36分钟内
@@ -448,6 +448,11 @@
onReachBottom (){
},
methods: {
+ goDetail(id){
+ uni.navigateTo({
+ url:'../order/detail?id=' + id
+ })
+ },
cancleClickOrder(){
this.cancleShow = true
this.moreShow = false
diff --git a/pages/mine/apply-.vue b/pages/mine/apply-.vue
new file mode 100644
index 0000000..8818348
--- /dev/null
+++ b/pages/mine/apply-.vue
@@ -0,0 +1,238 @@
+
+
+
+
+
+ 身份证信息
+ 上传本人身份证照片,保持图片清晰完整
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 真实姓名
+
+
+
+
+
+ 身份证号
+
+
+
+
+
+ 有效日期
+
+
+ 至
+
+
+
+
+ 证件地址
+
+
+
+
+
+ 联系电话
+
+
+
+
+
+ 代理区域
+
+
+ -
+
+
+
+
+
+ Tips:我们会在3个工作日内审核并与您联系,请注意接听电话。
+
+
+
+
+ 提交申请
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/mine/apply.vue b/pages/mine/apply.vue
index 8818348..45aa255 100644
--- a/pages/mine/apply.vue
+++ b/pages/mine/apply.vue
@@ -8,36 +8,20 @@
-
-
-
+
+
+
+
+
+
-
-
-
+
+
+
+
+
+
@@ -46,33 +30,47 @@
真实姓名
-
+
身份证号
-
+
有效日期
-
+ {{id_card_start_date||'开始时间'}}
+
至
-
+ {{id_card_end_date||'结束时间'}}
+
+
+
证件地址
-
+
联系电话
-
+
@@ -89,7 +87,7 @@
-
+
提交申请
@@ -98,13 +96,27 @@
diff --git a/pages/mine/editInfo.vue b/pages/mine/editInfo.vue
new file mode 100644
index 0000000..6509165
--- /dev/null
+++ b/pages/mine/editInfo.vue
@@ -0,0 +1,288 @@
+
+
+
+
+
+ 真实姓名
+
+
+
+
+
+ 身份证号
+
+
+
+
+
+ 有效日期
+
+ {{id_card_start_date||'开始时间'}}
+
+ 至
+ {{id_card_end_date||'结束时间'}}
+
+
+
+
+
+
+ 证件地址
+
+
+
+
+
+ 联系电话
+
+
+
+
+
+ 代理区域
+
+
+ -
+
+
+
+
+
+ Tips:我们会在3个工作日内审核并与您联系,请注意接听电话。
+
+
+
+
+ 提交申请
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/mine/mine.vue b/pages/mine/mine.vue
index da46294..8b2f3dd 100644
--- a/pages/mine/mine.vue
+++ b/pages/mine/mine.vue
@@ -24,7 +24,7 @@
-
+
资金记录
@@ -83,7 +83,7 @@
-
+
我的签约
@@ -121,7 +121,21 @@
在线客服
-
+
+
+
+
+ 信息编辑
+
+
+
+
+
+
+ 密码设置
+
+
+
+
+
+
+ 真实姓名
+
+
+
+
+
+
+
+
+ 手机号码
+
+
+
+
+
+
+
+
+
+
+ 原支付密码
+
+
+
+
+
+
+
+
+ 新支付密码
+
+
+
+
+
+
+
+
+ 确认密码
+
+
+
+
+
+
+
+
+
+
+ 支付密码
+
+
+
+
+
+
+
+ 确认密码
+
+
+
+
+
+
-
-
+
+
+
+
@@ -96,12 +163,18 @@
headflag:false,
nickname:'微信用户',
avatar:'/static/img/t2.png',
+ isConfigPassword: false,
+ yuanPassword: '',
+ pay_password: '',
+ rePassword: ''
}
},
components:{
},
onLoad() {
+ this.userinfo = uni.getStorageSync('userInfo');
// this.getAgreement()
+ this.checkPayPassword()
},
onShow() {
var token = uni.getStorageSync('userToken');
@@ -111,6 +184,55 @@
this.getauth()
},
methods: {
+ checkPayPassword(){
+ var _this = this;
+ _this.$api.checkPayPassword({},res=>{
+ if(res.code == '1'){
+ console.log(res.data)
+ this.isConfigPassword = res.data.has_pay_password
+ // uni.showToast({ title: res.msg , icon: 'success' })
+
+ }
+ })
+ },
+ checkPassword() {
+ var _this = this;
+ if(this.isConfigPassword){
+ _this.$api.verifyPayPassword({
+ pay_password: this.yuanPassword
+ },res=>{
+ if(res.code == '1'){
+ console.log(res.data)
+ this.setConfig()
+ }else{
+ uni.showToast({ title: res.msg , icon: 'none' })
+ }
+ })
+ }else{
+ this.setConfig()
+ }
+ },
+ setConfig() {
+ var _this = this;
+ if(this.pay_password != this.rePassword){
+ uni.showToast({ title: '密码和确认密码不一致', icon: 'none' })
+ return false;
+ }
+ let data = {
+ realname: this.userinfo.nickname,
+ mobile: this.userinfo.mobile,
+ pay_password: this.pay_password
+ }
+ _this.$api.editperson(data,res=>{
+ if(res.code == '1'){
+ console.log(res.data)
+ uni.showToast({ title: res.msg , icon: 'success' })
+
+ }else{
+ uni.showToast({ title: res.msg , icon: 'none' })
+ }
+ })
+ },
escLogin(){
this.$api.escLogin({},res=>{
if(res.code == '1'){
@@ -239,6 +361,7 @@
padding: 8rpx 35rpx;
background: #F5F5FA;
height: 100%;
+ overflow: auto;
}
.hs-row{
width: 100%;
@@ -333,4 +456,13 @@
font-size: 30rpx;
color: #FB8F0C;
}
+ .button-bottom{
+ background: #fff;
+ left: 0;
+ padding: 10rpx 35rpx;
+ height: unset!important;
+ }
+ .btn-success{
+ background: linear-gradient(90deg, #FFAD38 0%, #FF884E 100%);
+ }
\ No newline at end of file
diff --git a/pages/mine/priceRecord.vue b/pages/mine/priceRecord.vue
index c226ece..a8929ba 100644
--- a/pages/mine/priceRecord.vue
+++ b/pages/mine/priceRecord.vue
@@ -42,7 +42,8 @@
export default {
data() {
return {
-
+ page: 1,
+ limit: 10
}
},
components:{
@@ -54,6 +55,19 @@
},
methods: {
+ getPriceList(){
+ var _this = this;
+ _this.$api.priceList({},res=>{
+ if(res.code == '1'){
+ if(res.data.user.avatar){
+ _this.avatar = res.data.user.avatar
+ }
+ _this.nickname = res.data.user.nickname
+ _this.userinfo = res.data.user
+ }else{
+ }
+ })
+ },
}
}
diff --git a/pages/order/detail-.vue b/pages/order/detail-.vue
new file mode 100644
index 0000000..6455594
--- /dev/null
+++ b/pages/order/detail-.vue
@@ -0,0 +1,217 @@
+
+
+
+
+
+
+ {{orderInfo.status_name||''}}
+
+
+ 订单号:{{orderInfo.order_no||''}}
+
+
+ 下单时间:{{orderInfo.createtime||''}}
+
+
+ 完成时间:{{orderInfo.finish_time||''}}
+
+
+
+
+
+ 预约信息
+
+
+
+ 联系人 :
+ {{orderInfo.accept_name||''}}
+
+
+ 电话 :
+ {{orderInfo.accept_mobile||''}}
+
+
+ 地址 :
+ {{orderInfo.area_name||''}}
+
+
+
+ {{orderInfo.accept_address||''}}
+
+
+ 订单金额 :
+ {{orderInfo.price||''}}
+
+
+ 订单赠送积分 :
+ {{orderInfo.send_point||''}}
+
+
+
+
+
+
+ 回收信息
+
+
+
+ 预约回收品类 :
+ {{orderInfo.type_name||''}}
+
+
+ 预约时间 :
+ {{orderInfo.order_time||''}}
+
+
+ 预约重量 :
+ {{orderInfo.weight||''}}
+
+
+ 备注 :
+ {{orderInfo.remark||'无'}}
+
+
+
+
+
+
+ 回收员
+
+
+
+ 姓名 :
+ {{orderInfo.person_name||''}}
+
+
+ 电话 :
+ {{orderInfo.person_mobile||''}}
+
+
+ 接单时间 :
+ {{orderInfo.jiedan_time||''}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pages/order/detail.vue b/pages/order/detail.vue
index 8af73ff..962f833 100644
--- a/pages/order/detail.vue
+++ b/pages/order/detail.vue
@@ -1,8 +1,102 @@
-
+
+ {{orderInfo.status_name}}
+ {{orderInfo.order_status_content}}
+
+
+
+ 货物信息
+
+
+
+
+ 回收品类
+ {{orderInfo.type_name}}
+
+
+
+ 数量
+
+ x
+ {{orderInfo.quantity}}
+
+
+
+ 单价
+
+ ¥
+ {{orderInfo.single_price}}
+
+
+
-
+
+ 规格:
+ {{deelData(orderInfo.spec_value)}}
+
+
+
+
+
+ 合计
+
+ ¥
+ {{orderInfo.price}}
+
+
+
+
+
+
+ 回收员信息
+
+
+ {{orderInfo.person_name}}
+ {{orderInfo.person_mobile}}
+ 平台已认证师傅资质,上门请校核是否本人上门
+
+
+ 联系师傅
+
+
+
+
+
+ 用户信息
+
+
+
+ {{orderInfo.accept_name}}
+ {{orderInfo.accept_mobile}}
+ {{orderInfo.area_name}}{{orderInfo.accept_address}}
+
+
+
+
+
+ 预约上门时间
+ 待师傅与您确认哦~
+
+
+
+ 请选择上门服务时间
+ 此项由师傅填写
+
+ 期望上门时间:{{orderInfo.order_time}}
+
+
+
+ 订单备注
+ {{orderInfo.remark}}
+
+
+ 订单信息
+ 下单时间:{{orderInfo.order_time}}
+ 订单编号:{{orderInfo.order_no}}
+
+
+
-
-
+
+ 修改订单
@@ -114,6 +208,33 @@ export default {
this.getOrderDetail();
},
methods: {
+ callPhone(phoneNumber) {
+ uni.makePhoneCall({
+ phoneNumber: phoneNumber, // 必需,电话号码字符串
+ success: (res) => {
+ console.log("拨号成功", res);
+ },
+ fail: (err) => {
+ console.error("拨号失败", err);
+ }
+ });
+ },
+ deelData(val){
+ console.log(val)
+ let str = ''
+ let index = 1
+ for(let key in val){
+ console.log(key)
+ if(index>1){
+ str += ' | ' + key+':'+val[key]
+ }else{
+ str += key+':'+val[key]
+ }
+ index++
+ }
+ console.log(str)
+ return str
+ },
cancelOrder() {
uni.showModal({
title:'提示',
@@ -168,7 +289,9 @@ export default {
diff --git a/pages/order/pay.vue b/pages/order/pay.vue
new file mode 100644
index 0000000..9c188ec
--- /dev/null
+++ b/pages/order/pay.vue
@@ -0,0 +1,608 @@
+
+
+
+
+ 支付方式
+
+
+
+ 线下支付
+
+
+
+
+
+
+
+ 线上支付
+
+
+
+
+
+
+
+ 支付方式
+ 请上传支付记录截图或照片
+
+
+
+
+
+
+
+
+ 回收价格
+
+
+ 平台预估费用
+ ¥
+ 323
+
+ 实际结算费用
+
+
+ ¥
+ 323
+
+
+
+
+
+ 费用说明:
+ 实际结算费用包含支付用户商品货款+平台技术服务费
+
+
+
+
+
+ 货物图片
+ 请上传回收货物照片
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 回收免责条款
+
+
+
+
+
+
+
+ {{xieyi}}
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/question/index-.vue b/pages/question/index-.vue
new file mode 100644
index 0000000..0f17929
--- /dev/null
+++ b/pages/question/index-.vue
@@ -0,0 +1,116 @@
+
+
+
+
+
+
+ {{item.name}}
+
+
+
+
+
+
+ {{item.content}}
+
+
+
+
+
+
+
+
+ 暂无相关数据
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/question/index.vue b/pages/question/index.vue
index 42eaef5..9daeb79 100644
--- a/pages/question/index.vue
+++ b/pages/question/index.vue
@@ -1,23 +1,39 @@
-
-
-
-
- {{item.name}}
-
-
-
-
-
-
- {{item.content}}
-
-
-
+
+
+
+
+ Q
+ {{item.name}}
+
+
+
+ A
+
+
+
+
+
+
+
+
+
-
+
+
暂无相关数据
@@ -36,7 +52,7 @@
contentdown: '查看更多',
contentrefresh: '加载中',
contentnomore: ''
- },
+ }
}
},
onLoad(e) {
@@ -50,7 +66,16 @@
this.ifBottomRefresh = true
this.getData()
},
- methods:{
+ methods:{
+ getH(){
+ const query = uni.createSelectorQuery().in(this);
+ query.select('.textBox').boundingClientRect(({ height }) => {
+ console.log('square_giant的高度是:' + height + 'px');
+ }).exec();
+ },
+ load() {
+ this.$refs.uReadMore.init();
+ },
show(index){
var list = this.list;
list.forEach((item,index2) => {
@@ -75,11 +100,17 @@
\ No newline at end of file