From 52667f3d9c3be15dd457bb5f8dc6232cb126b09f Mon Sep 17 00:00:00 2001 From: Kane Date: Tue, 9 May 2023 23:45:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BA=86=E6=A1=8C=E9=9D=A2?= =?UTF-8?q?=E9=9C=B8=E5=B1=8F=E9=A1=B5=E9=9D=A2=EF=BC=9A=201=E3=80=81?= =?UTF-8?q?=E8=AF=BB=E5=8F=96=E5=B7=B2=E7=99=BB=E5=BD=95=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E7=9A=84=E4=BB=A3=E7=A0=81=EF=BC=9B=202=E3=80=81=E6=A0=B9?= =?UTF-8?q?=E6=8D=AE=E5=B7=B2=E7=99=BB=E5=BD=95=E4=BF=A1=E6=81=AF=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E9=83=A8=E9=97=A8=E4=B8=9A=E7=BB=A9=E7=9A=84=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=EF=BC=9B=203=E3=80=81=E5=B0=86=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E7=BB=93=E6=9E=84=E4=BB=A3=E7=A0=81=E7=A7=BB=E5=88=B0=20types?= =?UTF-8?q?=20=E7=9B=AE=E5=BD=95=E4=B8=8B=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/utils/api/localStorage.ts | 33 ++++++++++++++++--- .../task_schedule/src/utils/archievement.ts | 1 + .../src/views/DesktopArchievement.vue | 13 +++++--- code/web/task_schedule/src/views/Login.vue | 21 +++++++++--- .../account/StaffInfoQueryController.java | 4 +-- .../account/TeleSalerQueryResult.java | 32 +++++++++--------- 6 files changed, 72 insertions(+), 32 deletions(-) diff --git a/code/web/task_schedule/src/utils/api/localStorage.ts b/code/web/task_schedule/src/utils/api/localStorage.ts index eda78ad..cef172f 100644 --- a/code/web/task_schedule/src/utils/api/localStorage.ts +++ b/code/web/task_schedule/src/utils/api/localStorage.ts @@ -8,6 +8,7 @@ * Copyright (c) ${2022} by Kane, All Rights Reserved. */ import { StaffInfo } from "../../types/cpicxim/StaffInfo.js"; +import { type TelSaler } from "@/types/cpicxim/TelSaler.js"; const STUFF_ITEM = "stuff_info"; const CALLER_ITEM = "call_info"; @@ -62,14 +63,38 @@ function getUserType(): string return userType; } -function saveCallerInfo( callerCode: string ): void +function saveCallerInfo( callerInfo: TelSaler ): void { - window.localStorage.setItem( CALLER_ITEM, callerCode ); + const json = JSON.stringify( callerInfo ); + + window.localStorage.setItem( CALLER_ITEM, json ); } -function getCallerInfo(): string +function getCallerInfo(): TelSaler { - return window.localStorage.getItem( CALLER_ITEM ) ?? ""; + const json = window.localStorage.getItem( CALLER_ITEM ) ?? ""; + + let storeCallerInfo = null; + + try + { + storeCallerInfo = JSON.parse( json ); + } + catch ( error ) + { + storeCallerInfo = {}; + } + + const callInfo: TelSaler = { + telSalerCode: storeCallerInfo.telSalerCode ?? "", + telSalerName: storeCallerInfo.telSalerName ?? "", + teamCode: storeCallerInfo.teamCode ?? "", + teamName: storeCallerInfo.teamName ?? "", + departmentCode: storeCallerInfo.departmentCode ?? "", + departmentName: storeCallerInfo.departmentName ?? "", + }; + + return callInfo; } function clearCallerInfo(): void diff --git a/code/web/task_schedule/src/utils/archievement.ts b/code/web/task_schedule/src/utils/archievement.ts index 603a4ae..91a2cce 100644 --- a/code/web/task_schedule/src/utils/archievement.ts +++ b/code/web/task_schedule/src/utils/archievement.ts @@ -34,6 +34,7 @@ function queryDepartmentArchievement( departmentInfo: Department, render: any ): instance.request({ method: "post", url: API_URL.URL_DEPARTMENT_ARCHIEVEMENT, + data: departmentInfo, }) .then(( response ) => { diff --git a/code/web/task_schedule/src/views/DesktopArchievement.vue b/code/web/task_schedule/src/views/DesktopArchievement.vue index 81b5bd3..60f8856 100644 --- a/code/web/task_schedule/src/views/DesktopArchievement.vue +++ b/code/web/task_schedule/src/views/DesktopArchievement.vue @@ -67,6 +67,7 @@ import ArchievementCompleteRateComponent from "@/components/ArchievementComplete import HonorListComponent from "@/components/HonorListComponent.vue"; import DishonorListComponent from "@/components/DishonorListComponent.vue"; import { logout } from "@/utils/account.js"; +import { type TelSaler } from "@/types/cpicxim/TelSaler"; export default { name: "DesktopArchievement", @@ -79,7 +80,7 @@ export default { setup() { const router = useRouter(); - const callerInfo = getCallerInfo(); + const callerInfo: TelSaler = getCallerInfo(); const ui = reactive({ chartData: [0,], // 业绩表 totalArchievement: 0, // 总业绩 @@ -134,7 +135,7 @@ export default { }; // 检查存储的登录信息,不存在则返回登录页面 - if ( callerInfo === "" ) + if ( callerInfo.telSalerCode === "" ) { ElMessage({ message: "登录信息失效,请重新登录!", @@ -147,16 +148,18 @@ export default { onBeforeMount(() => { + debugger; + const deparmentInfo:Department = { - departmentCode: "QDI", - departmentName: "续保业务部", + departmentCode: callerInfo.departmentCode, + departmentName: callerInfo.departmentName, }; queryDepartmentArchievement( deparmentInfo, renderData ); }); - return { ui, getTotalArchievement, renderData, logoutDesktopArchievement, }; + return { ui, callerInfo, getTotalArchievement, renderData, logoutDesktopArchievement, }; }, }; diff --git a/code/web/task_schedule/src/views/Login.vue b/code/web/task_schedule/src/views/Login.vue index 069a603..efc8bed 100644 --- a/code/web/task_schedule/src/views/Login.vue +++ b/code/web/task_schedule/src/views/Login.vue @@ -71,6 +71,7 @@ import { saveStaffInfo, getUserType, saveUserType, getCallerInfo, saveCallerInfo import { login, loginCaller, type LoginCallerInfo, type LoginCallerResult } from "@/utils/account"; import { ElMessage } from "element-plus"; import { StaffInfo } from "@/types/cpicxim/StaffInfo"; +import { TelSaler } from "@/types/cpicxim/TelSaler"; export default { name: "LoginPage", @@ -168,7 +169,6 @@ export default { telsaler_code: ui.account, }; - // debugger; // 登录 loginCaller( loginInfo ) // 调用接口成功 @@ -176,16 +176,27 @@ export default { { const data:LoginCallerResult = response.data ?? { success: false, }; + debugger; + // 查看標志位 if ( data.success === true ) { // 查询成功,显示一个提示,保存工号,并跳转路由 ElMessage({ - message: `验证成功,登录用户 ${data.tele_saler_name}`, + message: `验证成功,登录用户 ${data.tel_saler_name}`, type: "success", }); - saveCallerInfo( ui.account ); + const telsaler:TelSaler = { + telSalerCode: data.tel_saler_code, + telSalerName: data.tel_saler_name, + teamCode: data.team_code, + teamName: data.team_name, + departmentCode: data.department_code, + departmentName: data.department_name, + }; + + saveCallerInfo( telsaler ); router.push( "/desktop_archievement" ); } @@ -226,10 +237,10 @@ export default { const callInfo = getCallerInfo(); // 判断是否已经记录了坐席工号,有则提示已登录,然后跳转路由 - if ( callInfo !== "" ) + if ( callInfo.telSalerCode.length !== 0 ) { ElMessage({ - message: `已登录账号:${callInfo}`, + message: `已登录账号:${callInfo.telSalerName}`, type: "success", center: true, }); diff --git a/code/后端/desktop_archievement_backend/src/main/java/com/cpic/xim/web/controllers/account/StaffInfoQueryController.java b/code/后端/desktop_archievement_backend/src/main/java/com/cpic/xim/web/controllers/account/StaffInfoQueryController.java index 7ca579a..5d617a7 100644 --- a/code/后端/desktop_archievement_backend/src/main/java/com/cpic/xim/web/controllers/account/StaffInfoQueryController.java +++ b/code/后端/desktop_archievement_backend/src/main/java/com/cpic/xim/web/controllers/account/StaffInfoQueryController.java @@ -80,8 +80,8 @@ public class StaffInfoQueryController if ( saler != null ) { // 不为 null,有查询到 - result.setTeleSalerCode( saler.getCode() ); - result.setTeleSalerName( saler.getName() ); + result.setTelSalerCode( saler.getCode() ); + result.setTelSalerName( saler.getName() ); result.setTeamCode( saler.getTeamCode() ); result.setTeamName( saler.getTeamName() ); result.setDepartmentCode( saler.getDepartmentCode() ); diff --git a/code/后端/desktop_archievement_backend/src/main/java/com/cpic/xim/web/controllers/account/TeleSalerQueryResult.java b/code/后端/desktop_archievement_backend/src/main/java/com/cpic/xim/web/controllers/account/TeleSalerQueryResult.java index 2a78027..d40b5bf 100644 --- a/code/后端/desktop_archievement_backend/src/main/java/com/cpic/xim/web/controllers/account/TeleSalerQueryResult.java +++ b/code/后端/desktop_archievement_backend/src/main/java/com/cpic/xim/web/controllers/account/TeleSalerQueryResult.java @@ -31,23 +31,23 @@ public class TeleSalerQueryResult extends QueryResult * @param departmentCode: 部门代码 * @param departmentName: 部门名称 */ - public TeleSalerQueryResult( boolean success, String message, String teleSalerCode, - String teleSalerName, String teamCode, String teamName, String departmentCode, + public TeleSalerQueryResult( boolean success, String message, String telSalerCode, + String telSalerName, String teamCode, String teamName, String departmentCode, String departmentName) { super( success, message ); - this.teleSalerCode = teleSalerCode; - this.teleSalerName = teleSalerName; + this.telSalerCode = telSalerCode; + this.telSalerName = telSalerName; this.teamCode = teamCode; this.teamName = teamName; this.departmentCode = departmentCode; this.departmentName = departmentName; } - public String getTeleSalerCode() + public String getTelSalerCode() { - return teleSalerCode; + return telSalerCode; } /** @@ -55,19 +55,19 @@ public class TeleSalerQueryResult extends QueryResult * @param {String} teleSalerCode * @return {*} */ - public void setTeleSalerCode( String teleSalerCode ) + public void setTelSalerCode( String telSalerCode ) { - this.teleSalerCode = teleSalerCode; + this.telSalerCode = telSalerCode; } - public String getTeleSalerName() + public String getTelSalerName() { - return teleSalerName; + return telSalerName; } - public void setTeleSalerName( String teleSalerName ) + public void setTelSalerName( String telSalerName ) { - this.teleSalerName = teleSalerName; + this.telSalerName = telSalerName; } public String getTeamCode() @@ -110,11 +110,11 @@ public class TeleSalerQueryResult extends QueryResult this.departmentName = departmentName; } - @JsonProperty( "tele_saler_code" ) - private String teleSalerCode; + @JsonProperty( "tel_saler_code" ) + private String telSalerCode; - @JsonProperty( "tele_saler_name" ) - private String teleSalerName; + @JsonProperty( "tel_saler_name" ) + private String telSalerName; @JsonProperty( "team_code" ) private String teamCode;