diff --git a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/controller/PCommonController.java b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/controller/PCommonController.java index 29b9f38f1..17da09549 100644 --- a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/controller/PCommonController.java +++ b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/controller/PCommonController.java @@ -28,12 +28,25 @@ public class PCommonController { * @return */ @PostMapping(value = "/cancelOrder") - public AjaxResult getDriverInfo(@RequestBody CommonVO commonVO) + public AjaxResult cancelOrder(@RequestBody CommonVO commonVO) { return pCommonService.cancelOrder(commonVO); } + /** + * 乘客或者司机关闭订单 + * @param commonVO + * @return + */ + @PostMapping(value = "/finishOrder") + public AjaxResult finishOrder(@RequestBody CommonVO commonVO) + { + return pCommonService.cancelOrder(commonVO); + } + + + /** * 乘客申请加入拼单 diff --git a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/domain/PDriver.java b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/domain/PDriver.java index acc95255b..11fe91efd 100644 --- a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/domain/PDriver.java +++ b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/domain/PDriver.java @@ -66,6 +66,10 @@ public class PDriver extends BaseEntity @Excel(name = "用户当前的状态:0:审核中,1:审核通过,2:禁用") private Integer state ; + /** 当前状态 */ + @Excel(name = "微信openId") + private String openId ; + public void setId(Long id) { this.id = id; @@ -182,6 +186,14 @@ public class PDriver extends BaseEntity this.numberPlate = numberPlate; } + public String getOpenId() { + return openId; + } + + public void setOpenId(String openId) { + this.openId = openId; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) @@ -200,6 +212,7 @@ public class PDriver extends BaseEntity .append("updateTime", getUpdateTime()) .append("state", getState()) .append("numberPlate", getNumberPlate()) + .append("OpenId", getOpenId()) .toString(); } } diff --git a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/domain/POrder.java b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/domain/POrder.java index a2663b6ef..c53e5e017 100644 --- a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/domain/POrder.java +++ b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/domain/POrder.java @@ -98,6 +98,11 @@ public class POrder extends BaseEntity @ApiModelProperty(value = "发起者手机号") private String createrPhone; + @Excel(name = "参与者openID") + @ApiModelProperty(value = "参与者openID") + private String memberOpenId; + + public void setId(Long id) { @@ -247,6 +252,14 @@ public class POrder extends BaseEntity this.createrOpenId = createrOpenId; } + public String getMemberOpenId() { + return memberOpenId; + } + + public void setMemberOpenId(String memberOpenId) { + this.memberOpenId = memberOpenId; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) @@ -269,6 +282,7 @@ public class POrder extends BaseEntity .append("createrName", getCreaterName()) .append("CreaterPhone", getCreaterPhone()) .append("createrOpenId", getCreaterOpenId()) + .append("memberOpenId", getMemberOpenId()) .toString(); } } diff --git a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/PCommonMapper.java b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/PCommonMapper.java index b47d3e92a..978be83ed 100644 --- a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/PCommonMapper.java +++ b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/PCommonMapper.java @@ -47,6 +47,15 @@ public interface PCommonMapper { */ public int updateOrderState(String orderNum); + + /** + * 完成订单-取消拼单 + * @param orderNum + * @return + */ + public int updateOrderStateFinsh(String orderNum); + + /** * 司机取消订单-取消拼单 * @param orderNum diff --git a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/PDriverMapper.java b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/PDriverMapper.java index 1df510fd2..a90caebef 100644 --- a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/PDriverMapper.java +++ b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/PDriverMapper.java @@ -75,4 +75,12 @@ public interface PDriverMapper */ public int agreePDriver(PDriver pDriver); + /** + * 修改司机信息 + * + * @param pDriver 司机信息 + * @return 结果 + */ + public PDriver getDriverInfoByOpenId(String openid); + } diff --git a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/POrderMapper.java b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/POrderMapper.java index 096a9bf17..caccdac9d 100644 --- a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/POrderMapper.java +++ b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/POrderMapper.java @@ -27,6 +27,14 @@ public interface POrderMapper */ public List selectPOrderList(POrder pOrder); + /** + * 查询订单信息列表 + * + * @param pOrder 订单信息 + * @return 订单信息集合 + */ + public List selectPOrderListContentMember(POrder pOrder); + /** * 新增订单信息 * diff --git a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/IPCommonService.java b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/IPCommonService.java index a83b3ba66..106e9a002 100644 --- a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/IPCommonService.java +++ b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/IPCommonService.java @@ -15,6 +15,13 @@ public interface IPCommonService { public AjaxResult cancelOrder(CommonVO commonVO); + /** + * 完成订单 + * @param commonVO + * @return + */ + public AjaxResult finshOrder(CommonVO commonVO); + /** * 审查拼单 * @param commonVO diff --git a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/impl/IPCommonServiceImpl.java b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/impl/IPCommonServiceImpl.java index fc63e5b11..dd2a0d305 100644 --- a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/impl/IPCommonServiceImpl.java +++ b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/impl/IPCommonServiceImpl.java @@ -1,9 +1,6 @@ package com.ruoyi.carpool.service.impl; -import com.ruoyi.carpool.domain.CommonVO; -import com.ruoyi.carpool.domain.PMember; -import com.ruoyi.carpool.domain.POrder; -import com.ruoyi.carpool.domain.PPassenger; +import com.ruoyi.carpool.domain.*; import com.ruoyi.carpool.mapper.*; import com.ruoyi.carpool.service.IPCommonService; import com.ruoyi.common.core.domain.AjaxResult; @@ -34,10 +31,10 @@ public class IPCommonServiceImpl implements IPCommonService { private POrderMapper pOrderMapper; @Autowired - private PMemberMapper pMemberMapper; + private PPassengerMapper pPassengerMapper; @Autowired - private PPassengerMapper pPassengerMapper; + private PDriverMapper pDriverMapper ; @Override @@ -86,6 +83,12 @@ public class IPCommonServiceImpl implements IPCommonService { return AjaxResult.error(); } + @Override + public AjaxResult finshOrder(CommonVO commonVO) { + String orderNum = commonVO.getOrderNum(); + pCommonMapper.updateOrderStateFinsh(orderNum); + return AjaxResult.success(); + } @Override public AjaxResult joinOrderList(CommonVO commonVO) { @@ -119,7 +122,11 @@ public class IPCommonServiceImpl implements IPCommonService { if(StringUtils.isEmpty(openId)) return AjaxResult.error("请求参数错误,请检查入参是否有误!"); PPassenger passemger = pPassengerMapper.selectPPassengerByOpenId(openId); if(passemger != null){ - /*TODO 需要判断当前用户是否申请成为看司机 */ + /*如果已经申请成为看司机则返回diverID*/ + if("1".equals(passemger.getApplyState())){ + PDriver driverInfoByOpenId = pDriverMapper.getDriverInfoByOpenId(openId); + passemger.setCustId(driverInfoByOpenId.getDriverId()); + } return AjaxResult.success(passemger); }else { /*系统没有用户,初始化一个乘客信息*/ diff --git a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/impl/POrderServiceImpl.java b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/impl/POrderServiceImpl.java index 2adbcb680..f2772e005 100644 --- a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/impl/POrderServiceImpl.java +++ b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/impl/POrderServiceImpl.java @@ -1,5 +1,6 @@ package com.ruoyi.carpool.service.impl; +import java.util.ArrayList; import java.util.List; import com.ruoyi.carpool.domain.PPassenger; @@ -49,7 +50,13 @@ public class POrderServiceImpl implements IPOrderService @Override public List selectPOrderList(POrder pOrder) { - return pOrderMapper.selectPOrderList(pOrder); + List pOrders = new ArrayList<>(); + if(StringUtils.isNotEmpty(pOrder.getMemberOpenId())){ + pOrders = pOrderMapper.selectPOrderListContentMember(pOrder); + }else { + pOrderMapper.selectPOrderList(pOrder); + } + return pOrders; } diff --git a/ruiyi-carpool/src/main/resources/mapper/carpool/PCommonMapper.xml b/ruiyi-carpool/src/main/resources/mapper/carpool/PCommonMapper.xml index 05e612dac..fc5aee249 100644 --- a/ruiyi-carpool/src/main/resources/mapper/carpool/PCommonMapper.xml +++ b/ruiyi-carpool/src/main/resources/mapper/carpool/PCommonMapper.xml @@ -28,6 +28,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" UPDATE p_order SET state = '2' WHERE order_num = #{orderNum} + + UPDATE p_order SET state = '1' WHERE order_num = #{orderNum} + + UPDATE p_order SET is_take = '0' , driver_id = '' WHERE order_num = #{orderNum} diff --git a/ruiyi-carpool/src/main/resources/mapper/carpool/PDriverMapper.xml b/ruiyi-carpool/src/main/resources/mapper/carpool/PDriverMapper.xml index 8520c3bf2..bdbb5cc55 100644 --- a/ruiyi-carpool/src/main/resources/mapper/carpool/PDriverMapper.xml +++ b/ruiyi-carpool/src/main/resources/mapper/carpool/PDriverMapper.xml @@ -20,10 +20,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + - select id, driver_id, name, sex, id_card, age, phone,number_plate,city,state, province, country, is_blacklist, create_time, update_time from p_driver + select id, driver_id, name, sex, id_card, age, phone,number_plate,city,state,open_id,province, country, is_blacklist, create_time, update_time from p_driver @@ -145,4 +149,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update p_driver SET state = 1 where driver_id = #{driverId} + + + + \ No newline at end of file diff --git a/ruiyi-carpool/src/main/resources/mapper/carpool/POrderMapper.xml b/ruiyi-carpool/src/main/resources/mapper/carpool/POrderMapper.xml index bf13c6044..f6de1ad57 100644 --- a/ruiyi-carpool/src/main/resources/mapper/carpool/POrderMapper.xml +++ b/ruiyi-carpool/src/main/resources/mapper/carpool/POrderMapper.xml @@ -53,6 +53,45 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and A.creater_phone = #{createrPhone} and A.creater_name = #{createrName} + + + + + + + + + + SELECT A.* , B.open_id memberOpenId, C.NAME AS driver_name FROM p_order A + LEFT JOIN p_order_member B ON A.order_num = B.order_num + LEFT JOIN p_driver C ON A.driver_id = C.driver_id + + + + +