提交 08077d85 作者: han

飞手待确认的订单列表

上级 1001176a
...@@ -376,4 +376,18 @@ public class RequirementsController extends BaseController { ...@@ -376,4 +376,18 @@ public class RequirementsController extends BaseController {
public ResultBody personSendOrder(HttpServletRequest request,@RequestBody PersonSendOrderVO personSendOrderVO) { public ResultBody personSendOrder(HttpServletRequest request,@RequestBody PersonSendOrderVO personSendOrderVO) {
return requirementsService.personSendOrder(personSendOrderVO,this.getUserLoginInfoFromRedis(request).getToken()); return requirementsService.personSendOrder(personSendOrderVO,this.getUserLoginInfoFromRedis(request).getToken());
} }
@ApiOperation(value = "我的派单列表——待确认")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("mySendOderList")
public ResultBody<RequirementsInfoVO> mySendOderList(HttpServletRequest request,
@Validated(value = {Page.class}) @ApiParam(value = "我的抢单", required = true) @RequestBody MyPreemptQO param) {
return ResultBody.success(requirementsService.mySendOderList(this.getUserLoginInfoFromRedis(request).getUserAccountId(), param));
}
@ApiOperation(value = "我的派单——去确认")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("orderConfirmationByPilot")
public ResultBody orderConfirmationByPilot(@ApiParam(value = "派单id") @RequestParam Integer id,@ApiParam(value = "确认状态:1同意,2不同意") @RequestParam Integer status) {
return requirementsService.orderConfirmationByPilot(id,status);
}
} }
\ No newline at end of file
...@@ -430,13 +430,32 @@ public interface RequirementsDao { ...@@ -430,13 +430,32 @@ public interface RequirementsDao {
Integer isReConfirm(Integer id); Integer isReConfirm(Integer id);
/** /**
* 根据订单id和用户id查找这个订单是不是被拒绝过
* @param requireId 订单id
* @param userAccountId 接单飞手id
* @return {@link Integer}
*/
Integer selectRejectedByPilot(Integer requireId,Integer userAccountId);
/**
* 管理员确认接单 * 管理员确认接单
*/ */
Integer orderConfirmationByTeam(Integer id); Integer orderConfirmationByTeam(@Param("id") Integer id,@Param("status") Integer status);
/** /**
* 飞手拒绝后订单发往抢单大厅 * 飞手拒绝后订单发往抢单大厅
*/ */
Integer updateCount(Integer id); Integer updateCount(Integer id);
/**
* 根据飞手ID查询派单的列表数量
*/
Integer mySendOderListCount(MyPreemptQO param);
/**
* 根据飞手ID查询派单的列表
*/
List<RequirementsInfoDO> mySendOderList(MyPreemptQO param);
} }
...@@ -151,4 +151,10 @@ public interface RequirementsService { ...@@ -151,4 +151,10 @@ public interface RequirementsService {
* 飞手确认接单 * 飞手确认接单
*/ */
ResultBody orderConfirmationByPilot(Integer id,Integer status); ResultBody orderConfirmationByPilot(Integer id,Integer status);
/**
* 个人飞手派单的订单列表
*/
PageResult mySendOderList(Integer userAccountId, MyPreemptQO param);
} }
...@@ -75,6 +75,7 @@ public class RequirementsServiceImpl implements RequirementsService { ...@@ -75,6 +75,7 @@ public class RequirementsServiceImpl implements RequirementsService {
@Value("${iuav.omsapp.url}") @Value("${iuav.omsapp.url}")
private String omsApp; private String omsApp;
@Qualifier("com.mmc.csf.release.feign.PmsAppApi")
@Autowired @Autowired
private PmsAppApi pmsAppApi; private PmsAppApi pmsAppApi;
...@@ -3289,6 +3290,9 @@ public class RequirementsServiceImpl implements RequirementsService { ...@@ -3289,6 +3290,9 @@ public class RequirementsServiceImpl implements RequirementsService {
if(requirementsDao.isReSendOrder(personSendOrderVO.getRequirementsInfoId() )!= 0){ if(requirementsDao.isReSendOrder(personSendOrderVO.getRequirementsInfoId() )!= 0){
return ResultBody.error("重复派单"); return ResultBody.error("重复派单");
} }
// if(requirementsDao.selectRejectedByPilot(personSendOrderVO.getRequirementsInfoId(),personSendOrderVO.getPilotCertificationUserId()) == 1){
// return ResultBody.error("飞手拒绝过该订单,不能派单");
// }
TeamMessageDO teamMessageDTO = userAppApi.selectPilotTeam(token,personSendOrderVO.getPilotCertificationId()); TeamMessageDO teamMessageDTO = userAppApi.selectPilotTeam(token,personSendOrderVO.getPilotCertificationId());
PersonSendOrderDO personSendOrderDO = null; PersonSendOrderDO personSendOrderDO = null;
if(teamMessageDTO.getPilotMessageId() != null){ if(teamMessageDTO.getPilotMessageId() != null){
...@@ -3335,6 +3339,26 @@ public class RequirementsServiceImpl implements RequirementsService { ...@@ -3335,6 +3339,26 @@ public class RequirementsServiceImpl implements RequirementsService {
return ResultBody.success("飞手已拒绝接单,订单发往抢单大厅"); return ResultBody.success("飞手已拒绝接单,订单发往抢单大厅");
} }
@Override
public PageResult mySendOderList(Integer userAccountId, MyPreemptQO param) {
Integer pageNo = param.getPageNo();
param.buildCurrentPage();
param.setUserAccountId(userAccountId);
int count = requirementsDao.mySendOderListCount(param);
List<RequirementsInfoDO> requirementsInfoDOS = requirementsDao.mySendOderList(param);
List<RequirementsInfoVO> collect = requirementsInfoDOS.stream().map(RequirementsInfoDO::buildRequirementsInfoVO).collect(Collectors.toList());
List<IndustryTypeDTO> industryTypeDTOS = listIndustry();
for (RequirementsInfoVO requirementsInfoVO : collect) {
for (IndustryTypeDTO industryTypeDTO : industryTypeDTOS) {
if (requirementsInfoVO.getServiceId() != null && requirementsInfoVO.getServiceId().equals(industryTypeDTO.getId())) {
requirementsInfoVO.setServiceName(industryTypeDTO.getTypeName());
}
}
}
return PageResult.buildPage(pageNo, param.getPageSize(), count, collect);
}
public UserAccountSimpleDTO feignGetUserSimpleInfo(Integer userAccountId, HttpServletRequest request) { public UserAccountSimpleDTO feignGetUserSimpleInfo(Integer userAccountId, HttpServletRequest request) {
String token = request.getHeader("token"); String token = request.getHeader("token");
HttpHeaders headers = new HttpHeaders(); HttpHeaders headers = new HttpHeaders();
......
...@@ -1662,7 +1662,7 @@ ...@@ -1662,7 +1662,7 @@
</update> </update>
<update id="orderConfirmationByTeam"> <update id="orderConfirmationByTeam">
update requirements_service_temp update requirements_service_temp
set team_status = 1 set team_status = #{status}
where id = #{id} where id = #{id}
</update> </update>
...@@ -1895,7 +1895,77 @@ ...@@ -1895,7 +1895,77 @@
from requirements_service_temp from requirements_service_temp
where id = #{id} and is_deleted = 0 where id = #{id} and is_deleted = 0
</select> </select>
<select id="mySendOderListCount" resultType="java.lang.Integer">
SELECT
count(*)
FROM
requirements_info ri
LEFT JOIN requirements_type rt ON rt.id = ri.requirement_type_id
LEFT JOIN service_flow sf ON sf.id = ri.service_flow_id
LEFT JOIN requirements_amount ra ON ra.requirements_info_id = ri.id
LEFT JOIN requirements_amount_update rau ON rau.requirements_info_id = ri.id
INNER JOIN requirements_service_temp rs ON ri.id = rs.requirements_info_id
WHERE rs.pilot_certification_user_id = #{userAccountId} AND rs.is_deleted !=1
<if test=" requirementsInfoId != null ">
and ri.id=#{requirementsInfoId}
</if>
<if test="requireDescription!=null and requireDescription!='' ">
and ri.require_description like CONCAT("%",#{requireDescription},"%")
</if>
</select>
<select id="mySendOderList" resultType="com.mmc.csf.release.entity.requirements.RequirementsInfoDO">
SELECT
ri.id,
ri.task_title,
ri.task_start_time,
ri.task_end_time,
ri.task_address,
ri.longitude,
ri.latitude,
ri.require_url,
ri.require_description,
ri.requirement_type_id,
ri.user_account_id,
rt.type_name AS requirementTypeName,
ri.publish_phone,
ri.publisher_number,
ri.service_id,
ra.total_amount,
ri.insurance,
sf.doing,
sf.waiting,
sf.user_port,
sf.flyer_port,
sf.order_status,
ri.publish,
rs.preempt_total_amount,
ra.order_level,
ra.order_amount,
rau.update_order_amount
FROM
requirements_info ri
LEFT JOIN requirements_type rt ON rt.id = ri.requirement_type_id
# TODO 可能会有问题 删除的
# LEFT JOIN service_flow sf ON sf.id = ri.service_flow_id
LEFT JOIN requirements_amount ra ON ra.requirements_info_id = ri.id
LEFT JOIN requirements_amount_update rau ON rau.requirements_info_id = ri.id
INNER JOIN requirements_service_temp rs ON ri.id = rs.requirements_info_id
#增加的
LEFT JOIN service_flow sf ON sf.id = rs.service_flow_id
WHERE rs.pilot_certification_user_id = #{userAccountId} AND rs.is_deleted !=1 AND rs.pilot_status = 0
<if test=" requirementsInfoId != null ">
and ri.id=#{requirementsInfoId}
</if>
<if test="requireDescription!=null and requireDescription!='' ">
and ri.require_description like CONCAT("%",#{requireDescription},"%")
</if>
ORDER BY ri.id desc
limit #{pageNo}, #{pageSize}
</select>
<select id="selectRejectedByPilot" resultType="java.lang.Integer">
select count(*) from requirements_service_temp where require_info_id = #{requireId} and pilot_certification_user_id = #{userAccountId} and pilot_status = 2
</select>
<delete id="deleteRequirementsServiceInfo"> <delete id="deleteRequirementsServiceInfo">
delete from requirements_service where requirements_info_id = #{requireId} and pilot_certification_user_id = #{userAccountId} delete from requirements_service where requirements_info_id = #{requireId} and pilot_certification_user_id = #{userAccountId}
</delete> </delete>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论