kimi
2020-05-18 c8aee7b9bfd79cfd741d7e5692520f4f51a31a86
src/main/java/com/highdatas/mdm/service/impl/SysFieldServiceImpl.java
@@ -64,10 +64,11 @@
        maintainField = maintainFieldService.selectOne(new EntityWrapper<MaintainField>().eq("maintain_id", maintainId).orderBy("order_no desc"));
        if (maintainField == null) {
            //对应版本找不到 往前找
            String maintainFieldId = maintainFieldMapper.getMappedMatintainId(DbUtils.quotedStr(maintain.getTableName()), maintain.getOrderNo());
            if (StringUtils.isEmpty(maintainFieldId)) {
            Map<String, String> maintainFieldMap = maintainFieldMapper.getMappedMatintainId(DbUtils.quotedStr(maintain.getTableName()), maintain.getOrderNo());
            if (maintainFieldMap == null) {
               return null;
            }
            String maintainFieldId = maintainFieldMap.get(Constant.ID);
            maintainField = maintainFieldService.selectById(maintainFieldId);
        }
        return maintainField;
@@ -84,13 +85,11 @@
        MaintainField maintainField = getMaintainFieldByMaintain(maintainId);
        if (maintainField == null || Constant.Default.equalsIgnoreCase(maintainField.getId())) {
            fieldList = this.selectList(new EntityWrapper<SysField>().eq("table_name", maintain.getTableName()).isNull("maintain_field_id").orderBy("order_no"));
            return fieldList;
        }
        String maintainFieldId = maintainField.getId();
        String tableName = maintainField.getTableName();
        //TODO  判断版本
        ActivitiStatus status = flowsService.getStatusByBusinessId(maintainFieldId);
        if (status != null && status.equals(ActivitiStatus.open)) {
            fieldList = this.selectList(new EntityWrapper<SysField>().eq("maintain_field_id", maintainFieldId).eq("table_name", tableName).orderBy("order_no"));
@@ -140,13 +139,15 @@
        if (maintainField == null) {
            //对应版本找不到 往前找
            String maintainFieldId = maintainFieldMapper.getMappedMatintainId(DbUtils.quotedStr(maintain.getTableName()), maintain.getOrderNo());
            if (StringUtils.isEmpty(maintainFieldId)) {
                return new MaintainField().setId(Constant.Default);
            Map<String, String> maintainFieldMap = maintainFieldMapper.getMappedMatintainId(DbUtils.quotedStr(maintain.getTableName()), maintain.getOrderNo());
            if (maintainFieldMap == null) {
                return new MaintainField().setId(Constant.Default).setTableName(maintain.getTableName());
            }
            String maintainFieldId = maintainFieldMap.get(Constant.ID);
            maintainField = maintainFieldService.selectById(maintainFieldId);
            if (maintainField == null){
                return new MaintainField().setId(Constant.Default);
                return new MaintainField().setId(Constant.Default).setTableName(maintain.getTableName());
            }
        }
@@ -161,7 +162,7 @@
        // 当前版本正在审批  找前一版本
        Integer maintainFieldOrderNo = maintainField.getOrderNo();
        if (maintainFieldOrderNo < 1) {
            return new MaintainField().setId(Constant.Default);
            return new MaintainField().setId(Constant.Default).setTableName(maintain.getTableName());
        }else {
            Integer preNo = maintainFieldOrderNo - 1;
            maintainField = maintainFieldService.selectOne(new EntityWrapper<MaintainField>().eq("table_name", maintain.getTableName()).eq("order_no", preNo));
@@ -247,6 +248,25 @@
        }
        return Result.success(result);
    }
    @Override
    public Result getPagedDataByList(List list, Integer pageNo, Integer pageSize) {
        JSONObject result = new JSONObject();
        int total = list.size();
        Page page = new Page(total);
        page.setPageSize(pageSize);
        page.setPageNo(pageNo);
        List subList = (List) list.stream().skip(page.getBeginRecordNo_1()).limit(page.getPageSize()).collect(Collectors.toList());
        result.fluentPut("pages", page.getPageCount());
        result.fluentPut("current", pageNo);
        result.fluentPut("size", pageSize);
        result.fluentPut("total", page.getRecordCount());
        result.fluentPut("list", subList);
        return Result.success(result);
    }
    @Override
@@ -351,6 +371,20 @@
    }
    @Override
    public SysField getOneFieldByMaintain(String maintainId, String field) {
        List<SysField> fieldByMaintain = getFieldByMaintain(maintainId);
        if (fieldByMaintain == null || fieldByMaintain.isEmpty()) {
            return null;
        }
        for (SysField sysField : fieldByMaintain) {
            if (sysField.getField().equalsIgnoreCase(field)) {
                return sysField;
            }
        }
        return null;
    }
    @Override
    public List<SysField> getFieldByMaintainField(String maintainId) {
        if (StringUtils.isEmpty(maintainId)) {
            return null;