Browse Source

创建项目根据code判断决定项目名称

增加有下级不能删除的判断
test
lucky 4 years ago
parent
commit
f1bfff742d
  1. 40
      src/main/java/com/ccsens/carbasics/service/ManagementService.java
  2. 11
      src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java
  3. 4
      src/main/java/com/ccsens/carbasics/util/DefaultCodeError.java
  4. 3
      src/main/resources/mapper_dao/OrganizationDao.xml

40
src/main/java/com/ccsens/carbasics/service/ManagementService.java

@ -12,15 +12,14 @@ import com.ccsens.carbasics.bean.po.*;
import com.ccsens.carbasics.bean.vo.AccountVo;
import com.ccsens.carbasics.bean.vo.ManagementVo;
import com.ccsens.carbasics.persist.dao.*;
import com.ccsens.carbasics.persist.mapper.OrganizationLevelMapper;
import com.ccsens.carbasics.persist.mapper.OrganizationPositionTypeRelationMapper;
import com.ccsens.carbasics.util.Constant;
import com.ccsens.carbasics.util.DefaultCodeError;
import com.ccsens.cloudutil.bean.tall.dto.ProjectDto;
import com.ccsens.cloudutil.feign.Tall3FeignClient;
import com.ccsens.common.bean.po.ConstantExample;
import com.ccsens.common.persist.mapper.ConstantMapper;
import com.ccsens.util.exception.BaseException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Repository;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
@ -52,6 +51,10 @@ public class ManagementService implements IManagementService {
@Resource
private OrganizationPositionTypeRelationDao positionTypeRelationDao;
@Resource
private OrganizationMemberPositionDao memberPositionDao;
@Resource
private Tall3FeignClient tall3FeignClient;
@Resource
private Snowflake snowflake;
@Override
@ -169,6 +172,11 @@ public class ManagementService implements IManagementService {
BeanUtil.copyProperties(param,organization);
organizationDao.updateByPrimaryKeySelective(organization);
//TODO 同步修改tall项目名称
ProjectDto.SaveProjectDto saveProjectDto = new ProjectDto.SaveProjectDto();
saveProjectDto.setId(param.getId());
saveProjectDto.setName(organization.getName());
log.info("调用feign修改项目名称:{}",saveProjectDto);
tall3FeignClient.saveProjectList(saveProjectDto);
}
@ -200,10 +208,29 @@ public class ManagementService implements IManagementService {
@Override
public void delDepartment(ManagementDto.DelDepartment param, Long userId) {
OrganizationDepartmentParentExample departmentParentExample = new OrganizationDepartmentParentExample();
departmentParentExample.createCriteria().andParentIdEqualTo(param.getDid());
List<OrganizationDepartmentParent> departmentParentList = departmentParentDao.selectByExample(departmentParentExample);
if (CollectionUtil.isNotEmpty(departmentParentList)) {
throw new BaseException(DefaultCodeError.HAVE_SON_NOT_DEL);
}
ManagementVo.HospitalData sonDepartmentData = organizationDao.querySonDepartmentData(param.getDid());
if (ObjectUtil.isNull(sonDepartmentData)) {
throw new BaseException(DefaultCodeError.NOT_HAVE_DEPARTMENT);
}
if (CollectionUtil.isNotEmpty(sonDepartmentData.getPositionInfoList())) {
throw new BaseException(DefaultCodeError.DEPARTMENT_HAVE_POSITION);
}
OrganizationDepartment department = new OrganizationDepartment();
department.setId(param.getDid());
department.setRecStatus((byte) 2);
departmentDao.updateByPrimaryKeySelective(department);
//删除父子级
OrganizationDepartmentParentExample delDepartmentParentExample = new OrganizationDepartmentParentExample();
delDepartmentParentExample.createCriteria().andDepartmentIdEqualTo(param.getDid());
OrganizationDepartmentParent departmentParent = new OrganizationDepartmentParent();
departmentParent.setRecStatus((byte) 2);
departmentParentDao.updateByExampleSelective(departmentParent,delDepartmentParentExample);
}
@Override
@ -219,6 +246,13 @@ public class ManagementService implements IManagementService {
@Override
public void delPosition(ManagementDto.DelPosition param, Long userId) {
OrganizationMemberPositionExample memberPositionExample = new OrganizationMemberPositionExample();
memberPositionExample.createCriteria().andPositionIdEqualTo(param.getPositionId());
List<OrganizationMemberPosition> memberPositionList = memberPositionDao.selectByExample(memberPositionExample);
if (CollectionUtil.isNotEmpty(memberPositionList)) {
throw new BaseException(DefaultCodeError.POSITION_HAVE_MEMBER);
}
OrganizationPosition position = new OrganizationPosition();
position.setId(param.getPositionId());
position.setRecStatus((byte) 2);

11
src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java

@ -78,7 +78,7 @@ public class QuestionnaireService implements IQuestionnaireService{
@Resource
private OrganizationPositionTypeDao positionTypeDao;
@Resource
private OrganizationPositionTypeRelationMapper positionTypeRelationMapper;
private OrganizationPositionTypeRelationDao positionTypeRelationMapper;
@Override
public List<QuestionnaireVo.AreaInfo> queryArea(QuestionnaireDto.QueryArea param, Long userId) {
@ -423,9 +423,14 @@ public class QuestionnaireService implements IQuestionnaireService{
OrganizationDepartment departmentOne = new OrganizationDepartment();
departmentOne.setId(snowflake.nextId());
departmentOne.setOrganizationId(organization.getId());
departmentOne.setCode(departmentTemplate.getCode());
//TODO 比较code 如果code相等 使用departmentName
departmentOne.setName(departmentTemplate.getName());
//比较code 如果code相等 使用departmentName
if (StrUtil.isNotBlank(departmentCode)) {
departmentOne.setCode(departmentTemplate.getCode());
if (departmentTemplate.getCode().equals(departmentCode)) {
departmentOne.setName(departmentName);
}
}
departmentDao.insertSelective(departmentOne);
if (departmentName.equals(departmentTemplate.getName())) {
department = departmentOne;

4
src/main/java/com/ccsens/carbasics/util/DefaultCodeError.java

@ -54,6 +54,10 @@ public class DefaultCodeError extends CodeError {
public static final Code FIRST_AID_AUDIT = new Code(507,"急救审核通过,数据不可修改", true);
public static final Code OUT_HOSPITAL_AUDIT = new Code(508,"出院审核通过,数据不可修改", true);
public static final Code HOSPITAL_NAME_REPEAT = new Code(509,"医院名称重复", true);
public static final Code HAVE_SON_NOT_DEL = new Code(510,"有下级不可删除", true);
public static final Code NOT_HAVE_DEPARTMENT = new Code(511,"部门不存在,请检查后重试", true);
public static final Code DEPARTMENT_HAVE_POSITION = new Code(512,"请删除部门下的职位", true);
public static final Code POSITION_HAVE_MEMBER = new Code(513,"请删除职位下的成员", true);

3
src/main/resources/mapper_dao/OrganizationDao.xml

@ -982,6 +982,7 @@
FROM
t_organization_department AS od
LEFT JOIN t_organization_position AS op ON od.id = op.department_id
AND op.rec_status = 0
LEFT JOIN t_organization_position_type_relation AS ptr ON ptr.position_id = op.id
AND ptr.rec_status = 0
LEFT JOIN t_organization_position_type AS pt ON ptr.position_type_id = pt.id
@ -993,7 +994,7 @@
WHERE
od.id = #{did}
AND od.rec_status = 0
AND op.rec_status = 0
</select>
<select id="queryNameRepeat" resultType="java.lang.Integer">

Loading…
Cancel
Save