| | |
| | | <view class="status_bar"> |
| | | <!-- 这里是状态栏 --> |
| | | </view> |
| | | <uni-nav-bar left-icon="left" title="客户信息" @clickLeft="back" @clickRight="scan" |
| | | :border="false" rightWidth="160rpx" leftWidth="160rpx"> |
| | | <uni-nav-bar left-icon="left" title="客户信息" @clickLeft="back" @clickRight="scan" :fixed="true" |
| | | :border="false" rightWidth="160rpx" leftWidth="160rpx" |
| | | > |
| | | <block slot="right"> |
| | | <view class="city"> |
| | | <view> |
| | |
| | | </uni-nav-bar> |
| | | <!-- 搜索框 --> |
| | | <view class="search-bg"> |
| | | <uni-search-bar placeholder="客户代号/名称" bgColor="#f4f4f4" @confirm="search" /> |
| | | <u-search placeholder="客户代号/名称" v-model="keyword" :clearabled="true" @custom="search()" @search="search()"></u-search> |
| | | </view> |
| | | <view> |
| | | <!-- 客户列表 --> |
| | | <view class="c-list" @click="getDetails(item.id)" v-for="(item,index) in csmtrList" :key="index"> |
| | | <view class="titles"> |
| | | <y-title :title="item.name"></y-title> |
| | | <y-title :title="item.name"></y-title><view></view> |
| | | </view> |
| | | <view style="display: grid;grid-template-columns: 1fr 3fr;"> |
| | | <view class="list-item1">客户代号</view><view class="list-item2">{{item.uuid}}</view> |
| | |
| | | </view> |
| | | </view> |
| | | <!-- <uni-load-more :status="status" :icon-size="16" :content-text="contentText" /> --> |
| | | <u-empty v-if="true" icon="../../../static/image/emptyList.png" v-show="!csmtrList"/> |
| | | <u-empty v-if="true" icon="../../../static/image/emptyList.png" v-show="csmtrList.length <= 0" /> |
| | | |
| | | <view class="fxbtn" :style="style"> |
| | | <uni-icons :type="iconType" color="#fff" @click="menu()" ></uni-icons> |
| | | </view> |
| | | <view class="fxbtn1" v-show="iconType == 'closeempty'"> |
| | | <uni-icons type="plusempty" color="#fff" @click="add()" ></uni-icons> |
| | | </view> |
| | | <view class="fxbtn2" v-show="iconType == 'closeempty'"> |
| | | <uni-icons type="download" color="#fff" @click="download()" ></uni-icons> |
| | | </view> |
| | | |
| | | |
| | | <!-- 接取窗口 --> |
| | | <view> |
| | | <uni-popup ref="inputDialog" type="dialog"> |
| | | <view class="popup"> |
| | | <!-- 标题 --> |
| | | <view class="desc">接取</view> |
| | | <scroll-view scroll-y="true" style="height: 23vh;touch-action: none;"> |
| | | <!-- <view style="display: flex;justify-content: center;margin: 8px;align-items: center;" v-for="item in csmtrs"> |
| | | <checkbox style="flex: 1;display: flex;justify-content: flex-end;"></checkbox> |
| | | <view style="flex: 4;">{{item.name}}</view> |
| | | </view> --> |
| | | <view class="u-demo-block__content" style="margin-left: 12rpx;"> |
| | | <view class="u-page__radio-item"> |
| | | <u-radio-group v-model="radiovalue2" placement="column" shape="square" > |
| | | <u-radio |
| | | :customStyle="{marginBottom: '8px'}" |
| | | v-for="(item, index) in csmtrs" |
| | | :key="index" |
| | | :label="item.name" |
| | | :name="item.name" |
| | | > |
| | | </u-radio> |
| | | </u-radio-group> |
| | | </view> |
| | | </view> |
| | | </scroll-view> |
| | | <view class="btn"> |
| | | <view class="btn-left" @click="close">取消</view> |
| | | <view class="btn-right" @click="confirm">确认</view> |
| | | </view> |
| | | |
| | | </view> |
| | | </uni-popup> |
| | | </view> |
| | | <view style="height: 10rpx;"></view> |
| | | </view> |
| | | </template> |
| | | |
| | |
| | | export default { |
| | | data() { |
| | | return { |
| | | csmtrList: [], |
| | | last_id: '', |
| | | keyword: '', |
| | | user: { |
| | | username: '', |
| | | id: 0 |
| | | id: 0, |
| | | type: '' |
| | | }, |
| | | falg: true, |
| | | csmtrList: [], |
| | | csmtrs: [], |
| | | last_id: '', |
| | | userid: 0, |
| | | reload: false, |
| | | status: 'more', |
| | |
| | | contentrefresh: '加载中', |
| | | contentnomore: '没有更多' |
| | | }, |
| | | radiovalue2: '', |
| | | iconType: 'plusempty', |
| | | style: 'background-color: #46a7ff;' |
| | | } |
| | | }, |
| | | // 新建按钮事件 |
| | |
| | | |
| | | }, |
| | | onShow() { |
| | | setTimeout(()=> { |
| | | this.getCsmtr1() |
| | | },500) |
| | | let that = this |
| | | uni.$on('isRefresh',function(data){ |
| | | console.log('监听到事件来自返回的参数:' + data); |
| | | // TODO 下面执行刷新的方法 |
| | | that.user.username = data.title |
| | | that.user.id = data.id |
| | | that.user.type = data.key |
| | | that.falg = false |
| | | }) |
| | | |
| | | this.getDetail() |
| | | if (this.falg) { |
| | | this.getDetail() |
| | | } |
| | | setTimeout(()=> { |
| | | this.getCsmtr1() |
| | | },50) |
| | | |
| | | }, |
| | | onReachBottom() { |
| | |
| | | this.getCsmtr() |
| | | }, |
| | | methods: { |
| | | menu() { |
| | | if (this.iconType == 'plusempty') { |
| | | this.iconType ='closeempty' |
| | | this.style ='background-color: #c3c3c3;' |
| | | } else { |
| | | this.iconType ='plusempty' |
| | | this.style ='background-color: #46a7ff;' |
| | | } |
| | | // this.iconType = this.iconType ? 'plusempty' : 'closeempty' |
| | | }, |
| | | async getDetail() { |
| | | let res = await user.getDetail() |
| | | if (res.code === 200) { |
| | |
| | | }, |
| | | open() { |
| | | this.show = true |
| | | console.log(this.columns); |
| | | }, |
| | | download() { |
| | | let _this = this |
| | | uni.request({ |
| | | url: `${_this.baseUrl}/cstmr2/all/get/kv`, |
| | | header: {'token' : uni.getStorageSync('token')}, |
| | | method: 'POST', |
| | | success(res) { |
| | | res = res.data |
| | | if (res.data) { |
| | | _this.csmtrs = res.data |
| | | } |
| | | } |
| | | }) |
| | | this.$refs.inputDialog.open() |
| | | this.menu() |
| | | }, |
| | | add() { |
| | | uni.navigateTo({ |
| | | url:'/pages/business/cstmr/addCsmtr?type=' + 1, |
| | | }) |
| | | this.menu() |
| | | }, |
| | | close() { |
| | | this.$refs.inputDialog.close() |
| | | }, |
| | | confirm() { |
| | | let _this = this |
| | | uni.request({ |
| | | url: `${_this.baseUrl}/cstmr2/add/auth`, |
| | | header: { |
| | | 'token' : uni.getStorageSync('token'), |
| | | 'content-type':'application/x-www-form-urlencoded', |
| | | }, |
| | | method: 'POST', |
| | | data: {name: _this.radiovalue2}, |
| | | success(res) { |
| | | res = res.data |
| | | if (res.code === 200) { |
| | | _this.csmtrList = [] |
| | | setTimeout(()=> { |
| | | _this.getCsmtr1() |
| | | },100) |
| | | } |
| | | } |
| | | }) |
| | | this.$refs.inputDialog.close() |
| | | }, |
| | | getUserTree() { |
| | | let _this = this |
| | | uni.request({ |
| | | url: 'http://192.168.4.188:9528/dept/user/tree/auth', |
| | | url: `${that.baseUrl}/dept/user/tree/auth`, |
| | | method: 'POST', |
| | | header: {'token' : uni.getStorageSync('token'),}, |
| | | }).then((res)=>{ |
| | | console.log(res); |
| | | }) |
| | | }, |
| | | back() { |
| | |
| | | getCsmtr1(e) { |
| | | let that = this |
| | | that.csmtrList = [] |
| | | let param = {curr:1,limit:4,dept_id: 0,user_id: 67} |
| | | if (this.user.type == 'user_id') { |
| | | param = {curr:1,limit:4,user_id: that.user.id} |
| | | } else { |
| | | param = {curr:1,limit:4,dept_id: that.user.id} |
| | | } |
| | | uni.request({ |
| | | url: that.baseUrl + '/cstmr2/page/auth', |
| | | header: {'token' : uni.getStorageSync('token'),}, |
| | | data: {curr:1,limit:4}, |
| | | data: param, |
| | | method:'GET', |
| | | success(result) { |
| | | if (result.statusCode === 404) { |
| | |
| | | }, |
| | | getCsmtr() { |
| | | let that = this |
| | | let param = {curr:that.curr,limit:4,dept_id: 0,user_id: 67} |
| | | if (this.user.type == 'user_id') { |
| | | param = {curr:that.curr,limit:4,user_id: that.user.id} |
| | | } else { |
| | | param = {curr:that.curr,limit:4,dept_id: that.user.id} |
| | | } |
| | | uni.request({ |
| | | url: that.baseUrl + '/cstmr/page/auth', |
| | | url: that.baseUrl + '/cstmr2/page/auth', |
| | | header: {'token' : uni.getStorageSync('token'),}, |
| | | data: {curr:that.curr,limit:4}, |
| | | data: param, |
| | | method:'GET', |
| | | success(result) { |
| | | if (result.statusCode === 404) { |
| | |
| | | }, |
| | | getDetails(id) { |
| | | uni.navigateTo({ |
| | | url: '/pages/business/cstmr/cstmrDetails?id=' + id |
| | | url: `/pages/business/cstmr/cstmrDetails?id=${id}&type=info` |
| | | }) |
| | | }, |
| | | // --- |
| | |
| | | background-color: #fff; |
| | | border-radius: 10rpx; |
| | | margin: 20rpx 2% 0 2%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | /* display: flex; |
| | | flex-direction: column; */ |
| | | font-size: 24rpx; |
| | | } |
| | | /* 父view 换 scroll-view */ |
| | |
| | | } |
| | | .titles { |
| | | padding-left: 10rpx; |
| | | text-indent: 5rpx; |
| | | /* text-indent: 5rpx; */ |
| | | margin-top: 10rpx; |
| | | } |
| | | /* .title { |
| | |
| | | font-weight: 900; |
| | | color: #303133; |
| | | } */ |
| | | .fxbtn { |
| | | position: fixed; |
| | | bottom: 50px; |
| | | right: 10px; |
| | | width: 40px; |
| | | height: 40px; |
| | | /* background-color: #46a7ff; */ |
| | | color: #FFF; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | border-radius: 50%; |
| | | |
| | | } |
| | | |
| | | .fxbtn1 { |
| | | position: fixed; |
| | | bottom: 50px; |
| | | right: 60px; |
| | | width: 40px; |
| | | height: 40px; |
| | | background-color: #46a7ff; |
| | | color: #FFF; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | border-radius: 50%; |
| | | |
| | | } |
| | | |
| | | .fxbtn2 { |
| | | position: fixed; |
| | | bottom: 50px; |
| | | right: 110px; |
| | | width: 40px; |
| | | height: 40px; |
| | | background-color: #46a7ff; |
| | | color: #FFF; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | border-radius: 50%; |
| | | |
| | | } |
| | | |
| | | |
| | | .popup { |
| | | width: 80vw; |
| | | min-height: 100rpx; |
| | | background-color: #FFF; |
| | | border-radius: 25rpx; |
| | | } |
| | | .desc { |
| | | height: 100rpx; |
| | | line-height: 100rpx; |
| | | width: 100%; |
| | | color: #606266; |
| | | text-align: center; |
| | | font-size: 16px; |
| | | } |
| | | .btn { |
| | | display: flex; |
| | | height: 90rpx; |
| | | margin-top: 20rpx; |
| | | border-top: 1px solid #DCDFE6; |
| | | justify-content: center; |
| | | align-items: center; |
| | | } |
| | | .btn-left { |
| | | display: flex; |
| | | flex: 1; |
| | | height: 100%; |
| | | justify-content: center; |
| | | align-items: center; |
| | | color: #606266; |
| | | border-right: 1px solid #DCDFE6; |
| | | } |
| | | .btn-right { |
| | | display: flex; |
| | | flex: 1; |
| | | justify-content: center; |
| | | align-items: center; |
| | | color: #409EFF; |
| | | } |
| | | </style> |