zhaoxiaohai 3 vuotta sitten
vanhempi
commit
92495e8323

+ 2 - 1
app.json

@@ -88,7 +88,8 @@
         "My_MultipleChoice": "/components/My_MultipleChoice/index",
         "My_SupplyAndDemandItemBox": "/components/My_SupplyAndDemandItemBox/index",
         "My_CenterTheTitle": "/components/My_CenterTheTitle/index",
-        "My_paging": "/components/My_paging/index"
+        "My_paging": "/components/My_paging/index",
+        "van-empty": "@vant/weapp/empty/index"
     },
     "window": {
         "backgroundTextStyle": "light",

+ 1 - 1
miniprogram_npm/@vant/weapp/collapse-item/index.wxml

@@ -11,7 +11,7 @@
     clickable="{{ clickable }}"
     border="{{ border && expanded }}"
     class="{{ utils.bem('collapse-item__title', { disabled, expanded }) }}"
-    right-icon-class="van-cell__right-icon"
+    right-icon-class="van-cell__right-icon asd52"
     custom-class="van-cell"
     hover-class="van-cell--hover"
     bind:click="onClick"

+ 4 - 1
miniprogram_npm/@vant/weapp/collapse-item/index.wxss

@@ -1 +1,4 @@
-@import '../common/index.wxss';.van-collapse-item__title .van-cell__right-icon{transform:rotate(90deg);transition:transform var(--collapse-item-transition-duration,.3s)}.van-collapse-item__title--expanded .van-cell__right-icon{transform:rotate(-90deg)}.van-collapse-item__title--disabled .van-cell,.van-collapse-item__title--disabled .van-cell__right-icon{color:var(--collapse-item-title-disabled-color,#c8c9cc)!important}.van-collapse-item__title--disabled .van-cell--hover{background-color:#fff!important}.van-collapse-item__wrapper{overflow:hidden}.van-collapse-item__content{background-color:var(--collapse-item-content-background-color,#fff);color:var(--collapse-item-content-text-color,#969799);font-size:var(--collapse-item-content-font-size,13px);line-height:var(--collapse-item-content-line-height,1.5);padding:var(--collapse-item-content-padding,15px)}
+@import '../common/index.wxss';.van-collapse-item__title .van-cell__right-icon{transform:rotate(90deg);transition:transform var(--collapse-item-transition-duration,.3s)}.van-collapse-item__title--expanded .van-cell__right-icon{transform:rotate(-90deg)}.van-collapse-item__title--disabled .van-cell,.van-collapse-item__title--disabled .van-cell__right-icon{color:var(--collapse-item-title-disabled-color,#c8c9cc)!important}.van-collapse-item__title--disabled .van-cell--hover{background-color:#fff!important}.van-collapse-item__wrapper{overflow:hidden}.van-collapse-item__content{background-color:var(--collapse-item-content-background-color,#fff);color:var(--collapse-item-content-text-color,#969799);font-size:var(--collapse-item-content-font-size,13px);line-height:var(--collapse-item-content-line-height,1.5);padding:var(--collapse-item-content-padding,15px)}
+.asd52{
+    margin-top: 28rpx;
+}

+ 110 - 26
pages/chatRoom/create.js

@@ -1,4 +1,7 @@
-// pages/chatRoom/create.js
+import {
+    ApiModel
+} from "../../utils/api";
+const _Http = new ApiModel();
 Page({
 
     /**
@@ -6,15 +9,73 @@ Page({
      */
     data: {
         inputValue: '', //群名
-        activeNames: ['1']
+        buddyList: [], //好友列表
+        activeNames: [], //折叠面板展开项
+        identity: '全部', //选择身份
+        result: []
     },
 
     /**
      * 生命周期函数--监听页面加载
      */
     onLoad: function (options) {
+        _Http.basic({
+            "accesstoken": wx.getStorageSync('userData').token,
+            "classname": "customer.tagents.tagents",
+            "method": "query_cooperation",
+            "content": {
+                "getdatafromdbanyway": true,
+                "pageNumber": 1,
+                "pageSize": 999,
+                "where": {
+                    "condition": "",
+                    "ftype": "",
+                    "fstatus": ""
+                }
+            }
+        }).then(res => {
+            let activeNames = [];
+            for (let index = 0; index < res.data.length; index++) {
+                this.query_CooperationAgentUsers(res.data[index])
+                activeNames.push(index)
+            }
+            this.setData({
+                activeNames
+            })
+        })
 
     },
+    /* 商户成员列表 */
+    query_CooperationAgentUsers(data) {
+        _Http.basic({
+            "accesstoken": wx.getStorageSync('userData').token,
+            "classname": "customer.tagents.tagents",
+            "method": "query_CooperationAgentUsers",
+            "content": {
+                "getdatafromdbanyway": true,
+                "tagentsid": data.tcooperationagentsid
+            }
+        }, false).then(res => {
+            if (res.msg != '成功') return wx.showToast({
+                title: res.data,
+                icon: "none"
+            })
+            data.userList = res.data;
+            let buddyList = this.data.buddyList;
+            buddyList.push(data)
+            this.setData({
+                buddyList
+            })
+        })
+    },
+    /* 职位选择类型 */
+    selectType({
+        detail
+    }) {
+        if (this.data.identity != detail) this.setData({
+            detail
+        });
+    },
     /* 编辑群名称 */
     nameInput(e) {
         const {
@@ -24,66 +85,89 @@ Page({
             inputValue: value
         })
     },
-
     /* 折叠面板 */
     collapseChange(event) {
         this.setData({
             activeNames: event.detail,
         });
     },
+    //多选选中
+    userListCheckboxChange(e) {
+        this.setData({
+            result: e.detail
+        })
+    },
     /* 标题选择框 */
     titleRadio(e) {
         const {
-            index
+            index,
+            id
         } = e.target.dataset;
-        console.log(index)
+        if (!this.data.result.some((value) => value == id)) this.batchChange(index, false);
+    },
+    //批量修改
+    batchChange(index, bool) {
+        let data = this.data.buddyList[index].userList,
+            result = this.data.result;
+        for (let index = 0; index < data.length; index++) {
+            if (bool) {
+                if (!result.some((v) => v == data[index])) result.push(data[index].tenterprise_userid.toString())
+            } else {
+                result = result.filter((value) => value != data[index].tenterprise_userid);
+            }
+        }
+        this.setData({
+            result
+        })
+    },
+    /* 选择子账号同时选中主账号 */
+    listClick(e) {
+        const index = e.currentTarget.dataset.index,
+            itemId = e.currentTarget.dataset.id,
+            id = e.currentTarget.id;
+        if (index == 0) return;
+        let result = this.data.result;
+        if (!result.some((v) => v == itemId)) return;
+        if (!result.some((value) => value == id)) {
+            result.push(id)
+            this.setData({
+                result
+            })
+        }
+
     },
     /**
      * 生命周期函数--监听页面初次渲染完成
      */
-    onReady: function () {
-
-    },
+    onReady: function () {},
 
     /**
      * 生命周期函数--监听页面显示
      */
-    onShow: function () {
-
-    },
+    onShow: function () {},
 
     /**
      * 生命周期函数--监听页面隐藏
      */
-    onHide: function () {
-
-    },
+    onHide: function () {},
 
     /**
      * 生命周期函数--监听页面卸载
      */
-    onUnload: function () {
-
-    },
+    onUnload: function () {},
 
     /**
      * 页面相关事件处理函数--监听用户下拉动作
      */
-    onPullDownRefresh: function () {
-
-    },
+    onPullDownRefresh: function () {},
 
     /**
      * 页面上拉触底事件的处理函数
      */
-    onReachBottom: function () {
-
-    },
+    onReachBottom: function () {},
 
     /**
      * 用户点击右上角分享
      */
-    onShareAppMessage: function () {
-
-    }
+    onShareAppMessage: function () {}
 })

+ 3 - 1
pages/chatRoom/create.json

@@ -3,6 +3,8 @@
     "van-collapse": "@vant/weapp/collapse/index",
     "van-collapse-item": "@vant/weapp/collapse-item/index",
     "van-checkbox": "@vant/weapp/checkbox/index",
-    "van-checkbox-group": "@vant/weapp/checkbox-group/index"
+    "van-checkbox-group": "@vant/weapp/checkbox-group/index",
+    "van-radio": "@vant/weapp/radio/index",
+    "van-radio-group": "@vant/weapp/radio-group/index"
   }
 }

+ 18 - 8
pages/chatRoom/create.wxml

@@ -16,20 +16,30 @@
     <view class="choose">
         <view class="title">
             职位选择
+            <van-radio-group direction='horizontal' value="{{ identity }}" bind:change="selectType">
+                <van-radio checked-color='#4DC2D4' name="全部" icon-size="28rpx" custom-class='radio-group-class group-class' label-class='van-radio-class'>全部</van-radio>
+                <van-radio checked-color='#4DC2D4' name="仅老板" icon-size="28rpx" custom-class='group-class' label-class='van-radio-class'>仅老板</van-radio>
+            </van-radio-group>
         </view>
         <view style="flex: 1; max-height: 65vh;">
             <scroll-view style="height: 100%; width: 100vw;" scroll-y>
                 <van-collapse custom-class="collapse-cus" value="{{ activeNames }}" bind:change="collapseChange">
-                    <van-collapse-item custom-class="collapse-item" wx:for="{{20}}" name="{{index}}">
-                        <view slot="title" class="collapse-title" name="{{index}}">
-                            <van-checkbox shape='round' value='true' icon-size="14px" checked-color="#4DC2D4" data-index="{{index}}" catchtap="titleRadio"><text class="u-line-1" data-index="{{index}}" style="max-width: 400rpx;display: inline-block;">复选框复选框复选框复选框复选框复选框复选框复选框复选框复选框</text></van-checkbox>
-                        </view>
-                        提供多样店铺模板,快速搭建网上商城
-                        <icon></icon>
-                    </van-collapse-item>
+                    <van-checkbox-group value="{{ result }}" bind:change="userListCheckboxChange">
+                        <van-collapse-item custom-class="collapse-item" wx:for="{{buddyList}}" name="{{index}}">
+                            <view slot="title" class="collapse-title">
+                                <van-checkbox name="{{item.userList[0].tenterprise_userid}}" shape='round' icon-size="14px" checked-color="#4DC2D4" data-index="{{index}}" data-id="{{item.userList[0].tenterprise_userid}}" catchtap="titleRadio"><text class="u-line-1" data-index="{{index}}" data-id="{{item.userList[0].tenterprise_userid}}" style="max-width: 400rpx;display: inline-block;">{{item.fbrand}}</text></van-checkbox>
+                            </view>
+                            <van-checkbox disabled='{{index==0}}' data-index="{{index}}" data-id="{{it.tenterprise_userid}}" catchtap="listClick" id="{{item.userList[0].tenterprise_userid}}" wx:for="{{item.userList}}" wx:for-item="it" custom-class='user-list-custom' checked-color='#4DC2D4' label-class="user-list-checkbox" wx:key="index" name="{{it.tenterprise_userid}}">
+                                <view class="user-item u-line-1">
+                                    <image src="/static/changeImg.png" mode="aspectFill"></image>{{it.fname}}
+                                </view>
+                            </van-checkbox>
+                        </van-collapse-item>
+                    </van-checkbox-group>
                 </van-collapse>
+                <van-empty wx:if="{{buddyList.length==0}}" description="暂无数据" />
             </scroll-view>
         </view>
-        <van-button custom-class='vanBut'>立即创建</van-button>
+        <van-button disabled custom-class='vanBut'>立即创建</van-button>
     </view>
 </view>

+ 43 - 0
pages/chatRoom/create.wxss

@@ -83,6 +83,8 @@ page {
 }
 
 .choose .title {
+    display: flex;
+    align-items: center;
     width: 100vw;
     height: 44rpx;
     font-size: 32rpx;
@@ -94,6 +96,22 @@ page {
     flex-shrink: 0;
 }
 
+.radio-group-class {
+    margin-left: 20rpx;
+}
+
+.group-class {
+    margin-top: 6rpx;
+}
+
+.van-radio-class {
+    padding-left: 10rpx !important;
+    font-size: 28rpx;
+    font-weight: 400;
+    color: #000000;
+    opacity: .5;
+}
+
 .collapse-cus {
     width: 630rpx;
     margin: 0 auto;
@@ -129,4 +147,29 @@ page {
     color: #FFFFFF !important;
     flex-shrink: 0;
     margin-bottom: 60rpx;
+}
+
+/* 团队成员 */
+.user-list-custom {
+    margin-bottom: 20rpx;
+}
+
+.user-list-checkbox {
+    padding-left: 36rpx;
+}
+
+.user-item {
+    display: flex;
+    align-items: center;
+    height: 70rpx;
+    width: 500rpx;
+    font-size: 32rpx;
+    color: #000000;
+}
+
+.user-item image {
+    width: 70rpx;
+    height: 70rpx;
+    border-radius: 50%;
+    margin-right: 20rpx;
 }

+ 17 - 15
pages/chatRoom/dialogbox.js

@@ -36,7 +36,6 @@ Page({
             userid: wx.getStorageSync('userData').userid
         });
         //详情
-        console.log(this.data.timdialogid)
         _Http.basic({
             "accesstoken": wx.getStorageSync('userData').token,
             "classname": "system.im.imdialog.imdialog",
@@ -53,20 +52,23 @@ Page({
             let title = res.data[0].fimdialogname.split('-'),
                 headerTitle = (title[0] == res.data[0].fname) ? title[1] : title[0],
                 joinHands = false;
-            if (res.data[0].fimdialogtype == '供需' && res.data[0].fimuserid != this.data.userid) {
-                _Http.basic({
-                    "accesstoken": wx.getStorageSync('userData').token,
-                    "classname": "customer.supplyanddemand.supplyanddemand",
-                    "method": "updatesupplyanddemandstatus",
-                    "content": {
-                        "tsupplyanddemandid": res.data[0].ownerid,
-                        "fstatus": "对接中",
-                        "timdialogid": res.data[0].timdialogid
-                    }
-                }, false).then(res => {
-                    console.log("对接中", res)
-                })
-                joinHands = true
+            if (res.data[0].fimdialogtype == '供需') {
+                if (res.data[0].fimuserid == this.data.userid) {
+                    _Http.basic({
+                        "accesstoken": wx.getStorageSync('userData').token,
+                        "classname": "customer.supplyanddemand.supplyanddemand",
+                        "method": "updatesupplyanddemandstatus",
+                        "content": {
+                            "tsupplyanddemandid": res.data[0].ownerid,
+                            "fstatus": "对接中",
+                            "timdialogid": res.data[0].timdialogid
+                        }
+                    }, false).then(res => {
+                        console.log("对接中", res)
+                    })
+                } else {
+                    joinHands = true
+                }
             }
             this.setData({
                 headerTitle,

+ 3 - 2
pages/chatRoom/index.js

@@ -48,11 +48,12 @@ Page({
             "content": {
                 "getdatafromdbanyway": true,
                 "where": {
-                    "condition": condition
+                    "condition": condition,
+                    "fimdialogtype2": "供需"
                 }
             }
         }).then(res => {
-            console.log("获取聊天记录", res)
+            console.log("对话列表", res)
             if (res.msg != '成功') return wx.showToast({
                 title: res.data,
                 icon: "none"

+ 2 - 3
pages/tabbar-pages/supplyAndDemand/index.js

@@ -76,7 +76,7 @@ Page({
     toLinkUpPage(e) {
         const {
             timdialogid
-        } = e.currentTarget.dataset.item;
+        } = e.currentTarget.dataset;
         wx.navigateTo({
             url: '/pages/chatRoom/dialogbox?id=' + timdialogid,
         })
@@ -127,7 +127,6 @@ Page({
         let {
             item
         } = e.currentTarget.dataset;
-        
         let imdialogs = [];
         _Http.basic({
             "accesstoken": wx.getStorageSync('userData').token,
@@ -136,7 +135,7 @@ Page({
             "content": {
                 "tsupplyanddemandid": item.tsupplyanddemandid
             }
-        },false).then(res => {
+        }, false).then(res => {
             console.log('沟通列表', res)
             if (res.msg != '成功') return wx.showToast({
                 title: res.data,

+ 7 - 3
pages/tabbar-pages/supplyAndDemand/index.wxml

@@ -39,11 +39,15 @@
             <view class="abutting-joint-box" wx:for="{{productList}}" wx:key="index">
                 <view class="abutting-joint-titleAndMsg">
                     <view class="abutting-joint-title u-line-1">[{{item.ftype}}]{{item.ftitle}}</view>
-                    <view class="abutting-joint-msg u-line-1"><text style="color: #FF0000; opacity: .5;">[23条]</text>李老板:多少钱收?多少钱收?</view>
+                    <view class="abutting-joint-msg u-line-1"><text wx:if="{{item.imdialogs[0].funreadmsgcount!=0}}" style="color: #FF0000; opacity: .5;">[{{item.imdialogs[0].funreadmsgcount}}条]</text>
+                        <view style="display: inline-block;" wx:if="{{item.imdialogs[0].latestnews.length!=0}}">{{item.imdialogs[0].latestnews[0].fname}}:<text wx:if="{{item.imdialogs[0].latestnews[0].fmessagetype=='text'}}">{{item.imdialogs[0].latestnews[0].message.data.fcontent}}</text>
+                            <text wx:else>[图片]</text>
+                        </view>
+                    </view>
                 </view>
                 <view class="abutting-joint-timeAndBut">
                     <view class="abutting-joint-time">{{item.checkdate}}</view>
-                    <van-button custom-class="abutting-joint-but" data-item="{{item}}" catchtap="toLinkUpPage"><text class="abutting-joint-but-text">继续沟通</text></van-button>
+                    <van-button custom-class="abutting-joint-but" data-timdialogid="{{item.imdialogs[0].timdialogid}}" catchtap="toLinkUpPage"><text class="abutting-joint-but-text">继续沟通</text></van-button>
                 </view>
             </view>
             <view style="width: 100vw; height: 30rpx;"></view>
@@ -94,7 +98,7 @@
     <view class="CommunicationOfNumber">
         <view class="CommunicationOfNumber-title">沟通列表</view>
         <view class="CommunicationOfNumber-list">
-            <view wx:for="{{imdialogs}}" wx:key="index">{{item.createdate}}<text data-item="{{item}}" catchtap="toLinkUpPage" class="text">用户:{{item.fname}}</text><text wx:if="{{item.fdatastatus==0}}">发起联系,遗憾未达成合作</text><text wx:elif='{{item.fdatastatus==1}}'>发起联系,恭喜达成合作</text><text wx:else>发起联系,正在对接中</text></view>
+            <view wx:for="{{imdialogs}}" wx:key="index">{{item.createdate}}<text data-timdialogid="{{item.timdialogid}}" catchtap="toLinkUpPage" class="text">用户:{{item.fname}}</text><text wx:if="{{item.fdatastatus==0}}">发起联系,遗憾未达成合作</text><text wx:elif='{{item.fdatastatus==1}}'>发起联系,恭喜达成合作</text><text wx:else>发起联系,正在对接中</text></view>
         </view>
     </view>
     <view style="height: 50px;"></view>

+ 1 - 2
pages/webView/index.js

@@ -15,8 +15,7 @@ Page({
      */
     onLoad: function (options) {
         const url = decodeURIComponent(options.url);
-        console.log(url)
-        //判断是否纯在登录态度
+        //判断是否存在登录态
         if (!wx.getStorageSync('userData').token) {
             getApp().globalData.liveUrl = url;
             wx.reLaunch({