Commit 8fdd65dc authored by suhuiguang's avatar suhuiguang

1.公共模块,人员资质修改,资质修改为json

parent c1eca543
package com.yeejoin.amos.boot.module.tcm.api.dto;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.annotation.TableField;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
......@@ -89,10 +91,15 @@ public class TzsUserInfoDto extends BaseDto {
@ApiModelProperty(value = "人员内部编码")
private String innerPersonCode;
@ApiModelProperty(value = "验检验专用-级别")
private String permissionLevel;
@ApiModelProperty(value = "其他附件")
private String otherAccessories;
@ApiModelProperty(value = "验检验专用-资质项目")
private String permissionItem;
@ApiModelProperty(value = "验检验专用-资质数据json")
private String permissionData;
@ApiModelProperty(value = "检验资质json, 固定前缀permissionData,入库时数据存放到permissionData")
private JSONArray permissionData66151;
@ApiModelProperty(value = "检测资质json,固定前缀permissionData,入库时数据存放到permissionData")
private JSONArray permissionData66152;
}
......@@ -102,6 +102,7 @@ public class TzsUserInfo extends BaseEntity {
/**
* 证件照片
*
*/
@TableField(value = "appoint_doc")
private String appointDoc;
......@@ -163,15 +164,23 @@ public class TzsUserInfo extends BaseEntity {
private String otherAccessories;
/**
* 验检验专用-级别
* 验检验专用-级别-废弃,被permissionData替代
*/
@Deprecated
@TableField(value = "permission_level")
private String permissionLevel;
/**
* 验检验专用-资质项目
* 验检验专用-资质项目-废弃,被permissionData替代
*/
@Deprecated
@TableField(value = "permission_item")
private String permissionItem;
/**
* 验检验专用-资质数据json,替代:permission_level、permission_item
*/
@TableField(value = "permission_data")
private String permissionData;
}
......@@ -145,10 +145,4 @@ public class TzsUserInfoVo {
* */
private String companyType;
@ApiModelProperty(value = "验检验专用-级别")
private String permissionLevel;
@ApiModelProperty(value = "验检验专用-资质项目")
private JSONArray permissionItem;
}
......@@ -95,21 +95,30 @@ public class TzsUserInfoController extends BaseController {
// 兼容前端只传一个值,并且非json类型的情况
tzsUserInfo.setPost(tzsUserInfoServiceImpl.isJSONValid(tzsUserInfo.getPost()) ? tzsUserInfo.getPost() : "[\"" + tzsUserInfo.getPost() + "\"]");
tzsUserInfo.setPostName(tzsUserInfoServiceImpl.setPostName(tzsUserInfo.getPost()));
this.setPermissionData(tzsUserInfo);
tzsUserInfo = tzsUserInfoServiceImpl.createWithModel(tzsUserInfo);
return ResponseHelper.buildResponse(tzsUserInfo);
}
private void setPermissionData(TzsUserInfoDto tzsUserInfo) {
// 所有资质数据都存放到一个json字段,key为"permissionData+{人员类型},value为资质
JSONObject data = new JSONObject();
data.put("permissionData66151",tzsUserInfo.getPermissionData66151());
data.put("permissionData66152",tzsUserInfo.getPermissionData66152());
tzsUserInfo.setPermissionData(data.toJSONString());
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/update")
@ApiOperation(httpMethod = "POST", value = "修改人员信息", notes = "修改人员信息")
public ResponseModel<TzsUserInfo> update(@RequestBody JSONObject map,
public ResponseModel<TzsUserInfoDto> update(@RequestBody JSONObject map,
@RequestParam Long rowId) {
Map<String, Object> userInfo = (Map<String, Object>)map.get("userInfo");
TzsUserInfo tzsUserInfo = JSON.parseObject(JSON.toJSONString(userInfo), TzsUserInfo.class);
TzsUserInfoDto tzsUserInfoDto = JSON.parseObject(JSON.toJSONString(userInfo), TzsUserInfoDto.class);
LambdaQueryWrapper<TzsUserInfo> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(TzsUserInfo::getCertificateType,tzsUserInfo.getCertificateType());
queryWrapper.eq(TzsUserInfo::getCertificateNum,tzsUserInfo.getCertificateNum());
queryWrapper.eq(TzsUserInfo::getCertificateType,tzsUserInfoDto.getCertificateType());
queryWrapper.eq(TzsUserInfo::getCertificateNum,tzsUserInfoDto.getCertificateNum());
queryWrapper.ne(TzsUserInfo::getSequenceNbr,rowId);
queryWrapper.eq(TzsUserInfo::getIsDelete, false);
TzsUserInfo certificateNum = tzsUserInfoMapper.selectOne(queryWrapper);
......@@ -118,7 +127,7 @@ public class TzsUserInfoController extends BaseController {
}
LambdaQueryWrapper<TzsUserInfo> queryWrapper1 = new LambdaQueryWrapper<>();
queryWrapper1.eq(TzsUserInfo::getPhone,tzsUserInfo.getPhone());
queryWrapper1.eq(TzsUserInfo::getPhone,tzsUserInfoDto.getPhone());
queryWrapper1.ne(TzsUserInfo::getSequenceNbr,rowId);
queryWrapper1.eq(TzsUserInfo::getIsDelete, false);
TzsUserInfo phone = tzsUserInfoMapper.selectOne(queryWrapper1);
......@@ -144,14 +153,14 @@ public class TzsUserInfoController extends BaseController {
tzsUserInfoServiceImpl.deleteGroupAndPersonRelation(selectOne.getPostName(),selectOne.getAmosUserId());
}
tzsUserInfo.setUnitName(companyModel.getCompanyName());
tzsUserInfo.setUnitCode(companyModel.getCompanyCode());
tzsUserInfo.setSequenceNbr(rowId);
tzsUserInfo.setRecDate(new Date());
tzsUserInfoDto.setUnitName(companyModel.getCompanyName());
tzsUserInfoDto.setUnitCode(companyModel.getCompanyCode());
tzsUserInfoDto.setSequenceNbr(rowId);
tzsUserInfoDto.setRecDate(new Date());
// 兼容前端只传一个值,并且非json类型的情况
tzsUserInfo.setPost(tzsUserInfoServiceImpl.isJSONValid(tzsUserInfo.getPost()) ? tzsUserInfo.getPost() : "[\"" + tzsUserInfo.getPost() + "\"]");
String postName = tzsUserInfoServiceImpl.setPostName(tzsUserInfo.getPost());
tzsUserInfo.setPostName(postName);
tzsUserInfoDto.setPost(tzsUserInfoServiceImpl.isJSONValid(tzsUserInfoDto.getPost()) ? tzsUserInfoDto.getPost() : "[\"" + tzsUserInfoDto.getPost() + "\"]");
String postName = tzsUserInfoServiceImpl.setPostName(tzsUserInfoDto.getPost());
tzsUserInfoDto.setPostName(postName);
if(!ObjectUtils.isEmpty(selectOne.getAmosUserId())){
// 添加新的人员与组的关系
String[] split = postName.split(",");
......@@ -163,8 +172,9 @@ public class TzsUserInfoController extends BaseController {
}
}
}
tzsUserInfoServiceImpl.updateById(tzsUserInfo);
return ResponseHelper.buildResponse(tzsUserInfo);
this.setPermissionData(tzsUserInfoDto);
tzsUserInfoServiceImpl.updateWithModel(tzsUserInfoDto);
return ResponseHelper.buildResponse(tzsUserInfoDto);
}
......
package com.yeejoin.amos.boot.module.tcm.biz.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
......@@ -208,19 +210,25 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
if (!ObjectUtils.isEmpty(tzsUserInfo.getEquipType())) {
tzsUserInfoVo.setEquipType(JSON.parseArray(tzsUserInfo.getEquipType()));
}
if (!ObjectUtils.isEmpty(tzsUserInfo.getPermissionItem())) {
tzsUserInfoVo.setPermissionItem(JSON.parseArray(tzsUserInfo.getPermissionItem()));
}
tzsUserInfoVo.setIdentification(ObjectUtils.isEmpty(tzsUserInfo.getIdentification()) ? null : JSON.parseArray(tzsUserInfo.getIdentification()));
tzsUserInfoVo.setProfile(ObjectUtils.isEmpty(tzsUserInfo.getProfile()) ? null : JSON.parseArray(tzsUserInfo.getProfile()));
tzsUserInfoVo.setAppointDoc(ObjectUtils.isEmpty(tzsUserInfo.getAppointDoc()) ? null : JSON.parseArray(tzsUserInfo.getAppointDoc()));
tzsUserInfoVo.setOtherAccessories(ObjectUtils.isEmpty(tzsUserInfo.getOtherAccessories()) ? null : JSON.parseArray(tzsUserInfo.getOtherAccessories()));
String companyType = getUnitType();
tzsUserInfoVo.setCompanyType(companyType.contains("个人主体") ? "individual" : "no-individual");
maps.put("userInfo", tzsUserInfoVo);
Map<String,Object> userInfoMap =BeanUtil.beanToMap(tzsUserInfoVo);
userInfoMap.putAll(this.getPermissionDataJson(tzsUserInfo.getPermissionData()));
maps.put("userInfo", userInfoMap);
return maps;
}
private Map<? extends String,?> getPermissionDataJson(String permissionData) {
if(permissionData != null){
return JSON.parseObject(permissionData);
}
return new JSONObject();
}
@Override
public boolean BindAccount(Map<String, Object> map) {
String loginName = map.get("userName").toString();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment