提交 8ff89d82 authored 作者: 黄旭新's avatar 黄旭新

商家端接口对接

上级 587406a3
{ // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/
// launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数
"version": "0.0",
"configurations": [{
"type": "uniCloud",
"default": {
"launchtype": "local"
}
}
]
}
<script>
import api from '@/static/util/api.js'
import {post,get} from '@/static/util/fun.js'
import api from 'static/util/api.js'
import {post,get} from 'static/util/fun.js'
import jweixin from 'jweixin-module'
export default {
onLaunch: function() {
......@@ -67,7 +67,7 @@
</script>
<style lang="scss">
@import 'uview-ui/index.scss';
// @import 'uview-ui/index.scss';
/*每个页面公共css */
......
......@@ -65,7 +65,12 @@
"mp-toutiao" : {
"usingComponents" : true
},
"uniStatistics": {
"enable": false
"uniStatistics" : {
"enable" : false
},
"h5" : {
"router" : {
"base" : "./"
}
}
}
{
"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
// {
// "path": "pages/index/index",
// "style": {
// "navigationBarTitleText": "uni-app"
// }
// },
{
"path": "pages/index/index",
"path": "pages/login/login",
"style": {
"navigationBarTitleText": "uni-app"
"navigationBarTitleText": "登录",
"navigationStyle":"custom"
}
},
{
"path": "pages/changepassword/changepassword",
"style": {
"navigationBarTitleText": "修改密码",
"navigationStyle":"custom"
}
},
{
"path": "pages/shopdetail/shopdetail",
"style": {
"navigationBarTitleText": "商家",
"navigationStyle":"custom"
}
}
],
......
<template>
<view class="login">
<view class="login_head">修改登录密码</view>
<view class="logo_input">
<view class="logo_input_list">
<input v-if="isoriginalpassword" type="password" value="" v-model="originalpassword" placeholder="请输入原密码" placeholder-class="placeholder"/>
<input v-else type="text" value="" v-model="originalpassword" placeholder="请输入原密码" placeholder-class="placeholder"/>
<image @click="originalpassword=''" v-if="originalpassword" src="../../static/images/close.png" mode="widthFix" class="close"></image>
<image @click="isoriginalpassword=false" v-if="isoriginalpassword" src="../../static/images/Invisible.png" mode="widthFix" class="show_icon"></image>
<image @click="isoriginalpassword=true" v-if="!isoriginalpassword" src="../../static/images/iVisual.png" mode="widthFix" class="hide_icon"></image>
</view>
<view class="logo_input_list">
<input v-if="isnewpassword" type="password" value="" v-model="newpassword" placeholder="请输入新密码" placeholder-class="placeholder"/>
<input v-else type="text" value="" v-model="newpassword" placeholder="请输入新密码" placeholder-class="placeholder"/>
<image @click="newpassword=''" v-if="newpassword" src="../../static/images/close.png" mode="widthFix" class="close"></image>
<image @click="isnewpassword=false" v-if="isnewpassword" src="../../static/images/Invisible.png" mode="widthFix" class="show_icon"></image>
<image @click="isnewpassword=true" v-if="!isnewpassword" src="../../static/images/iVisual.png" mode="widthFix" class="hide_icon"></image>
</view>
<view class="logo_input_list">
<input v-if="isaffirmpassword" type="password" value="" v-model="affirmpassword" placeholder="再次输入新密码" placeholder-class="placeholder"/>
<input v-else type="text" value="" v-model="affirmpassword" placeholder="再次输入新密码" placeholder-class="placeholder"/>
<image @click="affirmpassword=''" v-if="affirmpassword" src="../../static/images/close.png" mode="widthFix" class="close"></image>
<image @click="isaffirmpassword=false" v-if="isaffirmpassword" src="../../static/images/Invisible.png" mode="widthFix" class="show_icon"></image>
<image @click="isaffirmpassword=true" v-if="!isaffirmpassword" src="../../static/images/iVisual.png" mode="widthFix" class="hide_icon"></image>
</view>
<view class="submit_btn" @click="submit">确定</view>
</view>
</view>
</template>
<script>
import api from '@/static/util/api.js'
import {post,get} from '@/static/util/fun.js'
export default {
data() {
return {
account:'',
originalpassword:'',//原密码
newpassword:'',//新密码
affirmpassword:'',//确认密码
isaffirmpassword:true,
isnewpassword:true,
isoriginalpassword:true,
userdata:'',//商家数据
}
},
created() {
let that=this
that.userdata=uni.getStorageSync('userdata');
},
onLoad() {
},
methods: {
submit(){
let that=this
if(that.originalpassword==''){
uni.showToast({
title:'请输入原密码',
icon:'none'
})
}else if(that.newpassword==''){
uni.showToast({
title:'请输入新密码',
icon:'none'
})
}else if(that.affirmpassword==''){
uni.showToast({
title:'再次输入新密码',
icon:'none'
})
}else if(that.affirmpassword!=that.newpassword){
uni.showToast({
title:'新密码与确认密码不一致',
icon:'none'
})
}else{
post(api.reSetPassword,{
oldPassword:that.originalpassword,
newPassword:that.newpassword,
userId:that.userdata.tMerchant.id,
}).then(res=>{
if(res.code==200){
uni.showToast({
title:'修改成功!',
icon:'success'
})
let retime=setTimeout(function(){
uni.navigateBack({
delta: 1
});
clearTimeout(retime)
},2000)
}else{
uni.showToast({
title:res.msg,
icon:'none'
})
}
})
}
}
// 登录end
}
}
</script>
<style lang="scss">
.login{
width: 100%;
height: 100%;
padding-top: 88rpx;
.login_head{
width: 100%;
height: 88rpx;
text-align: center;
line-height: 88rpx;
border-bottom: 1px solid #F4F5F8;
font-weight: bold;
font-size: 32rpx;
color: #000;
margin-bottom:18rpx;
}
.login_img{
width: 100%;
image{
width: 196rpx;
height: 196rpx;
display: block;
margin: auto;
}
}
.logo_text{
width: 100%;
text-align: center;
margin-top: 22rpx;
font-size: 30rpx;
color: #565656;
font-weight: 500;
}
.logo_input{
width: 78%;
margin-left: 11%;
.logo_input_list{
width: 100%;
height: 124rpx;
border-bottom: 1px solid #9C9B9E;
color: #030303;
font-size: 34rpx;
font-weight: 800;
position: relative;
.placeholder{
color: #9C9B9E;
font-weight: 500;
}
input{
width:74%;
background-color: transparent;
border: none;
outline: none;
height:104rpx;
line-height: 104rpx;
position: absolute;
left: 0;
bottom: 0;
}
.close{
width: 40rpx;
height: 40rpx;
position: absolute;
bottom: 32rpx;
right: 64rpx;
}
.show_icon{
position: absolute;
right: 0;
bottom: 32rpx;
width: 40rpx;
height: 40rpx;
}
.hide_icon{
position: absolute;
right: 0;
bottom: 32rpx;
width: 40rpx;
height: 40rpx;
}
}
.submit_btn{
width: 100%;
height: 96rpx;
margin-top: 60rpx;
background-image: url(../../static/images/btn_bg.png);
background-repeat: no-repeat;
background-size: 100% 100%;
font-weight: 500;
color: #FFFFFF;
font-size: 34rpx;
text-align: center;
line-height: 96rpx;
}
}
}
</style>
<template>
<view class="login">
<view class="login_head">登录</view>
<view class="login_img"><image src="../../static/images/logo.png" mode="widthFix"></image></view>
<view class="logo_text">商家端</view>
<view class="logo_input">
<view class="logo_input_list">
<input type="text" value="" v-model="account" placeholder="请输入登录账号" placeholder-class="placeholder"/>
</view>
<view class="logo_input_list">
<input v-if="ispassword" type="password" value="" v-model="password" placeholder="请输入登录密码" placeholder-class="placeholder"/>
<input v-else type="text" value="" v-model="password" placeholder="请输入登录密码" placeholder-class="placeholder"/>
<image @click="password=''" v-if="password" src="../../static/images/close.png" mode="widthFix" class="close"></image>
<image @click="ispassword=false" v-if="ispassword" src="../../static/images/Invisible.png" mode="widthFix" class="show_icon"></image>
<image @click="ispassword=true" v-if="!ispassword" src="../../static/images/iVisual.png" mode="widthFix" class="hide_icon"></image>
</view>
<view class="submit_btn" @click="submit">登录</view>
</view>
</view>
</template>
<script>
import api from '@/static/util/api.js'
import {post,get} from '@/static/util/fun.js'
export default {
data() {
return {
account:'',
password:'',
ispassword:true,
}
},
onLoad() {
},
methods: {
submit(){
let that=this
if(that.account==''){
uni.showToast({
title:'请输入登录账号',
icon:'none'
})
}else if(that.password==''){
uni.showToast({
title:'请输入登录密码',
icon:'none'
})
}else{
post(api.login,{
phone:that.account,
password:that.password,
}).then(res=>{
if(res.code==200){
uni.setStorageSync('userdata',res.data);
}else{
uni.showToast({
title:res.msg,
icon:'none'
})
}
})
}
}
// 登录end
}
}
</script>
<style lang="scss">
.login{
width: 100%;
height: 100%;
padding-top: 88rpx;
.login_head{
width: 100%;
height: 88rpx;
text-align: center;
line-height: 88rpx;
border-bottom: 1px solid #F4F5F8;
font-weight: bold;
font-size: 32rpx;
color: #000;
margin-bottom: 70rpx;
}
.login_img{
width: 100%;
image{
width: 196rpx;
height: 196rpx;
display: block;
margin: auto;
}
}
.logo_text{
width: 100%;
text-align: center;
margin-top: 22rpx;
font-size: 30rpx;
color: #565656;
font-weight: 500;
}
.logo_input{
width: 78%;
margin-left: 11%;
margin-top: 76rpx;
.logo_input_list{
width: 100%;
height: 124rpx;
border-bottom: 1px solid #9C9B9E;
color: #030303;
font-size: 34rpx;
font-weight: 800;
position: relative;
.placeholder{
color: #9C9B9E;
font-weight: 500;
}
input{
width:74%;
background-color: transparent;
border: none;
outline: none;
height:104rpx;
line-height: 104rpx;
position: absolute;
left: 0;
bottom: 0;
}
.close{
width: 40rpx;
height: 40rpx;
position: absolute;
bottom: 32rpx;
right: 64rpx;
}
.show_icon{
position: absolute;
right: 0;
bottom: 32rpx;
width: 40rpx;
height: 40rpx;
}
.hide_icon{
position: absolute;
right: 0;
bottom: 32rpx;
width: 40rpx;
height: 40rpx;
}
}
.submit_btn{
width: 100%;
height: 96rpx;
margin-top: 60rpx;
background-image: url(../../static/images/btn_bg.png);
background-repeat: no-repeat;
background-size: 100% 100%;
font-weight: 500;
color: #FFFFFF;
font-size: 34rpx;
text-align: center;
line-height: 96rpx;
}
}
}
</style>
差异被折叠。
......@@ -9,13 +9,9 @@ const DOMAIN='https://faces.diaosaas.com/garden/'//正式
//const HOST = '/api' + 'api/';
const HOST = DOMAIN + 'api/';
erp.login = HOST + 'wechat/login' //登录
erp.getOpenId = HOST + 'wechat/getOpenId' //微信授权获取openId
erp.number = HOST + 'user/number' //个人信息比赛次数
erp.addMatch = HOST + 'user/addMatch' //比赛提交数据
erp.getLearnAndMatch = HOST + 'subject/getLearnAndMatch' //获取题目
erp.rand = HOST + 'subject/rand' //获取排行榜
erp.myRand = HOST + 'user/rand' //获取个人排名
erp.sign = HOST + 'sign/list' //获取签名时间戳
erp.login = HOST + 'merchant/login' //登录
erp.reSetPassword = HOST + 'merchant/reSetPassword' //修改密码
erp.getIncomeDetail = HOST + 'merchant/getIncomeDetail' //获取收入明细
erp.getIncomeStatistics = HOST + 'merchant/getIncomeStatistics' //获取收入统计
export default erp;
function showPosition(position){
console.log("Latitude: " + position.coords.latitude +"<br />Longitude: " + position.coords.longitude);
localStorage.setItem('position_lat',position.coords.latitude);
localStorage.setItem('position_long',position.coords.longitude);
var latlon = position.coords.latitude +','+position.coords.longitude;
//baidu
var urlBaidu = "http://api.map.baidu.com/geocoder/v2/?ak=19b2aeEBWc3g254sRTESzrbAG4ObB92l&callback=renderReverse&location="+latlon+"&output=json&pois=0";
var urlGoogle = 'http://maps.google.cn/maps/api/geocode/json?latlng='+latlon+'&language=CN';
_self.$http.jsonp(urlBaidu).then(function(res){
var res = JSON.parse(res.bodyText);
var locIso = res.result.addressComponent.country_code_iso;
if(res.result.addressComponent.country !='China'){
_self.$dialog.confirm({
message: '根据定位,您所在的区域尚未开放服务,是否手动选择区域'
}).then(function(){
localStorage.setItem('position_loc',res.result.addressComponent.country);
_self.$router.push('location');
}).catch(function(){
});
}else{
localStorage.setItem('position_loc',_self.Kit.getCountryMcc(locIso));
_self.$router.push('home');
}
},function(res){
console.log(res);
})
}
function showError(error) {
localStorage.removeItem('position_loc');
switch (error.code) {
case error.PERMISSION_DENIED:
// 用于本地测试
_self.$dialog.alert({
message: '您已拒绝请求地理位置信息'
}).then(function(){
_self.$router.push('location');
});
break;
case error.POSITION_UNAVAILABLE:
_self.$dialog.alert({
message: '位置信息不可用,请手动选择'
}).then(function(){
_self.$router.push('location');
});
break;
case error.TIMEOUT:
_self.$dialog.alert({
message: '请求获取用户位置超时,请手动选择'
}).then(function(){
_self.$router.push('location');
});
break;
case error.UNKNOWN_ERROR:
_self.$dialog.alert({
message: '定位系统失效,请手动选择'
}).then(function(){
_self.$router.push('location');
});
break;
}
}
module.exports = {
// 定位
getLocation(){
console.log(navigator)
if (navigator.geolocation){
navigator.geolocation.getCurrentPosition(showPosition,showError);
}
else{
window.console("Geolocation is not supported by this browser.");
_self.$dialog.alert({
message: '您的设备不支持定位功能,请手动选择'
}).then(function(){
_self.$router.push('location');
});
}
}
}
\ No newline at end of file
<!DOCTYPE html><html lang=zh-CN><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><title>garden_merchant</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.3e73f18a.css></head><body><noscript><strong>Please enable JavaScript to continue.</strong></noscript><div id=app></div><script src=./static/js/chunk-vendors.69673c75.js></script><script src=./static/js/index.df9949c5.js></script></body></html>
\ No newline at end of file
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["pages-index-index"],{"06e4":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var i={data:function(){return{title:"Hello"}},onLoad:function(){},methods:{}};e.default=i},"07e5":function(t,e,n){"use strict";n.r(e);var i=n("06e4"),a=n.n(i);for(var o in i)"default"!==o&&function(t){n.d(e,t,(function(){return i[t]}))}(o);e["default"]=a.a},"0a27":function(t,e,n){var i=n("24fb");e=i(!1),e.push([t.i,".content[data-v-55d28df0]{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center}.logo[data-v-55d28df0]{height:%?200?%;width:%?200?%;margin-top:%?200?%;margin-left:auto;margin-right:auto;margin-bottom:%?50?%}.text-area[data-v-55d28df0]{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center}.title[data-v-55d28df0]{font-size:%?36?%;color:#8f8f94}",""]),t.exports=e},3612:function(t,e,n){"use strict";var i=n("f430"),a=n.n(i);a.a},"61f2":function(t,e,n){"use strict";var i;n.d(e,"b",(function(){return a})),n.d(e,"c",(function(){return o})),n.d(e,"a",(function(){return i}));var a=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("v-uni-view",{staticClass:"content"},[n("v-uni-image",{staticClass:"logo",attrs:{src:"/static/logo.png"}}),n("v-uni-view",{staticClass:"text-area"},[n("v-uni-text",{staticClass:"title"},[t._v(t._s(t.title))])],1)],1)},o=[]},a123:function(t,e,n){"use strict";n.r(e);var i=n("61f2"),a=n("07e5");for(var o in a)"default"!==o&&function(t){n.d(e,t,(function(){return a[t]}))}(o);n("3612");var r,c=n("f0c5"),f=Object(c["a"])(a["default"],i["b"],i["c"],!1,null,"55d28df0",null,!1,i["a"],r);e["default"]=f.exports},f430:function(t,e,n){var i=n("0a27");"string"===typeof i&&(i=[[t.i,i,""]]),i.locals&&(t.exports=i.locals);var a=n("4f06").default;a("382d0f47",i,!0,{sourceMap:!1,shadowMode:!1})}}]);
\ No newline at end of file
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["pages-login-login"],{"10db":function(t,n,i){"use strict";var o=i("4ea4");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var e=o(i("69cf")),a=i("eda4"),s={data:function(){return{account:"",password:"",ispassword:!0}},onLoad:function(){},methods:{submit:function(){var t=this;""==t.account?uni.showToast({title:"请输入登录账号",icon:"none"}):""==t.password?uni.showToast({title:"请输入登录密码",icon:"none"}):(0,a.post)(e.default.login,{phone:t.account,password:t.password}).then((function(t){200==t.code?uni.setStorageSync("userdata",t.data):uni.showToast({title:t.msg,icon:"none"})}))}}};n.default=s},"13cf":function(t,n){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAABk0lEQVQ4T62UP0vEQBDF3xznn8pvIBYq+A1EKzvttMkupFC4XhQrUewEK/8cCFZ6aBHI7jV22ll52FoJauU3SKNCuJENm7gXE+/EpJ23P+a9mQyh4o/KeGEYLgLwiWgewLjVvTHzPYBASnlb9PYHMAiCmXq9fgFgrk/znTiOG77vP7m6HqDWeoGZrwGMDZhERETLnufdpfoMaDt7+AMsZURxHM+mnWZApZTJpp/NssY7QgiTNRKgGQAR3bhqZlYAXoloO9WZOjO3iCgCsJHTL5lBJUCt9SUzr+YEB1LKHa31JjMfWeipEGI9DMMGEZ3n9FdSyrUEqJR6BjCV88NEtOV53omFThpYu91e6Xa7IYDhnP5FCDGdAj8AjBQElEFN7ReYKX8KIUb7AY0wsWmdmNyO3UydJnqARZYzmO1sQgjRzGXqmvq2XDKUlpSy4dgcSjNVSu0C2C8dStHaAGgy8yMRnTkDYAB7AN4BHJaujc2nusU2wMp/Pbvg1R2HNI9Kz5cbshlUrVbzmfl/B3bAO1gq+wJ7TfAVaeML5QAAAABJRU5ErkJggg=="},"1de5":function(t,n,i){"use strict";t.exports=function(t,n){return n||(n={}),t=t&&t.__esModule?t.default:t,"string"!==typeof t?t:(/^['"].*['"]$/.test(t)&&(t=t.slice(1,-1)),n.hash&&(t+=n.hash),/["'() \t\n]/.test(t)||n.needQuotes?'"'.concat(t.replace(/"/g,'\\"').replace(/\n/g,"\\n"),'"'):t)}},"1eec":function(t,n){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAABeElEQVQ4T+3Tr0tDURQH8PN9m8JY2bAYRMRk0OY/ICJGDb4Djw3WXNElwxBRBBGDSQ0ujY3BY/cZNIrBf0AQwSBoEDFYxFdkwc2vPJlDJ/5eUPC2++tz7z3nXEiLG1rsyT/484j+kRh6njdNMqqqK995tDEmC+DWtu31xycbY5YAzJLMqOrGV1BjzBSANZLLqjr3BIZIbgEYI7ni+/5COp2+ew/O5XJtsVhsEUCW5A6ACVWtNZISLIjH48HtJkXkRERWK5XKdiqVun4OFwqFjkgkMi4iMyLSRzLv+3766QINkCQ8z9usgxci0k3yHsC5iFzV0U6SPQAsETkTkd7g8FqtlnQc5zBY0wCNMQMAjkRkybbtedd1B8Ph8AjJfhEZrYO7AI6r1eqe4zgHrusOW5aVB3CqqsMvwKBTKpW6ksnkZXPsjDH7wZiqDjXPFYvFaCgUak8kEjevwLeS8B7YvOdTP6VcLmcsy2JQZx+V1KfAj5Dn878ffADtwY0V691XKAAAAABJRU5ErkJggg=="},"2ded":function(t,n,i){var o=i("24fb"),e=i("1de5"),a=i("55e8");n=o(!1);var s=e(a);n.push([t.i,'@charset "UTF-8";\r\n/**\r\n * 这里是uni-app内置的常用样式变量\r\n *\r\n * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量\r\n * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App\r\n *\r\n */\r\n/**\r\n * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能\r\n *\r\n * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件\r\n */\r\n/* 颜色变量 */\r\n/* 行为相关颜色 */\r\n/* 文字基本颜色 */\r\n/* 背景颜色 */\r\n/* 边框颜色 */\r\n/* 尺寸变量 */\r\n/* 文字尺寸 */\r\n/* 图片尺寸 */\r\n/* Border Radius */\r\n/* 水平间距 */\r\n/* 垂直间距 */\r\n/* 透明度 */\r\n/* 文章场景相关 */.login[data-v-a099db36]{width:100%;height:100%;padding-top:%?88?%}.login .login_head[data-v-a099db36]{width:100%;height:%?88?%;text-align:center;line-height:%?88?%;border-bottom:1px solid #f4f5f8;font-weight:700;font-size:%?32?%;color:#000;margin-bottom:%?70?%}.login .login_img[data-v-a099db36]{width:100%}.login .login_img uni-image[data-v-a099db36]{width:%?196?%;height:%?196?%;display:block;margin:auto}.login .logo_text[data-v-a099db36]{width:100%;text-align:center;margin-top:%?22?%;font-size:%?30?%;color:#565656;font-weight:500}.login .logo_input[data-v-a099db36]{width:78%;margin-left:11%;margin-top:%?76?%}.login .logo_input .logo_input_list[data-v-a099db36]{width:100%;height:%?124?%;border-bottom:1px solid #9c9b9e;color:#030303;font-size:%?34?%;font-weight:800;position:relative}.login .logo_input .logo_input_list .placeholder[data-v-a099db36]{color:#9c9b9e;font-weight:500}.login .logo_input .logo_input_list uni-input[data-v-a099db36]{width:74%;background-color:initial;border:none;outline:none;height:%?104?%;line-height:%?104?%;position:absolute;left:0;bottom:0}.login .logo_input .logo_input_list .close[data-v-a099db36]{width:%?40?%;height:%?40?%;position:absolute;bottom:%?32?%;right:%?64?%}.login .logo_input .logo_input_list .show_icon[data-v-a099db36]{position:absolute;right:0;bottom:%?32?%;width:%?40?%;height:%?40?%}.login .logo_input .logo_input_list .hide_icon[data-v-a099db36]{position:absolute;right:0;bottom:%?32?%;width:%?40?%;height:%?40?%}.login .logo_input .submit_btn[data-v-a099db36]{width:100%;height:%?96?%;margin-top:%?60?%;background-image:url('+s+");background-repeat:no-repeat;background-size:100% 100%;font-weight:500;color:#fff;font-size:%?34?%;text-align:center;line-height:%?96?%}",""]),t.exports=n},3600:function(t,n){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAABL0lEQVQ4T+2UvUoDQRSFzxnQp7DSNxAEfYTYhEB2d6xtxEo7g7Vop5XYWDv7A2JjHkFB8A20ylMozJHdZMMaF3chW2a6mTn3m3vvuQzR8WLHPKyA045KYpIkPQAHJHcBbEgCyQmAF0kuiqJxLl304E8PnXM7xpg7ANsNhr1774+stW9V3S+gc+6Y5A3JtZbuf3nvT621t6V+DkyS5AzAZQ3oGcDh7PwewP6CRpLOoygqYgtgmqZ9SY/lvhpgjNkaDoef+VmWZZve+4+aR+W9H1hrnwqgc65vjFkKSHIQBMEUmK84jkckL2qybCo5Dx+FYXg1L7mE5qYYY64BrLcxRdK3pJNaUyrQ7samkhXjOO6RtAD28sGe3U0kvQJ4CMNwTLJ5sNuU+p9m9dss20HgByxjdxUR+WUsAAAAAElFTkSuQmCC"},"442b":function(t,n,i){var o=i("2ded");"string"===typeof o&&(o=[[t.i,o,""]]),o.locals&&(t.exports=o.locals);var e=i("4f06").default;e("781164f8",o,!0,{sourceMap:!1,shadowMode:!1})},4670:function(t,n,i){"use strict";i.r(n);var o=i("10db"),e=i.n(o);for(var a in o)"default"!==a&&function(t){i.d(n,t,(function(){return o[t]}))}(a);n["default"]=e.a},"55e8":function(t,n,i){t.exports=i.p+"static/img/btn_bg.76fda38d.png"},"7b7c":function(t,n,i){t.exports=i.p+"static/img/logo.4583c100.png"},"98e6":function(t,n,i){"use strict";var o;i.d(n,"b",(function(){return e})),i.d(n,"c",(function(){return a})),i.d(n,"a",(function(){return o}));var e=function(){var t=this,n=t.$createElement,o=t._self._c||n;return o("v-uni-view",{staticClass:"login"},[o("v-uni-view",{staticClass:"login_head"},[t._v("登录")]),o("v-uni-view",{staticClass:"login_img"},[o("v-uni-image",{attrs:{src:i("7b7c"),mode:"widthFix"}})],1),o("v-uni-view",{staticClass:"logo_text"},[t._v("商家端")]),o("v-uni-view",{staticClass:"logo_input"},[o("v-uni-view",{staticClass:"logo_input_list"},[o("v-uni-input",{attrs:{type:"text",value:"",placeholder:"请输入登录账号","placeholder-class":"placeholder"},model:{value:t.account,callback:function(n){t.account=n},expression:"account"}})],1),o("v-uni-view",{staticClass:"logo_input_list"},[t.ispassword?o("v-uni-input",{attrs:{type:"password",value:"",placeholder:"请输入登录密码","placeholder-class":"placeholder"},model:{value:t.password,callback:function(n){t.password=n},expression:"password"}}):o("v-uni-input",{attrs:{type:"text",value:"",placeholder:"请输入登录密码","placeholder-class":"placeholder"},model:{value:t.password,callback:function(n){t.password=n},expression:"password"}}),t.password?o("v-uni-image",{staticClass:"close",attrs:{src:i("13cf"),mode:"widthFix"},on:{click:function(n){arguments[0]=n=t.$handleEvent(n),t.password=""}}}):t._e(),t.ispassword?o("v-uni-image",{staticClass:"show_icon",attrs:{src:i("1eec"),mode:"widthFix"},on:{click:function(n){arguments[0]=n=t.$handleEvent(n),t.ispassword=!1}}}):t._e(),t.ispassword?t._e():o("v-uni-image",{staticClass:"hide_icon",attrs:{src:i("3600"),mode:"widthFix"},on:{click:function(n){arguments[0]=n=t.$handleEvent(n),t.ispassword=!0}}})],1),o("v-uni-view",{staticClass:"submit_btn",on:{click:function(n){arguments[0]=n=t.$handleEvent(n),t.submit.apply(void 0,arguments)}}},[t._v("登录")])],1)],1)},a=[]},ada7:function(t,n,i){"use strict";i.r(n);var o=i("98e6"),e=i("4670");for(var a in e)"default"!==a&&function(t){i.d(n,t,(function(){return e[t]}))}(a);i("ffe8");var s,l=i("f0c5"),r=Object(l["a"])(e["default"],o["b"],o["c"],!1,null,"a099db36",null,!1,o["a"],s);n["default"]=r.exports},ffe8:function(t,n,i){"use strict";var o=i("442b"),e=i.n(o);e.a}}]);
\ No newline at end of file
const erp = erp || {};
//const DOMAIN = 'https://dev.diaosaas.com/car/';
// const DOMAIN='https://diaosaas.com/car/'
// const DOMAIN='https://dev.diaosaas.com/partyHistory/'//测试
const DOMAIN='https://faces.diaosaas.com/garden/'//正式
// const DOMAIN = 'http://192.168.1.198:9095/';
//const DOMAIN = 'http://192.168.1.163:8089/';
//const DOMAIN ='http://47.110.68.2/car/'
//const HOST = '/api' + 'api/';
const HOST = DOMAIN + 'api/';
erp.login = HOST + 'merchant/login' //登录
erp.reSetPassword = HOST + 'merchant/reSetPassword' //修改密码
erp.getIncomeDetail = HOST + 'merchant/getIncomeDetail' //获取收入明细
erp.getIncomeStatistics = HOST + 'merchant/getIncomeStatistics' //获取收入统计
export default erp;
const http = ({
url = '',
params = {},
...other
} = {}) => {
let time = Date.now()
return new Promise((resolve, reject) => {
let token = uni.getStorageSync("token");
uni.request({
url: url,
data: params,
header: {
'token': token,
'content-type': 'application/json' // 默认值
},
...other,
success: (res) => {
if (res.data.code == 500 && res.data.msg == '用户不存在') {
uni.showModal({
content: '登录已过期 请重新登录',
showCancel: false,
success(res) {
if (res.confirm) {
uni.reLaunch({
url: '/pages/login/login'
})
} else if (res.cancel) {
uni.reLaunch({
url: '/pages/login/login'
})
}
}
})
}
if (res.data.code == 402) {
uni.reLaunch({
url: '/pages/login/login'
})
}
if (res.data.code == 401 || res.data.code == 403) {
uni.showModal({
content: '登录已过期 请重新登录',
showCancel: false,
success(res) {
if (res.confirm) {
uni.reLaunch({
url: '/pages/login/login'
})
} else if (res.cancel) {
uni.reLaunch({
url: '/pages/login/login'
})
}
}
})
resolve(res.data)
}
if (res.data.code == 200) {
resolve(res.data)
} else {
resolve(res.data)
//uni.showToast({ title: '无法请求接口', icon: 'none', duration: 2000 })
reject(res)
}
},
fail: (err) => {
uni.hideLoading();
console.log(err)
}
})
})
}
module.exports = {
get(url, params = {}) {
return http({
url,
params
})
},
post(url, params = {}) {
return http({
url,
params,
header: {
"Content-Type": "application/json"
},
method: 'post'
})
},
apost(url, params = {}) {
return http({
url,
params,
header: {
"Content-Type": "application/json"
},
method: 'post'
})
},
put(url, params = {}) {
return http({
url,
params,
method: 'put'
})
},
// 这里不能使用 delete, delete为关键字段
myDelete(url, params = {}) {
return http({
url,
params,
method: 'delete'
})
},
/**
* 优惠券有效期
* startDate:起始日期
* valueTime:有效天数
*/
transferCouponValueTime(startDate, valueTime) {
var date = new Date(startDate);
var newDate = new Date(date.getFullYear(), date.getMonth(), date.getDate() + valueTime);
var year1 = date.getFullYear();
var month1 = date.getMonth() + 1;
var day1 = date.getDate();
var year2 = newDate.getFullYear();
var month2 = newDate.getMonth() + 1;
var day2 = newDate.getDate();
return year2 + "/" + month2 + "/" + day2
},
//获取时间
getDate(type) {
const date = new Date();
let year = date.getFullYear();
let month = date.getMonth() + 1;
let day = date.getDate();
if (type === 'start') {
year = year - 60;
} else if (type === 'end') {
year = year + 2;
}
month = month > 9 ? month : '0' + month;;
day = day > 9 ? day : '0' + day;
return `${year}-${month}-${day}`;
},
// 转换为'00:00:00'
getDuration(my_time) {
if (my_time <= 0) {
return '0'
} else {
var days = my_time / 1000 / 60 / 60 / 24;
var daysRound = Math.floor(days);
var hours = my_time / 1000 / 60 / 60 - (24 * daysRound);
var hoursRound = Math.floor(hours) < 10 ? '0' + Math.floor(hours) : Math.floor(hours);
var minutes = my_time / 1000 / 60 - (24 * 60 * daysRound) - (60 * hoursRound);
var minutesRound = Math.floor(minutes) < 10 ? '0' + Math.floor(minutes) : Math.floor(minutes);
var seconds = my_time / 1000 - (24 * 60 * 60 * daysRound) - (60 * 60 * hoursRound) - (60 *
minutesRound);
var secondsRound = Math.floor(seconds) < 10 ? '0' + Math.floor(seconds) : Math.floor(seconds)
// console.log('转换时间:', hoursRound + '时', minutesRound + '分', seconds + '秒');
// this.remaincutdown = hoursRound + ':' + minutesRound + ':' + seconds
var time = daysRound + '天' + hoursRound + ':' + minutesRound + ':' + secondsRound
return time
}
},
// 获取当前时间
getpresenttime() {
var date = new Date(),
year = date.getFullYear(),
month = date.getMonth() + 1,
day = date.getDate(),
hour = date.getHours() < 10 ? "0" + date.getHours() : date.getHours(),
minute = date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes(),
second = date.getSeconds() < 10 ? "0" + date.getSeconds() : date.getSeconds();
month >= 1 && month <= 9 ? (month = "0" + month) : "";
day >= 0 && day <= 9 ? (day = "0" + day) : "";
var timer = year + '/' + month + '/' + day + ' ' + hour + ':' + minute + ':' + second;
return timer;
},
//获取当前往后十年list
getyearlist() {
var date = new Date()
var year = date.getFullYear()
let yearlist = []
for (var i = 0; i < 10; i++) {
let years = year + i
yearlist.push(years)
}
return yearlist
},
// 获取前后年份
getNearbyFiveears() {
let year = new Date().getFullYear()
let arr = []
for (var i = 0; i < 5; i++) {
let year1 = year - i + 1;
let year2 = year + i;
arr.push(year1)
arr.push(year2)
}
arr.sort((a, b) => {
return a - b
})
let yearArr = arr.map((item, index) => {
let obj = {}
obj.label = item
obj.value = index + 1
return obj
})
yearArr.unshift({
label: '全部',
value: 0
})
return yearArr
},
// 获取当前时间
getYearmomthday() {
var date = new Date(),
year = date.getFullYear(),
month = date.getMonth() + 1,
day = date.getDate(),
hour = date.getHours() < 10 ? "0" + date.getHours() : date.getHours(),
minute = date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes(),
second = date.getSeconds() < 10 ? "0" + date.getSeconds() : date.getSeconds();
month >= 1 && month <= 9 ? (month = "0" + month) : "";
day >= 0 && day <= 9 ? (day = "0" + day) : "";
var timer = year + '/' + month + '/' + day;
return timer;
},
//自定义加法运算
addNum(num1, num2) {
var sq1, sq2, m;
try {
sq1 = num1.toString().split(".")[1].length;
} catch (e) {
sq1 = 0;
}
try {
sq2 = num2.toString().split(".")[1].length;
} catch (e) {
sq2 = 0;
}
m = Math.pow(10, Math.max(sq1, sq2));
return (num1 * m + num2 * m) / m;
},
accMul(arg1, arg2) {
var m = 0,
s1 = arg1.toString(),
s2 = arg2.toString();
try {
m += s1.split(".")[1].length
} catch (e) {}
try {
m += s2.split(".")[1].length
} catch (e) {}
return Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m)
},
}
function showPosition(position){
console.log("Latitude: " + position.coords.latitude +"<br />Longitude: " + position.coords.longitude);
localStorage.setItem('position_lat',position.coords.latitude);
localStorage.setItem('position_long',position.coords.longitude);
var latlon = position.coords.latitude +','+position.coords.longitude;
//baidu
var urlBaidu = "http://api.map.baidu.com/geocoder/v2/?ak=19b2aeEBWc3g254sRTESzrbAG4ObB92l&callback=renderReverse&location="+latlon+"&output=json&pois=0";
var urlGoogle = 'http://maps.google.cn/maps/api/geocode/json?latlng='+latlon+'&language=CN';
_self.$http.jsonp(urlBaidu).then(function(res){
var res = JSON.parse(res.bodyText);
var locIso = res.result.addressComponent.country_code_iso;
if(res.result.addressComponent.country !='China'){
_self.$dialog.confirm({
message: '根据定位,您所在的区域尚未开放服务,是否手动选择区域'
}).then(function(){
localStorage.setItem('position_loc',res.result.addressComponent.country);
_self.$router.push('location');
}).catch(function(){
});
}else{
localStorage.setItem('position_loc',_self.Kit.getCountryMcc(locIso));
_self.$router.push('home');
}
},function(res){
console.log(res);
})
}
function showError(error) {
localStorage.removeItem('position_loc');
switch (error.code) {
case error.PERMISSION_DENIED:
// 用于本地测试
_self.$dialog.alert({
message: '您已拒绝请求地理位置信息'
}).then(function(){
_self.$router.push('location');
});
break;
case error.POSITION_UNAVAILABLE:
_self.$dialog.alert({
message: '位置信息不可用,请手动选择'
}).then(function(){
_self.$router.push('location');
});
break;
case error.TIMEOUT:
_self.$dialog.alert({
message: '请求获取用户位置超时,请手动选择'
}).then(function(){
_self.$router.push('location');
});
break;
case error.UNKNOWN_ERROR:
_self.$dialog.alert({
message: '定位系统失效,请手动选择'
}).then(function(){
_self.$router.push('location');
});
break;
}
}
module.exports = {
// 定位
getLocation(){
console.log(navigator)
if (navigator.geolocation){
navigator.geolocation.getCurrentPosition(showPosition,showError);
}
else{
window.console("Geolocation is not supported by this browser.");
_self.$dialog.alert({
message: '您的设备不支持定位功能,请手动选择'
}).then(function(){
_self.$router.push('location');
});
}
}
}
\ No newline at end of file
async function compressImage(src, platform) {
const imageInfo = await getImageInfo(src);
const orientation = imageInfo.orientation;
let rotate = 0;
let quality = 80;
if (platform === 'ios') {
rotate = 0;
quality = 25;
} else {
switch (orientation) {
case 'up': //exif:1 不旋转
rotate = 0;
break;
case 'down': //exif:3 旋转180度
rotate = 180;
break;
case 'right': //exif:6 旋转90度
rotate = 90;
break;
case 'left': //exif:8 旋转270度
rotate = 270;
break;
default:
rotate = 0;
break;
}
}
return new Promise(function(resolve, reject) {
plus.zip.compressImage({
src: src,
dst: "_doc/uniapp_temp" + '/compressed/' + Math.round(new Date()) + '.jpg',
format: 'jpg',
quality: quality,
width: 'auto',
height: 'auto',
rotate: rotate,
},
function(event) {
let tempPath = event.target;
resolve(tempPath)
},
function(error) {
reject(error);
});
})
}
function getImageInfo(path) {
return new Promise(function(resolve, reject) {
// #ifdef APP-PLUS
plus.io.getImageInfo({
src: path,
success: function(image) {
// console.log(image.width);
// console.log(image.height);
// console.log('orientation=' + image.orientation);
// console.log('path=' + image.path);
resolve(image)
},
fail: function(err) {
console.log("getImageInfoErr: " + JSON.stringify(err));
reject(err)
}
});
// #endif
// #ifdef H5 || MP-WEIXIN
uni.getImageInfo({
src: path,
success: function(image) {
// console.log(image.width);
// console.log(image.height);
// console.log('orientation=' + image.orientation);
// console.log('path=' + image.path);
resolve(image)
},
fail: function(err) {
console.log("getImageInfoErr: " + JSON.stringify(err));
reject(err)
}
});
// #endif
});
}
export default compressImage
\ No newline at end of file
const get = (url, data, callBack) => {
uni.request({
url: url,
data: data,
method: 'GET',
header: {
'content-type': 'application/json;charset=utf-8' // 默认值
},
complete: function(res) {
callBack(res)
// console.log(res)
}
})
}
// 防抖
const antiShake = function antiSahake(fn) {
let timeId = null
console.log('防抖')
return function(fn) {
debugger
if (timeId) {
console.log('点击多次')
clearTimeout(timeId)
}
timeId = setTimeout(fn, 10000)
}
}
module.exports = {
get: get,
antiShake: antiShake,
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论