123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293 |
- <template>
- <view>
- <scroll-view scroll-x class="bg-white nav margin-bottom-xs">
- <view class="flex text-center">
- <view class="cu-item flex-sub" :class="tabcur==1?'text-blue cur':''" @tap="tabSelect" :data-tabcur="1">
- 报备信息
- </view>
- <view class="cu-item flex-sub" :class="tabcur==2?'text-blue cur':''" @tap="tabSelect" :data-tabcur="2">
- 我的用户库
- </view>
- </view>
- </scroll-view>
-
- <view v-if="tabcur==1">
- <!-- <view class="setidcard" @tap="setIdcard">
- <image :src="$getImageUrl('static/images/applet/setidcard.png')"></image>
- </view> -->
- <form>
- <view class="cu-form-group">
- <view class="title">姓名</view>
- <input placeholder="请输入姓名..." @input="bindInput" data-val="realname" :value="forminfo.realname"></input>
- </view>
- <view class="cu-form-group">
- <view class="title">手机号</view>
- <input placeholder="请输入手机号..." @input="bindInput" data-val="mobile" :value="forminfo.mobile"></input>
- </view>
- <view class="cu-form-group">
- <view class="title">身份证号</view>
- <input placeholder="请输入身份证号..." @input="bindInput" data-val="idcard" :value="forminfo.idcard"></input>
- </view>
- <view class="cu-form-group">
- <view class="title">预计出发日期</view>
- <picker mode="date" :value="forminfo.arrivetime" @change="arrivetimeChange">
- <view class="picker">
- {{forminfo.arrivetime?forminfo.arrivetime:'请选择时间'}}
- </view>
- </picker>
- </view>
- <view class="cu-form-group align-start">
- <view class="title">报备备注</view>
- <textarea maxlength="140" placeholder="请输入报备备注..." @input="bindInput" data-val="remark" :value="forminfo.remark"></textarea>
- </view>
- <view class="padding flex flex-direction">
- <button class="cu-btn bg-blue margin-tb-sm lg" @tap="addReport">确认提交</button>
- </view>
- </form>
- </view>
- <view v-else>
- <view class="cu-bar search bg-white solid-bottom">
- <view class="search-form round">
- <text class="cuIcon-search"></text>
- <input @input="searchInput" :value="searchval" :adjust-position="false" type="text" placeholder="搜索用户昵称、姓名、手机号" confirm-type="search"></input>
- </view>
- <view class="action">
- <button class="cu-btn bg-blue shadow-blur round" @click="pageRefresh()">搜索</button>
- </view>
- </view>
- <view class="cu-list menu-avatar">
- <block v-for="(item,index) in plist" :key="index">
- <view class="cu-item" :data-index="index" @tap="checkUser">
- <view class="cu-avatar radius lg" :style="'background-image:url('+item.avatar+');'"></view>
- <view class="content">
- <view>
- <view class="text-cut">{{item.nickname}}</view>
- <view class="cu-tag round bg-orange sm" v-if="item.authstatus==3">{{item.authstatus_text}}</view>
- </view>
- <view class="text-gray text-sm flex"> <view class="text-cut">{{item.mobile}} - {{item.realname}}</view></view>
- </view>
- <view class="action">
- <text class="lg text-gray cuIcon-right"></text>
- </view>
- </view>
- </block>
- </view>
- <uni-load-more :status="pstatus"></uni-load-more>
- </view>
-
- </view>
- </template>
- <script>
- import uniLoadMore from "@/components/uni-load-more/uni-load-more.vue";
- import avatar from "@/components/yq-avatar/yq-avatar.vue";
- var _this;
- export default {
- components: {
- avatar,
- uniLoadMore
- },
- data() {
- return {
- isRotate: false,
- userinfo: {},
- broker: {},
- snatchid: 0,
- tabcur: 1,
-
- pstatus: 'more',
- ppage: 1,
- psize: 20,
- plist: [],
- searchval: "",
-
- forminfo: {
- realname: "",
- mobile: "",
- idcard: "",
- arrivetime: "",
- remark: ""
- }
- }
- },
- onLoad: function(option) {
- _this = this;
- _this.snatchid = option.id || 0;
- _this.userinfo = _this.checkLogin("/pages/my/myinfo");
- _this.broker = uni.getStorageSync('brokerinfo');
- },
- onPullDownRefresh: function() {
- _this.pageRefresh();
- },
- onReachBottom: function() {
- if (_this.pstatus !== 'more') {
- return;
- }
- _this.getMore();
- },
- methods: {
-
- // 身份证识别
- setIdcard: function(rsp) {
- if(_this.isRotate){
- return false;
- }
- _this.isRotate = true;
- uni.chooseImage({
- count: 1,
- sizeType: ['original', 'compressed'],
- sourceType: ['album'],
- success: (res) => {
- _this.$req.ajaxFile({
- path: "attachment/tplfieldimage",
- title:'正在上传',
- filePath: res.tempFilePaths[0],
- fileName:'file',
- }).then((filedata) => {
- var fdata = JSON.parse(filedata.data);
- _this.$req.ajax({
- path: "comjobs/disidcard",
- title:'正在识别',
- data: {
- picpath: fdata.data.path
- }
- }).then((data) => {
- _this.forminfo.realname = data.idcard.name;
- _this.forminfo.idcard = data.idcard.num;
- _this.isRotate = false;
- }).catch((err) => {
- uni.showModal({
- title: '信息提示',
- content: err,
- showCancel: false
- });
- _this.isRotate = false;
- });
- }).catch((err) => {
- uni.showModal({
- title: '信息提示',
- content: err,
- showCancel: false
- });
- _this.isRotate = false;
- });
- }
- });
- },
-
-
- addReport: function() {
- if(_this.isRotate){
- return false;
- }
- _this.isRotate = true;
- _this.$req.ajax({
- path: "broker/addreport",
- data: {
- snatchid: _this.snatchid,
- brokerid: _this.broker.id,
- realname: _this.forminfo.realname,
- mobile: _this.forminfo.mobile,
- idcard: _this.forminfo.idcard,
- arrivetime: _this.forminfo.arrivetime,
- remark: _this.forminfo.remark
- }
- }).then((data) => {
- uni.showModal({
- title: '信息提示',
- content: "报备信息提交成功。",
- showCancel: false,
- success: function(res) {
- if (res.confirm) {
- _this.forminfo.realname = "";
- _this.forminfo.mobile = "";
- _this.forminfo.idcard = "";
- _this.forminfo.remark = "";
- }
- }
- });
- _this.isRotate = false;
- }).catch((err) => {
- uni.showModal({
- title: '信息提示',
- content: err,
- showCancel: false
- });
- _this.isRotate = false;
- });
- },
-
-
- checkBroker: function(e) {
- var index = e.currentTarget.dataset.index;
- _this.broker = _this.brokerall[index];
- },
-
- arrivetimeChange: function(e) {
- _this.forminfo.arrivetime = e.detail.value
- },
- bindInput: function(e) {
- var dataval = e.currentTarget.dataset.val;
- _this.forminfo[dataval] = e.detail.value;
- },
-
-
-
- checkUser: function(e) {
- var index = e.currentTarget.dataset.index;
- var user = _this.plist[index];
- _this.forminfo.realname = user.realname;
- _this.forminfo.mobile = user.mobile;
- _this.forminfo.idcard = user.idcard;
- _this.tabcur = 1;
- },
- pageRefresh: function() {
- _this.pstatus = 'more';
- _this.ppage = 1;
- _this.plist = [];
- _this.getMore();
- },
- searchInput: function(e) {
- _this.searchval = e.detail.value;
- },
- getMore: function() {
- _this.$req.ajax({
- path: "comjobs/getuserlist",
- data: {
- ppage: _this.ppage,
- psize: _this.psize,
- userid: _this.userinfo.id,
- searchval: _this.searchval
- }
- }).then((data) => {
- _this.pstatus = data.pstatus;
- _this.plist = _this.plist.concat(data.plist);
- _this.ppage += 1;
- uni.stopPullDownRefresh();
- }).catch((err) => {
- uni.showModal({
- title: '信息提示',
- content: err,
- showCancel: false
- });
- });
- },
-
- tabSelect: function(e) {
- _this.tabcur = e.currentTarget.dataset.tabcur;
- _this.pageRefresh();
- }
- }
- }
- </script>
- <style>
-
- .cu-form-group .title { min-width: calc(4em + 15px); }
- .cu-form-group input{ text-align: right; }
-
- .setidcard{ width: 120rpx; height: 120rpx; position: fixed; right: 60rpx; bottom: 60rpx; z-index: 999; }
- .setidcard image{ width: 120rpx; height: 120rpx; }
-
- </style>
|