434b0029cfc3308c6e85aac40503338b4862a0e3.svn-base 5.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. package cn.com.goldenwater.dcproj.utils;
  2. import cn.com.goldenwater.dcproj.constValue.SplitValue;
  3. import cn.com.goldenwater.dcproj.dto.PersAllInfoDto;
  4. import org.apache.commons.collections.map.HashedMap;
  5. import org.apache.commons.lang3.StringUtils;
  6. import java.text.ParseException;
  7. import java.text.SimpleDateFormat;
  8. import java.util.Map;
  9. /**
  10. * Created by 61618 on 2018/12/9.
  11. */
  12. public class TimeRangeUtil {
  13. public static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  14. public static boolean isTimeRange(PersAllInfoDto item, Map<String, String> mapGroup) throws ParseException {
  15. if(StringUtils.isNotBlank(item.getSttm()) && StringUtils.isNotBlank(item.getEntm()) && StringUtils.isNotBlank(mapGroup.get("STTM")) && StringUtils.isNotBlank(mapGroup.get("ENTM"))){
  16. return (sdf.parse(item.getSttm()).getTime() <= sdf.parse(mapGroup.get("STTM")).getTime() && sdf.parse(item.getEntm()).getTime() >= sdf.parse(mapGroup.get("STTM")).getTime()) ||
  17. (sdf.parse(item.getSttm()).getTime() <= sdf.parse(mapGroup.get("ENTM")).getTime() && sdf.parse(item.getEntm()).getTime() >= sdf.parse(mapGroup.get("ENTM")).getTime()) ||
  18. (sdf.parse(mapGroup.get("STTM")).getTime() <= sdf.parse(item.getSttm()).getTime() && sdf.parse(mapGroup.get("ENTM")).getTime() >= sdf.parse(item.getSttm()).getTime()) ||
  19. (sdf.parse(mapGroup.get("STTM")).getTime() <= sdf.parse(item.getEntm()).getTime() && sdf.parse(mapGroup.get("ENTM")).getTime() >= sdf.parse(item.getEntm()).getTime());
  20. }else if(StringUtils.isNotBlank(mapGroup.get("STTM")) && StringUtils.isBlank(mapGroup.get("ENTM"))){
  21. if(StringUtils.isNotBlank(item.getSttm()) && StringUtils.isBlank(item.getEntm())){
  22. return sdf.parse(mapGroup.get("STTM")).getTime() == sdf.parse(item.getSttm()).getTime();
  23. }
  24. if(StringUtils.isBlank(item.getSttm()) && StringUtils.isNotBlank(item.getEntm())){
  25. return sdf.parse(mapGroup.get("STTM")).getTime() == sdf.parse(item.getEntm()).getTime();
  26. }
  27. if(StringUtils.isNotBlank(item.getSttm()) && StringUtils.isNotBlank(item.getEntm())){
  28. return (sdf.parse(mapGroup.get("STTM")).getTime() >= sdf.parse(item.getSttm()).getTime() &&
  29. sdf.parse(mapGroup.get("STTM")).getTime() <= sdf.parse(item.getEntm()).getTime());
  30. }
  31. }else if(StringUtils.isBlank(mapGroup.get("STTM")) && StringUtils.isNotBlank(mapGroup.get("ENTM"))){
  32. if(StringUtils.isNotBlank(item.getSttm()) && StringUtils.isBlank(item.getEntm())){
  33. return sdf.parse(mapGroup.get("ENTM")).getTime() == sdf.parse(item.getSttm()).getTime();
  34. }
  35. if(StringUtils.isBlank(item.getSttm()) && StringUtils.isNotBlank(item.getEntm())){
  36. return sdf.parse(mapGroup.get("ENTM")).getTime() == sdf.parse(item.getEntm()).getTime();
  37. }
  38. if(StringUtils.isNotBlank(item.getSttm()) && StringUtils.isNotBlank(item.getEntm())){
  39. return (sdf.parse(mapGroup.get("ENTM")).getTime() >= sdf.parse(item.getSttm()).getTime() &&
  40. sdf.parse(mapGroup.get("ENTM")).getTime() <= sdf.parse(item.getEntm()).getTime());
  41. }
  42. }else if(StringUtils.isNotBlank(item.getSttm()) && StringUtils.isBlank(item.getEntm())){
  43. if(StringUtils.isNotBlank(mapGroup.get("STTM")) && StringUtils.isBlank(mapGroup.get("ENTM"))){
  44. return sdf.parse(item.getSttm()).getTime() == sdf.parse(mapGroup.get("STTM")).getTime();
  45. }
  46. if(StringUtils.isBlank(mapGroup.get("STTM")) && StringUtils.isNotBlank(mapGroup.get("ENTM"))){
  47. return sdf.parse(item.getSttm()).getTime() == sdf.parse(mapGroup.get("ENTM")).getTime();
  48. }
  49. if(StringUtils.isNotBlank(mapGroup.get("STTM")) && StringUtils.isNotBlank(mapGroup.get("ENTM"))){
  50. return (sdf.parse(item.getSttm()).getTime() >= sdf.parse(mapGroup.get("STTM")).getTime() &&
  51. sdf.parse(item.getSttm()).getTime() <= sdf.parse(mapGroup.get("ENTM")).getTime());
  52. }
  53. }else if(StringUtils.isBlank(item.getSttm()) && StringUtils.isNotBlank(item.getEntm())){
  54. if(StringUtils.isNotBlank(mapGroup.get("STTM")) && StringUtils.isBlank(mapGroup.get("ENTM"))){
  55. return sdf.parse(item.getEntm()).getTime() == sdf.parse(mapGroup.get("STTM")).getTime();
  56. }
  57. if(StringUtils.isBlank(mapGroup.get("STTM")) && StringUtils.isNotBlank(mapGroup.get("ENTM"))){
  58. return sdf.parse(item.getEntm()).getTime() == sdf.parse(mapGroup.get("ENTM")).getTime();
  59. }
  60. if(StringUtils.isNotBlank(mapGroup.get("STTM")) && StringUtils.isNotBlank(mapGroup.get("ENTM"))){
  61. return (sdf.parse(item.getEntm()).getTime() >= sdf.parse(mapGroup.get("STTM")).getTime() &&
  62. sdf.parse(item.getEntm()).getTime() <= sdf.parse(mapGroup.get("ENTM")).getTime());
  63. }
  64. }
  65. return false;
  66. }
  67. }