|
@@ -16,8 +16,10 @@ import com.ozs.common.annotation.Log;
|
|
import com.ozs.common.constant.ModularConstans;
|
|
import com.ozs.common.constant.ModularConstans;
|
|
import com.ozs.common.core.controller.BaseController;
|
|
import com.ozs.common.core.controller.BaseController;
|
|
import com.ozs.common.core.domain.AjaxResult;
|
|
import com.ozs.common.core.domain.AjaxResult;
|
|
|
|
+import com.ozs.common.core.domain.entity.SysDictData;
|
|
import com.ozs.common.core.domain.entity.SysUser;
|
|
import com.ozs.common.core.domain.entity.SysUser;
|
|
import com.ozs.common.enums.*;
|
|
import com.ozs.common.enums.*;
|
|
|
|
+import com.ozs.common.utils.DateUtils;
|
|
import com.ozs.common.utils.RandomUtil;
|
|
import com.ozs.common.utils.RandomUtil;
|
|
import com.ozs.common.utils.StringUtils;
|
|
import com.ozs.common.utils.StringUtils;
|
|
import com.ozs.pm.doman.*;
|
|
import com.ozs.pm.doman.*;
|
|
@@ -25,9 +27,11 @@ import com.ozs.pm.doman.vo.requestVo.*;
|
|
import com.ozs.pm.doman.vo.responseVo.PmDemandResVo;
|
|
import com.ozs.pm.doman.vo.responseVo.PmDemandResVo;
|
|
import com.ozs.pm.service.*;
|
|
import com.ozs.pm.service.*;
|
|
import com.ozs.system.domain.SysFileRef;
|
|
import com.ozs.system.domain.SysFileRef;
|
|
|
|
+import com.ozs.system.service.ISysDictTypeService;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.ApiOperation;
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
|
|
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.beans.BeanUtils;
|
|
import org.springframework.beans.BeanUtils;
|
|
import org.springframework.security.access.prepost.PreAuthorize;
|
|
import org.springframework.security.access.prepost.PreAuthorize;
|
|
import org.springframework.util.ObjectUtils;
|
|
import org.springframework.util.ObjectUtils;
|
|
@@ -36,6 +40,7 @@ import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import javax.validation.constraints.NotEmpty;
|
|
import javax.validation.constraints.NotEmpty;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 采购执行Controller
|
|
* 采购执行Controller
|
|
@@ -43,6 +48,7 @@ import java.util.*;
|
|
* @author ruoyi
|
|
* @author ruoyi
|
|
* @date 2023-01-16
|
|
* @date 2023-01-16
|
|
*/
|
|
*/
|
|
|
|
+@Slf4j
|
|
@Api(tags = "采购执行")
|
|
@Api(tags = "采购执行")
|
|
@RestController
|
|
@RestController
|
|
@RequestMapping("/pm/purchaseExecution")
|
|
@RequestMapping("/pm/purchaseExecution")
|
|
@@ -55,7 +61,8 @@ public class PmPurchaseExecutionController extends BaseController {
|
|
private BaseAgencyService baseAgencyService;
|
|
private BaseAgencyService baseAgencyService;
|
|
@Autowired
|
|
@Autowired
|
|
private BaseExpertService baseExpertService;
|
|
private BaseExpertService baseExpertService;
|
|
-
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private ISysDictTypeService iSysDictTypeService;
|
|
@Autowired
|
|
@Autowired
|
|
private PmDemandExpertRefService pmDemandExpertRefService;
|
|
private PmDemandExpertRefService pmDemandExpertRefService;
|
|
@Autowired
|
|
@Autowired
|
|
@@ -661,9 +668,22 @@ public class PmPurchaseExecutionController extends BaseController {
|
|
pmDemandUpdate.setDemandId(demandId);
|
|
pmDemandUpdate.setDemandId(demandId);
|
|
pmDemandUpdate.setProjectStatus(PmProjectStatus.CONTRACT_WAIT_FILL.getCode());
|
|
pmDemandUpdate.setProjectStatus(PmProjectStatus.CONTRACT_WAIT_FILL.getCode());
|
|
pmDemandUpdate.setRealPurchaseFinishTime(new Date());
|
|
pmDemandUpdate.setRealPurchaseFinishTime(new Date());
|
|
- pmDemandUpdate.setWarnStatus(WarnStatus.NORMAL.getCode());
|
|
|
|
|
|
+
|
|
pmDemandUpdate.setUpdateTime(new Date());
|
|
pmDemandUpdate.setUpdateTime(new Date());
|
|
pmDemandUpdate.setUpdateBy(getUserId().toString());
|
|
pmDemandUpdate.setUpdateBy(getUserId().toString());
|
|
|
|
+
|
|
|
|
+ List<SysDictData> data = iSysDictTypeService.selectDictDataByType("alert_time_setting");
|
|
|
|
+ int setting3 = Integer.parseInt(data.stream().filter(item -> item.getDictLabel().equals("计划交付(实施)时间")).collect(Collectors.toList()).get(0).getDictValue());
|
|
|
|
+ log.info("******** setting3 == " + setting3);
|
|
|
|
+ //计划交付时间:根据数据阈值中设置的交付时间进行判断,进行预警
|
|
|
|
+ int diff3 = DateUtils.differentDaysByMillisecond(pmDemand.getPlanDeliverTime(), DateUtils.parseDate(DateUtils.getDate()));
|
|
|
|
+ if (ObjectUtils.isEmpty(pmDemand.getRealDeliverTime()) && diff3 >= setting3) {
|
|
|
|
+ log.info("******** 计划交付预警: " + pmDemand.getProjectName());
|
|
|
|
+ pmDemandUpdate.setWarnStatus(WarnStatus.PLAN_DELIVER_WARNING.getCode());
|
|
|
|
+ } else{
|
|
|
|
+ pmDemandUpdate.setWarnStatus(WarnStatus.NORMAL.getCode());
|
|
|
|
+ }
|
|
|
|
+
|
|
return success(pmDemandService.updateById(pmDemandUpdate));
|
|
return success(pmDemandService.updateById(pmDemandUpdate));
|
|
} else {
|
|
} else {
|
|
return error("保存上传附件失败");
|
|
return error("保存上传附件失败");
|