Commit 8f1527ba authored by hezhen's avatar hezhen

Merge branch 'master_chw_publish' into dev-chw

parents fb960a0a 2fb9e4b7
...@@ -3,10 +3,7 @@ package com.xxfc.platform.vehicle.entity; ...@@ -3,10 +3,7 @@ package com.xxfc.platform.vehicle.entity;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.persistence.Column; import javax.persistence.*;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
...@@ -75,6 +72,11 @@ public class VehiclePublishReceive implements Serializable { ...@@ -75,6 +72,11 @@ public class VehiclePublishReceive implements Serializable {
private Integer publishGoodsId; private Integer publishGoodsId;
@Column(name = "receive_user_id")
@ApiModelProperty(value = "接单人id")
private Integer receiveUserId;
@Column(name = "receive_company_id") @Column(name = "receive_company_id")
@ApiModelProperty(value = "接单公司id") @ApiModelProperty(value = "接单公司id")
private Integer receiveCompanyId; private Integer receiveCompanyId;
......
...@@ -27,6 +27,13 @@ public class VehiclePublishFindDTO extends PageParam implements DataInter { ...@@ -27,6 +27,13 @@ public class VehiclePublishFindDTO extends PageParam implements DataInter {
private Integer type; private Integer type;
@ApiModelProperty("类型:1-我的发布;2-我的接单")
private Integer receivetype;
@ApiModelProperty("子需求id")
private Integer publishGoodsId;
@ApiModelProperty("类型:1-调度信息;2-我的发布") @ApiModelProperty("类型:1-调度信息;2-我的发布")
private Integer selectType; private Integer selectType;
......
...@@ -50,6 +50,8 @@ public class VehiclePublishReceiveDTO{ ...@@ -50,6 +50,8 @@ public class VehiclePublishReceiveDTO{
@ApiModelProperty(value = "拒绝的接单ids") @ApiModelProperty(value = "拒绝的接单ids")
private String refuseReceiveIds; private String refuseReceiveIds;
private Integer status; private Integer status;
......
...@@ -21,5 +21,9 @@ public class VehiclePublishGoodsVo extends VehiclePublishGoods { ...@@ -21,5 +21,9 @@ public class VehiclePublishGoodsVo extends VehiclePublishGoods {
@ApiModelProperty("商品数量") @ApiModelProperty("商品数量")
Integer goodsNumber; Integer goodsNumber;
private List<VehicleExtensionVO> extensionVOS; List<VehicleExtensionVO> extensionVOS;
List<VehiclePublishReceiveVo> receiveVos;
} }
...@@ -19,6 +19,19 @@ public class VehiclePublishReceiveVo extends VehiclePublishReceive { ...@@ -19,6 +19,19 @@ public class VehiclePublishReceiveVo extends VehiclePublishReceive {
@ApiModelProperty("型号名称") @ApiModelProperty("型号名称")
String categoryName; String categoryName;
@ApiModelProperty("数量")
Long number;
@ApiModelProperty("待确认数量")
Long waitNumber;
@ApiModelProperty("按钮状态:1-确认;2-收车;3-完成")
private Integer buttonState;
@ApiModelProperty("用户名")
String userName;
private List<VehicleExtensionVO> extensionVOS; private List<VehicleExtensionVO> extensionVOS;
...@@ -41,5 +54,13 @@ public class VehiclePublishReceiveVo extends VehiclePublishReceive { ...@@ -41,5 +54,13 @@ public class VehiclePublishReceiveVo extends VehiclePublishReceive {
@ApiModelProperty("发布服务费(单个商品)") @ApiModelProperty("发布服务费(单个商品)")
private BigDecimal publishAmount; private BigDecimal publishAmount;
@ApiModelProperty("状态str")
private String statusStr;
@ApiModelProperty("接单ids")
private String ids;
private List<VehiclePublishReceiveVo> publishReceiveVos;
} }
...@@ -84,6 +84,17 @@ public class VehiclePublishBiz extends BaseBiz<VehiclePublishMapper, VehiclePubl ...@@ -84,6 +84,17 @@ public class VehiclePublishBiz extends BaseBiz<VehiclePublishMapper, VehiclePubl
} }
public VehiclePublishVo detail(VehiclePublishFindDTO publishFindDTO){
PageDataVO<VehiclePublishVo> pageDataVO = selectList(publishFindDTO);
List<VehiclePublishVo> list = pageDataVO.getData();
VehiclePublishVo publishVo = new VehiclePublishVo();
if (CollectionUtils.isNotEmpty(list)){
publishVo=list.get(0);
}
return publishVo;
}
//入驻规则管理 //入驻规则管理
public JSONObject getConfig(){ public JSONObject getConfig(){
......
...@@ -2,12 +2,17 @@ package com.xxfc.platform.vehicle.biz; ...@@ -2,12 +2,17 @@ package com.xxfc.platform.vehicle.biz;
import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.vo.AppUserVo;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.xxfc.platform.tour.dto.TourUserScoreListDTO;
import com.xxfc.platform.vehicle.entity.VehiclePublishGoods; import com.xxfc.platform.vehicle.entity.VehiclePublishGoods;
import com.xxfc.platform.vehicle.mapper.VehiclePublishGoodsMapper; import com.xxfc.platform.vehicle.mapper.VehiclePublishGoodsMapper;
import com.xxfc.platform.vehicle.pojo.dto.VehiclePublishFindDTO; import com.xxfc.platform.vehicle.pojo.dto.VehiclePublishFindDTO;
import com.xxfc.platform.vehicle.pojo.dto.VehiclePublishReceiveDTO;
import com.xxfc.platform.vehicle.pojo.vo.VehicleExtensionVO; import com.xxfc.platform.vehicle.pojo.vo.VehicleExtensionVO;
import com.xxfc.platform.vehicle.pojo.vo.VehiclePublishGoodsVo; import com.xxfc.platform.vehicle.pojo.vo.VehiclePublishGoodsVo;
import com.xxfc.platform.vehicle.pojo.vo.VehiclePublishReceiveVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
...@@ -17,6 +22,8 @@ import org.springframework.stereotype.Service; ...@@ -17,6 +22,8 @@ import org.springframework.stereotype.Service;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -28,12 +35,18 @@ public class VehiclePublishGoodsBiz extends BaseBiz<VehiclePublishGoodsMapper, V ...@@ -28,12 +35,18 @@ public class VehiclePublishGoodsBiz extends BaseBiz<VehiclePublishGoodsMapper, V
@Autowired @Autowired
VehicleExtensionBiz extensionBiz; VehicleExtensionBiz extensionBiz;
@Autowired
VehiclePublishReceiveBiz publishReceiveBiz;
@Autowired
UserFeign userFeign;
public List<VehiclePublishGoodsVo> getList(VehiclePublishFindDTO publishFindDTO){ public List<VehiclePublishGoodsVo> getList(VehiclePublishFindDTO publishFindDTO){
List<VehiclePublishGoodsVo> list = mapper.selectList(publishFindDTO); List<VehiclePublishGoodsVo> list = mapper.selectList(publishFindDTO);
setGoodsList(list); setGoodsList(list,publishFindDTO);
return list; return list;
} }
...@@ -41,11 +54,12 @@ public class VehiclePublishGoodsBiz extends BaseBiz<VehiclePublishGoodsMapper, V ...@@ -41,11 +54,12 @@ public class VehiclePublishGoodsBiz extends BaseBiz<VehiclePublishGoodsMapper, V
public List<VehiclePublishGoodsVo> getListByOrderNo(VehiclePublishFindDTO publishFindDTO){ public List<VehiclePublishGoodsVo> getListByOrderNo(VehiclePublishFindDTO publishFindDTO){
List<VehiclePublishGoodsVo> list = mapper.selectListByOrderNo(publishFindDTO); List<VehiclePublishGoodsVo> list = mapper.selectListByOrderNo(publishFindDTO);
setGoodsList(list); setGoodsList(list,publishFindDTO);
return list; return list;
} }
public void setGoodsList(List<VehiclePublishGoodsVo> list){ public void setGoodsList(List<VehiclePublishGoodsVo> list,VehiclePublishFindDTO publishFindDTO){
Integer receivetype = publishFindDTO.getReceivetype() == null ? 0 : publishFindDTO.getReceivetype();
if (CollectionUtils.isNotEmpty(list)){ if (CollectionUtils.isNotEmpty(list)){
for (VehiclePublishGoodsVo publishGoodsVo : list){ for (VehiclePublishGoodsVo publishGoodsVo : list){
String vehicleId = publishGoodsVo.getVehicleId(); String vehicleId = publishGoodsVo.getVehicleId();
...@@ -59,8 +73,56 @@ public class VehiclePublishGoodsBiz extends BaseBiz<VehiclePublishGoodsMapper, V ...@@ -59,8 +73,56 @@ public class VehiclePublishGoodsBiz extends BaseBiz<VehiclePublishGoodsMapper, V
} }
} }
publishGoodsVo.setExtensionVOS(extensionVOS); publishGoodsVo.setExtensionVOS(extensionVOS);
if (receivetype > 0)
setReceive(publishGoodsVo,publishFindDTO);
}
}
}
public void setReceive(VehiclePublishGoodsVo publishGoodsVo,VehiclePublishFindDTO publishFindDTO){
publishFindDTO.setPublishGoodsId(publishGoodsVo.getId());
List<VehiclePublishReceiveVo> list = publishReceiveBiz.getListByUserId(publishFindDTO);
if (CollectionUtils.isNotEmpty(list)){
List<Integer> userIds = list.stream().map(VehiclePublishReceiveVo::getReceiveUserId).distinct().collect(Collectors.toList());
List<AppUserVo> appUserVos = userFeign.getByUserIds(userIds).getData();
if (log.isDebugEnabled()){
log.debug("根据用户ids查询出用户信息:【{}】",appUserVos);
}
Map<Integer, AppUserVo> userMap = appUserVos.stream().collect(Collectors.toMap(AppUserVo::getUserid, Function.identity()));
for (VehiclePublishReceiveVo receiveVo : list){
AppUserVo appUserVo = userMap.get(receiveVo.getReceiveUserId());
if (appUserVo != null ){
receiveVo.setUserName(appUserVo.getUsername());
}
String statusStr = receiveVo.getStatusStr();
if (StringUtils.isNotBlank(statusStr)){
List<Integer> statusIds = Arrays.asList(statusStr.split(",")).parallelStream().map(s -> Integer.valueOf(s)).collect(Collectors.toList());
Long count = statusIds.stream().filter(x->x == 1).count();
count = count == null ? 0L :count;
receiveVo.setWaitNumber(count);
Integer buttonState = 0;
if (count > 0){
buttonState = 1;
}else {
if (statusStr.contains("3")){
buttonState =2;
}else if (statusStr.contains("5"))
buttonState = 3;
}
receiveVo.setButtonState(buttonState);
}
String ids = receiveVo.getIds();
if (StringUtils.isNotBlank(ids)){
List<Integer> idList = Arrays.asList(ids.split(",")).parallelStream().map(s -> Integer.valueOf(s)).collect(Collectors.toList());
VehiclePublishReceiveDTO receiveDTO = new VehiclePublishReceiveDTO();
receiveDTO.setIds(idList);
receiveVo.setPublishReceiveVos( publishReceiveBiz.getListByIds(receiveDTO));
}
} }
publishGoodsVo.setReceiveVos(list);
} }
} }
......
...@@ -14,8 +14,10 @@ import com.xxfc.platform.universal.dto.SendMsgDTO; ...@@ -14,8 +14,10 @@ import com.xxfc.platform.universal.dto.SendMsgDTO;
import com.xxfc.platform.universal.feign.MQSenderFeign; import com.xxfc.platform.universal.feign.MQSenderFeign;
import com.xxfc.platform.vehicle.entity.*; import com.xxfc.platform.vehicle.entity.*;
import com.xxfc.platform.vehicle.mapper.VehiclePublishReceiveMapper; import com.xxfc.platform.vehicle.mapper.VehiclePublishReceiveMapper;
import com.xxfc.platform.vehicle.pojo.dto.VehiclePublishFindDTO;
import com.xxfc.platform.vehicle.pojo.dto.VehiclePublishReceiveDTO; import com.xxfc.platform.vehicle.pojo.dto.VehiclePublishReceiveDTO;
import com.xxfc.platform.vehicle.pojo.dto.VehicleReceiveRefundDTO; import com.xxfc.platform.vehicle.pojo.dto.VehicleReceiveRefundDTO;
import com.xxfc.platform.vehicle.pojo.vo.VehicleExtensionVO;
import com.xxfc.platform.vehicle.pojo.vo.VehiclePublishReceiveVo; import com.xxfc.platform.vehicle.pojo.vo.VehiclePublishReceiveVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
...@@ -108,6 +110,7 @@ public class VehiclePublishReceiveBiz extends BaseBiz<VehiclePublishReceiveMappe ...@@ -108,6 +110,7 @@ public class VehiclePublishReceiveBiz extends BaseBiz<VehiclePublishReceiveMappe
vehiclePublishReceive.setBrandId(brandId); vehiclePublishReceive.setBrandId(brandId);
vehiclePublishReceive.setCategoryId(categoryId); vehiclePublishReceive.setCategoryId(categoryId);
vehiclePublishReceive.setExtensionList(extensionList); vehiclePublishReceive.setExtensionList(extensionList);
vehiclePublishReceive.setReceiveUserId(publishReceiveDTO.getUserId());
insertSelective(vehiclePublishReceive); insertSelective(vehiclePublishReceive);
id = vehiclePublishReceive.getId(); id = vehiclePublishReceive.getId();
}else { }else {
...@@ -335,9 +338,25 @@ public class VehiclePublishReceiveBiz extends BaseBiz<VehiclePublishReceiveMappe ...@@ -335,9 +338,25 @@ public class VehiclePublishReceiveBiz extends BaseBiz<VehiclePublishReceiveMappe
} }
public List<VehiclePublishReceiveVo> getListByUserId(VehiclePublishFindDTO publishFindDTO){
return mapper.getListByUserId(publishFindDTO);
}
public List<VehiclePublishReceiveVo> getListByIds(VehiclePublishReceiveDTO publishReceiveDTO){
List<VehiclePublishReceiveVo> list = getList(publishReceiveDTO);
if (CollectionUtils.isNotEmpty(list)){
for (VehiclePublishReceiveVo publishReceiveVo : list){
String extensionList = publishReceiveVo.getExtensionList();
List<VehicleExtensionVO> extensionVOS = new ArrayList<>();
if (StringUtils.isNotBlank(extensionList)){
extensionVOS=vehicleExtensionBiz.getTreeByApply(Arrays.asList(extensionList.split(",")).parallelStream().map(s -> Integer.valueOf(s)).collect(Collectors.toList()));
}
publishReceiveVo.setExtensionVOS(extensionVOS);
}
}
return list;
}
......
...@@ -2,6 +2,7 @@ package com.xxfc.platform.vehicle.mapper; ...@@ -2,6 +2,7 @@ package com.xxfc.platform.vehicle.mapper;
import com.xxfc.platform.vehicle.entity.VehiclePublishReceive; import com.xxfc.platform.vehicle.entity.VehiclePublishReceive;
import com.xxfc.platform.vehicle.pojo.dto.VehiclePublishFindDTO;
import com.xxfc.platform.vehicle.pojo.dto.VehiclePublishReceiveDTO; import com.xxfc.platform.vehicle.pojo.dto.VehiclePublishReceiveDTO;
import com.xxfc.platform.vehicle.pojo.vo.VehiclePublishReceiveVo; import com.xxfc.platform.vehicle.pojo.vo.VehiclePublishReceiveVo;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -19,4 +20,6 @@ public interface VehiclePublishReceiveMapper extends Mapper<VehiclePublishReceiv ...@@ -19,4 +20,6 @@ public interface VehiclePublishReceiveMapper extends Mapper<VehiclePublishReceiv
String getOrderNoStr(@Param("publishOrderNo") String publishOrderNo,@Param("ids")List<Integer> ids); String getOrderNoStr(@Param("publishOrderNo") String publishOrderNo,@Param("ids")List<Integer> ids);
List<VehiclePublishReceiveVo> getListByUserId(VehiclePublishFindDTO publishFindDTO);
} }
\ No newline at end of file
...@@ -80,13 +80,7 @@ public class AppVehiclePublishController extends BaseController<VehiclePublishBi ...@@ -80,13 +80,7 @@ public class AppVehiclePublishController extends BaseController<VehiclePublishBi
@ApiModelProperty("详情") @ApiModelProperty("详情")
@IgnoreUserToken @IgnoreUserToken
public ObjectRestResponse detail(VehiclePublishFindDTO publishFindDTO) { public ObjectRestResponse detail(VehiclePublishFindDTO publishFindDTO) {
PageDataVO<VehiclePublishVo> pageDataVO = baseBiz.selectList(publishFindDTO); return ObjectRestResponse.succ(baseBiz.detail(publishFindDTO));
List<VehiclePublishVo> list = pageDataVO.getData();
VehiclePublishVo publishVo = new VehiclePublishVo();
if (CollectionUtils.isNotEmpty(list)){
publishVo=list.get(0);
}
return ObjectRestResponse.succ(publishVo);
} }
...@@ -97,6 +91,15 @@ public class AppVehiclePublishController extends BaseController<VehiclePublishBi ...@@ -97,6 +91,15 @@ public class AppVehiclePublishController extends BaseController<VehiclePublishBi
} }
@GetMapping("publishDetail")
@ApiModelProperty("我的发布详情")
@IgnoreUserToken
public ObjectRestResponse publishDetail(VehiclePublishFindDTO publishFindDTO) {
publishFindDTO.setReceivetype(1);
return ObjectRestResponse.succ(baseBiz.detail(publishFindDTO));
}
......
...@@ -26,13 +26,14 @@ public class AppVehiclePublishReceiveController extends BaseController<VehiclePu ...@@ -26,13 +26,14 @@ public class AppVehiclePublishReceiveController extends BaseController<VehiclePu
@PostMapping("meet") @PostMapping("meet")
@ApiModelProperty("接单") @ApiModelProperty("接单")
public ObjectRestResponse meet(@RequestBody VehiclePublishReceiveDTO publishReceiveDTO) { public ObjectRestResponse meet(@RequestBody VehiclePublishReceiveDTO publishReceiveDTO) throws Exception {
if (publishReceiveDTO.getCompanyId() == null || publishReceiveDTO.getCompanyId() == 0){ if (publishReceiveDTO.getCompanyId() == null || publishReceiveDTO.getCompanyId() == 0){
List<Integer> companyIds = getBusinessUserCompanyIds(); List<Integer> companyIds = getBusinessUserCompanyIds();
if (companyIds != null && companyIds.size() > 0){ if (companyIds != null && companyIds.size() > 0){
publishReceiveDTO.setCompanyId(companyIds.get(0)); publishReceiveDTO.setCompanyId(companyIds.get(0));
} }
} }
publishReceiveDTO.setUserId(Integer.parseInt(getUserId()));
return ObjectRestResponse.succ(baseBiz.receive(publishReceiveDTO)); return ObjectRestResponse.succ(baseBiz.receive(publishReceiveDTO));
} }
......
...@@ -67,8 +67,27 @@ ...@@ -67,8 +67,27 @@
</foreach> </foreach>
</if> </if>
</where> </where>
</select>
<select id="getListByUserId" resultType="com.xxfc.platform.vehicle.pojo.vo.VehiclePublishReceiveVo" parameterType="com.xxfc.platform.vehicle.pojo.dto.VehiclePublishFindDTO">
SELECT
COUNT(id) as number,
r.receive_user_id as receiveUserId,
r.receive_time as receiveTime,
GROUP_CONCAT(r.`status`) as statusStr,
GROUP_CONCAT(r.id) as ids
FROM vehicle_publish_receive r
WHERE r.publish_goods_id = #{publishGoodsId}
<choose>
<when test="receivetype != null and receivetype == 1">
AND r.`status` in (1,3,5)
</when>
<when test="receivetype != null and receivetype == 2">
AND r.`status` in (1,2,3,5)
</when>
</choose>
GROUP BY r.receive_user_id
</select> </select>
</mapper> </mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment