扣款罚金区分公司
This commit is contained in:
parent
9982b95211
commit
24a5b2d44f
|
|
@ -463,7 +463,7 @@ public class OrderDetailServiceImpl implements OrderDetailService {
|
||||||
addPrice = fcRecord.getChangeMoney();
|
addPrice = fcRecord.getChangeMoney();
|
||||||
BigDecimal fineMoney = BigDecimal.ZERO;
|
BigDecimal fineMoney = BigDecimal.ZERO;
|
||||||
// 查询师傅的超时扣款记录
|
// 查询师傅的超时扣款记录
|
||||||
List<OrderTimeoutRecord> fineRecords = orderFineRecordMapper.selectUnFine(orderDetail.getWorkerId());
|
List<OrderTimeoutRecord> fineRecords = orderFineRecordMapper.selectUnFine(orderDetail.getWorkerId(), orderDetail.getDeptId());
|
||||||
ArrayList<Long> fineIds = new ArrayList<>();
|
ArrayList<Long> fineIds = new ArrayList<>();
|
||||||
for (OrderTimeoutRecord fineRecord : fineRecords) {
|
for (OrderTimeoutRecord fineRecord : fineRecords) {
|
||||||
// 抵扣超时罚金 这里的罚金是按创建时间升序排列的 优先抵扣最早的罚金
|
// 抵扣超时罚金 这里的罚金是按创建时间升序排列的 优先抵扣最早的罚金
|
||||||
|
|
@ -567,7 +567,7 @@ public class OrderDetailServiceImpl implements OrderDetailService {
|
||||||
logger.info("子财务单[{}] 应支付金额={} 不需要分账", financialDetail.getId(), payMoney);
|
logger.info("子财务单[{}] 应支付金额={} 不需要分账", financialDetail.getId(), payMoney);
|
||||||
} else {
|
} else {
|
||||||
// 查询师傅的超时扣款记录
|
// 查询师傅的超时扣款记录
|
||||||
List<OrderTimeoutRecord> fineRecords = orderFineRecordMapper.selectUnFine(orderDetail.getWorkerId());
|
List<OrderTimeoutRecord> fineRecords = orderFineRecordMapper.selectUnFine(orderDetail.getWorkerId(), orderDetail.getDeptId());
|
||||||
// 超时罚金
|
// 超时罚金
|
||||||
BigDecimal fineMoney = BigDecimal.ZERO;
|
BigDecimal fineMoney = BigDecimal.ZERO;
|
||||||
ArrayList<Long> fineIds = new ArrayList<>();
|
ArrayList<Long> fineIds = new ArrayList<>();
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,7 @@ public class OrderTimeoutRecord {
|
||||||
*/
|
*/
|
||||||
private Long orderDetailId;
|
private Long orderDetailId;
|
||||||
private Long workerId;
|
private Long workerId;
|
||||||
|
private Long deptId;
|
||||||
|
|
||||||
private List<Long> orderDetailIds;
|
private List<Long> orderDetailIds;
|
||||||
|
|
||||||
|
|
@ -48,9 +49,10 @@ public class OrderTimeoutRecord {
|
||||||
public OrderTimeoutRecord() {
|
public OrderTimeoutRecord() {
|
||||||
}
|
}
|
||||||
|
|
||||||
public OrderTimeoutRecord(Long orderDetailId, Long workerId, Integer orderStatus) {
|
public OrderTimeoutRecord(Long orderDetailId, Long workerId, Long deptId, Integer orderStatus) {
|
||||||
this.orderDetailId = orderDetailId;
|
this.orderDetailId = orderDetailId;
|
||||||
this.workerId = workerId;
|
this.workerId = workerId;
|
||||||
|
this.deptId = deptId;
|
||||||
this.orderStatus = orderStatus;
|
this.orderStatus = orderStatus;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,8 @@ public interface OrderFineRecordMapper {
|
||||||
* 查询某师傅的未扣款的罚金
|
* 查询某师傅的未扣款的罚金
|
||||||
*
|
*
|
||||||
* @param workerId 师傅id
|
* @param workerId 师傅id
|
||||||
|
* @param deptId 公司id
|
||||||
*/
|
*/
|
||||||
List<OrderTimeoutRecord> selectUnFine(@Param("workerId") Long workerId);
|
List<OrderTimeoutRecord> selectUnFine(@Param("workerId") Long workerId, @Param("deptId") Long deptId);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@
|
||||||
<id property="id" column="id"/>
|
<id property="id" column="id"/>
|
||||||
<result property="orderDetailId" column="order_detail_id"/>
|
<result property="orderDetailId" column="order_detail_id"/>
|
||||||
<result property="workerId" column="worker_id"/>
|
<result property="workerId" column="worker_id"/>
|
||||||
|
<result property="deptId" column="dept_id"/>
|
||||||
<result property="fineStatus" column="fine_status"/>
|
<result property="fineStatus" column="fine_status"/>
|
||||||
<result property="orderStatus" column="order_status"/>
|
<result property="orderStatus" column="order_status"/>
|
||||||
<result property="payMoney" column="pay_money"/>
|
<result property="payMoney" column="pay_money"/>
|
||||||
|
|
@ -15,7 +16,7 @@
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<sql id="selectOrderFineRecord">
|
<sql id="selectOrderFineRecord">
|
||||||
SELECT id, order_detail_id, worker_id, fine_status, order_status, pay_money, create_time
|
SELECT id, order_detail_id, worker_id, dept_id, fine_status, order_status, pay_money, create_time
|
||||||
FROM order_timeout_record
|
FROM order_timeout_record
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
|
|
@ -49,13 +50,14 @@
|
||||||
<select id="selectUnFine" resultMap="OrderFineRecordResult">
|
<select id="selectUnFine" resultMap="OrderFineRecordResult">
|
||||||
<include refid="selectOrderFineRecord"/>
|
<include refid="selectOrderFineRecord"/>
|
||||||
WHERE worker_id = #{workerId}
|
WHERE worker_id = #{workerId}
|
||||||
|
AND dept_id = #{deptId}
|
||||||
AND fine_status = 0
|
AND fine_status = 0
|
||||||
ORDER BY create_time
|
ORDER BY create_time
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<insert id="insert" parameterType="com.ghy.payment.domain.OrderTimeoutRecord" useGeneratedKeys="true" keyProperty="id">
|
<insert id="insert" parameterType="com.ghy.payment.domain.OrderTimeoutRecord" useGeneratedKeys="true" keyProperty="id">
|
||||||
INSERT INTO order_timeout_record (order_detail_id, worker_id, order_status, pay_money)
|
INSERT INTO order_timeout_record (order_detail_id, worker_id, dept_id, order_status, pay_money)
|
||||||
VALUES (#{orderDetailId}, #{workerId}, #{orderStatus}, #{payMoney})
|
VALUES (#{orderDetailId}, #{workerId}, #{deptId}, #{orderStatus}, #{payMoney})
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
<!-- <update id="update">-->
|
<!-- <update id="update">-->
|
||||||
|
|
|
||||||
|
|
@ -86,7 +86,7 @@ public class OrderServiceImpl implements OrderService {
|
||||||
Date overTime = getOverTime(order.getExpectTimeStart(), 4 * 60 * 60 * 1000);
|
Date overTime = getOverTime(order.getExpectTimeStart(), 4 * 60 * 60 * 1000);
|
||||||
if (overTime.before(now)) {
|
if (overTime.before(now)) {
|
||||||
log.info("订单[{}]服务中状态超时4小时 扣款", order.getId());
|
log.info("订单[{}]服务中状态超时4小时 扣款", order.getId());
|
||||||
OrderTimeoutRecord record = new OrderTimeoutRecord(order.getId(), order.getWorkerId(), order.getOrderStatus());
|
OrderTimeoutRecord record = new OrderTimeoutRecord(order.getId(), order.getWorkerId(), order.getDeptId(), order.getOrderStatus());
|
||||||
record.setPayMoney(getFineMoney(order));
|
record.setPayMoney(getFineMoney(order));
|
||||||
record.setFineStatus(0);
|
record.setFineStatus(0);
|
||||||
orderFineRecordMapper.insert(record);
|
orderFineRecordMapper.insert(record);
|
||||||
|
|
@ -115,7 +115,7 @@ public class OrderServiceImpl implements OrderService {
|
||||||
Date overTime = getOverTime(order.getUpdateTime(), 4 * 60 * 60 * 1000);
|
Date overTime = getOverTime(order.getUpdateTime(), 4 * 60 * 60 * 1000);
|
||||||
if (overTime.before(now)) {
|
if (overTime.before(now)) {
|
||||||
log.info("订单[{}]超时4h 扣款", order.getId());
|
log.info("订单[{}]超时4h 扣款", order.getId());
|
||||||
OrderTimeoutRecord record = new OrderTimeoutRecord(order.getId(), order.getWorkerId(), order.getOrderStatus());
|
OrderTimeoutRecord record = new OrderTimeoutRecord(order.getId(), order.getWorkerId(), order.getDeptId(), order.getOrderStatus());
|
||||||
record.setPayMoney(getFineMoney(order));
|
record.setPayMoney(getFineMoney(order));
|
||||||
record.setFineStatus(0);
|
record.setFineStatus(0);
|
||||||
orderFineRecordMapper.insert(record);
|
orderFineRecordMapper.insert(record);
|
||||||
|
|
@ -128,7 +128,7 @@ public class OrderServiceImpl implements OrderService {
|
||||||
Date overTime = getOverTime(orderTime, 6 * 60 * 60 * 1000);
|
Date overTime = getOverTime(orderTime, 6 * 60 * 60 * 1000);
|
||||||
if (overTime.before(now)) {
|
if (overTime.before(now)) {
|
||||||
log.info("订单[{}]超时6h 再次扣款", order.getId());
|
log.info("订单[{}]超时6h 再次扣款", order.getId());
|
||||||
OrderTimeoutRecord record = new OrderTimeoutRecord(order.getId(), order.getWorkerId(), order.getOrderStatus());
|
OrderTimeoutRecord record = new OrderTimeoutRecord(order.getId(), order.getWorkerId(), order.getDeptId(), order.getOrderStatus());
|
||||||
record.setPayMoney(getFineMoney(order));
|
record.setPayMoney(getFineMoney(order));
|
||||||
record.setFineStatus(0);
|
record.setFineStatus(0);
|
||||||
orderFineRecordMapper.insert(record);
|
orderFineRecordMapper.insert(record);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue