package com.zy.asrs.task.handler;
|
|
import com.baomidou.mybatisplus.mapper.EntityWrapper;
|
import com.zy.asrs.entity.WrkDetl;
|
import com.zy.asrs.entity.WrkMast;
|
import com.zy.asrs.service.WrkDetlLogService;
|
import com.zy.asrs.service.WrkDetlService;
|
import com.zy.asrs.service.WrkMastLogService;
|
import com.zy.asrs.service.WrkMastService;
|
import com.zy.asrs.task.AbstractHandler;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.interceptor.TransactionAspectSupport;
|
|
/**
|
* Created by vincent on 2020/7/6
|
*/
|
@Service
|
public class WorkLogHandler extends AbstractHandler {
|
|
@Autowired
|
private WrkMastService wrkMastService;
|
@Autowired
|
private WrkMastLogService wrkMastLogService;
|
@Autowired
|
private WrkDetlService wrkDetlService;
|
@Autowired
|
private WrkDetlLogService wrkDetlLogService;
|
|
@Override
|
@Transactional
|
public boolean start() {
|
try {
|
WrkMast wrkMast = wrkMastService.selectToBeHistoryData();
|
if (null == wrkMast) {
|
return true;
|
}
|
// 保存工作主档历史档
|
if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
|
exceptionHandle(""); // todo
|
}
|
// 删除工作主档
|
if (wrkMastService.deleteById(wrkMast)) {
|
exceptionHandle(""); // todo
|
}
|
// 保存工作明细档历史档
|
if (!wrkDetlLogService.save(wrkMast.getWrkNo())) {
|
exceptionHandle(""); // todo
|
}
|
// 删除工作明细档
|
if (!wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()))) {
|
exceptionHandle(""); // todo
|
}
|
} catch (Exception e) {
|
e.printStackTrace();
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
return false;
|
}
|
return true;
|
}
|
|
}
|