This commit is contained in:
zhangchenbiao
2024-04-29 14:16:42 +08:00
parent 4b00acf753
commit 1928d44fee
13 changed files with 122 additions and 63 deletions

View File

@@ -8,17 +8,21 @@ package com.cool.store.enums;
*/
public enum MessageEnum {
MESSAGE_1("您有一份加盟意向申请,请查收。", "##### 加盟商姓名:{0}\n##### 意向加盟区域:{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_2("一份邀约面谈预约,请查收", "##### 加盟商姓名:{0}\n##### 意向加盟区域:{1}\n##### 预约面谈时间:{2}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_3("您收到一份邀约面谈预约,请查收", "##### 加盟商姓名:{0}\n##### 预约时间:{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_4("收到一份一次面审预约,请查收", "##### 加盟商姓名:{0}\n##### 预约时间:{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_5("您收到一份二次面审预约,请查收", "##### 加盟商姓名:{0}\n##### 预约时间:{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_6("有线索未通过面审,请查收", "##### 加盟商姓名:{0}\n##### 面审时间{1}\n##### 面审官{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_7("的铺位已审核通过,请查收", "##### 铺位名称{0}\n##### 铺位地址{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_8("您有一个铺位需要审核,请查收", "##### 铺位名称{0}\n##### 铺位地址{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_9("已为您分配一位加盟商,请查收", "##### 加盟商姓名:{0}\n##### 手机号码:{1}\n##### 意向加盟区域:{2}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_1("您有一份加盟意向申请,请查收。", "##### 加盟商姓名:{0}\n##### 手机号码:{1}\n##### 意向加盟区域:{2}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_2("收到一份邀约面谈预约,请查收", "##### 加盟商姓名:{0}\n##### 预约时间:{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_3("您收到一份一次面审预约,请查收", "##### 加盟商姓名:{0}\n##### 预约时间:{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_4("有线索未通过面审,请查收", "##### 加盟商姓名:{0}\n##### 面审时间:{1}\n##### 面审官:{2}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_5("您收到一份缴纳意向金审核,请查收", "##### 加盟商姓名:{0}\n##### 缴费时间:{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_6("收到一份加盟意向协议信息审核,请查收", "##### 加盟商姓名:{0}\n##### 手机号码{1}\n##### 信息提交时间{2}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_7("提交的一份加盟意向协议OA审核通过,请查收", "##### 加盟商姓名{0}\n##### 审批提交时间{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_8("您有一位加盟商待安排体验门店及体验时间,请查收", "##### 加盟商姓名{0}\n##### 手机号码{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_9("您有一位加盟商已放弃门店体验,请查收", "##### 加盟商姓名:{0}\n##### 手机号码:{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_10("您收到一份二次面审预约,请查收", "##### 加盟商姓名:{0}\n##### 预约时间:{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_11("您的一个铺位已审核通过,请查收", "##### 铺位名称:{0}\n##### 铺位地址:{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_12("您的一个铺位审核未通过,请查收", "##### 铺位名称:{0}\n##### 铺位地址:{1}\n##### 未通过原因:{2}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_13("您有一个铺位需要审核,请查收", "##### 铺位名称:{0}\n##### 铺位地址:{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_14("已为您分配一位加盟商,请查收", "##### 加盟商姓名:{0}\n##### 手机号码:{1}\n##### 意向加盟区域:{2}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
MESSAGE_15("您有一份加盟商上传的租赁合同待审核,请查收", "##### 加盟商姓名:{0}\n##### 提交时间:{1}\n", "https://oss.coolcollege.cn/53c11d2f4ec94d4fa7edd7a96e40e2d6.png"),
;
private String title;

View File

@@ -42,6 +42,14 @@ public class PointDetailInfoDAO {
return pointDetailInfoMapper.updateByPrimaryKeySelective(shopPointDetailInfo);
}
public Integer updatePartFieldPointDetail(PointDetailInfoDO shopPointDetailInfo) {
if(Objects.isNull(shopPointDetailInfo.getId()) && Objects.nonNull(shopPointDetailInfo.getPointId())){
Long pointDetailId = getPointDetailIdByPointId(shopPointDetailInfo.getPointId());
shopPointDetailInfo.setId(pointDetailId);
}
return pointDetailInfoMapper.updatePartFieldPointDetail(shopPointDetailInfo);
}
public Long getPointDetailIdByPointId(Long pointId){
return pointDetailInfoMapper.getPointDetailIdByPointId(pointId);
}

View File

@@ -52,6 +52,10 @@ public class PointInfoDAO {
return pointInfoMapper.updateByPrimaryKeySelective(shopPointInfo);
}
public Integer updatePointInfoByPrimaryKey(PointInfoDO shopPointInfo) {
return pointInfoMapper.updateByPrimaryKey(shopPointInfo);
}
public PointHomePageDataVO getMyPointData(String userId) {
return pointInfoMapper.getMyPointData(userId);
}

View File

@@ -19,4 +19,11 @@ public interface PointDetailInfoMapper extends Mapper<PointDetailInfoDO> {
* @return
*/
PointDetailInfoDO getShopPointDetailInfoByPointId(@Param("pointId") Long pointId);
/**
* 更新部分字段
* @param update
* @return
*/
Integer updatePartFieldPointDetail(@Param("update") PointDetailInfoDO update);
}

View File

@@ -39,8 +39,6 @@
<result column="day_trader" jdbcType="VARCHAR" property="dayTrader" />
<result column="profit_rate" jdbcType="VARCHAR" property="profitRate" />
<result column="month_profit_rate" jdbcType="VARCHAR" property="monthProfitRate" />
<result column="delivery_rate" jdbcType="VARCHAR" property="deliveryRate" />
<result column="delivery_fee" jdbcType="VARCHAR" property="deliveryFee" />
<result column="brand_use_rate" jdbcType="VARCHAR" property="brandUseRate" />
<result column="brand_use_fee" jdbcType="VARCHAR" property="brandUseFee" />
<result column="staff_fee" jdbcType="VARCHAR" property="staffFee" />
@@ -77,4 +75,60 @@
<select id="getShopPointDetailInfoByPointId" resultMap="BaseResultMap">
select * from xfsg_point_detail_info where point_id = #{pointId} and deleted = 0
</select>
<update id="updatePartFieldPointDetail">
update xfsg_point_detail_info
set
business_status = #{update.businessStatus},
nine_flow_rate = #{update.nineFlowRate},
ten_flow_rate = #{update.tenFlowRate},
eighteen_flow_rate = #{update.eighteenFlowRate},
nineteen_flow_rate = #{update.nineteenFlowRate},
point_direction = #{update.pointDirection},
site_conditions = #{update.siteConditions},
store_width = #{update.storeWidth},
landlord_username = #{update.landlordUsername},
landlord_mobile = #{update.landlordMobile},
payment_method = #{update.paymentMethod},
property_status = #{update.propertyStatus},
transfer_fee = #{update.transferFee},
cover_community = #{update.coverCommunity},
consumer_ability = #{update.consumerAbility},
flow_rate_calculate = #{update.flowRateCalculate},
gather_guest_farmer_market = #{update.gatherGuestFarmerMarket},
gather_guest_hospital = #{update.gatherGuestHospital},
gather_guest_school = #{update.gatherGuestSchool},
store_flow_trend = #{update.storeFlowTrend},
near_repast = #{update.nearRepast},
near_neighbor = #{update.nearNeighbor},
near_compete = #{update.nearCompete},
near_business_condition = #{update.nearBusinessCondition},
intend_position = #{update.intendPosition},
green_belt = #{update.greenBelt},
store_outlook = #{update.storeOutlook},
guest_convenience = #{update.guestConvenience},
want_shop_size = #{update.wantShopSize},
compete_type = #{update.competeType},
compete_business_capacity = #{update.competeBusinessCapacity},
invest_amount = #{update.investAmount},
day_trader = #{update.dayTrader},
profit_rate = #{update.profitRate},
month_profit_rate = #{update.monthProfitRate},
brand_use_rate = #{update.brandUseRate},
brand_use_fee = #{update.brandUseFee},
staff_fee = #{update.staffFee},
bonus = #{update.bonus},
month_rent = #{update.monthRent},
other_fee = #{update.otherFee},
net_profit = #{update.netProfit},
month_rate_return = #{update.monthRateReturn},
market_size_score = #{update.marketSizeScore},
shop_area_score = #{update.shopAreaScore},
convenient_score = #{update.convenientScore},
environment_score = #{update.environmentScore},
rent_contract = #{update.rentContract},
map_evaluation_report = #{update.mapEvaluationReport}
where id = #{update.id}
</update>
</mapper>

View File

@@ -233,18 +233,6 @@ public class PointDetailInfoDO {
@Column(name = "month_profit_rate")
private String monthProfitRate;
/**
* 配送费率
*/
@Column(name = "delivery_rate")
private String deliveryRate;
/**
* 配送费
*/
@Column(name = "delivery_fee")
private String deliveryFee;
/**
* 品牌使用费率
*/

View File

@@ -193,12 +193,6 @@ public class AddPointDetailRequest {
@ApiModelProperty("门店月毛利率")
private String monthProfitRate;
@ApiModelProperty("配送费率")
private String deliveryRate;
@ApiModelProperty("配送费")
private String deliveryFee;
@ApiModelProperty("品牌使用费率")
private String brandUseRate;
@@ -269,8 +263,6 @@ public class AddPointDetailRequest {
result.setDayTrader(request.getDayTrader());
result.setProfitRate(request.getProfitRate());
result.setMonthProfitRate(request.getMonthProfitRate());
result.setDeliveryRate(request.getDeliveryRate());
result.setDeliveryFee(request.getDeliveryFee());
result.setBrandUseRate(request.getBrandUseRate());
result.setBrandUseFee(request.getBrandUseFee());
result.setStaffFee(request.getStaffFee());

View File

@@ -56,8 +56,6 @@ public class UpdatePointDetailRequest extends AddPointDetailRequest {
result.setDayTrader(request.getDayTrader());
result.setProfitRate(request.getProfitRate());
result.setMonthProfitRate(request.getMonthProfitRate());
result.setDeliveryRate(request.getDeliveryRate());
result.setDeliveryFee(request.getDeliveryFee());
result.setBrandUseRate(request.getBrandUseRate());
result.setBrandUseFee(request.getBrandUseFee());
result.setStaffFee(request.getStaffFee());

View File

@@ -55,23 +55,9 @@ public class MiniPointPageVO {
pointPageVO.setAddress(pointInfo.getAddress());
pointPageVO.setPointScore(pointInfo.getPointScore());
pointPageVO.setPointArea(pointInfo.getPointArea());
pointPageVO.setRecommendStatus(getRecommendStatus(curLineId, pointInfo.getLineId(), pointInfo.getPointStatus(), pointInfo.getSelectStatus(), pointInfo.getRecommendStatus()));
pointPageVO.setRecommendStatus(pointInfo.getRecommendStatus());
resultList.add(pointPageVO);
}
return resultList;
}
public static Integer getRecommendStatus(Long curLineId, Long lineId, Integer pointStatus, Integer selectStatus, Integer recommendStatus) {
if(PointStatusEnum.POINT_STATUS_7.getCode().equals(pointStatus)){
return PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_6.getCode();
}
if(SelectStatusEnum.SELECT_STATUS_1.getCode().equals(selectStatus)){
//已选择 判断线索id是否是自己
if(curLineId.equals(lineId)){
return PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_2.getCode();
}
return PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_3.getCode();
}
return recommendStatus;
}
}

View File

@@ -164,12 +164,6 @@ public class PointDetailVO {
@ApiModelProperty("门店月毛利率")
private String monthProfitRate;
@ApiModelProperty("配送费率")
private String deliveryRate;
@ApiModelProperty("配送费")
private String deliveryFee;
@ApiModelProperty("品牌使用费率")
private String brandUseRate;
@@ -315,8 +309,6 @@ public class PointDetailVO {
result.setDayTrader(pointDetailInfo.getDayTrader());
result.setProfitRate(pointDetailInfo.getProfitRate());
result.setMonthProfitRate(pointDetailInfo.getMonthProfitRate());
result.setDeliveryRate(pointDetailInfo.getDeliveryRate());
result.setDeliveryFee(pointDetailInfo.getDeliveryFee());
result.setBrandUseRate(pointDetailInfo.getBrandUseRate());
result.setBrandUseFee(pointDetailInfo.getBrandUseFee());
result.setStaffFee(pointDetailInfo.getStaffFee());

View File

@@ -156,7 +156,14 @@ public class LineInterviewServiceImpl extends LineFlowService implements LineInt
}
LineInterviewDO addInterview = LineInterviewDO.convertDO(lineInfo, startTime, endTime, UUIDUtils.get8UUID(), interviewerUserId, interviewType.getCode(), eventId);
lineInterviewDAO.addInterviewInfo(addInterview);
commonService.sendMessage(Arrays.asList(interviewerUserId), MessageEnum.MESSAGE_2, lineInfo.getUsername(), hyOpenAreaInfoDAO.selectNameMapById(lineInfo.getWantShopAreaId()), DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM, startTime));
MessageEnum messageEnum = MessageEnum.MESSAGE_2;
if(InterviewTypeEnum.INTERVIEW.equals(interviewType)){
messageEnum = MessageEnum.MESSAGE_3;
}
if(InterviewTypeEnum.SECOND_INTERVIEW.equals(interviewType)){
messageEnum = MessageEnum.MESSAGE_10;
}
commonService.sendMessage(Arrays.asList(interviewerUserId), messageEnum, lineInfo.getUsername(), DateUtils.parseDateToStr(DateUtils.NOTICE_DATE, startTime));
return Boolean.TRUE;
}
@@ -449,6 +456,9 @@ public class LineInterviewServiceImpl extends LineFlowService implements LineInt
updateInterviewInfo.setAuditId(auditId);
updateInterviewInfo.setInterviewStatus(InterviewStatusEnum.NOT_PASS.getCode());
lineInfoDAO.updateWorkflowStage(lineInfo.getId(), null, WorkflowSubStageStatusEnum.getInterviewRejectStatus(interviewType),userId);
String noticeTime = DateUtils.parseDateToStr(DateUtils.NOTICE_DATE, interviewInfo.getStartTime());
String interviewUserName = enterpriseUserDAO.getUserName(interviewInfo.getInterviewerUserId());
commonService.sendMessage(Arrays.asList(lineInfo.getInvestmentManager()), MessageEnum.MESSAGE_4, lineInfo.getUsername(), noticeTime, interviewUserName);
return lineInterviewDAO.updateInterviewInfo(updateInterviewInfo) > 0;
}

View File

@@ -127,11 +127,19 @@ public class PointServiceImpl implements PointService {
@Override
@Transactional(rollbackFor = Exception.class)
public Long updatePointDetailInfo(UpdatePointDetailRequest shopPointDetailRequest) {
PointInfoDO pointInfo = pointInfoDAO.getPointInfoById(shopPointDetailRequest.getPointId());
if(Objects.isNull(pointInfo)){
log.error("铺位基本信息不存在");
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
}
PointInfoDO shopPointInfo = UpdatePointDetailRequest.convertPointDO(shopPointDetailRequest);
PointDetailInfoDO shopPoint = UpdatePointDetailRequest.convertDO(shopPointDetailRequest);
if(!PointStatusEnum.POINT_STATUS_1.getCode().equals(pointInfo.getPointStatus()) && !shopPoint.isCanSubmitEvaluable()){
throw new ServiceException(ErrorCodeEnum.PARAMS_REQUIRED);
}
shopPointInfo.setPointScore(shopPoint.getTotalPointScore());
pointInfoDAO.updatePointInfo(shopPointInfo);
pointDetailInfoDAO.updatePointDetailInfo(shopPoint);
pointDetailInfoDAO.updatePartFieldPointDetail(shopPoint);
return shopPointDetailRequest.getPointId();
}
@@ -339,6 +347,7 @@ public class PointServiceImpl implements PointService {
//删除剩余未完成的审核记录
pointAuditRecordDAO.deletePointAuditRecord(pointId, pointInfo.getSubmitAuditCount());
updatePoint.setPointStatus(PointStatusEnum.POINT_STATUS_2.getCode());
commonService.sendMessage(Arrays.asList(pointInfo.getDevelopmentManager()), MessageEnum.MESSAGE_12, pointInfo.getPointName(), pointInfo.getAddress(), request.getReason());
return pointInfoDAO.updatePointInfo(updatePoint);
}
PointAuditRecordDO nextAuditRecord = getNextAuditRecord(NodeNoEnum.NODE_NO_2.getCode(), pointAuditRecordMap);
@@ -347,13 +356,15 @@ public class PointServiceImpl implements PointService {
//审批通过的情况下 生成下一个节点的待办数据
pointTodoInfoDAO.addPointTodoInfo(PointAuditRecordDO.convertTODO(nextAuditRecord));
updatePoint.setPointStatus(PointStatusEnum.POINT_STATUS_4.getCode());
List<String> sendMessageUserIds = JSONObject.parseArray(nextAuditRecord.getHandlerUserIds(), String.class);
commonService.sendMessage(sendMessageUserIds, MessageEnum.MESSAGE_13, pointInfo.getPointName(), pointInfo.getAddress());
}else{
//没有下一节点 审批通过
updatePoint.setPointStatus(PointStatusEnum.POINT_STATUS_5.getCode());
if(SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())){
shopStageInfoDAO.batchUpdateShopStageStatus(pointInfo.getShopId(), Arrays.asList(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_12, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_20));
}
commonService.sendMessage(Arrays.asList(pointInfo.getDevelopmentManager()), MessageEnum.MESSAGE_7, pointInfo.getPointName(), pointInfo.getAddress());
commonService.sendMessage(Arrays.asList(pointInfo.getDevelopmentManager()), MessageEnum.MESSAGE_11, pointInfo.getPointName(), pointInfo.getAddress());
}
return pointInfoDAO.updatePointInfo(updatePoint);
}
@@ -397,6 +408,7 @@ public class PointServiceImpl implements PointService {
pointInfoUpdate.setPointStatus(PointStatusEnum.POINT_STATUS_2.getCode());
//删除剩余未完成的审核记录
pointAuditRecordDAO.deletePointAuditRecord(pointId, pointInfo.getSubmitAuditCount());
commonService.sendMessage(Arrays.asList(pointInfo.getDevelopmentManager()), MessageEnum.MESSAGE_12, pointInfo.getPointName(), pointInfo.getAddress(), request.getReason());
return pointInfoDAO.updatePointInfo(pointInfoUpdate);
}
PointAuditRecordDO nextAuditRecord = getNextAuditRecord(pointTodo.getNodeNo(), pointAuditRecordMap);
@@ -404,7 +416,7 @@ public class PointServiceImpl implements PointService {
//更新下一阶段任务的收到任务时间
pointAuditRecordDAO.updatePointAuditRecord(PointAuditRecordDO.convert(nextAuditRecord.getId(), new Date()));
List<String> sendMessageUserIds = JSONObject.parseArray(nextAuditRecord.getHandlerUserIds(), String.class);
commonService.sendMessage(sendMessageUserIds, MessageEnum.MESSAGE_8, pointInfo.getPointName(), pointInfo.getAddress());
commonService.sendMessage(sendMessageUserIds, MessageEnum.MESSAGE_13, pointInfo.getPointName(), pointInfo.getAddress());
//审批通过的情况下 生成下一个节点的待办数据
return pointTodoInfoDAO.addPointTodoInfo(PointAuditRecordDO.convertTODO(nextAuditRecord));
}
@@ -414,7 +426,7 @@ public class PointServiceImpl implements PointService {
if(SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())){
shopStageInfoDAO.batchUpdateShopStageStatus(pointInfo.getShopId(), Arrays.asList(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_12, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_20));
}
commonService.sendMessage(Arrays.asList(pointInfo.getDevelopmentManager()), MessageEnum.MESSAGE_7, pointInfo.getPointName(), pointInfo.getAddress());
commonService.sendMessage(Arrays.asList(pointInfo.getDevelopmentManager()), MessageEnum.MESSAGE_11, pointInfo.getPointName(), pointInfo.getAddress());
return pointInfoDAO.updatePointInfo(pointInfoUpdate);
}
@@ -617,6 +629,7 @@ public class PointServiceImpl implements PointService {
@Override
@Transactional(rollbackFor = Exception.class)
public Integer turnLine(TurnLineRequest request) {
LineInfoDO lineInfo = lineInfoDAO.getLineInfo(request.getLineId());
Long lineId = request.getLineId();
//更改线索中的拓展经理
LineInfoDO updateLineInfo = new LineInfoDO();
@@ -625,6 +638,8 @@ public class PointServiceImpl implements PointService {
lineInfoDAO.updateLineInfo(updateLineInfo);
//更新已被选择的铺位的拓展经理
pointInfoDAO.updateSelectedDevelopmentManager(lineId, request.getDevelopmentManager());
String wantShopName = hyOpenAreaInfoDAO.selectNameMapById(lineInfo.getWantShopAreaId());
commonService.sendMessage(Arrays.asList(request.getDevelopmentManager()), MessageEnum.MESSAGE_14, lineInfo.getUsername(), lineInfo.getMobile(), wantShopName);
//删除未选择的推荐铺位
return pointRecommendDAO.deleteUnselectedRecommendPointByLineId(lineId);
}

View File

@@ -207,6 +207,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils
public static String YYYY_MM_DD_HH_MM = "yyyy-MM-dd HH:mm";
public static String NOTICE_DATE = "yyyy年MM月dd日 HH:mm";
/**
* 返回11个月之前的月从月的第一天开始如当前是2020-05-03 返回的是2019-06-01 00:00:00