Commit f294c76a by huluobin

update

parent 350d77b8
...@@ -755,6 +755,10 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -755,6 +755,10 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
/*用户提交 更新预约校验*/ /*用户提交 更新预约校验*/
if (SessionUtils.isSourceFromCustomer()) { if (SessionUtils.isSourceFromCustomer()) {
if (ListUtil.isEmpty(scheduleManage.getListScheduleServer())) {
throw new RRException("校验失败,请重试");
}
/*1、校验同类型服务一天只能预约一次*/ /*1、校验同类型服务一天只能预约一次*/
scheduleManage.getListScheduleServer().forEach(scheduleServe -> { scheduleManage.getListScheduleServer().forEach(scheduleServe -> {
if (scheduleServe.getMainServeId() == null) { if (scheduleServe.getMainServeId() == null) {
......
...@@ -3,7 +3,11 @@ package com.gogirl.infrastructure.mapper.store.oa; ...@@ -3,7 +3,11 @@ package com.gogirl.infrastructure.mapper.store.oa;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.gogirl.domain.store.oa.OvertimeRecord; import com.gogirl.domain.store.oa.OvertimeRecord;
import com.gogirl.domain.store.oa.TakeLeaveEvent;
import java.util.List;
public interface OvertimeRecordMapper extends BaseMapper<OvertimeRecord> { public interface OvertimeRecordMapper extends BaseMapper<OvertimeRecord> {
List<TakeLeaveEvent> plusOverTimeRecord();
} }
package com.gogirl.infrastructure.mapper.store.oa; package com.gogirl.infrastructure.mapper.store.oa;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.gogirl.domain.store.oa.OvertimeRecord;
import com.gogirl.domain.store.oa.TakeLeaveEvent; import com.gogirl.domain.store.oa.TakeLeaveEvent;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -17,4 +18,10 @@ public interface TakeLeaveEventMapper extends BaseMapper<TakeLeaveEvent> { ...@@ -17,4 +18,10 @@ public interface TakeLeaveEventMapper extends BaseMapper<TakeLeaveEvent> {
* @return * @return
*/ */
List<TakeLeaveEvent> appliedList(@Param("applyTechnicianId") Integer applyTechnicianId, @Param("startTime") long startTime, @Param("endTime") long endTime); List<TakeLeaveEvent> appliedList(@Param("applyTechnicianId") Integer applyTechnicianId, @Param("startTime") long startTime, @Param("endTime") long endTime);
/**
*
* @return
*/
List<OvertimeRecord> takeLeaveId();
} }
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.gogirl.infrastructure.mapper.store.oa.OvertimeRecordMapper">
<select id="plusOverTimeRecord" resultType="com.gogirl.domain.store.oa.TakeLeaveEvent">
SELECT t1.*
from take_leave_event t1
LEFT JOIN over_time_record t2
on t1.apply_technician_id = t2.technician_id and t1.start_time = t2.start_time and
t1.end_time = t2.end_time
where t1.`status` = 2
and t1.type = 1
and FROM_UNIXTIME(t1.create_time / 1000) > '2020-05-05'
and t2.id is null
</select>
</mapper>
\ No newline at end of file
...@@ -11,5 +11,14 @@ ...@@ -11,5 +11,14 @@
and apply_technician_id = #{applyTechnicianId} and apply_technician_id = #{applyTechnicianId}
and `status` != 3 and `status` != 3
</select> </select>
<select id="takeLeaveId" resultType="com.gogirl.domain.store.oa.OvertimeRecord">
SELECT t1.*
from over_time_record t1
LEFT JOIN take_leave_event t2 on t1.start_time = t2.start_time and t1.end_time = t2.end_time and
t1.total_time_length = t2.time_length and
t1.technician_id = t2.apply_technician_id
where t1.take_leave_event_id is null
GROUP BY t1.id
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -20,6 +20,8 @@ import com.gogirl.domain.product.purchase.PurchaseStockRecord; ...@@ -20,6 +20,8 @@ import com.gogirl.domain.product.purchase.PurchaseStockRecord;
import com.gogirl.domain.store.complaint.ComplaintDetailed; import com.gogirl.domain.store.complaint.ComplaintDetailed;
import com.gogirl.domain.store.complaint.ComplaintDetailedTechnician; import com.gogirl.domain.store.complaint.ComplaintDetailedTechnician;
import com.gogirl.domain.store.complaint.ComplaintMain; import com.gogirl.domain.store.complaint.ComplaintMain;
import com.gogirl.domain.store.oa.OvertimeRecord;
import com.gogirl.domain.store.oa.TakeLeaveEvent;
import com.gogirl.domain.store.store.StoreTechnician; import com.gogirl.domain.store.store.StoreTechnician;
import com.gogirl.domain.user.customer.Customer; import com.gogirl.domain.user.customer.Customer;
import com.gogirl.domain.user.customer.CustomerBalance; import com.gogirl.domain.user.customer.CustomerBalance;
...@@ -40,6 +42,8 @@ import com.gogirl.infrastructure.mapper.product.purchase.PurchaseStockRecordMapp ...@@ -40,6 +42,8 @@ import com.gogirl.infrastructure.mapper.product.purchase.PurchaseStockRecordMapp
import com.gogirl.infrastructure.mapper.store.complaint.ComplaintDetailedMapper; import com.gogirl.infrastructure.mapper.store.complaint.ComplaintDetailedMapper;
import com.gogirl.infrastructure.mapper.store.complaint.ComplaintDetailedTechnicianMapper; import com.gogirl.infrastructure.mapper.store.complaint.ComplaintDetailedTechnicianMapper;
import com.gogirl.infrastructure.mapper.store.complaint.ComplaintMainMapper; import com.gogirl.infrastructure.mapper.store.complaint.ComplaintMainMapper;
import com.gogirl.infrastructure.mapper.store.oa.OvertimeRecordMapper;
import com.gogirl.infrastructure.mapper.store.oa.TakeLeaveEventMapper;
import com.gogirl.infrastructure.mapper.user.customer.CustomerBalanceMapper; import com.gogirl.infrastructure.mapper.user.customer.CustomerBalanceMapper;
import com.gogirl.infrastructure.mapper.user.customer.CustomerBalanceRecordMapper; import com.gogirl.infrastructure.mapper.user.customer.CustomerBalanceRecordMapper;
import com.gogirl.infrastructure.mapper.user.customer.CustomerMapper; import com.gogirl.infrastructure.mapper.user.customer.CustomerMapper;
...@@ -566,4 +570,66 @@ public class Test { ...@@ -566,4 +570,66 @@ public class Test {
} }
@Resource
OvertimeRecordMapper overtimeRecordMapper;
@org.junit.Test
public void plusOverTimeRecord() {
List<TakeLeaveEvent> takeLeaveEventList = overtimeRecordMapper.plusOverTimeRecord();
takeLeaveEventList.forEach(takeLeaveEvent -> {
OvertimeRecord overtimeRecord = OvertimeRecord.builder()
.createTime(System.currentTimeMillis())
.startTime(takeLeaveEvent.getStartTime())
.endTime(takeLeaveEvent.getEndTime())
.lastUpdateTime(System.currentTimeMillis())
.leftTimeLength(takeLeaveEvent.getTimeLength())
.status(1)
.totalTimeLength(takeLeaveEvent.getTimeLength())
.technicianId(takeLeaveEvent.getApplyTechnicianId())
.takeLeaveEventId(takeLeaveEvent.getId())
.build();
overtimeRecordMapper.insert(overtimeRecord);
});
}
@Resource
TakeLeaveEventMapper takeLeaveEventMapper;
@org.junit.Test
public void takeLeaveId() {
List<OvertimeRecord> overtimeRecordList = takeLeaveEventMapper.takeLeaveId();
overtimeRecordList.forEach(overtimeRecord -> {
List<TakeLeaveEvent> takeLeaveEventList = takeLeaveEventMapper.selectList(
new LambdaQueryWrapper<TakeLeaveEvent>()
.eq(TakeLeaveEvent::getStartTime, overtimeRecord.getStartTime())
.eq(TakeLeaveEvent::getEndTime, overtimeRecord.getEndTime())
.eq(TakeLeaveEvent::getApplyTechnicianId, overtimeRecord.getTechnicianId())
.eq(TakeLeaveEvent::getTimeLength, overtimeRecord.getTotalTimeLength())
);
List<OvertimeRecord> overtimeRecordList1 = overtimeRecordMapper.selectList(
new LambdaQueryWrapper<OvertimeRecord>()
.eq(OvertimeRecord::getStartTime, overtimeRecord.getStartTime())
.eq(OvertimeRecord::getEndTime, overtimeRecord.getEndTime())
.eq(OvertimeRecord::getTechnicianId, overtimeRecord.getTechnicianId())
.eq(OvertimeRecord::getTotalTimeLength, overtimeRecord.getTotalTimeLength())
);
Queue<OvertimeRecord> overTimeRecordQueue = new LinkedList<>(overtimeRecordList1);
if (takeLeaveEventList.size() == overTimeRecordQueue.size()) {
takeLeaveEventList.forEach(takeLeaveEvent -> {
OvertimeRecord overtimeRecord1 = overTimeRecordQueue.poll();
overtimeRecord1.setTakeLeaveEventId(takeLeaveEvent.getId());
overtimeRecordMapper.updateById(overtimeRecord1);
});
}
});
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment