wangxin 3 лет назад
Родитель
Сommit
6dcdd9173c
48 измененных файлов с 630 добавлено и 3154 удалено
  1. BIN
      .DS_Store
  2. 0 33
      miniprogram/api/api.js
  3. 31 28
      miniprogram/api/api.ts
  4. 0 66
      miniprogram/app.js
  5. 0 20
      miniprogram/component/empty/empty.js
  6. 0 7
      miniprogram/config.js
  7. 6 6
      miniprogram/config.ts
  8. BIN
      miniprogram/imgs/tax-registration.png
  9. 0 77
      miniprogram/pages/common-setting/common-setting.js
  10. 0 333
      miniprogram/pages/detail/detail.js
  11. 0 408
      miniprogram/pages/index/index.js
  12. 0 226
      miniprogram/pages/login/login.js
  13. 248 247
      miniprogram/pages/login/login.ts
  14. 0 96
      miniprogram/pages/my-apply/my-apply.js
  15. 0 175
      miniprogram/pages/my-order/my-order.js
  16. 0 34
      miniprogram/pages/payment-records-detail/payment-records-detail.js
  17. 0 71
      miniprogram/pages/payment-records/payment-records.js
  18. 0 101
      miniprogram/pages/person/person.js
  19. 112 86
      miniprogram/pages/person/person.ts
  20. 49 42
      miniprogram/pages/person/person.wxml
  21. 10 2
      miniprogram/pages/person/person.wxss
  22. 0 21
      miniprogram/pages/service_agreement/service_agreement.js
  23. 0 57
      miniprogram/pages/success/success.js
  24. 0 24
      miniprogram/pages/tax-certificate/tax-certificate.js
  25. 0 91
      miniprogram/pages/userinfo/userinfo.js
  26. 0 50
      miniprogram/pages/version/version.js
  27. 0 25
      miniprogram/pages/web-view/web-view.js
  28. 0 1
      miniprogram/pages/web-view/web-view.ts
  29. 0 13
      miniprogram/service/hwEnrollment.js
  30. 1 1
      miniprogram/service/hwEnrollment.ts
  31. 0 36
      miniprogram/service/hwOrder.js
  32. 4 4
      miniprogram/service/hwOrder.ts
  33. 0 20
      miniprogram/service/hwPaymentDetail.js
  34. 2 2
      miniprogram/service/hwPaymentDetail.ts
  35. 0 35
      miniprogram/service/hwRequirement.js
  36. 4 4
      miniprogram/service/hwRequirement.ts
  37. 0 33
      miniprogram/service/hwUser.js
  38. 4 4
      miniprogram/service/hwUser.ts
  39. 14 0
      miniprogram/service/hwVersion.ts
  40. 6 0
      miniprogram/service/service.d.ts
  41. 0 60
      miniprogram/tab-bar/index.js
  42. 0 13
      miniprogram/utils/config_api.js
  43. 0 229
      miniprogram/utils/request.js
  44. 1 1
      miniprogram/utils/request.ts
  45. 12 12
      miniprogram/utils/type.d.ts
  46. 0 241
      miniprogram/utils/util.js
  47. 65 55
      project.config.json
  48. 61 64
      project.private.config.json

Разница между файлами не показана из-за своего большого размера
+ 0 - 33
miniprogram/api/api.js


+ 31 - 28
miniprogram/api/api.ts

@@ -7,32 +7,35 @@
  * @FilePath: \Mina_B_T\miniprogram\api\api.ts
  */
 export default {
-  hwuser: {
-    getAuthCode: '/api/hwuser/getCaptchaCode', //获取验证码
-    phoneLogin: '/api/hwuser/phoneLogin', //手机号登陆
-  },
-  hwUser: {
-    getHwUserInfo: '/api/hwUser/getHwUserInfo', //获取个人信息
-    changeAvatar: '/api/hwUser/changeAvatar', //更改头像
-    banner: '/api/hwUser/banner', //获取首页banner
-  },
-  hwOrder: {
-    getOrders: '/api/hwOrder/getOrders', //获取订单列表
-    getOrderDetail: '/api/hwOrder/getOrderDetail', //获取订单详情
-    confirmOrder: '/api/hwOrder/confirmOrder', //确认订单
-    confirmECOrders: "/api/hwOrder/confirmECOrders", //电子合同确认订单
-  },
-  hwRequirement: {
-    getRequirements: '/api/hwRequirement/getRequirements', //需求列表
-    getRequirementDetail: '/api/hwRequirement/getRequirementDetail', //需求详情
-    enrollmentRequire: '/api/hwRequirement/enrollmentRequire', //需求报名
-    cancelEnrollment: '/api/hwRequirement/cancelEnrollment', //取消报名
-  },
-  hwEnrollment: {
-    getEnrollments: '/api/hwEnrollment/getEnrollments', //我的报名列表
-  },
-  hwPaymentDetail: {
-    getHwPaymentDetailsList: '/api/hwPaymentDetail/getHwPaymentDetailsList', //收款明细列表
-    getPaymentDetail: '/api/hwPaymentDetail/getPaymentDetail', //收款详情
-  },
+	hwuser: {
+		getAuthCode: '/api/hwuser/getCaptchaCode', //获取验证码
+		phoneLogin: '/api/hwuser/phoneLogin', //手机号登陆
+	},
+	hwUser: {
+		getHwUserInfo: '/api/hwUser/getHwUserInfo', //获取个人信息
+		changeAvatar: '/api/hwUser/changeAvatar', //更改头像
+		banner: '/api/hwUser/banner', //获取首页banner
+	},
+	hwOrder: {
+		getOrders: '/api/hwOrder/getOrders', //获取订单列表
+		getOrderDetail: '/api/hwOrder/getOrderDetail', //获取订单详情
+		confirmOrder: '/api/hwOrder/confirmOrder', //确认订单
+		confirmECOrders: "/api/hwOrder/confirmECOrders", //电子合同确认订单
+	},
+	hwRequirement: {
+		getRequirements: '/api/hwRequirement/getRequirements', //需求列表
+		getRequirementDetail: '/api/hwRequirement/getRequirementDetail', //需求详情
+		enrollmentRequire: '/api/hwRequirement/enrollmentRequire', //需求报名
+		cancelEnrollment: '/api/hwRequirement/cancelEnrollment', //取消报名
+	},
+	hwEnrollment: {
+		getEnrollments: '/api/hwEnrollment/getEnrollments', //我的报名列表
+	},
+	hwPaymentDetail: {
+		getHwPaymentDetailsList: '/api/hwPaymentDetail/getHwPaymentDetailsList', //收款明细列表
+		getPaymentDetail: '/api/hwPaymentDetail/getPaymentDetail', //收款详情
+	},
+	hwVersion: {
+		taxRegistration: '/api/hwVersion/taxRegistration'
+	}
 }

Разница между файлами не показана из-за своего большого размера
+ 0 - 66
miniprogram/app.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 20
miniprogram/component/empty/empty.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 7
miniprogram/config.js


+ 6 - 6
miniprogram/config.ts

@@ -7,14 +7,14 @@
  * @FilePath: \Mina_B_T\miniprogram\config.ts
  */
 // 测试服
-// export const apiUrl = "https://hw.hap-job.com/happy-boot"
-// export const baseurl = "https://hw.hap-job.com"
-// export const captcha = '2072736870'
+export const apiUrl = "https://hw.hap-job.com/happy-boot"
+export const baseurl = "https://hw.hap-job.com"
+export const captcha = '2072736870'
 // export const imgServerUrl = "https://hpjobtest.oss-cn-shanghai.aliyuncs.com/uploadfiles/mina"//图片服务器地址
 // export const imgServerUrl_new = "https://hpjobtest.oss-cn-shanghai.aliyuncs.com"//图片服务器地址
 // 正式服
-export const apiUrl = "https://www.dal-pay.com/happy-boot"
-export const baseurl = "https://www.dal-pay.com"
-export const captcha = '2012155849'
+// export const apiUrl = "https://www.dal-pay.com/happy-boot"
+// export const baseurl = "https://www.dal-pay.com"
+// export const captcha = '2012155849'
 // export const imgServerUrl = "https://happyjob.oss-cn-shanghai.aliyuncs.com/uploadfiles/mina"//图片服务器地址
 // export const imgServerUrl_new = "https://happyjob.oss-cn-shanghai.aliyuncs.com"//图片服务器地址

BIN
miniprogram/imgs/tax-registration.png


Разница между файлами не показана из-за своего большого размера
+ 0 - 77
miniprogram/pages/common-setting/common-setting.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 333
miniprogram/pages/detail/detail.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 408
miniprogram/pages/index/index.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 226
miniprogram/pages/login/login.js


+ 248 - 247
miniprogram/pages/login/login.ts

@@ -10,260 +10,261 @@ import { baseurl, captcha } from '../../config'
 import { getAuthCodeImpl, phoneLoginImpl } from "../../service/impl/hwUser.impl";
 Page({
 
-  /**
-   * 页面的初始数据
-   */
-  data: {
-    color: false, // 验证码字体颜色
-    code_message: '获取验证码', // 验证码文字
-    time, // 时间
-    canLogin: false, //是否可以登陆
-    phone: '', // 手机
-    formatPhone: '',
-    code: '', // 验证码
-    userAgreement: encodeURIComponent(baseurl + '/uploadfile/userAgreement.html'),
-    privacyPolicy: encodeURIComponent(baseurl + '/uploadfile/privacyPolicy.html'),
-    isCheck: false, // 是否勾选用户协议
-  },
-  /**
-   * 勾选用户协议
-   */
-  checked() {
-    this.setData({
-      isCheck: !this.data.isCheck,
-      canLogin: Boolean(app.globalData.phone_zz.test(this.data.phone) && this.data.code && !this.data.isCheck),
-    })
-  },
-  // 打开用户协议 和 隐私政策
-  openWebView(e: any) {
-    wx.navigateTo({
-      url: '/pages/web-view/web-view?url=' + e.currentTarget.dataset.url,
-    })
-  },
-  /**
-   * 
-   * 时间倒计时
-   */
-  countDown(options: any) {
-    const _time = --this.data.time;
-    this.setData({
-      code_message: `已发送(${_time}s)`,
-      color: true,
-      time: _time
-    })
-    setInter = setInterval(_ => {
-      let _time = this.data.time;
-      _time--;
-      if (_time > 0) {
-        this.setData({
-          code_message: `已发送(${_time}s)`,
-          color: true,
-          time: _time
-        })
-      } else {
-        clearInterval(setInter);
-        this.setData({
-          code_message: `重新发送`,
-          color: false,
-          time
-        });
-      }
-    }, speed)
-    getAuthCodeImpl({ phone: this.data.phone, ...options }).then(res => {
-      if (res.errCode === 0) {
-        wx.showToast({
-          icon: 'none',
-          title: '发送成功',
-        })
-      }
-    }).catch(() => {
-      clearInterval(setInter);
-      wx.showModal({
-        title: '提示',
-        content: '发送失败,请稍后重试',
-        showCancel: false,
-        success: () => {
-          this.setData({
-            code_message: `重新发送`,
-            color: false,
-            time
-          })
-        }
-      })
-    })
-  },
-  /**
-   * 获取验证码
-   * @phone 电话号码
-   */
-  getCode() {
-    if (this.data.time === time) {
-      if (app.globalData.phone_zz.test(this.data.phone)) {
-        wx.navigateToMiniProgram({
-          appId: 'wx5a3a7366fd07e119',
-          path: '/pages/captcha/index',
-          extraData: {
-            appId: captcha//您申请的验证码的 appId
-          }
-        })
-      } else {
-        wx.showToast({
-          icon: 'none',
-          title: this.data.phone ? '手机号码格式错误!' : '请填写手机号码!',
-        })
-      }
-    }
-  },
-  /**
-   * 检查是否可以登陆
-   * @canLogin 是否可以登陆
-   * @phone  电话号码
-   */
-  checkPhone(e: any) {
-    const value: string = e.detail.value;
-    const phone = value.replace(/\s/g, '');
-    clearTimeout(phoneInter);
-    phoneInter = setTimeout(_ => {
-      let formatPhone: string
-      if (phone.length === 11) {
-        formatPhone = phone.replace(/^(.{3})(.*)(.{4})/, '$1 $2 $3');
-        this.setData({
-          formatPhone
-        })
-      }
-      this.setData({
-        canLogin: Boolean(app.globalData.phone_zz.test(value) && this.data.code && this.data.isCheck),
-        phone: phone,
-      })
-    }, interval)
-  },
-  /**
-   * 检查验证码是否可以登陆
-   * @canLogin 是否可以登陆
-   * @code  验证码
-   */
-  checkCode(e: any) {
-    const value = e.detail.value;
-    clearTimeout(codeInter);
-    codeInter = setTimeout(_ => {
-      this.setData({
-        canLogin: Boolean(app.globalData.phone_zz.test(this.data.phone) && value && this.data.isCheck),
-        code: value
-      })
-    }, interval)
-  },
-  /**
-   * 点击登录
-   * @phone {number} 电话号码
-   * @code {string} 验证码
-   * @register_from {注册来源} 0 小程序 1 APP 2 后台
-   */
-  submit() {
-    // 首先判断是否可以登陆
-    const status = this.data.canLogin;
-    if (status) {
-      phoneLoginImpl({
-        phone: this.data.phone,
-        code: this.data.code,
-        register_from: 0
-      }).then(res => {        
-        if (res.errCode === 0) {
-          // 请求成功 存入userID和userToken 并根据来源跳转不同的页面  后台账号跳转首页
-          wx.setStorage({
-            key: 'userId',
-            data: res.data.userInfo.id,
-            success: () => {
-              wx.setStorage({
-                key: 'userToken',
-                data: res.data.userInfo.userToken,
-                success: () => {
-                  wx.setStorageSync('userInfo', res.data.userInfo)
-                  if (!wx.getStorageInfoSync().keys.length) {
-                    wx.setStorageSync('hasClear', true)
-                  }
-                  // 提交是否登录信息
-                  if (res.data.userInfo.isDemonstrate) {
-                    wx.reLaunch({
-                      url: '/pages/index/index'
-                    })
-                  } else {
-                    wx.reLaunch({
-                      url: '/pages/my-order/my-order'
-                    })
-                  }
-                }
-              })
-            }
-          })
-        }
-      })
-    } else {
-      let content = ''
-      if (!this.data.isCheck) {
-        content = '请勾选用用户协议与隐私政策'
-      }
-      if (!this.data.code) {
-        content = '请填写验证码'
-      }
-      if (!this.data.phone || !app.globalData.phone_zz.test(this.data.phone)) {
-        content = '电话号码格式错误'
-      }
-      wx.showModal({
-        title: '登录失败',
-        content,
-        showCancel: false,
-        confirmColor: '#31364C',
-      })
-    }
-  },
-  /**
-   * 生命周期函数--监听页面加载
-   */
-  onLoad: function (options) {
-    this.options = options;
-  },
+	/**
+	 * 页面的初始数据
+	 */
+	data: {
+		color: false, // 验证码字体颜色
+		code_message: '获取验证码', // 验证码文字
+		time, // 时间
+		canLogin: false, //是否可以登陆
+		phone: '', // 手机
+		formatPhone: '',
+		code: '', // 验证码
+		userAgreement: encodeURIComponent(baseurl + '/uploadfile/userAgreement.html'),
+		privacyPolicy: encodeURIComponent(baseurl + '/uploadfile/privacyPolicy.html'),
+		isCheck: false, // 是否勾选用户协议
+	},
+	/**
+	 * 勾选用户协议
+	 */
+	checked() {
+		this.setData({
+			isCheck: !this.data.isCheck,
+			canLogin: Boolean(app.globalData.phone_zz.test(this.data.phone) && this.data.code && !this.data.isCheck),
+		})
+	},
+	// 打开用户协议 和 隐私政策
+	openWebView(e: any) {
+		wx.navigateTo({
+			url: '/pages/web-view/web-view?url=' + e.currentTarget.dataset.url,
+		})
+	},
+	/**
+	 * 
+	 * 时间倒计时
+	 */
+	countDown(options: any) {
+		const _time = --this.data.time;
+		this.setData({
+			code_message: `已发送(${_time}s)`,
+			color: true,
+			time: _time
+		})
+		setInter = setInterval(_ => {
+			let _time = this.data.time;
+			_time--;
+			if (_time > 0) {
+				this.setData({
+					code_message: `已发送(${_time}s)`,
+					color: true,
+					time: _time
+				})
+			} else {
+				clearInterval(setInter);
+				this.setData({
+					code_message: `重新发送`,
+					color: false,
+					time
+				});
+			}
+		}, speed)
+		getAuthCodeImpl({ phone: this.data.phone, ...options }).then(res => {
+			if (res.errCode === 0) {
+				wx.showToast({
+					icon: 'none',
+					title: '发送成功',
+				})
+			}
+		}).catch(() => {
+			clearInterval(setInter);
+			wx.showModal({
+				title: '提示',
+				content: '发送失败,请稍后重试',
+				showCancel: false,
+				success: () => {
+					this.setData({
+						code_message: `重新发送`,
+						color: false,
+						time
+					})
+				}
+			})
+		})
+	},
+	/**
+	 * 获取验证码
+	 * @phone 电话号码
+	 */
+	getCode() {
+		if (this.data.time === time) {
+			if (app.globalData.phone_zz.test(this.data.phone)) {
+				wx.navigateToMiniProgram({
+					appId: 'wx5a3a7366fd07e119',
+					path: '/pages/captcha/index',
+					extraData: {
+						appId: captcha//您申请的验证码的 appId
+					}
+				})
+			} else {
+				wx.showToast({
+					icon: 'none',
+					title: this.data.phone ? '手机号码格式错误!' : '请填写手机号码!',
+				})
+			}
+		}
+	},
+	/**
+	 * 检查是否可以登陆
+	 * @canLogin 是否可以登陆
+	 * @phone  电话号码
+	 */
+	checkPhone(e: any) {
+		const value: string = e.detail.value;
+		const phone = value.replace(/\s/g, '');
+		clearTimeout(phoneInter);
+		phoneInter = setTimeout(_ => {
+			let formatPhone: string
+			if (phone.length === 11) {
+				formatPhone = phone.replace(/^(.{3})(.*)(.{4})/, '$1 $2 $3');
+				this.setData({
+					formatPhone
+				})
+			}
+			this.setData({
+				canLogin: Boolean(app.globalData.phone_zz.test(value) && this.data.code && this.data.isCheck),
+				phone: phone,
+			})
+		}, interval)
+	},
+	/**
+	 * 检查验证码是否可以登陆
+	 * @canLogin 是否可以登陆
+	 * @code  验证码
+	 */
+	checkCode(e: any) {
+		const value = e.detail.value;
+		clearTimeout(codeInter);
+		codeInter = setTimeout(_ => {
+			this.setData({
+				canLogin: Boolean(app.globalData.phone_zz.test(this.data.phone) && value && this.data.isCheck),
+				code: value
+			})
+		}, interval)
+	},
+	/**
+	 * 点击登录
+	 * @phone {number} 电话号码
+	 * @code {string} 验证码
+	 * @register_from {注册来源} 0 小程序 1 APP 2 后台
+	 */
+	submit() {
+		// 首先判断是否可以登陆
+		const status = this.data.canLogin;
+		if (status) {
+			phoneLoginImpl({
+				phone: this.data.phone,
+				code: this.data.code,
+				register_from: 0
+			}).then(res => {
+				if (res.errCode === 0) {
+					// 请求成功 存入userID和userToken 并根据来源跳转不同的页面  后台账号跳转首页
+					wx.setStorage({
+						key: 'userId',
+						data: res.data.userInfo.id,
+						success: () => {
+							wx.setStorage({
+								key: 'userToken',
+								data: res.data.userInfo.userToken,
+								success: () => {
+									wx.setStorageSync('userInfo', res.data.userInfo)
+									wx.setStorageSync('firstLogin', true)
+									if (!wx.getStorageInfoSync().keys.length) {
+										wx.setStorageSync('hasClear', true)
+									}
+									// 提交是否登录信息
+									if (res.data.userInfo.isDemonstrate) {
+										wx.reLaunch({
+											url: '/pages/index/index'
+										})
+									} else {
+										wx.reLaunch({
+											url: '/pages/my-order/my-order'
+										})
+									}
+								}
+							})
+						}
+					})
+				}
+			})
+		} else {
+			let content = ''
+			if (!this.data.isCheck) {
+				content = '请勾选用用户协议与隐私政策'
+			}
+			if (!this.data.code) {
+				content = '请填写验证码'
+			}
+			if (!this.data.phone || !app.globalData.phone_zz.test(this.data.phone)) {
+				content = '电话号码格式错误'
+			}
+			wx.showModal({
+				title: '登录失败',
+				content,
+				showCancel: false,
+				confirmColor: '#31364C',
+			})
+		}
+	},
+	/**
+	 * 生命周期函数--监听页面加载
+	 */
+	onLoad: function (options) {
+		this.options = options;
+	},
 
-  /**
-   * 生命周期函数--监听页面初次渲染完成
-   */
-  onReady: function () {
+	/**
+	 * 生命周期函数--监听页面初次渲染完成
+	 */
+	onReady: function () {
 
-  },
+	},
 
-  /**
-   * 生命周期函数--监听页面显示
-   */
-  onShow: function () {
-    wx.hideHomeButton();
-    const captchaResult = app.globalData.captchaResult;
-    console.log(captchaResult);
-    if (captchaResult && captchaResult.ret === 0) {
-      // 将验证码的结果返回至服务端校验
-      const ticket = captchaResult.ticket;
-      const randstr = captchaResult.randstr;
-      this.countDown({ ticket, randstr })
-      app.globalData.captchaResult = null; // 验证码的票据为一次性票据,取完需要置空
-    }
-  },
+	/**
+	 * 生命周期函数--监听页面显示
+	 */
+	onShow: function () {
+		wx.hideHomeButton();
+		const captchaResult = app.globalData.captchaResult;
+		console.log(captchaResult);
+		if (captchaResult && captchaResult.ret === 0) {
+			// 将验证码的结果返回至服务端校验
+			const ticket = captchaResult.ticket;
+			const randstr = captchaResult.randstr;
+			this.countDown({ ticket, randstr })
+			app.globalData.captchaResult = null; // 验证码的票据为一次性票据,取完需要置空
+		}
+	},
 
-  /**
-   * 生命周期函数--监听页面隐藏
-   */
-  onHide: function () {
+	/**
+	 * 生命周期函数--监听页面隐藏
+	 */
+	onHide: function () {
 
-  },
+	},
 
-  /**
-   * 生命周期函数--监听页面卸载
-   */
-  onUnload: function () {
+	/**
+	 * 生命周期函数--监听页面卸载
+	 */
+	onUnload: function () {
 
-  },
+	},
 
-  /**
-   * 页面相关事件处理函数--监听用户下拉动作
-   */
-  onPullDownRefresh: function () {
+	/**
+	 * 页面相关事件处理函数--监听用户下拉动作
+	 */
+	onPullDownRefresh: function () {
 
-  }
+	}
 })

Разница между файлами не показана из-за своего большого размера
+ 0 - 96
miniprogram/pages/my-apply/my-apply.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 175
miniprogram/pages/my-order/my-order.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 34
miniprogram/pages/payment-records-detail/payment-records-detail.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 71
miniprogram/pages/payment-records/payment-records.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 101
miniprogram/pages/person/person.js


+ 112 - 86
miniprogram/pages/person/person.ts

@@ -1,104 +1,130 @@
 // pages/person/person.js
 import { getHwUserInfo } from '../../utils/util'
+import { taxRegistration } from "../../service/hwVersion";
 
 Page({
 
-  /**
-   * 页面的初始数据
-   */
-  data: {
-    sign: '认证用户',
-    userInfo: {}
-  },
-  /**
-   * 跳转用户信息列表
-   * 
-   */
-  toUserinfo() {
-    wx.navigateTo({
-      url: '/pages/userinfo/userinfo',
-    })
-  },
-  /**
-   * 退出登录
-   * 清除所有缓存  并跳转登录页
-   */
-  quit() {
-    wx.showModal({
-      title: '是否退出登录',
-      cancelColor: '#888A8E',
-      confirmColor: '#31364C',
-      success: (res) => {
-        if (res.confirm) {
-          wx.clearStorage({
-            success: () => {
-              wx.navigateBack({
-                delta: 1
-              })
-            },
-          })
-        }
-      },
-    })
-  },
+	/**
+	 * 页面的初始数据
+	 */
+	data: {
+		sign: '认证用户',
+		userInfo: {},
+		taxUrl: '',
+		taxName: ''
+	},
+	/**
+	 * 跳转用户信息列表
+	 * 
+	 */
+	toUserinfo() {
+		wx.navigateTo({
+			url: '/pages/userinfo/userinfo',
+		})
+	},
+	/**
+	 * 退出登录
+	 * 清除所有缓存  并跳转登录页
+	 */
+	quit() {
+		wx.showModal({
+			title: '是否退出登录',
+			cancelColor: '#888A8E',
+			confirmColor: '#31364C',
+			success: (res) => {
+				if (res.confirm) {
+					wx.clearStorage({
+						success: () => {
+							wx.navigateBack({
+								delta: 1
+							})
+						},
+					})
+				}
+			},
+		})
+	},
 
-  /**
-   * 生命周期函数--监听页面加载
-   */
-  onLoad: function () {
-    wx.hideHomeButton();
-  },
+	/**
+	 * 生命周期函数--监听页面加载
+	 */
+	onLoad: function () {
+		wx.hideHomeButton();
+	},
 
-  /**
-   * 生命周期函数--监听页面初次渲染完成
-   */
-  onReady: function () {
+	/**
+	 * 生命周期函数--监听页面初次渲染完成
+	 */
+	onReady: function () {
 
-  },
+	},
 
-  /**
-   * 生命周期函数--监听页面显示
-   */
-  onShow: async function () {
-    wx.hideHomeButton();
-    if (wx.getStorageSync('userId') && wx.getStorageSync('userToken')) {
-      // 获取用户信息
-      await getHwUserInfo()
-      this.setData({
-        userInfo: wx.getStorageSync('userInfo'),
-      })
-    } else {
-      // wx.reLaunch({
-      //   url: '/pages/login/login',
-      // })
-    }
-  },
+	/**
+	 * 生命周期函数--监听页面显示
+	 */
+	onShow: async function () {
+		wx.hideHomeButton();
+		if (wx.getStorageSync('userId') && wx.getStorageSync('userToken')) {
+			// 获取用户信息
+			await getHwUserInfo()
+			this.setData({
+				userInfo: wx.getStorageSync('userInfo'),
+			})
+			taxRegistration().then(res => {
+				const data = <responseOptionsType<taxRegistrationResponseType>>res
+				if (data.data?.taxUrl) {
+					this.setData({
+						taxUrl: encodeURIComponent(data.data.taxUrl),
+						taxName: data.data.taxName
+					})
+				}
+				if (data.data?.taxMessage && wx.getStorageSync('firstLogin')) {
+					wx.showModal({
+						title: '提示',
+						content: data.data.taxMessage,
+						showCancel: false,
+						confirmText: '知道了',
+						success: res => {
+							if (res.confirm) {
+								wx.setStorageSync('firstLogin', false)
+							}
+						}
+					})
+				}
+			})
 
-  /**
-   * 生命周期函数--监听页面隐藏
-   */
-  onHide: function () {
+		} else {
+			// wx.reLaunch({
+			//   url: '/pages/login/login',
+			// })
+		}
+	},
 
-  },
+	/**
+	 * 生命周期函数--监听页面隐藏
+	 */
+	onHide: function () {
 
-  /**
-   * 生命周期函数--监听页面卸载
-   */
-  onUnload: function () {
+	},
 
-  },
+	/**
+	 * 生命周期函数--监听页面卸载
+	 */
+	onUnload: function () {
 
-  /**
-   * 页面相关事件处理函数--监听用户下拉动作
-   */
-  onPullDownRefresh: function () {
+	},
 
-  },
+	/**
+	 * 页面相关事件处理函数--监听用户下拉动作
+	 */
+	onPullDownRefresh: function () {
 
-  /**
-   * 页面上拉触底事件的处理函数
-   */
-  onReachBottom: function () {
+	},
 
-  },
+	/**
+	 * 页面上拉触底事件的处理函数
+	 */
+	onReachBottom: function () {
+
+	},
 })

+ 49 - 42
miniprogram/pages/person/person.wxml

@@ -64,49 +64,56 @@
 
 <view class="container">
 
-  <view class="user-info" bindtap="toUserinfo">
-    <view class="info">
-      <view class="avatar">
-        <image src="{{userInfo.avatar}}" wx:if="{{userInfo.avatar}}"></image>
-        <image src="/images/icon/avatar.png" wx:else></image>
-      </view>
-      <view class="info-detail">
-        <view class="name" wx:if="{{userInfo.name}}">{{userInfo.name}}</view>
-        <open-data type="userNickName" wx:else class="name"></open-data>
-        <view class="sign {{userInfo.authenticationStatus !==1&&'no-sign'}}">
-          <image src="{{userInfo.authenticationStatus===1?'../../imgs/sigin.png':'../../imgs/no-sigin.png'}}"></image>
-          <text>{{userInfo.authenticationStatus===0?'未认证':userInfo.authenticationStatus===1?"已认证":"认证不通过"}}</text>
-        </view>
-      </view>
-    </view>
-    <image src="/images/icon/right.png" class="right"></image>
-  </view>
+	<view class="user-info" bindtap="toUserinfo">
+		<view class="info">
+			<view class="avatar">
+				<image src="{{userInfo.avatar}}" wx:if="{{userInfo.avatar}}"></image>
+				<image src="/images/icon/avatar.png" wx:else></image>
+			</view>
+			<view class="info-detail">
+				<view class="name" wx:if="{{userInfo.name}}">{{userInfo.name}}</view>
+				<open-data type="userNickName" wx:else class="name"></open-data>
+				<view class="sign {{userInfo.authenticationStatus !==1&&'no-sign'}}">
+					<image src="{{userInfo.authenticationStatus===1?'../../imgs/sigin.png':'../../imgs/no-sigin.png'}}"></image>
+					<text>{{userInfo.authenticationStatus===0?'未认证':userInfo.authenticationStatus===1?"已认证":"认证不通过"}}</text>
+				</view>
+			</view>
+		</view>
+		<image src="/images/icon/right.png" class="right"></image>
+	</view>
 
-  <view class="group-list">
-    <navigator class="group-item" url="/pages/payment-records/payment-records" hover-class="none">
-      <view class="group-item-content">
-        <image src="../../imgs/records.png"></image>
-        <text>收款记录</text>
-      </view>
-      <image src="/images/icon/right.png" class="right"></image>
-    </navigator>
-    <navigator class="group-item" url="/pages/tax-certificate/tax-certificate" hover-class="none">
-      <view class="group-item-content">
-        <image src="../../imgs/tax.png"></image>
-        <text>完税证明</text>
-      </view>
-      <image src="/images/icon/right.png" class="right"></image>
-    </navigator>
-  </view>
-  <view class="group-list">
-    <navigator class="group-item" url="/pages/common-setting/common-setting" hover-class="none">
-      <view class="group-item-content">
-        <image src="../../imgs/more.png"></image>
-        <text>更多</text>
-      </view>
-      <image src="/images/icon/right.png" class="right"></image>
-    </navigator>
-  </view>
+	<view class="group-list">
+		<navigator class="group-item" url="/pages/payment-records/payment-records" hover-class="none">
+			<view class="group-item-content">
+				<image src="../../imgs/records.png"></image>
+				<text>收款记录</text>
+			</view>
+			<image src="/images/icon/right.png" class="right"></image>
+		</navigator>
+		<navigator class="group-item" url="/pages/tax-certificate/tax-certificate" hover-class="none">
+			<view class="group-item-content">
+				<image src="../../imgs/tax.png"></image>
+				<text>完税证明</text>
+			</view>
+			<image src="/images/icon/right.png" class="right"></image>
+		</navigator>
+		<navigator wx:if="{{taxUrl&&taxName}}" class="group-item" url="/pages/web-view/web-view?url={{taxUrl}}" hover-class="none">
+			<view class="group-item-content">
+				<image src="../../imgs/tax-registration.png"></image>
+				<text class="tax-name">{{taxName}}</text>
+			</view>
+			<image src="/images/icon/right.png" class="right"></image>
+		</navigator>
+	</view>
+	<view class="group-list">
+		<navigator class="group-item" url="/pages/common-setting/common-setting" hover-class="none">
+			<view class="group-item-content">
+				<image src="../../imgs/more.png"></image>
+				<text>更多</text>
+			</view>
+			<image src="/images/icon/right.png" class="right"></image>
+		</navigator>
+	</view>
 
 </view>
 

+ 10 - 2
miniprogram/pages/person/person.wxss

@@ -185,6 +185,14 @@ view.no-sign {
   margin-right: 35rpx;
 }
 
-.tab-bar{
+.tax-name {
+	max-width: 550rpx;
+  overflow: hidden;
+  text-overflow: ellipsis;
+  white-space: nowrap;
+}
+
+.tab-bar {
   height: 110rpx;
-}
+}
+

Разница между файлами не показана из-за своего большого размера
+ 0 - 21
miniprogram/pages/service_agreement/service_agreement.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 57
miniprogram/pages/success/success.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 24
miniprogram/pages/tax-certificate/tax-certificate.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 91
miniprogram/pages/userinfo/userinfo.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 50
miniprogram/pages/version/version.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 25
miniprogram/pages/web-view/web-view.js


+ 0 - 1
miniprogram/pages/web-view/web-view.ts

@@ -12,7 +12,6 @@ Page({
    */
   onLoad: function (options: any) {
     if (options.url) {
-      console.log(decodeURIComponent(options.url))
       this.setData({
         url: decodeURIComponent(options.url)
       })

Разница между файлами не показана из-за своего большого размера
+ 0 - 13
miniprogram/service/hwEnrollment.js


+ 1 - 1
miniprogram/service/hwEnrollment.ts

@@ -6,7 +6,7 @@ import { $request } from "../utils/request";
  * 获取我的订单列表
  * @param data 
  */
-export const getEnrollmentsApi = (data: getEnrollmentsDataType): Promise<responesOptions> => {
+export const getEnrollmentsApi = (data: getEnrollmentsDataType): Promise<responseOptions> => {
 	const options: requestOptionsType<any> = {
 		url: api.hwEnrollment.getEnrollments,
 		data

Разница между файлами не показана из-за своего большого размера
+ 0 - 36
miniprogram/service/hwOrder.js


+ 4 - 4
miniprogram/service/hwOrder.ts

@@ -5,7 +5,7 @@ import { $request } from "../utils/request";
  * 获取我的订单列表
  * @param data 
  */
-export const getOrdersApi = (data: getOrdersDataType): Promise<responesOptions> => {
+export const getOrdersApi = (data: getOrdersDataType): Promise<responseOptions> => {
 	const options: requestOptionsType<any> = {
 		url: api.hwOrder.getOrders,
 		data
@@ -17,7 +17,7 @@ export const getOrdersApi = (data: getOrdersDataType): Promise<responesOptions>
  * 确认订单
  * @param data 
  */
-export const confirmOrderApi = (data: confirmOrderDatatype): Promise<responesOptions> => {
+export const confirmOrderApi = (data: confirmOrderDatatype): Promise<responseOptions> => {
 	const options: requestOptionsType<any> = {
 		url: api.hwOrder.confirmOrder,
 		data,
@@ -30,7 +30,7 @@ export const confirmOrderApi = (data: confirmOrderDatatype): Promise<responesOpt
  * 确认订单
  * @param data 
  */
-export const confirmECOrdersApi = (data: confirmOrderDatatype): Promise<responesOptions> => {
+export const confirmECOrdersApi = (data: confirmOrderDatatype): Promise<responseOptions> => {
 	const options: requestOptionsType<any> = {
 		url: api.hwOrder.confirmECOrders,
 		data,
@@ -43,7 +43,7 @@ export const confirmECOrdersApi = (data: confirmOrderDatatype): Promise<respones
  * 获取订单详情
  * @param data 
  */
-export const getOrderDetailApi = (data: getOrderDetailDataType): Promise<responesOptions> => {
+export const getOrderDetailApi = (data: getOrderDetailDataType): Promise<responseOptions> => {
 	const options: requestOptionsType<any> = {
 		url: api.hwOrder.getOrderDetail,
 		data,

Разница между файлами не показана из-за своего большого размера
+ 0 - 20
miniprogram/service/hwPaymentDetail.js


+ 2 - 2
miniprogram/service/hwPaymentDetail.ts

@@ -5,7 +5,7 @@ import { $request } from "../utils/request";
  * 获取付款详情列表
  * @param data 
  */
-export const getHwPaymentDetailsListApi = (data: getHwPaymentDetailsListDataType): Promise<responesOptions> => {
+export const getHwPaymentDetailsListApi = (data: getHwPaymentDetailsListDataType): Promise<responseOptions> => {
   const options: requestOptionsType<any> = {
     url: api.hwPaymentDetail.getHwPaymentDetailsList,
     data
@@ -13,7 +13,7 @@ export const getHwPaymentDetailsListApi = (data: getHwPaymentDetailsListDataType
   return $request(options)
 }
 
-export const getPaymentDetailApi = (data:getPaymentDetailDataType): Promise<responesOptions> => {
+export const getPaymentDetailApi = (data:getPaymentDetailDataType): Promise<responseOptions> => {
   const options: requestOptionsType<any> = {
     url: api.hwPaymentDetail.getPaymentDetail,
     data

Разница между файлами не показана из-за своего большого размера
+ 0 - 35
miniprogram/service/hwRequirement.js


+ 4 - 4
miniprogram/service/hwRequirement.ts

@@ -13,7 +13,7 @@ import { $request } from "../utils/request";
  * 获取需求列表
  * @param data 
  */
-export const getRequirementsApi = (data: getRequirementsData): Promise<responesOptions> => {
+export const getRequirementsApi = (data: getRequirementsData): Promise<responseOptions> => {
   const options: requestOptionsType<any> = {
     url: api.hwRequirement.getRequirements,
     data
@@ -25,7 +25,7 @@ export const getRequirementsApi = (data: getRequirementsData): Promise<responesO
  * 报名需求
  * @param data 
  */
-export const enrollmentRequireApi = (data: enrollmentRequireDataType): Promise<responesOptions> => {
+export const enrollmentRequireApi = (data: enrollmentRequireDataType): Promise<responseOptions> => {
   const options: requestOptionsType<any> = {
     url: api.hwRequirement.enrollmentRequire,
     data
@@ -37,7 +37,7 @@ export const enrollmentRequireApi = (data: enrollmentRequireDataType): Promise<r
  * 取消报名
  * @param data 
  */
-export const cancelEnrollmentApi = (data: cancelEnrollmentDataType): Promise<responesOptions> => {
+export const cancelEnrollmentApi = (data: cancelEnrollmentDataType): Promise<responseOptions> => {
   const options: requestOptionsType<any> = {
     url: api.hwRequirement.cancelEnrollment,
     data,
@@ -50,7 +50,7 @@ export const cancelEnrollmentApi = (data: cancelEnrollmentDataType): Promise<res
  * 获取需求详情
  * @param data 
  */
-export const getRequirementDetailApi = (data: getRequirementDetailDataType): Promise<responesOptions> => {
+export const getRequirementDetailApi = (data: getRequirementDetailDataType): Promise<responseOptions> => {
   const options: requestOptionsType<any> = {
     url: api.hwRequirement.getRequirementDetail,
     data,

Разница между файлами не показана из-за своего большого размера
+ 0 - 33
miniprogram/service/hwUser.js


+ 4 - 4
miniprogram/service/hwUser.ts

@@ -9,14 +9,14 @@
 import api from "../api/api";
 import { $request } from "../utils/request";
 
-export const getHwUserInfoApi = (): Promise<responesOptions> => {
+export const getHwUserInfoApi = (): Promise<responseOptions> => {
   const options: requestOptionsType<any> = {
     url: api.hwUser.getHwUserInfo,
   };
   return $request(options);
 };
 
-export const bannerApi = (): Promise<responesOptions> => {
+export const bannerApi = (): Promise<responseOptions> => {
   const options: requestOptionsType<any> = {
     url: api.hwUser.banner,
   };
@@ -27,7 +27,7 @@ export const bannerApi = (): Promise<responesOptions> => {
  * 获取验证码
  * @param data 
  */
-export const getAuthCodeApi = (data: getAuthCodeDataType): Promise<responesOptions> => {
+export const getAuthCodeApi = (data: getAuthCodeDataType): Promise<responseOptions> => {
   const options: requestOptionsType<any> = {
     url: api.hwuser.getAuthCode,
     data
@@ -39,7 +39,7 @@ export const getAuthCodeApi = (data: getAuthCodeDataType): Promise<responesOptio
  * 电话登陆
  * @param data 
  */
-export const phoneLoginApi = (data: phoneLoginDataType): Promise<responesOptions> => {
+export const phoneLoginApi = (data: phoneLoginDataType): Promise<responseOptions> => {
   const options: requestOptionsType<any> = {
     url: api.hwuser.phoneLogin,
     data,

+ 14 - 0
miniprogram/service/hwVersion.ts

@@ -0,0 +1,14 @@
+import api from "../api/api";
+import { $request } from "../utils/request";
+
+
+/**
+ * 我的页面获取弹窗
+ * @param data 
+ */
+export const taxRegistration = (): Promise<responseOptions> => {
+	const options: requestOptionsType<any> = {
+		url: api.hwVersion.taxRegistration
+	};
+	return $request(options);
+};

+ 6 - 0
miniprogram/service/service.d.ts

@@ -69,4 +69,10 @@ interface getRequirementsData {
   trade_type?: number
   priceType?: number
   platform_id?: number
+}
+
+type taxRegistrationResponseType = {
+	taxUrl: string,
+	taxMessage: string,
+	taxName: string
 }

Разница между файлами не показана из-за своего большого размера
+ 0 - 60
miniprogram/tab-bar/index.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 13
miniprogram/utils/config_api.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 229
miniprogram/utils/request.js


+ 1 - 1
miniprogram/utils/request.ts

@@ -99,7 +99,7 @@ async function formatOption(options: any): Promise<any> {
  * @param {any} opt 传入的参数对象
  * @return {*} 返回promise对象
  */
-export async function $request(opt: any): Promise<responesOptions> {
+export async function $request<T>(opt: any): Promise<responseOptions<T>> {
   let route = getCurrentPages();
   const options = await formatOption(opt)
   if (options === 'offline') return Promise.reject(options)

+ 12 - 12
miniprogram/utils/type.d.ts

@@ -7,18 +7,18 @@
  * @FilePath: \Mina_B_T\miniprogram\utils\type.d.ts
  */
 
-interface responseOptionsType {
-  errcode?: number
-  errmsg?: string
-  data?: any
-  [name: string]: any
+interface responseOptionsType<T = any> {
+	errcode?: number
+	errmsg?: string
+	data?: T
+	[name: string]: any
 }
-type responesOptions = responseOptionsType | boolean | string;
+type responseOptions<T = any> = responseOptionsType<T> | boolean | string;
 interface requestOptionsType<T> {
-  url: string
-  data?: T | any
-  type?: string
-  [name: string]: any
-  success?: Function
-  fail?: Function
+	url: string
+	data?: T | any
+	type?: string
+	[name: string]: any
+	success?: Function
+	fail?: Function
 }

Разница между файлами не показана из-за своего большого размера
+ 0 - 241
miniprogram/utils/util.js


+ 65 - 55
project.config.json

@@ -1,57 +1,67 @@
 {
-  "description": "项目配置文件",
-  "packOptions": {
-    "ignore": []
-  },
-  "miniprogramRoot": "miniprogram/",
-  "compileType": "miniprogram",
-  "libVersion": "2.12.3",
-  "projectname": "Mina_B_T",
-  "scripts": {
-    "beforeCompile": "npm run  tsc",
-    "beforePreview": "npm run tsc",
-    "beforeUpload": "npm run tsc"
-  },
-  "setting": {
-    "urlCheck": true,
-    "es6": true,
-    "enhance": true,
-    "postcss": true,
-    "preloadBackgroundData": false,
-    "minified": true,
-    "newFeature": false,
-    "coverView": true,
-    "nodeModules": true,
-    "autoAudits": false,
-    "showShadowRootInWxmlPanel": true,
-    "scopeDataCheck": false,
-    "uglifyFileName": true,
-    "checkInvalidKey": true,
-    "checkSiteMap": true,
-    "uploadWithSourceMap": true,
-    "compileHotReLoad": true,
-    "lazyloadPlaceholderEnable": false,
-    "useMultiFrameRuntime": true,
-    "useApiHook": true,
-    "useApiHostProcess": true,
-    "babelSetting": {
-      "ignore": [],
-      "disablePlugins": [],
-      "outputPath": ""
-    },
-    "enableEngineNative": false,
-    "useIsolateContext": true,
-    "userConfirmedBundleSwitch": false,
-    "packNpmManually": false,
-    "packNpmRelationList": [],
-    "minifyWXSS": true,
-    "disableUseStrict": false,
-    "showES6CompileOption": false,
-    "useCompilerPlugins": false,
-    "minifyWXML": true
-  },
-  "simulatorType": "wechat",
-  "simulatorPluginLibVersion": {},
-  "appid": "wxb0f8f3f0de6e8f07",
-  "condition": {}
+	"description": "项目配置文件,详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html",
+	"packOptions": {
+		"ignore": [],
+		"include": []
+	},
+	"miniprogramRoot": "miniprogram/",
+	"compileType": "miniprogram",
+	"libVersion": "2.12.3",
+	"projectname": "Mina_B_T",
+	"scripts": {
+		"beforeCompile": "npm run  tsc",
+		"beforePreview": "npm run tsc",
+		"beforeUpload": "npm run tsc"
+	},
+	"setting": {
+		"urlCheck": true,
+		"es6": true,
+		"enhance": true,
+		"postcss": true,
+		"preloadBackgroundData": false,
+		"minified": true,
+		"newFeature": false,
+		"coverView": true,
+		"nodeModules": true,
+		"autoAudits": false,
+		"showShadowRootInWxmlPanel": true,
+		"scopeDataCheck": false,
+		"uglifyFileName": true,
+		"checkInvalidKey": true,
+		"checkSiteMap": true,
+		"uploadWithSourceMap": true,
+		"compileHotReLoad": true,
+		"lazyloadPlaceholderEnable": false,
+		"useMultiFrameRuntime": true,
+		"useApiHook": true,
+		"useApiHostProcess": true,
+		"babelSetting": {
+			"ignore": [],
+			"disablePlugins": [],
+			"outputPath": ""
+		},
+		"enableEngineNative": false,
+		"useIsolateContext": true,
+		"userConfirmedBundleSwitch": false,
+		"packNpmManually": false,
+		"packNpmRelationList": [],
+		"minifyWXSS": true,
+		"disableUseStrict": false,
+		"showES6CompileOption": false,
+		"useCompilerPlugins": [
+			"typescript",
+			"sass"
+		],
+		"minifyWXML": true,
+		"useStaticServer": true
+	},
+	"simulatorType": "wechat",
+	"simulatorPluginLibVersion": {},
+	"appid": "wx997164f2857c1a1d",
+	"condition": {},
+	"srcMiniprogramRoot": "miniprogram/",
+	"editorSetting": {
+		"tabIndent": "tab",
+		"tabSize": 2
+	}
 }

+ 61 - 64
project.private.config.json

@@ -1,66 +1,63 @@
 {
-  "setting": {},
-  "condition": {
-    "plugin": {
-      "list": []
-    },
-    "game": {
-      "list": []
-    },
-    "gamePlugin": {
-      "list": []
-    },
-    "miniprogram": {
-      "list": [
-        {
-          "name": "pages/login/login",
-          "pathName": "pages/login/login",
-          "query": "",
-          "scene": null
-        },
-        {
-          "name": "pages/person/person",
-          "pathName": "pages/person/person",
-          "query": "",
-          "scene": null
-        },
-        {
-          "name": "pages/userinfo/userinfo",
-          "pathName": "pages/userinfo/userinfo",
-          "query": "",
-          "scene": null
-        },
-        {
-          "name": "pages/my-order/my-order",
-          "pathName": "pages/my-order/my-order",
-          "query": "",
-          "scene": null
-        },
-        {
-          "name": "pages/common-setting/common-setting",
-          "pathName": "pages/common-setting/common-setting",
-          "query": "",
-          "scene": null
-        },
-        {
-          "name": "pages/detail/detail",
-          "pathName": "pages/detail/detail",
-          "query": "id=undefined&status=2",
-          "scene": null
-        },
-        {
-          "name": "pages/web-view/web-view",
-          "pathName": "pages/web-view/web-view",
-          "query": "",
-          "scene": null
-        },
-        {
-          "name": "pages/tax-certificate/tax-certificate",
-          "pathName": "pages/tax-certificate/tax-certificate",
-          "query": "",
-          "scene": null
-        }
-      ]
-    }
-  }
+	"setting": {
+		"compileHotReLoad": true,
+		"urlCheck": false
+	},
+	"condition": {
+		"miniprogram": {
+			"list": [
+				{
+					"name": "pages/login/login",
+					"pathName": "pages/login/login",
+					"query": "",
+					"scene": null
+				},
+				{
+					"name": "pages/person/person",
+					"pathName": "pages/person/person",
+					"query": "",
+					"scene": null
+				},
+				{
+					"name": "pages/userinfo/userinfo",
+					"pathName": "pages/userinfo/userinfo",
+					"query": "",
+					"scene": null
+				},
+				{
+					"name": "pages/my-order/my-order",
+					"pathName": "pages/my-order/my-order",
+					"query": "",
+					"scene": null
+				},
+				{
+					"name": "pages/common-setting/common-setting",
+					"pathName": "pages/common-setting/common-setting",
+					"query": "",
+					"scene": null
+				},
+				{
+					"name": "pages/detail/detail",
+					"pathName": "pages/detail/detail",
+					"query": "id=undefined&status=2",
+					"scene": null
+				},
+				{
+					"name": "pages/web-view/web-view",
+					"pathName": "pages/web-view/web-view",
+					"query": "",
+					"scene": null
+				},
+				{
+					"name": "pages/tax-certificate/tax-certificate",
+					"pathName": "pages/tax-certificate/tax-certificate",
+					"query": "",
+					"scene": null
+				}
+			]
+		}
+	},
+	"projectname": "mina-b-t",
+	"description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html",
+	"libVersion": "2.22.1"
 }