lixing 4 rokov pred
rodič
commit
7292b066e2

+ 32 - 2
fm-person/src/main/java/com/persagy/fm/person/controller/PersonController.java

@@ -2,6 +2,7 @@ package com.persagy.fm.person.controller;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.persagy.fm.common.utils.ResultHelper;
+import com.persagy.fm.person.model.vo.LatestJobNumberVO;
 import com.persagy.fm.person.model.vo.SimplePersonListItemVO;
 import com.persagy.fm.person.service.IPersonProjectService;
 import com.persagy.fm.person.service.IPersonService;
@@ -11,7 +12,6 @@ import com.persagy.fm.person.model.Person;
 import com.persagy.fm.person.model.vo.ResponsePersonItemVO;
 import com.persagy.fm.person.model.vo.ResponsePersonListItemVO;
 import com.persagy.fm.person.model.dto.*;
-import com.persagy.fm.saas.accountrole.model.vo.AccountRoleVO;
 import com.persagy.fm.saas.project.model.vo.ProjectTreeItemVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import io.swagger.annotations.Api;
@@ -22,7 +22,6 @@ import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
 import java.util.List;
-import java.util.Map;
 
 /**
  * 人员控制层
@@ -148,5 +147,36 @@ public class PersonController {
         List<ProjectTreeItemVO> projectTreeItemVOList = personProjectService.queryPersonProjectTree(deletePersonDTO.getId());
         return ResultHelper.multi(projectTreeItemVOList);
     }
+
+    @ApiOperation(value = "获取最新工号")
+    @PostMapping("/latestJobNumber")
+    public CommonResult<LatestJobNumberVO> queryLatestJobNumber() {
+        LatestJobNumberVO latestJobNumberVO = personService.queryLatestJobNumber();
+        return ResultHelper.single(latestJobNumberVO);
+    }
+
+    @ApiOperation(value = "校验身份证号重复")
+    @PostMapping("/checkDuplicateIdCardNumber")
+    public CommonResult checkDuplicateIdCardNumber(
+            @Valid @RequestBody CheckDuplicateIdCardNumberDTO checkDuplicateIdCardNumberDTO) {
+        personService.checkIdNumber(checkDuplicateIdCardNumberDTO.getIdNumber());
+        return ResultHelper.success();
+    }
+
+    @ApiOperation(value = "校验手机号重复")
+    @PostMapping("/checkDuplicatePhoneNumber")
+    public CommonResult checkDuplicatePhoneNumber(
+            @Valid @RequestBody CheckDuplicatePhoneNumberDTO checkDuplicatePhoneNumberDTO) {
+        personService.checkPhoneNum(checkDuplicatePhoneNumberDTO.getPhoneNumber());
+        return ResultHelper.success();
+    }
+
+    @ApiOperation(value = "校验账号重复")
+    @PostMapping("/checkDuplicateUserName")
+    public CommonResult checkDuplicateUserName(
+            @Valid @RequestBody CheckDuplicateUserNameDTO checkDuplicateUserNameDTO) {
+        personService.checkUserName(checkDuplicateUserNameDTO.getUsername());
+        return ResultHelper.success();
+    }
 }
 

+ 34 - 0
fm-person/src/main/java/com/persagy/fm/person/service/IPersonService.java

@@ -3,6 +3,7 @@ package com.persagy.fm.person.service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.persagy.fm.person.model.Person;
 import com.persagy.fm.person.model.dto.*;
+import com.persagy.fm.person.model.vo.LatestJobNumberVO;
 import com.persagy.fm.person.model.vo.ResponsePersonItemVO;
 import com.persagy.fm.person.model.vo.ResponsePersonListItemVO;
 
@@ -185,4 +186,37 @@ public interface IPersonService {
      * @version V1.0 2021/3/22 10:39 上午
      */
     void enablePerson(String personId);
+
+    /**
+     * 获取最新的工号
+     *
+     * @return 工号vo类
+     * @author lixing
+     * @version V1.0 2021/4/7 10:42 上午
+     */
+    LatestJobNumberVO queryLatestJobNumber();
+
+    /**
+     * 校验重复的手机号
+     *
+     * @author lixing
+     * @version V1.0 2021/4/7 11:39 上午
+     */
+    void checkPhoneNum(String phoneNumber);
+
+    /**
+     * 校验重复的身份证号
+     *
+     * @author lixing
+     * @version V1.0 2021/4/7 11:40 上午
+     */
+    void checkIdNumber(String idNumber);
+
+    /**
+     * 校验重复的登录名
+     *
+     * @author lixing
+     * @version V1.0 2021/4/7 11:41 上午
+     */
+    void checkUserName(String username);
 }

+ 27 - 3
fm-person/src/main/java/com/persagy/fm/person/service/impl/PersonServiceImpl.java

@@ -11,12 +11,14 @@ import com.persagy.fm.common.model.vo.SimpleObjVO;
 import com.persagy.fm.common.utils.ListUtil;
 import com.persagy.fm.department.model.vo.DepSimpleObjVO;
 import com.persagy.fm.department.service.IDepartmentService;
+import com.persagy.fm.depproject.model.DepProject;
 import com.persagy.fm.person.constant.enums.CertificateTypeEnum;
 import com.persagy.fm.person.constant.enums.PersonTypeEnum;
 import com.persagy.fm.person.dao.PersonMapper;
 import com.persagy.fm.person.model.ConvertPersonTool;
 import com.persagy.fm.person.model.Person;
 import com.persagy.fm.person.model.dto.*;
+import com.persagy.fm.person.model.vo.LatestJobNumberVO;
 import com.persagy.fm.person.model.vo.ResponsePersonItemVO;
 import com.persagy.fm.person.model.vo.ResponsePersonListItemVO;
 import com.persagy.fm.person.service.IPersonService;
@@ -226,7 +228,8 @@ public class PersonServiceImpl extends ServiceImpl<PersonMapper, Person>
      * @author lixing
      * @version V1.0 2021/3/23 3:15 下午
      */
-    private void checkUserName(String username) {
+    @Override
+    public void checkUserName(String username) {
         List<Person> people = queryByUsername(username);
         if (!CollectionUtils.isEmpty(people)) {
             throw new IllegalArgumentException("账号重复");
@@ -247,7 +250,8 @@ public class PersonServiceImpl extends ServiceImpl<PersonMapper, Person>
      * @author lixing
      * @version V1.0 2021/3/23 3:15 下午
      */
-    private void checkPhoneNum(String phoneNum) {
+    @Override
+    public void checkPhoneNum(String phoneNum) {
         PageQuerySaasAccountDTO pageQuerySaasAccountDTO = new PageQuerySaasAccountDTO();
         pageQuerySaasAccountDTO.setPhoneNum(phoneNum);
         List<SaasAccountListItemVO> accountListItemVoList = saasAccountService.querySaasAccountList(pageQuerySaasAccountDTO);
@@ -281,7 +285,8 @@ public class PersonServiceImpl extends ServiceImpl<PersonMapper, Person>
      * @author lixing
      * @version V1.0 2021/4/1 3:03 下午
      */
-    private void checkIdNumber(String idNumber) {
+    @Override
+    public void checkIdNumber(String idNumber) {
         List<Person> people = queryByIdCard(idNumber);
         if (!CollectionUtils.isEmpty(people)) {
             throw new IllegalArgumentException("身份证号重复");
@@ -727,4 +732,23 @@ public class PersonServiceImpl extends ServiceImpl<PersonMapper, Person>
         }
         return certificateTypeVO;
     }
+
+    @Override
+    public LatestJobNumberVO queryLatestJobNumber() {
+        LatestJobNumberVO latestJobNumberVO = new LatestJobNumberVO();
+
+        QueryWrapper<Person> personQueryWrapper = new QueryWrapper<>();
+        personQueryWrapper.eq(Person.PROP_VALID, ValidEnum.TRUE.getType());
+        personQueryWrapper.orderByDesc(Person.PROP_CREATIONTIME);
+
+        IPage<Person> pageParam = new Page<>(1, 1,true);
+        IPage<Person> results = getBaseMapper().selectPage(pageParam, personQueryWrapper);
+        List<Person> records = results.getRecords();
+        if (!CollectionUtils.isEmpty(records)) {
+            Person person = records.get(0);
+            latestJobNumberVO.setJobNumber(person.getJobNumber());
+        }
+
+        return latestJobNumberVO;
+    }
 }

+ 1 - 6
fm-person/src/main/java/com/persagy/fm/saas/accountrole/service/impl/SaasAccountRoleServiceImpl.java

@@ -80,12 +80,7 @@ public class SaasAccountRoleServiceImpl implements ISaasAccountRoleService {
      */
     @Override
     public List<SaasAccountRole> querySaasAccountRoleList(QuerySaasAccountRoleDTO querySaasAccountRoleDTO) {
-        String accountId = querySaasAccountRoleDTO.getAccountId();
-        querySaasAccountRoleDTO.setDefaultValue();
-        // 如果查询条件中不包含accountId, setDefaultValue() 会将accountId设置为当前登录人,这里需要重新置空
-        if (StringUtils.isEmpty(accountId)) {
-            querySaasAccountRoleDTO.setAccountId(null);
-        }
+        querySaasAccountRoleDTO.setDefaultValueNoAccountId();
         FmResponseContent<List<SaasAccountRole>> responseContent = saasAccountRoleClient.querySaasAccountRoleList(querySaasAccountRoleDTO);
         return responseContent.getContent();
     }

+ 1 - 1
fm-person/src/main/resources/mapper/PersonMapper.xml

@@ -63,7 +63,7 @@
 
     <select id="queryPersonNameList" parameterType="com.persagy.fm.person.model.dto.NameQuickSearchDTO"
             resultType="com.persagy.fm.person.model.Person">
-        select distinct p.name
+        select distinct p.name, p.name_pinyin
         from person p,
         work_resume w
         where p.id = w.person_id