Kaynağa Gözat

同步udream最新代码

udream-cxs 4 yıl önce
ebeveyn
işleme
f742c0dcf1

+ 41 - 153
src/apps/mobile/components/header/header.vue

@@ -283,159 +283,47 @@ export default {
       // 给服务器发送一个字符串:
       socket.send('111');
     },
-
-    methods: {
-        CollapseBtn() {
-            this.collapse = !this.collapse;
-            this.CompanyList = [
-                {
-                    companyAddress: '测试地址0',
-                    companyId: 1,
-                    companyName: '测试公司0',
-                },
-            ];
-            bus.$emit('funCol', this.collapse);
-        },
-        confirmDelete() {
-            this.$store.commit('SET_TOKEN', '');
-            this.$store.commit('SET_companyList', '');
-            this.$store.commit('SET_USER', '');
-            this.$router.push('/login');
-        },
-        // showNewList(){
-        //   var url = "push/message/list";
-        //   var param = {
-        //     userId: sessionStorage.getItem('user'),
-        //     type: 1
-        //   };
-        //   this.axios.post(url, param).then(res => {
-        //     if (res.statusCode === "1") {
-        //       var data = res
-        //       this.NewList = data.data.records?data.data.records:[]
-        //     }
-        //   });
-        // },
-        createWebSocket() {
-            try {
-                // 创建Web Socket 连接
-                socket = new WebSocket(this.wsCfg.url + '?currentUserId=' + JSON.parse(sessionStorage.getItem('user')));
-                // 初始化事件
-                this.initEventHandle(socket);
-                this.test();
-            } catch (e) {
-                // 出错时重新连接
-                this.reconnect(this.wsCfg.url + '?currentUserId=' + JSON.parse(sessionStorage.getItem('user')));
-            }
-        },
-        initEventHandle(socket) {
-            // 连接关闭时触发
-            socket.onclose = () => {
-                console.log('连接关闭');
-            };
-            // 通信发生错误时触发
-            socket.onerror = () => {
-                // 重新创建长连接
-                this.reconnect();
-                console.log('通信错误');
-            };
-            // 连接建立时触发
-            socket.onopen = () => {
-                console.log('连接成功');
-            };
-            // 客户端接收服务端数据时触发
-            socket.onmessage = msg => {
-                // 业务逻辑处理
-                console.log(JSON.parse(msg.data));
-                if (JSON.parse(msg.data).msgList) {
-                    this.NewList = JSON.parse(msg.data).msgList;
-                } else {
-                    this.NewList = [
-                        {
-                            id: 0,
-                            content: '暂无消息',
-                        },
-                    ];
-                }
-            };
-        },
-        showNewsOne(item) {
-            this.NewsContent = item.content;
-            this.dialogshowNews = true;
-            this.isnews = !this.isnews;
-            if (item.viewFlag == 0) {
-                var url = 'push/message/read';
-                var param = {
-                    ids: [item.id],
-                };
-                this.axios.post(url, param).then(result => {
-                    var data = result;
-                    if (data.statusCode === '1') {
-                    } else {
-                    }
-                });
-            }
-        },
-        reconnect() {
-            if (this.lockReconnect) {
-                return;
-            }
-            this.lockReconnect = true;
-
-            //没连接上会一直重连,设置延迟避免请求过多
-            setTimeout(() => {
-                this.lockReconnect = false;
-                this.createWebSocket(this.wsCfg.url + '?currentUserId=' + JSON.parse(sessionStorage.getItem('user')));
-            }, 60000);
-        },
-        test() {
-            // 给服务器发送一个字符串:
-            socket.send('111');
-        },
-        retreat() {
-            var that = this;
-            this.$confirm('您确定要退出登录吗?', '退出登录', {
-                confirmButtonText: '确定',
-                cancelButtonText: '取消',
-                type: 'warning',
-            })
-                .then(async () => {
-                    that.confirmDelete();
-                    this.$refs.message.reset();
-                })
-                .catch(() => {
-                    this.$message({
-                        type: 'info',
-                        message: '已取消退出',
-                    });
-                });
-        },
-        //团队点击
-        handleCommand(command) {
-            this.$store.commit('SET_mtCompanyId', command.id);
-            sessionStorage.setItem('companyID', JSON.stringify(command));
-            this.CompanyClick = command.name;
-            var url = 'system/login/changeTeam';
-            var param = {
-                companyId: JSON.parse(sessionStorage.getItem('mtCompanyId')),
-                userId: JSON.parse(sessionStorage.getItem('user')),
-            };
-            console.warn('param-------------',param);
-            this.axios.post(url, param).then(result => {
-                var data = result;
-                console.warn('data-------------',data);
-                if (data.statusCode === '1') {
-                    this.$store.commit('SET_TOKEN', result.data.token);
-                    this.$store.commit('SET_menus', result.data.menus);
-                    this.$store.commit('SET_USERROLE', result.data.role ? result.data.role.name : '');
-                    // window.location.reload();
-                } else {
-                    this.$message.error(result.message);
-                }
-            });
-        },
-        toUserAccount() {
-            this.$router.push('/UserAccount');
-        },
+    retreat() {
+      var that = this;
+      this.$confirm("您确定要退出登录吗?", "退出登录", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      })
+        .then(async () => {
+          that.confirmDelete();
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "已取消退出"
+          });
+        });
+    },
+    //团队点击
+    handleCommand(command){
+      this.$store.commit("SET_mtCompanyId",command.id);
+      sessionStorage.setItem('companyID',JSON.stringify(command))
+      this.CompanyClick = command.name;
+      var url = "system/login/changeTeam";
+      var param = {
+        companyId:JSON.parse(sessionStorage.getItem('mtCompanyId')),
+        userId:JSON.parse(sessionStorage.getItem("user"))
+      };
+      this.axios.post(url, param).then(result => {
+        var data = result;
+        if(data.statusCode==="1"){
+          this.$store.commit("SET_TOKEN",result.data.token);  
+          this.$store.commit("SET_menus",result.data.menus);
+          this.$store.commit("SET_USERROLE",result.data.role?result.data.role.name:'');
+          window.location.reload();
+        }else{
+          this.$message.error(result.message);
+        }
+      });
+    },
+    toUserAccount(){
+      this.$router.push("/UserAccount");
     },
   }
 };

+ 1 - 1
src/apps/mobile/views/data-bank/brands/brand/components/addEditDialog.vue

@@ -32,7 +32,7 @@
                     ></el-input>
                 </el-form-item>
                 <el-form-item label="排序:" prop="sort">
-                    <el-input placeholder="请排序" v-model="addEditDialogForm.sort" class="sort-input" maxlength="20"></el-input>
+                    <el-input placeholder="请排序" v-model="addEditDialogForm.sort" class="sort-input" maxlength="9"></el-input>
                 </el-form-item>
                 <el-form-item label="logo:" prop="file">
                     <p class="color666">图片大小不能超过3MB</p>

+ 1 - 1
src/apps/mobile/views/data-bank/classify/components/addEditDialog.vue

@@ -35,7 +35,7 @@
                     ></el-cascader>
                 </el-form-item>
                 <el-form-item label="排序:" prop="sort">
-                    <el-input placeholder="请排序" v-model="addEditDialogForm.sort" maxlength="20"></el-input>
+                    <el-input placeholder="请排序" v-model="addEditDialogForm.sort" maxlength="9"></el-input>
                 </el-form-item>
                 <el-form-item label="封面图:" prop="file">
                     <p class="color666">图片大小不能超过3MB</p>

+ 1 - 1
src/apps/mobile/views/data-bank/code/components/addEditDialog.vue

@@ -59,7 +59,7 @@
                     ></el-input>
                 </el-form-item>
                 <el-form-item label="排序:" prop="sort">
-                    <el-input placeholder="请排序" v-model="addEditDialogForm.sort" maxlength="20"></el-input>
+                    <el-input placeholder="请排序" v-model="addEditDialogForm.sort" maxlength="9"></el-input>
                 </el-form-item>
                 <el-form-item label="启用状态:" prop="statuz">
                     <el-switch

+ 1 - 1
src/apps/mobile/views/data-bank/official/components/addEditDialog.vue

@@ -23,7 +23,7 @@
                     </el-upload>
                 </el-form-item>
                 <el-form-item label="排序:" prop="sort" class="classify-input">
-                    <el-input placeholder="请排序" v-model="addEditDialogForm.sort" class="file-input"></el-input>
+                    <el-input placeholder="请排序" v-model="addEditDialogForm.sort" class="file-input" maxlength="9"></el-input>
                 </el-form-item>
                 <el-form-item label="是否展示:" prop="statuz">
                     <el-radio-group v-model="addEditDialogForm.statuz">

+ 1 - 1
src/apps/mobile/views/data-bank/operation/components/addEditDialog.vue

@@ -36,7 +36,7 @@
                     ></el-input>
                 </el-form-item>
                 <el-form-item label="排序:" prop="sort">
-                    <el-input placeholder="请排序" v-model="addEditDialogForm.sort" maxlength="20"></el-input>
+                    <el-input placeholder="请排序" v-model="addEditDialogForm.sort" maxlength="9"></el-input>
                 </el-form-item>
                 <el-form-item label="启用状态:" prop="statuz">
                     <el-switch

+ 30 - 3
src/apps/mobile/views/monitoring-center-bank/chat-room/chat-room.vue

@@ -210,6 +210,7 @@ export default {
             name: null,
             dataTable: null,
             $ws: null,
+            timer: '',
         };
     },
     created() {
@@ -228,6 +229,9 @@ export default {
     mounted() {
         this.initWebSocket();
     },
+    beforeDestroy() {
+      clearInterval(this.timer);
+    },
     methods: {
         imgOpen(item) {
             window.open(item);
@@ -262,10 +266,13 @@ export default {
         },
         wsOpen(e) {
             console.log('WebSocket连接成功...........');
+            this.initSeeionLogin();
             this.initLogin();
+            this.timer = setInterval(this.initLoopLogin, 10000);
         },
         wsClose: function(e) {
             console.log('WebSocket连接关闭...........');
+            clearInterval(this.timer);
         },
         wsError: function(e) {
             console.log('WebSocket连接出现错误............');
@@ -273,11 +280,10 @@ export default {
         wsMessage: function(e) {
             let msgData = JSON.parse(e.data);
             console.log('...消息...', msgData);
-            if (msgData && msgData.cmd === 'SYSTEM') {
+            if (msgData && msgData.cmd === 'INITROOM') {
                 let msgs = JSON.parse(msgData.msg);
-                console.log(msgs);
                 if (msgs && msgs.length > 0) {
-                    this.memberList = msgs;
+                    this.chatList = msgs;
                 }
             } else if (msgData && msgData.cmd === 'CHAT') {
                 this.content = '';
@@ -296,11 +302,31 @@ export default {
             obj.avatarUrl = JSON.parse(sessionStorage.getItem('avatarUrl'));
             obj.time = new Date().getTime();
             obj.fromUser = this.customerServiceId;
+            obj.userId = this.customerServiceId;
+            obj.name = '管理员';
+            obj.sessionid = this.sessionId;
+            obj.msg = '管理员进入该房间了!';
+            this.$ws.send(JSON.stringify(obj));
+        },
+        initSeeionLogin() {
+            let obj = {};
+            obj.cmd = 'LOGINALL';
+            obj.type = 1;
+            obj.avatarUrl = JSON.parse(sessionStorage.getItem('avatarUrl'));
+            obj.time = new Date().getTime();
+            obj.fromUser = this.customerServiceId;
+            obj.userId = this.customerServiceId;
             obj.name = '管理员';
             obj.sessionid = this.sessionId;
             obj.msg = '管理员进入该房间了!';
             this.$ws.send(JSON.stringify(obj));
         },
+        initLoopLogin() {
+            let obj = {};
+            obj.cmd = 'LOOP';
+            obj.userId = this.customerServiceId;
+            this.$ws.send(JSON.stringify(obj));
+        },
         sendMessage() {
             if (!window.WebSocket) {
                 return;
@@ -314,6 +340,7 @@ export default {
             obj.avatarUrl = JSON.parse(sessionStorage.getItem('avatarUrl'));
             obj.time = new Date().getTime();
             obj.fromUser = this.customerServiceId;
+            obj.userId = this.customerServiceId;
             obj.name = '管理员';
             obj.sessionid = this.sessionId;
             obj.msg = this.content;

+ 13 - 5
src/apps/mobile/views/monitoring-center-bank/index.vue

@@ -62,10 +62,10 @@
                     <el-table-column prop="statuz" label="诊单状态">
                         <template slot-scope="scope">
                             <span v-if="scope.row.colorGrade == 1 && scope.row.acceptStatus == 0" style="color:#ff9999">{{scope.row.statuz | caseStatusPipe(scope.row.dataTable)}}</span>
-                            <span v-if="scope.row.colorGrade == 2 && scope.row.acceptStatus == 0" style="color:#ff6666">{{scope.row.statuz | caseStatusPipe(scope.row.dataTable)}}</span>
-                            <span v-if="scope.row.colorGrade == 3 && scope.row.acceptStatus == 0" style="color:#ff1a1a">{{scope.row.statuz | caseStatusPipe(scope.row.dataTable)}}</span>
-                            <span v-if="scope.row.colorGrade >= 4 && scope.row.acceptStatus == 0" style="color:#e60000">{{scope.row.statuz | caseStatusPipe(scope.row.dataTable)}}</span>
-                            <span v-if="scope.row.colorGrade == 0 && scope.row.acceptStatus != 0" >{{scope.row.statuz | caseStatusPipe(scope.row.dataTable)}}</span>
+                            <span v-else-if="scope.row.colorGrade == 2 && scope.row.acceptStatus == 0" style="color:#ff6666">{{scope.row.statuz | caseStatusPipe(scope.row.dataTable)}}</span>
+                            <span v-else-if="scope.row.colorGrade == 3 && scope.row.acceptStatus == 0" style="color:#ff1a1a">{{scope.row.statuz | caseStatusPipe(scope.row.dataTable)}}</span>
+                            <span v-else-if="scope.row.colorGrade >= 4 && scope.row.acceptStatus == 0" style="color:#e60000">{{scope.row.statuz | caseStatusPipe(scope.row.dataTable)}}</span>
+                            <span v-else >{{scope.row.statuz | caseStatusPipe(scope.row.dataTable)}}</span>
                         </template>
                     </el-table-column>
                     <el-table-column prop="customerName" label="接单客服"></el-table-column>
@@ -206,13 +206,20 @@ export default {
                     value: '8',
                     label: '拒绝接单'
                 }]
-            }]
+            }],
+            timer: ''
         };
     },
     created() {
         this.queryListData();
         this.userId = this.$userId();
     },
+    mounted() {
+      this.timer = setInterval(this.queryListData, 60000);
+    },
+    beforeDestroy() {
+      clearInterval(this.timer);
+    },
     methods: {
         queryListData() {
             this.listLoading = true;
@@ -252,6 +259,7 @@ export default {
         reset() {
             this.searchForm = {};
             this.page.pageNum = 1;
+            this.statuz = null;
             this.queryListData();
         },
         selectColumn(selection) {