lite-pos-wx-plugin-mate 1.3.2 → 1.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,40 @@
1
+ "use strict";var _constants=require("../../utils/constants.js"),litePosApi=require("../../utils/litePosApi.js"),tips=require("../../utils/tips.js"),util=require("../../utils/util.js");
2
+ /* global requirePlugin */Component({properties:{tender_sn:String,order_token:String,domain_env:String,wxmini_openid:String},data:{state:0,logoUrl:"",brandName:"",brandLogo:"",themeColor:{},themeButton:{},themeCode:"",currentPageStatus:"isPaying",gotTenderResult:!1,amountFormat:"",isPaying:!1},pageLifetimes:{show:function show(){var e=this;console.log("show=======",this.data.isPaying,this.data.gotTenderResult),this.data.isPaying||this.data.gotTenderResult||(_constants.globalData.loadedFont||wx.loadFontFace({family:"Bebas-Regular",global:!0,scopes:["webview","native"],source:'url("https://shouqianba-vip.oss-cn-hangzhou.aliyuncs.com/font/Bebas-Regular.ttf")',complete:function complete(e){_constants.globalData.loadedFont=!0}}),_constants.globalData.domainEnv=this.data.domain_env||"prod",_constants.globalData.wxmini_openid=this.data.wxmini_openid||"",this.data.order_token&&this.data.tender_sn?(tips.loading(),this.getTenderResult()):tips.confirm("提示","参数不存在","确认","",!1).then((function(){e.handleBackBtn()})))}},methods:{
3
+ // 查询流水结果
4
+ getTenderResult:function getTenderResult(){var e=this;litePosApi.queryOrderTenderResult(this.data.order_token,this.data.tender_sn).then((function(t){
5
+ // const tenderInfo = serverTenderDataJSON.biz_response.data;
6
+ var n=t.state;e.setData({tenderAmount:t.amount,amountFormat:util.formatAmt(t.amount/100),subTenderDesc:t.sub_tender_desc}),[3].includes(n)?e.showErrorAlert("交易正在进行中,请勿重复支付"):e.fetchOrderInfo(n)})).catch((function(t){e.showErrorAlert(t)}))},
7
+ // 获取订单信息
8
+ fetchOrderInfo:function fetchOrderInfo(e){var t=this,n=this.data.order_token;litePosApi.fetchOrderInfo(n).then((function(n){var a=n.respData,s=n.metaData,o=s&&s.theme_color||{bg_color:"#262626",fg_color:"#fff"};wx.setStorageSync("header",a.brand||{}),wx.setStorageSync("themeColor",o),wx.setStorageSync("themeButton",s&&s.theme_button||{}),wx.setStorageSync("themeCode",s&&s.theme_code||""),
9
+ // 绑定数据
10
+ t.setData({state:(a.order||{}).state,logoUrl:(a.brand||{}).logo,brandName:(a.brand||{}).brand_name,brandLogo:(a.brand||{}).landscape_logo,themeColor:(s||{}).theme_color||{},themeButton:(s||{}).theme_button||{},themeCode:(s||{}).theme_code||"",currentPageStatus:"isPaying"}),[1,3].includes(e)?
11
+ // 最终状态去结果页
12
+ [0,4,6,7].includes((a.order||{}).state)?t.handleBackBtn():t.fetchTenderResult():t.switchTenderResultPage()}),(function(e){t.showErrorAlert(e)}))},
13
+ // 处理微信分付支付参数
14
+ handleFenfuPay:function handleFenfuPay(e){var t=this;tips.loading();var n,a=wx.getAccountInfoSync().miniProgram.appId,s={amount:this.data.tenderAmount,sub_tender_type:405,scene_type:"MINI",payer_uid:_constants.globalData.wxmini_openid,appid:a,order_token:this.data.order_token,tender_sn:this.data.tender_sn},o=e.installment_fee_merchant_percent;405===e.sub_tender_type&&100!==o||e.installment_number&&(s.installment={installment_number:e.installment_number,installment_fee_merchant_percent:o}),console.log("paymentArgs====",s),
15
+ // 分期参数
16
+ litePosApi.installmentTenderPay(this.data.order_token,this.data.tender_sn,s).then((function(e){if(tips.loaded(),console.log("respData====",s),e){var n=e.pay_request;t.setData({isPaying:!0}),wx.requestPayment({timeStamp:n.time_stamp,nonceStr:n.nonce_str,package:n.package,signType:n.sign_type,paySign:n.pay_sign,success:function success(e){console.log("支付===res",e),t.reFetchTenderResultAfterPay()},fail:function fail(e){t.handleCancelTransaction()}})}}),(function(e){tips.loaded(),console.log("error=======",e)}))},
17
+ // 处理微信支付参数
18
+ handleWXPay:function handleWXPay(){var e=this;tips.loading();var t,n=wx.getAccountInfoSync().miniProgram.appId,a={amount:this.data.tenderAmount,sub_tender_type:301,scene_type:"MINI",payer_uid:_constants.globalData.wxmini_openid,appid:n,order_token:this.data.order_token,tender_sn:this.data.tender_sn};litePosApi.qrcodeTenderPay(this.data.order_token,this.data.tender_sn,a).then((function(t){if(tips.loaded(),t){var n=t.pay_request;e.setData({isPaying:!0}),wx.requestPayment({timeStamp:n.time_stamp,nonceStr:n.nonce_str,package:n.package,signType:n.sign_type,paySign:n.pay_sign,success:function success(t){console.log("支付===res",t),e.reFetchTenderResultAfterPay()},fail:function fail(t){e.handleCancelTransaction()}})}}),(function(t){e.showErrorAlert(t)}))},
19
+ // 关闭流水
20
+ handleCancelTransaction:function handleCancelTransaction(){var e=this;tips.loading(),litePosApi.cancelTender(this.data.order_token).then((function(t){tips.loaded(),e.reFetchTenderResultAfterPay()}),(function(t){tips.loaded(),e.reFetchTenderResultAfterPay()}))},
21
+ // 查询结果
22
+ fetchTenderResult:function fetchTenderResult(){var e=this;litePosApi.queryOrderTenderResult(this.data.order_token,this.data.tender_sn).then((function(t){e.setData({state:t.state,amountFormat:util.formatAmt(t.amount/100)}),
23
+ // 有结果的状态,去结果页面
24
+ [1,3].includes(t.state)?405===t.sub_tender_type?e.handleFenfuPay(t):
25
+ // 拉起支付
26
+ e.handleWXPay():e.switchTenderResultPage()}))},
27
+ // 轮训结果
28
+ loopTenderResult:function loopTenderResult(){var e=this;litePosApi.queryOrderTenderResult(this.data.order_token,this.data.tender_sn).then((function(t){e.data.gotTenderResult||(
29
+ // 有结果的状态,去结果页面
30
+ [1,3].includes(t.state)?e.timer=setTimeout((function(){e.loopTenderResult(),clearTimeout(e.timer)}),1e3):(e.setData({state:t.state,amountFormat:util.formatAmt(t.amount/100)}),e.switchTenderResultPage()))})).catch((function(t){e.showErrorAlert(t)}))},
31
+ // 显示错误
32
+ showErrorAlert:function showErrorAlert(e){var t=this;this.setData({gotTenderResult:!0,isLoading:!1}),tips.loaded(),tips.confirm("提示",e,"确认","",!1).then((function(){t.handleBackBtn()}))},
33
+ // 支付后重新查询结果
34
+ reFetchTenderResultAfterPay:function reFetchTenderResultAfterPay(){var e=this;tips.loading(),litePosApi.queryOrderTenderResult(this.data.order_token,this.data.tender_sn).then((function(t){
35
+ // 有结果的状态,去结果页面
36
+ [1,3].includes(t.state)?e.loopTenderResult():(e.setData({state:t.state,amountFormat:util.formatAmt(t.amount/100),isPaying:!1,gotTenderResult:!0}),e.switchTenderResultPage())})).catch((function(t){e.showErrorAlert(t)}))},
37
+ // 去tender结果页
38
+ switchTenderResultPage:function switchTenderResultPage(){tips.loaded(),this.timer&&clearTimeout(this.timer),this.setData({currentPageStatus:"tenderResult",gotTenderResult:!0})},
39
+ // 返回按钮
40
+ handleBackBtn:function handleBackBtn(){wx.navigateBack()}}});
@@ -0,0 +1,7 @@
1
+ {
2
+ "component": true,
3
+ "navigationBarTitleText": "门店认证",
4
+ "usingComponents": {
5
+ "sqb-loading": "../loading/loading"
6
+ }
7
+ }
@@ -0,0 +1 @@
1
+ <view class="sqb-pay-wrap" wx:if="{{ currentPageStatus === 'isPaying' }}"><view class="sqb-pay-logo-wrap"><image src="{{logoUrl}}"></image></view></view><view class="sqb-result-wrap" wx:elif="{{currentPageStatus === 'tenderResult'}}"><view class="sqb-result-state-wrapper flex-row-sa-c"><view class="sqb-result-state-wrap flex-row-c" wx:if="{{state === 4}}"><view class="sqb-result-state-img"><image src="https://wosai-images.oss-cn-hangzhou.aliyuncs.com/litepos/check-circle-fill.png"></image></view><view class="sqb-result-state-text">支付成功</view></view><view class="sqb-result-state-wrap flex-row-c" wx:else><view class="sqb-result-state-img"><image src="https://wosai-images.oss-cn-hangzhou.aliyuncs.com/litepos/close-circle-fill.png"></image></view><view class="sqb-result-state-text">支付失败</view></view></view><view class="sqb-pay-order-amount-wrapper"><view class="sqb-pay-order-amount-wrap sqb-pay-order-amount-wrap-{{themeCode}}"><text class="sqb-pay-order-currency">¥</text><text class="sqb-pay-order-amount">{{amountFormat}}</text></view></view><view class="sqb-go-back-tip">请返回{{brandName}}查看订单信息</view><view class="sqb-bottom flex-row-sa-c"><view class="sqb-bottom-btn" style="border-color: {{ themeColor && themeColor.bg_color ? themeColor.bg_color : '#262626'}}; color: {{ themeColor && themeColor.bg_color ? themeColor.bg_color : '#262626'}}; border-radius: {{ themeButton && themeButton.button_radius ? (themeButton.button_radius * 2 + 'rpx') : '0rpx'}}" bindtap="handleBackBtn">返回</view></view></view>
@@ -0,0 +1 @@
1
+ .sqb-pay-wrap{width:100%;height:100vh;display:flex;flex-direction:column;align-items:center;align-content:center;padding-top:128rpx;background-color:#fff;box-sizing:border-box}.sqb-pay-logo-wrap{height:160rpx;width:160rpx;border-radius:16rpx;margin:0 auto;overflow:hidden;display:flex;flex-direction:row;align-items:center}.sqb-pay-logo-wrap image{height:100%;width:100%}.sqb-result-wrap{height:100vh;width:100vw;background-color:#fff;padding-top:280rpx;box-sizing:border-box}.sqb-result-state-wrapper{display:flex;align-items:center;justify-content:space-around}.sqb-result-state-wrap{display:flex;align-items:center}.sqb-result-state-img{height:40rpx;width:40rpx}.sqb-result-state-img image{height:100%;width:100%}.sqb-result-state-text{font-size:32rpx;line-height:40rpx;color:#262626;padding-left:8rpx;text-align:center}.sqb-pay-order-amount-wrapper{display:flex;flex-direction:row;justify-content:space-around;padding:0 7rpx}.sqb-pay-order-amount-wrap{margin-top:64rpx;color:#262626;text-align:center;display:flex;flex-direction:row;align-items:flex-end}.sqb-pay-order-currency{font-size:24rpx;line-height:32rpx}.sqb-pay-order-amount{line-height:60rpx;font-size:60rpx;padding-left:4rpx;font-family:Bebas-Regular}.sqb-go-back-tip{width:100vw;left:0;color:grey;font-size:28rpx;line-height:40rpx;padding-left:40rpx;padding-right:40rpx;text-align:center;word-break:break-all;box-sizing:border-box;margin-top:56rpx}.sqb-bottom{position:absolute;bottom:0;width:100vw;left:0;padding-bottom:calc(20px + env(safe-area-inset-bottom)/ 2)}.sqb-bottom-btn{width:622rpx;height:96rpx;line-height:92rpx;font-size:30rpx;border-radius:0;border:1px solid #262626;color:#262626;background-color:#fff;text-align:center;margin:0 auto}
@@ -0,0 +1 @@
1
+ "use strict";exports.__esModule=!0,exports.litePosDomainV2=exports.litePosDomain=exports.globalData=void 0;var litePosDomain=exports.litePosDomain=function litePosDomain(o){return"dev"===o?"https://vip-apigateway.iwosai.com/api/lpos/cashier/v1/":"https://vapi.shouqianba.com/api/lpos/cashier/v1/"},litePosDomainV2=exports.litePosDomainV2=function litePosDomainV2(o){return"dev"===o?"https://vip-apigateway.iwosai.com/api/lpos/cashier/v2/":"https://vapi.shouqianba.com/api/lpos/cashier/v2/"},globalData=exports.globalData={domainEnv:"prod",loadedFont:!1};
@@ -0,0 +1,27 @@
1
+ "use strict";var _constants=require("./constants.js"),request=require("./request.js");
2
+ // 导入依赖
3
+ module.exports={
4
+ //V2查询订单接口
5
+ fetchOrderInfo:function fetchOrderInfo(e,n){void 0===e&&(e=""),void 0===n&&(n={order_token:e});var t=(0,_constants.litePosDomainV2)(_constants.globalData.domainEnv)+"cashier?order_token="+e;
6
+ // url = util.concatUrlAndParams(url, reqData);
7
+ // console.log(url)
8
+ return new Promise((function(e,n){request.get(t).then((function(t){"SUCCESS"!==t.result_code?n(t.error_message||"查询订单信息失败"):e({respData:t.data,metaData:t.meta_data})}),(function(e){n(e)}))}))},
9
+ // 查询结果
10
+ queryOrderResult:function queryOrderResult(e){var n=(0,_constants.litePosDomain)(_constants.globalData.domainEnv)+"order/"+e+"/result";return new Promise((function(e,t){request.get(n).then((function(n){"SUCCESS"!==n.result_code?t(n.error_message||"查询订单结果失败"):e(n.data)}),(function(e){t(e)}))}))},
11
+ //取消订单
12
+ cancelTender:function cancelTender(e){var n=(0,_constants.litePosDomain)(_constants.globalData.domainEnv)+"order/"+e+"/tender-cancel";return new Promise((function(e,t){request.get(n).then((function(n){"SUCCESS"!==n.result_code?t(n.error_message||"查询订单信息失败"):e(n.data||{})}),(function(e){t(e)}))}))},
13
+ //tender结果查询
14
+ queryOrderTenderResult:function queryOrderTenderResult(e,n){var t=(0,_constants.litePosDomain)(_constants.globalData.domainEnv)+"order/"+e+"/"+n+"/result";
15
+ // console.log('tender结果查询,url=' + url);
16
+ return new Promise((function(e,n){request.get(t).then((function(t){
17
+ // console.log('tender结果查询,respData=' + JSON.stringify(respData));
18
+ "SUCCESS"!==t.result_code?n(t.error_message||"查询订单结果失败"):e(t.data)}),(function(e){n(e)}))}))},
19
+ //申请移动tender支付
20
+ qrcodeTenderPay:function qrcodeTenderPay(e,n,t){var r=(0,_constants.litePosDomain)(_constants.globalData.domainEnv)+"order/"+e+"/"+n+"/pay/qrcode";
21
+ // console.log('申请移动支付,url=' + url);
22
+ // console.log('申请移动支付,reqData=' + JSON.stringify(reqData));
23
+ return new Promise((function(e,n){request.post(r,t).then((function(t){
24
+ // console.log('申请移动支付,respData=' + JSON.stringify(respData));
25
+ "SUCCESS"!==t.result_code?n(t.error_message||"申请移动支付失败"):e(t.data)}),(function(e){n(e)}))}))},
26
+ //申请分期tender支付
27
+ installmentTenderPay:function installmentTenderPay(e,n,t){var r=(0,_constants.litePosDomain)(_constants.globalData.domainEnv)+"order/"+e+"/"+n+"/pay/installment";return new Promise((function(e,n){request.post(r,t).then((function(t){"SUCCESS"!==t.result_code?n(t.error_message||"申请移动支付失败"):e(t.data)}),(function(e){n(e)}))}))}};
@@ -0,0 +1,9 @@
1
+ "use strict";var request=function request(e,t,o,s){return void 0===t&&(t="POST"),void 0===o&&(o={}),void 0===s&&(s={}),new Promise((function(n,r){
2
+ // header['x-env-flag'] = '11993';
3
+ wx.request({url:e,method:t,
4
+ // header: Object.assign(header, {
5
+ // 'x-env-flag': '13125',
6
+ // }),
7
+ header:s,dataType:"json",data:o,success:function success(e){
8
+ // resp 是原始响应信息,而不是接口响应数据
9
+ if(e.statusCode>=200&&e.statusCode<300){var t=e.data;"200"!==t.result_code?r(t.error_message||"接口有点问题,请稍后重试"):n(t.biz_response)}else r("系统开小差了,请稍后重试")},fail:function fail(e){r("网络异常,请稍后重试")},complete:function complete(){r()}})}))},post=function post(e,t,o){var s=o||{};return s["Content-Type"]="application/json",e.indexOf("iwosai.com"),request(e,"POST",t,s)},get=function get(e){var t={},o={"Content-Type":"application/json"};return e.indexOf("iwosai.com"),request(e,"GET",t,o)};module.exports={request:request,post:post,get:get};
@@ -0,0 +1,38 @@
1
+ "use strict";var Tips=function(){function Tips(){}
2
+ /**
3
+ * 弹出加载提示
4
+ *
5
+ * @param title 标题
6
+ */return Tips.loading=function loading(o){void 0===o&&(o="加载中..."),wx.showLoading({title:o,mask:!0})}
7
+ /**
8
+ * 加载完毕
9
+ */,Tips.loaded=function loaded(){wx.hideLoading()}
10
+ /**
11
+ * 确认选择框
12
+ *
13
+ * @param title 标题
14
+ * @param content 内容
15
+ * @param confirmText 按钮文字
16
+ * @param cancelText 按钮文字
17
+ */,Tips.confirm=function confirm(o,i,n,s,t){return void 0===o&&(o="温馨提示"),void 0===n&&(n="马上查询"),void 0===s&&(s="暂不需要"),void 0===t&&(t=!0),new Promise((function(a,c){wx.showModal({title:o,content:i,showCancel:t,confirmText:n,cancelText:s,success:function success(o){a(o)},fail:function fail(o){c(o)}})}))}
18
+ /**
19
+ * 成功提示
20
+ *
21
+ * @param title 内容
22
+ * @param duration 显示时长,单位为 ms,默认 2000。
23
+ * @param mask 是否显示透明蒙层,防止触摸穿透
24
+ */,Tips.successToast=function successToast(o,i,n){void 0===o&&(o="操作成功"),void 0===i&&(i=3e3),void 0===n&&(n=!1),wx.showToast({icon:"success",title:o,duration:i,mask:n})}
25
+ /**
26
+ * 加载提示
27
+ *
28
+ * @param title 内容
29
+ * @param duration 显示时长,单位为 ms,默认 2000。
30
+ * @param mask 是否显示透明蒙层,防止触摸穿透
31
+ */,Tips.loadingToast=function loadingToast(o,i,n){void 0===o&&(o="加载中..."),void 0===i&&(i=3e3),void 0===n&&(n=!0),wx.showToast({icon:"loading",title:o,duration:i,mask:n})}
32
+ /**
33
+ * 普通提示
34
+ *
35
+ * @param title 内容
36
+ * @param duration 显示时长,单位为 ms,默认 2000。
37
+ * @param mask 是否显示透明蒙层,防止触摸穿透
38
+ */,Tips.nomalToast=function nomalToast(o,i,n){void 0===o&&(o="未知错误"),void 0===i&&(i=2e3),void 0===n&&(n=!1),wx.showToast({icon:"none",title:o,duration:i,mask:n})},Tips}();module.exports=Tips;
@@ -0,0 +1 @@
1
+ "use strict";var formatAmt=function formatAmt(t){return t?t.toFixed(2).toLocaleString(void 0,{minimumFractionDigits:2,maximumFractionDigits:2}):"0.0"};module.exports={formatAmt:formatAmt};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lite-pos-wx-plugin-mate",
3
- "version": "1.3.2",
3
+ "version": "1.3.5",
4
4
  "description": "",
5
5
  "main": "miniprogram_dist/index.js",
6
6
  "scripts": {