Browse Source

Merge branch 'dev/v4.9.93_tsz' of qmx/jy into feature/v4.9.93

汤世哲 6 months ago
parent
commit
4e449469be

+ 8 - 6
src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/ent_follow.js

@@ -17,7 +17,8 @@ var vNode = {
             refreshing: false,
             refreshing: false,
             pageNum: 0,
             pageNum: 0,
             pageSize: 50,
             pageSize: 50,
-            scrollTop: 0
+            scrollTop: 0,
+            total: 0
         },
         },
         entFollowList: [],
         entFollowList: [],
         loading: '',
         loading: '',
@@ -30,7 +31,6 @@ var vNode = {
         if (!recover) {
         if (!recover) {
             this.getPowerInfo()
             this.getPowerInfo()
         }
         }
-        this.getEntGroupList()
 
 
     },
     },
     mounted: function () {
     mounted: function () {
@@ -88,7 +88,7 @@ var vNode = {
                 }
                 }
             })
             })
         },
         },
-        getEntFollowList: function (params = {}) {
+        getEntFollowList: function (params = {group: ''}) {
             var _this = this
             var _this = this
             $.ajax({
             $.ajax({
                 type: 'POST',
                 type: 'POST',
@@ -117,6 +117,10 @@ var vNode = {
                             if (res.data.followMax) {
                             if (res.data.followMax) {
                                 _this.conf.maxLength = res.data.followMax
                                 _this.conf.maxLength = res.data.followMax
                             }
                             }
+                            if(res.data.total) {
+                              _this.listInfo.total = res.data.total
+                              _this.getEntGroupList()
+                            }
 
 
                             // 列表赋值
                             // 列表赋值
                             if (res.data.list) {
                             if (res.data.list) {
@@ -151,10 +155,8 @@ var vNode = {
         },
         },
         // 设置企业分组数据
         // 设置企业分组数据
         setEntGroupData (data) {
         setEntGroupData (data) {
-          let all_count = 0
-          all_count = data.reduce((accumulator, currentValue) => accumulator + currentValue.count, 0);
           data.unshift({
           data.unshift({
-            count: all_count,
+            count: this.listInfo.total,
             id: "",
             id: "",
             isPut: 0,
             isPut: 0,
             name: "全部"
             name: "全部"

+ 95 - 86
src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/ent_portrait.js

@@ -417,8 +417,8 @@ var vNode = {
           if (res.error_code === 0) {
           if (res.error_code === 0) {
             _this.groupingList = res.data || []
             _this.groupingList = res.data || []
             _this.showGroupingDialog = true
             _this.showGroupingDialog = true
-            if(!this.entInfo.follow) {
-              this.$refs.portrayalGrouping.setState(['默认分组'])
+            if(!_this.entInfo.follow) {
+              _this.$refs.portrayalGrouping.setState(['默认分组'])
             }
             }
           } else {
           } else {
             if(!res?.data?.status) {
             if(!res?.data?.status) {
@@ -907,19 +907,21 @@ var vNode = {
     },
     },
     changeGroupState: function (type) {
     changeGroupState: function (type) {
       console.log(type);
       console.log(type);
-      
-      this.setGroupState = type
-      this.showGroupingDialog = true
-      const followedGroup = this.entInfo.followedGroup
-      let groupList = []
-      const isManyGroup = followedGroup.includes(',')
-      groupList = isManyGroup ? followedGroup.split(',') : [followedGroup]
-      if(!groupList.includes('默认分组')) {
-        this.$refs.portrayalGrouping.setState(groupList)
-      }
+      this.getEntGroupList() 
+      this.$nextTick(() => {
+        this.setGroupState = type
+        this.showGroupingDialog = true
+        const followedGroup = this.entInfo.followedGroup
+        let groupList = []
+        const isManyGroup = followedGroup.includes(',')
+        groupList = isManyGroup ? followedGroup.split(',') : [followedGroup]
+        if(!groupList.includes('默认分组')) {
+          this.$refs.portrayalGrouping.setState(groupList)
+        }
+      })
     },
     },
     // 查询企业是否存在和企业关注状态
     // 查询企业是否存在和企业关注状态
-    getEntFollowState: function () {
+    getEntFollowState: function (callback) {
       var _this = this
       var _this = this
       _this.entInfo.followSearchFinish = false
       _this.entInfo.followSearchFinish = false
       $.ajax({
       $.ajax({
@@ -937,6 +939,7 @@ var vNode = {
               _this.entInfo.entExist = !!res.data.isShow
               _this.entInfo.entExist = !!res.data.isShow
               _this.entInfo.followedGroup = res.data.followedGroup
               _this.entInfo.followedGroup = res.data.followedGroup
               _this.entInfo.info = res.data.info
               _this.entInfo.info = res.data.info
+              callback && callback(res.data)
             } else {
             } else {
               _this.entInfo.entExist = false
               _this.entInfo.entExist = false
             }
             }
@@ -951,13 +954,13 @@ var vNode = {
     },
     },
     changeFollowState: function (state) {
     changeFollowState: function (state) {
       var _this = this
       var _this = this
-      if(!this.isLogin) {
+      if(!_this.isLogin) {
         window.location.href = "/jyapp/free/login?to=back";
         window.location.href = "/jyapp/free/login?to=back";
         return
         return
       }
       }
-      if (this.entInfo.follow) {
+      if (_this.entInfo.follow) {
         if(!state) {
         if(!state) {
-          this.$dialog.confirm({
+          _this.$dialog.confirm({
             title: '提示信息',
             title: '提示信息',
             message: '取消对“' + _this.entInfo.name + '”的关注?',
             message: '取消对“' + _this.entInfo.name + '”的关注?',
             confirmButtonColor: '#2cb7ca'
             confirmButtonColor: '#2cb7ca'
@@ -972,7 +975,49 @@ var vNode = {
         }
         }
         
         
       } else {
       } else {
-        this.getEntGroupList()
+        this.getEntFollowState((res) => {
+          const { surplus, used } = res.info
+          const monitorEntNum = surplus + used  // 可监控企业总数
+          let limit = this.powerInfo.memberStatus > 0 || this.powerInfo.entniche
+          // 1.超出可监控企业数量
+          if (used <= 0) {
+            // 大会员或商机管理用户
+            if (limit) {
+              this.$dialog({
+                width: 303,
+                className: 'monitor-dialog',
+                title: '监控企业个数已达上限',
+                message: '您最多可监控'+monitorEntNum+'个企业,可联系客服,申请监控更多企业',
+                messageAlign:'center',
+                confirmButtonText: '联系客服',
+                confirmButtonColor: '#2ABED1',
+                showConfirmButton: true,
+                showCancelButton: true,
+                cancelButtonText: '返回',
+                // cancelButtonColor: '#5F5E64'
+              }).then(() =>{
+                if(utils.$envs.inWX){
+                   window.location.href = '/big/wx/page/customer'
+                } else{
+                  window.location.href = '/jyapp/free/customer'
+                }
+              })
+            } else {
+              // 非大会员非商机管理用户,进入留资页面
+              let href_
+              if(utils.$envs.inWX){
+                href_ = '/weixin/frontPage/bigmember/free/perfect_info?source=' + this.sourceLimitMap.wx
+              }else if(utils.$envs.inApp){
+                href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' + this.sourceLimitMap.app
+              }else if(utils.$envs.inH5){
+                href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' +  + this.sourceLimitMap.h5
+              }
+              window.location.href = href_
+            }
+          } else {
+            this.getEntGroupList()
+          }
+        })
         // this.changeFollowStateRequest()
         // this.changeFollowStateRequest()
       }
       }
     },
     },
@@ -1140,7 +1185,25 @@ var vNode = {
             if (res.data === 'success' || res.data.status) {
             if (res.data === 'success' || res.data.status) {
               _this.entInfo.follow = !_this.entInfo.follow
               _this.entInfo.follow = !_this.entInfo.follow
               _this.getEntFollowState()
               _this.getEntFollowState()
-              _this.no_monitor(res.data)
+              if(utils.$envs.inApp && JyObj.checkNoticePermission()!=1 && res.data.status){
+                this.$dialog({
+                  width: 303,
+                  className: 'monitor-dialog',
+                  title: '监控成功',
+                  message: '您可前往“工作台-商机-企业情报监控”查看企业最新动态。为保证您能及时获取新增监控信息推送,请前往开启推送提醒。',
+                  messageAlign:'center',
+                  confirmButtonText: '去开启',
+                  confirmButtonColor: '#2ABED1',
+                  showConfirmButton: true,
+                  showCancelButton: true,
+                  cancelButtonText: '暂不开启',
+                  // cancelButtonColor: '#5F5E64'
+                }).then(() =>{
+                  //  展开监控菜单 active:4
+                  window.location.href = location.origin + '/jy_mobile/push/pushsetting?active=4'
+                })
+                return
+              }
             } else {
             } else {
               return _this.showToast(res.error_msg || '监控失败')
               return _this.showToast(res.error_msg || '监控失败')
             }
             }
@@ -1161,92 +1224,38 @@ var vNode = {
         }
         }
       })
       })
     },
     },
-    no_monitor (data){
-      if(utils.$envs.inApp && JyObj.checkNoticePermission()!=1 && data.status){
+    lookMore (){
+      if(this.powerInfo.memberStatus > 0 || this.powerInfo.entniche){
         this.$dialog({
         this.$dialog({
           width: 303,
           width: 303,
           className: 'monitor-dialog',
           className: 'monitor-dialog',
-          title: '监控成功',
-          message: '您可前往“工作台-商机-企业情报监控”查看企业最新动态。为保证您能及时获取新增监控信息推送,请前往开启推送提醒。',
-          messageAlign:'center',
-          confirmButtonText: '去开启',
-          confirmButtonColor: '#2ABED1',
-          showConfirmButton: true,
-          showCancelButton: true,
-          cancelButtonText: '暂不开启',
-          // cancelButtonColor: '#5F5E64'
-        }).then(() =>{
-          //  展开监控菜单 active:4
-          window.location.href = location.origin + '/jy_mobile/push/pushsetting?active=4'
-        })
-        return
-      }
-      if(!this.powerInfo.isFree && !data.msg_open && data.status){
-        this.$dialog({
-          width: 303,
-          className: 'monitor-dialog',
-          title: '监控成功',
-          message: '您可前往“工作台-商机-业主监控”查看业主最新招标动态。为保证您能及时获取新增监控信息推送,请前往开启推送提醒。',
-          messageAlign:'center',
-          confirmButtonText: '去开启',
-          confirmButtonColor: '#2ABED1',
-          showConfirmButton: true,
-          showCancelButton: true,
-          cancelButtonText: '暂不开启',
-          // cancelButtonColor: '#5F5E64'
-        }).then(() =>{
-          //  展开监控菜单 active:4
-          window.location.href = location.origin + '/jy_mobile/push/pushsetting?active=4'
-        })
-
-      } else if(!this.powerInfo.isFree && data.msg_open && data.status){
-        this.$toast({
-          duration: 2000,
-          message: '监控成功,您可前往“工作台-商机-企业情报监控”查看'
-      })
-
-      }else if(!this.powerInfo.isFree && data.limit_status === 1){
-        let href_
-        if(utils.$envs.inWX){
-          href_ = '/weixin/frontPage/bigmember/free/perfect_info?source=' + this.sourceLimitMap.wx
-        }else if(utils.$envs.inApp){
-          href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' + this.sourceLimitMap.app
-        }else if(utils.$envs.inH5){
-          href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' +  + this.sourceLimitMap.h5
-        }
-        window.location.href = href_
-      } else if(!this.powerInfo.isFree && data.limit_status === 2){
-        this.$dialog({
-          width: 303,
-          className: 'monitor-dialog',
-          title: '监控企业个数已达上限',
-          message: '您最多可监控'+data.limit_count+'个企业,可联系客服,申请监控更多企业',
+          title: `申请监控更多企业`,
+          message: `您可联系客服,申请升级产品套餐,监控更多企业`,
           messageAlign:'center',
           messageAlign:'center',
           confirmButtonText: '联系客服',
           confirmButtonText: '联系客服',
           confirmButtonColor: '#2ABED1',
           confirmButtonColor: '#2ABED1',
           showConfirmButton: true,
           showConfirmButton: true,
           showCancelButton: true,
           showCancelButton: true,
-          cancelButtonText: '返回',
-          // cancelButtonColor: '#5F5E64'
+          cancelButtonText: '我再想想',
+          // cancelButtonColor: '#2ABED1'
         }).then(() =>{
         }).then(() =>{
           if(utils.$envs.inWX){
           if(utils.$envs.inWX){
-             window.location.href = '/big/wx/page/customer'
-          } else{
-            window.location.href = '/jyapp/free/customer'
-          }
+            window.location.href = '/big/wx/page/customer'
+         } else{
+           window.location.href = '/jyapp/free/customer'
+         }
         })
         })
-      }else if(this.powerInfo.isFree){
+      }else{
         let href_
         let href_
         if(utils.$envs.inWX){
         if(utils.$envs.inWX){
-          href_ = '/weixin/frontPage/bigmember/free/perfect_info?source=' + this.sourceLimitMap.wx
+          href_ = '/weixin/frontPage/bigmember/free/perfect_info?source=' + this.sourceMap.wx
         }else if(utils.$envs.inApp){
         }else if(utils.$envs.inApp){
-          href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' + this.sourceLimitMap.app
+          href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' + this.sourceMap.app
         }else if(utils.$envs.inH5){
         }else if(utils.$envs.inH5){
-          href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' + this.sourceLimitMap.h5
+          href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' + this.sourceMap.h5
         }
         }
         window.location.href = href_
         window.location.href = href_
       }
       }
-
     },
     },
     // 赚剑鱼币任务完成提示
     // 赚剑鱼币任务完成提示
     pointsTaskSuccessTip: function() {
     pointsTaskSuccessTip: function() {

+ 1 - 0
src/jfw/modules/app/src/web/templates/big-member/page_ent_portrait.html

@@ -707,6 +707,7 @@
                   :ent-info="entInfo"
                   :ent-info="entInfo"
                   :allpower="powerInfo"
                   :allpower="powerInfo"
                   :monitor="!!entInfo.follow"
                   :monitor="!!entInfo.follow"
+                  @lookmore="lookMore"
                   @change="changeGroupState"
                   @change="changeGroupState"
                   @monitorclick="changeFollowState"
                   @monitorclick="changeFollowState"
                   :downshow="true"
                   :downshow="true"

+ 95 - 86
src/web/staticres/common-module/collection/js/ent_portrait.js

@@ -387,7 +387,7 @@ var vNode = {
     getEntGroupList () {
     getEntGroupList () {
       var _this = this
       var _this = this
       $.ajax({
       $.ajax({
-        url: '/bigmember/follow/ent/labelGroupList',
+        url: '/bigmember/follow/ent/labelGroup',
         type: 'POST',
         type: 'POST',
         data: {
         data: {
           type: 'get'
           type: 'get'
@@ -396,8 +396,8 @@ var vNode = {
           if (res.error_code === 0) {
           if (res.error_code === 0) {
             _this.groupingList = res.data || []
             _this.groupingList = res.data || []
             _this.showGroupingDialog = true
             _this.showGroupingDialog = true
-            if(!this.entInfo.follow) {
-              this.$refs.portrayalGrouping.setState(['默认分组'])
+            if(!_this.entInfo.follow) {
+              _this.$refs.portrayalGrouping.setState(['默认分组'])
             }
             }
           } else {
           } else {
             if(!res?.data?.status) {
             if(!res?.data?.status) {
@@ -866,19 +866,21 @@ var vNode = {
     },
     },
     changeGroupState: function (type) {
     changeGroupState: function (type) {
       console.log(type);
       console.log(type);
-      
-      this.setGroupState = type
-      this.showGroupingDialog = true
-      const followedGroup = this.entInfo.followedGroup
-      let groupList = []
-      const isManyGroup = followedGroup.includes(',')
-      groupList = isManyGroup ? followedGroup.split(',') : [followedGroup]
-      if(!groupList.includes('默认分组')) {
-        this.$refs.portrayalGrouping.setState(groupList)
-      }
+      this.getEntGroupList() 
+      this.$nextTick(() => {
+        this.setGroupState = type
+        this.showGroupingDialog = true
+        const followedGroup = this.entInfo.followedGroup
+        let groupList = []
+        const isManyGroup = followedGroup.includes(',')
+        groupList = isManyGroup ? followedGroup.split(',') : [followedGroup]
+        if(!groupList.includes('默认分组')) {
+          this.$refs.portrayalGrouping.setState(groupList)
+        }
+      })
     },
     },
     // 查询企业是否存在和企业关注状态
     // 查询企业是否存在和企业关注状态
-    getEntFollowState: function () {
+    getEntFollowState: function (callback) {
       var _this = this
       var _this = this
       _this.entInfo.followSearchFinish = false
       _this.entInfo.followSearchFinish = false
       $.ajax({
       $.ajax({
@@ -895,6 +897,7 @@ var vNode = {
               _this.entInfo.entExist = !!res.data.isShow
               _this.entInfo.entExist = !!res.data.isShow
               _this.entInfo.followedGroup = res.data.followedGroup
               _this.entInfo.followedGroup = res.data.followedGroup
               _this.entInfo.info = res.data.info
               _this.entInfo.info = res.data.info
+              callback && callback(res.data)
             } else {
             } else {
               _this.entInfo.entExist = false
               _this.entInfo.entExist = false
             }
             }
@@ -909,9 +912,9 @@ var vNode = {
     },
     },
     changeFollowState: function (state) {
     changeFollowState: function (state) {
       var _this = this
       var _this = this
-      if (this.entInfo.follow) {
+      if (_this.entInfo.follow) {
         if(!state) {
         if(!state) {
-          this.$dialog.confirm({
+          _this.$dialog.confirm({
             title: '提示信息',
             title: '提示信息',
             message: '取消对“' + _this.entInfo.name + '”的关注?',
             message: '取消对“' + _this.entInfo.name + '”的关注?',
             confirmButtonColor: '#2cb7ca'
             confirmButtonColor: '#2cb7ca'
@@ -926,7 +929,49 @@ var vNode = {
         }
         }
         
         
       } else {
       } else {
-        this.getEntGroupList()
+        this.getEntFollowState((res) => {
+          const { surplus, used } = res.info
+          const monitorEntNum = surplus + used  // 可监控企业总数
+          let limit = this.powerInfo.memberStatus > 0 || this.powerInfo.entniche
+          // 1.超出可监控企业数量
+          if (used <= 0) {
+            // 大会员或商机管理用户
+            if (limit) {
+              this.$dialog({
+                width: 303,
+                className: 'monitor-dialog',
+                title: '监控企业个数已达上限',
+                message: '您最多可监控'+monitorEntNum+'个企业,可联系客服,申请监控更多企业',
+                messageAlign:'center',
+                confirmButtonText: '联系客服',
+                confirmButtonColor: '#2ABED1',
+                showConfirmButton: true,
+                showCancelButton: true,
+                cancelButtonText: '返回',
+                // cancelButtonColor: '#5F5E64'
+              }).then(() =>{
+                if(utils.$envs.inWX){
+                   window.location.href = '/big/wx/page/customer'
+                } else{
+                  window.location.href = '/jyapp/free/customer'
+                }
+              })
+            } else {
+              // 非大会员非商机管理用户,进入留资页面
+              let href_
+              if(utils.$envs.inWX){
+                href_ = '/weixin/frontPage/bigmember/free/perfect_info?source=' + this.sourceLimitMap.wx
+              }else if(utils.$envs.inApp){
+                href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' + this.sourceLimitMap.app
+              }else if(utils.$envs.inH5){
+                href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' +  + this.sourceLimitMap.h5
+              }
+              window.location.href = href_
+            }
+          } else {
+            this.getEntGroupList()
+          }
+        })
         // this.changeFollowStateRequest()
         // this.changeFollowStateRequest()
       }
       }
     },
     },
@@ -1091,7 +1136,25 @@ var vNode = {
             if (res.data === 'success' || res.data.status) {
             if (res.data === 'success' || res.data.status) {
               _this.entInfo.follow = !_this.entInfo.follow
               _this.entInfo.follow = !_this.entInfo.follow
               _this.getEntFollowState()
               _this.getEntFollowState()
-              _this.no_monitor(res.data)
+              if(utils.$envs.inApp && JyObj.checkNoticePermission()!=1 && res.data.status){
+                this.$dialog({
+                  width: 303,
+                  className: 'monitor-dialog',
+                  title: '监控成功',
+                  message: '您可前往“工作台-商机-企业情报监控”查看企业最新动态。为保证您能及时获取新增监控信息推送,请前往开启推送提醒。',
+                  messageAlign:'center',
+                  confirmButtonText: '去开启',
+                  confirmButtonColor: '#2ABED1',
+                  showConfirmButton: true,
+                  showCancelButton: true,
+                  cancelButtonText: '暂不开启',
+                  // cancelButtonColor: '#5F5E64'
+                }).then(() =>{
+                  //  展开监控菜单 active:4
+                  window.location.href = location.origin + '/jy_mobile/push/pushsetting?active=4'
+                })
+                return
+              }
             } else {
             } else {
               return _this.showToast(res.error_msg || '监控失败')
               return _this.showToast(res.error_msg || '监控失败')
             }
             }
@@ -1110,92 +1173,38 @@ var vNode = {
         }
         }
       })
       })
     },
     },
-    no_monitor (data){
-      if(utils.$envs.inApp && JyObj.checkNoticePermission()!=1 && data.status){
-        this.$dialog({
-          width: 303,
-          className: 'monitor-dialog',
-          title: '监控成功',
-          message: '您可前往“工作台-商机-企业情报监控”查看企业最新动态。为保证您能及时获取新增监控信息推送,请前往开启推送提醒。',
-          messageAlign:'center',
-          confirmButtonText: '去开启',
-          confirmButtonColor: '#2ABED1',
-          showConfirmButton: true,
-          showCancelButton: true,
-          cancelButtonText: '暂不开启',
-          // cancelButtonColor: '#5F5E64'
-        }).then(() =>{
-          //  展开监控菜单 active:4
-          window.location.href = location.origin + '/jy_mobile/push/pushsetting?active=4'
-        })
-        return
-      }
-      if(!this.powerInfo.isFree && !data.msg_open && data.status){
+    lookMore (){
+      if(this.powerInfo.memberStatus > 0 || this.powerInfo.entniche){
         this.$dialog({
         this.$dialog({
           width: 303,
           width: 303,
           className: 'monitor-dialog',
           className: 'monitor-dialog',
-          title: '监控成功',
-          message: '您可前往“工作台-商机-业主监控”查看业主最新招标动态。为保证您能及时获取新增监控信息推送,请前往开启推送提醒。',
-          messageAlign:'center',
-          confirmButtonText: '去开启',
-          confirmButtonColor: '#2ABED1',
-          showConfirmButton: true,
-          showCancelButton: true,
-          cancelButtonText: '暂不开启',
-          // cancelButtonColor: '#5F5E64'
-        }).then(() =>{
-          //  展开监控菜单 active:4
-          window.location.href = location.origin + '/jy_mobile/push/pushsetting?active=4'
-        })
-
-      } else if(!this.powerInfo.isFree && data.msg_open && data.status){
-        this.$toast({
-          duration: 2000,
-          message: '监控成功,您可前往“工作台-商机-企业情报监控”查看'
-      })
-
-      }else if(!this.powerInfo.isFree && data.limit_status === 1){
-        let href_
-        if(utils.$envs.inWX){
-          href_ = '/weixin/frontPage/bigmember/free/perfect_info?source=' + this.sourceLimitMap.wx
-        }else if(utils.$envs.inApp){
-          href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' + this.sourceLimitMap.app
-        }else if(utils.$envs.inH5){
-          href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' +  + this.sourceLimitMap.h5
-        }
-        window.location.href = href_
-      } else if(!this.powerInfo.isFree && data.limit_status === 2){
-        this.$dialog({
-          width: 303,
-          className: 'monitor-dialog',
-          title: '监控企业个数已达上限',
-          message: '您最多可监控'+data.limit_count+'个企业,可联系客服,申请监控更多企业',
+          title: `申请监控更多企业`,
+          message: `您可联系客服,申请升级产品套餐,监控更多企业`,
           messageAlign:'center',
           messageAlign:'center',
           confirmButtonText: '联系客服',
           confirmButtonText: '联系客服',
           confirmButtonColor: '#2ABED1',
           confirmButtonColor: '#2ABED1',
           showConfirmButton: true,
           showConfirmButton: true,
           showCancelButton: true,
           showCancelButton: true,
-          cancelButtonText: '返回',
-          // cancelButtonColor: '#5F5E64'
+          cancelButtonText: '我再想想',
+          // cancelButtonColor: '#2ABED1'
         }).then(() =>{
         }).then(() =>{
           if(utils.$envs.inWX){
           if(utils.$envs.inWX){
-             window.location.href = '/big/wx/page/customer'
-          } else{
-            window.location.href = '/jyapp/free/customer'
-          }
+            window.location.href = '/big/wx/page/customer'
+         } else{
+           window.location.href = '/jyapp/free/customer'
+         }
         })
         })
-      }else if(this.powerInfo.isFree){
+      }else{
         let href_
         let href_
         if(utils.$envs.inWX){
         if(utils.$envs.inWX){
-          href_ = '/weixin/frontPage/bigmember/free/perfect_info?source=' + this.sourceLimitMap.wx
+          href_ = '/weixin/frontPage/bigmember/free/perfect_info?source=' + this.sourceMap.wx
         }else if(utils.$envs.inApp){
         }else if(utils.$envs.inApp){
-          href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' + this.sourceLimitMap.app
+          href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' + this.sourceMap.app
         }else if(utils.$envs.inH5){
         }else if(utils.$envs.inH5){
-          href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' + this.sourceLimitMap.h5
+          href_ = '/jyapp/frontPage/bigmember/free/perfect_info?source=' + this.sourceMap.h5
         }
         }
         window.location.href = href_
         window.location.href = href_
       }
       }
-
     },
     },
     // 赚剑鱼币任务完成提示
     // 赚剑鱼币任务完成提示
     pointsTaskSuccessTip: function() {
     pointsTaskSuccessTip: function() {

+ 28 - 5
src/web/staticres/common-module/mobile-portrayal-footer/css/mobile-portrayal-grouping.css

@@ -1,5 +1,6 @@
-.mobile-portrayal-grouping .van-dialog {
+.mobile-portrayal-grouping .grouping-dialog.van-dialog {
   padding: 0 .32rem;
   padding: 0 .32rem;
+  top: 50%;
 }
 }
 .mobile-portrayal-grouping .van-dialog .van-dialog__header {
 .mobile-portrayal-grouping .van-dialog .van-dialog__header {
   padding-top: 24px;
   padding-top: 24px;
@@ -10,12 +11,17 @@
   margin-bottom: .44rem;
   margin-bottom: .44rem;
 }
 }
 .mobile-portrayal-grouping .van-dialog__content .add-grouping {
 .mobile-portrayal-grouping .van-dialog__content .add-grouping {
+  display: flex;
+  justify-content: flex-end;
+  align-items: center;
   margin: .16rem 0;
   margin: .16rem 0;
   height: .4rem;
   height: .4rem;
-  line-height: .4rem;
-  text-align: right;
+}
+.add-grouping .van-icon-plus {
+  margin-bottom: .04rem;
 }
 }
 .mobile-portrayal-grouping .van-dialog__content .add-grouping .add-grouping-text {
 .mobile-portrayal-grouping .van-dialog__content .add-grouping .add-grouping-text {
+  margin-left: .08rem;
   font-size: .28rem;
   font-size: .28rem;
   color: #2ABED1;
   color: #2ABED1;
 }
 }
@@ -36,12 +42,29 @@
   text-overflow: ellipsis;
   text-overflow: ellipsis;
 }
 }
 
 
+.mobile-portrayal-grouping .add-grouping-dialog .dialog-footer {
+  display: flex;
+  justify-content: space-between;
+  
+}
+.add-grouping-dialog .dialog-footer .van-button {
+  flex: 1;
+  font-size: 18px;
+  border: none;
+  border-top: 0.5px solid rgba(0, 0, 0, 0.1);
+}
+
+.add-grouping-dialog .dialog-footer .van-button.confirm-button {
+  color: #2abed1;
+  border-left: 0.5px solid rgba(0, 0, 0, 0.1);
+}
+
 .mobile-portrayal-grouping .add-grouping-dialog .van-dialog__content {
 .mobile-portrayal-grouping .add-grouping-dialog .van-dialog__content {
   padding: 0;
   padding: 0;
-  margin: .32rem 0 .44rem 0;
+  margin: .32rem 0 0 0;
 }
 }
 .mobile-portrayal-grouping .add-grouping-dialog .van-cell {
 .mobile-portrayal-grouping .add-grouping-dialog .van-cell {
-  padding: 0;
+  padding: 0 .32rem .44rem .32rem;
 }
 }
 .mobile-portrayal-grouping .add-grouping-dialog .van-cell .van-field__body {
 .mobile-portrayal-grouping .add-grouping-dialog .van-cell .van-field__body {
   padding-bottom: .22rem;
   padding-bottom: .22rem;

+ 5 - 0
src/web/staticres/common-module/mobile-portrayal-footer/js/mobile-portrayal-footer.js

@@ -243,6 +243,11 @@ var mobilePortrayalFooter = {
       
       
     },
     },
     lookMore (){
     lookMore (){
+      if(this.portraitOrigin === 'ent'){
+        this.$emit('lookmore')
+        return
+      }
+
       if(this.allpower.vipStatus > 0){
       if(this.allpower.vipStatus > 0){
         let href_
         let href_
         if(utils.$envs.inWX){
         if(utils.$envs.inWX){

+ 40 - 4
src/web/staticres/common-module/mobile-portrayal-footer/js/mobile-portrayal-grouping.js

@@ -4,6 +4,7 @@ var mobilePortrayalGrouping = `
       v-model="showGroupingDialog"
       v-model="showGroupingDialog"
       :title="title"
       :title="title"
       show-cancel-button
       show-cancel-button
+      confirmButtonText="确定"
       class="grouping-dialog"
       class="grouping-dialog"
       @confirm="confirmGrouping"
       @confirm="confirmGrouping"
       @cancel="cancelGrouping"
       @cancel="cancelGrouping"
@@ -22,9 +23,9 @@ var mobilePortrayalGrouping = `
     <van-dialog
     <van-dialog
       class="add-grouping-dialog"
       class="add-grouping-dialog"
       v-model="showAddGroupingDialog"
       v-model="showAddGroupingDialog"
+      :show-confirm-button="false"
       title="新增分组"
       title="新增分组"
-      @confirm="addGrouping"
-      show-cancel-button>
+      >
       <van-field 
       <van-field 
         v-model="groupingName"
         v-model="groupingName"
         show-word-limit 
         show-word-limit 
@@ -32,7 +33,21 @@ var mobilePortrayalGrouping = `
         :error-message="errorMessageText"
         :error-message="errorMessageText"
         placeholder="请输入分组名称"
         placeholder="请输入分组名称"
         @input="setGroupingName"
         @input="setGroupingName"
-      ></van-field>
+      >
+      </van-field>
+      <div class="dialog-footer">
+        <van-button type="default" @click="showAddGroupingDialog = false">
+          取消
+        </van-button>
+        <van-button
+          type="default"
+          class="confirm-button"
+          :disabled="isConfirmButtonDisabled"
+          @click="addGrouping"
+        >
+          确定
+        </van-button>
+      </div>
     </van-dialog>
     </van-dialog>
   </div>
   </div>
 `
 `
@@ -64,7 +79,8 @@ var mobilePortrayalGroupingScript = {
       groupingName: '',
       groupingName: '',
       showAddGroupingDialog: false,
       showAddGroupingDialog: false,
       errorMessageText: '',
       errorMessageText: '',
-      isUpdating: false // 标志位,避免死循环
+      isUpdating: false, // 标志位,避免死循环
+      isConfirmButtonDisabled: true, // 控制确定按钮是否禁用
     }
     }
   },
   },
   methods: {
   methods: {
@@ -73,6 +89,7 @@ var mobilePortrayalGroupingScript = {
     },
     },
     addMonitor () {
     addMonitor () {
       this.showAddGroupingDialog = true
       this.showAddGroupingDialog = true
+      this.isConfirmButtonDisabled = true
     },
     },
     addGrouping () {
     addGrouping () {
       // 添加分组确定事件
       // 添加分组确定事件
@@ -97,8 +114,27 @@ var mobilePortrayalGroupingScript = {
     },
     },
     setGroupingName (val) {
     setGroupingName (val) {
       this.groupingName = val.trim().replace(/\s+/g, '')
       this.groupingName = val.trim().replace(/\s+/g, '')
+      this.errorMessageText = ''
+      this.isConfirmButtonDisabled = false
+
+      if (this.groupingName === '') {
+        this.errorMessageText = '分组名称不能为空'
+        this.isConfirmButtonDisabled = true
+      } else {
+        const exists = this.groupingList.some(
+          (item) => item.s_name === this.groupingName
+        )
+        if (exists) {
+          this.errorMessageText = '分组名称已存在'
+          this.isConfirmButtonDisabled = true
+        }
+      }
     },
     },
     handleGroupChange (checked) {
     handleGroupChange (checked) {
+      if(checked.length === 0) {
+        this.groupingResult = ['默认分组']; // 如果没有选择任何其他分组,则只保留'默认分组'
+        return;
+      }
       if (this.isUpdating) {
       if (this.isUpdating) {
         // 如果正在更新,直接返回,避免递归调用
         // 如果正在更新,直接返回,避免递归调用
         return;
         return;

+ 27 - 0
src/web/staticres/common-module/perfect-info/js/perfect-info.js

@@ -133,6 +133,13 @@ var titleMap = {
   h5_list_monitor_more:'申请监控更多业主',
   h5_list_monitor_more:'申请监控更多业主',
   app_list_monitor_more:'申请监控更多业主',
   app_list_monitor_more:'申请监控更多业主',
   wx_list_monitor_more:'申请监控更多业主',
   wx_list_monitor_more:'申请监控更多业主',
+  app_ent_limit: '申请监控更多企业',
+  wx_ent_limit: '申请监控更多企业',
+  h5_ent_limit: '申请监控更多企业',
+  app_ent_more: '申请监控更多企业',
+  wx_ent_more: '申请监控更多企业',
+  h5_ent_more: '申请监控更多企业',
+
   // 商机情报详情页
   // 商机情报详情页
   app_project_businessDetails: '欢迎体验剑鱼大会员',
   app_project_businessDetails: '欢迎体验剑鱼大会员',
   wx_project_businessDetails: '欢迎体验剑鱼大会员',
   wx_project_businessDetails: '欢迎体验剑鱼大会员',
@@ -385,6 +392,14 @@ var tipMap = {
   h5_list_monitor_more:'请升级大会员,可实时监控最多500个业主采购动态,洞察潜在商机。',
   h5_list_monitor_more:'请升级大会员,可实时监控最多500个业主采购动态,洞察潜在商机。',
   app_list_monitor_more:'请升级大会员,可实时监控最多500个业主采购动态,洞察潜在商机。',
   app_list_monitor_more:'请升级大会员,可实时监控最多500个业主采购动态,洞察潜在商机。',
   wx_list_monitor_more:'请升级大会员,可实时监控最多500个业主采购动态,洞察潜在商机。',
   wx_list_monitor_more:'请升级大会员,可实时监控最多500个业主采购动态,洞察潜在商机。',
+  app_ent_more: '请升级大会员,可实时监控最多500个企业中标动态,帮助你了解竞争对手和合作伙伴的动向。',
+  wx_ent_more: '请升级大会员,可实时监控最多500个企业中标动态,帮助你了解竞争对手和合作伙伴的动向。',
+  h5_ent_more: '请升级大会员,可实时监控最多500个企业中标动态,帮助你了解竞争对手和合作伙伴的动向。',
+  app_ent_limit: '您当前权限不足,请升级大会员,可实时监控最多500个企业中标动态,帮助你了解竞争对手和合作伙伴的动向。',
+  wx_ent_limit: '您当前权限不足,请升级大会员,可实时监控最多500个企业中标动态,帮助你了解竞争对手和合作伙伴的动向。',
+  h5_ent_limit: '您当前权限不足,请升级大会员,可实时监控最多500个企业中标动态,帮助你了解竞争对手和合作伙伴的动向。',
+
+  
   // 商机情报详情页
   // 商机情报详情页
   app_project_businessDetails: '请留下联系方式,我们会尽快联系您体验大会员全部功能!',
   app_project_businessDetails: '请留下联系方式,我们会尽快联系您体验大会员全部功能!',
   wx_project_businessDetails: '请留下联系方式,我们会尽快联系您体验大会员全部功能!',
   wx_project_businessDetails: '请留下联系方式,我们会尽快联系您体验大会员全部功能!',
@@ -512,6 +527,12 @@ var sourceDescMap = {
   h5_list_monitor_more:'业主监控页-超级订阅用户申请监控更多业主',
   h5_list_monitor_more:'业主监控页-超级订阅用户申请监控更多业主',
   app_list_monitor_more:'业主监控页-超级订阅用户申请监控更多业主',
   app_list_monitor_more:'业主监控页-超级订阅用户申请监控更多业主',
   wx_list_monitor_more:'业主监控页-超级订阅用户申请监控更多业主',
   wx_list_monitor_more:'业主监控页-超级订阅用户申请监控更多业主',
+  app_ent_limit: '企业画像页-申请监控更多企业(已达上限)',
+  wx_ent_limit: '企业画像页-申请监控更多企业(已达上限)',
+  h5_ent_limit: '企业画像页-申请监控更多企业(已达上限)',
+  app_ent_more: '企业画像页-申请监控更多企业',
+  wx_ent_more: '企业画像页-申请监控更多企业',
+  h5_ent_more: '企业画像页-申请监控更多企业',
   // 商机情报详情页
   // 商机情报详情页
   app_project_businessDetails: '商机情报详情页-查看潜在项目预测',
   app_project_businessDetails: '商机情报详情页-查看潜在项目预测',
   wx_project_businessDetails: '商机情报详情页-查看潜在项目预测',
   wx_project_businessDetails: '商机情报详情页-查看潜在项目预测',
@@ -1858,6 +1879,12 @@ var vNode = {
                 case  'h5_list_monitor_more':
                 case  'h5_list_monitor_more':
                 case  'app_list_monitor_more':
                 case  'app_list_monitor_more':
                 case  'wx_list_monitor_more':
                 case  'wx_list_monitor_more':
+                case 'app_ent_more':
+                case 'wx_ent_more':
+                case 'h5_ent_more':
+                case 'app_ent_limit':
+                case 'wx_ent_limit':
+                case 'h5_ent_limit':
                 {
                 {
                  _this.showMessage('已收到您提交的升级大会员申请,我们会尽快联系您并预约演示时间。', '我知道了', function () {
                  _this.showMessage('已收到您提交的升级大会员申请,我们会尽快联系您并预约演示时间。', '我知道了', function () {
                     history.back()
                     history.back()