|
@@ -17,6 +17,7 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.dayou.common.BaseEntity;
|
|
import com.dayou.common.BaseEntity;
|
|
import com.dayou.common.PullDownModel;
|
|
import com.dayou.common.PullDownModel;
|
|
|
|
+import com.dayou.dto.PersonalProductionDTO;
|
|
import com.dayou.dto.history.*;
|
|
import com.dayou.dto.history.*;
|
|
import com.dayou.entity.*;
|
|
import com.dayou.entity.*;
|
|
import com.dayou.enums.MainBusinessEnum;
|
|
import com.dayou.enums.MainBusinessEnum;
|
|
@@ -26,6 +27,7 @@ import com.dayou.mapper.*;
|
|
import com.dayou.service.*;
|
|
import com.dayou.service.*;
|
|
import com.dayou.service.impl.AssetsServiceImpl;
|
|
import com.dayou.service.impl.AssetsServiceImpl;
|
|
import com.dayou.service.impl.PersonalProductionServiceImpl;
|
|
import com.dayou.service.impl.PersonalProductionServiceImpl;
|
|
|
|
+import com.dayou.service.workflow.IWorkFlowNodeInstanceService;
|
|
import com.dayou.utils.DateUtils;
|
|
import com.dayou.utils.DateUtils;
|
|
import com.dayou.utils.HttpKit;
|
|
import com.dayou.utils.HttpKit;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
@@ -51,7 +53,9 @@ import java.util.stream.Collectors;
|
|
import static com.dayou.common.Constants.*;
|
|
import static com.dayou.common.Constants.*;
|
|
import static com.dayou.enums.FinanceInvoiceState.已作废;
|
|
import static com.dayou.enums.FinanceInvoiceState.已作废;
|
|
import static com.dayou.enums.MainBusinessEnum.*;
|
|
import static com.dayou.enums.MainBusinessEnum.*;
|
|
-import static com.dayou.enums.ProductionEnum.FINAL;
|
|
|
|
|
|
+import static com.dayou.enums.ProductionEnum.*;
|
|
|
|
+import static com.dayou.enums.workflow.NodeStateEnum.FINISHED;
|
|
|
|
+import static com.dayou.enums.workflow.WorkflowNodeEnum.*;
|
|
|
|
|
|
@DS("dyoa")
|
|
@DS("dyoa")
|
|
@Service
|
|
@Service
|
|
@@ -1863,6 +1867,44 @@ public class DyoaHistoryServiceImpl implements IDyoaHistoryService{
|
|
return null;
|
|
return null;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private IPersonalProductionService personalProductionService;
|
|
|
|
+
|
|
|
|
+ @Autowired
|
|
|
|
+ private IWorkFlowNodeInstanceService workFlowNodeInstanceService;
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public Boolean updatePersonalProductionTime() {
|
|
|
|
+ List<PersonalProductionDTO> list = personalProductionService.updatePersonalProductionTime();
|
|
|
|
+ for (PersonalProductionDTO prod : list){
|
|
|
|
+ if (prod.getProduction().equals(STATEMENT.name())){
|
|
|
|
+ Date nodeFinishedTime = workFlowNodeInstanceService.getNodeFinishedTime(PERSONAL_BUSINESS, GENERATE_STATEMENT, prod.getPid(), prod.getOrderId(), null);
|
|
|
|
+ if (nodeFinishedTime!=null){
|
|
|
|
+ personalProductionService.update(new LambdaUpdateWrapper<PersonalProduction>().eq(BaseEntity::getId,prod.getId()).set(PersonalProduction::getProductionTime,nodeFinishedTime));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if (prod.getProduction().equals(TECHNIC.name())){
|
|
|
|
+ Date nodeFinishedTime = workFlowNodeInstanceService.getNodeFinishedTime(PERSONAL_BUSINESS, WRITE_REPORT, prod.getPid(), prod.getOrderId(), null);
|
|
|
|
+ if (nodeFinishedTime!=null){
|
|
|
|
+ personalProductionService.update(new LambdaUpdateWrapper<PersonalProduction>().eq(BaseEntity::getId,prod.getId()).set(PersonalProduction::getProductionTime,nodeFinishedTime));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if (prod.getProduction().equals(FINAL.name())){
|
|
|
|
+ Date nodeFinishedTime = workFlowNodeInstanceService.getNodeFinishedTime(PERSONAL_BUSINESS, WRITE_REPORT, prod.getPid(), prod.getOrderId(), null);
|
|
|
|
+ if (nodeFinishedTime!=null){
|
|
|
|
+ personalProductionService.update(new LambdaUpdateWrapper<PersonalProduction>().eq(BaseEntity::getId,prod.getId()).set(PersonalProduction::getProductionTime,nodeFinishedTime));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if (prod.getProduction().equals(LETTER.name())){
|
|
|
|
+ Date nodeFinishedTime = workFlowNodeInstanceService.getNodeFinishedTime(PERSONAL_BUSINESS, WRITE_LETTER, prod.getPid(), prod.getOrderId(), null);
|
|
|
|
+ if (nodeFinishedTime!=null){
|
|
|
|
+ personalProductionService.update(new LambdaUpdateWrapper<PersonalProduction>().eq(BaseEntity::getId,prod.getId()).set(PersonalProduction::getProductionTime,nodeFinishedTime));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return null;
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|