PC+mini铺位改造
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
package com.cool.store.enums;
|
||||
|
||||
/**
|
||||
* @Author: WangShuo
|
||||
* @Date: 2025/03/31/10:58
|
||||
* @Version 1.0
|
||||
* @注释:
|
||||
*/
|
||||
public enum PointListType {
|
||||
POINT_LIST_TYPE_1(1, "推荐铺位"),
|
||||
POINT_LIST_TYPE_2(2, "我创建的"),
|
||||
;
|
||||
|
||||
private Integer code;
|
||||
private String desc;
|
||||
|
||||
PointListType(Integer code, String desc) {
|
||||
this.code = code;
|
||||
this.desc = desc;
|
||||
}
|
||||
|
||||
public Integer getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
public String getDesc() {
|
||||
return desc;
|
||||
}
|
||||
}
|
||||
@@ -3,8 +3,10 @@ package com.cool.store.dao;
|
||||
import com.cool.store.entity.PointDetailInfoDO;
|
||||
import com.cool.store.mapper.PointDetailInfoMapper;
|
||||
import org.springframework.stereotype.Repository;
|
||||
import tk.mybatis.mapper.entity.Example;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
@@ -58,5 +60,11 @@ public class PointDetailInfoDAO {
|
||||
return pointDetailInfoMapper.getShopPointDetailInfoByPointId(pointId);
|
||||
}
|
||||
|
||||
public List<PointDetailInfoDO> getByPointIdList(List<Long> pointIdList) {
|
||||
Example example = new Example(PointDetailInfoDO.class);
|
||||
example.createCriteria().andIn("point_id", pointIdList);
|
||||
return pointDetailInfoMapper.selectByExample(example);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -6,9 +6,11 @@ import com.cool.store.dto.point.LineCountDTO;
|
||||
import com.cool.store.entity.PointInfoDO;
|
||||
import com.cool.store.mapper.PointInfoMapper;
|
||||
import com.cool.store.request.AllPointPageRequest;
|
||||
import com.cool.store.request.MiniPointPageRequest;
|
||||
import com.cool.store.request.PointPageRequest;
|
||||
import com.cool.store.request.RecommendPointPageRequest;
|
||||
import com.cool.store.utils.StringUtil;
|
||||
import com.cool.store.vo.point.MiniPointPageVO;
|
||||
import com.cool.store.vo.point.PointHomePageDataVO;
|
||||
import com.github.pagehelper.Page;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
@@ -117,4 +119,13 @@ public class PointInfoDAO {
|
||||
}
|
||||
return pointInfoMapper.recyclePoint(pointId);
|
||||
}
|
||||
|
||||
public List<MiniPointPageVO> getMiniPointPage(Long lineId ) {
|
||||
List<MiniPointPageVO> pointInfoDOPage = pointInfoMapper.MiniPointPageVO(lineId);
|
||||
if(CollectionUtils.isEmpty(pointInfoDOPage)){
|
||||
return Lists.newArrayList();
|
||||
}
|
||||
|
||||
return pointInfoDOPage ;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.cool.store.entity.PointInfoDO;
|
||||
import com.cool.store.request.AllPointPageRequest;
|
||||
import com.cool.store.request.PointPageRequest;
|
||||
import com.cool.store.request.RecommendPointPageRequest;
|
||||
import com.cool.store.vo.point.MiniPointPageVO;
|
||||
import com.cool.store.vo.point.PointHomePageDataVO;
|
||||
import com.cool.store.vo.point.PointPageVO;
|
||||
import com.github.pagehelper.Page;
|
||||
@@ -88,4 +89,11 @@ public interface PointInfoMapper extends Mapper<PointInfoDO> {
|
||||
* @return
|
||||
*/
|
||||
Integer perfectPointInfo(@Param("request") PointInfoDO request);
|
||||
|
||||
/**
|
||||
* @Auther: wangshuo
|
||||
* @Date: 2025/3/31
|
||||
* @description:获取铺位部分数据
|
||||
*/
|
||||
List<MiniPointPageVO> MiniPointPageVO(@Param("lineId") Long lineId);
|
||||
}
|
||||
@@ -1,226 +1,260 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.cool.store.mapper.PointInfoMapper">
|
||||
<resultMap id="BaseResultMap" type="com.cool.store.entity.PointInfoDO">
|
||||
<id column="id" jdbcType="BIGINT" property="id" />
|
||||
<result column="point_code" jdbcType="VARCHAR" property="pointCode" />
|
||||
<result column="point_name" jdbcType="VARCHAR" property="pointName" />
|
||||
<result column="region_id" jdbcType="BIGINT" property="regionId" />
|
||||
<result column="shop_id" jdbcType="BIGINT" property="shopId" />
|
||||
<result column="line_id" jdbcType="BIGINT" property="lineId" />
|
||||
<result column="point_area" jdbcType="VARCHAR" property="pointArea" />
|
||||
<result column="longitude" jdbcType="VARCHAR" property="longitude" />
|
||||
<result column="latitude" jdbcType="VARCHAR" property="latitude" />
|
||||
<result column="address" jdbcType="VARCHAR" property="address" />
|
||||
<result column="development_manager" jdbcType="VARCHAR" property="developmentManager" />
|
||||
<result column="operate_user_id" jdbcType="VARCHAR" property="operateUserId" />
|
||||
<result column="development_time" jdbcType="TIMESTAMP" property="developmentTime" />
|
||||
<result column="point_status" jdbcType="TINYINT" property="pointStatus" />
|
||||
<result column="point_score" jdbcType="INTEGER" property="pointScore" />
|
||||
<result column="select_status" jdbcType="TINYINT" property="selectStatus" />
|
||||
<result column="submit_audit_count" jdbcType="TINYINT" property="submitAuditCount" />
|
||||
<result column="point_source" jdbcType="TINYINT" property="pointSource" />
|
||||
<result column="deleted" jdbcType="BIT" property="deleted" />
|
||||
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
|
||||
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
|
||||
<result column="province" jdbcType="VARCHAR" property="province" />
|
||||
<result column="city" jdbcType="VARCHAR" property="city" />
|
||||
<result column="district" jdbcType="VARCHAR" property="district" />
|
||||
<result column="township" jdbcType="VARCHAR" property="township" />
|
||||
<result column="storage_status" jdbcType="TINYINT" property="storageStatus" />
|
||||
<result column="opportunity_point_code" jdbcType="VARCHAR" property="opportunityPointCode" />
|
||||
<result column="opportunity_point_name" jdbcType="VARCHAR" property="opportunityPointName" />
|
||||
</resultMap>
|
||||
<resultMap id="BaseResultMap" type="com.cool.store.entity.PointInfoDO">
|
||||
<id column="id" jdbcType="BIGINT" property="id"/>
|
||||
<result column="point_code" jdbcType="VARCHAR" property="pointCode"/>
|
||||
<result column="point_name" jdbcType="VARCHAR" property="pointName"/>
|
||||
<result column="region_id" jdbcType="BIGINT" property="regionId"/>
|
||||
<result column="shop_id" jdbcType="BIGINT" property="shopId"/>
|
||||
<result column="line_id" jdbcType="BIGINT" property="lineId"/>
|
||||
<result column="point_area" jdbcType="VARCHAR" property="pointArea"/>
|
||||
<result column="longitude" jdbcType="VARCHAR" property="longitude"/>
|
||||
<result column="latitude" jdbcType="VARCHAR" property="latitude"/>
|
||||
<result column="address" jdbcType="VARCHAR" property="address"/>
|
||||
<result column="development_manager" jdbcType="VARCHAR" property="developmentManager"/>
|
||||
<result column="operate_user_id" jdbcType="VARCHAR" property="operateUserId"/>
|
||||
<result column="development_time" jdbcType="TIMESTAMP" property="developmentTime"/>
|
||||
<result column="point_status" jdbcType="TINYINT" property="pointStatus"/>
|
||||
<result column="point_score" jdbcType="INTEGER" property="pointScore"/>
|
||||
<result column="select_status" jdbcType="TINYINT" property="selectStatus"/>
|
||||
<result column="submit_audit_count" jdbcType="TINYINT" property="submitAuditCount"/>
|
||||
<result column="point_source" jdbcType="TINYINT" property="pointSource"/>
|
||||
<result column="deleted" jdbcType="BIT" property="deleted"/>
|
||||
<result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
|
||||
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
|
||||
<result column="province" jdbcType="VARCHAR" property="province"/>
|
||||
<result column="city" jdbcType="VARCHAR" property="city"/>
|
||||
<result column="district" jdbcType="VARCHAR" property="district"/>
|
||||
<result column="township" jdbcType="VARCHAR" property="township"/>
|
||||
<result column="storage_status" jdbcType="TINYINT" property="storageStatus"/>
|
||||
<result column="opportunity_point_code" jdbcType="VARCHAR" property="opportunityPointCode"/>
|
||||
<result column="opportunity_point_name" jdbcType="VARCHAR" property="opportunityPointName"/>
|
||||
<result column="open_shop_name" jdbcType="VARCHAR" property="openShopName"/>
|
||||
</resultMap>
|
||||
|
||||
<sql id="allColumn">
|
||||
id, point_code, point_name, region_id, shop_id, line_id, point_area, longitude, latitude, address, development_manager, operate_user_id,
|
||||
development_time, point_status, point_score, select_status, submit_audit_count, point_source, deleted, create_time, update_time,
|
||||
province, city, district, township
|
||||
</sql>
|
||||
<sql id="allColumn">
|
||||
id, point_code, point_name, region_id, shop_id, line_id, point_area, longitude, latitude, address,
|
||||
development_manager, operate_user_id,
|
||||
development_time, point_status, point_score, select_status, submit_audit_count, point_source, deleted,
|
||||
create_time, update_time,
|
||||
province, city, district, township, opportunity_point_code, opportunity_point_name,open_shop_name
|
||||
</sql>
|
||||
|
||||
<select id="getMyPointData" resultType="com.cool.store.vo.point.PointHomePageDataVO">
|
||||
select
|
||||
sum(if(point_status != 7, 1, 0)) as myPoint,
|
||||
sum(if(point_status in (4, 5, 6), 1, 0)) as poolPoint,
|
||||
sum(if(point_status = 1, 1, 0)) as collectPoint,
|
||||
sum(if(point_status = 2, 1, 0)) as evaluatePoint,
|
||||
sum(if(point_status in (3, 4), 1, 0)) as waitAuditPoint,
|
||||
sum(if(point_status = 7, 1, 0)) as signPoint
|
||||
from xfsg_point_info
|
||||
where deleted = 0 and development_manager = #{userId}
|
||||
</select>
|
||||
<select id="getMyPointPage" resultMap="BaseResultMap">
|
||||
select
|
||||
id,
|
||||
point_name,
|
||||
point_code,
|
||||
address,
|
||||
region_id,
|
||||
point_status,
|
||||
point_score,
|
||||
point_area,
|
||||
development_manager,
|
||||
operate_user_id,
|
||||
development_time,
|
||||
select_status,
|
||||
create_time,
|
||||
update_time
|
||||
from xfsg_point_info
|
||||
where deleted = 0 and development_manager = #{request.developmentManager}
|
||||
<if test="request.keyword != null and request.keyword != ''">
|
||||
and (point_code like concat('%', #{request.keyword}, '%') or point_name like concat('%', #{request.keyword}, '%'))
|
||||
</if>
|
||||
<if test="request.developmentStartTime != null and request.developmentStartTime != ''">
|
||||
and development_time >= #{request.developmentStartTime}
|
||||
</if>
|
||||
<if test="request.developmentEndTime != null and request.developmentEndTime != ''">
|
||||
<![CDATA[and development_time <= #{request.developmentEndTime}]]>
|
||||
</if>
|
||||
<if test="request.pointStatusList != null and request.pointStatusList.size() > 0">
|
||||
and point_status in
|
||||
<foreach collection="request.pointStatusList" item="pointStatus" open="(" close=")" separator=",">
|
||||
#{pointStatus}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="request.storageStatus != null">
|
||||
and storage_status = #{request.storageStatus}
|
||||
</if>
|
||||
<if test="request.operateUserId != null and request.operateUserId != ''">
|
||||
and operate_user_id = #{request.operateUserId}
|
||||
</if>
|
||||
<if test="request.createStartTime != null and request.createStartTime != ''">
|
||||
and create_time >= #{request.createStartTime}
|
||||
</if>
|
||||
<if test="request.createEndTime != null and request.createEndTime != ''">
|
||||
<![CDATA[and create_time <= #{request.createEndTime}]]>
|
||||
</if>
|
||||
<if test="request.regionIds != null and request.regionIds.size() > 0">
|
||||
and region_id in
|
||||
<foreach collection="request.regionIds" item="regionId" index="index" open="(" separator="," close=")">
|
||||
#{regionId}
|
||||
</foreach>
|
||||
</if>
|
||||
order by id desc
|
||||
</select>
|
||||
<select id="getMyPointData" resultType="com.cool.store.vo.point.PointHomePageDataVO">
|
||||
select
|
||||
sum(if(point_status != 7, 1, 0)) as myPoint,
|
||||
sum(if(point_status in (4, 5, 6), 1, 0)) as poolPoint,
|
||||
sum(if(point_status = 1, 1, 0)) as collectPoint,
|
||||
sum(if(point_status = 2, 1, 0)) as evaluatePoint,
|
||||
sum(if(point_status in (3, 4), 1, 0)) as waitAuditPoint,
|
||||
sum(if(point_status = 7, 1, 0)) as signPoint
|
||||
from xfsg_point_info
|
||||
where deleted = 0 and development_manager = #{userId}
|
||||
</select>
|
||||
<select id="getMyPointPage" resultMap="BaseResultMap">
|
||||
select
|
||||
id,
|
||||
point_name,
|
||||
point_code,
|
||||
address,
|
||||
region_id,
|
||||
point_status,
|
||||
point_score,
|
||||
point_area,
|
||||
development_manager,
|
||||
operate_user_id,
|
||||
development_time,
|
||||
select_status,
|
||||
create_time,
|
||||
update_time,
|
||||
open_shop_name,
|
||||
opportunity_point_code,
|
||||
opportunity_point_name
|
||||
from xfsg_point_info
|
||||
where deleted = 0 and development_manager = #{request.developmentManager}
|
||||
<if test="request.keyword != null and request.keyword != ''">
|
||||
and (point_code like concat('%', #{request.keyword}, '%') or point_name like concat('%', #{request.keyword},
|
||||
'%'))
|
||||
</if>
|
||||
<if test="request.developmentStartTime != null and request.developmentStartTime != ''">
|
||||
and development_time >= #{request.developmentStartTime}
|
||||
</if>
|
||||
<if test="request.developmentEndTime != null and request.developmentEndTime != ''">
|
||||
<![CDATA[and development_time <= #{request.developmentEndTime}]]>
|
||||
</if>
|
||||
<if test="request.pointStatusList != null and request.pointStatusList.size() > 0">
|
||||
and point_status in
|
||||
<foreach collection="request.pointStatusList" item="pointStatus" open="(" close=")" separator=",">
|
||||
#{pointStatus}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="request.storageStatus != null">
|
||||
and storage_status = #{request.storageStatus}
|
||||
</if>
|
||||
<if test="request.operateUserId != null and request.operateUserId != ''">
|
||||
and operate_user_id = #{request.operateUserId}
|
||||
</if>
|
||||
<if test="request.createStartTime != null and request.createStartTime != ''">
|
||||
and create_time >= #{request.createStartTime}
|
||||
</if>
|
||||
<if test="request.createEndTime != null and request.createEndTime != ''">
|
||||
<![CDATA[and create_time <= #{request.createEndTime}]]>
|
||||
</if>
|
||||
<if test="request.regionIds != null and request.regionIds.size() > 0">
|
||||
and region_id in
|
||||
<foreach collection="request.regionIds" item="regionId" index="index" open="(" separator="," close=")">
|
||||
#{regionId}
|
||||
</foreach>
|
||||
</if>
|
||||
order by id desc
|
||||
</select>
|
||||
<select id="getSelectedShopNum" resultType="com.cool.store.dto.point.LineCountDTO">
|
||||
select
|
||||
select
|
||||
line_id as lineId,
|
||||
count(1) as selectedShopNum
|
||||
from xfsg_point_info
|
||||
where deleted = 0 and select_status = 1 and point_status !=7 and line_id in
|
||||
<foreach collection="lineIds" item="lineId" index="index" open="(" separator="," close=")">
|
||||
#{lineId}
|
||||
</foreach>
|
||||
group by line_id
|
||||
from xfsg_point_info
|
||||
where deleted = 0 and select_status = 1 and point_status !=7 and line_id in
|
||||
<foreach collection="lineIds" item="lineId" index="index" open="(" separator="," close=")">
|
||||
#{lineId}
|
||||
</foreach>
|
||||
group by line_id
|
||||
</select>
|
||||
<select id="getPointListByIds" resultMap="BaseResultMap">
|
||||
select
|
||||
<include refid="allColumn"/>
|
||||
from xfsg_point_info
|
||||
where deleted = 0 and id in
|
||||
<foreach collection="pointIds" item="pointId" index="index" open="(" separator="," close=")">
|
||||
#{pointId}
|
||||
</foreach>
|
||||
</select>
|
||||
<select id="getRecommendPointList" resultType="com.cool.store.entity.PointInfoDO">
|
||||
select
|
||||
<include refid="allColumn"/>
|
||||
from xfsg_point_info
|
||||
where deleted = 0 and point_status in (4,5) and development_manager = #{request.developmentManager} and select_status = 0
|
||||
<if test="request.pointStatusList != null and request.pointStatusList.size() > 0">
|
||||
and point_status in
|
||||
<foreach collection="request.pointStatusList" item="pointStatus" separator="," open="(" close=")">
|
||||
#{pointStatus}
|
||||
</foreach>
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<update id="updateSelectedDevelopmentManager">
|
||||
update
|
||||
xfsg_point_info
|
||||
set
|
||||
development_manager = #{developmentManager}
|
||||
where
|
||||
shop_id = #{shopId} and select_status = '1' and deleted = 0
|
||||
</update>
|
||||
|
||||
<select id="getTeamPointPage" resultMap="BaseResultMap">
|
||||
select
|
||||
id,
|
||||
point_name,
|
||||
point_code,
|
||||
address,
|
||||
region_id,
|
||||
point_status,
|
||||
point_score,
|
||||
point_area,
|
||||
development_manager,
|
||||
operate_user_id,
|
||||
development_time,
|
||||
select_status,
|
||||
create_time,
|
||||
update_time
|
||||
from
|
||||
xfsg_point_info
|
||||
where deleted = 0 and point_status in (4,5,6,7)
|
||||
<if test="request.keyword != null and request.keyword != ''">
|
||||
and (point_code like concat('%', #{request.keyword}, '%') or point_name like concat('%', #{request.keyword}, '%'))
|
||||
</if>
|
||||
<if test="request.developmentManager != null and request.developmentManager != ''">
|
||||
and development_manager = #{request.developmentManager}
|
||||
</if>
|
||||
<if test="request.pointStatus != null and request.pointStatus != ''">
|
||||
and point_status = #{request.pointStatus}
|
||||
</if>
|
||||
<if test="request.createStartTime != null and request.createStartTime != ''">
|
||||
and create_time >= #{request.createStartTime}
|
||||
</if>
|
||||
<if test="request.createEndTime != null and request.createEndTime != ''">
|
||||
<![CDATA[and create_time <= #{request.createEndTime}]]>
|
||||
</if>
|
||||
<if test="request.regionIds != null and request.regionIds.size() > 0">
|
||||
and region_id in
|
||||
<foreach collection="request.regionIds" item="regionId" index="index" open="(" separator="," close=")">
|
||||
#{regionId}
|
||||
<select id="getPointListByIds" resultMap="BaseResultMap">
|
||||
select
|
||||
<include refid="allColumn"/>
|
||||
from xfsg_point_info
|
||||
where deleted = 0 and id in
|
||||
<foreach collection="pointIds" item="pointId" index="index" open="(" separator="," close=")">
|
||||
#{pointId}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="request.authRegionIds != null and request.authRegionIds.size() > 0">
|
||||
and region_id in
|
||||
<foreach collection="request.authRegionIds" item="regionId" index="index" open="(" separator="," close=")">
|
||||
#{regionId}
|
||||
</foreach>
|
||||
</if>
|
||||
order by id desc
|
||||
</select>
|
||||
</select>
|
||||
<select id="getRecommendPointList" resultType="com.cool.store.entity.PointInfoDO">
|
||||
select
|
||||
<include refid="allColumn"/>
|
||||
from xfsg_point_info
|
||||
where deleted = 0 and point_status in (4,5) and development_manager = #{request.developmentManager} and
|
||||
select_status = 0
|
||||
<if test="request.pointStatusList != null and request.pointStatusList.size() > 0">
|
||||
and point_status in
|
||||
<foreach collection="request.pointStatusList" item="pointStatus" separator="," open="(" close=")">
|
||||
#{pointStatus}
|
||||
</foreach>
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<update id="updateSelectedDevelopmentManager">
|
||||
update
|
||||
xfsg_point_info
|
||||
set
|
||||
development_manager = #{developmentManager}
|
||||
where
|
||||
shop_id = #{shopId} and select_status = '1' and deleted = 0
|
||||
</update>
|
||||
|
||||
<select id="getTeamPointPage" resultMap="BaseResultMap">
|
||||
select
|
||||
id,
|
||||
point_name,
|
||||
point_code,
|
||||
address,
|
||||
region_id,
|
||||
point_status,
|
||||
point_score,
|
||||
point_area,
|
||||
development_manager,
|
||||
operate_user_id,
|
||||
development_time,
|
||||
select_status,
|
||||
create_time,
|
||||
update_time,
|
||||
open_shop_name,
|
||||
opportunity_point_code,
|
||||
opportunity_point_name
|
||||
from
|
||||
xfsg_point_info
|
||||
where deleted = 0 and point_status in (4,5,6,7)
|
||||
<if test="request.keyword != null and request.keyword != ''">
|
||||
and (point_code like concat('%', #{request.keyword}, '%') or point_name like concat('%', #{request.keyword},
|
||||
'%'))
|
||||
</if>
|
||||
<if test="request.developmentManager != null and request.developmentManager != ''">
|
||||
and development_manager = #{request.developmentManager}
|
||||
</if>
|
||||
<if test="request.pointStatus != null and request.pointStatus != ''">
|
||||
and point_status = #{request.pointStatus}
|
||||
</if>
|
||||
<if test="request.createStartTime != null and request.createStartTime != ''">
|
||||
and create_time >= #{request.createStartTime}
|
||||
</if>
|
||||
<if test="request.createEndTime != null and request.createEndTime != ''">
|
||||
<![CDATA[and create_time <= #{request.createEndTime}]]>
|
||||
</if>
|
||||
<if test="request.regionIds != null and request.regionIds.size() > 0">
|
||||
and region_id in
|
||||
<foreach collection="request.regionIds" item="regionId" index="index" open="(" separator="," close=")">
|
||||
#{regionId}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="request.authRegionIds != null and request.authRegionIds.size() > 0">
|
||||
and region_id in
|
||||
<foreach collection="request.authRegionIds" item="regionId" index="index" open="(" separator="," close=")">
|
||||
#{regionId}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="request.storageStatus != null ">
|
||||
and storage_status = #{request.storageStatus}
|
||||
</if>
|
||||
order by id desc
|
||||
</select>
|
||||
<select id="getDataByShopIdAndLineId" resultType="com.cool.store.entity.PointInfoDO">
|
||||
SELECT
|
||||
<include refid="allColumn"/>
|
||||
FROM xfsg_point_info
|
||||
WHERE shop_id = #{shopId}
|
||||
AND line_id = #{lineId}
|
||||
AND deleted = 0
|
||||
SELECT
|
||||
<include refid="allColumn"/>
|
||||
FROM xfsg_point_info
|
||||
WHERE shop_id = #{shopId}
|
||||
AND line_id = #{lineId}
|
||||
AND deleted = 0
|
||||
</select>
|
||||
<select id="MiniPointPageVO" resultType="com.cool.store.vo.point.MiniPointPageVO">
|
||||
select a.id as pointId,
|
||||
a.point_name as pointName,
|
||||
a.point_code as pointCode,
|
||||
a.longitude as longitude,
|
||||
a.latitude as latitude,
|
||||
a.address as address,
|
||||
a.create_time as createTime,
|
||||
a.opportunity_point_code as opportunityPointCode,
|
||||
a.opportunity_point_name as opportunityPointName,
|
||||
a.picture_obj as pictureObj,
|
||||
a.point_area as pointArea,
|
||||
b.landlord_mobile as landlordMobile,
|
||||
b.month_rent as monthRent,
|
||||
from xfsg_point_info a
|
||||
left join xfsg_point_recommend b on a.id = b.point_id
|
||||
where a.line_id = #{lineId} and a.point_source = 2
|
||||
</select>
|
||||
|
||||
<update id="recyclePoint">
|
||||
update xfsg_point_info set line_id = null, shop_id = null, select_status = 0, update_time = now(), point_status = if(point_status = 6, 5, point_status) where id = #{pointId}
|
||||
</update>
|
||||
update xfsg_point_info set line_id = null, shop_id = null, select_status = 0, update_time = now(), point_status
|
||||
= if(point_status = 6, 5, point_status) where id = #{pointId}
|
||||
</update>
|
||||
|
||||
<update id="perfectPointInfo">
|
||||
update
|
||||
xfsg_point_info
|
||||
set
|
||||
point_name = #{request.pointName},
|
||||
region_id = #{request.regionId},
|
||||
point_area = #{request.pointArea},
|
||||
latitude = #{request.latitude},
|
||||
longitude = #{request.longitude},
|
||||
address = #{request.address},
|
||||
province = #{request.province},
|
||||
city = #{request.city},
|
||||
district = #{request.district},
|
||||
township = #{request.township},
|
||||
point_score = #{request.pointScore}
|
||||
where id = #{request.id}
|
||||
</update>
|
||||
<update id="perfectPointInfo">
|
||||
update
|
||||
xfsg_point_info
|
||||
set
|
||||
point_name = #{request.pointName},
|
||||
region_id = #{request.regionId},
|
||||
point_area = #{request.pointArea},
|
||||
latitude = #{request.latitude},
|
||||
longitude = #{request.longitude},
|
||||
address = #{request.address},
|
||||
province = #{request.province},
|
||||
city = #{request.city},
|
||||
district = #{request.district},
|
||||
township = #{request.township},
|
||||
point_score = #{request.pointScore}
|
||||
where id = #{request.id}
|
||||
</update>
|
||||
|
||||
</mapper>
|
||||
@@ -116,11 +116,17 @@
|
||||
p.point_name as pointName,
|
||||
p.point_code as pointCode,
|
||||
p.region_id as regionId,
|
||||
p.longitude as longitude,
|
||||
p.latitude as latitude,
|
||||
p.address as address,
|
||||
p.point_score as pointScore,
|
||||
p.point_area as pointArea,
|
||||
p.point_status as pointStatus,
|
||||
p.select_status as selectStatus,
|
||||
p.create_time as createTime,
|
||||
p.opportunity_point_code as opportunityPointCode,
|
||||
p.opportunity_point_name as opportunityPointName,
|
||||
p.picture_obj as pictureObj,
|
||||
pr.status as recommendStatus
|
||||
from
|
||||
xfsg_point_recommend pr
|
||||
|
||||
@@ -160,4 +160,7 @@ public class PointInfoDO {
|
||||
|
||||
@Column(name = "opportunity_point_name")
|
||||
private String opportunityPointName;
|
||||
|
||||
@Column(name = "open_shop_name")
|
||||
private String openShopName;
|
||||
}
|
||||
@@ -43,4 +43,6 @@ public class AllPointPageRequest extends PageBasicInfo {
|
||||
@ApiModelProperty(value = "管辖区域",hidden = true)
|
||||
private List<String> authRegionIds;
|
||||
|
||||
@ApiModelProperty(value = "是否入库1已入库 2暂未入库")
|
||||
private Integer storageStatus;
|
||||
}
|
||||
|
||||
@@ -6,6 +6,7 @@ import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.Max;
|
||||
import javax.validation.constraints.Min;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* @author zhangchenbiao
|
||||
@@ -24,4 +25,11 @@ public class MiniPointPageRequest extends PageBasicInfo {
|
||||
@ApiModelProperty(value = "门店线索ID")
|
||||
private Long shopId;
|
||||
|
||||
@ApiModelProperty(value = "1-推荐铺位,2-我创建的")
|
||||
@NotNull
|
||||
private Integer type;
|
||||
|
||||
private Long lineId;
|
||||
|
||||
private String partnerId;
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@ import lombok.Data;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -41,6 +42,30 @@ public class MiniPointPageVO {
|
||||
@ApiModelProperty("1.待选择 2.已选择 3.已被他人选择 4.已签约 5.已拒绝 6.已失效")
|
||||
private Integer recommendStatus;
|
||||
|
||||
@ApiModelProperty("租金")
|
||||
private String monthRent;
|
||||
|
||||
@ApiModelProperty("房东电话")
|
||||
private String landlordMobile;
|
||||
|
||||
@ApiModelProperty("录入时间")
|
||||
private Date createTime;
|
||||
|
||||
@ApiModelProperty("机会点编号")
|
||||
private String opportunityPointCode;
|
||||
|
||||
@ApiModelProperty("机会点名称")
|
||||
private String opportunityPointName;
|
||||
|
||||
@ApiModelProperty("图片/视频附件")
|
||||
private String pictureObj;
|
||||
|
||||
@ApiModelProperty("经度")
|
||||
private String longitude;
|
||||
|
||||
@ApiModelProperty("纬度")
|
||||
private String latitude;
|
||||
|
||||
public static List<MiniPointPageVO> convertVO(List<MiniPointPageDTO> pointList, Map<Long, String> regionNameMap) {
|
||||
if(CollectionUtils.isEmpty(pointList)){
|
||||
return Lists.newArrayList();
|
||||
|
||||
@@ -260,6 +260,14 @@ public class PointDetailVO {
|
||||
@ApiModelProperty("是否可以上传租赁合同")
|
||||
private boolean canSubmitRentContract;
|
||||
|
||||
@ApiModelProperty("成功开店")
|
||||
private String openShopName;
|
||||
|
||||
@ApiModelProperty("所属机会点编码")
|
||||
private String opportunityPointCode;
|
||||
|
||||
@ApiModelProperty("所属机会点名称")
|
||||
private String opportunityPointName;
|
||||
|
||||
public static PointDetailVO convertVO(PointInfoDO pointInfo, PointDetailInfoDO pointDetailInfo) {
|
||||
PointDetailVO result = new PointDetailVO();
|
||||
@@ -271,7 +279,7 @@ public class PointDetailVO {
|
||||
result.setLatitude(pointInfo.getLatitude());
|
||||
result.setAddress(pointInfo.getAddress());
|
||||
result.setPointStatus(pointInfo.getPointStatus());
|
||||
if(PointStatusEnum.POINT_STATUS_4.getCode().equals(pointInfo.getPointStatus())){
|
||||
if (PointStatusEnum.POINT_STATUS_4.getCode().equals(pointInfo.getPointStatus())) {
|
||||
result.setPointStatus(PointStatusEnum.POINT_STATUS_3.getCode());
|
||||
}
|
||||
result.setDevelopmentTime(pointInfo.getDevelopmentTime());
|
||||
@@ -344,6 +352,9 @@ public class PointDetailVO {
|
||||
result.setCity(pointInfo.getCity());
|
||||
result.setDistrict(pointInfo.getDistrict());
|
||||
result.setTownship(pointInfo.getTownship());
|
||||
result.setOpenShopName(pointInfo.getOpenShopName());
|
||||
result.setOpportunityPointCode(pointInfo.getOpportunityPointCode());
|
||||
result.setOpportunityPointName(pointInfo.getOpportunityPointName());
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
@@ -57,6 +57,13 @@ public class PointPageVO {
|
||||
@ApiModelProperty("更新时间")
|
||||
private Date updateTime;
|
||||
|
||||
@ApiModelProperty("成功开店")
|
||||
private String openShopName;
|
||||
|
||||
@ApiModelProperty("所属机会点编码")
|
||||
private String opportunityPointCode;
|
||||
@ApiModelProperty("所属机会点名称")
|
||||
private String opportunityPointName;
|
||||
|
||||
|
||||
public static List<PointPageVO> convertVO(List<PointInfoDO> pointList, Map<String, String> usernameMap, Map<Long, String> regionNameMap) {
|
||||
|
||||
@@ -19,5 +19,5 @@ public interface TallyBookService {
|
||||
|
||||
List<TallyBookDTO> getTallyBookListByShopIdAndYear(Long shopId, Integer year);
|
||||
|
||||
public TallyBookDO initData(Date date, Long shopId, String partnerId);
|
||||
Long initData(Date date, Long shopId, String partnerId);
|
||||
}
|
||||
|
||||
@@ -22,6 +22,7 @@ import com.cool.store.vo.point.*;
|
||||
import com.cool.store.vo.shop.RentInfoToDoVO;
|
||||
import com.cool.store.vo.shop.ShopPointBaseInfoVO;
|
||||
import com.github.pagehelper.Page;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import com.google.common.collect.Lists;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -112,12 +113,12 @@ public class PointServiceImpl implements PointService {
|
||||
@Override
|
||||
public PointDetailVO getPointDetailInfo(Long pointId, Boolean isGetNodeNo) {
|
||||
PointInfoDO pointInfo = pointInfoDAO.getPointInfoById(pointId);
|
||||
if(Objects.isNull(pointInfo)){
|
||||
if (Objects.isNull(pointInfo)) {
|
||||
log.error("铺位基本信息不存在");
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
|
||||
}
|
||||
PointDetailInfoDO pointDetailInfo = pointDetailInfoDAO.getPointDetailInfoByPointId(pointId);
|
||||
if(Objects.isNull(pointDetailInfo)){
|
||||
if (Objects.isNull(pointDetailInfo)) {
|
||||
log.error("铺位详情信息不存在");
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
|
||||
}
|
||||
@@ -126,10 +127,10 @@ public class PointServiceImpl implements PointService {
|
||||
result.setDevelopmentManagerUserName(userName);
|
||||
result.setDevelopmentManagerUserId(pointInfo.getDevelopmentManager());
|
||||
result.setRegionNodeName(regionService.getBelongWarRegionName(pointInfo.getRegionId()));
|
||||
if(Objects.nonNull(isGetNodeNo) && isGetNodeNo){
|
||||
if (Objects.nonNull(isGetNodeNo) && isGetNodeNo) {
|
||||
result.setCurNodeNo(pointTodoInfoDAO.getCurNodeNoByPoint(pointId));
|
||||
}
|
||||
if(SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())){
|
||||
if (SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())) {
|
||||
List<Long> canSubmitRentContractShopIds = shopStageInfoDAO.getCanSubmitRentContractShopIds(Arrays.asList(pointInfo.getShopId()));
|
||||
boolean canSubmitRentContract = CollectionUtils.isEmpty(canSubmitRentContractShopIds) ? Boolean.FALSE : Boolean.TRUE;
|
||||
result.setCanSubmitRentContract(canSubmitRentContract);
|
||||
@@ -141,7 +142,7 @@ public class PointServiceImpl implements PointService {
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Long updatePointDetailInfo(UpdatePointDetailRequest shopPointDetailRequest) {
|
||||
PointInfoDO pointInfo = pointInfoDAO.getPointInfoById(shopPointDetailRequest.getPointId());
|
||||
if(Objects.isNull(pointInfo)){
|
||||
if (Objects.isNull(pointInfo)) {
|
||||
log.error("铺位基本信息不存在");
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
|
||||
}
|
||||
@@ -157,10 +158,10 @@ public class PointServiceImpl implements PointService {
|
||||
public Integer generateEvaluationReport(Long pointId) {
|
||||
PointInfoDO pointInfo = pointInfoDAO.getPointInfoById(pointId);
|
||||
PointDetailInfoDO pointDetailInfo = pointDetailInfoDAO.getPointDetailInfoByPointId(pointId);
|
||||
if(Objects.isNull(pointInfo) || Objects.isNull(pointDetailInfo)){
|
||||
if (Objects.isNull(pointInfo) || Objects.isNull(pointDetailInfo)) {
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
|
||||
}
|
||||
if(!pointDetailInfo.isCanSubmitEvaluable() || StringUtils.isBlank(pointInfo.getPointArea())){
|
||||
if (!pointDetailInfo.isCanSubmitEvaluable() || StringUtils.isBlank(pointInfo.getPointArea())) {
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_COMPLETE);
|
||||
}
|
||||
Integer totalPointScore = pointDetailInfo.getTotalPointScore();
|
||||
@@ -176,18 +177,18 @@ public class PointServiceImpl implements PointService {
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Integer pointInvalid(Long pointId) {
|
||||
PointInfoDO pointInfo = pointInfoDAO.getPointInfoById(pointId);
|
||||
if(Objects.isNull(pointInfo)){
|
||||
if (Objects.isNull(pointInfo)) {
|
||||
log.error("铺位基本信息不存在");
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
|
||||
}
|
||||
if(PointStatusEnum.POINT_STATUS_6.getCode().equals(pointInfo.getPointStatus())){
|
||||
if (PointStatusEnum.POINT_STATUS_6.getCode().equals(pointInfo.getPointStatus())) {
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_SIGNED);
|
||||
}
|
||||
PointInfoDO updatePoint = new PointInfoDO();
|
||||
updatePoint.setId(pointId);
|
||||
updatePoint.setPointStatus(PointStatusEnum.POINT_STATUS_7.getCode());
|
||||
pointInfoDAO.updatePointInfo(updatePoint);
|
||||
if(SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())){
|
||||
if (SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())) {
|
||||
rollbackSelectPoint(pointInfo.getShopId(), pointInfo.getId());
|
||||
}
|
||||
return pointRecommendDAO.updateRecommendStatus(pointId, PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_6, null);
|
||||
@@ -197,7 +198,7 @@ public class PointServiceImpl implements PointService {
|
||||
* 回退选址状态
|
||||
* @return
|
||||
*/
|
||||
private void rollbackSelectPoint(Long shopId, Long pointId){
|
||||
private void rollbackSelectPoint(Long shopId, Long pointId) {
|
||||
//店铺回退待带选址
|
||||
shopInfoDAO.unbindPoint(shopId);
|
||||
//铺位回退
|
||||
@@ -206,7 +207,7 @@ public class PointServiceImpl implements PointService {
|
||||
shopStageInfoDAO.updateShopStageInfo(shopId, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_10);
|
||||
//租赁合同回到未开始
|
||||
Integer result = shopStageInfoDAO.updateShopStageToNotStarted(shopId, ShopSubStageEnum.SHOP_STAGE_2);
|
||||
if(result > CommonConstants.ZERO){
|
||||
if (result > CommonConstants.ZERO) {
|
||||
//删除租赁合同
|
||||
shopRentInfoDAO.deleteRentContractByShopId(shopId);
|
||||
}
|
||||
@@ -216,14 +217,14 @@ public class PointServiceImpl implements PointService {
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Integer pointUnbind(Long pointId) {
|
||||
PointInfoDO pointInfo = pointInfoDAO.getPointInfoById(pointId);
|
||||
if(Objects.isNull(pointInfo)){
|
||||
if (Objects.isNull(pointInfo)) {
|
||||
log.error("铺位基本信息不存在");
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
|
||||
}
|
||||
if(PointStatusEnum.POINT_STATUS_6.getCode().equals(pointInfo.getPointStatus())){
|
||||
if (PointStatusEnum.POINT_STATUS_6.getCode().equals(pointInfo.getPointStatus())) {
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_SIGNED);
|
||||
}
|
||||
if(SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())){
|
||||
if (SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())) {
|
||||
rollbackSelectPoint(pointInfo.getShopId(), pointInfo.getId());
|
||||
}
|
||||
//将已选择、已被他人选择的状态更新成待选泽
|
||||
@@ -233,7 +234,7 @@ public class PointServiceImpl implements PointService {
|
||||
@Override
|
||||
public Integer addMapEvaluationReport(AddMapEvaluationReportRequest request) {
|
||||
PointDetailInfoDO pointDetailInfo = pointDetailInfoDAO.getPointDetailInfoByPointId(request.getPointId());
|
||||
if(Objects.isNull(pointDetailInfo)){
|
||||
if (Objects.isNull(pointDetailInfo)) {
|
||||
log.error("铺位基本信息不存在");
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
|
||||
}
|
||||
@@ -249,22 +250,22 @@ public class PointServiceImpl implements PointService {
|
||||
|
||||
Long pointId = request.getPointId();
|
||||
PointInfoDO pointInfo = pointInfoDAO.getPointInfoById(pointId);
|
||||
if(Objects.isNull(pointInfo)){
|
||||
if (Objects.isNull(pointInfo)) {
|
||||
log.error("铺位基本信息不存在");
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
|
||||
}
|
||||
PointDetailInfoDO pointDetailInfo = pointDetailInfoDAO.getPointDetailInfoByPointId(pointId);
|
||||
if(Objects.isNull(pointDetailInfo)){
|
||||
if (Objects.isNull(pointDetailInfo)) {
|
||||
log.error("铺位详细信息不存在");
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
|
||||
}
|
||||
//处理子任务审核记录表
|
||||
AuditSettingVO auditSetting = getAuditSetting();
|
||||
if(Objects.isNull(auditSetting)){
|
||||
if (Objects.isNull(auditSetting)) {
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_AUDIT_NOT_SETTING);
|
||||
}
|
||||
List<AuditNodeDTO> auditNode = dealAuditNode(auditSetting, pointInfo.getRegionId(), pointInfo.getDevelopmentManager());
|
||||
if(auditNode.size()==CommonConstants.ONE){
|
||||
if (auditNode.size() == CommonConstants.ONE) {
|
||||
throw new ServiceException(ErrorCodeEnum.CONFIRM_THE_APPROVER);
|
||||
}
|
||||
int submitAuditCount = pointInfo.getSubmitAuditCount() + 1;
|
||||
@@ -297,7 +298,7 @@ public class PointServiceImpl implements PointService {
|
||||
public AuditSettingVO getAuditSetting() {
|
||||
String cacheKey = MessageFormat.format(AUDIT_SETTING_KEY, enterpriseId);
|
||||
String auditSetting = redisUtilPool.getString(cacheKey);
|
||||
if(StringUtils.isBlank(auditSetting)){
|
||||
if (StringUtils.isBlank(auditSetting)) {
|
||||
return null;
|
||||
}
|
||||
return JSONObject.parseObject(auditSetting, AuditSettingVO.class);
|
||||
@@ -337,25 +338,25 @@ public class PointServiceImpl implements PointService {
|
||||
* @param currentNo
|
||||
* @return
|
||||
*/
|
||||
private Integer dealNextAuditRecord(PointInfoDO pointInfo, Map<Integer, PointAuditRecordDO> pointAuditRecordMap, Integer currentNo){
|
||||
private Integer dealNextAuditRecord(PointInfoDO pointInfo, Map<Integer, PointAuditRecordDO> pointAuditRecordMap, Integer currentNo) {
|
||||
Integer result = CommonConstants.ZERO;
|
||||
PointAuditRecordDO nextAuditRecord = getNextAuditRecord(currentNo, pointAuditRecordMap);
|
||||
if(Objects.nonNull(nextAuditRecord)){
|
||||
if (Objects.nonNull(nextAuditRecord)) {
|
||||
pointAuditRecordDAO.updatePointAuditRecord(PointAuditRecordDO.convert(nextAuditRecord.getId(), new Date()));
|
||||
//审批通过的情况下 生成下一个节点的待办数据
|
||||
pointTodoInfoDAO.addPointTodoInfo(PointAuditRecordDO.convertTODO(nextAuditRecord));
|
||||
List<String> sendMessageUserIds = JSONObject.parseArray(nextAuditRecord.getHandlerUserIds(), String.class);
|
||||
HashMap<String, String> map = new HashMap<>();
|
||||
map.put("pointName",pointInfo.getPointName()) ;
|
||||
map.put("pointAddress",pointInfo.getAddress()) ;
|
||||
map.put("pointName", pointInfo.getPointName());
|
||||
map.put("pointAddress", pointInfo.getAddress());
|
||||
commonService.sendQWMessage(sendMessageUserIds, MessageEnum.MESSAGE_13, map);
|
||||
}else{
|
||||
} else {
|
||||
PointInfoDO updatePoint = new PointInfoDO();
|
||||
updatePoint.setId(pointInfo.getId());
|
||||
//没有下一节点 审批通过
|
||||
updatePoint.setPointStatus(PointStatusEnum.POINT_STATUS_5.getCode());
|
||||
updatePoint.setStorageStatus(StorageStatusEnum.IN_STORAGE.getCode());
|
||||
if(SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())){
|
||||
if (SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())) {
|
||||
initUploadRentContract(pointInfo);
|
||||
}
|
||||
Map<String, String> messageMap = new HashMap<>();
|
||||
@@ -374,7 +375,7 @@ public class PointServiceImpl implements PointService {
|
||||
* @param reason
|
||||
* @return
|
||||
*/
|
||||
private Integer auditRejectDeal(PointInfoDO pointInfo, String reason){
|
||||
private Integer auditRejectDeal(PointInfoDO pointInfo, String reason) {
|
||||
Long pointId = pointInfo.getId();
|
||||
PointInfoDO pointInfoUpdate = new PointInfoDO();
|
||||
pointInfoUpdate.setId(pointId);
|
||||
@@ -394,17 +395,17 @@ public class PointServiceImpl implements PointService {
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Integer audit(String userId, PointAuditRequest request) {
|
||||
if(!request.check()){
|
||||
if (!request.check()) {
|
||||
throw new ServiceException(ErrorCodeEnum.PARAMS_VALIDATE_ERROR);
|
||||
}
|
||||
Long pointId = request.getPointId();
|
||||
PointTodoInfoDO pointTodo = pointTodoInfoDAO.getPointToDoByUserIdAndPointId(userId, pointId);
|
||||
if(Objects.isNull(pointTodo)){
|
||||
if (Objects.isNull(pointTodo)) {
|
||||
log.info("该用户没有待办数据");
|
||||
throw new ServiceException(ErrorCodeEnum.USER_NOT_TODO_AUDIT);
|
||||
}
|
||||
PointInfoDO pointInfo = pointInfoDAO.getPointInfoById(pointId);
|
||||
if(Objects.isNull(pointInfo)){
|
||||
if (Objects.isNull(pointInfo)) {
|
||||
log.info("铺位不存在");
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
|
||||
}
|
||||
@@ -413,14 +414,14 @@ public class PointServiceImpl implements PointService {
|
||||
pointTodoInfoDAO.updatePointTodoInfo(pointId, pointTodo.getNodeNo(), pointInfo.getSubmitAuditCount(), userId);
|
||||
Map<Integer, PointAuditRecordDO> pointAuditRecordMap = pointAuditRecordDAO.getPointAuditRecordMap(pointId, pointInfo.getSubmitAuditCount());
|
||||
PointAuditRecordDO pointAuditRecord = pointAuditRecordMap.get(pointTodo.getNodeNo());
|
||||
if(Objects.isNull(pointAuditRecord)){
|
||||
if (Objects.isNull(pointAuditRecord)) {
|
||||
log.info("铺位处理记录中的数据不对");
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_AUDIT_NODE_ERROR);
|
||||
}
|
||||
NodeNoEnum nodeNoEnum = NodeNoEnum.getByCode(pointTodo.getNodeNo());
|
||||
PointAuditRecordDO auditRecord = PointAuditRecordDO.convert(pointAuditRecord.getId(), userId, auditStatus, request.getReason(), nodeNoEnum);
|
||||
pointAuditRecordDAO.updatePointAuditRecord(auditRecord);
|
||||
if(AuditStatusEnum.REJECT.equals(auditStatus)){
|
||||
if (AuditStatusEnum.REJECT.equals(auditStatus)) {
|
||||
return auditRejectDeal(pointInfo, request.getReason());
|
||||
}
|
||||
//处理下一节点任务及更新point状态
|
||||
@@ -430,13 +431,13 @@ public class PointServiceImpl implements PointService {
|
||||
@Override
|
||||
public Integer turnDevelopmentManager(TurnDevelopmentManagerRequest request) {
|
||||
PointInfoDO pointInfo = pointInfoDAO.getPointInfoById(request.getPointId());
|
||||
if(Objects.isNull(pointInfo)){
|
||||
if (Objects.isNull(pointInfo)) {
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
|
||||
}
|
||||
if(SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus()) || PointStatusEnum.POINT_STATUS_6.getCode().equals(pointInfo.getPointStatus())){
|
||||
if (SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus()) || PointStatusEnum.POINT_STATUS_6.getCode().equals(pointInfo.getPointStatus())) {
|
||||
throw new ServiceException(ErrorCodeEnum.NOT_ALLOW_OPERATE);
|
||||
}
|
||||
if(PointStatusEnum.POINT_STATUS_7.getCode().equals(pointInfo.getPointStatus())){
|
||||
if (PointStatusEnum.POINT_STATUS_7.getCode().equals(pointInfo.getPointStatus())) {
|
||||
throw new ServiceException(ErrorCodeEnum.NOT_ALLOW_OPERATE);
|
||||
}
|
||||
pointInfo.setDevelopmentManager(request.getDevelopmentManager());
|
||||
@@ -446,8 +447,8 @@ public class PointServiceImpl implements PointService {
|
||||
@Override
|
||||
public PageInfo<LinePointBaseInfoVO> getLinePage(PointLinePageRequest request) {
|
||||
Page<LineInfoDO> lineList = lineInfoDAO.getLinePageByDevelopmentManager(request);
|
||||
List<String> userPortraitList = lineList.stream().filter(x -> StringUtils.isNotEmpty(x.getUserPortrait() )).map(LineInfoDO::getUserPortrait).collect(Collectors.toList());
|
||||
List<String> investmentManagerUserIds = lineList.stream().filter(x -> StringUtils.isNotEmpty(x.getInvestmentManager() )).map(LineInfoDO::getInvestmentManager).collect(Collectors.toList());
|
||||
List<String> userPortraitList = lineList.stream().filter(x -> StringUtils.isNotEmpty(x.getUserPortrait())).map(LineInfoDO::getUserPortrait).collect(Collectors.toList());
|
||||
List<String> investmentManagerUserIds = lineList.stream().filter(x -> StringUtils.isNotEmpty(x.getInvestmentManager())).map(LineInfoDO::getInvestmentManager).collect(Collectors.toList());
|
||||
List<Long> lineIds = lineList.stream().map(LineInfoDO::getId).collect(Collectors.toList());
|
||||
List<Long> wantShopAreaIds = lineList.stream().map(LineInfoDO::getWantShopAreaId).collect(Collectors.toList());
|
||||
Map<Long, Integer> recommendShopNumMap = pointRecommendDAO.getPushShopNumMap(lineIds);
|
||||
@@ -464,8 +465,8 @@ public class PointServiceImpl implements PointService {
|
||||
@Override
|
||||
public PageInfo<ShopPointBaseInfoVO> getShopPage(PointLinePageRequest request) {
|
||||
List<ShopPointDTO> listByDevelopmentManager = shopInfoDAO.getShopPointListByDevelopmentManager(request);
|
||||
List<String> userPortraitList = listByDevelopmentManager.stream().filter(x -> StringUtils.isNotEmpty(x.getUserPortrait() )).map(ShopPointDTO::getUserPortrait).collect(Collectors.toList());
|
||||
List<String> investmentManagerUserIds = listByDevelopmentManager.stream().filter(x -> StringUtils.isNotEmpty(x.getInvestmentManager() )).map(ShopPointDTO::getInvestmentManager).collect(Collectors.toList());
|
||||
List<String> userPortraitList = listByDevelopmentManager.stream().filter(x -> StringUtils.isNotEmpty(x.getUserPortrait())).map(ShopPointDTO::getUserPortrait).collect(Collectors.toList());
|
||||
List<String> investmentManagerUserIds = listByDevelopmentManager.stream().filter(x -> StringUtils.isNotEmpty(x.getInvestmentManager())).map(ShopPointDTO::getInvestmentManager).collect(Collectors.toList());
|
||||
List<Long> shopIds = listByDevelopmentManager.stream().map(ShopPointDTO::getShopId).collect(Collectors.toList());
|
||||
List<Long> wantShopAreaIds = listByDevelopmentManager.stream().map(ShopPointDTO::getWantShopAreaId).collect(Collectors.toList());
|
||||
Map<Long, Integer> recommendShopNumMap = pointRecommendDAO.getShopPushPointNumMap(shopIds);
|
||||
@@ -476,7 +477,7 @@ public class PointServiceImpl implements PointService {
|
||||
List<Long> lineIds = listByDevelopmentManager.stream().map(ShopPointDTO::getLineId).collect(Collectors.toList());
|
||||
Map<Long, String> partnerNameMap = lineInfoDAO.getUserNameMap(lineIds);
|
||||
|
||||
List<ShopPointBaseInfoVO> resultList = ShopPointBaseInfoVO.convertList(partnerNameMap,listByDevelopmentManager, userNameMap, userPortraitMap, cityMap, recommendShopNumMap);
|
||||
List<ShopPointBaseInfoVO> resultList = ShopPointBaseInfoVO.convertList(partnerNameMap, listByDevelopmentManager, userNameMap, userPortraitMap, cityMap, recommendShopNumMap);
|
||||
PageInfo resultPage = new PageInfo(listByDevelopmentManager);
|
||||
resultPage.setList(resultList);
|
||||
return resultPage;
|
||||
@@ -488,7 +489,7 @@ public class PointServiceImpl implements PointService {
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public LinePointBaseInfoVO getLineInfo(Long lineId){
|
||||
public LinePointBaseInfoVO getLineInfo(Long lineId) {
|
||||
LineInfoDO lineInfo = lineInfoDAO.getLineInfo(lineId);
|
||||
Map<Long, Integer> recommendShopNumMap = pointRecommendDAO.getPushShopNumMap(Arrays.asList(lineId));
|
||||
HyOpenAreaInfoDO cityArea = hyOpenAreaInfoDAO.selectById(lineInfo.getWantShopAreaId());
|
||||
@@ -505,16 +506,16 @@ public class PointServiceImpl implements PointService {
|
||||
|
||||
@Override
|
||||
public PageInfo<PointPageVO> getMyPointPage(PointPageRequest request) {
|
||||
if(CollectionUtils.isNotEmpty(request.getRegionIds())){
|
||||
if(request.getRegionIds().contains(CommonConstants.ROOT_DEPT_ID_STR)){
|
||||
if (CollectionUtils.isNotEmpty(request.getRegionIds())) {
|
||||
if (request.getRegionIds().contains(CommonConstants.ROOT_DEPT_ID_STR)) {
|
||||
request.setRegionIds(null);
|
||||
}else{
|
||||
} else {
|
||||
request.setRegionIds(regionService.getSubRegionIdsByRegionIds(request.getRegionIds()));
|
||||
}
|
||||
}
|
||||
List<PointPageVO> resultList = new ArrayList();
|
||||
Page<PointInfoDO> pointPage = pointInfoDAO.getMyPointPage(request);
|
||||
if(Objects.nonNull(pointPage) && CollectionUtils.isNotEmpty(pointPage.getResult())){
|
||||
if (Objects.nonNull(pointPage) && CollectionUtils.isNotEmpty(pointPage.getResult())) {
|
||||
List<Long> regionIds = pointPage.stream().map(PointInfoDO::getRegionId).distinct().collect(Collectors.toList());
|
||||
List<String> developmentManagers = pointPage.stream().map(PointInfoDO::getDevelopmentManager).distinct().collect(Collectors.toList());
|
||||
Map<String, String> userNameMap = enterpriseUserDAO.getUserNameMap(developmentManagers);
|
||||
@@ -527,23 +528,23 @@ public class PointServiceImpl implements PointService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageInfo<PointPageVO> getTeamPointPage(AllPointPageRequest request){
|
||||
if(!sysRoleService.checkIsAdmin(request.getCurUserId())){
|
||||
public PageInfo<PointPageVO> getTeamPointPage(AllPointPageRequest request) {
|
||||
if (!sysRoleService.checkIsAdmin(request.getCurUserId())) {
|
||||
request.setAuthRegionIds(userAuthMappingService.getAuthRegionIdAndSubRegionIdByUserId(request.getCurUserId()));
|
||||
}
|
||||
if(CollectionUtils.isNotEmpty(request.getRegionIds())){
|
||||
if(request.getRegionIds().contains(CommonConstants.ROOT_DEPT_ID_STR)){
|
||||
if (CollectionUtils.isNotEmpty(request.getRegionIds())) {
|
||||
if (request.getRegionIds().contains(CommonConstants.ROOT_DEPT_ID_STR)) {
|
||||
request.setRegionIds(null);
|
||||
}else{
|
||||
} else {
|
||||
request.setRegionIds(regionService.getSubRegionIdsByRegionIds(request.getRegionIds()));
|
||||
}
|
||||
}
|
||||
if(Objects.nonNull(request.getPointStatus()) && PointStatusEnum.POINT_STATUS_3.getCode().equals(request.getPointStatus())){
|
||||
if (Objects.nonNull(request.getPointStatus()) && PointStatusEnum.POINT_STATUS_3.getCode().equals(request.getPointStatus())) {
|
||||
request.setPointStatus(PointStatusEnum.POINT_STATUS_4.getCode());
|
||||
}
|
||||
List<PointPageVO> resultList = new ArrayList();
|
||||
Page<PointInfoDO> pointPage = pointInfoDAO.getTeamPointPage(request);
|
||||
if(Objects.nonNull(pointPage) && CollectionUtils.isNotEmpty(pointPage.getResult())){
|
||||
if (Objects.nonNull(pointPage) && CollectionUtils.isNotEmpty(pointPage.getResult())) {
|
||||
List<Long> regionIds = pointPage.stream().map(PointInfoDO::getRegionId).distinct().collect(Collectors.toList());
|
||||
List<String> developmentManagers = pointPage.stream().map(PointInfoDO::getDevelopmentManager).distinct().collect(Collectors.toList());
|
||||
Map<String, String> userNameMap = enterpriseUserDAO.getUserNameMap(developmentManagers);
|
||||
@@ -558,10 +559,10 @@ public class PointServiceImpl implements PointService {
|
||||
@Override
|
||||
public List<PointAuditRecordVO> getPointAllAuditRecord(Long pointId) {
|
||||
List<PointAuditRecordDO> auditRecordList = pointAuditRecordDAO.getPointAllAuditRecord(pointId);
|
||||
if(CollectionUtils.isEmpty(auditRecordList)){
|
||||
if (CollectionUtils.isEmpty(auditRecordList)) {
|
||||
return Lists.newArrayList();
|
||||
}
|
||||
List<String> userIds = auditRecordList.stream().map(o->JSONObject.parseArray(o.getHandlerUserIds(), String.class)).flatMap(Collection::stream).distinct().collect(Collectors.toList());
|
||||
List<String> userIds = auditRecordList.stream().map(o -> JSONObject.parseArray(o.getHandlerUserIds(), String.class)).flatMap(Collection::stream).distinct().collect(Collectors.toList());
|
||||
Map<String, EnterpriseUserDO> userMap = enterpriseUserDAO.getUserInfoMap(userIds);
|
||||
return PointAuditRecordVO.convert(auditRecordList, userMap);
|
||||
}
|
||||
@@ -598,7 +599,7 @@ public class PointServiceImpl implements PointService {
|
||||
public PageInfo<PointPageVO> getRecommendPointList(RecommendPointPageRequest request) {
|
||||
List<PointPageVO> resultList = new ArrayList();
|
||||
Page<PointInfoDO> pointPage = pointInfoDAO.getRecommendPointList(request);
|
||||
if(Objects.nonNull(pointPage) && CollectionUtils.isNotEmpty(pointPage.getResult())){
|
||||
if (Objects.nonNull(pointPage) && CollectionUtils.isNotEmpty(pointPage.getResult())) {
|
||||
List<Long> regionIds = pointPage.stream().map(PointInfoDO::getRegionId).distinct().collect(Collectors.toList());
|
||||
List<String> developmentManagers = pointPage.stream().map(PointInfoDO::getDevelopmentManager).distinct().collect(Collectors.toList());
|
||||
Map<String, String> userNameMap = enterpriseUserDAO.getUserNameMap(developmentManagers);
|
||||
@@ -615,26 +616,26 @@ public class PointServiceImpl implements PointService {
|
||||
List<Long> pointIds = request.getPointIds();
|
||||
List<PointInfoDO> pointList = pointInfoDAO.getPointListByIds(pointIds);
|
||||
List<PointInfoDO> selectList = pointList.stream().filter(o -> SelectStatusEnum.SELECT_STATUS_1.getCode().equals(o.getSelectStatus())).collect(Collectors.toList());
|
||||
if(CollectionUtils.isNotEmpty(selectList)){
|
||||
if (CollectionUtils.isNotEmpty(selectList)) {
|
||||
String pointNames = selectList.stream().map(PointInfoDO::getPointName).collect(Collectors.joining(","));
|
||||
throw new ServiceException(ErrorCodeEnum.ERROR_MESSAGE, pointNames + ",已经被选");
|
||||
}
|
||||
List<PointInfoDO> invalidList = pointList.stream().filter(o -> PointStatusEnum.POINT_STATUS_7.getCode().equals(o.getPointStatus())).collect(Collectors.toList());
|
||||
if(CollectionUtils.isNotEmpty(invalidList)){
|
||||
if (CollectionUtils.isNotEmpty(invalidList)) {
|
||||
String pointNames = invalidList.stream().map(PointInfoDO::getPointName).collect(Collectors.joining(","));
|
||||
throw new ServiceException(ErrorCodeEnum.ERROR_MESSAGE, pointNames + ",已失效");
|
||||
}
|
||||
List<PointRecommendDO> recommendPointList = pointRecommendDAO.getShopRecommendPointList(request.getShopId());
|
||||
if(CollectionUtils.isNotEmpty(recommendPointList)){
|
||||
if (CollectionUtils.isNotEmpty(recommendPointList)) {
|
||||
List<PointRecommendDO> recommendList = recommendPointList.stream().filter(o -> PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_1.getCode().equals(o.getStatus()) ||
|
||||
PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_2.getCode().equals(o.getStatus()) ||
|
||||
PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_4.getCode().equals(o.getStatus()))
|
||||
.filter(o->request.getPointIds().contains(o.getPointId())).collect(Collectors.toList());
|
||||
if(CollectionUtils.isNotEmpty(recommendList)){
|
||||
PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_2.getCode().equals(o.getStatus()) ||
|
||||
PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_4.getCode().equals(o.getStatus()))
|
||||
.filter(o -> request.getPointIds().contains(o.getPointId())).collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(recommendList)) {
|
||||
throw new ServiceException(ErrorCodeEnum.ERROR_MESSAGE, "铺位已推送,请勿重复推送");
|
||||
}
|
||||
List<PointRecommendDO> selectedList = recommendPointList.stream().filter(o -> PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_3.getCode().equals(o.getStatus())).filter(o->request.getPointIds().contains(o.getPointId())).collect(Collectors.toList());
|
||||
if(CollectionUtils.isNotEmpty(selectedList)){
|
||||
List<PointRecommendDO> selectedList = recommendPointList.stream().filter(o -> PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_3.getCode().equals(o.getStatus())).filter(o -> request.getPointIds().contains(o.getPointId())).collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(selectedList)) {
|
||||
throw new ServiceException(ErrorCodeEnum.ERROR_MESSAGE, "铺位已选,请勿重复推送");
|
||||
}
|
||||
}
|
||||
@@ -646,31 +647,31 @@ public class PointServiceImpl implements PointService {
|
||||
public Integer pointRecommendLine(PointRecommendLineRequest request) {
|
||||
Long pointId = request.getPointId();
|
||||
PointInfoDO pointInfo = pointInfoDAO.getPointInfoById(pointId);
|
||||
if(Objects.isNull(pointInfo)){
|
||||
if (Objects.isNull(pointInfo)) {
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
|
||||
}
|
||||
if(PointStatusEnum.POINT_STATUS_7.getCode().equals(pointInfo.getPointStatus())){
|
||||
if (PointStatusEnum.POINT_STATUS_7.getCode().equals(pointInfo.getPointStatus())) {
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_IS_INVALID);
|
||||
}
|
||||
if(SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())){
|
||||
if (SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())) {
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_SELECTED);
|
||||
}
|
||||
List<PointRecommendDO> recommendPointList = pointRecommendDAO.getRecommendPointListByPointId(pointId);
|
||||
if(CollectionUtils.isNotEmpty(recommendPointList)){
|
||||
if (CollectionUtils.isNotEmpty(recommendPointList)) {
|
||||
List<PointRecommendDO> recommendList = recommendPointList.stream().filter(o -> PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_2.getCode().equals(o.getStatus()) ||
|
||||
PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_3.getCode().equals(o.getStatus()) ||
|
||||
PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_4.getCode().equals(o.getStatus()))
|
||||
.filter(o->request.getShopIds().contains(o.getShopId())).collect(Collectors.toList());
|
||||
if(CollectionUtils.isNotEmpty(recommendList)){
|
||||
PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_3.getCode().equals(o.getStatus()) ||
|
||||
PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_4.getCode().equals(o.getStatus()))
|
||||
.filter(o -> request.getShopIds().contains(o.getShopId())).collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(recommendList)) {
|
||||
throw new ServiceException(ErrorCodeEnum.ERROR_MESSAGE, "推送失败,铺位已被选");
|
||||
}
|
||||
List<Long> shopIds = recommendPointList.stream()
|
||||
.filter(o -> PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_1.getCode().equals(o.getStatus()))
|
||||
.filter(o->request.getShopIds().contains(o.getShopId())).map(PointRecommendDO::getShopId).collect(Collectors.toList());
|
||||
if(CollectionUtils.isNotEmpty(shopIds)){
|
||||
throw new ServiceException(ErrorCodeEnum.ERROR_MESSAGE, "请勿重复推送");
|
||||
}
|
||||
.filter(o -> request.getShopIds().contains(o.getShopId())).map(PointRecommendDO::getShopId).collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(shopIds)) {
|
||||
throw new ServiceException(ErrorCodeEnum.ERROR_MESSAGE, "请勿重复推送");
|
||||
}
|
||||
}
|
||||
List<PointRecommendDO> recommendList = request.convertList();
|
||||
return pointRecommendDAO.addRecommendPoint(recommendList);
|
||||
}
|
||||
@@ -696,10 +697,10 @@ public class PointServiceImpl implements PointService {
|
||||
@Override
|
||||
public Integer updateWantShopNum(UpdateWantShopNumRequest request) {
|
||||
LineInfoDO lineInfo = lineInfoDAO.getLineInfo(request.getLineId());
|
||||
if(Objects.isNull(lineInfo)){
|
||||
if (Objects.isNull(lineInfo)) {
|
||||
throw new ServiceException(ErrorCodeEnum.LINE_ID_IS_NOT_EXIST);
|
||||
}
|
||||
if(!WorkflowStageEnum.INTENT.getCode().equals(lineInfo.getWorkflowStage())){
|
||||
if (!WorkflowStageEnum.INTENT.getCode().equals(lineInfo.getWorkflowStage())) {
|
||||
throw new ServiceException(ErrorCodeEnum.NOT_ALLOW_MODIFY_WANT_SHOP_NUM);
|
||||
}
|
||||
LineInfoDO updateLine = new LineInfoDO();
|
||||
@@ -712,7 +713,7 @@ public class PointServiceImpl implements PointService {
|
||||
public PageInfo<PointPageVO> getTodoList(PointTodoPageRequest request) {
|
||||
Page<PointInfoDO> pointPage = pointTodoInfoDAO.getUserTodoList(request);
|
||||
List<PointPageVO> resultList = new ArrayList<>();
|
||||
if(Objects.nonNull(pointPage) && CollectionUtils.isNotEmpty(pointPage.getResult())){
|
||||
if (Objects.nonNull(pointPage) && CollectionUtils.isNotEmpty(pointPage.getResult())) {
|
||||
List<Long> regionIds = pointPage.stream().map(PointInfoDO::getRegionId).distinct().collect(Collectors.toList());
|
||||
List<String> developmentManagers = pointPage.stream().map(PointInfoDO::getDevelopmentManager).distinct().collect(Collectors.toList());
|
||||
Map<String, String> userNameMap = enterpriseUserDAO.getUserNameMap(developmentManagers);
|
||||
@@ -726,16 +727,32 @@ public class PointServiceImpl implements PointService {
|
||||
|
||||
@Override
|
||||
public PageInfo<MiniPointPageVO> getLineRecommendPointPage(MiniPointPageRequest request) {
|
||||
Page<MiniPointPageDTO> pointPage = pointRecommendDAO.getLineRecommendPointPage(request);
|
||||
List<MiniPointPageVO> resultList = new ArrayList<>();
|
||||
if(Objects.nonNull(pointPage) && CollectionUtils.isNotEmpty(pointPage.getResult())){
|
||||
List<Long> regionIds = pointPage.getResult().stream().map(MiniPointPageDTO::getRegionId).distinct().collect(Collectors.toList());
|
||||
Map<Long, String> regionNameMap = regionService.getBelongWarRegionNameMap(regionIds);
|
||||
resultList = MiniPointPageVO.convertVO(pointPage, regionNameMap);
|
||||
if (Objects.equals(request.getType(), PointListType.POINT_LIST_TYPE_1.getCode())) {
|
||||
Page<MiniPointPageDTO> pointPage = pointRecommendDAO.getLineRecommendPointPage(request);
|
||||
List<MiniPointPageVO> resultList = new ArrayList<>();
|
||||
if (Objects.nonNull(pointPage) && CollectionUtils.isNotEmpty(pointPage.getResult())) {
|
||||
List<Long> regionIds = pointPage.getResult().stream().map(MiniPointPageDTO::getRegionId).distinct().collect(Collectors.toList());
|
||||
Map<Long, String> regionNameMap = regionService.getBelongWarRegionNameMap(regionIds);
|
||||
resultList = MiniPointPageVO.convertVO(pointPage, regionNameMap);
|
||||
List<Long> pointList = pointPage.getResult().stream().map(MiniPointPageDTO::getPointId).distinct().collect(Collectors.toList());
|
||||
List<PointDetailInfoDO> pointDetailList = pointDetailInfoDAO.getByPointIdList(pointList);
|
||||
Map<Long, PointDetailInfoDO> map = pointDetailList.stream().collect(Collectors.toMap(PointDetailInfoDO::getPointId, Function.identity()));
|
||||
resultList.forEach(x -> {
|
||||
PointDetailInfoDO pointDetailInfoDO = map.getOrDefault(x.getPointId(),new PointDetailInfoDO());
|
||||
x.setMonthRent(pointDetailInfoDO.getMonthRent());
|
||||
x.setLandlordMobile(pointDetailInfoDO.getLandlordMobile());
|
||||
});
|
||||
}
|
||||
PageInfo resultPage = new PageInfo(pointPage);
|
||||
resultPage.setList(resultList);
|
||||
return resultPage;
|
||||
}
|
||||
PageInfo resultPage = new PageInfo(pointPage);
|
||||
resultPage.setList(resultList);
|
||||
return resultPage;
|
||||
if (request.getType().equals(PointListType.POINT_LIST_TYPE_2.getCode())){
|
||||
PageHelper.startPage(request.getPageNum(), request.getPageSize());
|
||||
List<MiniPointPageVO> miniPointPage = pointInfoDAO.getMiniPointPage(request.getLineId());
|
||||
return new PageInfo<>(miniPointPage);
|
||||
}
|
||||
return new PageInfo<>();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -743,27 +760,27 @@ public class PointServiceImpl implements PointService {
|
||||
public Integer lineSelectPoint(SelectPointRequest request) {
|
||||
Long pointId = request.getPointId(), shopId = request.getShopId(), lineId = request.getLineId();
|
||||
String lockKey = MessageFormat.format(POINT_SELECT_KEY, enterpriseId, pointId);
|
||||
if(!redisUtilPool.setNxExpire(lockKey, JSONObject.toJSONString(request), 30*1000)){
|
||||
if (!redisUtilPool.setNxExpire(lockKey, JSONObject.toJSONString(request), 30 * 1000)) {
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_IS_LOCK);
|
||||
}
|
||||
try {
|
||||
ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(shopId);
|
||||
if(Objects.isNull(shopInfo)){
|
||||
if (Objects.isNull(shopInfo)) {
|
||||
throw new ServiceException(ErrorCodeEnum.SHOP_NOT_EXIST);
|
||||
}
|
||||
if(!ShopStageEnum.SHOP_STAGE_1.getShopStage().equals(shopInfo.getShopStage())){
|
||||
if (!ShopStageEnum.SHOP_STAGE_1.getShopStage().equals(shopInfo.getShopStage())) {
|
||||
throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE);
|
||||
}
|
||||
if(Objects.nonNull(shopInfo.getPointId())){
|
||||
if (Objects.nonNull(shopInfo.getPointId())) {
|
||||
throw new ServiceException(ErrorCodeEnum.SHOP_IS_SELECTED);
|
||||
}
|
||||
PointInfoDO pointInfo = pointInfoDAO.getPointInfoById(pointId);
|
||||
if(Objects.isNull(pointInfo)){
|
||||
if (Objects.isNull(pointInfo)) {
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
|
||||
}
|
||||
if(SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())){
|
||||
if(lineId.equals(pointInfo.getLineId())){
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_ALREADY_SELECT);
|
||||
if (SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())) {
|
||||
if (lineId.equals(pointInfo.getLineId())) {
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_ALREADY_SELECT);
|
||||
}
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_IS_SELECTED);
|
||||
}
|
||||
@@ -787,7 +804,7 @@ public class PointServiceImpl implements PointService {
|
||||
pointDetailInfoDAO.updatePointDetailInfo(updateDetail);
|
||||
List<ShopSubStageStatusEnum> updateStatusList = new ArrayList<>();
|
||||
//如果铺位是已审核 则进入上传租赁合同状态
|
||||
if(PointStatusEnum.POINT_STATUS_5.getCode().equals(pointInfo.getPointStatus())){
|
||||
if (PointStatusEnum.POINT_STATUS_5.getCode().equals(pointInfo.getPointStatus())) {
|
||||
selectStatus = ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_12;
|
||||
updateStatusList.add(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_20);
|
||||
Map<String, String> templateParam = new HashMap<>();
|
||||
@@ -795,11 +812,11 @@ public class PointServiceImpl implements PointService {
|
||||
}
|
||||
updateStatusList.add(selectStatus);
|
||||
shopStageInfoDAO.batchUpdateShopStageStatus(shopId, updateStatusList);
|
||||
if (selectStatus.equals( ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_11)){
|
||||
if (selectStatus.equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_11)) {
|
||||
LineInfoDO lineInfo = lineInfoDAO.getLineInfo(lineId);
|
||||
HashMap<String, String> map = new HashMap<>();
|
||||
map.put("pointName",pointInfo.getPointName()) ;
|
||||
map.put("pointAddress",pointInfo.getAddress());
|
||||
map.put("pointName", pointInfo.getPointName());
|
||||
map.put("pointAddress", pointInfo.getAddress());
|
||||
commonService.sendQWMessage(Collections.singletonList(shopInfo.getInvestmentManager()),
|
||||
MessageEnum.MESSAGE_13,
|
||||
map);
|
||||
@@ -811,9 +828,10 @@ public class PointServiceImpl implements PointService {
|
||||
redisUtilPool.delKey(lockKey);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Integer lineRejectPoint(RejectPointRequest request){
|
||||
public Integer lineRejectPoint(RejectPointRequest request) {
|
||||
return pointRecommendDAO.rejectPoint(request.getShopId(), request.getPointId(), request.getReason());
|
||||
}
|
||||
|
||||
@@ -823,14 +841,14 @@ public class PointServiceImpl implements PointService {
|
||||
public Long miniAddPointDetailInfo(MiniAddPointRequest request) {
|
||||
Long lineId = request.getCurLineId();
|
||||
LineInfoDO lineInfo = lineInfoDAO.getLineInfo(lineId);
|
||||
if(Objects.isNull(lineInfo)){
|
||||
if (Objects.isNull(lineInfo)) {
|
||||
throw new ServiceException(ErrorCodeEnum.LINE_ID_IS_NOT_EXIST);
|
||||
}
|
||||
ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(request.getShopId());
|
||||
if(Objects.isNull(shopInfo)){
|
||||
if (Objects.isNull(shopInfo)) {
|
||||
throw new ServiceException(ErrorCodeEnum.SHOP_NOT_EXIST);
|
||||
}
|
||||
if(Objects.nonNull(shopInfo.getPointId())){
|
||||
if (Objects.nonNull(shopInfo.getPointId())) {
|
||||
throw new ServiceException(ErrorCodeEnum.SHOP_IS_SELECTED);
|
||||
}
|
||||
PointDetailInfoDO pointDetailInfo = MiniAddPointRequest.convertDO(request);
|
||||
@@ -843,6 +861,8 @@ public class PointServiceImpl implements PointService {
|
||||
pointInfo.setDevelopmentTime(new Date());
|
||||
pointInfo.setPointSource(PointSourceEnum.POINT_SOURCE_2.getCode());
|
||||
pointInfo.setPointCode(generateCode());
|
||||
pointInfo.setOpportunityPointName(request.getOpportunityPointName());
|
||||
pointInfo.setOpportunityPointCode(request.getOpportunityPointCode());
|
||||
Long pointId = pointInfoDAO.addPointInfo(pointInfo);
|
||||
pointDetailInfo.setPointId(pointId);
|
||||
pointDetailInfoDAO.addPointDetailInfo(pointDetailInfo);
|
||||
@@ -864,9 +884,9 @@ public class PointServiceImpl implements PointService {
|
||||
updatePoint.setShopId(shopInfo.getId());
|
||||
pointInfoDAO.updatePointInfo(updatePoint);
|
||||
HashMap<String, String> map = new HashMap<>();
|
||||
map.put("partnerUsername",lineInfo.getUsername());
|
||||
map.put("partnerMobile",lineInfo.getMobile());
|
||||
map.put("pointName",pointInfo.getPointName()) ;
|
||||
map.put("partnerUsername", lineInfo.getUsername());
|
||||
map.put("partnerMobile", lineInfo.getMobile());
|
||||
map.put("pointName", pointInfo.getPointName());
|
||||
commonService.sendQWMessage(Collections.singletonList(shopInfo.getInvestmentManager()),
|
||||
MessageEnum.MESSAGE_51,
|
||||
map);
|
||||
@@ -874,25 +894,25 @@ public class PointServiceImpl implements PointService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer uploadRentContract(AddRentContractRequest request){
|
||||
if(!request.check()){
|
||||
public Integer uploadRentContract(AddRentContractRequest request) {
|
||||
if (!request.check()) {
|
||||
throw new ServiceException(ErrorCodeEnum.PARAMS_VALIDATE_ERROR);
|
||||
}
|
||||
Long pointId = request.getPointId(), shopId = request.getShopId();
|
||||
if(Objects.isNull(pointId) && Objects.nonNull(shopId)){
|
||||
if (Objects.isNull(pointId) && Objects.nonNull(shopId)) {
|
||||
ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(shopId);
|
||||
pointId = shopInfo.getPointId();
|
||||
}
|
||||
if(Objects.nonNull(pointId) && Objects.isNull(shopId)){
|
||||
if (Objects.nonNull(pointId) && Objects.isNull(shopId)) {
|
||||
PointInfoDO pointInfo = pointInfoDAO.getPointInfoById(pointId);
|
||||
shopId = pointInfo.getShopId();
|
||||
}
|
||||
ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopId, ShopSubStageEnum.SHOP_STAGE_2);
|
||||
if(Objects.isNull(shopSubStageInfo)){
|
||||
if (Objects.isNull(shopSubStageInfo)) {
|
||||
throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_ERROR);
|
||||
}
|
||||
List<Integer> operateStatusList = Lists.newArrayList(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_20.getShopSubStageStatus(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_22.getShopSubStageStatus());
|
||||
if(!operateStatusList.contains(shopSubStageInfo.getShopSubStageStatus())){
|
||||
if (!operateStatusList.contains(shopSubStageInfo.getShopSubStageStatus())) {
|
||||
throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE);
|
||||
}
|
||||
//是否存在租赁合同
|
||||
@@ -900,16 +920,16 @@ public class PointServiceImpl implements PointService {
|
||||
ShopRentInfoDO shopRentInfo = AddRentContractRequest.convertDO(request);
|
||||
shopRentInfo.setShopId(shopId);
|
||||
shopRentInfo.setPointId(pointId);
|
||||
if(Objects.isNull(rentContract)){
|
||||
if (Objects.isNull(rentContract)) {
|
||||
shopRentInfoDAO.addShopRentInfo(shopRentInfo);
|
||||
}else{
|
||||
} else {
|
||||
shopRentInfo.setId(rentContract.getId());
|
||||
shopRentInfoDAO.updateRentContract(shopRentInfo);
|
||||
}
|
||||
LineInfoDO lineInfo = lineInfoDAO.getLineInfo(shopSubStageInfo.getLineId());
|
||||
HashMap<String, String> map = new HashMap<>();
|
||||
map.put("partnerUsername",lineInfo.getUsername());
|
||||
map.put("partnerMobile",lineInfo.getMobile());
|
||||
map.put("partnerUsername", lineInfo.getUsername());
|
||||
map.put("partnerMobile", lineInfo.getMobile());
|
||||
commonService.sendQWMessage(Collections.singletonList(lineInfo.getInvestmentManager()),
|
||||
MessageEnum.MESSAGE_15,
|
||||
map);
|
||||
@@ -919,7 +939,7 @@ public class PointServiceImpl implements PointService {
|
||||
@Override
|
||||
public ShopRentInfoVO getRentContractDetail(Long shopId) {
|
||||
ShopRentInfoDO rentContract = shopRentInfoDAO.getRentContractByShopId(shopId);
|
||||
if(Objects.isNull(rentContract)){
|
||||
if (Objects.isNull(rentContract)) {
|
||||
return null;
|
||||
}
|
||||
ShopRentInfoVO result = ShopRentInfoVO.build(rentContract);
|
||||
@@ -927,7 +947,7 @@ public class PointServiceImpl implements PointService {
|
||||
result.setStatus(shopSubStageInfo.getShopSubStageStatus());
|
||||
boolean isAudit = ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_22.getShopSubStageStatus().equals(shopSubStageInfo.getShopSubStageStatus()) ||
|
||||
ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_23.getShopSubStageStatus().equals(shopSubStageInfo.getShopSubStageStatus());
|
||||
if(Objects.nonNull(shopSubStageInfo.getAuditId()) && isAudit){
|
||||
if (Objects.nonNull(shopSubStageInfo.getAuditId()) && isAudit) {
|
||||
//当前是审核过的状态才获取原因
|
||||
ShopAuditInfoDO auditInfo = shopAuditInfoDAO.getAuditInfo(shopSubStageInfo.getAuditId());
|
||||
result.setAuditInfo(AuditInfoVO.convertVO(auditInfo));
|
||||
@@ -944,14 +964,14 @@ public class PointServiceImpl implements PointService {
|
||||
public Integer auditRentContract(AuditRentContractRequest request) {
|
||||
Long shopId = request.getShopId();
|
||||
ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(request.getShopId());
|
||||
if(Objects.isNull(shopInfo)){
|
||||
if (Objects.isNull(shopInfo)) {
|
||||
throw new ServiceException(ErrorCodeEnum.SHOP_NOT_EXIST);
|
||||
}
|
||||
if(!ShopStageEnum.SHOP_STAGE_1.getShopStage().equals(shopInfo.getShopStage())){
|
||||
if (!ShopStageEnum.SHOP_STAGE_1.getShopStage().equals(shopInfo.getShopStage())) {
|
||||
throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE);
|
||||
}
|
||||
ShopStageInfoDO shopStageInfo = shopStageInfoDAO.getShopSubStageInfo(request.getShopId(), ShopSubStageEnum.SHOP_STAGE_2);
|
||||
if (!shopStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_21.getShopSubStageStatus())){
|
||||
if (!shopStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_21.getShopSubStageStatus())) {
|
||||
throw new ServiceException(ErrorCodeEnum.NOT_ALLOW_OPERATE);
|
||||
}
|
||||
LineInfoDO lineInfo = lineInfoDAO.getLineInfo(shopInfo.getLineId());
|
||||
@@ -962,10 +982,10 @@ public class PointServiceImpl implements PointService {
|
||||
Long auditId = shopAuditInfoDAO.addAuditInfo(AuditRentContractRequest.convert(request, AuditTypeEnum.UPLOAD_RENT_CONTRACT));
|
||||
|
||||
ShopSubStageStatusEnum subStageStatus = AuditResultTypeEnum.PASS.getCode().equals(request.getResultType()) ? ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_23 : ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_22;
|
||||
if(AuditResultTypeEnum.REJECT.getCode().equals(request.getResultType())){
|
||||
if (AuditResultTypeEnum.REJECT.getCode().equals(request.getResultType())) {
|
||||
//commonService.sendSms(lineInfo.getMobile(), SMSMsgEnum.RENT_CONTRACT_AUDIT_FAIL, null);
|
||||
}
|
||||
if(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_23.equals(subStageStatus)){
|
||||
if (ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_23.equals(subStageStatus)) {
|
||||
//审核通过铺位变为已签约
|
||||
PointInfoDO updatePoint = new PointInfoDO();
|
||||
updatePoint.setId(shopInfo.getPointId());
|
||||
@@ -976,17 +996,17 @@ public class PointServiceImpl implements PointService {
|
||||
updateShop.setShopStage(ShopStageEnum.SHOP_STAGE_2.getShopStage());
|
||||
List<UserRoleEnum> roleList = Arrays.asList(UserRoleEnum.THEATER_MANAGER, UserRoleEnum.OPERATIONS_MANAGER, UserRoleEnum.REGION_MANAGER);
|
||||
String shopManagerUserId = sysRoleService.getUserIdByRegionIdWithRolePriority(shopInfo.getRegionId(), roleList);
|
||||
if(StringUtils.isBlank(shopManagerUserId)){
|
||||
if (StringUtils.isBlank(shopManagerUserId)) {
|
||||
shopManagerUserId = userAuthMappingService.getShopManagerUserId();
|
||||
}
|
||||
updateShop.setShopManagerUserId(shopManagerUserId);
|
||||
shopInfoDAO.updateShopInfo(updateShop);
|
||||
//发送工作通知
|
||||
Map<String, String> requestMap = new HashMap<>();
|
||||
requestMap.put("partnerName",lineInfo.getUsername());
|
||||
requestMap.put("partnerMobile",lineInfo.getMobile());
|
||||
requestMap.put("lineId",String.valueOf(lineInfo.getId()));
|
||||
requestMap.put("shopId",String.valueOf(shopId));
|
||||
requestMap.put("partnerName", lineInfo.getUsername());
|
||||
requestMap.put("partnerMobile", lineInfo.getMobile());
|
||||
requestMap.put("lineId", String.valueOf(lineInfo.getId()));
|
||||
requestMap.put("shopId", String.valueOf(shopId));
|
||||
// if (Objects.nonNull(shopInfo.getShopName())) {
|
||||
// requestMap.put("storeName",shopInfo.getShopName());
|
||||
// commonService.sendMessage(Arrays.asList(lineInfo.getInvestmentManager()),MessageEnum.MESSAGE_16,requestMap);
|
||||
@@ -1000,18 +1020,18 @@ public class PointServiceImpl implements PointService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer updateRentContract(UpdateRentContractRequest request){
|
||||
if(!request.check()){
|
||||
public Integer updateRentContract(UpdateRentContractRequest request) {
|
||||
if (!request.check()) {
|
||||
throw new ServiceException(ErrorCodeEnum.PARAMS_VALIDATE_ERROR);
|
||||
}
|
||||
ShopRentInfoDO shopRentInfo = UpdateRentContractRequest.convertDO(request);
|
||||
ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(request.getShopId(), ShopSubStageEnum.SHOP_STAGE_2);
|
||||
if(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_22.getShopSubStageStatus().equals(shopSubStageInfo.getShopSubStageStatus())){
|
||||
if (ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_22.getShopSubStageStatus().equals(shopSubStageInfo.getShopSubStageStatus())) {
|
||||
shopStageInfoDAO.updateShopStageAndAuditInfo(shopRentInfo.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_21, null);
|
||||
LineInfoDO lineInfo = lineInfoDAO.getLineInfo(shopSubStageInfo.getLineId());
|
||||
HashMap<String, String> map = new HashMap<>();
|
||||
map.put("partnerUsername",lineInfo.getUsername());
|
||||
map.put("partnerMobile",lineInfo.getMobile());
|
||||
map.put("partnerUsername", lineInfo.getUsername());
|
||||
map.put("partnerMobile", lineInfo.getMobile());
|
||||
commonService.sendQWMessage(Collections.singletonList(lineInfo.getInvestmentManager()),
|
||||
MessageEnum.MESSAGE_15,
|
||||
map);
|
||||
@@ -1027,7 +1047,7 @@ public class PointServiceImpl implements PointService {
|
||||
request.setPageSize(pageSize);
|
||||
Page<PointInfoDO> pointPage = pointTodoInfoDAO.getUserTodoList(request);
|
||||
List<PointToDoVO> resultList = new ArrayList<>();
|
||||
if(Objects.nonNull(pointPage) && CollectionUtils.isNotEmpty(pointPage.getResult())){
|
||||
if (Objects.nonNull(pointPage) && CollectionUtils.isNotEmpty(pointPage.getResult())) {
|
||||
List<Long> regionIds = pointPage.stream().map(PointInfoDO::getRegionId).distinct().collect(Collectors.toList());
|
||||
List<Long> pointIds = pointPage.stream().map(PointInfoDO::getId).collect(Collectors.toList());
|
||||
//获取提交时间
|
||||
@@ -1044,17 +1064,17 @@ public class PointServiceImpl implements PointService {
|
||||
public PageInfo<RentInfoToDoVO> getRentContractToDoPage(String userId, Integer pageNumber, Integer pageSize) {
|
||||
Page<RentInfoToDoVO> todoPage = shopStageInfoDAO.getRentContractToDoPage(userId, pageNumber, pageSize);
|
||||
List<RentInfoToDoVO> resultList = null;
|
||||
if(Objects.nonNull(todoPage) && CollectionUtils.isNotEmpty(todoPage.getResult())){
|
||||
if (Objects.nonNull(todoPage) && CollectionUtils.isNotEmpty(todoPage.getResult())) {
|
||||
List<Long> shopIds = todoPage.getResult().stream().map(RentInfoToDoVO::getShopId).collect(Collectors.toList());
|
||||
List<ShopInfoDO> shopList = shopInfoDAO.getShopListByIds(shopIds);
|
||||
Map<Long, ShopInfoDO> shopPointMap = shopList.stream().collect(Collectors.toMap(k->k.getId(), Function.identity()));
|
||||
Map<Long, ShopInfoDO> shopPointMap = shopList.stream().collect(Collectors.toMap(k -> k.getId(), Function.identity()));
|
||||
List<Long> regionIds = shopList.stream().map(ShopInfoDO::getRegionId).distinct().collect(Collectors.toList());
|
||||
List<Long> pointIds = shopList.stream().map(ShopInfoDO::getPointId).collect(Collectors.toList());
|
||||
List<PointInfoDO> pointList = pointInfoDAO.getPointListByIds(pointIds);
|
||||
Map<Long, PointInfoDO> pointMap = ListUtils.emptyIfNull(pointList).stream().collect(Collectors.toMap(k->k.getId(), Function.identity()));
|
||||
Map<Long, PointInfoDO> pointMap = ListUtils.emptyIfNull(pointList).stream().collect(Collectors.toMap(k -> k.getId(), Function.identity()));
|
||||
Map<Long, String> regionNameMap = regionService.getBelongWarRegionNameMap(regionIds);
|
||||
List<ShopRentInfoDO> rentContractList = shopRentInfoDAO.getRentContractByShopIds(shopIds);
|
||||
Map<Long, Date> rentContractSubmitTimeMap = ListUtils.emptyIfNull(rentContractList).stream().collect(Collectors.toMap(k->k.getShopId(), v->v.getCreateTime()));
|
||||
Map<Long, Date> rentContractSubmitTimeMap = ListUtils.emptyIfNull(rentContractList).stream().collect(Collectors.toMap(k -> k.getShopId(), v -> v.getCreateTime()));
|
||||
resultList = RentInfoToDoVO.convert(todoPage, shopPointMap, pointMap, regionNameMap, rentContractSubmitTimeMap);
|
||||
}
|
||||
PageInfo resultPage = new PageInfo(todoPage);
|
||||
@@ -1067,55 +1087,55 @@ public class PointServiceImpl implements PointService {
|
||||
public Boolean linePointToShopPoint(Long lineId) {
|
||||
//查询所有的推荐 如果传入的lineId 则查询该线索的所有推荐
|
||||
List<PointRecommendDO> allRecommendPointList = pointRecommendDAO.getAllRecommendPointList(lineId);
|
||||
if (CollectionUtils.isEmpty(allRecommendPointList)){
|
||||
if (CollectionUtils.isEmpty(allRecommendPointList)) {
|
||||
return Boolean.TRUE;
|
||||
}
|
||||
List<PointRecommendDO> recommendList = new ArrayList<>();
|
||||
List<PointRecommendDO> updateList = new ArrayList<>();
|
||||
allRecommendPointList.forEach(recommend -> {
|
||||
//如果是待选择
|
||||
if(PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_1.getCode().equals(recommend.getStatus())||
|
||||
PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_5.getCode().equals(recommend.getStatus())||
|
||||
PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_6.getCode().equals(recommend.getStatus())){
|
||||
if (PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_1.getCode().equals(recommend.getStatus()) ||
|
||||
PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_5.getCode().equals(recommend.getStatus()) ||
|
||||
PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_6.getCode().equals(recommend.getStatus())) {
|
||||
//将单条加盟商数据 分配到各个门店商
|
||||
Long tempLineId = recommend.getLineId();
|
||||
List<ShopInfoDO> shopList = shopInfoDAO.getShopList(tempLineId);
|
||||
for (ShopInfoDO shopInfoDO : shopList) {
|
||||
PointRecommendDO tempPointRecommendDO = new PointRecommendDO();
|
||||
BeanUtil.copyProperties(recommend,tempPointRecommendDO);
|
||||
BeanUtil.copyProperties(recommend, tempPointRecommendDO);
|
||||
tempPointRecommendDO.setShopId(shopInfoDO.getId());
|
||||
recommendList.add(tempPointRecommendDO);
|
||||
}
|
||||
}
|
||||
|
||||
//已选 已被他人选择
|
||||
if(PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_2.getCode().equals(recommend.getStatus())){
|
||||
if (PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_2.getCode().equals(recommend.getStatus())) {
|
||||
//查询该加盟商选择的这个店
|
||||
ShopInfoDO shopInfoByPointId = shopInfoDAO.getShopInfoByPointId(recommend.getLineId(), recommend.getPointId());
|
||||
recommend.setShopId(shopInfoByPointId.getId());
|
||||
updateList.add(recommend);
|
||||
}
|
||||
if(PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_3.getCode().equals(recommend.getStatus())){
|
||||
if (PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_3.getCode().equals(recommend.getStatus())) {
|
||||
List<PointRecommendDO> recommendPointListByPointId = pointRecommendDAO.getRecommendPointListByPointId(recommend.getPointId());
|
||||
for (PointRecommendDO pointRecommendDO: recommendPointListByPointId) {
|
||||
for (PointRecommendDO pointRecommendDO : recommendPointListByPointId) {
|
||||
//表示当前门店已选址
|
||||
if (pointRecommendDO.getLineId().equals(recommend.getLineId())){
|
||||
if (pointRecommendDO.getLineId().equals(recommend.getLineId())) {
|
||||
continue;
|
||||
}
|
||||
List<ShopInfoDO> shopList = shopInfoDAO.getShopList(pointRecommendDO.getLineId());
|
||||
for (ShopInfoDO shopInfoDO : shopList) {
|
||||
PointRecommendDO tempPointRecommendDO = new PointRecommendDO();
|
||||
BeanUtil.copyProperties(recommend,tempPointRecommendDO);
|
||||
BeanUtil.copyProperties(recommend, tempPointRecommendDO);
|
||||
tempPointRecommendDO.setShopId(shopInfoDO.getId());
|
||||
recommendList.add(tempPointRecommendDO);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
if (CollectionUtils.isNotEmpty(updateList)){
|
||||
if (CollectionUtils.isNotEmpty(updateList)) {
|
||||
pointRecommendDAO.batchUpdateShopId(updateList);
|
||||
}
|
||||
if (CollectionUtils.isNotEmpty(recommendList)){
|
||||
if (CollectionUtils.isNotEmpty(recommendList)) {
|
||||
log.info("linePointToShopPoint recommendList:{}", JSONObject.toJSONString(recommendList));
|
||||
pointRecommendDAO.addRecommendPoint(recommendList);
|
||||
}
|
||||
@@ -1127,7 +1147,7 @@ public class PointServiceImpl implements PointService {
|
||||
List<String> roleIds = new ArrayList<>();
|
||||
//审核人
|
||||
Pair<List<String>, List<String>> firstApproval = getUserIdsAndPositionIds(auditSetting.getFirstApproval());
|
||||
if(CollectionUtils.isNotEmpty(firstApproval.getValue())){
|
||||
if (CollectionUtils.isNotEmpty(firstApproval.getValue())) {
|
||||
roleIds.addAll(firstApproval.getValue());
|
||||
}
|
||||
List<AuditNodeDTO> resultList = new ArrayList<>();
|
||||
@@ -1135,7 +1155,7 @@ public class PointServiceImpl implements PointService {
|
||||
List<String> firstApprovalUserIds = getUserIdsByPositionIds(firstApproval, userIdsMap);
|
||||
resultList.add(new AuditNodeDTO(NodeNoEnum.NODE_NO_0.getCode(), PointAuditRecordDO.SUBMIT_TASK, Boolean.FALSE, Arrays.asList(developmentManager)));
|
||||
//todo 缺少兜底人
|
||||
if(CollectionUtils.isNotEmpty(firstApprovalUserIds)){
|
||||
if (CollectionUtils.isNotEmpty(firstApprovalUserIds)) {
|
||||
resultList.add(new AuditNodeDTO(NodeNoEnum.NODE_NO_1.getCode(), PointAuditRecordDO.RECEIVE_TASK, Boolean.TRUE, firstApprovalUserIds));
|
||||
}
|
||||
return resultList;
|
||||
@@ -1146,7 +1166,7 @@ public class PointServiceImpl implements PointService {
|
||||
* @param requests
|
||||
* @return
|
||||
*/
|
||||
private Pair<List<String>, List<String>> getUserIdsAndPositionIds(List<UserAndPositionRequest> requests){
|
||||
private Pair<List<String>, List<String>> getUserIdsAndPositionIds(List<UserAndPositionRequest> requests) {
|
||||
List<String> positionIds = ListUtils.emptyIfNull(requests).stream().filter(o -> "position".equals(o.getType())).map(UserAndPositionRequest::getValue).collect(Collectors.toList());
|
||||
List<String> userIds = ListUtils.emptyIfNull(requests).stream().filter(o -> "person".equals(o.getType())).map(UserAndPositionRequest::getValue).collect(Collectors.toList());
|
||||
return Pair.of(userIds, positionIds);
|
||||
@@ -1160,13 +1180,13 @@ public class PointServiceImpl implements PointService {
|
||||
*/
|
||||
private List<String> getUserIdsByPositionIds(Pair<List<String>, List<String>> userIdsAndPositionIds, Map<String, List<String>> userIdsMap) {
|
||||
Set<String> userIds = new HashSet<>();
|
||||
if(CollectionUtils.isNotEmpty(userIdsAndPositionIds.getKey())){
|
||||
if (CollectionUtils.isNotEmpty(userIdsAndPositionIds.getKey())) {
|
||||
userIds.addAll(userIdsAndPositionIds.getKey());
|
||||
}
|
||||
if(CollectionUtils.isNotEmpty(userIdsAndPositionIds.getValue())){
|
||||
if (CollectionUtils.isNotEmpty(userIdsAndPositionIds.getValue())) {
|
||||
userIdsAndPositionIds.getValue().forEach(positionId -> {
|
||||
List<String> userIdList = userIdsMap.get(positionId);
|
||||
if(CollectionUtils.isNotEmpty(userIdList)){
|
||||
if (CollectionUtils.isNotEmpty(userIdList)) {
|
||||
userIds.addAll(userIdList);
|
||||
}
|
||||
});
|
||||
@@ -1174,14 +1194,14 @@ public class PointServiceImpl implements PointService {
|
||||
return new ArrayList<>(userIds);
|
||||
}
|
||||
|
||||
private PointAuditRecordDO getNextAuditRecord(Integer currentNodeNo, Map<Integer, PointAuditRecordDO> auditRecordMap){
|
||||
private PointAuditRecordDO getNextAuditRecord(Integer currentNodeNo, Map<Integer, PointAuditRecordDO> auditRecordMap) {
|
||||
List<NodeNoEnum> nextNodeNoList = NodeNoEnum.getNextNodeNoList(currentNodeNo);
|
||||
if(CollectionUtils.isEmpty(nextNodeNoList)){
|
||||
if (CollectionUtils.isEmpty(nextNodeNoList)) {
|
||||
return null;
|
||||
}
|
||||
for (NodeNoEnum nodeNoEnum : nextNodeNoList) {
|
||||
PointAuditRecordDO pointAuditRecord = auditRecordMap.get(nodeNoEnum.getCode());
|
||||
if(Objects.nonNull(pointAuditRecord)){
|
||||
if (Objects.nonNull(pointAuditRecord)) {
|
||||
return pointAuditRecord;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,10 +33,10 @@ public class TallyBookServiceImpl implements TallyBookService {
|
||||
@Override
|
||||
public Long insertOrUpdateSelective(TallyBookRequest request, String partnerId) {
|
||||
TallyBookDO tallyBookDO = request.toTallyBookDO();
|
||||
tallyBookDO.setStatus(TallyBookStatusEnum.IS_SUBMIT.getCode());
|
||||
if (request.getId()==null){
|
||||
tallyBookDO.setCreateUser(partnerId);
|
||||
tallyBookDO.setPartnerId(partnerId);
|
||||
tallyBookDO.setStatus(TallyBookStatusEnum.IS_SUBMIT.getCode());
|
||||
return tallyBookDAO.insertSelective(tallyBookDO);
|
||||
}else{
|
||||
tallyBookDO.setUpdateUser(partnerId);
|
||||
@@ -59,34 +59,27 @@ public class TallyBookServiceImpl implements TallyBookService {
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
public TallyBookDO initData(Date date,Long shopId, String partnerId){
|
||||
@Override
|
||||
public Long initData(Date date,Long shopId, String partnerId){
|
||||
LocalDate localDate = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
// 获取年份
|
||||
int year = localDate.getYear();
|
||||
// 获取月份
|
||||
int month = localDate.getMonthValue();
|
||||
List<TallyBookDO> list = tallyBookDAO.getTallyBookListByShopIdAndYear(shopId,year);
|
||||
TallyBookDO tallyBookDO = new TallyBookDO();
|
||||
tallyBookDO.setShopId(shopId);
|
||||
tallyBookDO.setPartnerId(partnerId);
|
||||
tallyBookDO.setYear(year);
|
||||
tallyBookDO.setMonth(month);
|
||||
tallyBookDO.setCreateTime(new Date());
|
||||
tallyBookDO.setStatus(TallyBookStatusEnum.NOT_SUBMIT.getCode());
|
||||
if(CollectionUtils.isEmpty(list)){
|
||||
TallyBookDO tallyBookDO = new TallyBookDO();
|
||||
tallyBookDO.setShopId(shopId);
|
||||
tallyBookDO.setPartnerId(partnerId);
|
||||
tallyBookDO.setYear(year);
|
||||
tallyBookDO.setMonth(month);
|
||||
tallyBookDO.setCreateTime(new Date());
|
||||
tallyBookDO.setStatus(TallyBookStatusEnum.NOT_SUBMIT.getCode());
|
||||
return tallyBookDO;
|
||||
return tallyBookDAO.insertSelective(tallyBookDO);
|
||||
}
|
||||
List<Integer> monthList = list.stream().map(TallyBookDO::getMonth).collect(Collectors.toList());
|
||||
if (!monthList.contains(month)){
|
||||
TallyBookDO tallyBookDO = new TallyBookDO();
|
||||
tallyBookDO.setShopId(shopId);
|
||||
tallyBookDO.setPartnerId(partnerId);
|
||||
tallyBookDO.setYear(year);
|
||||
tallyBookDO.setMonth(month);
|
||||
tallyBookDO.setCreateTime(new Date());
|
||||
tallyBookDO.setStatus(TallyBookStatusEnum.NOT_SUBMIT.getCode());
|
||||
return tallyBookDO;
|
||||
return tallyBookDAO.insertSelective(tallyBookDO);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.cool.store.request.*;
|
||||
import com.cool.store.response.ResponseResult;
|
||||
import com.cool.store.service.PointService;
|
||||
import com.cool.store.service.ShopService;
|
||||
import com.cool.store.vo.PartnerUserInfoVO;
|
||||
import com.cool.store.vo.point.MiniPointPageVO;
|
||||
import com.cool.store.vo.point.PointDetailVO;
|
||||
import com.cool.store.vo.point.ShopRentInfoVO;
|
||||
@@ -59,6 +60,9 @@ public class MiniShopController {
|
||||
@ApiOperation("获取推荐给我的铺位")
|
||||
@PostMapping("/getLineRecommendPointPage")
|
||||
public ResponseResult<PageInfo<MiniPointPageVO>> getLineRecommendPointPage(@RequestBody MiniPointPageRequest request) {
|
||||
PartnerUserInfoVO user = PartnerUserHolder.getUser();
|
||||
request.setPartnerId(user.getPartnerId());
|
||||
request.setLineId(user.getLineId());
|
||||
return ResponseResult.success(pointService.getLineRecommendPointPage(request));
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
package com.cool.store.controller.webc;
|
||||
|
||||
import com.cool.store.context.PartnerUserHolder;
|
||||
import com.cool.store.dto.TallyBookDTO;
|
||||
import com.cool.store.request.TallyBookRequest;
|
||||
import com.cool.store.response.ResponseResult;
|
||||
import com.cool.store.service.TallyBookService;
|
||||
import com.cool.store.vo.PartnerUserInfoVO;
|
||||
import io.swagger.annotations.Api;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Author: WangShuo
|
||||
* @Date: 2025/03/31/14:23
|
||||
* @Version 1.0
|
||||
* @注释:
|
||||
*/
|
||||
@RestController
|
||||
@Api("mini记账本")
|
||||
@RequestMapping("/mini/tallyBook")
|
||||
public class TallyBookController {
|
||||
@Resource
|
||||
private TallyBookService tallyBookService;
|
||||
|
||||
@PostMapping("/insertOrUpdate")
|
||||
public ResponseResult insertOrUpdateSelective(@RequestBody @Validated TallyBookRequest request) {
|
||||
PartnerUserInfoVO user = PartnerUserHolder.getUser();
|
||||
return ResponseResult.success(tallyBookService.insertOrUpdateSelective(request, user.getPartnerId()));
|
||||
}
|
||||
|
||||
@GetMapping("/getTallyBookListByShopIdAndYear")
|
||||
public ResponseResult<List<TallyBookDTO>> getTallyBookListByShopIdAndYear(@RequestParam("shopId") Long shopId, @RequestParam("year") Integer year) {
|
||||
PartnerUserInfoVO user = PartnerUserHolder.getUser();
|
||||
return ResponseResult.success(tallyBookService.getTallyBookListByShopIdAndYear(shopId,year));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user