miaofuhao %!s(int64=10) %!d(string=před) měsíci
rodič
revize
2ed4cc6804

+ 3 - 0
.env.development

7
 # 若依管理系统/开发环境 http://192.168.1.15:8010/  http://123.56.29.119:8080
7
 # 若依管理系统/开发环境 http://192.168.1.15:8010/  http://123.56.29.119:8080
8
 
8
 
9
 VITE_APP_BASE_API = 'http://39.164.159.226:8120/'
9
 VITE_APP_BASE_API = 'http://39.164.159.226:8120/'
10
+# VITE_APP_BASE_API = 'http://222.139.29.127:8120/'
11
+
10
 
12
 
11
 # VITE_APP_BASE_WS = '39.164.159.226:8010/'
13
 # VITE_APP_BASE_WS = '39.164.159.226:8010/'
12
 # VITE_APP_BASE_WS = 'ws://192.168.1.15:8010/'
14
 # VITE_APP_BASE_WS = 'ws://192.168.1.15:8010/'
13
 # VITE_APP_BASE_WS = 'ws://192.168.8.17:9000/ws'
15
 # VITE_APP_BASE_WS = 'ws://192.168.8.17:9000/ws'
16
+# VITE_APP_BASE_WS = 'ws://222.139.29.127:9000/ws'
14
 VITE_APP_BASE_WS = 'ws://192.168.1.19:9000/ws'
17
 VITE_APP_BASE_WS = 'ws://192.168.1.19:9000/ws'
15
 
18
 
16
 # VITE_APP_PHONE_TYPE = 'SIP'
19
 # VITE_APP_PHONE_TYPE = 'SIP'

+ 3 - 3
.env.production

4
 # 生产环境配置
4
 # 生产环境配置
5
 VITE_APP_ENV = 'production'
5
 VITE_APP_ENV = 'production'
6
 
6
 
7
-# 若依管理系统/生产环境
8
-VITE_APP_BASE_API = 'http://192.168.0.78:8120/'
9
-VITE_APP_BASE_WS = 'ws://192.168.0.78:9000/ws'
7
+# 若依管理系统/生产环境 
8
+VITE_APP_BASE_API = 'http://172.16.211.153:8120/'
9
+VITE_APP_BASE_WS = 'ws://172.16.211.153:9000/ws'
10
 
10
 
11
 VITE_APP_PHONE_TYPE = 'PHONE'
11
 VITE_APP_PHONE_TYPE = 'PHONE'
12
 VITE_APP_CALL_TYPE = 'VIOCE'
12
 VITE_APP_CALL_TYPE = 'VIOCE'

+ 8 - 3
.env.staging

7
 # 若依管理系统/生产环境
7
 # 若依管理系统/生产环境
8
 # VITE_APP_BASE_API = 'http://192.168.1.15:8010/'
8
 # VITE_APP_BASE_API = 'http://192.168.1.15:8010/'
9
 
9
 
10
-VITE_APP_BASE_API = 'http://39.164.159.226:8120/'
11
-
12
-VITE_APP_BASE_WS = 'ws://192.168.1.19:9000/ws'
10
+VITE_APP_BASE_API = 'http://222.139.29.127:8120/'
13
 
11
 
12
+VITE_APP_BASE_WS = 'ws://222.139.29.127:9000/ws'
14
 
13
 
14
+VITE_APP_PHONE_TYPE = 'PHONE'
15
+VITE_APP_CALL_TYPE = 'VIOCE'
16
+VITE_APP_SIP_URL = 'ws://192.168.1.19:5066'
17
+VITE_APP_SIP_IP = '192.168.1.19'
18
+VITE_APP_SIP_PASSWORD = '1234'
19
+VITE_APP_SIP_CONTACT_URL = "@192.168.1.19;transport=ws"
15
 # 是否在打包时开启压缩,支持 gzip 和 brotli
20
 # 是否在打包时开启压缩,支持 gzip 和 brotli
16
 VITE_BUILD_COMPRESS = gzip
21
 VITE_BUILD_COMPRESS = gzip

binární
0218-1dist.zip


+ 105 - 0
nginx.conf

1
+user www-data;
2
+worker_processes auto;
3
+pid /run/nginx.pid;
4
+include /etc/nginx/modules-enabled/*.conf;
5
+
6
+events {
7
+	worker_connections 768;
8
+	# multi_accept on;
9
+}
10
+
11
+http {
12
+
13
+	##
14
+	# Basic Settings
15
+	##
16
+
17
+	sendfile on;
18
+	tcp_nopush on;
19
+	types_hash_max_size 2048;
20
+	# server_tokens off;
21
+
22
+	# server_names_hash_bucket_size 64;
23
+	# server_name_in_redirect off;
24
+
25
+	include /etc/nginx/mime.types;
26
+	default_type application/octet-stream;
27
+
28
+	##
29
+	# SSL Settings
30
+	##
31
+
32
+	ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # Dropping SSLv3, ref: POODLE
33
+	ssl_prefer_server_ciphers on;
34
+
35
+	##
36
+	# Logging Settings
37
+	##
38
+
39
+	access_log /var/log/nginx/access.log;
40
+	error_log /var/log/nginx/error.log;
41
+
42
+	##
43
+	# Gzip Settings
44
+	##
45
+	server {
46
+		listen       8121;
47
+			server_name  localhost;
48
+	
49
+		location / {
50
+			root   /home/website/web;
51
+			try_files $uri $uri/ /index.html;
52
+			index  index.html index.htm;
53
+			}
54
+			
55
+		location /prod-api/{
56
+			proxy_set_header Host $http_host;
57
+			proxy_set_header X-Real-IP $remote_addr;
58
+			proxy_set_header REMOTE-HOST $remote_addr;
59
+			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
60
+			proxy_pass http://localhost:8120/;
61
+		}
62
+		
63
+		error_page   500 502 503 504  /50x.html;
64
+			location = /50x.html {
65
+				root   html;
66
+			}
67
+	}
68
+	gzip on;
69
+
70
+	# gzip_vary on;
71
+	# gzip_proxied any;
72
+	# gzip_comp_level 6;
73
+	# gzip_buffers 16 8k;
74
+	# gzip_http_version 1.1;
75
+	# gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
76
+
77
+	##
78
+	# Virtual Host Configs
79
+	##
80
+
81
+	include /etc/nginx/conf.d/*.conf;
82
+	include /etc/nginx/sites-enabled/*;
83
+}
84
+
85
+
86
+#mail {
87
+#	# See sample authentication script at:
88
+#	# http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript
89
+#
90
+#	# auth_http localhost/auth.php;
91
+#	# pop3_capabilities "TOP" "USER";
92
+#	# imap_capabilities "IMAP4rev1" "UIDPLUS";
93
+#
94
+#	server {
95
+#		listen     localhost:110;
96
+#		protocol   pop3;
97
+#		proxy      on;
98
+#	}
99
+#
100
+#	server {
101
+#		listen     localhost:143;
102
+#		protocol   imap;
103
+#		proxy      on;
104
+#	}
105
+#}

+ 7 - 1
src/components/main/drawer-phone/index.vue

164
 import defaultTubiao from '@/assets/images/defaultTubiao.png'
164
 import defaultTubiao from '@/assets/images/defaultTubiao.png'
165
 import { getCallSate,getUnprefixNuber} from '@/utils/index';
165
 import { getCallSate,getUnprefixNuber} from '@/utils/index';
166
 
166
 
167
-const router = useRouter();
167
+
168
 import {
168
 import {
169
     UserFilled,
169
     UserFilled,
170
     Phone,
170
     Phone,
185
     Notebook,
185
     Notebook,
186
     Mute
186
     Mute
187
 } from '@element-plus/icons-vue';
187
 } from '@element-plus/icons-vue';
188
+const router = useRouter()
188
 const showCallPanel = ref(false);
189
 const showCallPanel = ref(false);
189
 const searchQuery = ref('');
190
 const searchQuery = ref('');
190
 const searchContactQuery = ref('');
191
 const searchContactQuery = ref('');
249
 const callData = ref({});
250
 const callData = ref({});
250
 
251
 
251
 const initCall = (isPause = false) => {
252
 const initCall = (isPause = false) => {
253
+    
252
     if (!isPause) callDuration.value = '00:00:00'
254
     if (!isPause) callDuration.value = '00:00:00'
253
     // startTime.value = Date.now()
255
     // startTime.value = Date.now()
254
     if (timer) {
256
     if (timer) {
257
+        console.log('cleartimer',timer)
255
         clearInterval(timer);
258
         clearInterval(timer);
259
+        timer = null
256
     }
260
     }
257
 }
261
 }
258
 
262
 
298
         } else if (callDirection.value == 2 ) {
302
         } else if (callDirection.value == 2 ) {
299
             allState.value = 10
303
             allState.value = 10
300
         }
304
         }
305
+        
306
+        console.log('timer',timer)
301
         startTime.value = Date.now()
307
         startTime.value = Date.now()
302
         if (!timer) timer = window.setInterval(updateCallDuration, 1000);
308
         if (!timer) timer = window.setInterval(updateCallDuration, 1000);
303
     } else if (state === 4) {
309
     } else if (state === 4) {

+ 1 - 1
src/components/page-content/src/page-content.vue

77
         <el-tag class="ml-2" @click="handleRecordCall(scope.row)">
77
         <el-tag class="ml-2" @click="handleRecordCall(scope.row)">
78
           <!-- getOfffixNuber(scope.row.callType==1 ? scope.row.caller : scope.row.callee) -->
78
           <!-- getOfffixNuber(scope.row.callType==1 ? scope.row.caller : scope.row.callee) -->
79
           {{
79
           {{
80
-            getOfffixNuber(scope.row.caller)
80
+            getOfffixNuber(scope.row.callType==1 ? scope.row.caller : scope.row.callee)
81
           }}
81
           }}
82
         </el-tag>
82
         </el-tag>
83
       </template>
83
       </template>

+ 1 - 1
src/store/commonSelect/common.js

32
             // this.templateListData = getUserSelcet(templateResult.data, 'templateCode', 'templateId')
32
             // this.templateListData = getUserSelcet(templateResult.data, 'templateCode', 'templateId')
33
             // this.templateNameListData = getUserSelcet(templateResult.data, 'templateName', 'templateId', ['content'])
33
             // this.templateNameListData = getUserSelcet(templateResult.data, 'templateName', 'templateId', ['content'])
34
             const deptResult = await getPageListData('/common/dept') // /common/dept
34
             const deptResult = await getPageListData('/common/dept') // /common/dept
35
-            this.deptListData = arrayToTree(deptResult.data, 100)   
35
+            this.deptListData = arrayToTree(deptResult.data, 0)   
36
             const userResult = await getPageListData('/common/user')    //  /common/user
36
             const userResult = await getPageListData('/common/user')    //  /common/user
37
             this.userData = userResult.data
37
             this.userData = userResult.data
38
             this.userListData = getUserSelcet(userResult.data, 'nickName', 'userName')
38
             this.userListData = getUserSelcet(userResult.data, 'nickName', 'userName')

+ 145 - 51
src/views/main/patientFile/patientFileList/cpns/patientDetail/patientDetail.vue

7
       <el-col v-if="showType" :span="18">
7
       <el-col v-if="showType" :span="18">
8
         <div class="info-card">
8
         <div class="info-card">
9
           <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
9
           <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
10
-            
10
+            <el-tab-pane label="变更日志" name="six">
11
+              <log :patientId="patientId" @getLogs="getLogs" />
12
+            </el-tab-pane>
13
+
11
             <el-tab-pane label="工单" name="third">
14
             <el-tab-pane label="工单" name="third">
12
-              
13
-              <!-- <operation-log></operation-log> -->
14
               <div>
15
               <div>
15
-                <!-- 表格 -->
16
                 <el-table
16
                 <el-table
17
-                  :data="tableData"
17
+                  :data="tableData2"
18
                   stripe
18
                   stripe
19
                   border
19
                   border
20
                   :default-sort="{ prop: 'date', order: 'ascending' }"
20
                   :default-sort="{ prop: 'date', order: 'ascending' }"
21
                   @sort-change="handleSortChange"
21
                   @sort-change="handleSortChange"
22
                 >
22
                 >
23
-                  <el-table-column prop="date" label="日期" sortable></el-table-column>
24
-                  <el-table-column prop="name" label="姓名"></el-table-column>
25
-                  <el-table-column prop="address" label="地址"></el-table-column>
26
-                </el-table>
23
+                <el-table-column  prop="workordercode" label="工单编号">
24
+                  <template #default="scope">
25
+                    <a style="color: blue" @click="openWorkHandle(scope.row)">{{ scope.row['workordercode'] }}</a>
26
+                  </template>
27
+                </el-table-column>
28
+                <el-table-column  prop="workordercatename" label="工单类型"></el-table-column>
29
+                <el-table-column  prop="content" label="工单内容"></el-table-column>
30
+                <el-table-column  prop="dealusername" label="受理人"></el-table-column>
31
+                <el-table-column  prop="createtime" label="受理时间"></el-table-column>
32
+                <el-table-column  prop="limittime" label="办理时限"></el-table-column>
33
+                <el-table-column  prop="workorderstatename" label="状态"></el-table-column></el-table>
27
             
34
             
28
-                <!-- 分页组件 -->
29
                 <el-pagination
35
                 <el-pagination
30
                   style="float: right; margin-top: 15px;"
36
                   style="float: right; margin-top: 15px;"
31
-                  @size-change="handleSizeChange"
32
-                  @current-change="handleCurrentChange"
33
-                  :current-page="currentPage"
37
+                  @size-change="handleSizeChange2"
38
+                  @current-change="handleCurrentChange2"
39
+                  :current-page="currentPage2"
34
                   :page-sizes="[10, 20, 30]"
40
                   :page-sizes="[10, 20, 30]"
35
                   :page-size="pageSize"
41
                   :page-size="pageSize"
36
                   layout="total, sizes, prev, pager, next, jumper"
42
                   layout="total, sizes, prev, pager, next, jumper"
37
-                  :total="tableData.length"
43
+                  :total="total2"
38
                 >
44
                 >
39
                 </el-pagination>
45
                 </el-pagination>
40
               </div>
46
               </div>
41
             </el-tab-pane>
47
             </el-tab-pane>
48
+
42
             <el-tab-pane label="通话记录" name="fourth">
49
             <el-tab-pane label="通话记录" name="fourth">
43
               <div>
50
               <div>
44
-                <!-- 表格 -->
45
                 <el-table
51
                 <el-table
46
                   :data="tableData"
52
                   :data="tableData"
47
                   stripe
53
                   stripe
49
                   :default-sort="{ prop: 'date', order: 'ascending' }"
55
                   :default-sort="{ prop: 'date', order: 'ascending' }"
50
                   @sort-change="handleSortChange"
56
                   @sort-change="handleSortChange"
51
                 >
57
                 >
52
-                  <el-table-column prop="date" label="日期" sortable></el-table-column>
53
-                  <el-table-column prop="name" label="姓名"></el-table-column>
54
-                  <el-table-column prop="address" label="地址"></el-table-column>
58
+                <el-table-column label="电话号码">
59
+                  <template #default="scope">
60
+                    {{ getOfffixNuber(scope.row.callType==1 ? scope.row.caller : scope.row.callee) }}
61
+                  </template>
62
+                </el-table-column>
63
+                <el-table-column label="坐席工号">
64
+                  <template #default="scope">
65
+                    {{ scope.row.callType==2 ? scope.row.callerAgent : scope.row.calleeAgent }}
66
+                  </template>
67
+                </el-table-column>
68
+                <el-table-column label="坐席分机号">
69
+                  <template #default="scope">
70
+                    {{ scope.row.callType==2 ? scope.row.caller : scope.row.callee }}
71
+                  </template>
72
+                </el-table-column>
73
+                <el-table-column label="呼叫状态">
74
+                  <template #default="scope">
75
+                    {{ getCallSate(scope.row.callType, scope.row.isAnswer) }}
76
+                  </template>
77
+                </el-table-column>
78
+                <el-table-column prop="answerTime" label="通话开始时间"></el-table-column>
79
+                <el-table-column prop="hangupTime" label="通话结束时间"></el-table-column>
80
+                <el-table-column label="通话时长">
81
+                  <template #default="scope">
82
+                    {{ getTimeLimit(scope.row.answerTime, scope.row.hangupTime) }}
83
+                  </template>
84
+                </el-table-column>
85
+                 
55
                 </el-table>
86
                 </el-table>
56
             
87
             
57
-                <!-- 分页组件 -->
58
                 <el-pagination
88
                 <el-pagination
59
                   style="float: right; margin-top: 15px;"
89
                   style="float: right; margin-top: 15px;"
60
                   @size-change="handleSizeChange"
90
                   @size-change="handleSizeChange"
63
                   :page-sizes="[10, 20, 30]"
93
                   :page-sizes="[10, 20, 30]"
64
                   :page-size="pageSize"
94
                   :page-size="pageSize"
65
                   layout="total, sizes, prev, pager, next, jumper"
95
                   layout="total, sizes, prev, pager, next, jumper"
66
-                  :total="tableData.length"
96
+                  :total="total"
67
                 >
97
                 >
68
                 </el-pagination>
98
                 </el-pagination>
69
               </div>
99
               </div>
70
-              <!-- <knowledge-list></knowledge-list>  -->
71
             </el-tab-pane>
100
             </el-tab-pane>
72
     
101
     
73
-            <el-tab-pane label="变更日志" name="six">
74
-              <log :patientId="patientId" @getLogs="getLogs" />
75
-            </el-tab-pane>
102
+            
76
           </el-tabs>
103
           </el-tabs>
77
         </div>
104
         </div>
78
       </el-col>
105
       </el-col>
93
 import log from "../logs/log.vue";
120
 import log from "../logs/log.vue";
94
 
121
 
95
 import patientIcon from '@/assets/images/patientIcon.png'
122
 import patientIcon from '@/assets/images/patientIcon.png'
96
-import { useRoute } from 'vue-router';
123
+import { useRoute,useRouter } from 'vue-router';
97
 import { getPatientInfo } from '@/api/patient/patient';
124
 import { getPatientInfo } from '@/api/patient/patient';
98
-import { userDecryptToAsterisk } from '@/utils/aes'
125
+import { userDecryptToAsterisk,userDecrypt } from '@/utils/aes'
99
 import { nations, patientStatus, sex, patientSource, phoneStatus } from "@/utils/commonDic.js";
126
 import { nations, patientStatus, sex, patientSource, phoneStatus } from "@/utils/commonDic.js";
100
 import { getStrById, areaTrees } from "@/utils/area.js";
127
 import { getStrById, areaTrees } from "@/utils/area.js";
101
 import { ArrayToMap } from '@/utils/tools'
128
 import { ArrayToMap } from '@/utils/tools'
105
 import { ElMessage } from 'element-plus'
132
 import { ElMessage } from 'element-plus'
106
 import { Avatar, Edit } from '@element-plus/icons-vue'
133
 import { Avatar, Edit } from '@element-plus/icons-vue'
107
 import { getPageListData } from '@/api/main/system/system';
134
 import { getPageListData } from '@/api/main/system/system';
108
-
109
-// 工单开始
135
+import { getCallSate, getUnprefixNuber,getOfffixNuber } from '@/utils/index';
136
+const router = useRoute();
137
+const routerPath = useRouter();
138
+// 通话记录开始
110
 // 模拟表格数据
139
 // 模拟表格数据
111
-const tableData = ref([
112
-  {
113
-    date: '2024-01-01',
114
-    name: '张三',
115
-    address: '北京市朝阳区'
116
-  },
117
-  {
118
-    date: '2024-01-02',
119
-    name: '李四',
120
-    address: '上海市浦东新区'
121
-  },
122
-  {
123
-    date: '2024-01-03',
124
-    name: '王五',
125
-    address: '广州市天河区'
126
-  },
127
-  // 可以添加更多数据
128
-])
140
+const { proxy } = getCurrentInstance();
141
+const total = ref(0)
142
+const tableData = ref([])
143
+const queryParams = ref({
144
+  pageNum: 1,
145
+  pageSize: 10,
146
+})
147
+function getCalllog(phone) {
148
+  queryParams.value.phone = phone
149
+  getPageListData('/call/calllog',queryParams.value).then((res)=>{
150
+    tableData.value = []
151
+    total.value = 0
152
+    if (res.data.length>0) {
153
+      tableData.value = res.data
154
+      console.log(tableData.value)
155
+      total.value = res.total
156
+    }
157
+  })
158
+}
159
+function getTimeLimit(startTime, endTime) {
160
+  return proxy.getTimeDifference(startTime, endTime);
161
+}
162
+
129
 
163
 
130
 // 当前页码
164
 // 当前页码
131
 const currentPage = ref(1)
165
 const currentPage = ref(1)
135
 // 处理每页显示条数变化
169
 // 处理每页显示条数变化
136
 const handleSizeChange = (newSize) => {
170
 const handleSizeChange = (newSize) => {
137
   pageSize.value = newSize
171
   pageSize.value = newSize
172
+  queryParams.value.pageSize = newSize
173
+  getCalllog(queryParams.value.phone)
138
 }
174
 }
139
 
175
 
140
 // 处理当前页码变化
176
 // 处理当前页码变化
141
 const handleCurrentChange = (newPage) => {
177
 const handleCurrentChange = (newPage) => {
142
   currentPage.value = newPage
178
   currentPage.value = newPage
179
+  queryParams.value.pageNum = newPage
180
+  getCalllog(queryParams.value.phone)
143
 }
181
 }
144
 
182
 
145
 // 处理表格排序变化
183
 // 处理表格排序变化
147
   console.log(`排序字段: ${prop}, 排序顺序: ${order}`)
185
   console.log(`排序字段: ${prop}, 排序顺序: ${order}`)
148
   // 这里可以根据 prop 和 order 对 tableData 进行排序
186
   // 这里可以根据 prop 和 order 对 tableData 进行排序
149
 }
187
 }
150
-// 工单结束
188
+// 通话记录结束
151
 
189
 
190
+// 工单开始
191
+const total2 = ref(0)
192
+const tableData2 = ref([])
193
+const queryParams2 = ref({
194
+  listType: 0,
195
+  pageNum: 1,
196
+  pageSize: 10,
197
+})
198
+function getWorkorder(phone) {
199
+  queryParams2.value.callnum = phone
200
+  getPageListData('/order/workorder',queryParams2.value).then((res)=>{
201
+    tableData2.value = []
202
+    total2.value = 0
203
+    if (res.data.length>0) {
204
+      tableData2.value = res.data
205
+      console.log(tableData2.value)
206
+      total2.value = res.total
207
+    }
208
+  })
209
+}
210
+// 处理弹出框
211
+function openWorkHandle(rowData) { 
212
+  let type = 'djb'
213
+  let query = {
214
+    workordercode : rowData.workordercode,
215
+    type,
216
+    listType:0
217
+  }
218
+  sessionStorage.setItem('workQuery', JSON.stringify(query))
219
+  routerPath.push({ path : '/workHandle' }) 
220
+}
221
+// 当前页码
222
+const currentPage2 = ref(1)
223
+// 每页显示条数
224
+const pageSize2 = ref(10)
152
 
225
 
153
-const activeName = ref('third')
226
+// 处理每页显示条数变化
227
+const handleSizeChange2 = (newSize) => {
228
+  pageSize.value = newSize
229
+  queryParams2.value.pageSize = newSize
230
+  getWorkorder(queryParams2.value.phone)
231
+}
232
+
233
+// 处理当前页码变化
234
+const handleCurrentChange2 = (newPage) => {
235
+  queryParams2.value.pageNum = newPage
236
+  getWorkorder(queryParams2.value.phone)
237
+}
238
+
239
+// 工单结束
240
+
241
+const activeName = ref('six')
154
 function handleClick() {
242
 function handleClick() {
155
 }
243
 }
156
 
244
 
157
-const router = useRoute();
245
+
158
 
246
 
159
 let detail = ref({});
247
 let detail = ref({});
160
 
248
 
161
 const patientId = ref(router.query.patientId || router.query.id);
249
 const patientId = ref(router.query.patientId || router.query.id);
162
-console.log(patientId.value)
250
+
163
 const props = defineProps({
251
 const props = defineProps({
164
   descColumn: {
252
   descColumn: {
165
     type: Number,
253
     type: Number,
177
 watch(props, (nweProps) => {
265
 watch(props, (nweProps) => {
178
     if (nweProps.patientCallNumber) {
266
     if (nweProps.patientCallNumber) {
179
       customerDetail(nweProps.patientCallNumber)
267
       customerDetail(nweProps.patientCallNumber)
268
+      getCalllog(nweProps.patientCallNumber)
269
+      getWorkorder(nweProps.patientCallNumber)
180
     }
270
     }
181
 });
271
 });
182
 
272
 
196
 async function customerDetail(customerno) {
286
 async function customerDetail(customerno) {
197
     const resultData = await getPageListData('/patient/patient',{phoneNumber:customerno});
287
     const resultData = await getPageListData('/patient/patient',{phoneNumber:customerno});
198
     detail.value = resultData.data[0]
288
     detail.value = resultData.data[0]
199
-    console.log(detail.value);
289
+    console.log('customerDetail',detail.value);
200
 }
290
 }
201
 const getDetail = async () => {
291
 const getDetail = async () => {
202
   const res = await getPatientInfo(patientId.value)
292
   const res = await getPatientInfo(patientId.value)
203
   detail.value = res.data
293
   detail.value = res.data
294
+  console.log('getPatientInfo',detail.value);
295
+  getCalllog(userDecrypt(detail.value.phoneNumber))
296
+  getWorkorder(userDecrypt(detail.value.phoneNumber))
297
+  
204
 }
298
 }
205
 onBeforeMount(async () => {
299
 onBeforeMount(async () => {
206
   if (props.patientCallNumber) {
300
   if (props.patientCallNumber) {

+ 6 - 1
src/views/main/phone/index.vue

294
 import knowledgeList from "@/views/main/knowledgeBase/knowledgeList/cpns/konwlegelist/konwlegelist";
294
 import knowledgeList from "@/views/main/knowledgeBase/knowledgeList/cpns/konwlegelist/konwlegelist";
295
 
295
 
296
 import { max } from 'lodash';
296
 import { max } from 'lodash';
297
+import { getOfffixNuber } from '@/utils/index';
298
+
299
+const router = useRouter()
297
 let { proxy } = getCurrentInstance()
300
 let { proxy } = getCurrentInstance()
298
 const showCallPanel = ref(false);
301
 const showCallPanel = ref(false);
299
 const searchQuery = ref('');
302
 const searchQuery = ref('');
300
 console.log('proxy', proxy.$route);
303
 console.log('proxy', proxy.$route);
301
 const telNumber = ref(proxy.$route.query.phone || proxy.$route.query.callNumber || proxy.$route.params.callNumber);
304
 const telNumber = ref(proxy.$route.query.phone || proxy.$route.query.callNumber || proxy.$route.params.callNumber);
305
+
302
 proxy.$route.meta.title = telNumber.value || '来电弹屏';
306
 proxy.$route.meta.title = telNumber.value || '来电弹屏';
303
 const callid = ref(proxy.$route.query.callid || 0);
307
 const callid = ref(proxy.$route.query.callid || 0);
304
 onMounted(() => {
308
 onMounted(() => {
506
     if (!telNumber.value) {
510
     if (!telNumber.value) {
507
         return;
511
         return;
508
     }
512
     }
509
-
513
+    telNumber.value = getOfffixNuber(telNumber.value)
510
     profile.value.phone = telNumber.value;
514
     profile.value.phone = telNumber.value;
511
     form.value.phone = telNumber.value;
515
     form.value.phone = telNumber.value;
512
 
516
 
578
                 if (data.state === 'success') {
582
                 if (data.state === 'success') {
579
                     ElMessage.success('提交成功');
583
                     ElMessage.success('提交成功');
580
                     resetForm()
584
                     resetForm()
585
+                    router.push({ path: '/' })
581
                 } else {
586
                 } else {
582
                     ElMessage.error(data.message || '提交失败');
587
                     ElMessage.error(data.message || '提交失败');
583
                 }
588
                 }

+ 1 - 0
src/views/main/system/dept/dept.vue

7
     />
7
     />
8
     <page-content
8
     <page-content
9
       ref="pageContentRef"
9
       ref="pageContentRef"
10
+      pageName="/system/dept"
10
       :contentTableConfig="contentTableConfig"
11
       :contentTableConfig="contentTableConfig"
11
       rowKey="deptId"
12
       rowKey="deptId"
12
       :isExport="false"
13
       :isExport="false"

+ 4 - 4
src/views/main/telephone/callRecord/callRecord.vue

16
     >
16
     >
17
     
17
     
18
       <template #recordAgentHandler="scope">
18
       <template #recordAgentHandler="scope">
19
-        <!-- {{ scope.row.callType==2 ? scope.row.callerAgent : scope.row.calleeAgent }} -->
20
-        {{scope.row.calleeAgent }}
19
+        {{ scope.row.callType==2 ? scope.row.callerAgent : scope.row.calleeAgent }}
20
+        <!-- {{scope.row.calleeAgent }} -->
21
       </template>
21
       </template>
22
       <template #recordCallerHandler="scope">
22
       <template #recordCallerHandler="scope">
23
-        <!-- {{ scope.row.callType==2 ? scope.row.caller : scope.row.callee }} -->
24
-        {{scope.row.callee }}
23
+        {{ scope.row.callType==2 ? scope.row.caller : scope.row.callee }}
24
+        <!-- {{scope.row.callee }} -->
25
       </template>
25
       </template>
26
       <template #recordCallStateHandler="scope">
26
       <template #recordCallStateHandler="scope">
27
         {{ getCallSate(scope.row.callType, scope.row.isAnswer) }}
27
         {{ getCallSate(scope.row.callType, scope.row.isAnswer) }}