Merge remote-tracking branch 'origin/cc_partner_init' into cc_partner_init

This commit is contained in:
zhangchenbiao
2024-03-25 14:42:08 +08:00
8 changed files with 322 additions and 16 deletions

View File

@@ -10,7 +10,7 @@ public enum WorkflowSubStageEnum{
/**
* 流程子阶段枚举
*/
INTEND(1, "加盟意向申请", WorkflowSubStageStatusEnum.INTENT_0,null),
INTEND(1, "加盟意向申请", WorkflowSubStageStatusEnum.INTENT_0,"joinIntentionServiceImpl"),
INVITING_INTERVIEWS(5, "邀约面谈", WorkflowSubStageStatusEnum.INVITING_INTERVIEWS_10, "lineInterviewServiceImpl"),
FIRST_INTERVIEWS(10, "一审面试", WorkflowSubStageStatusEnum.FIRST_INTERVIEWS_25, "lineInterviewServiceImpl"),
PAY_DEPOSIT(15, "缴纳意向金", WorkflowSubStageStatusEnum.PAY_DEPOSIT_45, null),

View File

@@ -215,7 +215,7 @@
<select id="getLabelGroupList" resultType="com.cool.store.vo.LabelGroupListVo">
SELECT t1.id, t1.label_group_name, t2.`name` AS editName, t2.mobile AS editMobile, t1.edit_date
FROM xfsg_partner_label_group t1
LEFT JOIN enterprise_user t2 ON t1.edit_user_id = t2.user_id
LEFT JOIN enterprise_user_${enterpriseId} t2 ON t1.edit_user_id = t2.user_id
WHERE t1.deleted = 0
<if test="labelGroupName != null and labelGroupName != ''">
AND t1.label_group_name LIKE CONCAT('%', #{labelGroupName}, '%')
@@ -226,7 +226,7 @@
<select id="getLabelGroupListOrder" resultType="com.cool.store.vo.LabelGroupListVo">
SELECT t1.id, t1.label_group_name, t2.`name` AS editName, t2.mobile AS editMobile, t1.edit_date
FROM xfsg_partner_label_group t1
LEFT JOIN enterprise_user t2 ON t1.edit_user_id = t2.user_id
LEFT JOIN enterprise_user_${enterpriseId} t2 ON t1.edit_user_id = t2.user_id
WHERE t1.deleted = 0
<if test="labelGroupName != null and labelGroupName != ''">
AND t1.label_group_name LIKE CONCAT('%', #{labelGroupName}, '%')

View File

@@ -21,7 +21,7 @@
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from hxfg_partner_label
from xfsg_partner_label
where deleted = 0
and id = #{id}
order by create_time desc
@@ -29,7 +29,7 @@
<select id="selectSelective" resultType="com.cool.store.entity.HyPartnerLabelDO">
select <include refid="Base_Column_List"></include>
from hxfg_partner_label
from xfsg_partner_label
where deleted = 0
<if test="labelGroupId != null">
and label_group_id = #{labelGroupId}
@@ -62,11 +62,11 @@
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
delete from hxfg_partner_label
delete from xfsg_partner_label
where id = #{id}
</delete>
<insert id="insert" parameterType="com.cool.store.entity.HyPartnerLabelDO">
insert into hxfg_partner_label (id, label_group_id, label_name,
insert into xfsg_partner_label (id, label_group_id, label_name,
edit_user_id, edit_date, deleted,
create_time, update_time, create_user_id,
update_user_id, remark)
@@ -76,7 +76,7 @@
#{updateUserId}, #{remark})
</insert>
<insert id="insertSelective" parameterType="com.cool.store.entity.HyPartnerLabelDO">
insert into hxfg_partner_label
insert into xfsg_partner_label
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
id,
@@ -149,7 +149,7 @@
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.cool.store.entity.HyPartnerLabelDO">
update hxfg_partner_label
update xfsg_partner_label
<set>
<if test="labelGroupId != null">
label_group_id = #{labelGroupId},
@@ -186,7 +186,7 @@
and id = #{id}
</update>
<update id="updateByPrimaryKey" parameterType="com.cool.store.entity.HyPartnerLabelDO">
update hxfg_partner_label
update xfsg_partner_label
set label_group_id = #{labelGroupId},
label_name = #{labelName},
edit_user_id = #{editUserId},
@@ -202,9 +202,9 @@
<select id="getLabelList" resultType="com.cool.store.vo.LabelListVo">
SELECT t1.id, t2.id AS labelGroupId, t1.label_name, t2.label_group_name, t3.`name` AS editName, t3.mobile AS editMobile, t1.edit_date,t1.create_time as labelCreateTime,t2.create_time AS groupCreateTime
FROM hxfg_partner_label t1
LEFT JOIN hxfg_partner_label_group t2 ON t1.label_group_id = t2.id
LEFT JOIN enterprise_user t3 ON t1.edit_user_id = t3.user_id
FROM xfsg_partner_label t1
LEFT JOIN xfsg_partner_label_group t2 ON t1.label_group_id = t2.id
LEFT JOIN enterprise_user_${enterpriseId} t3 ON t1.edit_user_id = t3.user_id
WHERE t1.deleted = 0 AND t2.deleted = 0
<if test="labelName != null and labelName != ''">
AND t1.label_name LIKE CONCAT('%', #{labelName} ,'%')
@@ -217,13 +217,13 @@
<select id="whetherGroupInUse" resultType="java.lang.Boolean">
SELECT COUNT(*)
FROM hxfg_partner_label
FROM xfsg_partner_label
WHERE deleted = 0
AND label_group_id = #{labelGroupId}
</select>
<select id="getLabelListByIds" resultMap="BaseResultMap">
select * from hxfg_partner_label where deleted = 0
select * from xfsg_partner_label where deleted = 0
<if test="labelIds!=null and labelIds.size>0">
<foreach collection="labelIds" item="labelId" open="and id in (" close=")" separator=",">
#{labelId}

View File

@@ -0,0 +1,168 @@
package com.cool.store.vo;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import java.util.Date;
/**
* @Author suzhuhong
* @Date 2024/3/25 13:46
* @Version 1.0
*/
@Data
public class LineInfoVO {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
/**
* partner_user_info.partner_id
*/
@Column(name = "partner_id")
private String partnerId;
@Column(name = "region_id")
private Long regionId;
/**
* 手机号
*/
private String mobile;
/**
* 申请人姓名
*/
private String username;
/**
* 性别0未选,1男,2女
*/
private String sex;
/**
* 意向开店区域
*/
@Column(name = "want_shop_area_id")
private Long wantShopAreaId;
/**
* 居住地址
*/
@Column(name = "live_address")
private String liveAddress;
/**
* 流程阶段:1意向加盟;2新店进展;
*/
@Column(name = "workflow_stage")
private Integer workflowStage;
/**
* 流程子阶段
*/
@Column(name = "workflow_sub_stage")
private Integer workflowSubStage;
/**
* 流程子阶段状态
*/
@Column(name = "workflow_sub_stage_status")
private Integer workflowSubStageStatus;
/**
* 待选址铺位
*/
@Column(name = "select_site_num")
private Integer selectSiteNum;
/**
* 筹备中铺位
*/
@Column(name = "prepare_shop_num")
private Integer prepareShopNum;
/**
* 营业中铺位
*/
@Column(name = "open_shop_num")
private Integer openShopNum;
/**
* 线索来源
*/
@Column(name = "line_source")
private Integer lineSource;
/**
* 招商经理
*/
@Column(name = "investment_manager")
private String investmentManager;
/**
* 拓展经理
*/
@Column(name = "development_manager")
private String developmentManager;
/**
* 一审面试官
*/
@Column(name = "first_interviewer")
private String firstInterviewer;
/**
* 二审面试官
*/
@Column(name = "second_interviewer")
private String secondInterviewer;
/**
* 用户画像
*/
@Column(name = "user_portrait")
private String userPortrait;
/**
* 是否是加盟商0.否 1.是
*/
@Column(name = "is_join")
private Boolean isJoin;
/**
* 0.公海 1.私海 2黑名单
*/
@Column(name = "line_status")
private Integer lineStatus;
/**
* 创建时间
*/
@Column(name = "create_time")
private Date createTime;
/**
* 更新时间
*/
@Column(name = "update_time")
private Date updateTime;
/**
* 创建人
*/
@Column(name = "create_user_id")
private String createUserId;
/**
* 更新人
*/
@Column(name = "update_user_id")
private String updateUserId;
}

View File

@@ -0,0 +1,23 @@
package com.cool.store.service;
import com.cool.store.vo.LineInfoVO;
/**
* @Author suzhuhong
* @Date 2024/3/25 13:45
* @Version 1.0
*/
public interface LineService {
/**
* 获取线索信息
* @param lineId
* @return
*/
LineInfoVO getLineInfo(Long lineId);
}

View File

@@ -2,6 +2,7 @@ package com.cool.store.service.impl;
import com.cool.store.entity.LineInfoDO;
import com.cool.store.enums.ErrorCodeEnum;
import com.cool.store.enums.WorkflowSubStageEnum;
import com.cool.store.enums.WorkflowSubStageStatusEnum;
import com.cool.store.exception.ServiceException;
import com.cool.store.mapper.JoinIntentionMapper;
@@ -15,9 +16,14 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Objects;
/**
* @author guohb
* @ClassName JoinIntentionServiceImpl
* @Date 2022/10/23 16:16
*/
@Service
@Slf4j
public class JoinIntentionServiceImpl implements JoinIntentionService {
public class JoinIntentionServiceImpl extends LineFlowService implements JoinIntentionService {
@Resource
JoinIntentionMapper joinIntentionMapper;
@@ -43,4 +49,27 @@ public class JoinIntentionServiceImpl implements JoinIntentionService {
}
return Boolean.TRUE;
}
@Override
protected Boolean initStage(Long auditId, LineInfoDO lineInfo) {
return null;
}
@Override
protected Boolean auditPass(Long auditId, LineInfoDO lineInfo) {
WorkflowSubStageEnum workflowSubStageEnum = WorkflowSubStageEnum.getWorkflowSubStageEnum(lineInfo.getWorkflowSubStage());
WorkflowSubStageEnum nextStage = workflowSubStageEnum.getNextStage();
Integer nextStageInitStatus = nextStage.getInitStatus().getCode();
return null;
}
@Override
protected Boolean auditReject(Long auditId, LineInfoDO lineInfo) {
return null;
}
@Override
protected Boolean auditClose(Long auditId, LineInfoDO lineInfo) {
return null;
}
}

View File

@@ -0,0 +1,36 @@
package com.cool.store.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.cool.store.dao.LineInfoDAO;
import com.cool.store.entity.LineInfoDO;
import com.cool.store.enums.ErrorCodeEnum;
import com.cool.store.exception.ServiceException;
import com.cool.store.service.LineService;
import com.cool.store.vo.LineInfoVO;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
/**
* @Author suzhuhong
* @Date 2024/3/25 13:48
* @Version 1.0
*/
@Service
public class LineServiceImpl implements LineService {
@Resource
LineInfoDAO lineInfoDAO;
@Override
public LineInfoVO getLineInfo(Long lineId) {
LineInfoVO result = new LineInfoVO();
// 查询线索信息
LineInfoDO lineInfo = lineInfoDAO.getLineInfo(lineId);
if (lineInfo==null){
throw new ServiceException(ErrorCodeEnum.LINE_ID_IS_NOT_EXIST);
}
BeanUtil.copyProperties(lineInfo,result);
return result;
}
}

View File

@@ -0,0 +1,50 @@
package com.cool.store.controller.webc;
import com.cool.store.response.ResponseResult;
import com.cool.store.service.LineService;
import com.cool.store.vo.LineInfoVO;
import com.cool.store.vo.interview.AppointmentTimeVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.time.LocalDate;
import java.util.List;
/**
* @Author suzhuhong
* @Date 2024/3/25 13:43
* @Version 1.0
*/
@RestController
@RequestMapping("/mini/line")
@Api(tags = "线索信息")
@Slf4j
public class LineController {
@Resource
LineService lineService;
@ApiOperation("查询线索详情")
@GetMapping("/getLineDetail")
@ApiImplicitParams({
@ApiImplicitParam(name = "lineId", value = "线索id", required = true)
})
public ResponseResult<LineInfoVO> getLineInfo(@RequestParam("lineId")Long lineId) {
return ResponseResult.success(lineService.getLineInfo(lineId));
}
}