Kaynağa Gözat

1、增加优化防篡改功能
2、标识防篡改方法
3、增加职位根据id搜索接口
4、优化UserApiImpl

rayson 8 ay önce
ebeveyn
işleme
139461beb9
24 değiştirilmiş dosya ile 87 ekleme ve 20 silme
  1. 11 6
      citu-framework/citu-spring-boot-starter-protection/src/main/java/com/citu/framework/signature/core/aop/ApiSignatureAspect.java
  2. 2 1
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/api/user/UserApiImpl.java
  3. 3 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/enterprise/AppEnterpriseRegisterController.java
  4. 3 1
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/enterprise/AppEnterpriseUserBindController.java
  5. 0 1
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/flame/AppFlameJobAdvertisedRespVO.java
  6. 7 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/job/AppJobAdvertisedController.java
  7. 1 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/job/AppJobCvRelController.java
  8. 2 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/person/AppPersonController.java
  9. 4 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/person/AppPersonRecordController.java
  10. 2 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/person/AppPersonResumeController.java
  11. 2 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/user/AppMdeUserController.java
  12. 2 2
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/user/AppUserAuthController.java
  13. 2 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/enterprise/AppRecruitEnterpriseController.java
  14. 5 7
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/enterprise/AppRecruitEnterpriseTalentPoolController.java
  15. 3 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/interview/AppRecruitInterviewInviteController.java
  16. 9 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/job/AppRecruitJobAdvertisedController.java
  17. 4 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/person/AppRecruitPersonController.java
  18. 3 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/person/AppRecruitPersonCvController.java
  19. 2 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/user/AppRecruitUserController.java
  20. 6 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/mysql/job/JobAdvertisedMapper.java
  21. 6 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/job/JobAdvertisedService.java
  22. 6 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/job/JobAdvertisedServiceImpl.java
  23. 1 1
      menduner/menduner-system-biz/src/main/resources/i18n/messages_en_US.properties
  24. 1 1
      menduner/menduner-system-biz/src/main/resources/i18n/messages_zh_CN.properties

+ 11 - 6
citu-framework/citu-spring-boot-starter-protection/src/main/java/com/citu/framework/signature/core/aop/ApiSignatureAspect.java

@@ -17,10 +17,7 @@ import org.aspectj.lang.annotation.Aspect;
 import org.aspectj.lang.annotation.Before;
 
 import javax.servlet.http.HttpServletRequest;
-import java.util.Map;
-import java.util.Objects;
-import java.util.SortedMap;
-import java.util.TreeMap;
+import java.util.*;
 
 import static com.citu.framework.common.exception.enums.GlobalErrorCodeConstants.BAD_REQUEST;
 
@@ -59,7 +56,15 @@ public class ApiSignatureAspect {
      * @return queryParams
      */
     private static SortedMap<String, String> getRequestParameterMap(HttpServletRequest request) {
-        SortedMap<String, String> sortedMap = new TreeMap<>();
+         SortedMap<String, String> sortedMap = new TreeMap<>();
+        for (Map.Entry<String, String[]> entry : request.getParameterMap().entrySet()) {
+            sortedMap.put(entry.getKey(), entry.getValue()[0]);
+        }
+        return sortedMap;
+    }
+
+    private static LinkedHashMap<String, String> getRequestParameterMap2(HttpServletRequest request) {
+        LinkedHashMap<String, String> sortedMap = new LinkedHashMap<>();
         for (Map.Entry<String, String[]> entry : request.getParameterMap().entrySet()) {
             sortedMap.put(entry.getKey(), entry.getValue()[0]);
         }
@@ -158,7 +163,7 @@ public class ApiSignatureAspect {
      * @return 签名字符串
      */
     private String buildSignatureString(ApiSignature signature, HttpServletRequest request, String appSecret) {
-        SortedMap<String, String> parameterMap = getRequestParameterMap(request); // 请求头
+        LinkedHashMap<String, String> parameterMap = getRequestParameterMap2(request); // 请求头
         SortedMap<String, String> headerMap = getRequestHeaderMap(signature, request); // 请求参数
         String requestBody = StrUtil.nullToDefault(ServletUtils.getBody(request), ""); // 请求体
         return MapUtil.join(parameterMap, "&", "=")

+ 2 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/api/user/UserApiImpl.java

@@ -44,7 +44,8 @@ public class UserApiImpl implements UserApi {
                     respDTO.setSex(personInfo.getSex());
                 }
                 MdeUserDO user = userMapper.selectOne(MdeUserDO::getId, dto.getUserId());
-                if(null!= user) {
+                if (null != user) {
+                    respDTO.setUserId(dto.getUserId());
                     respDTO.setPhone(user.getPhone());
                     respDTO.setVipFlag(user.getVipFlag());
                     respDTO.setVipExpireDate(user.getVipExpireDate());

+ 3 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/enterprise/AppEnterpriseRegisterController.java

@@ -4,6 +4,7 @@ import com.citu.framework.common.pojo.CommonResult;
 import com.citu.framework.idempotent.core.annotation.Idempotent;
 import com.citu.framework.idempotent.core.keyresolver.impl.UserIdempotentKeyResolver;
 import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.framework.signature.core.annotation.ApiSignature;
 import com.citu.module.menduner.system.controller.app.jobhunt.enterprise.vo.register.AppEnterpriseRegisterReqVO;
 import com.citu.module.menduner.system.controller.app.jobhunt.enterprise.vo.register.AppEnterpriseRegisterRespVO;
 import com.citu.module.menduner.system.service.enterprise.register.EnterpriseRegisterService;
@@ -37,6 +38,7 @@ public class AppEnterpriseRegisterController {
     }
 
     @PreAuthenticated
+    @ApiSignature(timeout = 30)
     @GetMapping("/by/user")
     @Operation(summary = "获取当前用户提交的企业申请")
     public CommonResult<AppEnterpriseRegisterRespVO> getApplyByUserId() {
@@ -45,6 +47,7 @@ public class AppEnterpriseRegisterController {
 
 
     @GetMapping("/by/email")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "根据邮箱获取企业注册申请")
     public CommonResult<AppEnterpriseRegisterRespVO> getApplyByEmail(String email) {
         return success(enterpriseRegisterService.getApplyByEmail(email));

+ 3 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/enterprise/AppEnterpriseUserBindController.java

@@ -2,13 +2,13 @@ package com.citu.module.menduner.system.controller.app.jobhunt.enterprise;
 
 import com.citu.framework.common.pojo.CommonResult;
 import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.framework.signature.core.annotation.ApiSignature;
 import com.citu.module.menduner.system.controller.app.jobhunt.enterprise.vo.AppEnterpriseUserBindRespVO;
 import com.citu.module.menduner.system.dal.dataobject.user.MdeUserDO;
 import com.citu.module.menduner.system.service.enterprise.bind.EnterpriseUserBindService;
 import com.citu.module.menduner.system.service.user.MdeUserService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
-import org.springframework.context.annotation.Lazy;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -35,6 +35,7 @@ public class AppEnterpriseUserBindController {
 
     @PreAuthenticated
     @GetMapping("/get/enterprise/list")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "获取当前用户绑定的企业列表")
     public CommonResult<List<AppEnterpriseUserBindRespVO>> getBindList() {
         return success(enterpriseUserBindService.getBindList());
@@ -42,6 +43,7 @@ public class AppEnterpriseUserBindController {
 
     @PreAuthenticated
     @GetMapping("/get/enterprise/list/by/phone")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "根据手机号获取用户绑定的企业列表")
     public CommonResult<List<AppEnterpriseUserBindRespVO>> getBindListByPhone
             (@RequestParam("phone") String phone) {

+ 0 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/flame/AppFlameJobAdvertisedRespVO.java

@@ -1,6 +1,5 @@
 package com.citu.module.menduner.system.controller.app.jobhunt.flame;
 
-import com.alibaba.excel.annotation.ExcelProperty;
 import com.citu.module.menduner.system.controller.base.job.JobAdvertisedSimpleRespVO;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;

+ 7 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/job/AppJobAdvertisedController.java

@@ -3,6 +3,7 @@ package com.citu.module.menduner.system.controller.app.jobhunt.job;
 import com.citu.framework.common.pojo.CommonResult;
 import com.citu.framework.common.pojo.PageParam;
 import com.citu.framework.common.pojo.PageResult;
+import com.citu.framework.common.util.string.StrUtils;
 import com.citu.module.menduner.system.controller.app.jobhunt.job.vo.*;
 import com.citu.module.menduner.system.controller.base.CommonRespVO;
 import com.citu.module.menduner.system.enums.visits.MdeVisitsEnum;
@@ -89,6 +90,12 @@ public class AppJobAdvertisedController {
         return success(respVO);
     }
 
+    @GetMapping("/get/details")
+    @Operation(summary = "获取招聘职位详情")
+    public CommonResult<List<AppJobAdvertisedSimpleRespVO>> getListByIds(@RequestParam("ids") String ids) {
+        return success(jobAdvertisedService.getListByIds(StrUtils.splitToLong(ids)));
+    }
+
 
     @GetMapping("/search")
     @Operation(summary = "搜索")

+ 1 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/job/AppJobCvRelController.java

@@ -61,6 +61,7 @@ public class AppJobCvRelController {
     public CommonResult<Long> send(@Valid @RequestBody AppJobCvRelReqVO reqVO) {
         return success(jobCvRelService.send(reqVO));
     }
+
     @PostMapping("/hire/recommend/send")
     @Operation(summary = "众聘分享-投递简历")
     @Idempotent(keyResolver = UserIdempotentKeyResolver.class)

+ 2 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/person/AppPersonController.java

@@ -6,6 +6,7 @@ import com.citu.framework.common.pojo.PageResult;
 import com.citu.framework.idempotent.core.annotation.Idempotent;
 import com.citu.framework.idempotent.core.keyresolver.impl.UserIdempotentKeyResolver;
 import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.framework.signature.core.annotation.ApiSignature;
 import com.citu.module.menduner.system.controller.app.jobhunt.job.vo.AppJobAdvertisedRespVO;
 import com.citu.module.menduner.system.controller.app.jobhunt.person.enterprise.PersonEnterpriseSubscribeReqVO;
 import com.citu.module.menduner.system.controller.app.jobhunt.person.job.AppPersonJobFavoriteReqVO;
@@ -57,6 +58,7 @@ public class AppPersonController {
 
     @PreAuthenticated
     @GetMapping("/get")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "获得人才信息")
     @Parameter(name = "userId", description = "用户id", required = true, example = "1024")
     public CommonResult<AppPersonInfoRespVO> getUserInfo(@RequestParam("userId") Long userId) {

+ 4 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/person/AppPersonRecordController.java

@@ -4,6 +4,7 @@ import com.citu.framework.common.pojo.CommonResult;
 import com.citu.framework.common.pojo.PageResult;
 import com.citu.framework.common.util.object.BeanUtils;
 import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.framework.signature.core.annotation.ApiSignature;
 import com.citu.module.menduner.system.controller.app.jobhunt.person.record.AppPersonBrowseRecordPageReqVO;
 import com.citu.module.menduner.system.controller.base.person.record.PersonBrowseRecordRespVO;
 import com.citu.module.menduner.system.controller.app.jobhunt.enterprise.vo.look.AppEnterpriseUserLookPageReqVO;
@@ -45,6 +46,7 @@ public class AppPersonRecordController {
 
     @DeleteMapping("/delete")
     @Operation(summary = "删除浏览记录")
+    @ApiSignature(timeout = 30)
     @PreAuthenticated
     public CommonResult<Boolean> delete(@RequestParam("id") Long id
             , @RequestParam("userId") Long userId) {
@@ -54,6 +56,7 @@ public class AppPersonRecordController {
 
     @DeleteMapping("/delete/all")
     @Operation(summary = "清空所有浏览记录")
+    @ApiSignature(timeout = 30)
     @PreAuthenticated
     public CommonResult<Boolean> deleteAll(@RequestParam("userId") Long userId) {
         personBrowseRecordService.deleteAll(userId);
@@ -62,6 +65,7 @@ public class AppPersonRecordController {
 
     @GetMapping("/look/me")
     @Operation(summary = "获取谁看过我的信息")
+    @ApiSignature(timeout = 30)
     @PreAuthenticated
     public CommonResult<Boolean> getLookByUserId(@Valid AppEnterpriseUserLookPageReqVO reqVO) {
         lookService.getLookByUserId(reqVO, reqVO.getLookUserId());

+ 2 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/person/AppPersonResumeController.java

@@ -4,6 +4,7 @@ import com.citu.framework.common.pojo.CommonResult;
 import com.citu.framework.idempotent.core.annotation.Idempotent;
 import com.citu.framework.idempotent.core.keyresolver.impl.UserIdempotentKeyResolver;
 import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.framework.signature.core.annotation.ApiSignature;
 import com.citu.module.menduner.system.controller.app.jobhunt.person.cvattachment.AppCvAttachmentRespVO;
 import com.citu.module.menduner.system.controller.app.jobhunt.person.cvattachment.AppCvAttachmentSaveReqVO;
 import com.citu.module.menduner.system.controller.app.jobhunt.person.eduexp.AppEduExpRespVO;
@@ -84,6 +85,7 @@ public class AppPersonResumeController {
 
     @PreAuthenticated
     @PostMapping("/info/save")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "保存基本信息")
     @Idempotent(keyResolver = UserIdempotentKeyResolver.class)
     public CommonResult<Boolean> saveInfo(@Valid @RequestBody AppPersonInfoSaveReqVO reqVO) {

+ 2 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/user/AppMdeUserController.java

@@ -6,6 +6,7 @@ import com.citu.framework.common.util.object.BeanUtils;
 import com.citu.framework.idempotent.core.annotation.Idempotent;
 import com.citu.framework.idempotent.core.keyresolver.impl.UserIdempotentKeyResolver;
 import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.framework.signature.core.annotation.ApiSignature;
 import com.citu.module.menduner.common.util.LoginUserContext;
 import com.citu.module.menduner.system.controller.app.jobhunt.user.vo.*;
 import com.citu.module.menduner.system.controller.base.user.vip.UserEntitlementRespVO;
@@ -44,6 +45,7 @@ public class AppMdeUserController {
     @GetMapping("/get")
     @Operation(summary = "获得用户信息")
     @Parameter(name = "id", description = "编号", required = true, example = "1024")
+    @ApiSignature(timeout = 30)
     @PreAuthenticated
     public CommonResult<AppMdeUserRespVO> getMdeUser(@RequestParam("id") Long id) {
         MdeUserDO mdeUser = mdeUserService.getMdeUser(id);

+ 2 - 2
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/user/AppUserAuthController.java

@@ -5,9 +5,9 @@ import com.citu.framework.common.pojo.CommonResult;
 import com.citu.framework.idempotent.core.annotation.Idempotent;
 import com.citu.framework.idempotent.core.keyresolver.impl.UserIdempotentKeyResolver;
 import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.framework.signature.core.annotation.ApiSignature;
 import com.citu.module.menduner.system.controller.app.jobhunt.user.vo.AppUserAuthRespVO;
 import com.citu.module.menduner.system.controller.app.jobhunt.user.vo.AppUserAuthSaveReqVO;
-import com.citu.module.menduner.system.controller.app.recruit.enterprise.auth.AppRecruitEnterpriseAuthSaveReqVO;
 import com.citu.module.menduner.system.service.user.UserAuthService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
@@ -38,6 +38,7 @@ public class AppUserAuthController {
     @PreAuthenticated
     @PostMapping("/save")
     @Operation(summary = "保存")
+    @ApiSignature(timeout = 30)
     @Idempotent(keyResolver = UserIdempotentKeyResolver.class)
     public CommonResult<Boolean> save(
             @Valid @RequestBody AppUserAuthSaveReqVO reqVO) {
@@ -46,5 +47,4 @@ public class AppUserAuthController {
     }
 
 
-
 }

+ 2 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/enterprise/AppRecruitEnterpriseController.java

@@ -9,6 +9,7 @@ import com.citu.framework.dict.core.DictFrameworkUtils;
 import com.citu.framework.idempotent.core.annotation.Idempotent;
 import com.citu.framework.idempotent.core.keyresolver.impl.UserIdempotentKeyResolver;
 import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.framework.signature.core.annotation.ApiSignature;
 import com.citu.module.menduner.common.util.LoginUserContext;
 import com.citu.module.menduner.system.controller.app.recruit.enterprise.auth.AppRecruitEnterpriseAuthRespVO;
 import com.citu.module.menduner.system.controller.app.recruit.enterprise.auth.AppRecruitEnterpriseAuthSaveReqVO;
@@ -136,6 +137,7 @@ public class AppRecruitEnterpriseController {
 
     @PreAuthenticated
     @PostMapping("/business/save")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "保存企业营业执照信息")
     @Idempotent(keyResolver = UserIdempotentKeyResolver.class)
     public CommonResult<Boolean> save(

+ 5 - 7
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/enterprise/AppRecruitEnterpriseTalentPoolController.java

@@ -2,12 +2,9 @@ package com.citu.module.menduner.system.controller.app.recruit.enterprise;
 
 import com.citu.framework.common.pojo.CommonResult;
 import com.citu.framework.common.pojo.PageResult;
-import com.citu.framework.idempotent.core.annotation.Idempotent;
-import com.citu.framework.idempotent.core.keyresolver.impl.UserIdempotentKeyResolver;
 import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.framework.signature.core.annotation.ApiSignature;
 import com.citu.module.menduner.common.util.LoginUserContext;
-import com.citu.module.menduner.system.controller.app.recruit.enterprise.post.AppRecruitEnterprisePostSaveReqVO;
-import com.citu.module.menduner.system.controller.base.person.PersonMapQueryReqVO;
 import com.citu.module.menduner.system.controller.base.person.info.PersonInfoPageReqVO;
 import com.citu.module.menduner.system.controller.base.person.info.PersonInfoRespVO;
 import com.citu.module.menduner.system.service.person.PersonIntegrationService;
@@ -42,8 +39,9 @@ public class AppRecruitEnterpriseTalentPoolController {
     @PostMapping("/add")
     @Operation(summary = "加入人才库")
     @PreAuthenticated
+    @ApiSignature(timeout = 30)
     public CommonResult<Boolean> add(@RequestParam("userId") Long userId) {
-        personIntegrationService.addEnterpriseTalentPool(LoginUserContext.getEnterpriseId(),userId);
+        personIntegrationService.addEnterpriseTalentPool(LoginUserContext.getEnterpriseId(), userId);
         return success(true);
     }
 
@@ -51,11 +49,11 @@ public class AppRecruitEnterpriseTalentPoolController {
     @PostMapping("/remove")
     @Operation(summary = "移出人才库")
     @PreAuthenticated
+    @ApiSignature(timeout = 30)
     public CommonResult<Boolean> remove(@RequestParam("userId") Long userId) {
-        personIntegrationService.removeEnterpriseTalentPool(LoginUserContext.getEnterpriseId(),userId);
+        personIntegrationService.removeEnterpriseTalentPool(LoginUserContext.getEnterpriseId(), userId);
         return success(true);
     }
 
 
-
 }

+ 3 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/interview/AppRecruitInterviewInviteController.java

@@ -5,6 +5,7 @@ import com.citu.framework.common.pojo.PageResult;
 import com.citu.framework.idempotent.core.annotation.Idempotent;
 import com.citu.framework.idempotent.core.keyresolver.impl.UserIdempotentKeyResolver;
 import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.framework.signature.core.annotation.ApiSignature;
 import com.citu.module.menduner.system.controller.app.recruit.interview.vo.*;
 import com.citu.module.menduner.system.controller.base.CommonRespVO;
 import com.citu.module.menduner.system.service.interview.InterviewInviteService;
@@ -47,6 +48,7 @@ public class AppRecruitInterviewInviteController {
     @PostMapping("/save")
     @Operation(summary = "保存(新增|修改|重新邀约)")
     @Idempotent(timeout = 2, keyResolver = UserIdempotentKeyResolver.class)
+    @ApiSignature(timeout = 30)
     public CommonResult<Boolean> save
             (@RequestBody @Valid AppRecruitInterviewInviteReqSaveVO reqVO) {
         service.save(reqVO);
@@ -65,6 +67,7 @@ public class AppRecruitInterviewInviteController {
 
     @PreAuthenticated
     @PostMapping("/completed")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "完成面试")
     public CommonResult<Boolean> completed
             (@RequestParam("id") Long id) {

+ 9 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/job/AppRecruitJobAdvertisedController.java

@@ -12,6 +12,7 @@ import com.citu.framework.excel.core.util.ExcelUtils;
 import com.citu.framework.idempotent.core.annotation.Idempotent;
 import com.citu.framework.idempotent.core.keyresolver.impl.UserIdempotentKeyResolver;
 import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.framework.signature.core.annotation.ApiSignature;
 import com.citu.module.menduner.system.controller.app.recruit.job.vo.*;
 import com.citu.module.menduner.system.controller.base.job.JobAdvertisedImportExcelVO;
 import com.citu.module.menduner.system.controller.base.job.JobAdvertisedRenewalReqVO;
@@ -112,6 +113,7 @@ public class AppRecruitJobAdvertisedController {
 
     @PreAuthenticated
     @GetMapping("/detail")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "获得招聘职位详情")
     public CommonResult<AppRecruitJobDetailRespVO> detail(@RequestParam("id") Long id) {
         return success(JobAdvertisedConvert.INSTANCE.convert5(enterpriseJobService.detail(id)));
@@ -135,6 +137,7 @@ public class AppRecruitJobAdvertisedController {
 
     @PreAuthenticated
     @PostMapping("/enable")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "开启职位")
     public CommonResult<Boolean> enable(@RequestParam("ids") String ids) {
         jobAdvertisedService.enable(StrUtils.splitToLong(ids));
@@ -143,6 +146,7 @@ public class AppRecruitJobAdvertisedController {
 
     @PreAuthenticated
     @PostMapping("/disable")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "关闭职位")
     public CommonResult<Boolean> disable(@RequestParam("ids") String ids) {
         jobAdvertisedService.disable(StrUtils.splitToLong(ids));
@@ -151,6 +155,7 @@ public class AppRecruitJobAdvertisedController {
 
     @PreAuthenticated
     @PostMapping("/refresh")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "刷新职位")
     public CommonResult<Boolean> refresh(@RequestParam("ids") String ids) {
         jobAdvertisedService.refresh(StrUtils.splitToLong(ids));
@@ -159,6 +164,7 @@ public class AppRecruitJobAdvertisedController {
 
     @PreAuthenticated
     @PostMapping("/top")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "职位置顶")
     public CommonResult<Boolean> top(@RequestParam("ids") String ids) {
         jobAdvertisedService.top(StrUtils.splitToLong(ids));
@@ -167,6 +173,7 @@ public class AppRecruitJobAdvertisedController {
 
     @PreAuthenticated
     @PostMapping("/un-top")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "取消职位置顶")
     public CommonResult<Boolean> unTop(@RequestParam("ids") String ids) {
         jobAdvertisedService.unTop(StrUtils.splitToLong(ids));
@@ -175,6 +182,7 @@ public class AppRecruitJobAdvertisedController {
 
     @PreAuthenticated
     @PostMapping("/renewal")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "职位续期")
     public CommonResult<Boolean> renewal(@RequestBody @Valid JobAdvertisedRenewalReqVO reqVO) {
         jobAdvertisedService.renewal(reqVO);
@@ -191,6 +199,7 @@ public class AppRecruitJobAdvertisedController {
 
     @PreAuthenticated
     @PostMapping("/save/extend")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "保存招聘职位扩展信息")
     public CommonResult<Boolean> saveExtend(@RequestBody @Valid AppRecruitJobExtendSaveReqVO reqVO) {
         jobAdvertisedService.saveExtend(reqVO);

+ 4 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/person/AppRecruitPersonController.java

@@ -3,6 +3,7 @@ package com.citu.module.menduner.system.controller.app.recruit.person;
 import com.citu.framework.common.pojo.CommonResult;
 import com.citu.framework.common.pojo.PageResult;
 import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.framework.signature.core.annotation.ApiSignature;
 import com.citu.module.menduner.system.controller.base.person.PersonQueryReqVO;
 import com.citu.module.menduner.system.controller.base.person.PersonMapQueryReqVO;
 import com.citu.module.menduner.system.controller.base.person.PersonRecommendQueryReqVO;
@@ -32,6 +33,7 @@ public class AppRecruitPersonController {
 
     @PreAuthenticated
     @GetMapping("/person-map/page")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "分页查询人才地图")
     public CommonResult<PageResult<PersonInfoRespVO>> query(@Valid PersonMapQueryReqVO reqVO) {
         return success(personIntegrationService.queryPage(reqVO));
@@ -39,6 +41,7 @@ public class AppRecruitPersonController {
 
     @PreAuthenticated
     @GetMapping("/person-search/page")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "分页检索人才信息")
     public CommonResult<PageResult<PersonInfoRespVO>> query(@Valid PersonQueryReqVO reqVO) {
         return success(personIntegrationService.queryPage(reqVO));
@@ -46,6 +49,7 @@ public class AppRecruitPersonController {
 
     @PreAuthenticated
     @GetMapping("/person-recommend/page")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "分页推荐人才信息")
     public CommonResult<PageResult<PersonInfoRespVO>> query(@Valid PersonRecommendQueryReqVO reqVO) {
         return success(personIntegrationService.queryRecommendPerson(reqVO));

+ 3 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/person/AppRecruitPersonCvController.java

@@ -3,6 +3,7 @@ package com.citu.module.menduner.system.controller.app.recruit.person;
 import com.citu.framework.common.pojo.CommonResult;
 import com.citu.framework.common.pojo.PageResult;
 import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.framework.signature.core.annotation.ApiSignature;
 import com.citu.module.menduner.system.controller.app.recruit.person.cv.AppRecruitJobCvRelPageReqVO;
 import com.citu.module.menduner.system.controller.app.recruit.person.cv.AppRecruitJobCvRelRespVO;
 import com.citu.module.menduner.system.controller.app.recruit.person.vo.AppRecruitPersonDetailRespVO;
@@ -64,6 +65,7 @@ public class AppRecruitPersonCvController {
 
     @PreAuthenticated
     @GetMapping("/detail")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "获取人才在线简历详情")
     public CommonResult<AppRecruitPersonDetailRespVO> detail(@RequestParam("userId") Long userId) {
         return success(personIntegrationService.detail(userId));
@@ -71,6 +73,7 @@ public class AppRecruitPersonCvController {
 
     @PreAuthenticated
     @PostMapping("/look")
+    @ApiSignature(timeout = 30)
     @Operation(summary = "查看简历附件")
     public CommonResult<Boolean> look(@RequestParam("id") Long id) {
         return success(jobCvRelService.look(id));

+ 2 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/user/AppRecruitUserController.java

@@ -6,6 +6,7 @@ import com.citu.framework.common.util.string.StrUtils;
 import com.citu.framework.idempotent.core.annotation.Idempotent;
 import com.citu.framework.idempotent.core.keyresolver.impl.UserIdempotentKeyResolver;
 import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.framework.signature.core.annotation.ApiSignature;
 import com.citu.module.menduner.common.util.LoginUserContext;
 import com.citu.module.menduner.system.controller.app.recruit.user.vo.*;
 import com.citu.module.menduner.system.controller.base.enterprise.bind.EnterpriseUserUpdateEmailReqVO;
@@ -70,6 +71,7 @@ public class AppRecruitUserController {
     @PreAuthenticated
     @PostMapping("/update")
     @Operation(summary = "管理员-修改用户信息")
+    @ApiSignature(timeout = 30)
     @Idempotent(keyResolver = UserIdempotentKeyResolver.class)
     public CommonResult<Boolean> update(@Valid @RequestBody AppRecruitUserSaveReqVO reqVO) {
         return success(service.update(reqVO));

+ 6 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/mysql/job/JobAdvertisedMapper.java

@@ -62,6 +62,12 @@ public interface JobAdvertisedMapper extends BaseMapperX<JobAdvertisedDO> {
                 .orderByDesc(JobAdvertisedDO::getId));
     }
 
+    default List<JobAdvertisedDO> selectListByIds( List<Long> ids) {
+        return selectList(new LambdaQueryWrapper<JobAdvertisedDO>()
+                .in(JobAdvertisedDO::getId, ids)
+                .eq(JobAdvertisedDO::getStatus, JobStatusEnum.ENABLE.getStatus())
+        );
+    }
     /**
      * 根据查询条件查询职位信息
      **/

+ 6 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/job/JobAdvertisedService.java

@@ -5,6 +5,7 @@ import com.citu.framework.common.pojo.PageParam;
 import com.citu.framework.common.pojo.PageResult;
 import com.citu.module.menduner.system.controller.app.jobhunt.job.vo.AppJobAdvertisedHomeRespVO;
 import com.citu.module.menduner.system.controller.app.jobhunt.job.vo.AppJobAdvertisedPageReqVO;
+import com.citu.module.menduner.system.controller.app.jobhunt.job.vo.AppJobAdvertisedSimpleRespVO;
 import com.citu.module.menduner.system.controller.app.recruit.job.vo.AppRecruitJobExtendRespVO;
 import com.citu.module.menduner.system.controller.app.recruit.job.vo.AppRecruitJobExtendSaveReqVO;
 import com.citu.module.menduner.system.controller.base.job.JobAdvertisedRenewalReqVO;
@@ -137,6 +138,11 @@ public interface JobAdvertisedService {
      **/
     void syncGraph();
 
+    /**
+     * 根据id获取职位简易信息
+     **/
+    List<AppJobAdvertisedSimpleRespVO> getListByIds(List<Long> ids);
+
     // ========== 招聘端 ==========
 
     /**

+ 6 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/job/JobAdvertisedServiceImpl.java

@@ -17,6 +17,7 @@ import com.citu.module.menduner.system.api.python.GraphQueryPageDTO;
 import com.citu.module.menduner.system.api.python.GraphSendDTO;
 import com.citu.module.menduner.system.controller.app.jobhunt.job.vo.AppJobAdvertisedHomeRespVO;
 import com.citu.module.menduner.system.controller.app.jobhunt.job.vo.AppJobAdvertisedPageReqVO;
+import com.citu.module.menduner.system.controller.app.jobhunt.job.vo.AppJobAdvertisedSimpleRespVO;
 import com.citu.module.menduner.system.controller.app.recruit.job.vo.AppRecruitJobExtendRespVO;
 import com.citu.module.menduner.system.controller.app.recruit.job.vo.AppRecruitJobExtendSaveReqVO;
 import com.citu.module.menduner.system.controller.app.recruit.job.vo.AppRecruitJobSaveReqVO;
@@ -359,6 +360,11 @@ public class JobAdvertisedServiceImpl implements JobAdvertisedService {
 
     }
 
+    @Override
+    public List<AppJobAdvertisedSimpleRespVO> getListByIds(List<Long> ids) {
+        return JobAdvertisedConvert.INSTANCE.convertListSimple(mapper.selectListByIds(ids));
+    }
+
     @Override
     @DSTransactional
     public Long save(AppRecruitJobSaveReqVO reqVO) {

+ 1 - 1
menduner/menduner-system-biz/src/main/resources/i18n/messages_en_US.properties

@@ -26,7 +26,7 @@
 1_099_000_006=User ID cannot be empty
 1_099_000_007=Enterprise ID cannot be empty
 1_099_000_008=User Type cannot be empty
-1_099_000_009=The file format is incorrect and only supports. doc,. docx, and. pdf files
+1_099_000_009=The file format is incorrect and only supports.
 1_099_000_010=File attachment cannot be empty
 1_099_000_011=Illegal request
 # ========== 人才信息-人才档案 1_100_001_000 ==========

+ 1 - 1
menduner/menduner-system-biz/src/main/resources/i18n/messages_zh_CN.properties

@@ -26,7 +26,7 @@
 1_099_000_006=用户id不能为空
 1_099_000_007=企业id不能为空
 1_099_000_008=用户类型不能为空
-1_099_000_009=文件格式不正确,仅支持.doc, .docx, .pdf文件
+1_099_000_009=文件格式不正确
 1_099_000_010=文件附件不能为空
 1_099_000_011=非法请求
 # ========== 人才信息-人才档案 1_100_001_000 ==========