| | |
| | | import com.highdatas.mdm.util.Constant; |
| | | import com.highdatas.mdm.util.DbUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.pentaho.reporting.libraries.formula.function.text.StringCountFunction; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | |
| | | IMaintainService maintainService; |
| | | @Autowired |
| | | IMaintainDetailService maintainDetailService; |
| | | |
| | | @Autowired |
| | | IMaintainFieldService maintainFieldService; |
| | | @Autowired |
| | | IMenuMappingService menuMappingService; |
| | | |
| | |
| | | |
| | | @Autowired |
| | | IMasterModifiedService masterModifiedService; |
| | | @Autowired |
| | | IMasterAuthorService masterAuthorService; |
| | | |
| | | @RequestMapping(value = "{tableName}/uploaded", method = RequestMethod.GET) |
| | | public Result get(@PathVariable String tableName, HttpServletRequest request) { |
| | |
| | | |
| | | @RequestMapping(value = "{tableName}/all/{pageNo}", method = RequestMethod.GET) |
| | | public Result getByPage(@PathVariable String tableName, @PathVariable Integer pageNo, HttpServletRequest request) throws UnsupportedEncodingException { |
| | | TUser user = DbUtils.getUser(request); |
| | | String pageSizeStr = request.getParameter("pageSize"); |
| | | String whereSegment = request.getParameter(Constant.WHERE_SEGMENT); |
| | | String fields = request.getParameter(Constant.FIELDS); |
| | |
| | | version = String.valueOf(nowVersion.getVersion()); |
| | | }else if(version.equalsIgnoreCase(Constant.MAX)){ |
| | | findMax = true; |
| | | version = String.valueOf(maintainService.getMaxVersion(tableName).getVersion()); |
| | | Maintain maxVersion = maintainService.getMaxVersion(tableName); |
| | | if (maxVersion == null) { |
| | | return Result.success(null); |
| | | } |
| | | version = String.valueOf(maxVersion.getVersion()); |
| | | } |
| | | Maintain maintainFromVersion = maintainService.getMaintainFromVersion(tableName, version); |
| | | if (maintainFromVersion == null) { |
| | | return null; |
| | | } |
| | | //ADD Filter |
| | | String filter = masterAuthorService.getFilter(user.getUserId(), maintainFromVersion.getId()); |
| | | if (!StringUtils.isEmpty(filter)) { |
| | | whereSegment = DbUtils.StrJoin(whereSegment, Constant.AND, filter); |
| | | } |
| | | |
| | | |
| | | if (StringUtils.isEmpty(fields)) { |
| | | if (StringUtils.isEmpty(pageSizeStr)) { |
| | | return masterDataService.selectListByPageByVersion(tableName, whereSegment,pageNo,version, findMax); |
| | | return masterDataService.selectListByPageByVersion(user, tableName, whereSegment,pageNo,version, findMax); |
| | | } |
| | | return masterDataService.selectListByPageByVersion(tableName, null, whereSegment,pageNo, Integer.valueOf(pageSizeStr),version,findMax); |
| | | return masterDataService.selectListByPageByVersion(user, tableName, null, whereSegment,pageNo, Integer.valueOf(pageSizeStr),version,findMax); |
| | | }else { |
| | | String[] split = fields.split(Constant.COMMA_TRIM); |
| | | List<String> fieldList = Arrays.stream(split).collect(Collectors.toList()); |
| | | if (StringUtils.isEmpty(pageSizeStr)) { |
| | | return masterDataService.selectListByPageByVersion(tableName, fieldList, whereSegment,pageNo, null,version, findMax); |
| | | return masterDataService.selectListByPageByVersion(user, tableName, fieldList, whereSegment,pageNo, null,version, findMax); |
| | | } |
| | | return masterDataService.selectListByPageByVersion(tableName, fieldList, whereSegment,pageNo, Integer.valueOf(pageSizeStr), findMax); |
| | | return masterDataService.selectListByPageByVersion(user, tableName, fieldList, whereSegment,pageNo, Integer.valueOf(pageSizeStr), findMax); |
| | | |
| | | } |
| | | } |
| | | @RequestMapping(value = "{tableName}/all", method = RequestMethod.GET) |
| | | public Result<MenuMapping> getAll(@PathVariable String tableName,HttpServletRequest request) { |
| | | TUser user = DbUtils.getUser(request); |
| | | String whereSegment = request.getParameter(Constant.WHERE_SEGMENT); |
| | | String version = request.getParameter(Constant.VERSION); |
| | | if (StringUtils.isEmpty(version)) { |
| | | version = String.valueOf(maintainService.getNowVersion(tableName).getVersion()); |
| | | } |
| | | if (StringUtils.isEmpty(whereSegment)) { |
| | | return masterDataService.selectList(tableName); |
| | | return masterDataService.selectList(user, tableName,Constant.WHERE_DEFAULT, version); |
| | | } |
| | | return masterDataService.selectList(tableName,whereSegment); |
| | | return masterDataService.selectList(user, tableName,whereSegment, version); |
| | | } |
| | | |
| | | @RequestMapping(value = "{maintainId}/modify/{operateStr}", method = RequestMethod.POST) |
| | |
| | | return masterDataService.delete(tableName, whereSegment); |
| | | } |
| | | } |
| | | |
| | | @RequestMapping(value = "/getValByMaintainFieldId/{maintainFieldId}", method = RequestMethod.GET) |
| | | public Result getValByMaintainFieldId(@PathVariable String maintainFieldId,@RequestParam String menuId, @RequestParam String field, HttpServletRequest request) { |
| | | String tableName = menuMappingService.getTableNameByMenu(menuId); |
| | | if (StringUtils.isEmpty(tableName)) { |
| | | return Result.error(CodeMsg.ERROR_PARAMS_NOT_MATHED); |
| | | } |
| | | if (maintainFieldId.equalsIgnoreCase(Constant.All)) { |
| | | Set<String> fieldValList = masterDataService.getFieldValByTable(tableName, field); |
| | | return Result.success(fieldValList); |
| | | } |
| | | |
| | | Set<String> fieldValByMaintainField = masterDataService.getFieldValByMaintainField(maintainFieldId, field, tableName); |
| | | |
| | | return Result.success(fieldValByMaintainField); |
| | | } |
| | | |
| | | |
| | | } |