Merge branch 'master' of http://139.186.142.91:10010/r/productDev/zbomyoujia
| | |
| | | # 开发环境配置 |
| | | NODE_ENV = 'development' |
| | | VUE_APP_BASE_API = 'http://localhost:10028' |
| | | VUE_APP_BASE_API = 'http://192.168.0.135:10028' |
| | |
| | | # 生产环境配置 |
| | | NODE_ENV = 'production' |
| | | |
| | | VUE_APP_BASE_API = 'https://dmtest.ahapp.net/admin_interface' |
| | |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table-column type="selection" width="55"></el-table-column> |
| | | <el-table-column prop="createDate" label="创建时间" min-width="120px"></el-table-column> |
| | | <el-table-column prop="name" label="姓名" min-width="100px"></el-table-column> |
| | | <el-table-column prop="phone" label="电话" min-width="100px"></el-table-column> |
| | | <el-table-column prop="createDate" label="创建时间" fixed min-width="140px"></el-table-column> |
| | | <el-table-column prop="name" label="姓名" fixed min-width="100px"></el-table-column> |
| | | <el-table-column prop="phone" label="电话" fixed min-width="100px"></el-table-column> |
| | | <el-table-column prop="proName" label="省份" min-width="180px"> |
| | | <template slot-scope="{row}"> |
| | | {{row.proName||''}}{{row.cityName||''}}{{row.areaName||''}} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="addr" label="地址" min-width="100px"></el-table-column> |
| | | <el-table-column prop="ip" label="IP地址" min-width="100px"></el-table-column> |
| | | <el-table-column prop="proName" label="省份" min-width="100px"></el-table-column> |
| | | <el-table-column prop="cityName" label="城市" min-width="100px"></el-table-column> |
| | | <el-table-column prop="areaName" label="区域" min-width="100px"></el-table-column> |
| | | <el-table-column prop="sysVersion" label="系统版本" min-width="100px"></el-table-column> |
| | | <el-table-column prop="browser" label="浏览器" min-width="100px"></el-table-column> |
| | | <el-table-column prop="terminal" label="终端类型" min-width="100px"></el-table-column> |
| | | <el-table-column prop="openid" label="微信openid" min-width="100px"></el-table-column> |
| | | <el-table-column prop="openid" label="微信openid" min-width="240px"></el-table-column> |
| | | <el-table-column prop="info" label="备注" min-width="100px"></el-table-column> |
| | | <!-- <el-table-column |
| | | v-if="containPermissions(['business:customer:update', 'business:customer:delete'])" |
| | |
| | | return ztUserGetTokenResponse; |
| | | } |
| | | |
| | | |
| | | |
| | | @Override |
| | | public Member getMemberInfo(Long memberId){ |
| | | Member member = memberMapper.selectById(memberId); |
| | |
| | | // 获取字典值 |
| | | export const getDictData = (data) => { |
| | | return request({ |
| | | url: '/public/getDictData', |
| | | url: '/public/getDictData?code='+data.code+'&label='+data.label, |
| | | data, |
| | | loading: '0' |
| | | }) |
| | |
| | | data |
| | | }) |
| | | } |
| | | |
| | | export const getUserCard = (data) => { |
| | | return request({ |
| | | url: '/web/personnel/getUserCard', |
| | | method: "POST", |
| | | data |
| | | }) |
| | | } |
| | | export const logout = (data) => { |
| | | return request({ |
| | | url: '/web/personnel/logOff', |
| | | method: "POST", |
| | | data |
| | | }) |
| | | } |
| | | // 志说装修 内容 |
| | | export const pageZSZXContentList = (data) => { |
| | | return request({ |
| | |
| | | data |
| | | }) |
| | | } |
| | | export const updateShop = (data) => { |
| | | return request({ |
| | | url: '/web/personnel/updShop', |
| | | method: 'POST', |
| | | data |
| | | }) |
| | | } |
| | | // 获取门店详情 |
| | | export const getShopDetail = (data) => { |
| | | return request({ |
| | | url: '/web/customer/shopDetail', |
| | | url: '/web/personnel/shopDetail?shopId='+data, |
| | | data |
| | | }) |
| | | } |
| | |
| | | url: '/web/customer/logOff', |
| | | data |
| | | }) |
| | | } |
| | | } |
| | |
| | | const WindowInfo = wx.getWindowInfo() |
| | | if (WindowInfo.safeArea.top > 20) { |
| | | this.globalData.bottomLift = WindowInfo.screenHeight - WindowInfo.safeArea.bottom; |
| | | } |
| | | // |
| | | return |
| | | const res = wx.getStorageSync('member') |
| | | } |
| | | const res = wx.getStorageSync('member') |
| | | if (res) { |
| | | this.globalData.userInfo = res |
| | | console.error("res",res) |
| | | } else { |
| | | // 登录 |
| | | wx.login({ |
| | |
| | | code: res.code |
| | | }).then(res => { |
| | | console.log(res) |
| | | if (res && res.data.member) { |
| | | wx.setStorageSync('member', res.data.member) |
| | | wx.setStorageSync('openid', res.data.member.openid) |
| | | if (res && res.data.users) { |
| | | wx.setStorageSync('member', res.data.users) |
| | | wx.setStorageSync('openid', res.data.users.openid) |
| | | wx.setStorageSync('sessionKey', res.data.sessionKey) |
| | | wx.setStorageSync('token', res.data.token) |
| | | } else { |
| | | wx.navigateTo({ |
| | | url: '/pages/login/index', |
| | | }) |
| | | console.log('登录失败!') |
| | | } |
| | | }) |
| | | } else { |
| | | wx.navigateTo({ |
| | | url: '/pages/login/index', |
| | | }) |
| | | console.log('登录失败!' + res) |
| | | } |
| | | }, |
| | |
| | | { |
| | | "requires": true, |
| | | "name": "wechat_staff", |
| | | "version": "1.0.0", |
| | | "lockfileVersion": 1, |
| | | "requires": true, |
| | | "dependencies": { |
| | | "@vant/weapp": { |
| | | "version": "1.11.6", |
| | | "resolved": "https://registry.npmjs.org/@vant/weapp/-/weapp-1.11.6.tgz", |
| | | "resolved": "https://registry.npmmirror.com/@vant/weapp/-/weapp-1.11.6.tgz", |
| | | "integrity": "sha512-a3heReWYT2gNdsyj6x1hBwsM8V8NrjcPAmle86NH2CD2V/i/h0le75piW6KntSfOPCwekVWMBKhysNrBpJeKdw==" |
| | | }, |
| | | "jsbn": { |
| | | "version": "1.1.0", |
| | | "resolved": "https://registry.npmmirror.com/jsbn/-/jsbn-1.1.0.tgz", |
| | | "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==" |
| | | }, |
| | | "miniprogram-sm-crypto": { |
| | | "version": "0.3.13", |
| | | "resolved": "https://registry.npmmirror.com/miniprogram-sm-crypto/-/miniprogram-sm-crypto-0.3.13.tgz", |
| | | "integrity": "sha512-H7qwbCEmIXZzekCSgEWeHh1mb4cnz0E42YH3U5xqpOaJBB2Sj9ySq0hTGv0f+Jwo5SknABR6fw+EtjnMyJ/O/Q==", |
| | | "requires": { |
| | | "jsbn": "^1.1.0" |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | { |
| | | "name": "wechat_staff", |
| | | "version": "1.0.0", |
| | | "description": "", |
| | | "main": ".eslintrc.js", |
| | | "dependencies": {}, |
| | | "dependencies": { |
| | | "@vant/weapp": "^1.11.6", |
| | | "miniprogram-sm-crypto": "^0.3.13" |
| | | }, |
| | | "devDependencies": {}, |
| | | "scripts": { |
| | | "test": "echo \"Error: no test specified\" && exit 1" |
| | | }, |
| | | "keywords": [], |
| | | "author": "", |
| | | "license": "ISC" |
| | | "license": "ISC", |
| | | "description": "" |
| | | } |
| | |
| | | primary: '', |
| | | status: '0', // 标识 |
| | | countDown: 0, |
| | | phone: '13663966099', |
| | | code: '', |
| | | |
| | | phone: '', |
| | | code: '', |
| | | showModal: false, |
| | | activeHtml: '', |
| | | }, |
| | |
| | | border-radius: 50%; |
| | | margin: 130rpx auto 30rpx; |
| | | } |
| | | |
| | | .home_title { |
| | | font-weight: 500; |
| | | font-size: 40rpx; |
| | |
| | | // pages/sets/index.js |
| | | |
| | | import { logout } from '../../api/index' |
| | | Page({ |
| | | |
| | | /** |
| | |
| | | onClose() { |
| | | this.setData({show: false}) |
| | | }, |
| | | changeDeal(){ |
| | | changeDeal(e){ |
| | | wx.navigateTo({ |
| | | url: '/pages/sets/protocol', |
| | | url: '/pages/sets/protocol?type='+e.currentTarget.dataset.index, |
| | | }) |
| | | }, |
| | | |
| | | logout(){ |
| | | logout({ |
| | | }).then(res => { |
| | | wx.setStorageSync('member', null) |
| | | wx.setStorageSync('token', '') |
| | | wx.navigateTo({ |
| | | url: '/pages/login/index', |
| | | }) |
| | | }) |
| | | }, |
| | | /** |
| | | * 生命周期函数--监听页面初次渲染完成 |
| | | */ |
| | |
| | | <view class="container"> |
| | | <view class="list"> |
| | | <view class="line" bindtap="changeDeal"> |
| | | <view class="line" data-index="0" bindtap="changeDeal"> |
| | | <view class="name">《ZBOM用户服务协议》</view> |
| | | <image class="icon" src="../../static/icon/home_ar@2x.png" mode="widthFix"></image> |
| | | </view> |
| | | <view class="line" bindtap="changeDeal"> |
| | | <view class="line" data-index="1" bindtap="changeDeal"> |
| | | <view class="name">《ZBOM用户隐私协议》</view> |
| | | <image class="icon" src="../../static/icon/home_ar@2x.png" mode="widthFix"></image> |
| | | </view> |
| | |
| | | <view class="title">注销提醒</view> |
| | | <view class="text">如您不再使用此账号,可以将其注销。账号成功注销后,其下所有数据将会被删除并将无法恢复,请谨慎操作</view> |
| | | <view class="btns"> |
| | | <view class="btn">确认注销</view> |
| | | <view class="btn" bind:tap="logout">确认注销</view> |
| | | <view class="btn cancel" bindtap="onClose">还是算了</view> |
| | | </view> |
| | | </view> |
| | |
| | | // pages/sets/protocol.js |
| | | import { getDictData } from '../../api/index' |
| | | Page({ |
| | | |
| | | /** |
| | | * 页面的初始数据 |
| | | */ |
| | | data: { |
| | | |
| | | content:'' |
| | | }, |
| | | |
| | | /** |
| | | * 生命周期函数--监听页面加载 |
| | | */ |
| | | onLoad(options) { |
| | | |
| | | console.log(options.type) |
| | | if(options.type == 1){ |
| | | wx.setNavigationBarTitle({title:'隐私协议'}) |
| | | }else{ |
| | | wx.setNavigationBarTitle({title:'用户协议'}) |
| | | } |
| | | this.loadDict(options.type); |
| | | }, |
| | | |
| | | loadDict(type){ |
| | | //type ==0 用户协议,否则隐私协议 |
| | | const label = type == 1?'PRIVACY_AGREEMENT':'SERVER_AGREEMENT' |
| | | getDictData({ |
| | | code: 'ZBOM_CUSTOMIZED', |
| | | label: label |
| | | }).then(res => { |
| | | this.setData({ content: res.data.code }) |
| | | }) |
| | | }, |
| | | /** |
| | | * 生命周期函数--监听页面初次渲染完成 |
| | | */ |
| | |
| | | <!--pages/sets/protocol.wxml--> |
| | | <text>pages/sets/protocol.wxml</text> |
| | | <rich-text nodes="{{content}}"> </rich-text> |
| | |
| | | import { getShopDetail } from '../../api/index' |
| | | // pages/store/index.js |
| | | Page({ |
| | | |
| | |
| | | * 页面的初始数据 |
| | | */ |
| | | data: { |
| | | |
| | | shopId: null, |
| | | shopInfo:{} |
| | | }, |
| | | |
| | | /** |
| | | * 生命周期函数--监听页面加载 |
| | | */ |
| | | onLoad(options) { |
| | | |
| | | onLoad(options) { |
| | | console.log(options.shopId) |
| | | this.setData({shopId:options.shopId}) |
| | | }, |
| | | getShopInfo(id){ |
| | | |
| | | getShopDetail(id).then(res => { |
| | | if(res.data && res.data.seqNameList){ |
| | | const t = ''; |
| | | const tindex =0; |
| | | res.data.seqNameList.array.forEach(element => { |
| | | if(tindex>0){ |
| | | t =t+"、" |
| | | } |
| | | t = t+ element; |
| | | tindex++; |
| | | }); |
| | | res.data.seqNameInfo = t; |
| | | } |
| | | this.setData({ |
| | | shopInfo: res.data |
| | | }) |
| | | }) |
| | | }, |
| | | handleEdit(e) { |
| | | const {shopInfo} = this.data |
| | | const objString = JSON.stringify(shopInfo); |
| | | console.log(objString) |
| | | wx.navigateTo({ |
| | | url: '/pages/store/info', |
| | | url: '/pages/store/info?data='+objString , |
| | | }) |
| | | }, |
| | | /** |
| | |
| | | /** |
| | | * 生命周期函数--监听页面显示 |
| | | */ |
| | | onShow() { |
| | | |
| | | onShow() { |
| | | this.getShopInfo(this.data.shopId) |
| | | }, |
| | | |
| | | /** |
| | |
| | | <view class="container"> |
| | | <view class="list"> |
| | | <view class="item"> |
| | | <view class="name">合肥红星新品馆</view> |
| | | <view class="name">{{shopInfo.name}}</view> |
| | | <view class="line"> |
| | | <view class="label">联系人</view> |
| | | <view class="val">张的心</view> |
| | | <view class="val">{{shopInfo.linkerName}}</view> |
| | | </view> |
| | | <view class="line"> |
| | | <view class="label">联系电话</view> |
| | | <view class="val">188</view> |
| | | <view class="val">{{shopInfo.linkPhone}}</view> |
| | | </view> |
| | | <view class="line"> |
| | | <view class="label">经营范围</view> |
| | | <view class="val">全屋定制、整体厨房、木门墙板、卫阳定制</view> |
| | | <view class="val">{{shopInfo.seqNameInfo||''}}</view> |
| | | </view> |
| | | <view class="line"> |
| | | <view class="label">门店地址</view> |
| | | <view class="val">安徽省合肥市金寨路琥珀五环国际A座</view> |
| | | <view class="val">{{shopInfo.address}}</view> |
| | | </view> |
| | | <view bindtap="handleEdit" class="edit">编辑</view> |
| | | </view> |
| | |
| | | import { updateShop,getMemberInfo } from "../../api/index"; |
| | | |
| | | // pages/store/info.js |
| | | Page({ |
| | | |
| | |
| | | * 页面的初始数据 |
| | | */ |
| | | data: { |
| | | name: '' |
| | | linkerName:'', |
| | | linkPhone:'', |
| | | address:'', |
| | | latitude:'', |
| | | longitude:'', |
| | | shopInfo:{} |
| | | }, |
| | | |
| | | /** |
| | | * 生命周期函数--监听页面加载 |
| | | */ |
| | | onLoad(options) { |
| | | |
| | | const obj =JSON.parse(options.data); |
| | | this.setData({shopInfo: obj , |
| | | linkPhone:obj.linkPhone, |
| | | linkerName:obj.linkerName, |
| | | address:obj.address, |
| | | latitude:obj.latitude, |
| | | longitude:obj.longitude }) |
| | | }, |
| | | getLocation() { |
| | | console.log('惦记了'); |
| | | getLocation() { |
| | | const that = this; |
| | | wx.chooseLocation({ |
| | | success: (result) => { |
| | | console.log('result', result); |
| | | const {shopInfo,latitude,longitude,address} = that.data; |
| | | shopInfo.latitude = result.latitude |
| | | shopInfo.longitude = result.longitude |
| | | shopInfo.address = result.address ||shopInfo.address |
| | | that.setData({shopInfo: shopInfo , |
| | | address:shopInfo.address, |
| | | latitude:shopInfo.latitude, |
| | | longitude:shopInfo.longitude }) |
| | | }, |
| | | }) |
| | | }, |
| | | saveInfo(){ |
| | | const {shopInfo} =this.data; |
| | | console.log(shopInfo) |
| | | shopInfo.address = this.data.address |
| | | shopInfo.linkerName = this.data.linkerName |
| | | shopInfo.linkPhone = this.data.linkPhone |
| | | shopInfo.latitude = this.data.latitude |
| | | shopInfo.longitude = this.data.longitude |
| | | updateShop(shopInfo).then(res => { |
| | | wx.showToast({ |
| | | title: '门店信息修改成功', |
| | | icon: 'none' |
| | | }) |
| | | getMemberInfo().then(res => { |
| | | this.setData({ |
| | | userInfo: res.data |
| | | }) |
| | | wx.setStorageSync('member',res.data) |
| | | wx.navigateBack({ |
| | | delta: 1 |
| | | }); |
| | | }) |
| | | |
| | | }) |
| | | }, |
| | | /** |
| | | * 生命周期函数--监听页面初次渲染完成 |
| | | */ |
| | |
| | | <view class="line"> |
| | | <view class="la">门店联系人</view> |
| | | <view class="val"> |
| | | <view class="input">王德发</view> |
| | | <image class="icon" src="../../static/icon/home_ar@2x.png" mode="widthFix"></image> |
| | | <van-field class="input" model:value="{{ linkerName }}" clearable border="{{ false }}" /> |
| | | </view> |
| | | </view> |
| | | <view class="line"> |
| | | <view class="la">门店电话</view> |
| | | <view class="val"> |
| | | <van-field class="input" model:value="{{ name }}" clearable border="{{ false }}" /> |
| | | <van-field class="input" model:value="{{ linkPhone }}" clearable border="{{ false }}" /> |
| | | </view> |
| | | </view> |
| | | <view class="line"> |
| | | <view class="la">门店经纬度</view> |
| | | <view class="val"> |
| | | <view class="input">116.40,40.28</view> |
| | | <view class="val" bindtap="getLocation"> |
| | | <view class="input">{{ longitude }},{{ latitude }}</view> |
| | | <image class="icon" src="../../static/icon/home_ar@2x.png" mode="widthFix"></image> |
| | | </view> |
| | | </view> |
| | | <view class="line"> |
| | | <view class="la">门店地址</view> |
| | | <view class="val" bindtap="getLocation"> |
| | | <view class="input">安徽省合肥市金寨路琥珀五环国…安徽省合肥市金寨路琥珀五环国…</view> |
| | | <image class="icon" src="../../static/icon/home_ar@2x.png" mode="widthFix"></image> |
| | | <view class="val"> |
| | | <van-field class="input" model:value="{{address}}" clearable border="{{ false }}" /> |
| | | </view> |
| | | </view> |
| | | <view class="line"> |
| | | <view class="la">经营范围</view> |
| | | <view class="val">全屋定制、整体厨房、木门墙板</view> |
| | | </view> |
| | | |
| | | </view> |
| | | </view> |
| | | <view class="bottombtn"> |
| | | <button bind:tap="saveInfo" class="savebutton">保存</button> |
| | | </view> |
| | | </view> |
| | |
| | | .list .line .val .icon { |
| | | width: 40rpx; |
| | | } |
| | | .bottombtn{ |
| | | position: fixed; |
| | | bottom: 0px; |
| | | width: 100%; |
| | | padding: 20px; |
| | | } |
| | | .savebutton{ |
| | | bottom: 20px; |
| | | width: 100%; |
| | | border: none; |
| | | color: white; |
| | | background: #B08771; |
| | | border-radius: 8px; |
| | | } |
| | |
| | | // pages/store/staff.js |
| | | // pages/store/staff.jsdownloadImg |
| | | import { getUserCard } from '../../api/index' |
| | | import { downloadImg } from '../../utils/common' |
| | | Page({ |
| | | |
| | | /** |
| | |
| | | */ |
| | | data: { |
| | | bottomLift: 0, |
| | | isShow: false |
| | | isShow: false, |
| | | userCard:'', |
| | | isShow2: false, |
| | | userInfo:{} |
| | | }, |
| | | |
| | | /** |
| | |
| | | */ |
| | | onLoad(options) { |
| | | var app = getApp().globalData |
| | | var userType = options.userType |
| | | |
| | | if(userType == 1){ |
| | | //如果查询自己的信息 |
| | | this.setData({userInfo: wx.getStorageSync('member')}) |
| | | console.log(this.data) |
| | | } |
| | | this.setData({ |
| | | bottomLift: app.bottomLift |
| | | }) |
| | | }, |
| | | showQrcode(){ |
| | | this.setData({isShow:true}) |
| | | }, |
| | | closeCard(){ |
| | | this.setData({isShow2: false}) |
| | | }, |
| | | |
| | | |
| | | saveCard(){ |
| | | downloadImg(this.data.userCard); |
| | | }, |
| | | openModal() { |
| | | this.setData({isShow: true}) |
| | | if(this.data.userCard !=null && this.data.userCard != ''){ |
| | | this.setData({isShow2: true}) |
| | | return; |
| | | } |
| | | getUserCard().then(res =>{ |
| | | this.setData({userCard: res.data}) |
| | | this.setData({isShow2: true}) |
| | | }) |
| | | }, |
| | | onClose() { |
| | | this.setData({isShow: false}) |
| | |
| | | <back /> |
| | | <image src="../../static/images/design_banner@2x.png" mode="widthFix" class="bg_wrap"></image> |
| | | <view class="container"> |
| | | <image class="avatar" src=""></image> |
| | | <image class="avatar" src="{{userInfo.imgurlFull}}"></image> |
| | | <view class="name_wrap"> |
| | | <view class="left"> |
| | | <view class="name">姓名</view> |
| | | <view class="name">{{userInfo.name}}</view> |
| | | <view class="tag">导购</view> |
| | | <!-- <view class="tag">5年经验</view> --> |
| | | </view> |
| | | <image class="qrcode" src="../../static/icon/mingpian_erweima@2x.png" mode="widthFix"></image> |
| | | <image bind:tap="showQrcode" class="qrcode" src="../../static/icon/mingpian_erweima@2x.png" mode="widthFix"></image> |
| | | </view> |
| | | <view class="desc"> |
| | | <image src="../../static/icon/mingpian_ic_edit@2x.png" mode="widthFix"></image> |
| | | <view>用心服务每一位顾客</view> |
| | | <view>{{userInfo.slogans}}</view> |
| | | <view class="icon"></view> |
| | | </view> |
| | | <view class="static"> |
| | | <view class="card"> |
| | | <view>从业年限</view> |
| | | <view class="num">5</view> |
| | | <view class="num">{{userInfo.jobDate||'0'}}</view> |
| | | </view> |
| | | <view class="card"> |
| | | <view>服务客户</view> |
| | | <view class="num">500+</view> |
| | | <view class="num">{{userInfo.costomerNum||'0'}}</view> |
| | | </view> |
| | | </view> |
| | | <view class="guide"> |
| | |
| | | <view class="line"> |
| | | <image class="icon" src="../../static/icon/mingpian_ic_phone@2x.png" mode="widthFix"></image> |
| | | <text class="label">联系电话</text> |
| | | <text class="val">1888888888888</text> |
| | | <text class="val">{{userInfo.phone}}</text> |
| | | </view> |
| | | <view class="line"> |
| | | <image class="icon" src="../../static/icon/mingpian_ic_mendian@2x.png" mode="widthFix"></image> |
| | | <text class="label">门店名称</text> |
| | | <text class="val">1888888888888</text> |
| | | <text class="val">{{userInfo.shopName}}</text> |
| | | </view> |
| | | <view class="line"> |
| | | <image class="icon" src="../../static/icon/mingpian_ic_dizhi@2x.png" mode="widthFix"></image> |
| | | <image class="icon" src="../../static/icon/mingpian_ic_dizhi@2x.png" mode="widthFix" style="width: 45rpx;" ></image> |
| | | <text class="label">门店地址</text> |
| | | <text class="val">1888888888888</text> |
| | | <text class="val">{{userInfo.shopAddress}}</text> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <!-- footer --> |
| | | <view class="footer" style="bottom: {{bottomLift}}px;"> |
| | | <view class="btn"> |
| | | <view class="btn" bindtap="openModal"> |
| | | <image src="../../static/icon/share.png" mode="widthFix"></image> |
| | | <view bindtap="openModal">分享</view> |
| | | <view>分享</view> |
| | | </view> |
| | | </view> |
| | | <!-- 详情 --> |
| | | <van-popup show="{{ isShow }}" closeable round bind:close="onClose"> |
| | | <view class="modal"> |
| | | <view class="header"> |
| | | <image class="avatar" src=""></image> |
| | | <image class="avatar" src="{{userInfo.imgurlFull}}"></image> |
| | | <view class="content"> |
| | | <view class="name">姓名</view> |
| | | <view class="desc">导购 | 5年经验</view> |
| | | <view class="name">{{userInfo.name}}</view> |
| | | <view class="desc">导购 | {{userInfo.jobDate ||'0'}}年经验</view> |
| | | </view> |
| | | </view> |
| | | <image class="qrcode" src=""></image> |
| | | <image class="qrcode" src="{{userInfo.qrcodeImgFull}}"></image> |
| | | <view class="text">长按图片识别二维码</view> |
| | | </view> |
| | | </van-popup> <!-- 用户名片 --> |
| | | <van-popup class="modalcard" show="{{ isShow2 }}" round custom-style="background-color: rgba(0,0,0,0);"> |
| | | <view class="img1"> |
| | | <image class="qrcodecard" src="{{userCard}}"></image> |
| | | </view> |
| | | <view class="btns"> |
| | | <button class="btn1" bind:tap="closeCard">取消</button> |
| | | <button class="btn2" bind:tap="saveCard">保持到相册</button> |
| | | </view> |
| | | </van-popup> |
| | | </view> |
| | |
| | | margin-bottom: 42rpx; |
| | | } |
| | | .guide .line .icon { |
| | | width: 30rpx; |
| | | width: 30rpx; |
| | | } |
| | | .guide .line .label { |
| | | color: #777777; |
| | | margin-left: 24rpx; |
| | | margin-right: 44rpx; |
| | | min-width: 140rpx; |
| | | margin-left: 24rpx; |
| | | } |
| | | .footer { |
| | | display: flex; |
| | |
| | | color: #999999; |
| | | text-align: center; |
| | | } |
| | | .modalcard{ |
| | | display: inline-block; |
| | | width: 600rpx; |
| | | height: 1100rpx; |
| | | box-sizing: border-box; |
| | | } |
| | | .modalcard .img1{ |
| | | width: 100%; |
| | | height: 956rpx; |
| | | box-sizing: border-box; |
| | | } |
| | | .modalcard .qrcodecard{ |
| | | width: 600rpx; |
| | | height: 956rpx; |
| | | border-radius: 26rpx ; |
| | | } |
| | | .modalcard .btns{ |
| | | width: 100%; |
| | | display: flex; |
| | | margin-top:30rpx ; |
| | | margin-bottom: 10rpx; |
| | | } |
| | | .modalcard .btns .btn1{ |
| | | width: 290rpx; |
| | | border-radius: 8rpx !important; |
| | | height:88rpx ; |
| | | font-size: 32rpx; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | color: white; |
| | | border: 2rpx solid #FFFFFF; |
| | | background:rgba(0,0,0,0) |
| | | } |
| | | .modalcard .btns .btn2{ |
| | | width: 290rpx; |
| | | height:88rpx ; |
| | | font-size: 32rpx; |
| | | color: white; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | border-radius: 8rpx !important; |
| | | background: linear-gradient( 180deg, #E0B49C 0%, #B68B74 100%); |
| | | border-radius: 8px; |
| | | border: none; |
| | | } |
| | | |
| | |
| | | import { getMemberInfo } from '../../api/index' |
| | | import { getDictData, getMemberInfo } from '../../api/index' |
| | | Page({ |
| | | |
| | | /** |
| | | * 页面的初始数据 |
| | | */ |
| | | data: { |
| | | topimg:'', |
| | | clientHeight: 0, |
| | | clientTop: 0, |
| | | |
| | | uesrInfo: {} |
| | | clientTop: 0, |
| | | userInfo: {name:''} |
| | | }, |
| | | |
| | | |
| | | /** |
| | | * 生命周期函数--监听页面加载 |
| | | */ |
| | |
| | | const res = wx.getMenuButtonBoundingClientRect() |
| | | this.setData({clientHeight: res.height}) |
| | | this.setData({clientTop: res.top}) |
| | | |
| | | |
| | | this.initData() |
| | | }, |
| | | changePath(e) { |
| | | const {userInfo} = this.data |
| | | // 页面跳转 |
| | | let temp = [ |
| | | '/pages/userinfo/index', |
| | | '/pages/store/staff', |
| | | '/pages/store/staff?userType=1', |
| | | '/pages/userinfo/collect', |
| | | '/pages/store/index', |
| | | '/pages/store/index?shopId='+userInfo.departmentId, |
| | | '/pages/sets/index' |
| | | ] |
| | | const index = e.currentTarget.dataset.index |
| | |
| | | initData() { |
| | | getMemberInfo().then(res => { |
| | | this.setData({ |
| | | uesrInfo: res.data |
| | | }) |
| | | userInfo: res.data |
| | | }) |
| | | wx.setStorageSync('member',res.data) |
| | | }) |
| | | getDictData({ |
| | | code: 'WEIXIN_DEFAULT_IMGS', |
| | | label: 'STAFF_WORK_TOP_IMG' |
| | | }).then(res => { |
| | | this.setData({ topimg: res.data.code }) |
| | | }) |
| | | }, |
| | | onReady() { |
| | | |
| | | onReady() { |
| | | }, |
| | | |
| | | /** |
| | |
| | | <view class="container"> |
| | | <view class="topbg" style="background-image:url('{{topimg}}');background-color: aquamarine;"> |
| | | <view class="navbar" style="padding-top: {{ clientTop }}px;height: {{clientHeight + clientTop}}px;">工作台</view> |
| | | <view class="userinfo"> |
| | | <image class="avatar" src=""></image> |
| | | <view class="content"> |
| | | <view class="userinfo" data-index="0" bindtap="changePath"> |
| | | <image class="avatar" src="{{userInfo.imgurlFull}}"></image> |
| | | <view class="content" > |
| | | <view class="header"> |
| | | <view class="name">苏灿</view> |
| | | <view class="name">{{userInfo.name}}</view> |
| | | </view> |
| | | <view class="addr">合肥莲花小区</view> |
| | | <view class="detail">120m² |3室1厅1厨1卫</view> |
| | | <view class="addr">{{userInfo.phone}}</view> |
| | | <view class="detail">{{userInfo.shopName}}</view> |
| | | </view> |
| | | <image data-index="0" bindtap="changePath" class="edit" src="../../static/icon/gongzuotai_ic_erweima@2x.png" mode="widthFix"></image> |
| | | </view> |
| | | </view> |
| | | <view class="main_content"> |
| | | <view class="func_list"> |
| | | <view class="line" data-index="1" bindtap="changePath"> |
| | |
| | | display: flex; |
| | | padding: 72rpx 40rpx 48rpx; |
| | | color: #fff; |
| | | font-size: 26rpx; |
| | | background-color: aquamarine; |
| | | font-size: 26rpx; |
| | | } |
| | | .container .topbg{ |
| | | background-size: 100% auto; |
| | | background-repeat: no-repeat; |
| | | } |
| | | .container .userinfo .content { |
| | | flex: 1; |
| | |
| | | { |
| | | "appid": "wx208dd1edc0be24ee", |
| | | "appid": "wx9910433b937fff92", |
| | | "compileType": "miniprogram", |
| | | "libVersion": "3.4.10", |
| | | "packOptions": { |
| | |
| | | ] |
| | | } |
| | | }, |
| | | "libVersion": "2.25.4" |
| | | "libVersion": "3.4.10" |
| | | } |
| | |
| | | |
| | | |
| | | // export const baseUrl = 'https://jiaxuan.zbom.com/jx/wechat/' //正式服务器 |
| | | export const baseUrl = 'http://192.168.0.135:10027' // 本地 |
| | | export const baseUrl = 'https://dmtest.ahapp.net/web_interface/' // 本地 |
| | | // export const baseUrl = 'http://zbtest.ahapp.net/zbom_interface/jx/wechat/' //测试服务器 |
| | | |
| | | // export const imageUrl = 'https://osswebcdn.zbom.com/jiaxuan/images/' |
| | |
| | | if (res.data.code === 200) { |
| | | resolve(res.data || true) |
| | | } else { |
| | | if(res.data.code && res.data.code == 5112){ |
| | | if(res.data.code && (res.data.code == 5112 || res.data.code == 5111)){ |
| | | wx.navigateTo({ |
| | | url: '/pages/auth/auth', |
| | | url: '/pages/login/index', |
| | | }) |
| | | } |
| | | res.data.message && wx.showToast({ |