Browse Source

完成微信抬头开发

master
liaoxinyu 1 year ago
parent
commit
de91b19a29
  1. 4
      .hbuilderx/launch.json
  2. 24
      common/js/api.js
  3. 53
      common/js/wxApi.js
  4. 15
      pages/Invoiced/Invoiced.vue
  5. 80
      pages/Invoicing/Invoicing.vue
  6. 50
      pages/index/index.vue
  7. 2
      unpackage/dist/build/h5/index.html
  8. BIN
      unpackage/dist/build/h5/static/11.png
  9. BIN
      unpackage/dist/build/h5/static/fonts/uniicons.2579c7da.ttf
  10. 1
      unpackage/dist/build/h5/static/index.2da1efab.css
  11. 7
      unpackage/dist/build/h5/static/js/chunk-vendors.410d4646.js
  12. 1
      unpackage/dist/build/h5/static/js/index.e90e0ff2.js
  13. 1
      unpackage/dist/build/h5/static/js/pages-Invoiced-Invoiced.497e6493.js
  14. 3
      unpackage/dist/build/h5/static/js/pages-Invoicing-Invoicing.97b6cf75.js
  15. 1
      unpackage/dist/build/h5/static/js/pages-Invoicing-Invoicing~pages-index-index.8925e708.js
  16. 1
      unpackage/dist/build/h5/static/js/pages-Invoicing-Invoicing~pages-index-index~pages-wxlogin-registerphone.c092caf2.js
  17. 1
      unpackage/dist/build/h5/static/js/pages-Invoicing-Invoicing~pages-wxlogin-registerphone.3b9099de.js
  18. 1
      unpackage/dist/build/h5/static/js/pages-index-index.6131139f.js
  19. 1
      unpackage/dist/build/h5/static/js/pages-wxlogin-registerphone.220ed07f.js
  20. 1
      unpackage/dist/build/h5/static/js/pages-wxlogin-wxlogin.5634c344.js
  21. BIN
      unpackage/dist/build/h5/static/logo.png
  22. 0
      unpackage/dist/dev/.automator/app-plus/.automator.json
  23. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map
  24. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
  25. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-combox/uni-combox.js.map
  26. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-data-checkbox/uni-data-checkbox.js.map
  27. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-data-select/uni-data-select.js.map
  28. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-datetime-picker/calendar-item.js.map
  29. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-datetime-picker/calendar.js.map
  30. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-datetime-picker/time-picker.js.map
  31. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-datetime-picker/uni-datetime-picker.js.map
  32. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput.js.map
  33. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-forms-item/uni-forms-item.js.map
  34. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-forms/uni-forms.js.map
  35. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-icons/uni-icons.js.map
  36. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-load-more/uni-load-more.js.map
  37. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-popup/uni-popup.js.map
  38. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/Invoiced/invoiced.js.map
  39. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/Invoicing/Invoicing.js.map
  40. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map
  41. 2
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/wxlogin/registerphone.js.map
  42. 1
      unpackage/dist/dev/app-plus/__uniappchooselocation.js
  43. BIN
      unpackage/dist/dev/app-plus/__uniapperror.png
  44. 1
      unpackage/dist/dev/app-plus/__uniappes6.js
  45. 1
      unpackage/dist/dev/app-plus/__uniappopenlocation.js
  46. 1
      unpackage/dist/dev/app-plus/__uniapppicker.js
  47. 8
      unpackage/dist/dev/app-plus/__uniappquill.js
  48. 1
      unpackage/dist/dev/app-plus/__uniappquillimageresize.js
  49. 1
      unpackage/dist/dev/app-plus/__uniappscan.js
  50. BIN
      unpackage/dist/dev/app-plus/__uniappsuccess.png
  51. 25
      unpackage/dist/dev/app-plus/__uniappview.html
  52. 8
      unpackage/dist/dev/app-plus/app-config-service.js
  53. 154
      unpackage/dist/dev/app-plus/app-config.js
  54. 24810
      unpackage/dist/dev/app-plus/app-service.js
  55. 7882
      unpackage/dist/dev/app-plus/app-view.js
  56. 1
      unpackage/dist/dev/app-plus/manifest.json
  57. BIN
      unpackage/dist/dev/app-plus/node-modules/@dcloudio/uni-ui/lib/uni-icons/uniicons.ttf
  58. BIN
      unpackage/dist/dev/app-plus/static/11.png
  59. BIN
      unpackage/dist/dev/app-plus/static/logo.png
  60. 1
      unpackage/dist/dev/app-plus/view.css
  61. 6
      unpackage/dist/dev/app-plus/view.umd.min.js
  62. 110
      unpackage/dist/dev/mp-weixin/common/vendor.js
  63. 14
      unpackage/dist/dev/mp-weixin/pages/Invoiced/Invoiced.js
  64. 2
      unpackage/dist/dev/mp-weixin/pages/Invoiced/Invoiced.wxml
  65. 205
      unpackage/dist/dev/mp-weixin/pages/Invoicing/Invoicing.js
  66. 2
      unpackage/dist/dev/mp-weixin/pages/Invoicing/Invoicing.wxml
  67. 210
      unpackage/dist/dev/mp-weixin/pages/index/index.js
  68. 2
      unpackage/dist/dev/mp-weixin/pages/index/index.wxml
  69. 60
      unpackage/dist/dev/mp-weixin/pages/index/index.wxss
  70. 57
      unpackage/dist/dev/mp-weixin/pages/wxlogin/registerphone.js
  71. 2
      unpackage/dist/dev/mp-weixin/pages/wxlogin/registerphone.wxml

4
.hbuilderx/launch.json

@ -2,6 +2,10 @@
// launchtypelocalremote, localremote
"version": "0.0",
"configurations": [{
"app-plus" :
{
"launchtype" : "local"
},
"default" :
{
"launchtype" : "local"

24
common/js/api.js

@ -4,13 +4,17 @@ let baseUrl = 'https://intp.xingtongworld.com'
let API = {
baseUrl: baseUrl,
// 获取微信授权登录基本信息
getWxCode(data, success, fail){
API.sendRequest('get', data, '/wechat/login/getWxCode', success, fail)
// 获取SDK数据
getJsSdkData(data, success, fail, boolean=true){
API.sendRequest('post', data, '/wechat/Wechat/getJsSdkData', success, fail, boolean)
},
// 获取微信code进行登录
wx(data, success, fail){
API.sendRequest('get', data, '/wechat/login/wx', success, fail)
// 获取申请数据
getQrCode(data, success, fail, boolean=true){
API.sendRequest('get', data, '/api/InvoiceIssuance/getQrCode', success, fail, boolean)
},
// 获取申请数据
getApplyData(data, success, fail, boolean=true){
API.sendRequest('get', data, '/api/InvoiceIssuance/getApplyData', success, fail, boolean)
},
// 首页数据列表
Home(data, success, fail, boolean=true){
@ -20,6 +24,14 @@ let API = {
sendSms(data, success, fail, boolean=true){
API.sendRequest('post', data, '/wechat/wechat/sendSms', success, fail, boolean)
},
// 获取微信授权登录基本信息
getWxCode(data, success, fail){
API.sendRequest('get', data, '/wechat/login/getWxCode', success, fail)
},
// 获取微信code进行登录
wx(data, success, fail){
API.sendRequest('get', data, '/wechat/login/wx', success, fail)
},
// 通用api
request(url, data, success, fail, boolean=true){
API.sendRequest('post', data, url, success, fail, boolean)

53
common/js/wxApi.js

@ -4,44 +4,35 @@ const wxApi = {
* [wxRegister 微信Api初始化]
*/
wxRegister(callback) {
let _this = this,
signUrl = encodeURIComponent(location.href.split("#")[0]),
jsApiList = ["chooseInvoiceTitle"];
console.log(signUrl);
console.log(location.href.split("#")[0]);
let _this = this;
// const u = 'https://intp.xingtongworld.com/wechat/#/'
let signUrl = encodeURIComponent(location.href.split("#")[0]);
// let signUrl = u.split("#")[0];
let jsApiList = ["chooseInvoiceTitle"];
// 接口请求传入路径
// App._post_form("&do=getJssdk", {
// sign_url: signUrl
// }, (res) => {
// let data = res.data;
API.getJsSdkData({url:signUrl}, res => {
jWeixin.config({
beta: true,//用于方法未对外公开的情况
debug: false, // 开启调试模式
appId: data.appId, // 必填,公众号的唯一标识
timestamp: data.timestamp, // 必填,生成签名的时间戳
nonceStr: data.nonceStr, // 必填,生成签名的随机串
signature: data.signature, // 必填,签名
appId: res.data.appId, // 必填,公众号的唯一标识
timestamp: res.data.timestamp, // 必填,生成签名的时间戳
nonceStr: res.data.nonceStr, // 必填,生成签名的随机串
signature: res.data.signature, // 必填,签名
jsApiList: jsApiList // 必填,需要使用的JS接口列表
// openTagList:['wx-open-launch-weapp','wx-open-subscribe']
});
// jWeixin.ready(() => {
// // jWeixin.hideMenuItems({
// // menuList: ["menuItem:copyUrl"] // 要隐藏的菜单项,只能隐藏“传播类”和“保护类”按钮
// // });
// callback && callback();
// });
// // _this.configData = {
// // ...data,
// // url: signUrl
// // }
// jWeixin.error((optinos) => {
// // config信息验证失败会执行error函数,
// //如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,
// //也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
// console.log(optinos, 'optinos',_this.configData.url)
// // App.showError(optinos.errMsg)
// });
// });
jWeixin.ready(() => {
callback && callback();
});
jWeixin.error((optinos) => {
// config信息验证失败会执行error函数,
//如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,
//也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
console.log(optinos, 'optinos')
// console.log(optinos, 'optinos')
// App.showError(optinos.errMsg)
});
});
}
}

15
pages/Invoiced/Invoiced.vue

@ -11,21 +11,32 @@
</view>
</view>
<view v-else>
<view class="text-center" style="padding-top: 100rpx;"><image src="../../static/11.png" mode="widthFix" style="width: 400rpx;"></image></view>
<view class="text-center" style="padding-top: 100rpx;"><image v-if="img" :src="img" mode="widthFix" style="width: 400rpx;"></image></view>
<view class="text-center title1" style="color: #878787;">发票已开具请扫描二维码获取发票!</view>
</view>
</view>
</template>
<script>
import API from '@/common/js/api.js'
export default {
data() {
return {
bool:false
bool:false,
img:""
}
},
onLoad(option) { //optionobject
this.bool = option.bool === 'true';
if(option.id){
let data = {
id:option.id
}
API.getQrCode(data, res => {
this.img = res.data.qrCodeImage
})
}
},
methods: {
toindex(){

80
pages/Invoicing/Invoicing.vue

@ -133,7 +133,7 @@
merge: '',//
expire_time: '',//
email: '',//
phone: '',//
phone: ''//
},
//
list2:{
@ -145,35 +145,44 @@
bank_name:'',//
bank_account:''//
},
amount: 9,
//
amount: 9,//
//
styles: {
color:"#d5213c"
},
//
stepsIndex: 0,
//
stepsDatas: [
{ text: '开票信息' },
{ text: '抬头信息' },
{ text: '提交申请' },
],
//
range: [
{ value: 1, text: "垃圾费" },
{ value: 2, text: "污水费" },
{ value: 3, text: "游泳" },
],
//
range: [],
//
headerType1: [{text: '单位',value: '0',disable: true},{text: '个人',value: '1',disable: true}],
//
headerType: [{text: '单位',value: '0'},{text: '个人',value: '1'}],
//
candidates: ['12345689512', '54687913246', '54967846513', '48795123187'],
//
candidates: [],
//
mergelist: [{text: '不合并',value: '0'},{text: '合并',value: '1'}],
form1:{},
form2:{},
}
},
onLoad() {
this.dropdown()
},
methods: {
//
dropdown(){
API.getApplyData({}, res => {
this.range = res.data.project_arr;
this.candidates.push(res.data.pucode)
})
},
// value
project_id1(num){
let name = ""
@ -202,6 +211,7 @@
}
}
},
//
nextstep(){
if(this.stepsIndex == 1){
if(!this.list1.project_id){
@ -254,6 +264,7 @@
return
}
this.form2 = this.$refs.form1.modelValue;
}
},
//
@ -320,25 +331,35 @@
},
//
Obtain(){
let _this = this
// #ifdef MP-WEIXIN||APP-PLUS
wx.chooseInvoiceTitle({
success: (res) => {
this.list2.type = res.type;
this.list2.title = res.title;
this.list2.address = res.address;
this.list2.telephone = res.telephone;
this.list2.bank_name = res.bank_name;
this.list2.bank_account = res.bank_account;
console.log('发票抬头信息:', res);
},
fail: (err) => {
console.error('获取发票抬头失败:', err);
}
});
// wx.chooseInvoiceTitle({
// success: (res) => {
// this.list2.type = res.type;
// this.list2.title = res.title;
// this.list2.address = res.companyAddress;
// this.list2.telephone = res.telephone;
// this.list2.bank_name = res.bankName;
// this.list2.bank_account = res.bankAccount;
// console.log('', res);
// },
// fail: (err) => {
// console.error('', err);
// }
// });
// #endif
// #ifdef H5
wxApi.wxRegister(() => {
wx.invoke('chooseInvoiceTitle', {"scene": "1"}, function (res) {
let info = JSON.parse(res.choose_invoice_title_info);
_this.list2.type = info.type;
_this.list2.title = info.title;
_this.list2.address = info.companyAddress;
_this.list2.telephone = info.telephone;
_this.list2.bank_name = info.bankName;
_this.list2.bank_account = info.bankAccount;
_this.list2.tax_number = info.taxNumber;
})
})
// #endif
},
@ -347,6 +368,12 @@
let list1 = this.form1;
let list2 = this.form2;
const url = '/api/invoiceIssuance/add'
if(this.list2.type=='1'){
this.list2.address = "";
this.list2.telephone = "";
this.list2.bank_name = "";
this.list2.bank_account = "";
}
let data = {
project_id: list1.project_id,
pucode_id: list1.pucode_id,
@ -371,7 +398,6 @@
url:`/pages/Invoiced/Invoiced?bool=${true}`
})
},2000)
}
})
}

50
pages/index/index.vue

@ -102,10 +102,12 @@
if(!uni.getStorageSync('AccessToken')){
this.cont()
}
// this.getWxCode()
},
onShow() {
if(uni.getStorageSync('AccessToken')){
this.getUniversityList();
}
// this.getWxCode()
},
mounted() {
if(!uni.getStorageSync('AccessToken')){
@ -137,6 +139,7 @@
uni.setStorageSync('openid', res.data.openid);
uni.setStorageSync('phone', res.data.phone);
this.$refs.popup.close();
this.getUniversityList();
if(!res.data.phone){
uni.navigateTo({
url:"/pages/wxlogin/registerphone"
@ -166,7 +169,7 @@
start_date: this.start_date,
end_date: this.end_date
}
this.status = 'loading'; //
this.status = 'loading'; //
setTimeout(()=>{
API.Home(data, res => {
if (res.code == 1) {
@ -233,37 +236,42 @@
//
scrolltop(e){
this.scrollTop = e.detail.scrollTop
console.log(e)
},
//
goTop(){
const duration = 500; //
const start = this.scrollTop; //
const startTime = performance.now(); //
// const threshold = 4000; //
// if (this.scrollTop < threshold) {
const duration = 500; //
const start = this.scrollTop; //
const startTime = performance.now(); //
const scrollToTop = () => {
const currentTime = performance.now(); //
const elapsed = currentTime - startTime; //
const progress = Math.min(elapsed / duration, 1); // 0 1
const scrollToTop = () => {
const currentTime = performance.now(); //
const elapsed = currentTime - startTime; //
const progress = Math.min(elapsed / duration, 1); // 0 1
// 使线
this.scrollTop = start * (1 - progress);
// 使线
this.scrollTop = start * (1 - progress);
if (progress < 1) {
requestAnimationFrame(scrollToTop); //
} else {
this.scrollTop = 0; // 0
}
};
if (progress < 1) {
requestAnimationFrame(scrollToTop); //
} else {
this.scrollTop = 0; // 0
}
};
//
requestAnimationFrame(scrollToTop);
//
requestAnimationFrame(scrollToTop);
// } else {
//
// this.scrollTop = 0; // 0
// }
},
toviewinvoice(serial_number,status){
let serial = serial_number;
if(uni.getStorageSync('AccessToken')&&status=='已开票'){
uni.navigateTo({
url:'/pages/Invoiced/Invoiced?id=1'
url:`/pages/Invoiced/Invoiced?id=${1}`
})
}else if(!uni.getStorageSync('AccessToken')){
uni.showToast({title: '请先进行登入',icon: 'none'});

2
unpackage/dist/build/h5/index.html

@ -0,0 +1,2 @@
<!DOCTYPE html><html lang=zh-CN><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><title>Waterinvoice_uiapp</title><script>var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') || CSS.supports('top: constant(a)'))
document.write('<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' + (coverSupport ? ', viewport-fit=cover' : '') + '" />')</script><link rel=stylesheet href=./static/index.2da1efab.css></head><body><noscript><strong>Please enable JavaScript to continue.</strong></noscript><div id=app></div><script src=./static/js/chunk-vendors.410d4646.js></script><script src=./static/js/index.e90e0ff2.js></script></body></html>

BIN
unpackage/dist/build/h5/static/11.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

BIN
unpackage/dist/build/h5/static/fonts/uniicons.2579c7da.ttf

Binary file not shown.

1
unpackage/dist/build/h5/static/index.2da1efab.css

File diff suppressed because one or more lines are too long

7
unpackage/dist/build/h5/static/js/chunk-vendors.410d4646.js

File diff suppressed because one or more lines are too long

1
unpackage/dist/build/h5/static/js/index.e90e0ff2.js

File diff suppressed because one or more lines are too long

1
unpackage/dist/build/h5/static/js/pages-Invoiced-Invoiced.497e6493.js

File diff suppressed because one or more lines are too long

3
unpackage/dist/build/h5/static/js/pages-Invoicing-Invoicing.97b6cf75.js

File diff suppressed because one or more lines are too long

1
unpackage/dist/build/h5/static/js/pages-Invoicing-Invoicing~pages-index-index.8925e708.js

File diff suppressed because one or more lines are too long

1
unpackage/dist/build/h5/static/js/pages-Invoicing-Invoicing~pages-index-index~pages-wxlogin-registerphone.c092caf2.js

File diff suppressed because one or more lines are too long

1
unpackage/dist/build/h5/static/js/pages-Invoicing-Invoicing~pages-wxlogin-registerphone.3b9099de.js

File diff suppressed because one or more lines are too long

1
unpackage/dist/build/h5/static/js/pages-index-index.6131139f.js

File diff suppressed because one or more lines are too long

1
unpackage/dist/build/h5/static/js/pages-wxlogin-registerphone.220ed07f.js

File diff suppressed because one or more lines are too long

1
unpackage/dist/build/h5/static/js/pages-wxlogin-wxlogin.5634c344.js

@ -0,0 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["pages-wxlogin-wxlogin"],{"0601":function(e,t,n){"use strict";n.d(t,"b",(function(){return a})),n.d(t,"c",(function(){return o})),n.d(t,"a",(function(){}));var a=function(){var e=this.$createElement,t=this._self._c||e;return t("v-uni-view")},o=[]},"16f6":function(e,t,n){"use strict";n.r(t);var a=n("31af"),o=n.n(a);for(var i in a)["default"].indexOf(i)<0&&function(e){n.d(t,e,(function(){return a[e]}))}(i);t["default"]=o.a},"31af":function(e,t,n){"use strict";n("7a82");var a=n("4ea4").default;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=a(n("4d55")),i={data:function(){return{code:"",state:"",state1:"",appId:"",redirectUri:""}},onLoad:function(e){this.checkWeChatCode()},methods:{checkWeChatCode:function(){var e=this;o.default.getWxCode({},(function(t){1==t.code&&(e.redirectUri=t.data.redirectUri,e.appId=t.data.appId,e.state=t.data.state,e.getCode())}))},getCode:function(){var e=encodeURIComponent("https://intp.xingtongworld.com/wechat/");window.location.href="https://open.weixin.qq.com/connect/oauth2/authorize?appid="+this.appId+"&redirect_uri="+e+"&response_type=code&scope=snsapi_userinfo&state="+this.state+"#wechat_redirect"}}};t.default=i},"4d55":function(e,t,n){"use strict";n("7a82");var a=n("4ea4").default;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=a(n("5530")),i="https://intp.xingtongworld.com",c={baseUrl:i,getJsSdkData:function(e,t,n){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];c.sendRequest("post",e,"/wechat/Wechat/getJsSdkData",t,n,a)},getQrCode:function(e,t,n){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];c.sendRequest("get",e,"/api/InvoiceIssuance/getQrCode",t,n,a)},getApplyData:function(e,t,n){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];c.sendRequest("get",e,"/api/InvoiceIssuance/getApplyData",t,n,a)},Home:function(e,t,n){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];c.sendRequest("post",e,"/api/InvoiceIssuance/getList",t,n,a)},sendSms:function(e,t,n){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];c.sendRequest("post",e,"/wechat/wechat/sendSms",t,n,a)},getWxCode:function(e,t,n){c.sendRequest("get",e,"/wechat/login/getWxCode",t,n)},wx:function(e,t,n){c.sendRequest("get",e,"/wechat/login/wx",t,n)},request:function(e,t,n,a){var o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4];c.sendRequest("post",t,e,n,a,o)},sendRequest:function(e,t,n,a,c,d){var s="";s="post"==e?"application/x-www-form-urlencoded":"application/json";var u={};d&&(u.header={"Content-Type":s,Accept:"application/json, text/javascript, */*; q=0.01",token:uni.getStorageSync("AccessToken")||""}),uni.request((0,o.default)((0,o.default)({url:i+n,method:e,data:t},u),{},{success:function(e){1!=e.data.code?(-14==e.data.code&&(uni.removeStorageSync("AccessToken"),uni.removeStorageSync("openid"),setTimeout((function(){uni.navigateTo({url:"/pages/wxlogin/wxlogin"})}),2600)),uni.showToast({title:e.data.msg||e.msg,icon:"none"})):a&&a(e.data)}}))}},d=c;t.default=d},"6a49":function(e,t,n){"use strict";n.r(t);var a=n("0601"),o=n("16f6");for(var i in o)["default"].indexOf(i)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(i);var c=n("f0c5"),d=Object(c["a"])(o["default"],a["b"],a["c"],!1,null,"44bf1784",null,!1,a["a"],void 0);t["default"]=d.exports}}]);

BIN
unpackage/dist/build/h5/static/logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

0
unpackage/dist/dev/.automator/app-plus/.automator.json

2
unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-combox/uni-combox.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-data-checkbox/uni-data-checkbox.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-data-select/uni-data-select.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-datetime-picker/calendar-item.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-datetime-picker/calendar.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-datetime-picker/time-picker.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-datetime-picker/uni-datetime-picker.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-forms-item/uni-forms-item.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-forms/uni-forms.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-icons/uni-icons.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-load-more/uni-load-more.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-popup/uni-popup.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/pages/Invoiced/invoiced.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/pages/Invoicing/Invoicing.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map

File diff suppressed because one or more lines are too long

2
unpackage/dist/dev/.sourcemap/mp-weixin/pages/wxlogin/registerphone.js.map

File diff suppressed because one or more lines are too long

1
unpackage/dist/dev/app-plus/__uniappchooselocation.js

File diff suppressed because one or more lines are too long

BIN
unpackage/dist/dev/app-plus/__uniapperror.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

1
unpackage/dist/dev/app-plus/__uniappes6.js

File diff suppressed because one or more lines are too long

1
unpackage/dist/dev/app-plus/__uniappopenlocation.js

File diff suppressed because one or more lines are too long

1
unpackage/dist/dev/app-plus/__uniapppicker.js

File diff suppressed because one or more lines are too long

8
unpackage/dist/dev/app-plus/__uniappquill.js

File diff suppressed because one or more lines are too long

1
unpackage/dist/dev/app-plus/__uniappquillimageresize.js

File diff suppressed because one or more lines are too long

1
unpackage/dist/dev/app-plus/__uniappscan.js

File diff suppressed because one or more lines are too long

BIN
unpackage/dist/dev/app-plus/__uniappsuccess.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

25
unpackage/dist/dev/app-plus/__uniappview.html

@ -0,0 +1,25 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<script>
var __UniViewStartTime__ = Date.now();
var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') ||
CSS.supports('top: constant(a)'))
document.write(
'<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' +
(coverSupport ? ', viewport-fit=cover' : '') + '" />')
</script>
<title>View</title>
<link rel="stylesheet" href="view.css" />
</head>
<body>
<div id="app"></div>
<script src="__uniappes6.js"></script>
<script src="view.umd.min.js"></script>
<script src="app-view.js"></script>
</body>
</html>

8
unpackage/dist/dev/app-plus/app-config-service.js

@ -0,0 +1,8 @@
var isReady=false;var onReadyCallbacks=[];
var isServiceReady=false;var onServiceReadyCallbacks=[];
var __uniConfig = {"pages":["pages/index/index","pages/Invoicing/Invoicing","pages/Invoiced/Invoiced","pages/wxlogin/wxlogin","pages/wxlogin/registerphone"],"window":{"navigationBarTextStyle":"black","navigationBarTitleText":"uni-app","navigationBarBackgroundColor":"#F8F8F8","backgroundColor":"#F8F8F8"},"darkmode":false,"nvueCompiler":"uni-app","nvueStyleCompiler":"uni-app","renderer":"auto","splashscreen":{"alwaysShowBeforeRender":true,"autoclose":false},"appname":"Waterinvoice_uiapp","compilerVersion":"3.99","entryPagePath":"pages/index/index","networkTimeout":{"request":60000,"connectSocket":60000,"uploadFile":60000,"downloadFile":60000}};
var __uniRoutes = [{"path":"/pages/index/index","meta":{"isQuit":true},"window":{"navigationBarTitleText":"电子发票","navigationBarBackgroundColor":"#000","navigationBarTextStyle":"white"}},{"path":"/pages/Invoicing/Invoicing","meta":{},"window":{"navigationBarTitleText":"开发票","enablePullDownRefresh":false,"navigationBarBackgroundColor":"#000","navigationBarTextStyle":"white"}},{"path":"/pages/Invoiced/Invoiced","meta":{},"window":{"navigationBarTitleText":"查看已开发票","enablePullDownRefresh":false,"navigationBarBackgroundColor":"#000","navigationBarTextStyle":"white"}},{"path":"/pages/wxlogin/wxlogin","meta":{},"window":{"navigationBarTitleText":"","enablePullDownRefresh":false}},{"path":"/pages/wxlogin/registerphone","meta":{},"window":{"navigationBarTitleText":"手机号绑定","enablePullDownRefresh":false}}];
__uniConfig.onReady=function(callback){if(__uniConfig.ready){callback()}else{onReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"ready",{get:function(){return isReady},set:function(val){isReady=val;if(!isReady){return}const callbacks=onReadyCallbacks.slice(0);onReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}});
__uniConfig.onServiceReady=function(callback){if(__uniConfig.serviceReady){callback()}else{onServiceReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"serviceReady",{get:function(){return isServiceReady},set:function(val){isServiceReady=val;if(!isServiceReady){return}const callbacks=onServiceReadyCallbacks.slice(0);onServiceReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}});
service.register("uni-app-config",{create(a,b,c){if(!__uniConfig.viewport){var d=b.weex.config.env.scale,e=b.weex.config.env.deviceWidth,f=Math.ceil(e/d);Object.assign(__uniConfig,{viewport:f,defaultFontSize:Math.round(f/20)})}return{instance:{__uniConfig:__uniConfig,__uniRoutes:__uniRoutes,global:void 0,window:void 0,document:void 0,frames:void 0,self:void 0,location:void 0,navigator:void 0,localStorage:void 0,history:void 0,Caches:void 0,screen:void 0,alert:void 0,confirm:void 0,prompt:void 0,fetch:void 0,XMLHttpRequest:void 0,WebSocket:void 0,webkit:void 0,print:void 0}}}});

154
unpackage/dist/dev/app-plus/app-config.js

@ -0,0 +1,154 @@
/******/ (function(modules) { // webpackBootstrap
/******/ // install a JSONP callback for chunk loading
/******/ function webpackJsonpCallback(data) {
/******/ var chunkIds = data[0];
/******/ var moreModules = data[1];
/******/ var executeModules = data[2];
/******/
/******/ // add "moreModules" to the modules object,
/******/ // then flag all "chunkIds" as loaded and fire callback
/******/ var moduleId, chunkId, i = 0, resolves = [];
/******/ for(;i < chunkIds.length; i++) {
/******/ chunkId = chunkIds[i];
/******/ if(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {
/******/ resolves.push(installedChunks[chunkId][0]);
/******/ }
/******/ installedChunks[chunkId] = 0;
/******/ }
/******/ for(moduleId in moreModules) {
/******/ if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {
/******/ modules[moduleId] = moreModules[moduleId];
/******/ }
/******/ }
/******/ if(parentJsonpFunction) parentJsonpFunction(data);
/******/
/******/ while(resolves.length) {
/******/ resolves.shift()();
/******/ }
/******/
/******/ // add entry modules from loaded chunk to deferred list
/******/ deferredModules.push.apply(deferredModules, executeModules || []);
/******/
/******/ // run deferred modules when all chunks ready
/******/ return checkDeferredModules();
/******/ };
/******/ function checkDeferredModules() {
/******/ var result;
/******/ for(var i = 0; i < deferredModules.length; i++) {
/******/ var deferredModule = deferredModules[i];
/******/ var fulfilled = true;
/******/ for(var j = 1; j < deferredModule.length; j++) {
/******/ var depId = deferredModule[j];
/******/ if(installedChunks[depId] !== 0) fulfilled = false;
/******/ }
/******/ if(fulfilled) {
/******/ deferredModules.splice(i--, 1);
/******/ result = __webpack_require__(__webpack_require__.s = deferredModule[0]);
/******/ }
/******/ }
/******/
/******/ return result;
/******/ }
/******/
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // object to store loaded and loading chunks
/******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
/******/ // Promise = chunk loading, 0 = chunk loaded
/******/ var installedChunks = {
/******/ "app-config": 0
/******/ };
/******/
/******/ var deferredModules = [];
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/
/******/ var jsonpArray = this["webpackJsonp"] = this["webpackJsonp"] || [];
/******/ var oldJsonpFunction = jsonpArray.push.bind(jsonpArray);
/******/ jsonpArray.push = webpackJsonpCallback;
/******/ jsonpArray = jsonpArray.slice();
/******/ for(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);
/******/ var parentJsonpFunction = oldJsonpFunction;
/******/
/******/
/******/ // run deferred modules from other chunks
/******/ checkDeferredModules();
/******/ })
/************************************************************************/
/******/ ([]);

24810
unpackage/dist/dev/app-plus/app-service.js

File diff suppressed because one or more lines are too long

7882
unpackage/dist/dev/app-plus/app-view.js

File diff suppressed because one or more lines are too long

1
unpackage/dist/dev/app-plus/manifest.json

@ -0,0 +1 @@
{"@platforms":["android","iPhone","iPad"],"id":"__UNI__B09C167","name":"Waterinvoice_uiapp","version":{"name":"1.0.0","code":"100"},"description":"","launch_path":"__uniappview.html","developer":{"name":"","email":"","url":""},"permissions":{"UniNView":{"description":"UniNView原生渲染"}},"plus":{"useragent":{"value":"uni-app","concatenate":true},"splashscreen":{"target":"id:1","autoclose":true,"waiting":true,"delay":0},"popGesture":"close","launchwebview":{"render":"always","id":"1","kernel":"WKWebview"},"statusbar":{"immersed":"supportedDevice","style":"light","background":"#F8F8F8"},"usingComponents":true,"nvueStyleCompiler":"uni-app","compilerVersion":3,"distribute":{"google":{"permissions":["<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>","<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>","<uses-permission android:name=\"android.permission.VIBRATE\"/>","<uses-permission android:name=\"android.permission.READ_LOGS\"/>","<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>","<uses-feature android:name=\"android.hardware.camera.autofocus\"/>","<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>","<uses-permission android:name=\"android.permission.CAMERA\"/>","<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>","<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>","<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>","<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>","<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>","<uses-feature android:name=\"android.hardware.camera\"/>","<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"]},"apple":{},"plugins":{"audio":{"mp3":{"description":"Android平台录音支持MP3格式文件"}}}},"uniStatistics":{"enable":false},"allowsInlineMediaPlayback":true,"uni-app":{"compilerVersion":"3.99","control":"uni-v3","nvueCompiler":"uni-app","renderer":"auto","nvue":{"flex-direction":"column"},"nvueLaunchMode":"normal"},"launch_path":"__uniappview.html"}}

BIN
unpackage/dist/dev/app-plus/node-modules/@dcloudio/uni-ui/lib/uni-icons/uniicons.ttf

Binary file not shown.

BIN
unpackage/dist/dev/app-plus/static/11.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

BIN
unpackage/dist/dev/app-plus/static/logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

1
unpackage/dist/dev/app-plus/view.css

File diff suppressed because one or more lines are too long

6
unpackage/dist/dev/app-plus/view.umd.min.js

File diff suppressed because one or more lines are too long

110
unpackage/dist/dev/mp-weixin/common/vendor.js

@ -9669,11 +9669,36 @@ exports.default = void 0;
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
// let baseUrl = 'http://192.168.66.219:8000/api'
// let baseUrl = 'http://192.168.66.219:8000'
var baseUrl = 'https://intp.xingtongworld.com';
var API = {
baseUrl: baseUrl,
// 获取SDK数据
getJsSdkData: function getJsSdkData(data, success, fail) {
var boolean = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
API.sendRequest('post', data, '/wechat/Wechat/getJsSdkData', success, fail, boolean);
},
// 获取申请数据
getQrCode: function getQrCode(data, success, fail) {
var boolean = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
API.sendRequest('get', data, '/api/InvoiceIssuance/getQrCode', success, fail, boolean);
},
// 获取申请数据
getApplyData: function getApplyData(data, success, fail) {
var boolean = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
API.sendRequest('get', data, '/api/InvoiceIssuance/getApplyData', success, fail, boolean);
},
// 首页数据列表
Home: function Home(data, success, fail) {
var boolean = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
API.sendRequest('post', data, '/api/InvoiceIssuance/getList', success, fail, boolean);
},
// 手机号获取验证码
sendSms: function sendSms(data, success, fail) {
var boolean = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
API.sendRequest('post', data, '/wechat/wechat/sendSms', success, fail, boolean);
},
// 获取微信授权登录基本信息
getWxCode: function getWxCode(data, success, fail) {
API.sendRequest('get', data, '/wechat/login/getWxCode', success, fail);
@ -9690,7 +9715,7 @@ var API = {
// 请求
sendRequest: function sendRequest(method, data, url, _success, fail, boolean) {
var types = '';
if (method == 'POST') {
if (method == 'post') {
types = 'application/x-www-form-urlencoded';
} else {
types = 'application/json';
@ -9710,12 +9735,13 @@ var API = {
data: data
}, requestObj), {}, {
success: function success(res) {
// 200=成功, 400 = 失败错误返回、404 token验证失败 ,403 token已过2小时失效
if (res.data.code == 1) {
_success && _success(res.data);
return;
}
if (res.data.code == -14) {
uni.removeStorageSync('AccessToken');
uni.removeStorageSync('openid');
setTimeout(function () {
uni.navigateTo({
url: "/pages/wxlogin/wxlogin"
@ -9776,50 +9802,44 @@ var wxApi = {
* [wxRegister 微信Api初始化]
*/
wxRegister: function wxRegister(callback) {
var _this = this,
signUrl = encodeURIComponent(location.href.split("#")[0]),
jsApiList = ["chooseInvoiceTitle"];
console.log(signUrl);
console.log(location.href.split("#")[0]);
var _this = this;
// const u = 'https://intp.xingtongworld.com/wechat/#/'
var signUrl = encodeURIComponent(location.href.split("#")[0]);
// let signUrl = u.split("#")[0];
var jsApiList = ["chooseInvoiceTitle"];
// 接口请求传入路径
// App._post_form("&do=getJssdk", {
// sign_url: signUrl
// }, (res) => {
// let data = res.data;
jWeixin.config({
beta: true,
//用于方法未对外公开的情况
debug: false,
// 开启调试模式
appId: data.appId,
// 必填,公众号的唯一标识
timestamp: data.timestamp,
// 必填,生成签名的时间戳
nonceStr: data.nonceStr,
// 必填,生成签名的随机串
signature: data.signature,
// 必填,签名
jsApiList: jsApiList // 必填,需要使用的JS接口列表
// openTagList:['wx-open-launch-weapp','wx-open-subscribe']
_api.default.getJsSdkData({
url: signUrl
}, function (res) {
jWeixin.config({
beta: true,
//用于方法未对外公开的情况
debug: false,
// 开启调试模式
appId: res.data.appId,
// 必填,公众号的唯一标识
timestamp: res.data.timestamp,
// 必填,生成签名的时间戳
nonceStr: res.data.nonceStr,
// 必填,生成签名的随机串
signature: res.data.signature,
// 必填,签名
jsApiList: jsApiList // 必填,需要使用的JS接口列表
// openTagList:['wx-open-launch-weapp','wx-open-subscribe']
});
jWeixin.ready(function () {
callback && callback();
});
jWeixin.error(function (optinos) {
// config信息验证失败会执行error函数,
//如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,
//也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
console.log(optinos, 'optinos');
// console.log(optinos, 'optinos')
// App.showError(optinos.errMsg)
});
});
// jWeixin.ready(() => {
// // jWeixin.hideMenuItems({
// // menuList: ["menuItem:copyUrl"] // 要隐藏的菜单项,只能隐藏“传播类”和“保护类”按钮
// // });
// callback && callback();
// });
// // _this.configData = {
// // ...data,
// // url: signUrl
// // }
// jWeixin.error((optinos) => {
// // config信息验证失败会执行error函数,
// //如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,
// //也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
// console.log(optinos, 'optinos',_this.configData.url)
// // App.showError(optinos.errMsg)
// });
// });
}
};
var _default = wxApi;

14
unpackage/dist/dev/mp-weixin/pages/Invoiced/Invoiced.js

@ -137,10 +137,12 @@ __webpack_require__.r(__webpack_exports__);
"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _api = _interopRequireDefault(__webpack_require__(/*! @/common/js/api.js */ 40));
//
//
//
@ -163,12 +165,22 @@ exports.default = void 0;
var _default = {
data: function data() {
return {
bool: false
bool: false,
img: ""
};
},
onLoad: function onLoad(option) {
var _this = this;
//option为object类型,会序列化上个页面传递的参数
this.bool = option.bool === 'true';
if (option.id) {
var data = {
id: option.id
};
_api.default.getQrCode(data, function (res) {
_this.img = res.data.qrCodeImage;
});
}
},
methods: {
toindex: function toindex() {

2
unpackage/dist/dev/mp-weixin/pages/Invoiced/Invoiced.wxml

@ -1 +1 @@
<view style="padding:30rpx 0px 0rpx 0px;" class="data-v-403acc66"><block wx:if="{{bool==true}}"><view class="data-v-403acc66"><view class="invoiced_box data-v-403acc66"><view class="text-center data-v-403acc66"><icon type="success" size="120rpx" color="#05c160" class="data-v-403acc66"></icon></view><view class="text-center title data-v-403acc66">提交成功</view><view class="text-center title1 data-v-403acc66">开发票成功后,请留意!</view></view><view style="margin:140rpx 80rpx 0px 80rpx;font-weight:bold;" class="data-v-403acc66"><button class="button data-v-403acc66" type="primary" data-event-opts="{{[['tap',[['toindex',['$event']]]]]}}" bindtap="__e">查看申请</button></view></view></block><block wx:else><view class="data-v-403acc66"><view class="text-center data-v-403acc66" style="padding-top:100rpx;"><image style="width:400rpx;" src="../../static/11.png" mode="widthFix" class="data-v-403acc66"></image></view><view class="text-center title1 data-v-403acc66" style="color:#878787;">发票已开具,请扫描二维码获取发票!</view></view></block></view>
<view style="padding:30rpx 0px 0rpx 0px;" class="data-v-403acc66"><block wx:if="{{bool==true}}"><view class="data-v-403acc66"><view class="invoiced_box data-v-403acc66"><view class="text-center data-v-403acc66"><icon type="success" size="120rpx" color="#05c160" class="data-v-403acc66"></icon></view><view class="text-center title data-v-403acc66">提交成功</view><view class="text-center title1 data-v-403acc66">开发票成功后,请留意!</view></view><view style="margin:140rpx 80rpx 0px 80rpx;font-weight:bold;" class="data-v-403acc66"><button class="button data-v-403acc66" type="primary" data-event-opts="{{[['tap',[['toindex',['$event']]]]]}}" bindtap="__e">查看申请</button></view></view></block><block wx:else><view class="data-v-403acc66"><view class="text-center data-v-403acc66" style="padding-top:100rpx;"><block wx:if="{{img}}"><image style="width:400rpx;" src="{{img}}" mode="widthFix" class="data-v-403acc66"></image></block></view><view class="text-center title1 data-v-403acc66" style="color:#878787;">发票已开具,请扫描二维码获取发票!</view></view></block></view>

205
unpackage/dist/dev/mp-weixin/pages/Invoicing/Invoicing.js

@ -144,11 +144,13 @@ var render = function () {
var _h = _vm.$createElement
var _c = _vm._self._c || _h
var g0 = _vm.stepsDatas.length
var m0 = _vm.stepsIndex === 2 ? _vm.project_id1(_vm.list1.project_id) : null
_vm.$mp.data = Object.assign(
{},
{
$root: {
g0: g0,
m0: m0,
},
}
)
@ -324,31 +326,44 @@ var _default = {
// 表单数据
list1: {
project_id: '',
//
//开票项目
pucode_id: '',
//用户编号id
merge: '',
//合并开票
expire_time: '',
//到期时间
email: '',
phone: '' //
//邮箱
phone: '' //手机号
},
// 抬头信息
list2: {
value: '',
name: '',
taxiD: ''
type: '',
//抬头类型
title: '',
//抬头名称
tax_number: '',
//税号
address: '',
//地址
telephone: '',
//电话
bank_name: '',
//开户行
bank_account: '' //账户
},
// 提交申请
list3: {
value: 0,
amount: 9
},
// 手机号输入颜色
amount: 9,
//开票总金额
// 开票信息手机号输入颜色
styles: {
color: "#d5213c"
},
// 步骤条数据
stepsIndex: 0,
stepsIndex: 1,
// 步骤条的名称
stepsDatas: [{
text: '开票信息'
}, {
@ -356,17 +371,9 @@ var _default = {
}, {
text: '提交申请'
}],
// 开票下拉框数据
range: [{
value: '1',
text: "垃圾费"
}, {
value: '2',
text: "污水费"
}, {
value: '3',
text: "游泳"
}],
// 开票下拉框数据列表
range: [],
// 提交申请的抬头类型
headerType1: [{
text: '单位',
value: '0',
@ -376,6 +383,7 @@ var _default = {
value: '1',
disable: true
}],
// 抬头信息的抬头类型
headerType: [{
text: '单位',
value: '0'
@ -383,8 +391,8 @@ var _default = {
text: '个人',
value: '1'
}],
// 用户编号
candidates: ['12345689512', '54687913246', '54967846513', '48795123187'],
// 用户编号数据列表
candidates: [],
//合并开票
mergelist: [{
text: '不合并',
@ -392,11 +400,34 @@ var _default = {
}, {
text: '合并',
value: '1'
}]
}],
form1: {},
form2: {}
};
},
onLoad: function onLoad() {
this.dropdown();
},
methods: {
// 上一步下一步
// 获取开票信息的下拉数据
dropdown: function dropdown() {
var _this = this;
_api.default.getApplyData({}, function (res) {
_this.range = res.data.project_arr;
_this.candidates.push(res.data.pucode);
});
},
// 把开票项目的 value 换成 名称显示
project_id1: function project_id1(num) {
var name = "";
this.range.forEach(function (item) {
if (item.value == num) {
name = item.text;
}
});
return name;
},
// 上一步,下一步
changeSteps: function changeSteps(evt) {
var type = evt.currentTarget.dataset.type;
if (type == "prev") {
@ -414,6 +445,7 @@ var _default = {
}
}
},
// 进行判断每一步的验证
nextstep: function nextstep() {
if (this.stepsIndex == 1) {
if (!this.list1.project_id) {
@ -464,29 +496,10 @@ var _default = {
this.stepsIndex = 0;
return;
}
var list1 = this.$refs.form.modelValue;
console.log('表单数据信息:', list1);
var url = '/api/invoiceIssuance/add';
var data = {
project_id: list1.project_id,
pucode_id: list1.pucode_id,
expire_time: list1.expire_time,
mobile: list1.phone,
email: list1.email,
merge: list1.merge
};
console.log(data, '111');
_api.default.request(url, data, function (res) {
if (res.code == 1) {
uni.showToast({
title: '开票信息完成',
icon: 'none'
});
}
});
this.form1 = this.$refs.form.modelValue;
}
if (this.stepsIndex == 2) {
if (!this.list2.value) {
if (!this.list2.type) {
uni.showToast({
title: '请选择抬头类型',
icon: 'none'
@ -494,7 +507,7 @@ var _default = {
this.stepsIndex = 1;
return;
}
if (!this.list2.name) {
if (!this.list2.title) {
uni.showToast({
title: '请输入抬头名称',
icon: 'none'
@ -502,7 +515,7 @@ var _default = {
this.stepsIndex = 1;
return;
}
if (!this.list2.taxiD) {
if (!this.list2.tax_number) {
uni.showToast({
title: '请输入税号',
icon: 'none'
@ -510,13 +523,10 @@ var _default = {
this.stepsIndex = 1;
return;
}
var list2 = this.$refs.form1.modelValue;
console.log('表单数据信息:', list2);
this.form2 = this.$refs.form1.modelValue;
alert(JSON.stringify(this.list2));
}
},
change: function change(e) {
console.log("e:", e);
},
// 获取日期值
bindDateChange: function bindDateChange(e) {
// let value = e.detail.value;
@ -558,9 +568,9 @@ var _default = {
title: '请输入有效的税号',
icon: 'none'
});
this.list2.taxiD = ''; // 清空输入框
this.list2.tax_number = ''; // 清空输入框
} else {
this.list2.taxiD = event.detail.value;
this.list2.tax_number = event.detail.value;
}
},
// 显示日期
@ -580,23 +590,78 @@ var _default = {
},
//获取抬头
Obtain: function Obtain() {
var _this = this;
wx.chooseInvoiceTitle({
success: function success(res) {
_this.list2.value = res.type;
_this.list2.name = res.title;
_this.list2.taxiD = res.taxNumber;
console.log('发票抬头信息:', res);
},
fail: function fail(err) {
console.error('获取发票抬头失败:', err);
}
// wx.chooseInvoiceTitle({
// success: (res) => {
// this.list2.type = res.type;
// this.list2.title = res.title;
// this.list2.address = res.companyAddress;
// this.list2.telephone = res.telephone;
// this.list2.bank_name = res.bankName;
// this.list2.bank_account = res.bankAccount;
// console.log('发票抬头信息:', res);
// },
// fail: (err) => {
// console.error('获取发票抬头失败:', err);
// }
// });
_wxApi.default.wxRegister(function () {
wx.invoke('chooseInvoiceTitle', {
"scene": "1"
}, function (res) {
var info = JSON.parse(res.choose_invoice_title_info);
// let infoJ = JSON.parse(JSON.parse(JSON.stringify(info)));
alert(info);
alert(info.type);
this.list2.type = info.type;
this.list2.title = info.title;
this.list2.address = info.companyAddress;
this.list2.telephone = info.telephone;
this.list2.bank_name = info.bankName;
this.list2.bank_account = info.bankAccount;
// alert(JSON.stringify(this.list2))
});
});
},
// 数据提交
submitForm: function submitForm() {
uni.redirectTo({
url: "/pages/Invoiced/Invoiced?bool=".concat(true)
var list1 = this.form1;
var list2 = this.form2;
var url = '/api/invoiceIssuance/add';
if (this.list2.type == '1') {
this.list2.address = "";
this.list2.telephone = "";
this.list2.bank_name = "";
this.list2.bank_account = "";
}
var data = {
project_id: list1.project_id,
pucode_id: list1.pucode_id,
expire_time: list1.expire_time,
mobile: +list1.phone,
// + 是为了把字符串转换为数字类型,因为组件不好设置数字类型
email: list1.email,
merge: +list1.merge,
type: +list2.type,
title: list2.title,
tax_number: list2.tax_number,
address: list2.address,
telephone: list2.telephone,
bank_name: list2.bank_name,
bank_account: list2.bank_account,
amount: this.amount
};
_api.default.request(url, data, function (res) {
if (res.code == 1) {
uni.showToast({
title: '开票申请完成',
icon: 'none'
});
setTimeout(function () {
uni.redirectTo({
url: "/pages/Invoiced/Invoiced?bool=".concat(true)
});
}, 2000);
}
});
}
}

2
unpackage/dist/dev/mp-weixin/pages/Invoicing/Invoicing.wxml

File diff suppressed because one or more lines are too long

210
unpackage/dist/dev/mp-weixin/pages/index/index.js

@ -242,97 +242,35 @@ var _api = _interopRequireDefault(__webpack_require__(/*! @/common/js/api.js */
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
var _default = {
data: function data() {
return {
datetimerange: [],
//时间
// 首页数据
list: [{
name: '垃圾费',
money: '7.2',
Headuptype: '单位',
title: '张三',
time: '2024-07-22 18:45:31'
}, {
name: '垃圾费',
money: '7.2',
Headuptype: '单位',
title: '张三',
time: '2024-07-22 18:45:31'
}, {
name: '垃圾费',
money: '7.2',
Headuptype: '单位',
title: '张三',
time: '2024-07-22 18:45:31'
}, {
name: '垃圾费',
money: '7.2',
Headuptype: '单位',
title: '张三',
time: '2024-07-22 18:45:31'
}, {
name: '垃圾费',
money: '7.2',
Headuptype: '单位',
title: '张三',
time: '2024-07-22 18:45:31'
}, {
name: '垃圾费',
money: '7.2',
Headuptype: '单位',
title: '张三',
time: '2024-07-22 18:45:31'
}],
universityList: [],
page: 1,
//页码
limit: 2,
limit: 10,
//每页显示几条
status: 'more',
//状态
//显示的状态
contentText: {
contentdown: '查看更多',
contentrefresh: '加载中',
contentrefresh: '加载中....',
contentnomore: '没有更多咯'
},
appId: '',
redirectUri: '',
state: '',
user: {
name: '',
img: ''
}
scrollTop: 0,
//滚动条位置
start_date: '',
//开始日期
end_date: '' //结束日期
};
},
watch: {
datetimerange: function datetimerange(newval) {
console.log('范围选:', this.datetimerange);
}
},
onLoad: function onLoad(options) {
var url = window.location.href;
// 获取URL中的参数对象
@ -346,8 +284,12 @@ var _default = {
if (!uni.getStorageSync('AccessToken')) {
this.cont();
}
this.getWxCode();
this.getUniversityList();
// this.getWxCode()
},
onShow: function onShow() {
if (uni.getStorageSync('AccessToken')) {
this.getUniversityList();
}
},
mounted: function mounted() {
if (!uni.getStorageSync('AccessToken')) {
@ -374,14 +316,16 @@ var _default = {
if (code && state1) {
_api.default.wx(data, function (res) {
if (res.code == 1) {
_this.removepath();
uni.showToast({
title: res.msg,
icon: 'none'
});
uni.setStorageSync('AccessToken', res.data.token);
uni.setStorageSync('openid', res.data.openid);
uni.setStorageSync('phone', res.data.phone);
_this.$refs.popup.close();
_this.removepath();
_this.getUniversityList();
if (!res.data.phone) {
uni.navigateTo({
url: "/pages/wxlogin/registerphone"
@ -409,37 +353,36 @@ var _default = {
},
// 首页获取数据
getUniversityList: function getUniversityList() {
// API.getWxCode({}, res => {
// if (res.code == 1) {
// if (this.page === 1) {
// this.universityList = res.data;
// } else {
// this.universityList = this.universityList.concat(res.data);
// }
// // 判断是否还有更多数据
// if (res.data.length < this.limit) {
// this.status = 'noMore'; // 没有更多数据
// } else {
// this.status = 'more'; // 还有更多数据
// }
// }
// })
var startIndex = (this.page - 1) * this.limit; // 计算起始索引
var endIndex = startIndex + this.limit; // 计算结束索引
var newItems = this.list.slice(startIndex, endIndex); // 获取新的要显示的项目
this.universityList = this.universityList.concat(newItems); // 与已显示的项目连接
// 检查是否还有更多项目可以加载
if (endIndex >= this.list.length) {
this.status = 'noMore'; // 没有更多项目可以加载
} else {
this.status = 'more'; // 还有更多项目
}
var _this3 = this;
var data = {
limit: this.limit,
page: this.page,
start_date: this.start_date,
end_date: this.end_date
};
this.status = 'loading'; // 加载中
setTimeout(function () {
_api.default.Home(data, function (res) {
if (res.code == 1) {
_this3.page = res.data.current_page;
_this3.limit = res.data.per_page;
if (_this3.page === 1) {
_this3.universityList = res.data.data;
} else {
_this3.universityList = _this3.universityList.concat(res.data.data);
}
// 判断是否还有更多数据
if (res.data.data.length < _this3.limit) {
_this3.status = 'noMore'; // 没有更多数据
} else {
_this3.status = 'more'; // 还有更多数据
}
}
});
}, 1000);
},
//上拉加载
onReachBottom1: function onReachBottom1() {
console.log('触底了');
if (this.status == 'noMore') {
return;
}
@ -450,11 +393,6 @@ var _default = {
getUrlCode: function getUrlCode(name) {
return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.href) || [, ''])[1].replace(/\+/g, '%20')) || null;
},
login: function login() {
uni.navigateTo({
url: "/pages/wxlogin/wxlogin"
});
},
removepath: function removepath() {
// 获取当前 URL
var url = window.location.href;
@ -463,18 +401,70 @@ var _default = {
// 使用 replaceState 更新 URL,而不刷新页面
window.history.replaceState({}, document.title, newUrl);
},
handleDateTimeChange: function handleDateTimeChange(value) {
if (value.length == 0) {
this.start_date = "";
this.end_date = "";
this.getUniversityList();
} else {
this.start_date = value[0];
this.end_date = value[1];
this.getUniversityList();
}
},
// 跳转微信登录页面
login: function login() {
uni.navigateTo({
url: "/pages/wxlogin/wxlogin"
});
},
// 跳转申请发票页面
toInvoicing: function toInvoicing() {
uni.navigateTo({
url: '/pages/Invoicing/Invoicing'
});
},
toviewinvoice: function toviewinvoice(n) {
var id = n;
if (uni.getStorageSync('AccessToken')) {
// 获取滚动条滑动数据
scrolltop: function scrolltop(e) {
this.scrollTop = e.detail.scrollTop;
},
// 跳转回顶部
goTop: function goTop() {
var _this4 = this;
// const threshold = 4000; // 阈值:当滚动位置超过这个值时才执行
// if (this.scrollTop < threshold) {
var duration = 500; // 动画持续时间(毫秒)
var start = this.scrollTop; // 开始的滚动位置
var startTime = performance.now(); // 记录开始时间
var scrollToTop = function scrollToTop() {
var currentTime = performance.now(); // 当前时间
var elapsed = currentTime - startTime; // 计算经过的时间
var progress = Math.min(elapsed / duration, 1); // 计算进度(0 到 1)
// 使用线性插值计算新的滚动位置
_this4.scrollTop = start * (1 - progress);
if (progress < 1) {
requestAnimationFrame(scrollToTop); // 继续动画
} else {
_this4.scrollTop = 0; // 确保最终位置为 0
}
};
// 开始滚动到顶部的过程
requestAnimationFrame(scrollToTop);
// } else {
// 如果没有达到阈值,可以选择直接滚动到顶部
// this.scrollTop = 0; // 直接设置为 0
// }
},
toviewinvoice: function toviewinvoice(serial_number, status) {
var serial = serial_number;
if (uni.getStorageSync('AccessToken') && status == '已开票') {
uni.navigateTo({
url: '/pages/Invoiced/Invoiced?id=1'
url: "/pages/Invoiced/Invoiced?id=".concat(1)
});
} else {
} else if (!uni.getStorageSync('AccessToken')) {
uni.showToast({
title: '请先进行登入',
icon: 'none'

2
unpackage/dist/dev/mp-weixin/pages/index/index.wxml

@ -1 +1 @@
<view class="index data-v-57280228"><view class="data-v-57280228"><view class="index_title data-v-57280228"><view data-event-opts="{{[['tap',[['toInvoicing',['$event']]]]]}}" class="d-flex data-v-57280228" style="justify-content:flex-end;" bindtap="__e"><uni-icons vue-id="8dd740cc-1" type="plus" size="40rpx" color="#4b93d9" class="data-v-57280228" bind:__l="__l"></uni-icons><view class="data-v-57280228">申请发票</view></view></view><view class="index_picker data-v-57280228"><uni-datetime-picker bind:input="__e" vue-id="8dd740cc-2" type="datetimerange" rangeSeparator="至" value="{{datetimerange}}" data-event-opts="{{[['^input',[['__set_model',['','datetimerange','$event',[]]]]]]}}" class="data-v-57280228" bind:__l="__l"></uni-datetime-picker></view></view><scroll-view class="scroll-Y data-v-57280228" scroll-y="true" lower-threshold="{{0}}" data-event-opts="{{[['scrolltolower',[['onReachBottom1',['$event']]]]]}}" bindscrolltolower="__e"><block wx:for="{{universityList}}" wx:for-item="item" wx:for-index="index" wx:key="index"><view data-event-opts="{{[['tap',[['toviewinvoice',['$0'],['n']]]]]}}" class="index_list data-v-57280228" style="margin-bottom:20rpx;" bindtap="__e"><view class="d-flex jcontent-between data-v-57280228"><view class="index_list_size data-v-57280228">业务流水号3674</view><view class="index_list_color data-v-57280228">已开票,点击获取</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">开票项目</view><view class="data-v-57280228">{{item.name}}</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">开票总金额</view><view class="Price_color data-v-57280228">{{"¥"+item.money}}</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">抬头类型</view><view class="data-v-57280228">{{item.Headuptype}}</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">抬头名称</view><view class="data-v-57280228">{{item.title}}</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">申请时间</view><view class="data-v-57280228">{{item.time}}</view></view><view class="index_list_box data-v-57280228"><view class="index_list_box1 data-v-57280228">已开票</view></view></view></block><view class="index_list1 data-v-57280228"><view class="d-flex jcontent-between data-v-57280228"><view class="index_list_size data-v-57280228">业务流水号3674</view><view class="index_list_color data-v-57280228">已开票,点击获取</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">开票项目</view><view class="data-v-57280228">垃圾费</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">开票总金额</view><view class="Price_color data-v-57280228">¥7.2</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">抬头类型</view><view class="data-v-57280228">单位</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">抬头名称</view><view class="data-v-57280228">张三</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">申请时间</view><view class="data-v-57280228">2024-07-22 18:45:31</view></view><view class="index_list_box data-v-57280228"><view class="index_list_box1 data-v-57280228">已作废</view></view></view><uni-load-more vue-id="8dd740cc-3" status="{{status}}" content-text="{{contentText}}" class="data-v-57280228" bind:__l="__l"></uni-load-more></scroll-view><uni-popup vue-id="8dd740cc-4" type="bottom" background-color="#fff" border-radius="10px 10px 0 0" data-ref="popup" data-event-opts="{{[['^close',[['close']]]]}}" bind:close="__e" class="data-v-57280228 vue-ref" bind:__l="__l" vue-slots="{{['default']}}"><view style="height:150px;text-align:center;" class="data-v-57280228"><view style="margin:40rpx 80rpx;" class="data-v-57280228"><button type="primary" data-event-opts="{{[['tap',[['login',['$event']]]]]}}" bindtap="__e" class="data-v-57280228">登录</button></view></view></uni-popup></view>
<view class="index data-v-57280228"><view class="data-v-57280228"><view class="index_title data-v-57280228"><view data-event-opts="{{[['tap',[['toInvoicing',['$event']]]]]}}" class="d-flex data-v-57280228" style="justify-content:flex-end;" bindtap="__e"><uni-icons vue-id="8dd740cc-1" type="plus" size="40rpx" color="#4b93d9" class="data-v-57280228" bind:__l="__l"></uni-icons><view class="data-v-57280228">申请发票</view></view></view><view class="index_picker data-v-57280228"><uni-datetime-picker vue-id="8dd740cc-2" type="daterange" rangeSeparator="至" value="{{datetimerange}}" data-event-opts="{{[['^change',[['handleDateTimeChange']]],['^input',[['__set_model',['','datetimerange','$event',[]]]]]]}}" bind:change="__e" bind:input="__e" class="data-v-57280228" bind:__l="__l"></uni-datetime-picker></view></view><scroll-view class="scroll-Y data-v-57280228" scroll-y="true" lower-threshold="{{0}}" scroll-top="{{scrollTop}}" data-event-opts="{{[['scrolltolower',[['onReachBottom1',['$event']]]],['scroll',[['scrolltop',['$event']]]]]}}" bindscrolltolower="__e" bindscroll="__e"><block wx:for="{{universityList}}" wx:for-item="item" wx:for-index="index" wx:key="index"><view data-event-opts="{{[['tap',[['toviewinvoice',['$0','$1'],[[['universityList','',index,'serial_number']],[['universityList','',index,'status']]]]]]]}}" class="{{['index_list','data-v-57280228',item.status==='已作废'?'back1':'back2']}}" style="margin-bottom:20rpx;" bindtap="__e"><view class="d-flex jcontent-between data-v-57280228"><view class="{{['index_list_size','data-v-57280228',item.status==='已作废'?'grey1':'black']}}">{{"业务流水号"+item.serial_number}}</view><view class="{{['index_list_color','data-v-57280228',item.status==='已作废'?'grey2':'blue']}}">{{item.status}}</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">开票项目</view><view class="data-v-57280228">{{item.project_id}}</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">开票总金额</view><view class="{{['Price_color','data-v-57280228',item.status==='已作废'?'grey3':'green']}}">{{"¥"+item.amount}}</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">抬头类型</view><view class="data-v-57280228">{{item.head_type}}</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">抬头名称</view><view class="data-v-57280228">{{item.head_title}}</view></view><view class="d-flex jcontent-between data-v-57280228"><view class="data-v-57280228">申请时间</view><view class="data-v-57280228">{{item.create_time}}</view></view><view class="{{['data-v-57280228',item.status==='已开票'?'index_list_box1':item.status==='已作废'?'index_list_box3':'']}}"><view class="{{['data-v-57280228',item.status==='已开票'?'index_list_box2':item.status==='已作废'?'index_list_box4':'']}}">{{''+(item.status==='已开票'?'已开票':item.status==='已作废'?'已作废':'')+''}}</view></view></view></block><uni-load-more vue-id="8dd740cc-3" status="{{status}}" content-text="{{contentText}}" class="data-v-57280228" bind:__l="__l"></uni-load-more></scroll-view><block wx:if="{{this.scrollTop>1500}}"><view data-event-opts="{{[['tap',[['goTop',['$event']]]]]}}" style="position:fixed;bottom:5%;right:5%;width:50px;height:50px;background-color:#55aaff;display:flex;justify-content:center;align-items:center;border-radius:40px;" bindtap="__e" class="data-v-57280228"><uni-icons vue-id="8dd740cc-4" type="arrow-up" size="40rpx" color="#fff" class="data-v-57280228" bind:__l="__l"></uni-icons></view></block><uni-popup vue-id="8dd740cc-5" type="bottom" background-color="#fff" border-radius="10px 10px 0 0" data-ref="popup" data-event-opts="{{[['^close',[['close']]]]}}" bind:close="__e" class="data-v-57280228 vue-ref" bind:__l="__l" vue-slots="{{['default']}}"><view style="height:150px;text-align:center;" class="data-v-57280228"><view style="margin:40rpx 80rpx;" class="data-v-57280228"><button type="primary" data-event-opts="{{[['tap',[['login',['$event']]]]]}}" bindtap="__e" class="data-v-57280228">登录</button></view></view></uni-popup></view>

60
unpackage/dist/dev/mp-weixin/pages/index/index.wxss

@ -42,8 +42,31 @@ page {
padding: 0px 20rpx;
margin-bottom: 20rpx;
}
.index .index_list.data-v-57280228 {
.index .back1.data-v-57280228 {
background-color: #ebebeb;
}
.index .back2.data-v-57280228 {
background-color: #fff;
}
.index .black.data-v-57280228 {
color: #000;
}
.index .blue.data-v-57280228 {
color: #489ed9;
}
.index .green.data-v-57280228 {
color: #7daf1d;
}
.index .grey1.data-v-57280228 {
color: #959595;
}
.index .grey2.data-v-57280228 {
color: #afafaf;
}
.index .grey3.data-v-57280228 {
color: #939393;
}
.index .index_list.data-v-57280228 {
padding: 30rpx;
line-height: 60rpx;
color: #939393;
@ -51,20 +74,17 @@ page {
font-weight: bold;
}
.index .index_list .index_list_size.data-v-57280228 {
font-size: 36rpx;
color: #000;
font-size: 34rpx;
font-weight: bold;
}
.index .index_list .index_list_color.data-v-57280228 {
color: #489ed9;
font-size: 26rpx;
font-weight: bold;
}
.index .index_list .Price_color.data-v-57280228 {
color: #7daf1d;
font-weight: bold;
}
.index .index_list .index_list_box.data-v-57280228 {
.index .index_list .index_list_box1.data-v-57280228 {
border: 1px solid #d82d33;
border-radius: 16rpx;
line-height: 24rpx;
@ -75,36 +95,14 @@ page {
-webkit-transform: rotate(-15deg);
transform: rotate(-15deg);
}
.index .index_list .index_list_box .index_list_box1.data-v-57280228 {
.index .index_list .index_list_box1 .index_list_box2.data-v-57280228 {
border: 1px solid #d82d33;
border-radius: 16rpx;
padding: 20rpx 30rpx;
color: #d82d33;
font-weight: bold;
}
.index .index_list1.data-v-57280228 {
background-color: #ebebeb;
padding: 30rpx;
line-height: 60rpx;
color: #939393;
position: relative;
font-weight: bold;
}
.index .index_list1 .index_list_size.data-v-57280228 {
font-size: 36rpx;
color: #959595;
font-weight: bold;
}
.index .index_list1 .index_list_color.data-v-57280228 {
color: #afafaf;
font-size: 26rpx;
font-weight: bold;
}
.index .index_list1 .Price_color.data-v-57280228 {
color: #939393;
font-weight: bold;
}
.index .index_list1 .index_list_box.data-v-57280228 {
.index .index_list .index_list_box3.data-v-57280228 {
border: 1px solid #939393;
border-radius: 16rpx;
line-height: 24rpx;
@ -115,7 +113,7 @@ page {
-webkit-transform: rotate(-15deg);
transform: rotate(-15deg);
}
.index .index_list1 .index_list_box .index_list_box1.data-v-57280228 {
.index .index_list .index_list_box3 .index_list_box4.data-v-57280228 {
border: 1px solid #939393;
border-radius: 16rpx;
padding: 20rpx 30rpx;

57
unpackage/dist/dev/mp-weixin/pages/wxlogin/registerphone.js

@ -183,13 +183,66 @@ var _default = {
return {
mobile: '',
pucode: '',
snsCode: '439764',
snsCode: '',
intervalId: null,
num: 0,
styles: {
width: '100px'
}
};
},
onLoad: function onLoad() {
if (!uni.getStorageSync('phone')) {
uni.showToast({
title: '请先绑定手机号',
icon: 'none'
});
}
// 从本地存储中获取倒计时值
var savedNum = localStorage.getItem('countdownNum');
if (savedNum) {
this.num = parseInt(savedNum, 10);
if (this.num > 0) {
this.intervalId = setInterval(this.countDownTimer, 1000);
}
}
},
beforeDestroy: function beforeDestroy() {
// 清除定时器
clearInterval(this.intervalId);
uni.removeStorageSync('countdownNum');
},
methods: {
countDownTimer: function countDownTimer() {
if (this.num > 0) {
this.num--;
localStorage.setItem('countdownNum', this.num);
} else {
clearInterval(this.intervalId);
localStorage.setItem('countdownNum', this.num);
}
},
toCode: function toCode() {
if (!this.mobile) {
uni.showToast({
title: '请输入手机号',
icon: 'none'
});
return;
}
this.num = 60; // 设置倒计时总时间
localStorage.setItem('countdownNum', this.num);
this.intervalId = setInterval(this.countDownTimer, 1000);
var data = {
mobile: this.mobile
};
_api.default.sendSms(data, function (res) {
uni.showToast({
title: res.msg,
icon: 'none'
});
});
},
// 限制手机号
onInput: function onInput(event) {
// 使用正则表达式过滤非数字字符
@ -236,7 +289,7 @@ var _default = {
_api.default.request(url, data, function (res) {
if (res.code == 1) {
uni.setStorageSync('AccessToken', res.data.token);
uni.setStorageSync('mobile', _this.mobile);
uni.setStorageSync('phone', _this.mobile);
uni.showToast({
title: '手机号绑定成功',
icon: 'none'

2
unpackage/dist/dev/mp-weixin/pages/wxlogin/registerphone.wxml

@ -1 +1 @@
<view class="box data-v-45a5294a"><view class="data-v-45a5294a"><uni-easyinput vue-id="6efefdea-1" prefixIcon="phone-filled" placeholder="请输入手机号" value="{{mobile}}" data-event-opts="{{[['^blur',[['onInput']]],['^input',[['__set_model',['','mobile','$event',[]]]]]]}}" bind:blur="__e" bind:input="__e" class="data-v-45a5294a" bind:__l="__l"></uni-easyinput></view><view style="margin-top:10px;" class="data-v-45a5294a"><uni-easyinput bind:input="__e" vue-id="6efefdea-2" prefixIcon="contact-filled" placeholder="请输入用户编号" value="{{pucode}}" data-event-opts="{{[['^input',[['__set_model',['','pucode','$event',[]]]]]]}}" class="data-v-45a5294a" bind:__l="__l"></uni-easyinput></view><view class="input data-v-45a5294a"><uni-easyinput style="width:100px;margin-right:10px;" vue-id="6efefdea-3" placeholder="请输入内容" value="{{snsCode}}" data-event-opts="{{[['^input',[['__set_model',['','snsCode','$event',[]]],['input']]]]}}" bind:input="__e" class="data-v-45a5294a" bind:__l="__l"></uni-easyinput><button class="mini-btn data-v-45a5294a" type="primary" size="mini">获取验证码</button></view><view class="data-v-45a5294a"><button style="width:180px;margin-top:20px;" type="primary" data-event-opts="{{[['tap',[['register',['$event']]]]]}}" bindtap="__e" class="data-v-45a5294a">绑定手机号</button></view></view>
<view class="box data-v-45a5294a"><view class="data-v-45a5294a"><uni-easyinput vue-id="6efefdea-1" prefixIcon="phone-filled" placeholder="请输入手机号" value="{{mobile}}" data-event-opts="{{[['^blur',[['onInput']]],['^input',[['__set_model',['','mobile','$event',[]]]]]]}}" bind:blur="__e" bind:input="__e" class="data-v-45a5294a" bind:__l="__l"></uni-easyinput></view><view style="margin-top:10px;" class="data-v-45a5294a"><uni-easyinput bind:input="__e" vue-id="6efefdea-2" prefixIcon="contact-filled" placeholder="请输入用户编号" value="{{pucode}}" data-event-opts="{{[['^input',[['__set_model',['','pucode','$event',[]]]]]]}}" class="data-v-45a5294a" bind:__l="__l"></uni-easyinput></view><view class="input data-v-45a5294a"><uni-easyinput bind:input="__e" style="width:100px;margin-right:10px;" vue-id="6efefdea-3" placeholder="请输入内容" value="{{snsCode}}" data-event-opts="{{[['^input',[['__set_model',['','snsCode','$event',[]]]]]]}}" class="data-v-45a5294a" bind:__l="__l"></uni-easyinput><button class="mini-btn data-v-45a5294a" type="primary" size="mini" disabled="{{num>0}}" data-event-opts="{{[['tap',[['toCode',['$event']]]]]}}" bindtap="__e">{{''+(num>0?num+'秒后重新获取':'获取验证码')}}</button></view><view class="data-v-45a5294a"><button style="width:180px;margin-top:20px;" type="primary" data-event-opts="{{[['tap',[['register',['$event']]]]]}}" bindtap="__e" class="data-v-45a5294a">绑定手机号</button></view></view>
Loading…
Cancel
Save