|
@@ -4,6 +4,8 @@ package com.citu.module.menduner.system.service.enterprise.register;
|
|
|
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
|
|
|
import com.citu.framework.common.pojo.PageResult;
|
|
|
import com.citu.framework.common.util.object.BeanUtils;
|
|
|
+import com.citu.framework.common.util.validation.ValidationUtils;
|
|
|
+import com.citu.module.menduner.common.util.LoginUserContext;
|
|
|
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.controller.base.enterprise.register.EnterpriseRegisterAuditReqVO;
|
|
@@ -11,18 +13,18 @@ import com.citu.module.menduner.system.controller.base.enterprise.register.Enter
|
|
|
import com.citu.module.menduner.system.controller.base.enterprise.register.EnterpriseRegisterSaveReqVO;
|
|
|
import com.citu.module.menduner.system.convert.EnterpriseConvert;
|
|
|
import com.citu.module.menduner.system.dal.dataobject.enterprise.EnterpriseBusinessDO;
|
|
|
-import com.citu.module.menduner.system.dal.dataobject.enterprise.EnterpriseDO;
|
|
|
import com.citu.module.menduner.system.dal.dataobject.enterprise.EnterpriseRegisterDO;
|
|
|
import com.citu.module.menduner.system.dal.dataobject.enterprise.EnterpriseUserBindDO;
|
|
|
import com.citu.module.menduner.system.dal.mysql.enterprise.EnterpriseBusinessMapper;
|
|
|
-import com.citu.module.menduner.system.dal.mysql.enterprise.EnterpriseMapper;
|
|
|
import com.citu.module.menduner.system.dal.mysql.enterprise.EnterpriseRegisterMapper;
|
|
|
import com.citu.module.menduner.system.enums.MendunerStatusEnum;
|
|
|
import com.citu.module.menduner.system.enums.enterprise.EnterpriseRegisterAuditStatusEnum;
|
|
|
import com.citu.module.menduner.system.enums.enterprise.EnterpriseUserTypeEnum;
|
|
|
+import com.citu.module.menduner.system.service.enterprise.EnterpriseService;
|
|
|
import com.citu.module.menduner.system.service.enterprise.bind.EnterpriseUserBindService;
|
|
|
-import com.citu.module.menduner.common.util.LoginUserContext;
|
|
|
+import com.citu.module.menduner.system.service.enterprise.business.EnterpriseBusinessService;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.util.StringUtils;
|
|
|
import org.springframework.validation.annotation.Validated;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
@@ -40,13 +42,13 @@ import static com.citu.module.menduner.system.enums.ErrorCodeConstants.*;
|
|
|
public class EnterpriseRegisterServiceImpl implements EnterpriseRegisterService {
|
|
|
|
|
|
@Resource
|
|
|
- private EnterpriseRegisterMapper enterpriseRegisterMapper;
|
|
|
+ private EnterpriseRegisterMapper mapper;
|
|
|
|
|
|
@Resource
|
|
|
- private EnterpriseBusinessMapper enterpriseBusinessMapper;
|
|
|
+ private EnterpriseBusinessService businessService;
|
|
|
|
|
|
@Resource
|
|
|
- private EnterpriseMapper enterpriseMapper;
|
|
|
+ private EnterpriseService enterpriseService;
|
|
|
|
|
|
@Resource
|
|
|
private EnterpriseUserBindService userBindService;
|
|
@@ -55,7 +57,7 @@ public class EnterpriseRegisterServiceImpl implements EnterpriseRegisterService
|
|
|
public Long createEnterpriseRegister(EnterpriseRegisterSaveReqVO createReqVO) {
|
|
|
// 插入
|
|
|
EnterpriseRegisterDO enterpriseRegister = BeanUtils.toBean(createReqVO, EnterpriseRegisterDO.class);
|
|
|
- enterpriseRegisterMapper.insert(enterpriseRegister);
|
|
|
+ mapper.insert(enterpriseRegister);
|
|
|
// 返回
|
|
|
return enterpriseRegister.getId();
|
|
|
}
|
|
@@ -66,7 +68,7 @@ public class EnterpriseRegisterServiceImpl implements EnterpriseRegisterService
|
|
|
validateEnterpriseRegisterExists(updateReqVO.getId());
|
|
|
// 更新
|
|
|
EnterpriseRegisterDO updateObj = BeanUtils.toBean(updateReqVO, EnterpriseRegisterDO.class);
|
|
|
- enterpriseRegisterMapper.updateById(updateObj);
|
|
|
+ mapper.updateById(updateObj);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -74,29 +76,29 @@ public class EnterpriseRegisterServiceImpl implements EnterpriseRegisterService
|
|
|
// 校验存在
|
|
|
validateEnterpriseRegisterExists(id);
|
|
|
// 删除
|
|
|
- enterpriseRegisterMapper.deleteById(id);
|
|
|
+ mapper.deleteById(id);
|
|
|
}
|
|
|
|
|
|
private void validateEnterpriseRegisterExists(Long id) {
|
|
|
- if (enterpriseRegisterMapper.selectById(id) == null) {
|
|
|
+ if (mapper.selectById(id) == null) {
|
|
|
throw exception(MDE_ENTERPRISE_REGISTER_NOT_EXISTS);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public EnterpriseRegisterDO getEnterpriseRegister(Long id) {
|
|
|
- return enterpriseRegisterMapper.selectById(id);
|
|
|
+ return mapper.selectById(id);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public PageResult<EnterpriseRegisterDO> getEnterpriseRegisterPage(EnterpriseRegisterPageReqVO pageReqVO) {
|
|
|
- return enterpriseRegisterMapper.selectPage(pageReqVO);
|
|
|
+ return mapper.selectPage(pageReqVO);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@DSTransactional
|
|
|
public void approved(EnterpriseRegisterAuditReqVO reqVO) {
|
|
|
- EnterpriseRegisterDO enterpriseRegister = enterpriseRegisterMapper.selectById(reqVO.getId());
|
|
|
+ EnterpriseRegisterDO enterpriseRegister = mapper.selectById(reqVO.getId());
|
|
|
if (null == enterpriseRegister) {
|
|
|
throw exception(MDE_ENTERPRISE_REGISTER_NOT_EXISTS);
|
|
|
}
|
|
@@ -105,47 +107,44 @@ public class EnterpriseRegisterServiceImpl implements EnterpriseRegisterService
|
|
|
// 已审批
|
|
|
throw exception(MDE_ENTERPRISE_REGISTER_AUDITING_APPROVED);
|
|
|
}
|
|
|
- EnterpriseBusinessDO enterpriseBusinessDO = enterpriseBusinessMapper.selectByCode(enterpriseRegister.getCode());
|
|
|
+ // 查询社会统一信用代码是否存在
|
|
|
+ EnterpriseBusinessDO enterpriseBusinessDO = businessService.getByCode(enterpriseRegister.getCode());
|
|
|
if (null != enterpriseBusinessDO) {
|
|
|
throw exception(MDE_ENTERPRISE_REGISTER_DUPLICATE);
|
|
|
}
|
|
|
|
|
|
enterpriseRegister.setStatus(EnterpriseRegisterAuditStatusEnum.APPROVED.getStatus());
|
|
|
enterpriseRegister.setReason(reqVO.getReason());
|
|
|
- enterpriseRegisterMapper.updateById(enterpriseRegister);
|
|
|
+ mapper.updateById(enterpriseRegister);
|
|
|
|
|
|
// 增加企业信息
|
|
|
- EnterpriseDO enterprise = new EnterpriseDO();
|
|
|
- enterprise.setName(enterpriseRegister.getName());
|
|
|
- enterprise.setAnotherName(enterpriseRegister.getName());
|
|
|
- enterprise.setStatus(MendunerStatusEnum.ENABLE.getStatus());
|
|
|
- enterpriseMapper.insert(enterprise);
|
|
|
+ Long enterpriseId = enterpriseService.createSimpleEnterprise(
|
|
|
+ enterpriseRegister.getName(), enterpriseRegister.getContactName(),
|
|
|
+ enterpriseRegister.getPhone(), enterpriseRegister.getPrepare());
|
|
|
|
|
|
// 增加企业工商信息
|
|
|
- EnterpriseBusinessDO business = new EnterpriseBusinessDO();
|
|
|
- business.setEnterpriseId(enterprise.getId());
|
|
|
- business.setCode(enterpriseRegister.getCode());
|
|
|
- business.setName(enterpriseRegister.getName());
|
|
|
-
|
|
|
- enterpriseBusinessMapper.insert(business);
|
|
|
+ if(StringUtils.hasText(enterpriseRegister.getCode())) {
|
|
|
+ // 不为空时添加工商信息
|
|
|
+ businessService.createSimpleBusiness(enterpriseId, enterpriseRegister.getCode(), enterpriseRegister.getName());
|
|
|
+ }
|
|
|
|
|
|
// 增加企业用户
|
|
|
- EnterpriseUserBindDO userBindDO = new EnterpriseUserBindDO();
|
|
|
- userBindDO.setEnterpriseId(enterprise.getId());
|
|
|
- userBindDO.setUserId(enterpriseRegister.getUserId());
|
|
|
- userBindDO.setName(enterpriseRegister.getName()+"-"+"BOSS");
|
|
|
- userBindDO.setStatus(MendunerStatusEnum.ENABLE.getStatus());
|
|
|
- userBindDO.setUserType(EnterpriseUserTypeEnum.ADMIN.getType());
|
|
|
- userBindDO.setPhone(enterpriseRegister.getPhone());
|
|
|
- userBindDO.setEmail(enterpriseRegister.getEmail());
|
|
|
-
|
|
|
+ EnterpriseUserBindDO userBindDO = EnterpriseUserBindDO.builder()
|
|
|
+ .enterpriseId(enterpriseId)
|
|
|
+ .userId(enterpriseRegister.getUserId())
|
|
|
+ .name(enterpriseRegister.getContactName())
|
|
|
+ .status(MendunerStatusEnum.ENABLE.getStatus())
|
|
|
+ .phone(enterpriseRegister.getPhone())
|
|
|
+ .email(enterpriseRegister.getEmail())
|
|
|
+ .userType(EnterpriseUserTypeEnum.ADMIN.getType())
|
|
|
+ .build();
|
|
|
userBindService.createUser(userBindDO);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@DSTransactional
|
|
|
public void reject(EnterpriseRegisterAuditReqVO reqVO) {
|
|
|
- EnterpriseRegisterDO enterpriseRegister = enterpriseRegisterMapper.selectById(reqVO.getId());
|
|
|
+ EnterpriseRegisterDO enterpriseRegister = mapper.selectById(reqVO.getId());
|
|
|
if (null == enterpriseRegister) {
|
|
|
throw exception(MDE_ENTERPRISE_REGISTER_NOT_EXISTS);
|
|
|
}
|
|
@@ -161,29 +160,68 @@ public class EnterpriseRegisterServiceImpl implements EnterpriseRegisterService
|
|
|
}
|
|
|
enterpriseRegister.setStatus(EnterpriseRegisterAuditStatusEnum.REJECT.getStatus());
|
|
|
enterpriseRegister.setReason(reqVO.getReason());
|
|
|
- enterpriseRegisterMapper.updateById(enterpriseRegister);
|
|
|
+ mapper.updateById(enterpriseRegister);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@DSTransactional
|
|
|
public void apply(AppEnterpriseRegisterReqVO reqVO) {
|
|
|
- if (enterpriseRegisterMapper.selectCountByUserIdAndStatus(LoginUserContext.getUserId(),
|
|
|
+
|
|
|
+ validateApply(reqVO);
|
|
|
+ EnterpriseRegisterDO register = EnterpriseConvert.INSTANCE.convert6(reqVO);
|
|
|
+ register.setStatus(EnterpriseRegisterAuditStatusEnum.AUDITING.getStatus());
|
|
|
+ register.setUserId(LoginUserContext.getUserId());
|
|
|
+ mapper.insert(register);
|
|
|
+ }
|
|
|
+
|
|
|
+ /** 效验企业申请注册参数 **/
|
|
|
+ public void validateApply(AppEnterpriseRegisterReqVO reqVO) {
|
|
|
+ if (null == reqVO.getPrepare() || !reqVO.getPrepare()) {
|
|
|
+ // 非筹备中,参数一定要填
|
|
|
+ if (!StringUtils.hasText(reqVO.getCode())) {
|
|
|
+ // 统一社会信用代码为空
|
|
|
+ throw exception(MDE_ENTERPRISE_REGISTER_CREDIT_CODE_NOT_NULL);
|
|
|
+ }
|
|
|
+ if (reqVO.getCode().length() != 18) {
|
|
|
+ // 统一社会信用代码
|
|
|
+ throw exception(MDE_ENTERPRISE_REGISTER_CREDIT_CODE_FORMAT_ERROR);
|
|
|
+ }
|
|
|
+ if (!ValidationUtils.isURL(reqVO.getBusinessLicenseUrl())) {
|
|
|
+ // 营业执照图片
|
|
|
+ throw exception(MDE_ENTERPRISE_REGISTER_BUSINESS_LICENSE_URL_NOT_NULL);
|
|
|
+ }
|
|
|
+ reqVO.setPrepare(false);
|
|
|
+ }else {
|
|
|
+ // 筹备中 可以不填,填了就效验
|
|
|
+ if (StringUtils.hasText(reqVO.getCode())) {
|
|
|
+ if (reqVO.getCode().length() != 18) {
|
|
|
+ // 统一社会信用代码
|
|
|
+ throw exception(MDE_ENTERPRISE_REGISTER_CREDIT_CODE_FORMAT_ERROR);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(StringUtils.hasText(reqVO.getBusinessLicenseUrl())) {
|
|
|
+ if (!ValidationUtils.isURL(reqVO.getBusinessLicenseUrl())) {
|
|
|
+ // 营业执照图片
|
|
|
+ throw exception(MDE_ENTERPRISE_REGISTER_BUSINESS_LICENSE_URL_NOT_NULL);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ reqVO.setPrepare(true);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if (mapper.selectCountByUserIdAndStatus(LoginUserContext.getUserId(),
|
|
|
EnterpriseRegisterAuditStatusEnum.AUDITING.getStatus()) > 0) {
|
|
|
// 存在审批中的申请
|
|
|
throw exception(MDE_ENTERPRISE_REGISTER_APPLY_DUPLICATE);
|
|
|
}
|
|
|
- if(enterpriseRegisterMapper.existsByCode(null, reqVO.getCode())) {
|
|
|
+ if (mapper.existsByCode(null, reqVO.getCode())) {
|
|
|
// 重复
|
|
|
throw exception(MDE_ENTERPRISE_REGISTER_CREDIT_CODE_DUPLICATE);
|
|
|
}
|
|
|
- EnterpriseRegisterDO register = EnterpriseConvert.INSTANCE.convert6(reqVO);
|
|
|
- register.setStatus(EnterpriseRegisterAuditStatusEnum.AUDITING.getStatus());
|
|
|
- register.setUserId(LoginUserContext.getUserId());
|
|
|
- enterpriseRegisterMapper.insert(register);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public AppEnterpriseRegisterRespVO getApplyByUserId() {
|
|
|
- return EnterpriseConvert.INSTANCE.convert8(enterpriseRegisterMapper.selectByUserId(LoginUserContext.getUserId()));
|
|
|
+ return EnterpriseConvert.INSTANCE.convert8(mapper.selectByUserId(LoginUserContext.getUserId()));
|
|
|
}
|
|
|
}
|