Browse Source

feat: APP端添加菜单日志

zhangying 8 months ago
parent
commit
3deee31387

+ 16 - 0
h5app/src/api/system/sysLog.ts

@@ -0,0 +1,16 @@
+import {request} from '@/utils/request';
+
+export function saveLog(title: string, url: string, actionName: string) {
+    return request<object>(
+        {
+            url: 'system/log/save',
+            method: 'post',
+            data: {pageName: title, pageUrl: url, actionName: actionName},
+        },
+        {
+            isNew: true,
+            successMsg: '',
+            errorMsg: ''
+        },
+    );
+}

+ 18 - 0
h5app/src/utils/common.ts

@@ -0,0 +1,18 @@
+import {saveLog} from "@/api/system/sysLog";
+
+/**
+ *首页与工作台的图标点击时保存页面日志
+ * @param pageName 页面名称
+ * @param pageUrl 页面路径
+ * @param actionName 操作名称
+ * @param func 回调
+ */
+export function saveSysLog(pageName: any, pageUrl: any, actionName: any, func: any) {
+    try {
+        saveLog(pageName, pageUrl, actionName);
+    } catch (e) {
+        console.error(e)
+    }
+    // 跳转页面
+    func()
+}

+ 20 - 8
h5app/src/views/sapp/tabMain.vue

@@ -4,43 +4,50 @@
       <div class="tab-main-content">
         <div class="main_top"></div>
         <div class="tool-box">
-          <a class="tool-item box-line" @click="router.push('/tabs/tabMain/userQrCode/index')">
+          <a class="tool-item box-line"
+             @click="saveSysLog('我的二维码(APP)', '/tabs/tabMain/userQrCode/index', '点击菜单', router.push('/tabs/tabMain/userQrCode/index'))">
             <div class="tool-img">
               <img src="@/assets/icon/qrcode.png">
             </div>
             <div class="tool-title">我的二维码</div>
           </a>
-          <a class="tool-item box-line" @click="router.push('/tabs/tabMain/jobhunt/list')">
+          <a class="tool-item box-line"
+             @click="saveSysLog('求职人员收集(APP)', '/tabs/tabMain/jobhunt/list', '点击菜单', router.push('/tabs/tabMain/jobhunt/list'))">
             <div class="tool-img">
               <img src="@/assets/icon/qzxx.png">
             </div>
             <div class="tool-title">求职人员收集</div>
           </a>
-          <a class="tool-item box-line" @click="router.push('/tabs/tabMain/jobhunt/recommend/list')">
+          <a class="tool-item box-line"
+             @click="saveSysLog('求职意向(APP)', '/tabs/tabMain/jobhunt/recommend/list', '点击菜单', router.push('/tabs/tabMain/jobhunt/recommend/list'))">
             <div class="tool-img">
               <img src="@/assets/icon/qzyx.png">
             </div>
             <div class="tool-title">求职意向</div>
           </a>
-          <a class="tool-item box-line" @click="router.push({path:'/tabs/tabMain/company/list',query:{reload:1}})">
+          <a class="tool-item box-line"
+             @click="saveSysLog('企业信息收集(APP)', '/tabs/tabMain/company/list', '点击菜单', router.push({path:'/tabs/tabMain/company/list',query:{reload:1}}))">
             <div class="tool-img">
               <img src="@/assets/icon/qyxx.png">
             </div>
             <div class="tool-title">企业信息<br/>收集</div>
           </a>
-          <a class="tool-item box-line" @click="router.push('/tabs/tabMain/post/list')">
+          <a class="tool-item box-line"
+             @click="saveSysLog('岗位信息(APP)', '/tabs/tabMain/post/list', '点击菜单', router.push('/tabs/tabMain/post/list'))">
             <div class="tool-img">
               <img src="@/assets/icon/gwxxgl.png">
             </div>
             <div class="tool-title">岗位信息</div>
           </a>
-          <a class="tool-item box-line" @click="router.push('/tabs/tabMain/recommendMgt/list')">
+          <a class="tool-item box-line"
+             @click="saveSysLog('推荐库(APP)', '/tabs/tabMain/recommendMgt/list', '点击菜单', router.push('/tabs/tabMain/recommendMgt/list'))">
             <div class="tool-img">
               <img src="@/assets/icon/gwtj.png">
             </div>
             <div class="tool-title">推荐库</div>
           </a>
-          <a class="tool-item box-line" @click="router.push('/tabs/tabMain/workTask/list')">
+          <a class="tool-item box-line"
+             @click="saveSysLog('工作任务(APP)', '/tabs/tabMain/workTask/list', '点击菜单', router.push('/tabs/tabMain/workTask/list'))">
             <div class="tool-img">
               <img src="@/assets/icon/gzrw.png">
             </div>
@@ -48,7 +55,8 @@
           </a>
 
 
-          <a class="tool-item box-line" @click="router.push('/tabs/tabMain/workLog/list')">
+          <a class="tool-item box-line"
+             @click="saveSysLog('工作日志(APP)', '/tabs/tabMain/workLog/list', '点击菜单', router.push('/tabs/tabMain/workLog/list'))">
             <div class="tool-img">
               <img src="@/assets/icon/gzrz.png">
             </div>
@@ -89,6 +97,8 @@ import {getMyWorkTasks} from '@/api/workTask';
 import {alertController, onIonViewDidEnter} from "@ionic/vue";
 import dayjs from "dayjs";
 import BEmpty from "@/components/empty.vue";
+import {saveLog} from "@/api/system/sysLog";
+import {saveSysLog} from "@/utils/common";
 
 interface taskModel {
   doTaskID: string,
@@ -97,6 +107,7 @@ interface taskModel {
 
 export default defineComponent({
   name: "TabMainList",
+  methods: {saveSysLog},
   components: {BEmpty},
   setup() {
     const router = useRouter();
@@ -122,6 +133,7 @@ export default defineComponent({
     }
 
     function onTaskList() {
+      saveLog('工作任务(APP)', '/tabs/tabMain/workTask/list', '点击菜单');
       router.push("/tabs/tabMain/workTask/list");
     }
 

+ 24 - 11
h5app/src/views/sapp/tabWork.vue

@@ -78,49 +78,57 @@
          <div class="content-title">我的应用</div>
          <div class="content-applist">
            <div class="tool-box">
-             <a class="tool-item box-line"  @click="router.push('/tabs/tabWork/userQrCode/index')">
+             <a class="tool-item box-line"
+                @click="saveSysLog('我的二维码(APP)', '/tabs/tabWork/userQrCode/index', '点击菜单', router.push('/tabs/tabWork/userQrCode/index'))">
                <div class="tool-img">
                  <img src="@/assets/icon/qrcode.png">
                </div>
                <div class="tool-title">我的二维码</div>
              </a>
-             <a class="tool-item box-line"  @click="router.push('/tabs/tabMain/jobhunt/list')">
+             <a class="tool-item box-line"
+                @click="saveSysLog('求职人员收集(APP)', '/tabs/tabMain/jobhunt/list', '点击菜单', router.push('/tabs/tabMain/jobhunt/list'))">
                <div class="tool-img">
                  <img src="@/assets/icon/qzxx.png">
                </div>
                <div class="tool-title">求职人员<br/>信息收集</div>
              </a>
-             <a class="tool-item box-line"  @click="router.push('/tabs/tabMain/jobhunt/recommend/list')">
+             <a class="tool-item box-line"
+                @click="saveSysLog('求职意向(APP)', '/tabs/tabMain/jobhunt/recommend/list', '点击菜单', router.push('/tabs/tabMain/jobhunt/recommend/list'))">
                <div class="tool-img">
                  <img src="@/assets/icon/qzyx.png">
                </div>
                <div class="tool-title">求职意向</div>
              </a>
-             <a class="tool-item box-line"  @click="router.push({path:'/tabs/tabMain/company/list',query:{reload:1}})">
+             <a class="tool-item box-line"
+                @click="saveSysLog('企业信息收集(APP)', '/tabs/tabMain/company/list', '点击菜单', router.push({path:'/tabs/tabMain/company/list',query:{reload:1}}))">
                <div class="tool-img">
                  <img src="@/assets/icon/qyxx.png">
                </div>
                <div class="tool-title">企业信息<br/>收集</div>
              </a>
-             <a class="tool-item box-line"  @click="router.push('/tabs/tabMain/post/list')">
+             <a class="tool-item box-line"
+                @click="saveSysLog('岗位信息(APP)', '/tabs/tabMain/post/list', '点击菜单', router.push('/tabs/tabMain/post/list'))">
                <div class="tool-img">
                  <img src="@/assets/icon/gwxxgl.png">
                </div>
                <div class="tool-title">岗位信息管理</div>
              </a>
-             <a class="tool-item box-line" @click="router.push('/tabs/tabMain/recommendMgt/list')">
+             <a class="tool-item box-line"
+                @click="saveSysLog('推荐库(APP)', '/tabs/tabMain/recommendMgt/list', '点击菜单', router.push('/tabs/tabMain/recommendMgt/list'))">
                <div class="tool-img">
                  <img src="@/assets/icon/gwtj.png">
                </div>
                <div class="tool-title">推荐库</div>
              </a>
-             <a class="tool-item box-line" @click="router.push('/tabs/tabMain/workTask/list')">
+             <a class="tool-item box-line"
+                @click="saveSysLog('工作任务(APP)', '/tabs/tabMain/workTask/list', '点击菜单', router.push('/tabs/tabMain/workTask/list'))">
                <div class="tool-img">
                  <img src="@/assets/icon/gzrw.png">
                </div>
                <div class="tool-title">工作任务</div>
              </a>
-             <a class="tool-item box-line" @click="router.push('/tabs/tabMain/workLog/list')">
+             <a class="tool-item box-line"
+                @click="saveSysLog('工作日志(APP)', '/tabs/tabMain/workLog/list', '点击菜单', router.push('/tabs/tabMain/workLog/list'))">
                <div class="tool-img">
                  <img src="@/assets/icon/gzrz.png">
                </div>
@@ -128,19 +136,22 @@
              </a>
 
 
-             <a class="tool-item box-line" @click="router.push('/tabs/tabMain/jobFair/list')">
+             <a class="tool-item box-line"
+                @click="saveSysLog('就业服务活动(APP)', '/tabs/tabMain/jobFair/list', '点击菜单', router.push('/tabs/tabMain/jobFair/list'))">
                <div class="tool-img">
                  <img src="@/assets/icon/zph1.png">
                </div>
                <div class="tool-title">就业服务活动</div>
              </a>
-             <a class="tool-item box-line"  @click="router.push('/tabs/tabWork/work/track/index')">
+             <a class="tool-item box-line"
+                @click="saveSysLog('工作轨迹(APP)', '/tabs/tabWork/work/track/index', '点击菜单', router.push('/tabs/tabWork/work/track/index'))">
                <div class="tool-img">
                  <img src="@/assets/icon/dk1.png">
                </div>
                <div class="tool-title">工作轨迹</div>
              </a>
-             <a class="tool-item box-line" @click="router.push('/tabs/tabWork/work/signin')">
+             <a class="tool-item box-line"
+                @click="saveSysLog('打卡签到(APP)', '/tabs/tabWork/work/signin', '点击菜单', router.push('/tabs/tabWork/work/signin'))">
                <div class="tool-img">
                  <img src="@/assets/icon/map.png">
                </div>
@@ -161,9 +172,11 @@ import {onIonViewDidEnter} from "@ionic/vue";
 import dayjs from "dayjs";
 import {get} from "@/api/common";
 import {flowerOutline} from 'ionicons/icons';
+import {saveSysLog} from "@/utils/common";
 
 export default defineComponent({
   name: 'mywork',
+  methods: {saveSysLog},
   setup() {
 
     const type = ref(1);

+ 2 - 2
src/main/java/com/hz/employmentsite/controller/AccountController.java

@@ -73,7 +73,7 @@ public class AccountController {
         user.dataRangeList = userService.getUserDataRange(user.getUserId());
         user.permissionList = accountService.getUserPerms(user.getUserId());
 
-        logService.save("登录", "", "登录", user.userId, IpUtils.getIpAddr(request));
+        logService.save("登录", "", "PC端登录", user.userId, IpUtils.getIpAddr(request));
 
         return RespGenerstor.success(user);
 
@@ -96,7 +96,7 @@ public class AccountController {
         user.permissionList = accountService.getUserPerms(user.getUserId());
         user.isResetPassword = !userService.getDefaultPassword().equalsIgnoreCase(desData[1]);
 
-        logService.save("登录", "", "登录", user.userId, IpUtils.getIpAddr(request));
+        logService.save("登录(APP)", "", "APP端登录", user.userId, IpUtils.getIpAddr(request));
 
         return RespGenerstor.success(user);