HosEsbMiniInstallLogController.java 3.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. package com.yihu.ehr.esb.controller;
  2. import com.yihu.ehr.constants.ApiVersion;
  3. import com.yihu.ehr.esb.client.HosEsbMiniInstallLogClient;
  4. import com.yihu.ehr.model.esb.MHosEsbMiniInstallLog;
  5. import com.yihu.ehr.model.org.MOrganization;
  6. import com.yihu.ehr.organization.service.OrganizationClient;
  7. import com.yihu.ehr.util.rest.Envelop;
  8. import com.yihu.ehr.controller.BaseController;
  9. import io.swagger.annotations.Api;
  10. import io.swagger.annotations.ApiOperation;
  11. import io.swagger.annotations.ApiParam;
  12. import org.apache.commons.lang3.StringUtils;
  13. import org.springframework.beans.factory.annotation.Autowired;
  14. import org.springframework.http.ResponseEntity;
  15. import org.springframework.web.bind.annotation.*;
  16. import java.text.ParseException;
  17. import java.text.SimpleDateFormat;
  18. import java.util.List;
  19. import java.util.regex.Matcher;
  20. import java.util.regex.Pattern;
  21. /**
  22. * @author linaz
  23. * @created 2016.05.12 18:00
  24. */
  25. @RequestMapping(ApiVersion.Version1_0 + "/admin/esb")
  26. @RestController
  27. @Api(value = "程序版本发布信息管理接口", description = "程序版本发布信息管理接口" ,tags = {"ESB管理 -程序版本发布信息管理接口"})
  28. public class HosEsbMiniInstallLogController extends BaseController {
  29. @Autowired
  30. private HosEsbMiniInstallLogClient hosEsbMiniInstallLogClient;
  31. @Autowired
  32. private OrganizationClient organizationClient;
  33. @RequestMapping(value = "/searchHosEsbMiniInstallLog", method = RequestMethod.GET)
  34. @ApiOperation(value = "根据查询条件获取程序版本发布信息", notes = "根据查询条件获取程序版本发布信息")
  35. public Envelop searchHosEsbMiniInstallLogs(
  36. @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段", defaultValue = "")
  37. @RequestParam(value = "fields", required = false) String fields,
  38. @ApiParam(name = "filters", value = "过滤器,为空检索所有条件", defaultValue = "")
  39. @RequestParam(value = "filters", required = false) String filters,
  40. @ApiParam(name = "sorts", value = "排序,规则参见说明文档", defaultValue = "")
  41. @RequestParam(value = "sorts", required = false) String sorts,
  42. @ApiParam(name = "size", value = "分页大小", defaultValue = "15")
  43. @RequestParam(value = "size", required = false) int size,
  44. @ApiParam(name = "page", value = "页码", defaultValue = "1")
  45. @RequestParam(value = "page", required = false) int page) throws ParseException {
  46. ResponseEntity<List<MHosEsbMiniInstallLog>> responseEntity = hosEsbMiniInstallLogClient.searchHosEsbMiniInstallLogs(fields, filters, sorts, size, page);
  47. List<MHosEsbMiniInstallLog> mHosEsbMiniInstallLogList = responseEntity.getBody();
  48. if(mHosEsbMiniInstallLogList.size()>0){
  49. for(MHosEsbMiniInstallLog mHosEsbMiniInstallLog:mHosEsbMiniInstallLogList){
  50. if(StringUtils.isNotBlank(mHosEsbMiniInstallLog.getOrgCode())){
  51. String regEx="[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]";
  52. Pattern p = Pattern.compile(regEx);
  53. Matcher m = p.matcher(mHosEsbMiniInstallLog.getOrgCode());
  54. MOrganization mOrganization = organizationClient.getOrg(m.replaceAll("").trim());
  55. if(mOrganization!=null){
  56. mHosEsbMiniInstallLog.setOrgName(mOrganization.getFullName());
  57. }
  58. }
  59. if(mHosEsbMiniInstallLog.getInstallTime()!=null){
  60. SimpleDateFormat sm = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  61. mHosEsbMiniInstallLog.setInstallDate(sm.format(mHosEsbMiniInstallLog.getInstallTime()));
  62. }
  63. }
  64. }
  65. int totalCount = getTotalCount (responseEntity);
  66. return getResult(mHosEsbMiniInstallLogList, totalCount, page, size);
  67. }
  68. }