| | |
| | | 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; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * |
| | | * @description: 通过版本获取字段列表 |
| | | * @param maintainId 版本id |
| | | * @return: 字段列表 |
| | | * |
| | | */ |
| | | @Override |
| | | public List<SysField> getFieldByMaintain(String maintainId) { |
| | | List<SysField> fieldList; |
| | |
| | | |
| | | 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")); |
| | |
| | | |
| | | } |
| | | |
| | | /** |
| | | * |
| | | * @description: 通过版本获取字段版本 |
| | | * @param maintainId 版本id |
| | | * @return: 字段版本 |
| | | * |
| | | */ |
| | | @Override |
| | | public MaintainField getMaintainFieldByMaintain(String maintainId) { |
| | | MaintainField maintainField = null; |
| | |
| | | |
| | | 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()); |
| | | } |
| | | } |
| | | |
| | |
| | | // 当前版本正在审批 找前一版本 |
| | | 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)); |
| | |
| | | |
| | | |
| | | } |
| | | |
| | | /** |
| | | * |
| | | * @description: 通过表名获取当前字段列表 |
| | | * @param tableName 表名 |
| | | * @return: 当前字段列表 |
| | | * |
| | | */ |
| | | @Override |
| | | public List<SysField> getFieldByTable(String tableName) { |
| | | Maintain nowVersion = maintainService.getNowVersion(tableName); |
| | |
| | | } |
| | | return getFieldByMaintain(nowVersion.getId()); |
| | | } |
| | | |
| | | /** |
| | | * |
| | | * @description: 通过版本获取数据库字段列表 |
| | | * @param tableName 表名 |
| | | * @return: 字段列表 |
| | | * |
| | | */ |
| | | @Override |
| | | public Result getTotalFields(String tableName) { |
| | | JSONObject result = new JSONObject(); |
| | |
| | | |
| | | return Result.success(result); |
| | | } |
| | | /** |
| | | * |
| | | * @description: list 通过分页对象筛选 |
| | | * @param list 数据列表 |
| | | * @param pageNo 页数 |
| | | * @param pageSize 每页数量 |
| | | * @return: 分页筛选后的数据列表 |
| | | * |
| | | */ |
| | | @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); |
| | | |
| | | |
| | | } |
| | | /** |
| | | * |
| | | * @description: 获取分页后的字段列表 |
| | | * @param tableName 表名 |
| | | * @param pageNo 页数 |
| | | * @param pageSize 每页数据 |
| | | * @return: 字段列表 |
| | | * |
| | | */ |
| | | @Override |
| | | public Result getTotalFields(String tableName, Integer pageNo, Integer pageSize) { |
| | | Result totalFields = getTotalFields(tableName); |
| | |
| | | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * |
| | | * @description: 分类后给前端展示 |
| | | * @param nowFields 当前版本字段列表 |
| | | * @param maxFields 全部字段列表 |
| | | * @return: 分类后的字段列表 |
| | | * |
| | | */ |
| | | private List<SysField> packageFieldList(List<SysField> nowFields, List<SysField> maxFields) { |
| | | //原始的清除operate用于前端显示 |
| | | nowFields = nowFields.stream().map(sysField -> sysField.setOperate(null)).collect(Collectors.toList()); |
| | |
| | | }); |
| | | return nowFields; |
| | | } |
| | | |
| | | /** |
| | | * |
| | | * @description: 更新基础字段对象信息 |
| | | * @param preField 更新前的字段对象 |
| | | * @param updateField 更新参数 |
| | | * @return: 是否更新成功 |
| | | * |
| | | */ |
| | | @Override |
| | | public boolean updateCommon(SysField preField, SysField updateField) { |
| | | preField.setWidth(updateField.getWidth()); |
| | |
| | | preField.setOrderNo(updateField.getOrderNo()); |
| | | return preField.updateById(); |
| | | } |
| | | |
| | | /** |
| | | * |
| | | * @description: 通过字段版本获取某个字段的对象 |
| | | * @param maintainFieldId 字段版本 |
| | | * @param field 字段名称 |
| | | * @return: 字段对象 |
| | | * |
| | | */ |
| | | @Override |
| | | public SysField getOneFieldByMaintainField(String maintainFieldId, String field) { |
| | | List<SysField> fieldByMaintain = getFieldByMaintainField(maintainFieldId); |
| | |
| | | } |
| | | return collect.get(0); |
| | | } |
| | | |
| | | /** |
| | | * |
| | | * @description: 通过数据版本获取某个字段的对象 |
| | | * @param maintainId 数据版本 |
| | | * @param field 字段名称 |
| | | * @return: 字段对象 |
| | | * |
| | | */ |
| | | @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; |
| | | } |
| | | /** |
| | | * |
| | | * @description: 通过字段版本获取对象列表 |
| | | * @param maintainId 字段版本 |
| | | * @return: 字段对象列表 |
| | | * |
| | | */ |
| | | @Override |
| | | public List<SysField> getFieldByMaintainField(String maintainId) { |
| | | if (StringUtils.isEmpty(maintainId)) { |
| | |
| | | } |
| | | return selectList(new EntityWrapper<SysField>().eq("maintain_field_id", maintainId).orderBy("order_no")); |
| | | } |
| | | |
| | | /** |
| | | * |
| | | * @description: 通过表名获取默认字段列表 |
| | | * @param tableName 表名 |
| | | * @return: 字段对象列表 |
| | | * |
| | | */ |
| | | @Override |
| | | public List<SysField> getDefaultTableField(String tableName) { |
| | | return selectList(new EntityWrapper<SysField>().eq("table_name", tableName).isNull("maintain_field_id").orderBy("order_no")); |
| | | } |
| | | |
| | | /** |
| | | * |
| | | * @description: 通过表名获取全部字段列表 |
| | | * @param tableName 表名 |
| | | * @return: 字段对象列表 |
| | | * |
| | | */ |
| | | @Override |
| | | public List<SysField> getTotalTableField(String tableName) { |
| | | List<TableSchemaResult> tableField = tableInfoMapper.getTableField(tableName); |