no message
This commit is contained in:
parent
c57c585b37
commit
e0226437ad
|
|
@ -577,20 +577,20 @@ public class OrderController extends BaseController {
|
|||
if (orderMasterService.isAllAssign(om.getId())) {
|
||||
Set<Long> workIds = orderDetailService.selectByOrderMasterId(om.getId()).stream()
|
||||
.map(OrderDetail::getWorkerId).collect(Collectors.toSet());
|
||||
if (workIds.size() == 1 && workIds.contains(om.getWorkerId())) {
|
||||
// 派完单 并且只有自己接单
|
||||
if (workIds.size() > 1 || !workIds.contains(om.getWorkerId())) {
|
||||
// 派完单 并且有其他师傅接单(监控单)
|
||||
om2up.setHasDispatchedAll(1);
|
||||
om2up.setAllSelfAssigned(1);
|
||||
om2up.setOrderStatus(OrderStatus.PLAIN.code());
|
||||
} else {
|
||||
// 派完单 但是只有自己接单
|
||||
om2up.setHasDispatchedAll(1);
|
||||
om2up.setAllSelfAssigned(0);
|
||||
if (request.getIsQuicklyDelivery() != null && request.getIsQuicklyDelivery() == 1) {
|
||||
om2up.setOrderStatus(OrderStatus.SERVER.code());
|
||||
} else {
|
||||
om2up.setOrderStatus(OrderStatus.GOING.code());
|
||||
}
|
||||
} else {
|
||||
// 派完单 但是有其他师傅接单
|
||||
om2up.setHasDispatchedAll(1);
|
||||
om2up.setAllSelfAssigned(0);
|
||||
om2up.setOrderStatus(OrderStatus.PLAIN.code());
|
||||
}
|
||||
} else {
|
||||
// 未派完单
|
||||
|
|
@ -2306,7 +2306,6 @@ public class OrderController extends BaseController {
|
|||
if (accessoryOrderMaster == null) {
|
||||
return AjaxResult.error("主单不存在");
|
||||
}
|
||||
|
||||
// 判断是否为配件订单
|
||||
if (accessoryOrderMaster.getOrderType() == null || accessoryOrderMaster.getOrderType() != 1) {
|
||||
return AjaxResult.error("当前订单不是配件订单,无法生成服务订单");
|
||||
|
|
@ -2317,9 +2316,8 @@ public class OrderController extends BaseController {
|
|||
return AjaxResult.error("该配件订单已经派发过服务订单,不能重复操作");
|
||||
}
|
||||
|
||||
Goods goods = goodsService.selectById(accessoryOrderMaster.getGoodsId());
|
||||
Shop goodsShop = shopService.getShop(goods.getShopId());
|
||||
String phone = goodsShop.getPhone();
|
||||
Worker worker = workerService.selectById(accessoryOrderMaster.getWorkerId());
|
||||
String phone = worker.getPhone();
|
||||
|
||||
// 获取服务店铺信息
|
||||
Shop serviceShop = shopService.getShop(serviceShopId);
|
||||
|
|
@ -2327,6 +2325,9 @@ public class OrderController extends BaseController {
|
|||
return AjaxResult.error("服务店铺不存在");
|
||||
}
|
||||
|
||||
accessoryOrderMaster.setServiceShopId(serviceShopId);
|
||||
orderMasterService.updateOrderMaster(accessoryOrderMaster);
|
||||
|
||||
// 获取服务店铺的师傅信息(创建店铺的师傅)
|
||||
Worker serviceWorker = workerService.selectById(serviceShop.getWorkerId());
|
||||
if (serviceWorker == null) {
|
||||
|
|
|
|||
|
|
@ -1008,11 +1008,20 @@ public class OrderMasterController extends BaseController {
|
|||
// orderMaster.setOrderStatuses();
|
||||
// }
|
||||
List<OrderMaster> list = orderMasterService.selectOrderMasterList(orderMaster);
|
||||
|
||||
// 处理orderType为0的情况,额外查询原师傅ID相关的订单并添加到list中
|
||||
OrderMaster origiOrderMaster = new OrderMaster();
|
||||
if (orderMaster.getOrderType() == 0) {
|
||||
if (orderMaster.getOrderType() == 0 && orderMaster.getWorkerId() != null
|
||||
&& orderMaster.getWorkerId() != -1 && orderMaster.getIsMonitoredOrder() == true) {
|
||||
origiOrderMaster.setOriginalWorkerId(orderMaster.getWorkerId());
|
||||
List<OrderMaster> originalList = orderMasterService.selectOrderMasterList(origiOrderMaster);
|
||||
list.addAll(originalList);
|
||||
list.sort((o1, o2) -> {
|
||||
if (o1.getUpdateTimeAlias() == null && o2.getUpdateTimeAlias() == null) return 0;
|
||||
if (o1.getUpdateTimeAlias() == null) return 1;
|
||||
if (o2.getUpdateTimeAlias() == null) return -1;
|
||||
return o2.getUpdateTimeAlias().compareTo(o1.getUpdateTimeAlias());
|
||||
});
|
||||
}
|
||||
|
||||
if (CollectionUtils.isEmpty(list)) {
|
||||
|
|
@ -1075,17 +1084,17 @@ public class OrderMasterController extends BaseController {
|
|||
// 商品规格及信息
|
||||
List<OrderGoods> orderStandardList = orderGoodsService.selectByOrderMasterId(master.getId());
|
||||
Goods goods = new Goods();
|
||||
if (orderStandardList.size() > 0) {
|
||||
// 商品信息
|
||||
GoodsStandard goodsStandard = goodsStandardService
|
||||
.selectById(orderStandardList.get(0).getGoodsStandardId());
|
||||
if (goodsStandard != null) {
|
||||
goods = goodsService.selectById(goodsStandard.getGoodsId());
|
||||
}
|
||||
} else {
|
||||
// 优化4:使用预查询的商品信息
|
||||
goods = goodsMap.getOrDefault(master.getGoodsId(), new Goods());
|
||||
}
|
||||
// if (orderStandardList.size() > 0) {
|
||||
// // 商品信息
|
||||
// GoodsStandard goodsStandard = goodsStandardService
|
||||
// .selectById(orderStandardList.get(0).getGoodsStandardId());
|
||||
// if (goodsStandard != null) {
|
||||
// goods = goodsService.selectById(goodsStandard.getGoodsId());
|
||||
// }
|
||||
// } else {
|
||||
// 优化4:使用预查询的商品信息
|
||||
goods = goodsMap.getOrDefault(master.getGoodsId(), new Goods());
|
||||
// }
|
||||
|
||||
// 填充商品三级类目
|
||||
if (goods.getDeptGoodsCategoryId() != null) {
|
||||
|
|
@ -1096,6 +1105,8 @@ public class OrderMasterController extends BaseController {
|
|||
.selectOneByGoodsCategoryId(goods.getDeptGoodsCategoryId());
|
||||
if (deptGoodsCategory != null) {
|
||||
categoryId = deptGoodsCategory.getGoodsCategoryId();
|
||||
} else {
|
||||
categoryId = goods.getDeptGoodsCategoryId();
|
||||
}
|
||||
} else {
|
||||
DeptGoodsCategory deptGoodsCategory = deptGoodsCategoryService.get(goods.getDeptGoodsCategoryId());
|
||||
|
|
@ -1917,6 +1928,7 @@ public class OrderMasterController extends BaseController {
|
|||
Shop shop = shopService.getShop(goods.getShopId());
|
||||
Shop serviceShop = shopService.getShop(orderMaster.getServiceShopId());
|
||||
shop = calculateShopDistance(orderMaster, shop);
|
||||
serviceShop = calculateShopDistance(orderMaster, serviceShop);
|
||||
// 编辑返回属性
|
||||
orderListResponse.setDeliveryType(orderMaster.getDeliveryType());
|
||||
orderListResponse.setDeliveryRemark(orderMaster.getDeliveryRemark());
|
||||
|
|
@ -2427,7 +2439,7 @@ public class OrderMasterController extends BaseController {
|
|||
|
||||
/**
|
||||
* 服务订单退单时,退还服务金额给商品订单
|
||||
*
|
||||
*
|
||||
* @param goodsOrderMasterId 商品订单主单ID
|
||||
* @param serverGoodsMoney 需要退还的服务金额
|
||||
*/
|
||||
|
|
@ -2640,7 +2652,7 @@ public class OrderMasterController extends BaseController {
|
|||
|
||||
/**
|
||||
* 计算商家与主单地址之间的距离
|
||||
*
|
||||
*
|
||||
* @param orderMaster 主单信息
|
||||
* @param shop 商家信息
|
||||
* @return 带有距离信息的商家对象
|
||||
|
|
@ -2648,7 +2660,7 @@ public class OrderMasterController extends BaseController {
|
|||
private Shop calculateShopDistance(OrderMaster orderMaster, Shop shop) {
|
||||
try {
|
||||
// 直接使用主单地址获取经纬度
|
||||
logger.info("使用主单地址获取经纬度");
|
||||
logger.info("使用主单地址获取经纬度,主单id{}", orderMaster.getId());
|
||||
|
||||
StringBuilder fullAddress = new StringBuilder();
|
||||
|
||||
|
|
|
|||
|
|
@ -342,4 +342,15 @@ public class OrderMaster extends BaseEntity {
|
|||
*/
|
||||
@Excel(name = "分账倒计时时长", cellType = Excel.ColumnType.NUMERIC)
|
||||
private Integer shareAccountCountdownDuration;
|
||||
|
||||
/**
|
||||
* 是否包含原始工人ID查询(用于orderType=0的情况)
|
||||
*/
|
||||
private Boolean includeOriginalWorker;
|
||||
|
||||
/**
|
||||
* 更新时间别名字段(用于SQL查询中的update_time别名映射)
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date updateTimeAlias;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -47,6 +47,14 @@ public interface OrderDetailMapper {
|
|||
*/
|
||||
List<OrderDetail> selectByOrderMasterId(@Param("orderMasterId") Long orderMasterId);
|
||||
|
||||
/**
|
||||
* 根据主订单ID集合批量查询详细订单
|
||||
*
|
||||
* @param orderMasterIds 主订单ID集合
|
||||
* @return 详细订单集合
|
||||
*/
|
||||
List<OrderDetail> selectByOrderMasterIds(@Param("orderMasterIds") List<Long> orderMasterIds);
|
||||
|
||||
/**
|
||||
* 批量删除细单表信息
|
||||
*
|
||||
|
|
|
|||
|
|
@ -35,6 +35,14 @@ public interface OrderGoodsMapper {
|
|||
|
||||
List<OrderGoods> selectByOrderId(@Param("orderId") Long orderId);
|
||||
|
||||
/**
|
||||
* 根据主订单ID集合批量查询订单商品
|
||||
*
|
||||
* @param orderMasterIds 主订单ID集合
|
||||
* @return 订单商品集合
|
||||
*/
|
||||
List<OrderGoods> selectByOrderMasterIds(@Param("orderMasterIds") List<Long> orderMasterIds);
|
||||
|
||||
List<OrderGoods> selectByOrderDetailId(@Param("orderDetailId") Long orderDetailId);
|
||||
|
||||
int deleteByOrderDetailId(@Param("orderDetailId") Long orderDetailId);
|
||||
|
|
|
|||
|
|
@ -48,6 +48,13 @@ public interface OrderDetailService {
|
|||
*/
|
||||
List<OrderDetail> selectByOrderMasterId(Long orderMasterId);
|
||||
|
||||
/**
|
||||
* 根据主订单ID集合批量查询详细订单
|
||||
* @param orderMasterIds 主订单ID集合
|
||||
* @return 详细订单集合
|
||||
*/
|
||||
List<OrderDetail> selectByOrderMasterIds(List<Long> orderMasterIds);
|
||||
|
||||
/**
|
||||
* @param ids 详细订单ids
|
||||
* @return 删除结果
|
||||
|
|
|
|||
|
|
@ -19,6 +19,14 @@ public interface OrderGoodsService {
|
|||
|
||||
List<OrderGoods> selectByOrderMasterId(Long orderMasterId);
|
||||
|
||||
/**
|
||||
* 根据主订单ID集合批量查询订单商品
|
||||
*
|
||||
* @param orderMasterIds 主订单ID集合
|
||||
* @return 订单商品集合
|
||||
*/
|
||||
List<OrderGoods> selectByOrderMasterIds(List<Long> orderMasterIds);
|
||||
|
||||
List<OrderGoods> selectByOrderDetailId(Long orderDetailId);
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -274,6 +274,14 @@ public class OrderDetailServiceImpl implements OrderDetailService {
|
|||
return orderDetailMapper.selectByOrderMasterId(orderMasterId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<OrderDetail> selectByOrderMasterIds(List<Long> orderMasterIds) {
|
||||
if (CollectionUtils.isEmpty(orderMasterIds)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
return orderDetailMapper.selectByOrderMasterIds(orderMasterIds);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int deleteOrderDetailByIds(String ids) {
|
||||
Long[] orderDetailIds = Convert.toLongArray(ids);
|
||||
|
|
|
|||
|
|
@ -30,6 +30,14 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
|
|||
return orderGoodsMapper.selectByOrderId(orderMasterId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<OrderGoods> selectByOrderMasterIds(List<Long> orderMasterIds) {
|
||||
if (orderMasterIds == null || orderMasterIds.isEmpty()) {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
return orderGoodsMapper.selectByOrderMasterIds(orderMasterIds);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<OrderGoods> selectByOrderDetailId(Long orderDetailId) {
|
||||
return orderGoodsMapper.selectByOrderDetailId(orderDetailId);
|
||||
|
|
|
|||
|
|
@ -596,4 +596,12 @@
|
|||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<select id="selectByOrderMasterIds" resultMap="OrderDetailResult">
|
||||
<include refid="selectOrderDetail"/>
|
||||
WHERE order_master_id IN
|
||||
<foreach collection="orderMasterIds" item="orderMasterId" open="(" separator="," close=")">
|
||||
#{orderMasterId}
|
||||
</foreach>
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -133,4 +133,16 @@
|
|||
</where>
|
||||
</select>
|
||||
|
||||
<select id="selectByOrderMasterIds" resultMap="OrderGoodsResult">
|
||||
SELECT og.order_goods_id, og.order_id, og.order_detail_id, og.goods_standard_id, og.goods_name,
|
||||
og.goods_num, og.server_goods_num, og.finish_time, og.create_by, og.create_time,
|
||||
og.update_by, og.update_time, og.remark
|
||||
FROM order_goods og
|
||||
INNER JOIN order_detail od ON og.order_detail_id = od.id
|
||||
WHERE od.order_master_id IN
|
||||
<foreach collection="orderMasterIds" item="orderMasterId" open="(" separator="," close=")">
|
||||
#{orderMasterId}
|
||||
</foreach>
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<result property="createTime" column="create_time"/>
|
||||
<result property="updateBy" column="update_by"/>
|
||||
<result property="updateTime" column="update_time"/>
|
||||
<result property="updateTimeAlias" column="update_time_alias"/>
|
||||
<result property="remark" column="remark"/>
|
||||
<result property="afterServiceStatus" column="after_service_status"/>
|
||||
<result property="goodsId" column="goods_id"/>
|
||||
|
|
@ -99,6 +100,7 @@
|
|||
create_by,
|
||||
create_time,
|
||||
update_time,
|
||||
update_time as update_time_alias,
|
||||
remark,
|
||||
all_self_assigned,
|
||||
goods_id,
|
||||
|
|
@ -166,6 +168,7 @@
|
|||
om.create_by,
|
||||
om.create_time,
|
||||
om.update_time,
|
||||
om.update_time as update_time_alias,
|
||||
om.remark,
|
||||
om.all_self_assigned,
|
||||
om.goods_id,
|
||||
|
|
@ -295,6 +298,9 @@
|
|||
<if test="originalWorkerId != null and originalWorkerId > 0">
|
||||
AND om.original_worker_id = #{originalWorkerId}
|
||||
</if>
|
||||
<if test="includeOriginalWorker != null and includeOriginalWorker == true and workerId != null and workerId > 0">
|
||||
AND (om.worker_id = #{workerId} OR om.original_worker_id = #{workerId})
|
||||
</if>
|
||||
<if test="payMode != null">
|
||||
AND om.pay_mode = #{payMode}
|
||||
</if>
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import com.ghy.payment.domain.FinancialChangeRecord;
|
|||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* @author clunt
|
||||
|
|
@ -64,6 +65,14 @@ public interface FinancialChangeRecordMapper {
|
|||
|
||||
List<FinancialChangeRecord> selectByMasterId(@Param("orderMasterId") Long orderMasterId);
|
||||
|
||||
/**
|
||||
* 根据主订单ID集合批量查询改价记录
|
||||
*
|
||||
* @param orderMasterIds 主订单ID集合
|
||||
* @return 改价记录集合
|
||||
*/
|
||||
List<FinancialChangeRecord> selectByMasterIds(@Param("orderMasterIds") Set<Long> orderMasterIds);
|
||||
|
||||
int updatePayStatus(@Param("id") Long id, @Param("payStatus") Integer payStatus);
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -67,6 +67,14 @@ public interface FinancialChangeRecordService {
|
|||
|
||||
List<FinancialChangeRecord> selectByMasterId(@Param("orderMasterId") Long orderMasterId);
|
||||
|
||||
/**
|
||||
* 根据主订单ID集合批量查询改价记录
|
||||
*
|
||||
* @param orderMasterIds 主订单ID集合
|
||||
* @return 改价记录集合
|
||||
*/
|
||||
List<FinancialChangeRecord> selectByMasterIds(Set<Long> orderMasterIds);
|
||||
|
||||
int updatePayStatus(Long id, Integer payStatus);
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -126,6 +126,14 @@ public class FinancialChangeRecordServiceImpl implements FinancialChangeRecordSe
|
|||
return financialChangeRecordMapper.selectByMasterId(orderMasterId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<FinancialChangeRecord> selectByMasterIds(Set<Long> orderMasterIds) {
|
||||
if (CollectionUtils.isEmpty(orderMasterIds)) {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
return financialChangeRecordMapper.selectByMasterIds(orderMasterIds);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int updatePayStatus(Long id, Integer payStatus) {
|
||||
return financialChangeRecordMapper.updatePayStatus(id, payStatus);
|
||||
|
|
|
|||
|
|
@ -164,4 +164,11 @@
|
|||
update_time = NOW()
|
||||
WHERE id = #{id}
|
||||
</update>
|
||||
|
||||
<select id="selectByMasterIds" resultMap="FinancialChangeRecordResult">
|
||||
<include refid="selectFinancialChangeRecordVo"/> WHERE order_master_id IN
|
||||
<foreach collection="orderMasterIds" item="orderMasterId" open="(" separator="," close=")">
|
||||
#{orderMasterId}
|
||||
</foreach>
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
Loading…
Reference in New Issue