From 5bac93baf5659ce013163f884c9dce41990a860e Mon Sep 17 00:00:00 2001 From: kimi42345 <kimi42345@outlook.com> Date: 星期一, 23 三月 2020 08:49:41 +0800 Subject: [PATCH] no message --- src/main/java/com/highdatas/mdm/service/impl/SysFieldServiceImpl.java | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 50 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/highdatas/mdm/service/impl/SysFieldServiceImpl.java b/src/main/java/com/highdatas/mdm/service/impl/SysFieldServiceImpl.java index 85f6e48..c0c45ae 100644 --- a/src/main/java/com/highdatas/mdm/service/impl/SysFieldServiceImpl.java +++ b/src/main/java/com/highdatas/mdm/service/impl/SysFieldServiceImpl.java @@ -1,16 +1,16 @@ package com.highdatas.mdm.service.impl; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.service.impl.ServiceImpl; -import com.highdatas.mdm.entity.Flows; -import com.highdatas.mdm.entity.Maintain; -import com.highdatas.mdm.entity.MaintainField; -import com.highdatas.mdm.entity.SysField; +import com.highdatas.mdm.entity.*; import com.highdatas.mdm.mapper.MaintainFieldMapper; import com.highdatas.mdm.mapper.SysFieldMapper; +import com.highdatas.mdm.mapper.TableInfoMapper; import com.highdatas.mdm.pojo.ActivitiStatus; import com.highdatas.mdm.pojo.Operate; +import com.highdatas.mdm.pojo.Page; import com.highdatas.mdm.pojo.Result; import com.highdatas.mdm.service.IFlowsService; import com.highdatas.mdm.service.IMaintainFieldService; @@ -46,6 +46,8 @@ MaintainFieldMapper maintainFieldMapper; @Autowired IFlowsService flowsService; + @Autowired + TableInfoMapper tableInfoMapper; @Override @@ -94,9 +96,9 @@ fieldList = this.selectList(new EntityWrapper<SysField>().eq("table_name", maintain.getTableName()).isNull("maintain_field_id").orderBy("order_no")); return fieldList; }else { - Integer preNo = maintainFieldOrderNo--; + Integer preNo = maintainFieldOrderNo - 1; maintainField = maintainFieldService.selectOne(new EntityWrapper<MaintainField>().eq("table_name", maintain.getTableName()).eq("order_no", preNo)); - fieldList = this.selectList(new EntityWrapper<SysField>().eq("maintain_field_id", maintainFieldId).eq("table_name", tableName).orderBy("order_no")); + fieldList = this.selectList(new EntityWrapper<SysField>().eq("maintain_field_id", maintainField.getId()).eq("table_name", tableName).orderBy("order_no")); return fieldList; } @@ -107,7 +109,16 @@ public List<SysField> getFieldByTable(String tableName) { Maintain nowVersion = maintainService.getNowVersion(tableName); if (nowVersion == null) { - return null; + List<SysField> fieldList = this.selectList(new EntityWrapper<SysField>().eq("table_name", tableName).isNull("maintain_field_id").orderBy("order_no")); + if (fieldList.size() ==0) { + List<TableSchemaResult> tableField = tableInfoMapper.getTableField(tableName); + for (TableSchemaResult tableSchemaResult : tableField) { + String fieldName = tableSchemaResult.getFieldName(); + SysField field = new SysField().setField(fieldName); + fieldList.add(field); + } + } + return fieldList; } return getFieldByMaintain(nowVersion.getId()); } @@ -172,6 +183,28 @@ return Result.success(result); } + @Override + public Result getTotalFields(String tableName, Integer pageNo, Integer pageSize) { + Result totalFields = getTotalFields(tableName); + JSONObject result = (JSONObject) totalFields.getData(); + JSONArray list = result.getJSONArray("list"); + int total = list.size(); + Page page = new Page(total); + page.setPageSize(pageSize); + page.setPageNo(pageNo); + List<Object> subList = 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); + + + } + + private List<SysField> packageFieldList(List<SysField> nowFields, List<SysField> maxFields) { //鍘熷鐨勬竻闄perate鐢ㄤ簬鍓嶇鏄剧ず nowFields = nowFields.stream().map(sysField -> sysField.setOperate(null)).collect(Collectors.toList()); @@ -193,7 +226,16 @@ Collections.sort(nowFields, new Comparator<SysField>() { @Override public int compare(SysField o1, SysField o2) { - return o1.getOrderNo() - o2.getOrderNo() ; + Integer o1OrderNo = o1.getOrderNo(); + Integer orderNo = o2.getOrderNo(); + if (o1OrderNo == null && orderNo == null) { + return 0; + }else if (o1OrderNo == null) { + return -1; + }else if (orderNo == null) { + return 1; + } + return o1OrderNo - orderNo; } }); return nowFields; -- Gitblit v1.8.0