package org.springblade.modules.task.service.impl;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import org.springblade.common.utils.SpringUtils;
|
import org.springblade.core.mp.support.Condition;
|
import org.springblade.core.mp.support.Query;
|
import org.springblade.modules.customTask.entity.CustomTaskEntity;
|
import org.springblade.modules.place.service.IPlaceService;
|
import org.springblade.modules.place.vo.PlaceVO;
|
import org.springblade.modules.task.entity.TaskEntity;
|
import org.springblade.modules.task.entity.TaskPlaceSelfCheckEntity;
|
import org.springblade.modules.task.service.ITaskPlaceSelfCheckService;
|
import org.springblade.modules.task.service.ITaskService;
|
import org.springblade.modules.task.service.TaskHandle;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Component;
|
|
import java.util.Date;
|
|
/**
|
* 自查任务ServiceImpl
|
*/
|
@Component("SelfExaminationTaskHandler")
|
public class SelfExaminationTaskHandler implements TaskHandle {
|
|
@Autowired
|
private IPlaceService placeService;
|
|
@Autowired
|
private ITaskPlaceSelfCheckService taskPlaceSelfCheckService;
|
|
@Override
|
public void taskHandle(CustomTaskEntity customTask) {
|
try {
|
Query query = new Query();
|
IPage<PlaceVO> page = Condition.getPage(query);
|
PlaceVO placeVO = new PlaceVO();
|
placeVO.setPoiCodes(customTask.getPlaceLabel().toString());
|
placeVO.setNineType(customTask.getNineType());
|
IPage<PlaceVO> placePage = placeService.getPlacePage(page, placeVO);
|
ITaskService iTaskService = SpringUtils.getBean(ITaskService.class);
|
// 计算总页数
|
long pages = placePage.getPages();
|
for (int i = 1; i <= pages; i++) {
|
page = Condition.getPage(query);
|
page.setCurrent(i);
|
placePage = placeService.getPlacePage(page, placeVO);
|
placePage.getRecords().forEach(place -> {
|
TaskEntity taskEntity = new TaskEntity();
|
taskEntity.setType(1);
|
taskEntity.setName("自查");
|
taskEntity.setCreateTime(new Date());
|
taskEntity.setHouseCode(place.getHouseCode());
|
taskEntity.setReportType(7);
|
taskEntity.setStatus(4);
|
taskEntity.setFrequency(2);
|
// taskEntitiesList.add(taskEntity);
|
iTaskService.save(taskEntity);
|
|
TaskPlaceSelfCheckEntity taskPlaceSelfCheck = new TaskPlaceSelfCheckEntity();
|
taskPlaceSelfCheck.setTaskId(taskEntity.getId());
|
taskPlaceSelfCheck.setHouseCode(place.getHouseCode());
|
taskPlaceSelfCheck.setPlaceName(place.getPlaceName());
|
taskPlaceSelfCheck.setStatus(4);
|
taskPlaceSelfCheckService.save(taskPlaceSelfCheck);
|
// taskPlaceSelfCheckList.add(taskPlaceSelfCheck);
|
});
|
}
|
} catch (Exception e) {
|
System.out.println("自查任务异常" + e);
|
}
|
// iTaskService.saveBatch(taskEntitiesList);
|
// boolean save = taskPlaceSelfCheckService.saveBatch(taskPlaceSelfCheckList);
|
|
}
|
}
|