kimi
2020-04-22 e96252ffd9f8368badf065436e2b58930fbd3b8d
src/main/java/com/highdatas/srs/web/SchemeController.java
@@ -298,7 +298,7 @@
        //目录
        result.fluentPut("paths",childrenFiles );
        result.fluentPut("paths",childrenFiles);
        return Result.success(result);
    }
@@ -377,6 +377,32 @@
            json.fluentPut("delayCnt", delayInt);
            json.fluentPut("finishCnt", finishInt);
            //
            List<SchemeDetail> schemeDetailList = iSchemeDetailService.selectList(new EntityWrapper<SchemeDetail>().eq("parent_id", scheme.getId()).eq("finish", true));
            Date beginDate = null;
            Date endDate = null;
            for (SchemeDetail detail : schemeDetailList) {
                if (beginDate == null) {
                    beginDate = detail.getStartTime();
                }
                else {
                    int i = DbUtils.compareDate(beginDate, detail.getStartTime());
                    if(i == -1) {
                        beginDate = detail.getStartTime();
                    }
                }
                if (endDate == null) {
                    endDate = detail.getFinishTime();
                }else {
                    int i = DbUtils.compareDate(endDate, detail.getFinishTime());
                    if(i == 1) {
                        endDate = detail.getFinishTime();
                    }
                }
            }
            json.fluentPut("beginDate", beginDate);
            json.fluentPut("endDate", endDate);
            result.add(json);
        }
        jsonObjectPage.setRecords(result);
@@ -385,11 +411,9 @@
    @RequestMapping(value = "/addOrUpdate", method = RequestMethod.GET)
    public Result add(@RequestParam String reseachType, @RequestParam String name, @RequestParam Date startTime, @RequestParam Date endTime, HttpServletRequest request)  {
        String id = request.getParameter("id");
        String desp = request.getParameter("desp");
        String userId = request.getParameter("userId");
        Scheme scheme;
        if (StringUtils.isEmpty(id)) {
            scheme = new Scheme();
@@ -403,8 +427,29 @@
        if (StringUtils.isEmpty(scheme.getId())) {
            scheme.setId(DbUtils.getUUID());
        }
        boolean insert = scheme.setUserId(userId).setCreateTime(new Date()).setName(name).setStartTime(startTime).setEndTime(endTime)
                .setDesp(desp).setReseachType(reseachType).insertOrUpdate();
        scheme.setUserId(userId).setCreateTime(new Date()).setName(name).setStartTime(startTime).setEndTime(endTime)
                .setDesp(desp).setReseachType(reseachType);
        List<SchemeDetail> schemeDetailList = iSchemeDetailService.selectList(new EntityWrapper<SchemeDetail>().eq("parent_id", scheme.getId()));
        for (SchemeDetail detail : schemeDetailList) {
            Date detailStartTime = detail.getStartTime();
            if (detailStartTime != null) {
                boolean effectiveDate = DbUtils.isEffectiveDate(detailStartTime, startTime, endTime);
                if(!effectiveDate) {
                    detail.setStartTime(startTime);
                }
            }
            Date detailEndTime = detail.getEndTime();
            if (detailEndTime != null) {
                boolean effectiveDate = DbUtils.isEffectiveDate(detailEndTime, startTime, endTime);
                if(!effectiveDate) {
                    detail.setEndTime(endTime);
                }
            }
            boolean updated = detail.updateById();
        }
        boolean insert = scheme.insertOrUpdate();
        if (insert) {
            return Result.success(scheme.getId());
        } else {
@@ -416,7 +461,28 @@
    public Result add(@PathVariable String id, HttpServletRequest request) throws JsonProcessingException {
        String data = request.getParameter("data");
        Scheme scheme = DbUtils.json2Bean(data, Scheme.class);
        boolean b = scheme.insertOrUpdate();
        Date startTime = scheme.getStartTime();
        Date endTime = scheme.getEndTime();
        List<SchemeDetail> schemeDetailList = iSchemeDetailService.selectList(new EntityWrapper<SchemeDetail>().eq("parent_id", scheme.getId()));
        for (SchemeDetail detail : schemeDetailList) {
            Date detailStartTime = detail.getStartTime();
            if (detailStartTime != null) {
                boolean effectiveDate = DbUtils.isEffectiveDate(detailStartTime, startTime, endTime);
                if(!effectiveDate) {
                    detail.setStartTime(startTime);
                }
            }
            Date detailEndTime = detail.getEndTime();
            if (detailEndTime != null) {
                boolean effectiveDate = DbUtils.isEffectiveDate(detailEndTime, startTime, endTime);
                if(!effectiveDate) {
                    detail.setEndTime(endTime);
                }
            }
            detail.updateById();
        }
        boolean b = scheme.updateById();
        // reseachType to enum
        if (b) {