|
|
|
@ -78,9 +78,10 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
|
|
|
|
|
private EquSpareApplyMapper equSpareApplyMapper;
|
|
|
|
|
@Autowired
|
|
|
|
|
private SparePartsLedgerMapper sparePartsLedgerMapper;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 根据点检计划生成点检任务
|
|
|
|
|
* **/
|
|
|
|
|
**/
|
|
|
|
|
@Override
|
|
|
|
|
public AjaxResult createSpotCheckPlanTask() {
|
|
|
|
|
|
|
|
|
@ -111,7 +112,7 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 根据巡检计划生成点检任务
|
|
|
|
|
* **/
|
|
|
|
|
**/
|
|
|
|
|
@Override
|
|
|
|
|
public AjaxResult createPatrolCheckPlanTask() {
|
|
|
|
|
|
|
|
|
@ -127,11 +128,9 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
|
|
|
|
|
new LinkedBlockingQueue<Runnable>());
|
|
|
|
|
try {
|
|
|
|
|
dateSources.forEach(dateSource -> {
|
|
|
|
|
if("ds_1000".equals(dateSource.get("poolName"))){//TODO生产去掉
|
|
|
|
|
logger.info("++++++++++++" + dateSource.get("poolName") + "++++巡检开始++++++++++");
|
|
|
|
|
Runnable run = () -> createPatrolCheckPlanFunc(dateSource.get("poolName"));
|
|
|
|
|
executorService.execute(run);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
logger.error("service == dataClearTask == exception", e);
|
|
|
|
@ -144,7 +143,7 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 根据保养计划生成点检任务
|
|
|
|
|
* **/
|
|
|
|
|
**/
|
|
|
|
|
@Override
|
|
|
|
|
public AjaxResult createMaintenancePlanTask() {
|
|
|
|
|
|
|
|
|
@ -173,19 +172,19 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
|
|
|
|
|
return success();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void createSpotCheckPlanFunc(String poolName){
|
|
|
|
|
public void createSpotCheckPlanFunc(String poolName) {
|
|
|
|
|
DynamicDataSourceContextHolder.push(poolName);// 这是数据源的key
|
|
|
|
|
/**equ_plan equ_plan_equ**/
|
|
|
|
|
EquPlan equPlan = new EquPlan();
|
|
|
|
|
equPlan.setPlanType("spotInspection");
|
|
|
|
|
List<EquPlan> plans = deviceTaskMapper.getPlans(equPlan);
|
|
|
|
|
|
|
|
|
|
for(EquPlan plan:plans){
|
|
|
|
|
for (EquPlan plan : plans) {
|
|
|
|
|
EquOrder hasTask = deviceTaskMapper.getNewTaskOrder(plan);
|
|
|
|
|
if(hasTask==null || Integer.parseInt(plan.getPlanLoop())<= hasTask.getDays()){
|
|
|
|
|
if (hasTask == null || Integer.parseInt(plan.getPlanLoop()) <= hasTask.getDays()) {
|
|
|
|
|
//生成点检计划
|
|
|
|
|
int m = this.createOrderPlan(plan);
|
|
|
|
|
if(m==0){
|
|
|
|
|
if (m == 0) {
|
|
|
|
|
error("equ_order相关添加失败");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -193,19 +192,19 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
|
|
|
|
|
logger.info("++++++++++++" + poolName + "++++点检结束++++++++++");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void createPatrolCheckPlanFunc(String poolName){
|
|
|
|
|
public void createPatrolCheckPlanFunc(String poolName) {
|
|
|
|
|
DynamicDataSourceContextHolder.push(poolName);// 这是数据源的key
|
|
|
|
|
/**equ_plan equ_plan_equ**/
|
|
|
|
|
EquPlan equPlan = new EquPlan();
|
|
|
|
|
equPlan.setPlanType("inspection");
|
|
|
|
|
List<EquPlan> plans = deviceTaskMapper.getPlans(equPlan);
|
|
|
|
|
|
|
|
|
|
for(EquPlan plan:plans){
|
|
|
|
|
for (EquPlan plan : plans) {
|
|
|
|
|
EquOrder hasTask = deviceTaskMapper.getNewTaskOrder(plan);
|
|
|
|
|
if(hasTask==null || Integer.parseInt(plan.getPlanLoop())<= hasTask.getDays()){
|
|
|
|
|
if (hasTask == null || Integer.parseInt(plan.getPlanLoop()) <= hasTask.getDays()) {
|
|
|
|
|
//生成巡检计划
|
|
|
|
|
int m = this.createOrderPlan(plan);
|
|
|
|
|
if(m==0){
|
|
|
|
|
if (m == 0) {
|
|
|
|
|
error("equ_order相关添加失败");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -213,29 +212,29 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
|
|
|
|
|
logger.info("++++++++++++" + poolName + "++++巡检结束++++++++++");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void createMaintenancePlanFunc(String poolName){
|
|
|
|
|
public void createMaintenancePlanFunc(String poolName) {
|
|
|
|
|
DynamicDataSourceContextHolder.push(poolName);// 这是数据源的key
|
|
|
|
|
/**equ_plan equ_plan_equ**/
|
|
|
|
|
EquPlan equPlan = new EquPlan();
|
|
|
|
|
equPlan.setPlanType("maintenance");
|
|
|
|
|
List<EquPlan> plans = deviceTaskMapper.getPlans(equPlan);
|
|
|
|
|
|
|
|
|
|
for(EquPlan plan:plans){
|
|
|
|
|
for (EquPlan plan : plans) {
|
|
|
|
|
EquOrder hasTask = null;
|
|
|
|
|
if("1".equals(plan.getCalculationRule())){
|
|
|
|
|
if ("1".equals(plan.getCalculationRule())) {
|
|
|
|
|
//根据order_start//1按上次保养时间
|
|
|
|
|
hasTask = deviceTaskMapper.getNewTaskOrder0(plan);
|
|
|
|
|
}else if("0".equals(plan.getCalculationRule())){
|
|
|
|
|
} else if ("0".equals(plan.getCalculationRule())) {
|
|
|
|
|
//根据createTime//0按固定周期
|
|
|
|
|
hasTask = deviceTaskMapper.getNewTaskOrder(plan);
|
|
|
|
|
}else if("2".equals(plan.getCalculationRule())){
|
|
|
|
|
} else if ("2".equals(plan.getCalculationRule())) {
|
|
|
|
|
//单次生成保养计划
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if(hasTask==null || Integer.parseInt(plan.getPlanLoop())<= hasTask.getDays()){
|
|
|
|
|
if (hasTask == null || Integer.parseInt(plan.getPlanLoop()) <= hasTask.getDays()) {
|
|
|
|
|
//生成保养计划
|
|
|
|
|
int m = this.createOrderPlan(plan);
|
|
|
|
|
if(m==0){
|
|
|
|
|
if (m == 0) {
|
|
|
|
|
error("equ_order相关添加失败");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -243,7 +242,7 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
|
|
|
|
|
logger.info("++++++++++++" + poolName + "++++保养结束++++++++++");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private int createOrderPlan(EquPlan plan){
|
|
|
|
|
private int createOrderPlan(EquPlan plan) {
|
|
|
|
|
Date nowtime = DateUtils.getNowDate();
|
|
|
|
|
String createBy = "job";
|
|
|
|
|
String factory = plan.getFactoryCode();
|
|
|
|
@ -251,21 +250,21 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
|
|
|
|
|
/**equ_plan->equ_order********************************************************************/
|
|
|
|
|
EquOrder order = new EquOrder();
|
|
|
|
|
//源->目标
|
|
|
|
|
BeanUtils.copyProperties(plan,order);
|
|
|
|
|
BeanUtils.copyProperties(plan, order);
|
|
|
|
|
order.setOrderId(IdUtils.fastSimpleUUID());
|
|
|
|
|
order.setCreateBy(createBy);
|
|
|
|
|
order.setCreateTime(nowtime);
|
|
|
|
|
// 流水号
|
|
|
|
|
String serialNum = String.format("%03d",equOrderMapper.selectSerialNumber());
|
|
|
|
|
String orderCode = "O"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD)+serialNum;
|
|
|
|
|
String serialNum = String.format("%03d", equOrderMapper.selectSerialNumber());
|
|
|
|
|
String orderCode = "O" + DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + serialNum;
|
|
|
|
|
order.setOrderCode(orderCode);
|
|
|
|
|
|
|
|
|
|
if("1".equals(plan.getUpkeep())) {//1委外工单
|
|
|
|
|
order.setOutsourceCode("BW"+orderCode);
|
|
|
|
|
if ("1".equals(plan.getUpkeep())) {//1委外工单
|
|
|
|
|
order.setOutsourceCode("BW" + orderCode);
|
|
|
|
|
}
|
|
|
|
|
/**equ_order**/
|
|
|
|
|
sce = equOrderMapper.insertEquOrder(order);
|
|
|
|
|
System.out.println(plan.getPlanCode()+"========equ_order:"+sce);
|
|
|
|
|
System.out.println(plan.getPlanCode() + "========equ_order:" + sce);
|
|
|
|
|
/**equ_plan_equ_spare->equ_spare_apply*************************************************************/
|
|
|
|
|
EquPlanEquSpare equPlanEquSpare = new EquPlanEquSpare();
|
|
|
|
|
equPlanEquSpare.setParentCode(plan.getPlanEquId());
|
|
|
|
@ -276,7 +275,7 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
|
|
|
|
|
for (EquPlanEquSpare spare : spares) {
|
|
|
|
|
EquSpareApply apply = new EquSpareApply();
|
|
|
|
|
apply.setApplyId(IdUtils.fastSimpleUUID());
|
|
|
|
|
apply.setApplyCode("A"+orderCode+String.format("%02d",applySerialNum));
|
|
|
|
|
apply.setApplyCode("A" + orderCode + String.format("%02d", applySerialNum));
|
|
|
|
|
applySerialNum++;
|
|
|
|
|
apply.setSpareCode(spare.getMaterialCode());
|
|
|
|
|
apply.setSpareName(spare.getMaterialDesc());
|
|
|
|
@ -310,13 +309,13 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
|
|
|
|
|
|
|
|
|
|
List<EquPlanStandard> standards = new ArrayList<>();
|
|
|
|
|
List<EquPlanStandard> standards0 = null;
|
|
|
|
|
for(EquPlanDetail itme:details){
|
|
|
|
|
for (EquPlanDetail itme : details) {
|
|
|
|
|
String detailId = IdUtils.fastSimpleUUID();
|
|
|
|
|
EquPlanStandard standardqo = new EquPlanStandard();
|
|
|
|
|
//equ_plan_detail的id
|
|
|
|
|
standardqo.setParentCode(itme.getId());
|
|
|
|
|
standards0 = equPlanStandardMapper.selectEquPlanStandardList(standardqo);
|
|
|
|
|
for(EquPlanStandard standard:standards0) {
|
|
|
|
|
for (EquPlanStandard standard : standards0) {
|
|
|
|
|
standard.setId(IdUtils.fastSimpleUUID());
|
|
|
|
|
standard.setCreateTime(nowtime);
|
|
|
|
|
standard.setCreateBy(createBy);
|
|
|
|
@ -332,19 +331,19 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
|
|
|
|
|
itme.setDelFlag("0");
|
|
|
|
|
itme.setParentCode(orderCode);
|
|
|
|
|
}
|
|
|
|
|
if(!CollectionUtils.isEmpty(details)) {
|
|
|
|
|
if (!CollectionUtils.isEmpty(details)) {
|
|
|
|
|
sce = equOrderDetailMapper.insertEquOrderDetails(details);
|
|
|
|
|
System.out.println(plan.getPlanCode() + "========equ_order_detail:" + sce);
|
|
|
|
|
}
|
|
|
|
|
/**equ_plan_standard->equ_order_standard*******************************************************/
|
|
|
|
|
if(!CollectionUtils.isEmpty(standards)) {
|
|
|
|
|
if (!CollectionUtils.isEmpty(standards)) {
|
|
|
|
|
sce = equOrderStandardMapper.insertEquOrderStandards(standards);
|
|
|
|
|
System.out.println(plan.getPlanCode() + "========equ_order_standard:" + sce);
|
|
|
|
|
}
|
|
|
|
|
/**equ_plan_person->equ_order_standard*********************************************************/
|
|
|
|
|
if("1".equals(plan.getUpkeep())){//1委外
|
|
|
|
|
if ("1".equals(plan.getUpkeep())) {//1委外
|
|
|
|
|
EquOutsourceWork equOutsourceWork = new EquOutsourceWork();
|
|
|
|
|
BeanUtils.copyProperties(plan,equOutsourceWork);
|
|
|
|
|
BeanUtils.copyProperties(plan, equOutsourceWork);
|
|
|
|
|
equOutsourceWork.setWorkId(IdUtils.fastSimpleUUID());
|
|
|
|
|
equOutsourceWork.setWorkCode(order.getOutsourceCode());
|
|
|
|
|
equOutsourceWork.setWorkType("1");//1委外保养0委外维修
|
|
|
|
@ -354,7 +353,7 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
|
|
|
|
|
equOutsourceWork.setRepairCode(orderCode);
|
|
|
|
|
sce = equOutsourceWorkMapper.insertEquOutsourceWork(equOutsourceWork);
|
|
|
|
|
System.out.println(plan.getPlanCode() + "========equ_outsource_work:" + sce);
|
|
|
|
|
}else {
|
|
|
|
|
} else {
|
|
|
|
|
EquPlanPerson equPlanPerson = new EquPlanPerson();
|
|
|
|
|
equPlanPerson.setPlanCode(plan.getPlanCode());
|
|
|
|
|
List<EquPlanPerson> persons = equPlanPersonMapper.selectEquPlanPersonList(equPlanPerson);
|
|
|
|
|