提交 9a4027e2 作者: 恶龙咆哮

Merge branch 'develop'

......@@ -85,6 +85,12 @@ public interface RequirementsDao {
RequirementsInfoDO detailPublish(Integer id);
/**
* 获取被拒绝飞手具体订单信息
* @param id 订单id
* @return {@link RequirementsInfoDO}
*/
RequirementsInfoDO selectDetailRefusePilotInfo(Integer id);
void addPublishService(ServiceRequirementsDO requirementsInfoDO);
......@@ -321,4 +327,19 @@ public interface RequirementsDao {
*/
Integer selectRequirementsRefuse(Integer requireId,Integer userAccountId);
/**
* 取消后删除抢过的订单
* @param requireId 订单iD
* @param userAccountId 用户id
*/
void deleteRequirementsServiceInfo(Integer requireId,Integer userAccountId);
/**
* 根据订单id和用户id查找这个订单是不是被拒绝过
* @param requireId 订单id
* @param userAccountId 接单飞手id
* @return {@link Integer}
*/
Integer selectServiceFlowIdFromAgreePilot(Integer requireId,Integer userAccountId);
}
......@@ -190,8 +190,17 @@ public class RequirementsServiceImpl implements RequirementsService {
@Override
public ResultBody detailPublish(Integer id, HttpServletRequest request, Integer userAccountId) {
RequirementsInfoDO requirementsInfoDO = requirementsDao.detailPublish(id);
RequirementsInfoVO requirementsInfoVO = requirementsInfoDO.buildRequirementsInfoVO();
Integer pilotStatus = requirementsDao.selectServiceFlowIdFromAgreePilot(id, userAccountId);
RequirementsInfoDO requirementsInfoDO = new RequirementsInfoDO();
RequirementsInfoVO requirementsInfoVO = new RequirementsInfoVO();
if(pilotStatus != null && pilotStatus == 11) {
//获取被拒绝订单详情
requirementsInfoDO = requirementsDao.selectDetailRefusePilotInfo(id);
requirementsInfoVO = requirementsInfoDO.buildRequirementsInfoVO();
}else{
requirementsInfoDO = requirementsDao.detailPublish(id);
requirementsInfoVO = requirementsInfoDO.buildRequirementsInfoVO();
}
if (userAccountId.equals(requirementsInfoVO.getUserAccountId())) {
requirementsInfoVO.setParamMoney(BigDecimal.valueOf(0.00));
} else if (!userAccountId.equals(requirementsInfoVO.getUserAccountId())) {
......@@ -738,7 +747,7 @@ public class RequirementsServiceImpl implements RequirementsService {
} else {
//修改订单所需人数以及订单状态
requirementsDao.updateRequirementsInfoByRefusePilot(requirementsInfoId);
requirementsDao.updateScene(requirementsInfoId,1);
requirementsDao.deleteRequirementsServiceInfo(requirementsInfoId, userAccountId);
Integer fatherRequireId = requirementsDao.selectFatherRequireIdBySonId(requirementsInfoId);
Integer repertory = requirementsDao.selectRepertoryByRequireId(fatherRequireId);
requirementsDao.updateRequirementsInfoRepertory(fatherRequireId, repertory);
......
......@@ -1690,13 +1690,72 @@
select service_flow_id from agree_pilot_order
where require_info_id = #{requirementsId} and pilot_certification_user_id = #{userAccountId}
</select>
<select id="selectRequirementsNum" resultType="java.lang.Integer">
select count(id) from requirements_info where father_require_id =#{requirementsId}
</select>
<select id="selectServiceFlowIdByFatherId" resultType="java.lang.Integer">
select count(id) from requirements_info where father_require_id = #{requirementsId} and service_flow_id not in (1,10)
</select>
<select id="selectRequirementsRefuse" resultType="java.lang.Integer">
select count(id) from requirements_service where requirements_info_id = #{requireId} and pilot_certification_user_id = #{userAccountId}
</select>
<select id="selectServiceFlowIdFromAgreePilot" resultType="java.lang.Integer">
select service_flow_id from agree_pilot_order where require_info_id = #{requireId} and pilot_certification_user_id = #{userAccountId}
</select>
<select id="selectDetailRefusePilotInfo"
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,
ri.repertory,
ri.require_num,
ri.father_require_id,
ra.total_amount,
ri.insurance,
sf.doing,
sf.waiting,
sf.user_port,
sf.flyer_port,
sf.order_status,
ri.publish,
ra.order_amount,
rau.update_order_amount,
ra.reason,
ra.url,
ra.order_level,
rau.reason AS afterModificationReason,
rau.url AS afterModificationUrl,
rs.pilot_certification_user_id AS pilotCertificationUserId,
rs.preempt_phone AS preemptPhone,
rs.pilot_certification_id
FROM requirements_info ri
LEFT JOIN requirements_type rt
ON rt.id = ri.requirement_type_id
LEFT JOIN requirements_amount_update rau ON rau.requirements_info_id = ri.id
LEFT JOIN service_flow sf ON sf.id = ri.service_flow_id
LEFT JOIN requirements_service rs ON rs.requirements_info_id = ri.id
LEFT JOIN requirements_amount ra ON ra.requirements_info_id = ri.id
AND ra.user_account_id = ri.user_account_id
WHERE ri.id = #{id} and (rs.service_flow_id = 11 or rs.service_flow_id is NULL)
</select>
<delete id="deleteRequirementsServiceInfo">
delete from requirements_service where requirements_info_id = #{requireId} and pilot_certification_user_id = #{userAccountId}
</delete>
</mapper>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论