This commit is contained in:
parent
41e88f49fc
commit
794b381c17
|
|
@ -3,6 +3,10 @@ package com.securitycontrol.entity.background.vo;
|
|||
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author 10488
|
||||
|
|
@ -14,18 +18,28 @@ public class HumanManageVo {
|
|||
private String userId;
|
||||
|
||||
@ApiModelProperty(value = "班组ID")
|
||||
@NotBlank(message = "班组不能为空", groups = {Query.class})
|
||||
@Length(max = 100, message = "班组字符长度不能超过100", groups = {Query.class})
|
||||
private String teamId;
|
||||
|
||||
@ApiModelProperty(value = "人员姓名")
|
||||
@NotBlank(message = "人员姓名不能为空", groups = {Query.class})
|
||||
@Length(max = 30, message = "人员姓名字符长度不能超过30", groups = {Query.class})
|
||||
private String userName;
|
||||
|
||||
@ApiModelProperty(value = "身份证号码")
|
||||
@NotBlank(message = "身份证号码不能为空", groups = {Query.class})
|
||||
@Length(max = 100, message = "身份证号码字符长度不能超过100", groups = {Query.class})
|
||||
private String idNumber;
|
||||
|
||||
@ApiModelProperty(value = "手机号码")
|
||||
@NotBlank(message = "手机号码不能为空", groups = {Query.class})
|
||||
@Length(max = 20, message = "手机号码字符长度不能超过100", groups = {Query.class})
|
||||
private String phone;
|
||||
|
||||
@ApiModelProperty(value = "工种")
|
||||
@NotBlank(message = "工种不能为空", groups = {Query.class})
|
||||
@Length(max = 30, message = "工种字符长度不能超过30", groups = {Query.class})
|
||||
private String userType;
|
||||
|
||||
@ApiModelProperty(value = "人员状态")
|
||||
|
|
@ -51,11 +65,21 @@ public class HumanManageVo {
|
|||
private String proName;
|
||||
|
||||
@JsonInclude(JsonInclude.Include.NON_EMPTY)
|
||||
@ApiModelProperty(value = "删除的文件ID")
|
||||
private String delFiles;
|
||||
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private String createTime;
|
||||
|
||||
|
||||
@JsonInclude(JsonInclude.Include.NON_EMPTY)
|
||||
private List<HumanManageVo.FileData> fileData;
|
||||
|
||||
@Data
|
||||
public static class FileData{
|
||||
private String fileId;
|
||||
private String base64Url;
|
||||
}
|
||||
/**
|
||||
* 查询条件限制
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -53,11 +53,17 @@ public class HumanManageController extends BaseController {
|
|||
return service.addOrUpdatePersonnel(file, params);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "人员详情")
|
||||
@GetMapping("getPersonnelById")
|
||||
public AjaxResult getPersonnelById(ParamDto dto) {
|
||||
return service.getPersonnelById(dto);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "删除人员")
|
||||
@PostMapping("delHuman")
|
||||
@PostMapping("delPersonnel")
|
||||
@Log(title = "人员管理", menu = "人车管理->人员管理", grade = OperationType.DELETE_BUSINESS, details = "删除人员", type = "业务日志")
|
||||
public AjaxResult delPro(@RequestBody HumanManageVo dto) {
|
||||
return service.delHuman(dto);
|
||||
public AjaxResult delPersonnelById(@RequestBody ParamDto dto) {
|
||||
return service.delPersonnelById(dto);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ package com.securitycontrol.background.mapper;
|
|||
import com.securitycontrol.entity.background.dto.ParamDto;
|
||||
import com.securitycontrol.entity.background.vo.HumanManageVo;
|
||||
import com.securitycontrol.entity.system.vo.ResourceFileVo;
|
||||
import org.apache.ibatis.annotations.MapKey;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
|
|
@ -74,11 +75,44 @@ public interface HumanManageMapper {
|
|||
|
||||
/**
|
||||
* 人员是否存在
|
||||
*
|
||||
* @param vo
|
||||
* @return List<Map < String>>
|
||||
* @description
|
||||
* @author cwchen
|
||||
* @date 2024/3/21 17:53
|
||||
*/
|
||||
@MapKey("id")
|
||||
List<Map<String, String>> userIsExist(HumanManageVo vo);
|
||||
|
||||
/**
|
||||
* 删除人员
|
||||
*
|
||||
* @param dto
|
||||
* @description
|
||||
* @author cwchen
|
||||
* @date 2024/3/21 20:37
|
||||
*/
|
||||
void delPersonnelById(ParamDto dto);
|
||||
|
||||
/**
|
||||
* 人员详情
|
||||
*
|
||||
* @param dto
|
||||
* @return HumanManageVo
|
||||
* @description
|
||||
* @author cwchen
|
||||
* @date 2024/3/21 20:40
|
||||
*/
|
||||
HumanManageVo getPersonnelById(ParamDto dto);
|
||||
|
||||
/**
|
||||
* 获取人员照片
|
||||
* @param userId
|
||||
* @return List<ResourceFileVo>
|
||||
* @description
|
||||
* @author cwchen
|
||||
* @date 2024/3/21 20:42
|
||||
*/
|
||||
List<ResourceFileVo> getFiles(String userId);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@ public interface HumanService {
|
|||
|
||||
/**
|
||||
* 新增/修改 用户
|
||||
*
|
||||
* @param file
|
||||
* @param params
|
||||
* @return AjaxResult
|
||||
|
|
@ -36,13 +37,25 @@ public interface HumanService {
|
|||
*/
|
||||
AjaxResult addOrUpdatePersonnel(MultipartFile file, String params);
|
||||
|
||||
|
||||
/**
|
||||
* ssss
|
||||
* 人员详情
|
||||
*
|
||||
* @param vo
|
||||
* @return
|
||||
* @param dto
|
||||
* @return AjaxResult
|
||||
* @description
|
||||
* @author cwchen
|
||||
* @date 2024/3/21 20:34
|
||||
*/
|
||||
AjaxResult delHuman(HumanManageVo vo);
|
||||
|
||||
AjaxResult getPersonnelById(ParamDto dto);
|
||||
|
||||
/**
|
||||
* 删除人员
|
||||
* @param dto
|
||||
* @return AjaxResult
|
||||
* @description
|
||||
* @author cwchen
|
||||
* @date 2024/3/21 20:35
|
||||
*/
|
||||
AjaxResult delPersonnelById(ParamDto dto);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ import com.securitycontrol.entity.background.dto.ParamDto;
|
|||
import com.securitycontrol.entity.background.vo.HumanManageVo;
|
||||
import com.securitycontrol.entity.system.vo.ResourceFileVo;
|
||||
import com.securitycontrol.system.api.RemoteFileService;
|
||||
import com.securitycontrol.system.api.domain.SysFile;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
|
@ -152,16 +153,58 @@ public class HumanServiceImpl implements HumanService {
|
|||
}
|
||||
|
||||
@Override
|
||||
public AjaxResult delHuman(HumanManageVo vo) {
|
||||
try{
|
||||
HumanManageVo delvo=new HumanManageVo();
|
||||
delvo.setUserId(vo.getUserId());
|
||||
// delvo.setDelFalge("0");
|
||||
mapper.updateHuman(delvo);
|
||||
}catch (Exception e){
|
||||
public AjaxResult getPersonnelById(ParamDto dto) {
|
||||
HumanManageVo vo = new HumanManageVo();
|
||||
vo = mapper.getPersonnelById(dto);
|
||||
String decryptIdNumber = AesCbcUtils.decrypt(vo.getIdNumber());
|
||||
if(decryptIdNumber != null){
|
||||
vo.setIdNumber(decryptIdNumber);
|
||||
}
|
||||
List<ResourceFileVo> resourceFileVos = mapper.getFiles(vo.getUserId());
|
||||
if (CollectionUtils.isNotEmpty(resourceFileVos)) {
|
||||
List<HumanManageVo.FileData> list = new ArrayList<>();
|
||||
for (ResourceFileVo fileVo : resourceFileVos) {
|
||||
String base64 = null;
|
||||
Result<SysFile> result = remoteFileService.getImgBase64(fileVo.getFileId(), SecurityConstants.INNER);
|
||||
if (result != null && result.getCode() == HttpStatus.SUCCESS && result.getData() != null) {
|
||||
String jsonString = JSON.toJSONString(result.getData());
|
||||
JSONObject item = JSON.parseObject(jsonString);
|
||||
base64 = item.getString("url");
|
||||
}
|
||||
HumanManageVo.FileData fileData = new HumanManageVo.FileData();
|
||||
fileData.setFileId(fileVo.getFileId());
|
||||
fileData.setBase64Url(base64);
|
||||
list.add(fileData);
|
||||
}
|
||||
vo.setFileData(list);
|
||||
}
|
||||
return AjaxResult.success(vo);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public AjaxResult delPersonnelById(ParamDto dto) {
|
||||
try {
|
||||
if (StringUtils.isEmpty(dto.getId())) {
|
||||
return AjaxResult.error("参数不完整");
|
||||
}
|
||||
mapper.delPersonnelById(dto);
|
||||
// 查询人员照片
|
||||
List<ResourceFileVo> files = mapper.getFiles(dto.getId());
|
||||
if (CollectionUtils.isNotEmpty(files)) {
|
||||
files.forEach(item -> {
|
||||
mapper.delFile(item.getFileId());
|
||||
remoteFileService.delFile(item.getFileId(), SecurityConstants.INNER);
|
||||
});
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
log.error("删除人员", e);
|
||||
//手动回滚异常
|
||||
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
||||
return AjaxResult.error();
|
||||
}
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -71,11 +71,15 @@
|
|||
<delete id="delFile">
|
||||
DELETE FROM tb_resource_file WHERE file_id = #{fileId}
|
||||
</delete>
|
||||
<!--删除人员-->
|
||||
<delete id="delPersonnelById">
|
||||
DELETE FROM t_team_people WHERE user_id = #{id}
|
||||
</delete>
|
||||
<!--获取人员列表-->
|
||||
<select id="getHumanLists" resultType="com.securitycontrol.entity.background.vo.HumanManageVo">
|
||||
SELECT
|
||||
ttp.user_id AS userId,
|
||||
ttp.user_name as userName,
|
||||
ttp.user_name AS userName,
|
||||
sd.dict_name AS userType,
|
||||
twt.team_leader AS teamLeader,
|
||||
twt.team_name AS teamName,
|
||||
|
|
@ -102,4 +106,22 @@
|
|||
SELECT user_id AS id,id_number AS value FROM t_team_people WHERE user_id != #{userId}
|
||||
</if>
|
||||
</select>
|
||||
<!--人员详情-->
|
||||
<select id="getPersonnelById" resultType="com.securitycontrol.entity.background.vo.HumanManageVo">
|
||||
SELECT
|
||||
ttp.user_id AS userId,
|
||||
ttp.user_name AS userName,
|
||||
ttp.user_type AS userType,
|
||||
ttp.id_number AS idNumber,
|
||||
ttp.phone,
|
||||
ttp.team_id AS teamId
|
||||
FROM t_team_people ttp
|
||||
WHERE ttp.user_id = #{id}
|
||||
</select>
|
||||
<!--获取人员照片-->
|
||||
<select id="getFiles" resultType="com.securitycontrol.entity.system.vo.ResourceFileVo">
|
||||
SELECT id AS resourceId,
|
||||
file_id AS fileId
|
||||
FROM tb_resource_file WHERE source_id = #{userId}
|
||||
</select>
|
||||
</mapper>
|
||||
Loading…
Reference in New Issue