Commit c27e434a by jianan

保存报聘经纪人组织关系,保存报聘经纪人基本信息

parent e2286beb
package com.yd.api.practitioner;
import com.yd.api.practitioner.service.PractitionerHiringService;
import com.yd.api.practitioner.vo.hiring.*;
import com.yd.api.result.JsonResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 经纪人报聘
*/
@RestController
@RequestMapping("/practitionerHiring")
public class PractitionerHiringController {
@Autowired
private PractitionerHiringService practitionerHiringService;
/**
* 保存报聘经纪人组织关系
*
*/
@RequestMapping("/saveMembership")
public Object saveMembership(@RequestBody SaveMembershipRequestVO requestVO){
JsonResult result = new JsonResult();
SaveMembershipResponseVO responseVO = practitionerHiringService.saveMembership(requestVO);
result.addResult(responseVO);
result.setData(responseVO);
return result;
}
/**
* 保存报聘经纪人基本信息
*
*/
@RequestMapping("/saveBasicInfo")
public Object saveBasicInfo(@RequestBody SaveBasicInfoRequestVO requestVO){
JsonResult result = new JsonResult();
SaveBasicInfoResponseVO responseVO = practitionerHiringService.saveBasicInfo(requestVO);
result.addResult(responseVO);
result.setData(responseVO);
return result;
}
}
\ No newline at end of file
package com.yd.api.practitioner.service;
import com.yd.api.practitioner.vo.hiring.SaveBasicInfoRequestVO;
import com.yd.api.practitioner.vo.hiring.SaveBasicInfoResponseVO;
import com.yd.api.practitioner.vo.hiring.SaveMembershipRequestVO;
import com.yd.api.practitioner.vo.hiring.SaveMembershipResponseVO;
import org.springframework.stereotype.Service;
@Service
public interface PractitionerHiringService {
SaveMembershipResponseVO saveMembership(SaveMembershipRequestVO requestVO);
SaveBasicInfoResponseVO saveBasicInfo(SaveBasicInfoRequestVO requestVO);
}
package com.yd.api.practitioner.service.impl;
import com.yd.api.practitioner.service.PractitionerHiringService;
import com.yd.api.practitioner.vo.hiring.*;
import com.yd.api.result.CommonResult;
import com.yd.dal.entity.customer.AclPractitionerHiringBasicInfo;
import com.yd.dal.entity.customer.AclPractitionerHiringMembership;
import com.yd.dal.mapper.customer.AclPractitionerHiringBasicInfoMapper;
import com.yd.dal.mapper.customer.AclPractitionerHiringMembershipMapper;
import com.yd.util.config.ZHBErrorConfig;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
@Service
public class PractitionerHiringServiceImpl implements PractitionerHiringService {
@Autowired
private AclPractitionerHiringMembershipMapper membershipMapper;
@Autowired
private AclPractitionerHiringBasicInfoMapper basicInfoMapper;
@Override
public SaveMembershipResponseVO saveMembership(SaveMembershipRequestVO requestVO) {
SaveMembershipResponseVO resp = new SaveMembershipResponseVO();
try {
// 先保存ag_acl_practitioner_hiring_basic_info,获取hiringBasicInfoId
AclPractitionerHiringBasicInfo basicInfo = new AclPractitionerHiringBasicInfo();
basicInfo.setName(requestVO.getName());
basicInfo.setPractitionerPotentialId(requestVO.getPractitionerPotentialId());
basicInfoMapper.insertSelective(basicInfo);
System.out.println("看看主键回写");
System.out.println(basicInfo);
// 数据库实体
AclPractitionerHiringMembership membership = new AclPractitionerHiringMembership();
BeanUtils.copyProperties(requestVO, membership);
membership.setIsActive(1);
Date curDate = new Date();
membership.setCreatedAt(curDate);
membership.setUpdatedAt(curDate);
Long loginId = requestVO.getLoginId();
membership.setCreatedBy(loginId);
membership.setUpdatedBy(loginId);
membershipMapper.insertSelective(membership);
resp.setCommonResult(new CommonResult(true, ZHBErrorConfig.getErrorInfo("800000")));
} catch (Exception e) {
e.printStackTrace();
resp.setCommonResult(new CommonResult(false, e.getMessage()));
}
return resp;
}
@Override
public SaveBasicInfoResponseVO saveBasicInfo(SaveBasicInfoRequestVO requestVO) {
SaveBasicInfoResponseVO resp = new SaveBasicInfoResponseVO();
try {
// 数据库实体
AclPractitionerHiringBasicInfo basicInfo = new AclPractitionerHiringBasicInfo();
BeanUtils.copyProperties(requestVO, basicInfo);
basicInfo.setIsActive(1);
Date curDate = new Date();
basicInfo.setCreatedAt(curDate);
basicInfo.setUpdatedAt(curDate);
basicInfo.setCreatedBy(Long.valueOf(-1));
basicInfo.setUpdatedBy(Long.valueOf(-1));
basicInfoMapper.updateByPractitionerPotentialId(basicInfo);
resp.setCommonResult(new CommonResult(true, ZHBErrorConfig.getErrorInfo("800000")));
} catch (Exception e) {
e.printStackTrace();
resp.setCommonResult(new CommonResult(false, e.getMessage()));
}
return resp;
}
}
package com.yd.api.practitioner.vo.hiring;
import lombok.Data;
import java.util.Date;
@Data
public class SaveBasicInfoRequestVO {
/**
* FK ag_acl_practitioner_potential,潜在经纪人增员表
*/
private Long practitionerPotentialId;
/**
* FK ag_acl_practitioner.id 邀请人
*/
private Long inviteePractitionerId;
/**
* 報聘经纪人姓名
*/
private String name;
/**
* 報聘经纪人姓名电话
*/
private String mobileNo;
/**
* FK ag_md_id_type.id
*/
private Long idTypeId;
/**
* 報聘经纪人姓名证件类型
*/
private String idType;
/**
* 報聘经纪人姓名证件号
*/
private String idNo;
/**
* 1=Male, 2=Female
*/
private Integer gender;
/**
* 報聘经纪人姓名生日
*/
private Date practitionerBirthdate;
/**
* 户籍省份 FK ag_md_province.id
*/
private Long provinceId;
/**
* 户籍省份名
*/
private String provinceName;
/**
* 户籍城市FK ag_md_city.id
*/
private Long cityId;
/**
* 户籍城市名
*/
private String cityName;
/**
* 居住地址
*/
private String residentAddress;
/**
* 从业人员微信号
*/
private String wechatId;
/**
* email地址
*/
private String email;
}
package com.yd.api.practitioner.vo.hiring;
import com.yd.api.result.CommonResult;
import lombok.Data;
@Data
public class SaveBasicInfoResponseVO {
private CommonResult commonResult;
}
package com.yd.api.practitioner.vo.hiring;
import lombok.Data;
@Data
public class SaveMembershipRequestVO {
private Long loginId;
private Long hiringBasicInfoId;
private Long practitionerPotentialId;
private String name;
/**
* 报聘经纪人职级类型
*/
private Long mdDropOptionId;
/**
* 报聘经纪人职级类型名称
*/
private String mdDropOptionName;
private Long mentorPractitionerId;
private String mentor;
private Long introducerPractitionerId;
private String introducer;
private Long subsystemId;
private String subsystem;
private Long subsystemOwnerId;
private String subsystemOwner;
private Long branchId;
private String branch;
}
package com.yd.api.practitioner.vo.hiring;
import com.yd.api.result.CommonResult;
import lombok.Data;
@Data
public class SaveMembershipResponseVO {
private CommonResult commonResult;
}
......@@ -22,4 +22,7 @@ public interface AclPractitionerHiringBasicInfoMapper {
int updateBatchSelective(List<AclPractitionerHiringBasicInfo> list);
int batchInsert(@Param("list") List<AclPractitionerHiringBasicInfo> list);
void updateByPractitionerPotentialId(AclPractitionerHiringBasicInfo basicInfo);
}
\ No newline at end of file
......@@ -810,4 +810,31 @@
#{item.updatedAt,jdbcType=TIMESTAMP}, #{item.updatedBy,jdbcType=BIGINT})
</foreach>
</insert>
<update id="updateByPractitionerPotentialId">
update ag_acl_practitioner_hiring_basic_info
set
invitee_practitioner_id = #{inviteePractitionerId,jdbcType=BIGINT},
`name` = #{name,jdbcType=VARCHAR},
mobile_no = #{mobileNo,jdbcType=VARCHAR},
id_type_id = #{idTypeId,jdbcType=BIGINT},
id_type = #{idType,jdbcType=VARCHAR},
id_no = #{idNo,jdbcType=VARCHAR},
gender = #{gender,jdbcType=INTEGER},
practitioner_birthdate = #{practitionerBirthdate,jdbcType=DATE},
province_id = #{provinceId,jdbcType=BIGINT},
province_name = #{provinceName,jdbcType=VARCHAR},
city_id = #{cityId,jdbcType=BIGINT},
city_name = #{cityName,jdbcType=VARCHAR},
resident_address = #{residentAddress,jdbcType=LONGVARCHAR},
wechat_id = #{wechatId,jdbcType=VARCHAR},
email = #{email,jdbcType=VARCHAR},
is_active = #{isActive,jdbcType=INTEGER},
created_at = #{createdAt,jdbcType=TIMESTAMP},
created_by = #{createdBy,jdbcType=BIGINT},
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
updated_by = #{updatedBy,jdbcType=BIGINT}
where practitioner_potential_id = #{practitionerPotentialId,jdbcType=BIGINT}
</update>
</mapper>
\ No newline at end of file
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