Przeglądaj źródła

Merge branch 'master' of http://8.137.121.180:10880/longping/subject_gxj

# Conflicts:
#	projects-service/src/main/java/com/rtrh/projects/modules/projects/service/SubInfoService.java
#	projects-service/src/main/java/com/rtrh/projects/modules/projects/service/impl/SubInfoServiceImpl.java
#	projects/src/main/java/com/rtrh/projects/web/controller/subject/SubInfoController.java
Wayne 4 miesięcy temu
rodzic
commit
fa436f66a6
100 zmienionych plików z 470 dodań i 5974 usunięć
  1. 6 0
      projects-service/src/main/java/com/rtrh/projects/modules/projects/mapper/SubInfoMapper.java
  2. 79 1
      projects-service/src/main/java/com/rtrh/projects/modules/projects/mapper/SubInfoMapper.xml
  3. 18 0
      projects-service/src/main/java/com/rtrh/projects/modules/projects/po/SubInfo.hbm.xml
  4. 196 0
      projects-service/src/main/java/com/rtrh/projects/modules/projects/po/SubInfo.java
  5. 6 4
      projects-service/src/main/java/com/rtrh/projects/modules/projects/po/SubInfoGxj.java
  6. 2 0
      projects-service/src/main/java/com/rtrh/projects/modules/projects/service/SubInfoQueryService.java
  7. 10 4
      projects-service/src/main/java/com/rtrh/projects/modules/projects/service/SubInfoService.java
  8. 49 0
      projects-service/src/main/java/com/rtrh/projects/modules/projects/service/impl/SubInfoQueryServiceImpl.java
  9. 42 1
      projects-service/src/main/java/com/rtrh/projects/modules/projects/service/impl/SubInfoServiceImpl.java
  10. 52 0
      projects-service/src/main/java/com/rtrh/projects/modules/projects/vo/StatisticsVO.java
  11. 10 0
      projects-service/src/main/java/com/rtrh/projects/vo/subject/MoveDbParamVo.java
  12. 0 39
      projects-service_1018/.classpath
  13. 0 36
      projects-service_1018/.project
  14. 0 9
      projects-service_1018/.settings/org.eclipse.jdt.core.prefs
  15. 0 4
      projects-service_1018/.settings/org.eclipse.m2e.core.prefs
  16. 0 8
      projects-service_1018/.settings/org.eclipse.wst.common.component
  17. 0 5
      projects-service_1018/.settings/org.eclipse.wst.common.project.facet.core.xml
  18. 0 2
      projects-service_1018/.settings/org.eclipse.wst.validation.prefs
  19. 0 266
      projects-service_1018/pom.xml
  20. 0 124
      projects-service_1018/src/main/java/cn/afterturn/easypoi/excel/ExcelImportUtils.java
  21. 0 296
      projects-service_1018/src/main/java/cn/afterturn/easypoi/excel/export/ExcelExportService2.java
  22. 0 690
      projects-service_1018/src/main/java/cn/afterturn/easypoi/excel/imports/ExcelImportService2.java
  23. 0 288
      projects-service_1018/src/main/java/cn/afterturn/easypoi/excel/imports/base/ImportBaseService2.java
  24. 0 134
      projects-service_1018/src/main/java/cn/afterturn/easypoi/excel/imports/recursive/ExcelImportForkJoinWork2.java
  25. 0 35
      projects-service_1018/src/main/java/com/rtrh/projects/baseConfig/BaseConfig.java
  26. 0 16
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/SecurityStaticValue.java
  27. 0 128
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/dao/CommLoginDao.java
  28. 0 68
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/dao/CommUserDao.java
  29. 0 21
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/enums/LockState.java
  30. 0 26
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/exception/OrgUserNotFoundException.java
  31. 0 33
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/exception/UsernameExistException.java
  32. 0 14
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/po/CommLogin.hbm.xml
  33. 0 78
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/po/CommLogin.java
  34. 0 15
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/po/CommUser.hbm.xml
  35. 0 81
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/po/CommUser.java
  36. 0 19
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/service/CommLoginService.java
  37. 0 33
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/service/CommUserService.java
  38. 0 59
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/service/impl/CommLoginServiceImpl.java
  39. 0 41
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/service/impl/CommUserChecker.java
  40. 0 193
      projects-service_1018/src/main/java/com/rtrh/projects/modules/account/service/impl/CommUserServiceImpl.java
  41. 0 69
      projects-service_1018/src/main/java/com/rtrh/projects/modules/email/EmailConfig.java
  42. 0 30
      projects-service_1018/src/main/java/com/rtrh/projects/modules/email/dao/EmailSendRecordDao.java
  43. 0 13
      projects-service_1018/src/main/java/com/rtrh/projects/modules/email/po/EmailSendRecord.hbm.xml
  44. 0 41
      projects-service_1018/src/main/java/com/rtrh/projects/modules/email/po/EmailSendRecord.java
  45. 0 18
      projects-service_1018/src/main/java/com/rtrh/projects/modules/email/service/EmailService.java
  46. 0 71
      projects-service_1018/src/main/java/com/rtrh/projects/modules/email/service/impl/EmailServiceImpl.java
  47. 0 69
      projects-service_1018/src/main/java/com/rtrh/projects/modules/email/utils/EmailSendUtils.java
  48. 0 37
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/enums/HikApiEnum.java
  49. 0 36
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/enums/HikExpressionOperatorEnum.java
  50. 0 35
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/request/CameraPreviewURLsQueryVO.java
  51. 0 49
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/request/CameraSearchQueryVO.java
  52. 0 49
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/request/EncodeDeviceSearchQueryVO.java
  53. 0 25
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/request/Expressions.java
  54. 0 145
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/response/CameraSearchData.java
  55. 0 80
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/response/EncodeDeviceSearchData.java
  56. 0 28
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/response/HikPage.java
  57. 0 20
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/response/HikResponse.java
  58. 0 11
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/response/PreviewUrlData.java
  59. 0 28
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/service/IHikApiService.java
  60. 0 205
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/service/impl/IHikApiServiceImpl.java
  61. 0 134
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/utils/HikRequestUtils.java
  62. 0 24
      projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/vo/SyncHikCameraVO.java
  63. 0 37
      projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/dto/IntermediatryDao.java
  64. 0 26
      projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/dto/IntermediatryFileDao.java
  65. 0 42
      projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/enums/IntermediatryStatus.java
  66. 0 33
      projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/po/Intermediatry.hbm.xml
  67. 0 148
      projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/po/Intermediatry.java
  68. 0 13
      projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/po/IntermediatryFile.hbm.xml
  69. 0 47
      projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/po/IntermediatryFile.java
  70. 0 425
      projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/service/Impl/IntermediatryServiceImpl.java
  71. 0 71
      projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/service/IntermediatryService.java
  72. 0 15
      projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/vo/BackInterVO.java
  73. 0 117
      projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/vo/IntermediatrExcelVO.java
  74. 0 45
      projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/vo/IntermediatryQueryVO.java
  75. 0 38
      projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/vo/IntermediatryVO.java
  76. 0 11
      projects-service_1018/src/main/java/com/rtrh/projects/modules/message/dao/MessageConsumeDao.java
  77. 0 11
      projects-service_1018/src/main/java/com/rtrh/projects/modules/message/dao/MessageInfoDao.java
  78. 0 13
      projects-service_1018/src/main/java/com/rtrh/projects/modules/message/po/MessageConsume.hbm.xml
  79. 0 45
      projects-service_1018/src/main/java/com/rtrh/projects/modules/message/po/MessageConsume.java
  80. 0 13
      projects-service_1018/src/main/java/com/rtrh/projects/modules/message/po/MessageInfo.hbm.xml
  81. 0 36
      projects-service_1018/src/main/java/com/rtrh/projects/modules/message/po/MessageInfo.java
  82. 0 48
      projects-service_1018/src/main/java/com/rtrh/projects/modules/message/service/MessageInfoService.java
  83. 0 109
      projects-service_1018/src/main/java/com/rtrh/projects/modules/message/service/impl/MessageInfoServiceImpl.java
  84. 0 23
      projects-service_1018/src/main/java/com/rtrh/projects/modules/message/vo/MessageQueryVO.java
  85. 0 19
      projects-service_1018/src/main/java/com/rtrh/projects/modules/message/vo/MessageVO.java
  86. 0 22
      projects-service_1018/src/main/java/com/rtrh/projects/modules/msglog/dao/PhoneMsgLogDao.java
  87. 0 17
      projects-service_1018/src/main/java/com/rtrh/projects/modules/msglog/po/PhoneMsgLog.hbm.xml
  88. 0 60
      projects-service_1018/src/main/java/com/rtrh/projects/modules/msglog/po/PhoneMsgLog.java
  89. 0 18
      projects-service_1018/src/main/java/com/rtrh/projects/modules/msglog/service/IPhoneMsgLogService.java
  90. 0 120
      projects-service_1018/src/main/java/com/rtrh/projects/modules/msglog/service/impl/PhoneMsgLogServiceImpl.java
  91. 0 16
      projects-service_1018/src/main/java/com/rtrh/projects/modules/msglog/vo/MsgLogQueryKindVO.java
  92. 0 15
      projects-service_1018/src/main/java/com/rtrh/projects/modules/msglog/vo/PhoneMsgLogQueryVO.java
  93. 0 50
      projects-service_1018/src/main/java/com/rtrh/projects/modules/notice/dao/NoticeDao.java
  94. 0 20
      projects-service_1018/src/main/java/com/rtrh/projects/modules/notice/po/NoticePO.hbm.xml
  95. 0 52
      projects-service_1018/src/main/java/com/rtrh/projects/modules/notice/po/NoticePO.java
  96. 0 48
      projects-service_1018/src/main/java/com/rtrh/projects/modules/notice/service/NoticeService.java
  97. 0 72
      projects-service_1018/src/main/java/com/rtrh/projects/modules/notice/service/impl/NoticeServiceImpl.java
  98. 0 65
      projects-service_1018/src/main/java/com/rtrh/projects/modules/outApi/vo/StaticsQueryVO.java
  99. 0 11
      projects-service_1018/src/main/java/com/rtrh/projects/modules/policy/dao/PolicyDocumentColumnDao.java
  100. 0 15
      projects-service_1018/src/main/java/com/rtrh/projects/modules/policy/dao/PolicyDocumentDao.java

+ 6 - 0
projects-service/src/main/java/com/rtrh/projects/modules/projects/mapper/SubInfoMapper.java

@@ -1,6 +1,8 @@
 package com.rtrh.projects.modules.projects.mapper;
 
+import java.math.BigDecimal;
 import java.util.List;
+import java.util.Map;
 
 import com.rtrh.projects.modules.projects.dto.SubFixCbSearch;
 import com.rtrh.projects.modules.projects.po.SubFix;
@@ -38,6 +40,10 @@ public interface SubInfoMapper {
 
     List<SubInfoGxj> queryPage(@Param("vo") SubInfoQueryTzVO queryVO);
 
+    List<SubInfoGxj> queryStatistics(@Param("vo") SubInfoQueryTzVO queryVO);
+
+    SubInfoGxj findById(@Param("id") String id);
+
     List<SubFixCbVo> subFixCbAll(@Param("subFixCbSearch") SubFixCbSearch subFixCbSearch);
 
     @Select("SELECT sub_id FROM sub_fix where year = #{subInfoToSubFixVo.year} and cat = #{subInfoToSubFixVo.cat}")

+ 79 - 1
projects-service/src/main/java/com/rtrh/projects/modules/projects/mapper/SubInfoMapper.xml

@@ -166,8 +166,9 @@
         kind_nature AS kindNature
         from sub_info
         <where>
+            logic_delete_flag = 0
             <if test="vo.subName!=null and vo.subName!=''">
-                sub_name like CONCAT('%', #{vo.subName}, '%')
+                and sub_name like CONCAT('%', #{vo.subName}, '%')
             </if>
             <if test="vo.subjectId!=null and vo.subjectId!=''">
                 and subject_id = #{vo.subjectId}
@@ -184,8 +185,85 @@
             <if test="vo.sbdw!=null and vo.sbdw!=''">
                 and unit_desc = #{vo.sbdw}
             </if>
+            <if test="vo.status!=null and vo.status!=''">
+                and status = #{vo.status}
+            </if>
+        </where>
+    </select>
+    <select id="queryStatistics" resultType="com.rtrh.projects.modules.projects.po.SubInfoGxj">
+        select
+            status,abc,subject_id subjectId,indus_kind indusKind
+        from sub_info
+        <where>
+            logic_delete_flag = 0
+            <if test="vo.subName!=null and vo.subName!=''">
+                and sub_name like CONCAT('%', #{vo.subName}, '%')
+            </if>
+            <if test="vo.subjectId!=null and vo.subjectId!=''">
+                and subject_id = #{vo.subjectId}
+            </if>
+            <if test="vo.indusKind!=null and vo.indusKind!=''">
+                and indus_kind = #{vo.indusKind}
+            </if>
+            <if test="vo.startAmt!=null and vo.startAmt!=''">
+                and amt_total >= #{vo.startAmt}
+            </if>
+            <if test="vo.endAmt!=null and vo.endAmt!=''">
+                and amt_total &lt;= #{vo.endAmt}
+            </if>
+            <if test="vo.sbdw!=null and vo.sbdw!=''">
+                and unit_desc = #{vo.sbdw}
+            </if>
+            <if test="vo.status!=null and vo.status!=''">
+                and status = #{vo.status}
+            </if>
         </where>
     </select>
+    <select id="findById" resultType="com.rtrh.projects.modules.projects.po.SubInfoGxj">
+        SELECT
+            id,
+            sub_id AS subId,
+            unit_id AS unitId,
+            unit_desc AS unitDesc,
+            sub_code AS subCode,
+            sub_name AS subName,
+            indus_kind AS indusKind,
+            amt_total AS amtTotal,
+            abc,
+            subject_id AS subjectId,
+            begin_date AS beginDate,
+            end_date AS endDate,
+            rt_date AS rtDate,
+            content AS content,
+            progress AS progress,
+            cb_status AS cbStatus,
+            qy_date AS qyDate,
+            xj_date AS xjDate,
+            zj_date AS zjDate,
+            tc_date AS tcDate,
+            cb_num AS cbNum,
+            xj_num AS xjNum,
+            zj_num AS zjNum,
+            remark,
+            name_zrr AS nameZrr,
+            tel AS tel,
+            name_lead AS nameLead,
+            tel_lead AS telLead,
+            status AS status,
+            is_rg AS isRg,
+            rg_date AS rgDate,
+            create_user_id AS createUserId,
+            create_user_name AS createUserName,
+            create_time AS createTime,
+            last_update_user_id AS lastUpdateUserId,
+            last_update_user_name AS lastUpdateUserName,
+            last_update_time AS lastUpdateTime,
+            logic_delete_flag AS logicDeleteFlag,
+            status_lamp AS statusLamp,
+            kind_nature AS kindNature
+        from sub_info
+        where id = #{id}
+    </select>
 
     <select id="subFixCbAll" resultType="com.rtrh.projects.modules.projects.vo.SubFixCbVo">
         SELECT sub_info.id as id,

+ 18 - 0
projects-service/src/main/java/com/rtrh/projects/modules/projects/po/SubInfo.hbm.xml

@@ -87,5 +87,23 @@
         <property column="last_update_time" name="lastUpdateTime" not-null="false" type="java.util.Date" />
         <property column="logic_delete_flag" name="logicDeleteFlag" not-null="false" type="java.lang.Integer" />
         <property column="yb_content" name="ybContent" not-null="false" type="java.lang.String" />
+        <property column="progress" name="progress" not-null="false" type="java.lang.String" />
+        <property column="unit_desc" name="unitDesc" not-null="false" type="java.lang.String" />
+        <property column="indus_name" name="indusName" not-null="false" type="java.lang.String" />
+
+        <property column="subject_name" name="subjectName" not-null="false" type="java.lang.String" />
+        <property column="rt_date" name="rtDate" not-null="false" type="java.util.Date" />
+        <property column="cb_status" name="cbStatus" not-null="false" type="java.lang.String" />
+        <property column="qy_date" name="qyDate" not-null="false" type="java.util.Date" />
+        <property column="xj_date" name="xjDate" not-null="false" type="java.util.Date" />
+        <property column="zj_date" name="zjDate" not-null="false" type="java.util.Date" />
+        <property column="tc_date" name="tcDate" not-null="false" type="java.util.Date" />
+        <property column="cb_num" name="cbNum" not-null="false" type="java.lang.Integer" />
+        <property column="xj_num" name="xjNum" not-null="false" type="java.lang.Integer" />
+        <property column="zj_num" name="zjNum" not-null="false" type="java.lang.Integer" />
+        <property column="rg_date" name="rgDate" not-null="false" type="java.util.Date" />
+        <property column="create_user_name" name="createUserName" not-null="false" type="java.lang.String" />
+        <property column="last_update_user_name" name="lastUpdateUserName" not-null="false" type="java.lang.String" />
+        <property column="status_lamp" name="statusLamp" not-null="false" type="java.lang.String" />
 	</class>
 </hibernate-mapping>

+ 196 - 0
projects-service/src/main/java/com/rtrh/projects/modules/projects/po/SubInfo.java

@@ -5,6 +5,7 @@ import java.util.Date;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.rtrh.projects.modules.system.po.TableBaseColomn;
+import org.springframework.format.annotation.DateTimeFormat;
 
 import javax.persistence.Entity;
 import javax.persistence.Id;
@@ -390,6 +391,66 @@ public class SubInfo extends TableBaseColomn {
 	 */
 	private Integer sort1;
 
+	// ----------------------------------------
+	// 申请单位名称
+	private String unitDesc;
+
+	// 行业类别名称
+	private String indusName;
+
+	// 责任主体名称
+	private String subjectName;
+
+	// 计划申规入统时间
+	@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+	private Date rtDate;
+
+	// 进展情况
+	private String progress;
+
+	// 储备项目状态:(正在谋划,正在洽谈,已签约,已备案,已核准)
+	private String cbStatus;
+
+	// 签约日期
+	@JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
+	private Date qyDate;
+
+	// 转入新建库的日期
+	@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+	private Date xjDate;
+
+	// 转入在建库的日期
+	@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+	private Date zjDate;
+
+	// 转入投产库的日期
+	@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+	private Date tcDate;
+
+	// 储备转新建周期
+	private Integer cbNum;
+
+	// 新建转在建周期
+	private Integer xjNum;
+
+	// 在建转投产周期
+	private Integer zjNum;
+
+	// 实际入轨日期
+	@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+	private Date rgDate;
+
+	// 创建人登录名称
+	private String createUserName;
+
+	// 更新人名称
+	private String lastUpdateUserName;
+
+	// 1-绿灯 2-红灯
+	private String statusLamp;
+
+	// 建设性质:1-储备 2-新建 3-在建 9-投产
+	private String statusName;
 
 
 
@@ -861,4 +922,139 @@ public class SubInfo extends TableBaseColomn {
 		this.statusZd = statusZd;
 	}
 
+	public String getUnitDesc() {
+		return unitDesc;
+	}
+
+	public void setUnitDesc(String unitDesc) {
+		this.unitDesc = unitDesc;
+	}
+
+	public String getIndusName() {
+		return indusName;
+	}
+
+	public void setIndusName(String indusName) {
+		this.indusName = indusName;
+	}
+
+	public String getSubjectName() {
+		return subjectName;
+	}
+
+	public void setSubjectName(String subjectName) {
+		this.subjectName = subjectName;
+	}
+
+	public Date getRtDate() {
+		return rtDate;
+	}
+
+	public void setRtDate(Date rtDate) {
+		this.rtDate = rtDate;
+	}
+
+	public String getProgress() {
+		return progress;
+	}
+
+	public void setProgress(String progress) {
+		this.progress = progress;
+	}
+
+	public String getCbStatus() {
+		return cbStatus;
+	}
+
+	public void setCbStatus(String cbStatus) {
+		this.cbStatus = cbStatus;
+	}
+
+	public Date getQyDate() {
+		return qyDate;
+	}
+
+	public void setQyDate(Date qyDate) {
+		this.qyDate = qyDate;
+	}
+
+	public Date getXjDate() {
+		return xjDate;
+	}
+
+	public void setXjDate(Date xjDate) {
+		this.xjDate = xjDate;
+	}
+
+	public Date getZjDate() {
+		return zjDate;
+	}
+
+	public void setZjDate(Date zjDate) {
+		this.zjDate = zjDate;
+	}
+
+	public Date getTcDate() {
+		return tcDate;
+	}
+
+	public void setTcDate(Date tcDate) {
+		this.tcDate = tcDate;
+	}
+
+	public Integer getCbNum() {
+		return cbNum;
+	}
+
+	public void setCbNum(Integer cbNum) {
+		this.cbNum = cbNum;
+	}
+
+	public Integer getXjNum() {
+		return xjNum;
+	}
+
+	public void setXjNum(Integer xjNum) {
+		this.xjNum = xjNum;
+	}
+
+	public Integer getZjNum() {
+		return zjNum;
+	}
+
+	public void setZjNum(Integer zjNum) {
+		this.zjNum = zjNum;
+	}
+
+	public Date getRgDate() {
+		return rgDate;
+	}
+
+	public void setRgDate(Date rgDate) {
+		this.rgDate = rgDate;
+	}
+
+	public String getCreateUserName() {
+		return createUserName;
+	}
+
+	public void setCreateUserName(String createUserName) {
+		this.createUserName = createUserName;
+	}
+
+	public String getLastUpdateUserName() {
+		return lastUpdateUserName;
+	}
+
+	public void setLastUpdateUserName(String lastUpdateUserName) {
+		this.lastUpdateUserName = lastUpdateUserName;
+	}
+
+	public String getStatusLamp() {
+		return statusLamp;
+	}
+
+	public void setStatusLamp(String statusLamp) {
+		this.statusLamp = statusLamp;
+	}
 }

+ 6 - 4
projects-service/src/main/java/com/rtrh/projects/modules/projects/po/SubInfoGxj.java

@@ -41,6 +41,7 @@ public class SubInfoGxj implements Serializable {
 
     // 行业类别id
     private String indusKind;
+    private String indusName;
 
     // 总金额
     private Float amtTotal;
@@ -48,8 +49,9 @@ public class SubInfoGxj implements Serializable {
     // abc类型
     private String abc;
 
-    // 责任主体:(1-市本级,2-伊州区,3-巴里坤县,4-伊吾县,5-高新区)
+    // 责任主体:(1-市本级,2-伊州区,3-巴里坤县,4-伊吾县,5-高新区) [建设地点]
     private String subjectId;
+    private String subjectName;
 
     // 开始计划日期
     private LocalDate beginDate;
@@ -105,8 +107,9 @@ public class SubInfoGxj implements Serializable {
     // 总负责人电话
     private String telLead;
 
-    // 状态:1-储备 2-新建 3-在建 9-投产
+    // 状态:1-储备 2-新建 3-在建 9-投产 【建设性质】
     private String status;
+    private String statusName;
 
     // 1-入规 0未入规
     private Boolean isRg;
@@ -141,6 +144,5 @@ public class SubInfoGxj implements Serializable {
     // 投资类型: 1政府类、2 投资类
     private String kindNature;
 
-    // 投资类型: 1政府类、2 投资类
-    private String subjectName;
+
 }

+ 2 - 0
projects-service/src/main/java/com/rtrh/projects/modules/projects/service/SubInfoQueryService.java

@@ -330,4 +330,6 @@ public interface SubInfoQueryService {
 	Page subFixCbAll(SubFixCbSearch subFixCbSearch);
 
 	Page queryPage(Page page, LoginUserVO loginUser, SubInfoQueryTzVO queryVO);
+
+	StatisticsVO queryStatistics(SubInfoQueryTzVO queryVO, LoginUserVO loginUser);
 }

+ 10 - 4
projects-service/src/main/java/com/rtrh/projects/modules/projects/service/SubInfoService.java

@@ -8,10 +8,12 @@ import java.util.Map;
 import com.rtrh.core.repository.Page;
 import com.rtrh.core.vo.Message;
 import com.rtrh.projects.modules.projects.po.SubInfo;
+import com.rtrh.projects.modules.projects.po.SubInfoGxj;
 import com.rtrh.projects.modules.projects.po.SubLabel;
 import com.rtrh.projects.modules.projects.vo.*;
 import com.rtrh.projects.modules.projects.vo.export.SubInfoFixVO;
 import com.rtrh.projects.modules.system.vo.LoginUserVO;
+import com.rtrh.projects.vo.subject.MoveDbParamVo;
 import com.rtrh.projects.vo.subject.SubinfoPreQueryVo;
 
 public interface SubInfoService {
@@ -45,10 +47,8 @@ public interface SubInfoService {
 	Page pageQueryReportList(Page page,LoginUserVO loginUserVO, String subName, String unitId,String kind, String status, String statusSp,
 							 String propKind, String indusKind, Date beginDate, Date endDate);
 
-
-
-	Page pageQueryReportListSql(Page page,LoginUserVO loginUserVO, String subName, String unitId,String kind, String status, String statusSp,
-								String propKind, String indusKind, Date beginDate, Date endDate);
+	Page pageQueryReportListSql(Page page, LoginUserVO loginUserVO, String subName, String unitId, String kind, String status, String statusSp,
+									   String propKind, String indusKind, Date beginDate, Date endDate, List<String> subInfoIds);
 
 
 
@@ -396,6 +396,12 @@ public interface SubInfoService {
 
 	void addLabelS(SubLabelAddVO vo, List list);
 
+	List<String> selectAllSubInfoIds();
+
+	SubInfoGxj findById(String subId);
+
+	boolean moveDb(MoveDbParamVo vo);
+
 	void subInfoToSubFix(SubInfoToSubFixVo subInfoToSubFixVo,String userId);
 
 	void updateFixeCat(String subInfoId, String cat);

+ 49 - 0
projects-service/src/main/java/com/rtrh/projects/modules/projects/service/impl/SubInfoQueryServiceImpl.java

@@ -8,6 +8,7 @@ import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.stream.Collectors;
 
+import cn.hutool.core.map.MapUtil;
 import cn.hutool.core.util.StrUtil;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
@@ -184,6 +185,53 @@ public class SubInfoQueryServiceImpl implements SubInfoQueryService {
         return page;
     }
 
+    @Override
+    public StatisticsVO queryStatistics(SubInfoQueryTzVO queryVO, LoginUserVO loginUser) {
+        List<SubInfoGxj> list = subInfoMapper.queryStatistics(queryVO);
+        // 储备项目总数
+        long cbNum = list.stream().filter(e -> "1".equals(e.getStatus())).count();
+        // abc类统计
+        Map<String, Long> abc = list.stream().filter(e -> StringUtils.isNotBlank(e.getAbc())).collect(Collectors.groupingBy(SubInfoGxj::getAbc, Collectors.counting()));
+        // 建设地点统计
+        List<TSystable> jsddDict = tSysTableService.getByKind(SysTableKind.JSDD);
+        Map<String, Long> subject = list.stream()
+                .filter(e -> StringUtils.isNotBlank(e.getSubjectId()))
+                .collect(Collectors.groupingBy(SubInfoGxj::getSubjectId, Collectors.counting()));
+        List<StatisticsVO.KvNum> jsddList = new ArrayList<>();
+        subject.forEach((k, v) -> {
+            jsddDict.stream()
+                    .filter(d -> d.getCode().equals(k))
+                    .findFirst()
+                    .ifPresent(d -> {
+                        jsddList.add(new StatisticsVO.KvNum()
+                                .setCode(d.getCode())
+                                .setName(d.getTitle())
+                                .setNum(v));
+                    });
+        });
+        // 行业统计
+        List<TSystable> hyflDict = tSysTableService.getByKind(SysTableKind.HYFL);
+        Map<String, Long> indusKind = list.stream().filter(e -> StringUtils.isNotBlank(e.getIndusKind())).collect(Collectors.groupingBy(SubInfoGxj::getIndusKind, Collectors.counting()));
+        List<StatisticsVO.KvNum> hyflList = new ArrayList<>();
+        indusKind.forEach((k, v) -> {
+            hyflDict.stream().filter(d -> d.getCode().equals(k))
+                    .findFirst()
+                    .ifPresent(d -> {
+                        hyflList.add(new StatisticsVO.KvNum()
+                                .setCode(d.getCode())
+                                .setName(d.getTitle())
+                                .setNum(v));
+                    });
+        });
+        return new StatisticsVO()
+                .setCbNum(cbNum)
+                .setANum(abc.getOrDefault("A", 0L))
+                .setBNum(abc.getOrDefault("B", 0L))
+                .setCNum(abc.getOrDefault("C", 0L))
+                .setJsddData(jsddList)
+                .setHyflData(hyflList);
+    }
+
     @Override
     public Page pageAll(Page page, LoginUserVO loginUserVO, SubInfoQueryTzVO queryTzVO) {
         StringBuffer sql = new StringBuffer();
@@ -1299,6 +1347,7 @@ public class SubInfoQueryServiceImpl implements SubInfoQueryService {
 		sql.append(" AND ( wamf.file_type=101 OR wamf.file_type= 102 OR wamf.file_type =203) ORDER BY wamf.create_time desc LIMIT 1 ");
 		sql.append(" ) fileId ");*/
         sql.append(", a.work_space_img fileId ");
+        sql.append(", a.tc_date tcDate ");
 
         if (Boolean.TRUE.equals(queryVO.getApp())) {
             sql.append(", NOT ISNULL(sc.id) as isAttention ");

+ 42 - 1
projects-service/src/main/java/com/rtrh/projects/modules/projects/service/impl/SubInfoServiceImpl.java

@@ -20,7 +20,9 @@ import com.rtrh.projects.modules.rolemeun.po.SecRole;
 import com.rtrh.projects.modules.system.dao.TSystableDao;
 import com.rtrh.projects.modules.system.po.*;
 import com.rtrh.projects.modules.utils.DateUtils;
+import com.rtrh.projects.util.TargetDataSource;
 import com.rtrh.projects.vo.SubIdVO;
+import com.rtrh.projects.vo.subject.MoveDbParamVo;
 import com.rtrh.projects.vo.subject.SubinfoPreQueryVo;
 import org.apache.commons.lang3.StringUtils;
 import org.hibernate.criterion.Criterion;
@@ -1024,7 +1026,7 @@ public class SubInfoServiceImpl implements SubInfoService {
 
     @Override
     public Page pageQueryReportListSql(Page page, LoginUserVO loginUserVO, String subName, String unitId, String kind, String status, String statusSp,
-                                       String propKind, String indusKind, Date beginDate, Date endDate) {
+                                       String propKind, String indusKind, Date beginDate, Date endDate, List<String> subInfoIds) {
 
         StringBuffer sql = new StringBuffer();
         sql.append(" select a.id,a.status ,a.sub_name subName,a.amt_total amtTotal,a.begin_date beginDate,a.end_date endDate,ju.title unitName,ts.title subjectName, ts1.title indusKindName   ");
@@ -1038,6 +1040,17 @@ public class SubInfoServiceImpl implements SubInfoService {
 
         sql.append(" where a.logic_delete_flag =0 ");
 
+        // 处理 subInfoIds 参数
+        if (subInfoIds != null && !subInfoIds.isEmpty()) {
+            String idListStr = subInfoIds.stream()
+                    .map(id -> "'" + id + "'") // 每个 ID 加单引号
+                    .collect(Collectors.joining(","));
+            sql.append(" and a.id in (").append(idListStr).append(") ");
+        }else {
+            sql.append(" and a.id in ( ) ");
+        }
+
+
 
         //2024-03-28客户提出admin用户需查询和储备台账一样的数据
         SecRole role = secRoleDao.findById(loginUserVO.getKind());
@@ -4711,6 +4724,34 @@ public class SubInfoServiceImpl implements SubInfoService {
         subInfoMapper.updateFixeCat(subInfoId,fixCat,oldCat);
     }
 
+    @TargetDataSource("secondary")
+    @Override
+    public List<String> selectAllSubInfoIds() {
+        return subInfoMapper.selectAllSubInfoIds();
+    }
+
+    @Override
+    public SubInfoGxj findById(String subId) {
+        SubInfoGxj subInfo = subInfoMapper.findById(subId);
+        sysTableService.getByKind(SysTableKind.HYFL).stream()
+                .filter(e -> e.getCode().equals(subInfo.getIndusKind()))
+                .findFirst().ifPresent(e-> subInfo.setIndusName(e.getTitle()));
+        sysTableService.getByKind(SysTableKind.JSXZ).stream()
+                .filter(e -> e.getCode().equals(subInfo.getStatus()))
+                .findFirst().ifPresent(e-> subInfo.setStatusName(e.getTitle()));
+        sysTableService.getByKind(SysTableKind.JSDD).stream()
+                .filter(e -> e.getCode().equals(subInfo.getSubjectId()))
+                .findFirst().ifPresent(e-> subInfo.setSubjectName(e.getTitle()));
+        return subInfo;
+    }
+
+    @Override
+    public boolean moveDb(MoveDbParamVo vo) {
+        SubInfo subinfo = subInfoDao.findById(vo.getId());
+        int i = subInfoDao.updateBySql("update sub_info set status='" + vo.getStatus() + "' where id='" + vo.getId() + "'");
+        return i > 0;
+    }
+
 
     public List<SubLabel> getSubLabels(SubLabelAddVO vo) {
         List<SubLabel> labelList = subLabelDao.findByCon(vo);

+ 52 - 0
projects-service/src/main/java/com/rtrh/projects/modules/projects/vo/StatisticsVO.java

@@ -0,0 +1,52 @@
+package com.rtrh.projects.modules.projects.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+import lombok.experimental.Accessors;
+
+import java.util.List;
+
+@Setter
+@Getter
+@Accessors(chain = true)
+public class StatisticsVO {
+
+    /**
+     * 储备总数
+     */
+    private Long cbNum;
+
+    /**
+     * A类数量
+     */
+    private Long aNum;
+
+    /**
+     * B类数量
+     */
+    private Long bNum;
+
+    /**
+     * C类数量
+     */
+    private Long cNum;
+
+    /**
+     * 行业分类数据
+     */
+    private List<KvNum> hyflData;
+
+    /**
+     * 建设地点
+     */
+    private List<KvNum> jsddData;
+
+    @Getter
+    @Setter
+    @Accessors(chain = true)
+    public static class KvNum {
+        private String code;
+        private String name;
+        private Long num;
+    }
+}

+ 10 - 0
projects-service/src/main/java/com/rtrh/projects/vo/subject/MoveDbParamVo.java

@@ -0,0 +1,10 @@
+package com.rtrh.projects.vo.subject;
+
+import lombok.Data;
+
+@Data
+public class MoveDbParamVo {
+    private String id;
+
+    private String status;
+}

+ 0 - 39
projects-service_1018/.classpath

@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" output="target/classes" path="src/main/java">
-		<attributes>
-			<attribute name="optional" value="true"/>
-			<attribute name="maven.pomderived" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
-		<attributes>
-			<attribute name="maven.pomderived" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="src" output="target/test-classes" path="src/test/java">
-		<attributes>
-			<attribute name="optional" value="true"/>
-			<attribute name="maven.pomderived" value="true"/>
-			<attribute name="test" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources">
-		<attributes>
-			<attribute name="maven.pomderived" value="true"/>
-			<attribute name="test" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8">
-		<attributes>
-			<attribute name="maven.pomderived" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
-		<attributes>
-			<attribute name="maven.pomderived" value="true"/>
-			<attribute name="org.eclipse.jst.component.nondependency" value=""/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="output" path="target/classes"/>
-</classpath>

+ 0 - 36
projects-service_1018/.project

@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>projects-service</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.wst.common.project.facet.core.builder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.wst.validation.validationbuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.m2e.core.maven2Builder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
-		<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.m2e.core.maven2Nature</nature>
-		<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
-	</natures>
-</projectDescription>

+ 0 - 9
projects-service_1018/.settings/org.eclipse.jdt.core.prefs

@@ -1,9 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
-org.eclipse.jdt.core.compiler.compliance=1.8
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
-org.eclipse.jdt.core.compiler.release=disabled
-org.eclipse.jdt.core.compiler.source=1.8

+ 0 - 4
projects-service_1018/.settings/org.eclipse.m2e.core.prefs

@@ -1,4 +0,0 @@
-activeProfiles=
-eclipse.preferences.version=1
-resolveWorkspaceProjects=true
-version=1

+ 0 - 8
projects-service_1018/.settings/org.eclipse.wst.common.component

@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
-    <wb-module deploy-name="funeral-service">
-        <wb-resource deploy-path="/" source-path="/src/main/java"/>
-        <wb-resource deploy-path="/" source-path="/src/main/resources"/>
-        <wb-resource deploy-path="/" source-path="/src/test/java"/>
-        <wb-resource deploy-path="/" source-path="/src/test/resources"/>
-    </wb-module>
-</project-modules>

+ 0 - 5
projects-service_1018/.settings/org.eclipse.wst.common.project.facet.core.xml

@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<faceted-project>
-  <installed facet="java" version="1.8"/>
-  <installed facet="jst.utility" version="1.0"/>
-</faceted-project>

+ 0 - 2
projects-service_1018/.settings/org.eclipse.wst.validation.prefs

@@ -1,2 +0,0 @@
-disabled=06target
-eclipse.preferences.version=1

+ 0 - 266
projects-service_1018/pom.xml

@@ -1,266 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <groupId>com.rtrh.projects</groupId>
-  <artifactId>projects-service</artifactId>
-  <version>1.0</version>
-
-  <dependencies>
-
-  		<dependency>
-			<groupId>com.rtrh.core</groupId>
-			<artifactId>rtrh-core</artifactId>
-			<version>1.0</version>
-		</dependency>
-		<dependency>
-			<groupId>com.rtrh.common</groupId>
-			<artifactId>rtrh-common-vcode</artifactId>
-			<version>2.0</version>
-		</dependency>
-		<dependency>
-			<groupId>com.rtrh.common</groupId>
-			<artifactId>rtrh-common-util</artifactId>
-			<version>1.0</version>
-		</dependency>
-		<dependency>
-			<groupId>com.rtrh.common</groupId>
-			<artifactId>rtrh-common-filesystem</artifactId>
-			<version>1.0</version>
-		</dependency>
-
-		<dependency>
-		    <groupId>org.hibernate</groupId>
-		    <artifactId>hibernate-validator</artifactId>
-		    <version>5.2.4.Final</version>
-		</dependency>
-
-<!--	  pdf模板-->
-	  <dependency>
-		  <groupId>com.itextpdf</groupId>
-		  <artifactId>itextpdf</artifactId>
-		  <version>5.5.11</version>
-	  </dependency>
-	  <!--中文字体-->
-	  <dependency>
-		  <groupId>com.itextpdf</groupId>
-		  <artifactId>itext-asian</artifactId>
-		  <version>5.2.0</version>
-	  </dependency>
-
-		<!-- easypoi -->
-		<dependency>
-		    <groupId>cn.afterturn</groupId>
-		    <artifactId>easypoi-web</artifactId>
-		    <version>4.4.0</version>
-		</dependency>
-		<dependency>
-		  <groupId>cn.afterturn</groupId>
-		  <artifactId>easypoi-base</artifactId>
-		  <version>4.4.0</version>
-		</dependency>
-		<dependency>
-		  <groupId>cn.afterturn</groupId>
-		  <artifactId>easypoi-annotation</artifactId>
-		  <version>4.4.0</version>
-		</dependency>
-		<!-- easypoi -->
-		<dependency>
-	        <groupId>org.projectlombok</groupId>
-	        <artifactId>lombok</artifactId>
-	        <version>1.18.20</version>
-	       <!--  <scope>provided</scope> -->
-	      </dependency>
-		<dependency>
-		   <groupId>com.alibaba</groupId>
-		    <artifactId>fastjson</artifactId>
-		    <version>1.2.83</version>
-		</dependency>
-		<!-- 阿里云短信 -->
-		<dependency>
-		    <groupId>com.aliyun</groupId>
-		    <artifactId>aliyun-java-sdk-core</artifactId>
-		    <version>4.5.1</version>
-		</dependency>
-		<dependency>
-			<groupId>com.aliyun</groupId>
-			<artifactId>aliyun-java-sdk-dysmsapi</artifactId>
-			<version>1.1.0</version>
-		</dependency>
-
-		<dependency>
-            <groupId>cn.hutool</groupId>
-            <artifactId>hutool-all</artifactId>
-            <version>5.8.5</version>
-        </dependency>
-
-		<!--		pdf添加水印-->
-		<dependency>
-			<groupId>org.apache.pdfbox</groupId>
-			<artifactId>pdfbox</artifactId>
-			<version>2.0.28</version>
-		</dependency>
-	  <!--  导出插件包  -->
-	  <dependency>
-		  <groupId>com.google.guava</groupId>
-		  <artifactId>guava</artifactId>
-		  <version>31.1-jre</version>
-	  </dependency>
-	  <dependency>
-		  <groupId>com.alibaba</groupId>
-		  <artifactId>easyexcel</artifactId>
-		  <version>3.0.5</version>
-	  </dependency>
-		<!-- <dependency>
-		    <groupId>org.docx4j</groupId>
-		    <artifactId>docx4j-JAXB-Internal</artifactId>
-		    <version>8.3.1</version>
-		    <exclusions>
-		    	<exclusion>
-				    <groupId>javax.servlet</groupId>
-				    <artifactId>servlet-api</artifactId>
-		    	</exclusion>
-		    	<exclusion>
-				    <groupId>org.docx4j</groupId>
-				    <artifactId>docx4j-openxml-objects-pml</artifactId>
-			    </exclusion>
-			    <exclusion>
-				    <groupId>org.docx4j</groupId>
-				    <artifactId>docx4j-openxml-objects-sml</artifactId>
-		    	</exclusion>
-		    </exclusions>
-		</dependency>
-		<dependency>
-		    <groupId>org.docx4j</groupId>
-		    <artifactId>docx4j-JAXB-ReferenceImpl</artifactId>
-		    <version>8.3.1</version>
-		    <exclusions>
-		    	<exclusion>
-				    <groupId>javax.servlet</groupId>
-				    <artifactId>servlet-api</artifactId>
-		    	</exclusion>
-		    	<exclusion>
-				    <groupId>org.docx4j</groupId>
-				    <artifactId>docx4j-openxml-objects-pml</artifactId>
-			    </exclusion>
-			    <exclusion>
-				    <groupId>org.docx4j</groupId>
-				    <artifactId>docx4j-openxml-objects-sml</artifactId>
-		    	</exclusion>
-		    </exclusions>
-		</dependency>
-		<dependency>
-		    <groupId>org.docx4j</groupId>
-		    <artifactId>docx4j-export-fo</artifactId>
-		    <version>8.3.1</version>
-		    <exclusions>
-		    	<exclusion>
-				    <groupId>javax.servlet</groupId>
-				    <artifactId>servlet-api</artifactId>
-		    	</exclusion>
-		    	<exclusion>
-				    <groupId>org.docx4j</groupId>
-				    <artifactId>docx4j-openxml-objects-pml</artifactId>
-			    </exclusion>
-			    <exclusion>
-				    <groupId>org.docx4j</groupId>
-				    <artifactId>docx4j-openxml-objects-sml</artifactId>
-		    	</exclusion>
-		    </exclusions>
-		</dependency> -->
-
-		<dependency>
-			<groupId>org.quartz-scheduler</groupId>
-			<artifactId>quartz</artifactId>
-			<version>2.2.2</version>
-		</dependency>
-
-		<dependency>
-		    <groupId>org.apache.commons</groupId>
-		    <artifactId>commons-email</artifactId>
-		    <version>1.5</version>
-		</dependency>
-
-		<dependency>
-			<groupId>com.hikvision.ga</groupId>
-		    <artifactId>artemis-http-client</artifactId>
-		    <version>1.1.11.RELEASE</version>
-		</dependency>
-
-		<!-- 玄武短信  -->
-		<!-- <dependency>
-		  <groupId>com.esms</groupId>
-		  <artifactId>postmsg-ump</artifactId>
-		  <version>4.0.1</version>
-		</dependency>
-		<dependency>
-		  <groupId>com.google.protobuf</groupId>
-		  <artifactId>protobuf-java</artifactId>
-		  <version>2.4.1</version>
-		</dependency>
-		<dependency>
-			<groupId>io.dropwizard.metrics</groupId>
-			<artifactId>metrics-core</artifactId>
-			<version>3.1.0</version>
-		</dependency> -->
-		<!--  -->
-  </dependencies>
-
-	<build>
-		<plugins>
-			<plugin>
-				<groupId>org.apache.maven.plugins</groupId>
-				<artifactId>maven-compiler-plugin</artifactId>
-				<configuration>
-					<source>8</source>
-					<target>8</target>
-				</configuration>
-			</plugin>
-		</plugins>
-		<resources>
-			<resource>
-				<directory>src/main/java</directory>
-				<includes>
-					<include>**/*.properties</include>
-					<include>**/*.xml</include>
-					<include>**/*.txt</include>
-					<include>**/*.json</include>
-				</includes>
-				<filtering>false</filtering>
-			</resource>
-			<resource>
-				<directory>src/main/resources</directory>
-			</resource>
-		</resources>
-	</build>
-</project>
-
-<!--</project>-->
-<!--	&lt;!&ndash;idea环境下打开此设置,eclipse环境关闭即可&ndash;&gt;-->
-<!--	<build>-->
-<!--		<plugins>-->
-<!--			<plugin>-->
-<!--				<groupId>org.apache.maven.plugins</groupId>-->
-<!--				<artifactId>maven-compiler-plugin</artifactId>-->
-<!--				<configuration>-->
-<!--					<source>8</source>-->
-<!--					<target>8</target>-->
-<!--				</configuration>-->
-<!--			</plugin>-->
-<!--		</plugins>-->
-<!--		<resources>-->
-<!--			<resource>-->
-<!--				<directory>src/main/java</directory>-->
-<!--				<includes>-->
-<!--					<include>**/*.properties</include>-->
-<!--					<include>**/*.xml</include>-->
-<!--					<include>**/*.txt</include>-->
-<!--					<include>**/*.json</include>-->
-<!--				</includes>-->
-<!--				<filtering>false</filtering>-->
-<!--			</resource>-->
-<!--			<resource>-->
-<!--				<directory>src/main/resources</directory>-->
-<!--			</resource>-->
-<!--		</resources>-->
-<!--	</build>-->
-
-<!--</project>-->

+ 0 - 124
projects-service_1018/src/main/java/cn/afterturn/easypoi/excel/ExcelImportUtils.java

@@ -1,124 +0,0 @@
-/**
- * Copyright 2013-2015 JueYue (qrb.jueyue@gmail.com)
- *   
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package cn.afterturn.easypoi.excel;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.InputStream;
-import java.util.List;
-
-import org.apache.poi.util.IOUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import cn.afterturn.easypoi.excel.entity.ImportParams;
-import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult;
-import cn.afterturn.easypoi.excel.imports.ExcelImportService2;
-import cn.afterturn.easypoi.exception.excel.ExcelImportException;
-
-/**
- * Excel 导入工具
- * 
- * @author JueYue
- *  2013-9-24
- * @version 1.0
- */
-@SuppressWarnings({ "unchecked" })
-public class ExcelImportUtils {
-
-    private ExcelImportUtils() {
-    }
-
-    private static final Logger LOGGER = LoggerFactory.getLogger(ExcelImportUtil.class);
-
-    /**
-     * Excel 导入 数据源本地文件,不返回校验结果 导入 字 段类型 Integer,Long,Double,Date,String,Boolean
-     * 
-     * @param file
-     * @param pojoClass
-     * @param params
-     * @return
-     */
-    public static <T> List<T> importExcel(File file, Class<?> pojoClass, ImportParams params) {
-        FileInputStream in = null;
-        try {
-            in = new FileInputStream(file);
-            return new ExcelImportService2().importExcelByIs(in, pojoClass, params, false).getList();
-        } catch (ExcelImportException e) {
-            throw new ExcelImportException(e.getType(), e);
-        } catch (Exception e) {
-            LOGGER.error(e.getMessage(), e);
-            throw new ExcelImportException(e.getMessage(), e);
-        } finally {
-            IOUtils.closeQuietly(in);
-        }
-    }
-
-    /**
-     * Excel 导入 数据源IO流,不返回校验结果 导入 字段类型 Integer,Long,Double,Date,String,Boolean
-     * 
-     * @param inputstream
-     * @param pojoClass
-     * @param params
-     * @return
-     * @throws Exception
-     */
-    public static <T> List<T> importExcel(InputStream inputstream, Class<?> pojoClass,
-                                          ImportParams params) throws Exception {
-        return new ExcelImportService2().importExcelByIs(inputstream, pojoClass, params, false).getList();
-    }
-
-    /**
-     * Excel 导入 数据源IO流 字段类型 Integer,Long,Double,Date,String,Boolean
-     * 支持校验,支持Key-Value
-     * 
-     * @param inputstream
-     * @param pojoClass
-     * @param params
-     * @return
-     * @throws Exception
-     */
-    public static <T> ExcelImportResult<T> importExcelMore(InputStream inputstream,
-                                                             Class<?> pojoClass,
-                                                             ImportParams params) throws Exception {
-        return new ExcelImportService2().importExcelByIs(inputstream, pojoClass, params, true);
-    }
-
-    /**
-     * Excel 导入 数据源本地文件 字段类型 Integer,Long,Double,Date,String,Boolean
-     * 支持校验,支持Key-Value
-     * @param file
-     * @param pojoClass
-     * @param params
-     * @return
-     */
-    public static <T> ExcelImportResult<T> importExcelMore(File file, Class<?> pojoClass,
-                                                             ImportParams params) {
-        FileInputStream in = null;
-        try {
-            in = new FileInputStream(file);
-            return new ExcelImportService2().importExcelByIs(in, pojoClass, params, true);
-        } catch (ExcelImportException e) {
-            throw new ExcelImportException(e.getType(), e);
-        } catch (Exception e) {
-            LOGGER.error(e.getMessage(), e);
-            throw new ExcelImportException(e.getMessage(), e);
-        } finally {
-            IOUtils.closeQuietly(in);
-        }
-    }
-
-}

+ 0 - 296
projects-service_1018/src/main/java/cn/afterturn/easypoi/excel/export/ExcelExportService2.java

@@ -1,296 +0,0 @@
-package cn.afterturn.easypoi.excel.export;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-import java.util.UUID;
-import java.util.concurrent.atomic.AtomicBoolean;
-
-import org.apache.commons.collections4.CollectionUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.poi.ss.usermodel.CellStyle;
-import org.apache.poi.ss.usermodel.Drawing;
-import org.apache.poi.ss.usermodel.Row;
-import org.apache.poi.ss.usermodel.Sheet;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.ss.util.CellRangeAddress;
-import org.apache.poi.ss.util.CellRangeAddressList;
-
-import cn.afterturn.easypoi.excel.entity.ExportParams;
-import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
-import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
-import cn.afterturn.easypoi.excel.export.styler.IExcelExportStyler;
-import cn.afterturn.easypoi.exception.excel.ExcelExportException;
-import cn.afterturn.easypoi.exception.excel.enums.ExcelExportEnum;
-import cn.afterturn.easypoi.util.PoiExcelGraphDataUtil;
-import cn.afterturn.easypoi.util.PoiMergeCellUtil;
-
-public class ExcelExportService2 extends ExcelExportService {
-
-	/**
-     * 最大行数,超过自动多Sheet
-     */
-    private static int MAX_NUM = 60000;
-	
-    @Override
-    public void createSheetForMap(Workbook workbook, ExportParams entity, List<ExcelExportEntity> entityList,
-    		Collection<?> dataSet) {
-    	if (LOGGER.isDebugEnabled()) {
-            LOGGER.debug("Excel version is {}",
-                    entity.getType().equals(ExcelType.HSSF) ? "03" : "07");
-        }
-        if (workbook == null || entity == null || entityList == null || dataSet == null) {
-            throw new ExcelExportException(ExcelExportEnum.PARAMETER_ERROR);
-        }
-        super.type = entity.getType();
-        if (type.equals(ExcelType.XSSF)) {
-            MAX_NUM = 1000000;
-        }
-        if (entity.getMaxNum() > 0) {
-            MAX_NUM = entity.getMaxNum();
-        }
-        Sheet sheet = null;
-        try {
-            sheet = workbook.createSheet(entity.getSheetName());
-        } catch (Exception e) {
-            // 重复遍历,出现了重名现象,创建非指定的名称Sheet
-            sheet = workbook.createSheet();
-        }
-        if (dataSet.getClass().getClass().getName().contains("Unmodifiable")) {
-            List<Object> dataTemp = new ArrayList<>();
-            dataTemp.addAll(dataSet);
-            dataSet = dataTemp;
-        }
-        insertDataToSheet(workbook, entity, entityList, dataSet, sheet);
-        if (entity.isReadonly()) {
-            sheet.protectSheet(UUID.randomUUID().toString());
-        }
-        sheet.setForceFormulaRecalculation(true);
-        if (isAutoSize(entity, entityList)) {
-            for (int len = Math.max(sheet.getRow(0).getLastCellNum(), sheet.getRow(1).getLastCellNum()), i = 0; i < len; i++) {
-                sheet.autoSizeColumn(i, true);
-            }
-        }
-    }
-    
-    private boolean isAutoSize(ExportParams entity, List<ExcelExportEntity> entityList) {
-        if (entity.isAutoSize()) {
-            return true;
-        }
-        AtomicBoolean autoSize = new AtomicBoolean(true);
-        entityList.forEach(e -> {
-            if (e.getWidth() != 10) {
-                autoSize.set(false);
-                return;
-            }
-            if (CollectionUtils.isNotEmpty(e.getList()) && !isAutoSize(entity, e.getList())) {
-                autoSize.set(false);
-                return;
-            }
-        });
-        return autoSize.get();
-    }
-    
-    @Override
-    public void insertDataToSheet(Workbook workbook, ExportParams entity, List<ExcelExportEntity> entityList,
-    		Collection<?> dataSet, Sheet sheet) {
-    	try {
-            dataHandler = entity.getDataHandler();
-            if (dataHandler != null && dataHandler.getNeedHandlerFields() != null) {
-                needHandlerList = Arrays.asList(dataHandler.getNeedHandlerFields());
-            }
-            dictHandler = entity.getDictHandler();
-            commentHandler = entity.getCommentHandler();
-            // 创建表格样式
-            setExcelExportStyler((IExcelExportStyler) entity.getStyle()
-                    .getConstructor(Workbook.class).newInstance(workbook));
-            Drawing<?>                patriarch   = PoiExcelGraphDataUtil.getDrawingPatriarch(sheet);
-            List<ExcelExportEntity> excelParams = new ArrayList<ExcelExportEntity>();
-            if (entity.isAddIndex()) {
-                excelParams.add(indexExcelEntity(entity));
-            }
-            excelParams.addAll(entityList);
-            sortAllParams(excelParams);
-            int index = entity.isCreateHeadRows()
-                    ? createHeaderAndTitle(entity, sheet, workbook, excelParams) : 0;
-            int titleHeight = index;
-            setCellWith(excelParams, sheet);
-            setColumnHidden(excelParams, sheet);
-            short rowHeight = entity.getHeight() != 0 ? entity.getHeight() : getRowHeight(excelParams);
-            setCurrentIndex(1);
-            createAddressList(sheet, index, excelParams, 0);
-            Iterator<?>  its      = dataSet.iterator();
-            List<Object> tempList = new ArrayList<Object>();
-            while (its.hasNext()) {
-                Object t = its.next();
-                index += createCells(patriarch, index, t, excelParams, sheet, workbook, rowHeight, 0)[0];
-                tempList.add(t);
-                if (index >= MAX_NUM) {
-                    break;
-                }
-            }
-            if (entity.getFreezeCol() != 0) {
-                sheet.createFreezePane(entity.getFreezeCol(), 0, entity.getFreezeCol(), 0);
-            }
-
-            mergeCells(sheet, excelParams, titleHeight);
-
-            its = dataSet.iterator();
-            for (int i = 0, le = tempList.size(); i < le; i++) {
-                its.next();
-                its.remove();
-            }
-            if (LOGGER.isDebugEnabled()) {
-                LOGGER.debug("List data more than max ,data size is {}",
-                        dataSet.size());
-            }
-            // 发现还有剩余list 继续循环创建Sheet
-            if (dataSet.size() > 0) {
-                createSheetForMap(workbook, entity, entityList, dataSet);
-            } else {
-                // 创建合计信息
-                addStatisticsRow(getExcelExportStyler().getStyles(true, null), sheet);
-            }
-
-        } catch (Exception e) {
-            LOGGER.error(e.getMessage(), e);
-            throw new ExcelExportException(ExcelExportEnum.EXPORT_ERROR, e);
-        }
-    }
-    
-	@Override
-	public int createHeaderAndTitle(ExportParams entity, Sheet sheet, Workbook workbook,
-			List<ExcelExportEntity> excelParams) {
-		int rows = 0, fieldLength = getFieldLength(excelParams);
-        if (entity.getTitle() != null) {
-            rows += createTitle2Row(entity, sheet, workbook, fieldLength);
-        }
-        createHeaderRow(entity, sheet, workbook, rows, excelParams, 0);
-        rows += getRowNums(excelParams, true);
-        if (entity.isFixedTitle()) {
-            sheet.createFreezePane(0, rows, 0, rows);
-        }
-        return rows;
-	}
-	
-	/**
-     * 创建表头
-     */
-    private int createHeaderRow(ExportParams title, Sheet sheet, Workbook workbook, int index,
-                                List<ExcelExportEntity> excelParams, int cellIndex) {
-        Row row  = sheet.getRow(index) == null ? sheet.createRow(index) : sheet.getRow(index);
-        int rows = getRowNums(excelParams, true);
-        row.setHeight(title.getHeaderHeight());
-        Row listRow = null;
-        if (rows >= 2) {
-            listRow = sheet.getRow(index + 1);
-            if (listRow == null) {
-                listRow = sheet.createRow(index + 1);
-                listRow.setHeight(title.getHeaderHeight());
-
-            }
-        }
-        int  groupCellLength = 0;
-        CellStyle titleStyle      = getExcelExportStyler().getTitleStyle(title.getColor());
-        for (int i = 0, exportFieldTitleSize = excelParams.size(); i < exportFieldTitleSize; i++) {
-            ExcelExportEntity entity = excelParams.get(i);
-            // 加入换了groupName或者结束就,就把之前的那个换行
-            if (StringUtils.isBlank(entity.getGroupName()) || i == 0 || !entity.getGroupName().equals(excelParams.get(i - 1).getGroupName())) {
-                if (groupCellLength > 1) {
-                    sheet.addMergedRegion(new CellRangeAddress(index, index, cellIndex - groupCellLength, cellIndex - 1));
-                    if(rows > 2) {
-                    	for(int gorupCol=1;gorupCol<=groupCellLength;gorupCol++) {
-                    		sheet.addMergedRegion(new CellRangeAddress(index+1, index+rows-1, cellIndex-gorupCol, cellIndex-gorupCol));
-                    	}
-                    }
-                }
-                groupCellLength = 0;
-            }
-            if (StringUtils.isNotBlank(entity.getGroupName())) {
-                createStringCell(row, cellIndex, entity.getGroupName(), titleStyle, entity);
-                createStringCell(listRow, cellIndex, entity.getName(), titleStyle, entity);
-                groupCellLength++;
-            } else if (StringUtils.isNotBlank(entity.getName())) {
-                createStringCell(row, cellIndex, entity.getName(), titleStyle, entity);
-            }
-            if (entity.getList() != null) {
-                // 保持原来的
-                int tempCellIndex = cellIndex;
-                cellIndex = createHeaderRow(title, sheet, workbook, rows == 1 ? index : index + 1, entity.getList(), cellIndex);
-                List<ExcelExportEntity> sTitel = entity.getList();
-                if (StringUtils.isNotBlank(entity.getName()) && sTitel.size() > 1) {
-                    PoiMergeCellUtil.addMergedRegion(sheet, index, index, tempCellIndex, tempCellIndex + getFieldLength(sTitel));
-                }
-                cellIndex--;
-            } else if (rows > 1 && StringUtils.isBlank(entity.getGroupName())) {
-                createStringCell(listRow, cellIndex, "", titleStyle, entity);
-                PoiMergeCellUtil.addMergedRegion(sheet, index, index + rows - 1, cellIndex, cellIndex);
-            }
-            cellIndex++;
-        }
-        if (groupCellLength > 1) {
-            PoiMergeCellUtil.addMergedRegion(sheet, index, index, cellIndex - groupCellLength, cellIndex - 1);
-        }
-        return cellIndex;
-
-    }
-	
-	@Override
-	public int getRowNums(List<ExcelExportEntity> excelParams, boolean isDeep) {
-		int maxRowNum = 1;
-		for (int i = 0; i < excelParams.size(); i++) {
-			ExcelExportEntity excelExportEntity = excelParams.get(i);
-            if (excelExportEntity.getList() != null
-                    && StringUtils.isNotBlank(excelExportEntity.getName())) {
-            	maxRowNum = isDeep ? 1+getRowNums(excelExportEntity.getList(), isDeep) : 2;
-            }
-            if (StringUtils.isNotEmpty(excelExportEntity.getGroupName())) {
-            	maxRowNum = 2;
-            }
-        }
-        return maxRowNum;
-	}
-	
-	/**
-     * 插入下拉
-     *
-     * @param sheet
-     * @param index
-     * @param excelParams
-     */
-    private int createAddressList(Sheet sheet, int index, List<ExcelExportEntity> excelParams, int cellIndex) {
-        for (int i = 0; i < excelParams.size(); i++) {
-            if (excelParams.get(i).isAddressList()) {
-                ExcelExportEntity entity = excelParams.get(i);
-                CellRangeAddressList regions = new CellRangeAddressList(index,
-                        this.type.equals(ExcelType.XSSF) ? 1000000 : 65535, cellIndex, cellIndex);
-                sheet.addValidationData(sheet.getDataValidationHelper().createValidation(sheet.getDataValidationHelper().createExplicitListConstraint(getAddressListValues(entity)), regions));
-            }
-            if (excelParams.get(i).getList() != null) {
-                cellIndex = createAddressList(sheet, index, excelParams.get(i).getList(), cellIndex);
-            } else {
-                cellIndex++;
-            }
-        }
-        return cellIndex;
-    }
-    
-    private String[] getAddressListValues(ExcelExportEntity entity) {
-        if (StringUtils.isNotEmpty(entity.getDict())) {
-            String[] arr = new String[this.dictHandler.getList(entity.getDict()).size()];
-            for (int i = 0; i < arr.length; i++) {
-                arr[i] = this.dictHandler.getList(entity.getDict()).get(i).get("dictValue").toString();
-            }
-            return arr;
-        } else if (entity.getReplace() != null && entity.getReplace().length > 0) {
-            String[] arr = new String[entity.getReplace().length];
-            for (int i = 0; i < arr.length; i++) {
-                arr[i] = entity.getReplace()[i].split("_")[0];
-            }
-            return arr;
-        }
-        throw new ExcelExportException(entity.getName() + "没有可以创建下来的数据,请addressList不要设置为true");
-    }
-}

+ 0 - 690
projects-service_1018/src/main/java/cn/afterturn/easypoi/excel/imports/ExcelImportService2.java

@@ -1,690 +0,0 @@
-/**
- * Copyright 2013-2015 JueYue (qrb.jueyue@gmail.com)
- * <p>
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
- * in compliance with the License. You may obtain a copy of the License at
- * <p>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p>
- * Unless required by applicable law or agreed to in writing, software distributed under the License
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing permissions and limitations under
- * the License.
- */
-package cn.afterturn.easypoi.excel.imports;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.InputStream;
-import java.lang.reflect.Field;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.ForkJoinPool;
-
-import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
-import org.apache.poi.hssf.usermodel.HSSFSheet;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
-import org.apache.poi.ss.formula.functions.T;
-import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.ss.usermodel.CellStyle;
-import org.apache.poi.ss.usermodel.Font;
-import org.apache.poi.ss.usermodel.PictureData;
-import org.apache.poi.ss.usermodel.Row;
-import org.apache.poi.ss.usermodel.Sheet;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.ss.usermodel.WorkbookFactory;
-import org.apache.poi.util.IOUtils;
-import org.apache.poi.xssf.usermodel.XSSFSheet;
-import org.apache.poi.xssf.usermodel.XSSFWorkbook;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.core.annotation.Order;
-
-import cn.afterturn.easypoi.entity.BaseTypeConstants;
-import cn.afterturn.easypoi.excel.annotation.ExcelTarget;
-import cn.afterturn.easypoi.excel.entity.ImportParams;
-import cn.afterturn.easypoi.excel.entity.params.ExcelCollectionParams;
-import cn.afterturn.easypoi.excel.entity.params.ExcelImportEntity;
-import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult;
-import cn.afterturn.easypoi.excel.entity.result.ExcelVerifyHandlerResult;
-import cn.afterturn.easypoi.excel.imports.base.ImportBaseService2;
-import cn.afterturn.easypoi.excel.imports.recursive.ExcelImportForkJoinWork2;
-import cn.afterturn.easypoi.exception.excel.ExcelImportException;
-import cn.afterturn.easypoi.exception.excel.enums.ExcelImportEnum;
-import cn.afterturn.easypoi.handler.inter.IExcelDataModel;
-import cn.afterturn.easypoi.handler.inter.IExcelModel;
-import cn.afterturn.easypoi.util.PoiCellUtil;
-import cn.afterturn.easypoi.util.PoiPublicUtil;
-import cn.afterturn.easypoi.util.PoiReflectorUtil;
-import cn.afterturn.easypoi.util.PoiValidationUtil;
-
-/**
- * Excel 导入服务
- *
- * @author JueYue 2014年6月26日 下午9:20:51
- */
-@Order(-1)
-@SuppressWarnings({"rawtypes", "unchecked", "hiding"})
-public class ExcelImportService2 extends ImportBaseService2 {
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(ExcelImportService.class);
-
-    private CellValueService cellValueServer;
-
-    private boolean   verifyFail = false;
-    /**
-     * 异常数据styler
-     */
-    private CellStyle errorCellStyle;
-
-    private List<Row> successRow;
-    private List<Row> failRow;
-    private List      failCollection;
-
-    public ExcelImportService2() {
-        successRow = new ArrayList<Row>();
-        failRow = new ArrayList<Row>();
-        failCollection = new ArrayList();
-        this.cellValueServer = new CellValueService();
-    }
-
-    /***
-     * 向List里面继续添加元素
-     *
-     * @param object
-     * @param param
-     * @param row
-     * @param titlemap
-     * @param targetId
-     * @param pictures
-     * @param params
-     */
-    public void addListContinue(Object object, ExcelCollectionParams param, Row row,
-                                Map<Integer, String> titlemap, String targetId,
-                                Map<String, PictureData> pictures,
-                                ImportParams params, StringBuilder errorMsg) throws Exception {
-        Collection collection = (Collection) PoiReflectorUtil.fromCache(object.getClass())
-                .getValue(object, param.getName());
-        Object entity = PoiPublicUtil.createObject(param.getType(), targetId);
-        if (entity instanceof IExcelDataModel) {
-            ((IExcelDataModel) entity).setRowNum(row.getRowNum());
-        }
-        String picId;
-        // 是否需要加上这个对象
-        boolean isUsed = false;
-        for (int i = row.getFirstCellNum(); i < titlemap.size(); i++) {
-            Cell   cell        = row.getCell(i);
-            String titleString = (String) titlemap.get(i);
-            if (param.getExcelParams().containsKey(titleString)) {
-                if (param.getExcelParams().get(titleString).getType() == BaseTypeConstants.IMAGE_TYPE) {
-                    picId = row.getRowNum() + "_" + i;
-                    saveImage(entity, picId, param.getExcelParams(), titleString, pictures, params);
-                } else {
-                    try {
-                        saveFieldValue(params, entity, cell, param.getExcelParams(), titleString, row);
-                    } catch (ExcelImportException e) {
-                        // 如果需要去校验就忽略,这个错误,继续执行
-                        if (params.isNeedVerify() && ExcelImportEnum.GET_VALUE_ERROR.equals(e.getType())) {
-                            errorMsg.append(" ").append(titleString).append(ExcelImportEnum.GET_VALUE_ERROR.getMsg());
-                        }
-                    }
-                }
-                isUsed = true;
-            }
-        }
-        if (isUsed) {
-            collection.add(entity);
-        }
-    }
-
-    /**
-     * 获取key的值,针对不同类型获取不同的值
-     *
-     * @author JueYue 2013-11-21
-     */
-    private String getKeyValue(Cell cell) {
-        Object obj = PoiCellUtil.getCellValue(cell);
-        return obj == null ? null : obj.toString().trim();
-    }
-
-    /**
-     * 获取保存的真实路径
-     */
-    private String getSaveUrl(ExcelImportEntity excelImportEntity, Object object) throws Exception {
-        String url = "";
-        if (ExcelImportEntity.IMG_SAVE_PATH.equals(excelImportEntity.getSaveUrl())) {
-            if (excelImportEntity.getMethods() != null
-                    && excelImportEntity.getMethods().size() > 0) {
-                object = getFieldBySomeMethod(excelImportEntity.getMethods(), object);
-            }
-            url = object.getClass().getName()
-                    .split("\\.")[object.getClass().getName().split("\\.").length - 1];
-            return excelImportEntity.getSaveUrl() + File.separator + url;
-        }
-        return excelImportEntity.getSaveUrl();
-    }
-
-    private <T> List<T> importExcel(Collection<T> result, Sheet sheet, Class<?> pojoClass,
-                                    ImportParams params,
-                                    Map<String, PictureData> pictures) throws Exception {
-        List                           collection      = new ArrayList();
-        Map<String, ExcelImportEntity> excelParams     = new HashMap<String, ExcelImportEntity>();
-        List<ExcelCollectionParams>    excelCollection = new ArrayList<ExcelCollectionParams>();
-        String                         targetId        = null;
-        i18nHandler = params.getI18nHandler();
-        boolean isMap = Map.class.equals(pojoClass);
-        if (!isMap) {
-            Field[]     fileds  = PoiPublicUtil.getClassFields(pojoClass);
-            ExcelTarget etarget = pojoClass.getAnnotation(ExcelTarget.class);
-            if (etarget != null) {
-                targetId = etarget.value();
-            }
-            getAllExcelField(targetId, fileds, excelParams, excelCollection, pojoClass, null, null);
-        }
-        Iterator<Row> rows = sheet.rowIterator();
-        for (int j = 0; j < params.getTitleRows(); j++) {
-            rows.next();
-        }
-        Map<Integer, String> titlemap = getTitleMap(rows, params, excelCollection, excelParams);
-        checkIsValidTemplate(titlemap, excelParams, params, excelCollection);
-        Row    row     = null;
-        Object object  = null;
-        String picId;
-        int    readRow = 1;
-        //跳过无效行
-        for (int i = 0; i < params.getStartRows(); i++) {
-            rows.next();
-        }
-        //判断index 和集合,集合情况默认为第一列
-        if (excelCollection.size() > 0 && params.getKeyIndex() == null) {
-            params.setKeyIndex(0);
-        }
-        if (params.isConcurrentTask()) {
-            ForkJoinPool forkJoinPool = new ForkJoinPool();
-            int          endRow       = sheet.getLastRowNum() - params.getLastOfInvalidRow();
-            if (params.getReadRows() > 0) {
-                endRow = params.getReadRows();
-            }
-            ExcelImportForkJoinWork2 task           = new ExcelImportForkJoinWork2(params.getStartRows() + params.getHeadRows() + params.getTitleRows(), endRow, sheet, params, pojoClass, this, targetId, titlemap, excelParams);
-            ExcelImportResult       forkJoinResult = forkJoinPool.invoke(task);
-            collection = forkJoinResult.getList();
-            failCollection = forkJoinResult.getFailList();
-        } else {
-            StringBuilder errorMsg;
-            while (rows.hasNext()
-                    && (row == null
-                    || sheet.getLastRowNum() - row.getRowNum() > params.getLastOfInvalidRow())) {
-                if (params.getReadRows() > 0 && readRow > params.getReadRows()) {
-                    break;
-                }
-                row = rows.next();
-                // Fix 如果row为无效行时候跳出
-                if (sheet.getLastRowNum() - row.getRowNum() < params.getLastOfInvalidRow()) {
-                    break;
-                }
-                /* 如果当前行的单元格都是无效的,那就继续下一行 */
-                if (row.getLastCellNum()<0) {
-                    continue;
-                }
-                if(isMap && object != null) {
-                    ((Map) object).put("excelRowNum", row.getRowNum());
-                }
-                errorMsg = new StringBuilder();
-                // 判断是集合元素还是不是集合元素,如果是就继续加入这个集合,不是就创建新的对象
-                // keyIndex 如果为空就不处理,仍然处理这一行
-                if (params.getKeyIndex() != null
-                        && (row.getCell(params.getKeyIndex()) == null
-                        || StringUtils.isEmpty(getKeyValue(row.getCell(params.getKeyIndex()))))
-                        && object != null) {
-                    for (ExcelCollectionParams param : excelCollection) {
-                        addListContinue(object, param, row, titlemap, targetId, pictures, params, errorMsg);
-                    }
-                } else {
-                    object = PoiPublicUtil.createObject(pojoClass, targetId);
-                    try {
-                        Set<Integer> keys = titlemap.keySet();
-                        for (Integer cn : keys) {
-                            Cell   cell        = row.getCell(cn);
-                            String titleString = (String) titlemap.get(cn);
-                            if (excelParams.containsKey(titleString) || isMap) {
-                                if (excelParams.get(titleString) != null
-                                        && excelParams.get(titleString).getType() == BaseTypeConstants.IMAGE_TYPE) {
-                                    picId = row.getRowNum() + "_" + cn;
-                                    saveImage(object, picId, excelParams, titleString, pictures,
-                                            params);
-                                } else {
-                                    try {
-                                        saveFieldValue(params, object, cell, excelParams, titleString, row);
-                                    } catch (ExcelImportException e) {
-                                        // 如果需要去校验就忽略,这个错误,继续执行
-                                        if (params.isNeedVerify() && ExcelImportEnum.GET_VALUE_ERROR.equals(e.getType())) {
-                                            errorMsg.append(" ").append(titleString).append(ExcelImportEnum.GET_VALUE_ERROR.getMsg());
-                                        }
-                                    }
-                                }
-                            }
-                        }
-                        //for (int i = row.getFirstCellNum(), le = titlemap.size(); i < le; i++) {
-
-                        //}
-                        if (object instanceof IExcelDataModel) {
-                            ((IExcelDataModel) object).setRowNum(row.getRowNum());
-                        }
-                        for (ExcelCollectionParams param : excelCollection) {
-                            addListContinue(object, param, row, titlemap, targetId, pictures, params, errorMsg);
-                        }
-                        if (verifyingDataValidity(object, row, params, isMap, errorMsg)) {
-                            collection.add(object);
-                        } else {
-                            failCollection.add(object);
-                        }
-                    } catch (ExcelImportException e) {
-                        LOGGER.error("excel import error , row num:{},obj:{}", readRow, ReflectionToStringBuilder.toString(object));
-                        if (!e.getType().equals(ExcelImportEnum.VERIFY_ERROR)) {
-                            throw new ExcelImportException(e.getType(), e);
-                        }
-                    } catch (Exception e) {
-                        LOGGER.error("excel import error , row num:{},obj:{}", readRow, ReflectionToStringBuilder.toString(object));
-                        throw new RuntimeException(e);
-                    }
-                }
-                readRow++;
-            }
-        }
-        return collection;
-    }
-
-    /**
-     * 校验数据合法性
-     */
-    public boolean verifyingDataValidity(Object object, Row row, ImportParams params,
-                                         boolean isMap, StringBuilder fieldErrorMsg) {
-        boolean isAdd = true;
-        Cell    cell  = null;
-        if (params.isNeedVerify()) {
-            String errorMsg = PoiValidationUtil.validation(object, params.getVerifyGroup());
-            if (StringUtils.isNotEmpty(errorMsg)) {
-                cell = row.createCell(row.getLastCellNum());
-                cell.setCellValue(errorMsg);
-                if (object instanceof IExcelModel) {
-                    IExcelModel model = (IExcelModel) object;
-                    model.setErrorMsg(errorMsg);
-                }
-                isAdd = false;
-                verifyFail = true;
-            }
-        }
-        if (params.getVerifyHandler() != null) {
-            ExcelVerifyHandlerResult result = params.getVerifyHandler().verifyHandler(object);
-            if (!result.isSuccess()) {
-                if (cell == null) {
-                    cell = row.createCell(row.getLastCellNum());
-                }
-                cell.setCellValue((StringUtils.isNoneBlank(cell.getStringCellValue())
-                        ? cell.getStringCellValue() + "," : "") + result.getMsg());
-                if (object instanceof IExcelModel) {
-                    IExcelModel model = (IExcelModel) object;
-                    model.setErrorMsg((StringUtils.isNoneBlank(model.getErrorMsg())
-                            ? model.getErrorMsg() + "," : "") + result.getMsg());
-                }
-                isAdd = false;
-                verifyFail = true;
-            }
-        }
-        if ((params.isNeedVerify() || params.getVerifyHandler() != null) && fieldErrorMsg.length() > 0) {
-            if (object instanceof IExcelModel) {
-                IExcelModel model = (IExcelModel) object;
-                model.setErrorMsg((StringUtils.isNoneBlank(model.getErrorMsg())
-                        ? model.getErrorMsg() + "," : "") + fieldErrorMsg.toString());
-            }
-            if (cell == null) {
-                cell = row.createCell(row.getLastCellNum());
-            }
-            cell.setCellValue((StringUtils.isNoneBlank(cell.getStringCellValue())
-                    ? cell.getStringCellValue() + "," : "") + fieldErrorMsg.toString());
-            isAdd = false;
-            verifyFail = true;
-        }
-        if (cell != null) {
-            cell.setCellStyle(errorCellStyle);
-            failRow.add(row);
-            if(isMap) {
-                ((Map) object).put("excelErrorMsg", cell.getStringCellValue());
-            }
-        } else {
-            successRow.add(row);
-        }
-        return isAdd;
-    }
-
-    /**
-     * 获取表格字段列名对应信息
-     */
-    private Map<Integer, String> getTitleMap(Iterator<Row> rows, ImportParams params,
-                                             List<ExcelCollectionParams> excelCollection,
-                                             Map<String, ExcelImportEntity> excelParams) {
-        Map<Integer, String>  titlemap         = new LinkedHashMap<Integer, String>();
-        Iterator<Cell>        cellTitle;
-        String                collectionName   = null;
-        ExcelCollectionParams collectionParams = null;
-        Row                   row              = null;
-        for (int j = 0; j < params.getHeadRows(); j++) {
-            row = rows.next();
-            if (row == null) {
-                continue;
-            }
-            cellTitle = row.cellIterator();
-            while (cellTitle.hasNext()) {
-                Cell   cell  = cellTitle.next();
-                String value = getKeyValue(cell);
-                value = value.replace("\n", "");
-                int i = cell.getColumnIndex();
-                //用以支持重名导入
-                if (StringUtils.isNotEmpty(value)) {
-                    if (titlemap.containsKey(i)) {
-                        collectionName = titlemap.get(i);
-                        collectionParams = getCollectionParams(excelCollection, collectionName);
-                        titlemap.put(i, collectionName + "_" + value);
-                    } else if (StringUtils.isNotEmpty(collectionName) && collectionParams != null
-                            && collectionParams.getExcelParams()
-                            .containsKey(collectionName + "_" + value)) {
-                        titlemap.put(i, collectionName + "_" + value);
-                    } else {
-                        collectionName = null;
-                        collectionParams = null;
-                    }
-                    if (StringUtils.isEmpty(collectionName)) {
-                        titlemap.put(i, value);
-                    }
-                }
-            }
-        }
-
-        // 处理指定列的情况
-        Set<String> keys = excelParams.keySet();
-        for (String key : keys) {
-            if (key.startsWith("FIXED_")) {
-                String[] arr = key.split("_");
-                titlemap.put(Integer.parseInt(arr[1]), key);
-            }
-        }
-        return titlemap;
-    }
-
-    /**
-     * 获取这个名称对应的集合信息
-     */
-    private ExcelCollectionParams getCollectionParams(List<ExcelCollectionParams> excelCollection,
-                                                      String collectionName) {
-        for (ExcelCollectionParams excelCollectionParams : excelCollection) {
-            if (collectionName.equals(excelCollectionParams.getExcelName())) {
-                return excelCollectionParams;
-            }
-        }
-        return null;
-    }
-
-    /**
-     * Excel 导入 field 字段类型 Integer,Long,Double,Date,String,Boolean
-     */
-    public ExcelImportResult importExcelByIs(InputStream inputstream, Class<?> pojoClass,
-                                             ImportParams params, boolean needMore) throws Exception {
-        if (LOGGER.isDebugEnabled()) {
-            LOGGER.debug("Excel import start ,class is {}", pojoClass);
-        }
-        List<T>               result = new ArrayList<T>();
-        ByteArrayOutputStream baos   = new ByteArrayOutputStream();
-        ExcelImportResult     importResult;
-        try {
-            byte[] buffer = new byte[1024];
-            int    len;
-            while ((len = inputstream.read(buffer)) > -1) {
-                baos.write(buffer, 0, len);
-            }
-            baos.flush();
-
-            InputStream userIs = new ByteArrayInputStream(baos.toByteArray());
-            if (LOGGER.isDebugEnabled()) {
-                LOGGER.debug("Excel clone success");
-            }
-            Workbook book = WorkbookFactory.create(userIs);
-
-            boolean isXSSFWorkbook = !(book instanceof HSSFWorkbook);
-            if (LOGGER.isDebugEnabled()) {
-                LOGGER.debug("Workbook create success");
-            }
-            importResult = new ExcelImportResult();
-            createErrorCellStyle(book);
-            Map<String, PictureData> pictures;
-            for (int i = params.getStartSheetIndex(); i < params.getStartSheetIndex()
-                    + params.getSheetNum(); i++) {
-                if (LOGGER.isDebugEnabled()) {
-                    LOGGER.debug(" start to read excel by is ,startTime is {}", new Date());
-                }
-                if (isXSSFWorkbook) {
-                    pictures = PoiPublicUtil.getSheetPictrues07((XSSFSheet) book.getSheetAt(i),
-                            (XSSFWorkbook) book);
-                } else {
-                    pictures = PoiPublicUtil.getSheetPictrues03((HSSFSheet) book.getSheetAt(i),
-                            (HSSFWorkbook) book);
-                }
-                if (LOGGER.isDebugEnabled()) {
-                    LOGGER.debug(" end to read excel by is ,endTime is {}", new Date());
-                }
-                result.addAll(importExcel(result, book.getSheetAt(i), pojoClass, params, pictures));
-                if (LOGGER.isDebugEnabled()) {
-                    LOGGER.debug(" end to read excel list by sheet ,endTime is {}", new Date());
-                }
-                if (params.isReadSingleCell()) {
-                    readSingleCell(importResult, book.getSheetAt(i), params);
-                    if (LOGGER.isDebugEnabled()) {
-                        LOGGER.debug(" read Key-Value ,endTime is {}", System.currentTimeMillis());
-                    }
-                }
-            }
-            if (params.isNeedSave()) {
-                saveThisExcel(params, pojoClass, isXSSFWorkbook, book);
-            }
-            importResult.setList(result);
-            if (needMore) {
-                InputStream successIs = new ByteArrayInputStream(baos.toByteArray());
-                try {
-                    Workbook successBook = WorkbookFactory.create(successIs);
-                    importResult.setWorkbook(removeSuperfluousRows(successBook, failRow, params));
-                    importResult.setFailWorkbook(removeSuperfluousRows(book, successRow, params));
-                    importResult.setFailList(failCollection);
-                    importResult.setVerifyFail(verifyFail);
-                } finally {
-                    successIs.close();
-                }
-            }
-        } finally {
-            IOUtils.closeQuietly(baos);
-        }
-
-        return importResult;
-    }
-
-    private Workbook removeSuperfluousRows(Workbook book, List<Row> rowList, ImportParams params) {
-        for (int i = params.getStartSheetIndex(); i < params.getStartSheetIndex()
-                + params.getSheetNum(); i++) {
-            for (int j = rowList.size() - 1; j >= 0; j--) {
-                if (rowList.get(j).getRowNum() < rowList.get(j).getSheet().getLastRowNum()) {
-                    book.getSheetAt(i).shiftRows(rowList.get(j).getRowNum() + 1, rowList.get(j).getSheet().getLastRowNum(), -1);
-                } else if (rowList.get(j).getRowNum() == rowList.get(j).getSheet().getLastRowNum()) {
-                    book.getSheetAt(i).createRow(rowList.get(j).getRowNum() + 1);
-                    book.getSheetAt(i).shiftRows(rowList.get(j).getRowNum() + 1, rowList.get(j).getSheet().getLastRowNum() + 1, -1);
-                }
-            }
-        }
-        return book;
-    }
-
-    /**
-     * 按照键值对的方式取得Excel里面的数据
-     */
-    private void readSingleCell(ExcelImportResult result, Sheet sheet, ImportParams params) {
-        if (result.getMap() == null) {
-            result.setMap(new HashMap<String, Object>());
-        }
-        for (int i = 0; i < params.getTitleRows() + params.getHeadRows() + params.getStartRows(); i++) {
-            getSingleCellValueForRow(result, sheet.getRow(i), params);
-        }
-
-        for (int i = sheet.getLastRowNum() - params.getLastOfInvalidRow(); i < sheet.getLastRowNum(); i++) {
-            getSingleCellValueForRow(result, sheet.getRow(i), params);
-
-        }
-    }
-
-    private void getSingleCellValueForRow(ExcelImportResult result, Row row, ImportParams params) {
-        for (int j = row.getFirstCellNum(), le = row.getLastCellNum(); j < le; j++) {
-            String text = PoiCellUtil.getCellValue(row.getCell(j));
-            if (StringUtils.isNoneBlank(text) && text.endsWith(params.getKeyMark())) {
-                if (result.getMap().containsKey(text)) {
-                    if (result.getMap().get(text) instanceof String) {
-                        List<String> list = new ArrayList<String>();
-                        list.add((String) result.getMap().get(text));
-                        result.getMap().put(text, list);
-                    }
-                    ((List) result.getMap().get(text)).add(PoiCellUtil.getCellValue(row.getCell(++j)));
-                } else {
-                    result.getMap().put(text, PoiCellUtil.getCellValue(row.getCell(++j)));
-                }
-
-            }
-
-        }
-    }
-
-    /**
-     * 检查是不是合法的模板
-     */
-    private void checkIsValidTemplate(Map<Integer, String> titlemap,
-                                      Map<String, ExcelImportEntity> excelParams,
-                                      ImportParams params,
-                                      List<ExcelCollectionParams> excelCollection) {
-
-        if (params.getImportFields() != null) {
-            if (params.isNeedCheckOrder()) { // 同时校验列顺序
-
-                if (params.getImportFields().length != titlemap.size()) {
-                    LOGGER.error("excel列顺序不一致");
-                    throw new ExcelImportException(ExcelImportEnum.IS_NOT_A_VALID_TEMPLATE);
-                }
-                int i = 0;
-                for (String title : titlemap.values()) {
-                    if (!StringUtils.equals(title, params.getImportFields()[i++])) {
-                        LOGGER.error("excel列顺序不一致");
-                        throw new ExcelImportException(ExcelImportEnum.IS_NOT_A_VALID_TEMPLATE);
-                    }
-                }
-            } else {
-                for (int i = 0, le = params.getImportFields().length; i < le; i++) {
-                    if (!titlemap.containsValue(params.getImportFields()[i])) {
-                        throw new ExcelImportException(ExcelImportEnum.IS_NOT_A_VALID_TEMPLATE);
-                    }
-                }
-            }
-        } else {
-            Collection<ExcelImportEntity> collection = excelParams.values();
-            for (ExcelImportEntity excelImportEntity : collection) {
-                if (excelImportEntity.isImportField()
-                        && !titlemap.containsValue(excelImportEntity.getName())) {
-                    LOGGER.error(excelImportEntity.getName() + "必须有,但是没找到");
-                    throw new ExcelImportException(ExcelImportEnum.IS_NOT_A_VALID_TEMPLATE);
-                }
-            }
-
-            for (int i = 0, le = excelCollection.size(); i < le; i++) {
-                ExcelCollectionParams collectionparams = excelCollection.get(i);
-                collection = collectionparams.getExcelParams().values();
-                for (ExcelImportEntity excelImportEntity : collection) {
-                    if (excelImportEntity.isImportField() && !titlemap.containsValue(
-                            collectionparams.getExcelName() + "_" + excelImportEntity.getName())) {
-                        throw new ExcelImportException(ExcelImportEnum.IS_NOT_A_VALID_TEMPLATE);
-                    }
-                }
-            }
-        }
-    }
-
-    /**
-     * 保存字段值(获取值,校验值,追加错误信息)
-     */
-    public void saveFieldValue(ImportParams params, Object object, Cell cell,
-                               Map<String, ExcelImportEntity> excelParams, String titleString,
-                               Row row) throws Exception {
-        Object value = cellValueServer.getValue(params.getDataHandler(), object, cell, excelParams,
-                titleString, params.getDictHandler());
-        if (object instanceof Map) {
-            if (params.getDataHandler() != null) {
-                params.getDataHandler().setMapValue((Map) object, titleString, value);
-            } else {
-                ((Map) object).put(titleString, value);
-            }
-        } else {
-            setValues(excelParams.get(titleString), object, value);
-        }
-    }
-
-    /**
-     * @param object
-     * @param picId
-     * @param excelParams
-     * @param titleString
-     * @param pictures
-     * @param params
-     * @throws Exception
-     */
-    private void saveImage(Object object, String picId, Map<String, ExcelImportEntity> excelParams,
-                           String titleString, Map<String, PictureData> pictures,
-                           ImportParams params) throws Exception {
-        if (pictures == null) {
-            return;
-        }
-        PictureData image = pictures.get(picId);
-        if (image == null) {
-            return;
-        }
-        byte[] data     = image.getData();
-        String fileName = "pic" + Math.round(Math.random() * 100000000000L);
-        fileName += "." + PoiPublicUtil.getFileExtendName(data);
-        if (excelParams.get(titleString).getSaveType() == 1) {
-            String path     = getSaveUrl(excelParams.get(titleString), object);
-            File   savefile = new File(path);
-            if (!savefile.exists()) {
-                savefile.mkdirs();
-            }
-            savefile = new File(path + File.separator + fileName);
-            FileOutputStream fos = new FileOutputStream(savefile);
-            try {
-                fos.write(data);
-            } finally {
-                IOUtils.closeQuietly(fos);
-            }
-            setValues(excelParams.get(titleString), object,
-                    getSaveUrl(excelParams.get(titleString), object) + File.separator + fileName);
-        } else {
-            setValues(excelParams.get(titleString), object, data);
-        }
-    }
-
-    private void createErrorCellStyle(Workbook workbook) {
-        errorCellStyle = workbook.createCellStyle();
-        Font font = workbook.createFont();
-        font.setColor(Font.COLOR_RED);
-        errorCellStyle.setFont(font);
-    }
-
-}

+ 0 - 288
projects-service_1018/src/main/java/cn/afterturn/easypoi/excel/imports/base/ImportBaseService2.java

@@ -1,288 +0,0 @@
-/**
- * Copyright 2013-2015 JueYue (qrb.jueyue@gmail.com)
- * <p>
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * <p>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p>
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package cn.afterturn.easypoi.excel.imports.base;
-
-import java.io.File;
-import java.io.FileOutputStream;
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
-import java.lang.reflect.ParameterizedType;
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.util.IOUtils;
-import org.springframework.core.annotation.Order;
-
-import cn.afterturn.easypoi.excel.annotation.Excel;
-import cn.afterturn.easypoi.excel.annotation.ExcelCollection;
-import cn.afterturn.easypoi.excel.annotation.ExcelEntity;
-import cn.afterturn.easypoi.excel.entity.ImportParams;
-import cn.afterturn.easypoi.excel.entity.params.ExcelCollectionParams;
-import cn.afterturn.easypoi.excel.entity.params.ExcelImportEntity;
-import cn.afterturn.easypoi.exception.excel.ExcelImportException;
-import cn.afterturn.easypoi.exception.excel.enums.ExcelImportEnum;
-import cn.afterturn.easypoi.handler.inter.II18nHandler;
-import cn.afterturn.easypoi.util.PoiPublicUtil;
-import cn.afterturn.easypoi.util.PoiReflectorUtil;
-
-/**
- * 导入基础和,普通方法和Sax共用
- * @author JueYue
- *  2015年1月9日 下午10:25:53
- */
-@Order(-1)
-public class ImportBaseService2 {
-
-	protected II18nHandler i18nHandler;
-
-
-    /**
-     * 把这个注解解析放到类型对象中
-     *
-     * @param targetId
-     * @param field
-     * @param excelEntity
-     * @param pojoClass
-     * @param getMethods
-     * @param temp
-     * @throws Exception
-     */
-    public void addEntityToMap(String targetId, Field field, ExcelImportEntity excelEntity,
-                               Class<?> pojoClass, List<Method> getMethods,
-                               Map<String, ExcelImportEntity> temp, ExcelEntity excelEntityAnn) throws Exception {
-        Excel excel = field.getAnnotation(Excel.class);
-        excelEntity = new ExcelImportEntity();
-        excelEntity.setType(excel.type());
-        excelEntity.setSaveUrl(excel.savePath());
-        excelEntity.setSaveType(excel.imageType());
-        excelEntity.setReplace(excel.replace());
-        excelEntity.setDatabaseFormat(excel.databaseFormat());
-        excelEntity.setSuffix(excel.suffix());
-        excelEntity.setImportField(Boolean
-                .valueOf(PoiPublicUtil.getValueByTargetId(excel.isImportField(), targetId, "false")));
-        excelEntity.setFixedIndex(excel.fixedIndex());
-        excelEntity.setName(PoiPublicUtil.getValueByTargetId(excel.name(), targetId, null));
-        if (StringUtils.isNoneEmpty(excel.groupName())) {
-            excelEntity.setName(excel.groupName() + "_" + excelEntity.getName());
-        }
-        if (excelEntityAnn != null && excelEntityAnn.show()) {
-            excelEntity.setName(excelEntityAnn.name() + "_" + excelEntity.getName());
-        }
-        if (i18nHandler != null) {
-            excelEntity.setName(i18nHandler.getLocaleName(excelEntity.getName()));
-        }
-        excelEntity.setMethod(PoiReflectorUtil.fromCache(pojoClass).getSetMethod(field.getName()));
-        if (StringUtils.isNotEmpty(excel.importFormat())) {
-            excelEntity.setFormat(excel.importFormat());
-        } else {
-            excelEntity.setFormat(excel.format());
-        }
-        excelEntity.setDict(excel.dict());
-        excelEntity.setEnumImportMethod(excel.enumImportMethod());
-        if (getMethods != null) {
-            List<Method> newMethods = new ArrayList<Method>();
-            newMethods.addAll(getMethods);
-            newMethods.add(excelEntity.getMethod());
-            excelEntity.setMethods(newMethods);
-        }
-        if (excelEntity.getFixedIndex() != -1) {
-            temp.put("FIXED_" + excelEntity.getFixedIndex(), excelEntity);
-        } else {
-            temp.put(excelEntity.getName(), excelEntity);
-        }
-
-    }
-
-    /**
-     * 获取需要导出的全部字段
-     * @param targetId
-     * @param fields
-     * @param excelParams
-     * @param excelCollection
-     * @param pojoClass
-     * @param getMethods
-     * @throws Exception
-     */
-    public void getAllExcelField(String targetId, Field[] fields,
-                                 Map<String, ExcelImportEntity> excelParams,
-                                 List<ExcelCollectionParams> excelCollection, Class<?> pojoClass,
-                                 List<Method> getMethods, ExcelEntity excelEntityAnn) throws Exception {
-        ExcelImportEntity excelEntity = null;
-        for (int i = 0; i < fields.length; i++) {
-            Field field = fields[i];
-            if (PoiPublicUtil.isNotUserExcelUserThis(null, field, targetId)) {
-                continue;
-            }
-            if (PoiPublicUtil.isCollection(field.getType())) {
-                // 集合对象设置属性
-                ExcelCollection excel = field.getAnnotation(ExcelCollection.class);
-                ExcelCollectionParams collection = new ExcelCollectionParams();
-                collection.setName(field.getName());
-                Map<String, ExcelImportEntity> temp = new HashMap<String, ExcelImportEntity>();
-                ParameterizedType pt = (ParameterizedType) field.getGenericType();
-                Class<?> clz = (Class<?>) pt.getActualTypeArguments()[0];
-                collection.setType(clz);
-                getExcelFieldList(StringUtils.isNotEmpty(excel.id()) ? excel.id() : targetId,
-                        PoiPublicUtil.getClassFields(clz), clz, temp, null);
-                collection.setExcelParams(temp);
-                collection.setExcelName(PoiPublicUtil.getValueByTargetId(
-                        field.getAnnotation(ExcelCollection.class).name(), targetId, null));
-                additionalCollectionName(collection);
-                excelCollection.add(collection);
-            } else if (PoiPublicUtil.isJavaClass(field) || field.getType().isEnum()) {
-                addEntityToMap(targetId, field, excelEntity, pojoClass, getMethods, excelParams, excelEntityAnn);
-            } else {
-                List<Method> newMethods = new ArrayList<Method>();
-                if (getMethods != null) {
-                    newMethods.addAll(getMethods);
-                }
-                //
-                newMethods.add(PoiReflectorUtil.fromCache(pojoClass).getGetMethod(field.getName()));
-                ExcelEntity excel = field.getAnnotation(ExcelEntity.class);
-                if (excel.show() && StringUtils.isEmpty(excel.name())) {
-                    throw new ExcelImportException("if use ExcelEntity ,name mus has value ,data: " + ReflectionToStringBuilder.toString(excel), ExcelImportEnum.PARAMETER_ERROR);
-                }
-                getAllExcelField(StringUtils.isNotEmpty(excel.id()) ? excel.id() : targetId,
-                        PoiPublicUtil.getClassFields(field.getType()), excelParams, excelCollection,
-                        field.getType(), newMethods, excel);
-            }
-        }
-    }
-
-    /**
-     * 追加集合名称到前面
-     * @param collection
-     */
-    private void additionalCollectionName(ExcelCollectionParams collection) {
-        Set<String> keys = new HashSet<String>();
-        keys.addAll(collection.getExcelParams().keySet());
-        for (String key : keys) {
-        	if(StringUtils.isNotBlank(collection.getExcelName())) {
-        		collection.getExcelParams().put(collection.getExcelName() + "_" + key,
-        				collection.getExcelParams().get(key));
-        		collection.getExcelParams().remove(key);
-        	}
-        }
-    }
-
-
-    public void getExcelFieldList(String targetId, Field[] fields, Class<?> pojoClass,
-                                  Map<String, ExcelImportEntity> temp,
-                                  List<Method> getMethods) throws Exception {
-        ExcelImportEntity excelEntity = null;
-        for (int i = 0; i < fields.length; i++) {
-            Field field = fields[i];
-            if (PoiPublicUtil.isNotUserExcelUserThis(null, field, targetId)) {
-                continue;
-            }
-            if (PoiPublicUtil.isJavaClass(field)) {
-                addEntityToMap(targetId, field, excelEntity, pojoClass, getMethods, temp, null);
-            } else {
-                List<Method> newMethods = new ArrayList<Method>();
-                if (getMethods != null) {
-                    newMethods.addAll(getMethods);
-                }
-                ExcelEntity excel = field.getAnnotation(ExcelEntity.class);
-                newMethods.add(PoiReflectorUtil.fromCache(pojoClass).getSetMethod(field.getName()));
-                getExcelFieldList(StringUtils.isNotEmpty(excel.id()) ? excel.id() : targetId,
-                        PoiPublicUtil.getClassFields(field.getType()), field.getType(), temp,
-                        newMethods);
-            }
-        }
-    }
-
-    public Object getFieldBySomeMethod(List<Method> list, Object t) throws Exception {
-        Method m;
-        for (int i = 0; i < list.size() - 1; i++) {
-            m = list.get(i);
-            t = m.invoke(t, new Object[]{});
-        }
-        return t;
-    }
-
-    public void saveThisExcel(ImportParams params, Class<?> pojoClass, boolean isXSSFWorkbook,
-                              Workbook book) throws Exception {
-        String path = getSaveExcelUrl(params, pojoClass);
-        File savefile = new File(path);
-        if (!savefile.exists()) {
-            savefile.mkdirs();
-        }
-        SimpleDateFormat format = new SimpleDateFormat("yyyMMddHHmmss");
-        FileOutputStream fos = new FileOutputStream(
-                path + File.separator + format.format(new Date()) + "_" + Math.round(Math.random() * 100000)
-                        + (isXSSFWorkbook == true ? ".xlsx" : ".xls"));
-        book.write(fos);
-        IOUtils.closeQuietly(fos);
-    }
-
-    /**
-     * 获取保存的Excel 的真实路径
-     *
-     * @param params
-     * @param pojoClass
-     * @return
-     * @throws Exception
-     */
-    public String getSaveExcelUrl(ImportParams params, Class<?> pojoClass) throws Exception {
-        String url = "";
-        if (ImportParams.SAVE_URL.equals(params.getSaveUrl())) {
-            url = pojoClass.getName().split("\\.")[pojoClass.getName().split("\\.").length - 1];
-            return params.getSaveUrl() + File.separator + url;
-        }
-        return params.getSaveUrl();
-    }
-
-    /**
-     * 多个get 最后再set
-     *
-     * @param setMethods
-     * @param object
-     */
-    public void setFieldBySomeMethod(List<Method> setMethods, Object object,
-                                     Object value) throws Exception {
-        Object t = getFieldBySomeMethod(setMethods, object);
-        setMethods.get(setMethods.size() - 1).invoke(t, value);
-    }
-
-    /**
-     *
-     * @param entity
-     * @param object
-     * @param value
-     * @throws Exception
-     */
-    public void setValues(ExcelImportEntity entity, Object object, Object value) throws Exception {
-        // 去掉非包装类的异常情况
-        if (value == null) {
-            return;
-        }
-        if (entity.getMethods() != null) {
-            setFieldBySomeMethod(entity.getMethods(), object, value);
-        } else {
-            entity.getMethod().invoke(object, value);
-        }
-    }
-
-}

+ 0 - 134
projects-service_1018/src/main/java/cn/afterturn/easypoi/excel/imports/recursive/ExcelImportForkJoinWork2.java

@@ -1,134 +0,0 @@
-package cn.afterturn.easypoi.excel.imports.recursive;
-
-import java.util.ArrayList;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.RecursiveTask;
-
-import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
-import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.ss.usermodel.Row;
-import org.apache.poi.ss.usermodel.Sheet;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import cn.afterturn.easypoi.excel.entity.ImportParams;
-import cn.afterturn.easypoi.excel.entity.params.ExcelImportEntity;
-import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult;
-import cn.afterturn.easypoi.excel.imports.ExcelImportService2;
-import cn.afterturn.easypoi.exception.excel.ExcelImportException;
-import cn.afterturn.easypoi.exception.excel.enums.ExcelImportEnum;
-import cn.afterturn.easypoi.handler.inter.IExcelDataModel;
-import cn.afterturn.easypoi.util.PoiPublicUtil;
-
-/**
- * 并行导入计算
- * 支持校验
- * 不支持图片
- * 不支持集合
- *
- * @author by jueyue on 19-6-9.
- */
-public class ExcelImportForkJoinWork2 extends RecursiveTask<ExcelImportResult> {
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(ExcelImportForkJoinWork.class);
-
-    private int                            startRow;
-    private int                            endRow;
-    private Sheet                          sheet;
-    private ImportParams                   params;
-    private Class<?>                       pojoClass;
-    private ExcelImportService2            importService;
-    private String                         targetId;
-    private Map<Integer, String>           titlemap;
-    private Map<String, ExcelImportEntity> excelParams;
-
-    public ExcelImportForkJoinWork2(int startRow, int endRow, Sheet sheet, ImportParams params,
-                                   Class<?> pojoClass, ExcelImportService2 importService, String targetId,
-                                   Map<Integer, String> titlemap, Map<String, ExcelImportEntity> excelParams) {
-        this.startRow = startRow;
-        this.endRow = endRow;
-        this.sheet = sheet;
-        this.params = params;
-        this.pojoClass = pojoClass;
-        this.importService = importService;
-        this.targetId = targetId;
-        this.titlemap = titlemap;
-        this.excelParams = excelParams;
-    }
-
-    @Override
-    protected ExcelImportResult compute() {
-        long              length = endRow - startRow;
-        ExcelImportResult result = null;
-        if (length <= params.getCritical()) {
-            LOGGER.debug("excel import concurrent task start {} , end {}", startRow, endRow);
-            return readRow();
-        } else {
-            int                     middle = (startRow + endRow) / 2;
-            ExcelImportForkJoinWork2 right  = new ExcelImportForkJoinWork2(startRow, middle, sheet, params, pojoClass, importService, targetId, titlemap, excelParams);
-            right.fork();
-            ExcelImportForkJoinWork2 left = new ExcelImportForkJoinWork2(middle + 1, endRow, sheet, params, pojoClass, importService, targetId, titlemap, excelParams);
-            left.fork();
-            //合并
-            result = right.join();
-            ExcelImportResult leftResult = left.join();
-            result.getList().addAll(leftResult.getList());
-            result.getFailList().addAll(leftResult.getFailList());
-        }
-        return result;
-    }
-
-    private ExcelImportResult readRow() {
-        StringBuilder     errorMsg;
-        Row               row;
-        Object            object;
-        ExcelImportResult result = new ExcelImportResult();
-        result.setFailList(new ArrayList());
-        result.setList(new ArrayList());
-        boolean isMap = Map.class.equals(pojoClass);
-        for (int i = startRow; i <= endRow; i++) {
-            row = sheet.getRow(i);
-            errorMsg = new StringBuilder();
-            if (params.getKeyIndex() != null && (row.getCell(params.getKeyIndex()) == null)) {
-                continue;
-            }
-            object = PoiPublicUtil.createObject(pojoClass, targetId);
-            try {
-                Set<Integer> keys = titlemap.keySet();
-                for (Integer cn : keys) {
-                    Cell   cell        = row.getCell(cn);
-                    String titleString = (String) titlemap.get(cn);
-                    if (excelParams.containsKey(titleString) || isMap) {
-                        try {
-                            importService.saveFieldValue(params, object, cell, excelParams, titleString, row);
-                        } catch (ExcelImportException e) {
-                            // 如果需要去校验就忽略,这个错误,继续执行
-                            if (params.isNeedVerify() && ExcelImportEnum.GET_VALUE_ERROR.equals(e.getType())) {
-                                errorMsg.append(" ").append(titleString).append(ExcelImportEnum.GET_VALUE_ERROR.getMsg());
-                            }
-                        }
-                    }
-                }
-                if (object instanceof IExcelDataModel) {
-                    ((IExcelDataModel) object).setRowNum(row.getRowNum());
-                }
-                if (importService.verifyingDataValidity(object, row, params, isMap, errorMsg)) {
-                    result.getList().add(object);
-                } else {
-                    result.getFailList().add(object);
-                }
-            } catch (ExcelImportException e) {
-                LOGGER.error("excel import error , row num:{},obj:{}", i, ReflectionToStringBuilder.toString(object));
-                if (!e.getType().equals(ExcelImportEnum.VERIFY_ERROR)) {
-                    throw new ExcelImportException(e.getType(), e);
-                }
-            } catch (Exception e) {
-                LOGGER.error("excel import error , row num:{},obj:{}", i, ReflectionToStringBuilder.toString(object));
-                throw new RuntimeException(e);
-            }
-        }
-        return result;
-    }
-
-}

+ 0 - 35
projects-service_1018/src/main/java/com/rtrh/projects/baseConfig/BaseConfig.java

@@ -1,35 +0,0 @@
-package com.rtrh.projects.baseConfig;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Properties;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class BaseConfig {
-	
-	private static Logger logger = LoggerFactory.getLogger(BaseConfig.class);
-
-	private static Properties properties = new Properties();
-	
-	public static Object getConfig(Object key) {
-		loadConfig();
-		return properties.get(key);
-	}
-	public static Object getConfig(Object key, Object defaultValue) {
-		loadConfig();
-		return properties.getOrDefault(key, defaultValue);
-	}
-	
-	public static void loadConfig() {
-		try {
-			if(properties.isEmpty()) {
-				InputStream inputStream2 = BaseConfig.class.getResourceAsStream("config.properties");
-				properties.load(inputStream2);
-			}
-		} catch (IOException e) {
-			logger.error("", e);
-		}
-	}
-}

+ 0 - 16
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/SecurityStaticValue.java

@@ -1,16 +0,0 @@
-package com.rtrh.projects.modules.account;
-
-public class SecurityStaticValue {
-	
-	public static final int SALT_SIZE = 8;
-
-	/**
-	 * 加密算法
-	 */
-	public static final String HASH_ALGORITHM = "SHA-1";
-
-	/**
-	 * 迭代次数
-	 */
-	public static final int HASH_INTERATIONS = 1024;
-}

+ 0 - 128
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/dao/CommLoginDao.java

@@ -1,128 +0,0 @@
-package com.rtrh.projects.modules.account.dao;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-import cn.hutool.core.date.DateUtil;
-import com.rtrh.projects.vo.system.LoginlogQueryVO;
-import org.hibernate.criterion.Criterion;
-import org.hibernate.criterion.DetachedCriteria;
-import org.hibernate.criterion.MatchMode;
-import org.hibernate.criterion.Order;
-import org.hibernate.criterion.Restrictions;
-import org.springframework.stereotype.Service;
-
-import com.rtrh.common.util.CollectionUtil;
-import com.rtrh.common.util.StringUtil;
-import com.rtrh.core.repository.Page;
-import com.rtrh.core.repository.hibernate.EntityServiceImpl;
-import com.rtrh.projects.modules.account.po.CommLogin;
-
-@Service
-public class CommLoginDao extends EntityServiceImpl<CommLogin> {
-
-    public Page pageQueryCommLogin(Page page, String ip, String loginname, String city,
-                                   String ua, String remark, Boolean status, Date beginCreateDate,
-                                   Date endCreateDate, Order order) {
-        DetachedCriteria detachedCriteria = createDetachedCriteria(ip, loginname, city, ua, remark, status, beginCreateDate, endCreateDate, order);
-        Page dataPage = this.pagedQuery(page, detachedCriteria);
-        return dataPage;
-    }
-
-
-    private DetachedCriteria createDetachedCriteria(String ip, String loginname, String city,
-                                                    String ua, String remark, Boolean status, Date beginCreateDate,
-                                                    Date endCreateDate, Order order) {
-        DetachedCriteria detachedCriteria = DetachedCriteria.forClass(CommLogin.class);
-
-        List<Criterion> cris = new ArrayList<Criterion>();
-        if (StringUtil.isNotEmpty(ip)) {
-            Criterion criterion = Restrictions.eq("ip", ip);
-            cris.add(criterion);
-        }
-        if (StringUtil.isNotEmpty(loginname)) {
-            Criterion criterion = Restrictions.eq("loginname", loginname);
-            cris.add(criterion);
-        }
-        if (StringUtil.isNotEmpty(city)) {
-            Criterion criterion = Restrictions.eq("city", city);
-            cris.add(criterion);
-        }
-        if (StringUtil.isNotEmpty(ua)) {
-            Criterion criterion = Restrictions.like("ua", ua, MatchMode.ANYWHERE);
-            cris.add(criterion);
-        }
-        if (StringUtil.isNotEmpty(remark)) {
-            Criterion criterion = Restrictions.like("remark", remark, MatchMode.ANYWHERE);
-            cris.add(criterion);
-        }
-        if (status != null) {
-            Criterion criterion = Restrictions.eq("status", status);
-            cris.add(criterion);
-        }
-
-        if (beginCreateDate != null) {
-            Criterion criterion = Restrictions.ge("createTime", beginCreateDate);
-            cris.add(criterion);
-        }
-        if (endCreateDate != null) {
-            Criterion criterion = Restrictions.le("createTime", endCreateDate);
-            cris.add(criterion);
-        }
-
-        if (CollectionUtil.isNotEmpty(cris)) {
-            Criterion[] c = new Criterion[cris.size()];
-            Criterion criterion = Restrictions.and(cris.toArray(c));
-            detachedCriteria.add(criterion);
-        }
-
-
-        if (order != null) {
-            detachedCriteria.addOrder(order);
-        }
-
-        return detachedCriteria;
-    }
-
-    public Page pageQueryCommLogin(Page page, LoginlogQueryVO queryVO) {
-        StringBuffer sb = new StringBuffer();
-        sb.append("select  *\n" +
-                "from\n" +
-                "(SELECT\n" +
-                "\tu.login,\n" +
-                " u.logic_Delete_Flag, " +
-                "\tl.ip,\n" +
-                "\tl.`status`,\n" +
-                "\tl.create_time,\n" +
-                "\tIFNULL((SELECT count(1) from comm_login l where l.loginname=u.login),0) as loginNum\n" +
-                "FROM\n" +
-                "\tsec_user u\n" +
-                "\tLEFT JOIN ( SELECT loginname, max( create_time ) create_time FROM comm_login l GROUP BY loginname ) ll ON u.login = ll.loginname\n" +
-                "\tLEFT JOIN comm_login l ON ll.loginname = l.loginname \n" +
-                "\tAND ll.create_time = l.create_time ) a\n" +
-                "WHERE\n" +
-                " a.logic_Delete_Flag=0 ");
-        if (StringUtil.isNotEmpty(queryVO.getState())) {
-            switch (queryVO.getState()) {
-                case "1":
-                    sb.append(" and a.`loginNum`= 0");
-                    break;
-                case "2":
-                    sb.append(" and a.`loginNum`> 0");
-                    break;
-            }
-        }
-        if (StringUtil.isNotEmpty(queryVO.getLoginName())){
-            sb.append(" and a.login='"+queryVO.getLoginName()+"'");
-        }
-        if(queryVO.getBeginCreateDate() != null) {
-            sb.append(" AND b.create_time >= '"+ DateUtil.format(queryVO.getBeginCreateDate(), "yyyy-MM-dd 00:00:00")+ "' ");
-        }
-        if(queryVO.getEndCreateDate() != null) {
-            sb.append(" AND b.create_time <= '" + DateUtil.format(queryVO.getEndCreateDate(), "yyyy-MM-dd 23:59:59")+ "' ");
-        }
-
-        return  this.queryForListBySql(sb.toString(),page);
-    }
-}

+ 0 - 68
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/dao/CommUserDao.java

@@ -1,68 +0,0 @@
-package com.rtrh.projects.modules.account.dao;
-
-import java.util.Date;
-import java.util.List;
-
-import org.hibernate.criterion.Criterion;
-import org.hibernate.criterion.DetachedCriteria;
-import org.hibernate.criterion.MatchMode;
-import org.hibernate.criterion.Order;
-import org.hibernate.criterion.Restrictions;
-import org.springframework.stereotype.Service;
-
-import com.rtrh.common.util.StringUtil;
-import com.rtrh.core.repository.Page;
-import com.rtrh.core.repository.hibernate.EntityServiceImpl;
-import com.rtrh.projects.modules.account.po.CommUser;
-
-@Service
-public class CommUserDao extends EntityServiceImpl<CommUser> {
-
-	public CommUser findCommUserByLoginname(String loginname) {
-		DetachedCriteria detachedCriteria = DetachedCriteria.forClass(CommUser.class);
-		Criterion criterion = Restrictions.eq("loginname", loginname);
-		detachedCriteria.add(criterion);
-		List<CommUser> userList = this.find(detachedCriteria);
-		return userList != null && userList.size() > 0 ? userList.get(0) : null;
-	}
-	
-	public List<CommUser> listCommUser(String loginname, int enabled, int locked, Date beginCreateDate,
-			Date endCreateDate, Order order) {
-		DetachedCriteria detachedCriteria = createDetachedCriteria(loginname, enabled, locked, beginCreateDate, endCreateDate, order);
-		List<CommUser> userList = this.find(detachedCriteria);
-		return userList;
-	}
-
-	public Page pageQueryCommUser(Page page, String loginname, int enabled, int locked, Date beginCreateDate,
-			Date endCreateDate, Order order) {
-		DetachedCriteria detachedCriteria = createDetachedCriteria(loginname, enabled, locked, beginCreateDate, endCreateDate, order);
-		Page dataPage = this.pagedQuery(page, detachedCriteria);
-		return dataPage;
-	}
-	
-	
-	private DetachedCriteria createDetachedCriteria(String loginname, int enabled, int locked, Date beginCreateDate,
-			Date endCreateDate, Order order){
-		DetachedCriteria detachedCriteria = DetachedCriteria.forClass(CommUser.class);
-		Criterion criterion = Restrictions.and(Restrictions.isNotNull("loginname"), Restrictions.isNotEmpty("loginname"));
-		if(StringUtil.isNotEmpty(loginname)){
-			criterion = Restrictions.and(criterion, Restrictions.like("loginname", loginname, MatchMode.ANYWHERE));
-		}
-		criterion = Restrictions.and(criterion, Restrictions.eq("enabled", enabled));
-		criterion = Restrictions.and(criterion, Restrictions.eq("locked", locked));
-		if(beginCreateDate != null){
-			criterion = Restrictions.and(criterion, Restrictions.ge("createTime", beginCreateDate));
-		}
-		if(endCreateDate != null){
-			criterion = Restrictions.and(criterion, Restrictions.le("createTime", endCreateDate));
-		}
-		detachedCriteria.add(criterion);
-		
-		if(order != null){
-			detachedCriteria.addOrder(order);
-		}
-		
-		return detachedCriteria;
-	}
-	
-}

+ 0 - 21
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/enums/LockState.java

@@ -1,21 +0,0 @@
-package com.rtrh.projects.modules.account.enums;
-
-/**
- * 锁定状态
- * @author luogl
- *
- */
-public enum LockState {
-
-	Unlocked(0, "未锁"),
-	Locked(1, "已锁");
-	
-	public final int key;
-	public final String des;
-	
-	private LockState(int key, String des){
-		this.key = key;
-		this.des = des;
-	}
-	
-}

+ 0 - 26
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/exception/OrgUserNotFoundException.java

@@ -1,26 +0,0 @@
-package com.rtrh.projects.modules.account.exception;
-
-@SuppressWarnings("serial")
-public class OrgUserNotFoundException extends Exception {
-
-	private String userid = null;
-	
-	public OrgUserNotFoundException(String userid, String message){
-		super(message);
-		this.userid = userid;
-	}
-
-	public OrgUserNotFoundException(String userid, Throwable cause){
-		super(cause);
-		this.userid = userid;
-	}
-
-	public String getUserid() {
-		return userid;
-	}
-
-	public void setUserid(String userid) {
-		this.userid = userid;
-	}
-	
-}

+ 0 - 33
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/exception/UsernameExistException.java

@@ -1,33 +0,0 @@
-package com.rtrh.projects.modules.account.exception;
-
-/**
- * 用户名已存在
- * 注册验证
- * @author luogl
- *
- */
-@SuppressWarnings("serial")
-public class UsernameExistException extends Exception {
-
-	private String username = null;
-	
-	public UsernameExistException(String username, String message){
-		super(message);
-		this.username = username;
-	}
-
-	public UsernameExistException(String username, Throwable cause){
-		super(cause);
-		this.username = username;
-	}
-
-	public String getUsername() {
-		return username;
-	}
-
-	public void setUsername(String username) {
-		this.username = username;
-	}
-
-	
-}

+ 0 - 14
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/po/CommLogin.hbm.xml

@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="gb2312"?>
-<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
-<hibernate-mapping package="com.rtrh.projects.modules.account.po">
-    <class name="CommLogin" table="comm_login">
-        <id column="id" name="id" type="java.lang.String"><generator class="assigned"/></id>
-        <property column="loginname" name="loginname" not-null="false" type="java.lang.String" />
-        <property column="ip" name="ip" not-null="false" type="java.lang.String" />
-        <property column="city" name="city" not-null="false" type="java.lang.String" />
-        <property column="ua" name="ua" not-null="false" type="java.lang.String" />
-        <property column="status" name="status" not-null="false" type="java.lang.Boolean" />
-        <property column="remark" name="remark" not-null="false" type="java.lang.String" />
-        <property column="create_time" name="createTime" not-null="false" type="java.util.Date" />
-    </class>
-</hibernate-mapping>

+ 0 - 78
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/po/CommLogin.java

@@ -1,78 +0,0 @@
-package com.rtrh.projects.modules.account.po;
-
-import java.util.Date;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-
-@SuppressWarnings("serial")
-public class CommLogin  implements java.io.Serializable {
-
-	private String id;
-	private String ip;
-	private String loginname;
-	private Date createTime;
-	private String city;
-	/**
-	 * 成功|失败
-	 */
-	private Boolean status;
-	/**
-	 * UserAgent
-	 */
-	private String ua;
-	/**
-	 * 备注
-	 */
-	private String remark;
-	
-	public String getId() {
-		return id;
-	}
-	public void setId(String id) {
-		this.id = id;
-	}
-	public String getIp() {
-		return ip;
-	}
-	public void setIp(String ip) {
-		this.ip = ip;
-	}
-	public String getLoginname() {
-		return loginname;
-	}
-	public void setLoginname(String loginname) {
-		this.loginname = loginname;
-	}
-	@JsonFormat(pattern ="yyyy-MM-dd HH:mm:ss", timezone ="GMT+8")
-	public Date getCreateTime() {
-		return createTime;
-	}
-	public void setCreateTime(Date createTime) {
-		this.createTime = createTime;
-	}
-	public String getCity() {
-		return city;
-	}
-	public void setCity(String city) {
-		this.city = city;
-	}
-	public Boolean getStatus() {
-		return status;
-	}
-	public void setStatus(Boolean status) {
-		this.status = status;
-	}
-	public String getUa() {
-		return ua;
-	}
-	public void setUa(String ua) {
-		this.ua = ua;
-	}
-	public String getRemark() {
-		return remark;
-	}
-	public void setRemark(String remark) {
-		this.remark = remark;
-	}
-	
-}

+ 0 - 15
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/po/CommUser.hbm.xml

@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="gb2312"?>
-<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
-<hibernate-mapping package="com.rtrh.projects.modules.account.po">
-    <class name="CommUser" table="comm_user">
-        <id column="id" name="id" type="java.lang.String"><generator class="assigned"/></id>
-        <property column="login_name" name="loginname" not-null="false" type="java.lang.String" />
-        <property column="password" name="password" not-null="false" type="java.lang.String" />
-        <property column="salt" name="salt" not-null="false" type="java.lang.String" />
-        <property column="enabled" name="enabled" not-null="false" type="java.lang.Integer" />
-        <property column="locked" name="locked" not-null="false" type="java.lang.Integer" />
-        <property column="create_time" name="createTime" not-null="false" type="java.util.Date" />
-        <property column="update_time" name="updateTime" not-null="false" type="java.util.Date" />
-       <!--  <property column="password_change_time" name="passwordChangeTime" not-null="false" type="java.util.Date" /> -->
-    </class>
-</hibernate-mapping>

+ 0 - 81
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/po/CommUser.java

@@ -1,81 +0,0 @@
-package com.rtrh.projects.modules.account.po;
-
-import java.util.Date;
-
-@SuppressWarnings("serial")
-public class CommUser implements java.io.Serializable {
-
-	 private String id;
-    /**登录名*/
-    private String loginname;
-    /**密码*/
-    private String password;
-    /**密码增强*/
-    private String salt;
-    /**创建时间*/
-    private Date createTime;
-    /**启用状态 帐号是否可用*/
-    private int enabled;
-    /**锁定状态 帐号是否被锁*/
-    private int locked;
-    private Date updateTime;
-   /* *//**
-     * 最后一次更新密码时间
-     *//*
-    private Date passwordChangeTime;*/
-	public String getId() {
-		return id;
-	}
-	public void setId(String id) {
-		this.id = id;
-	}
-	public String getLoginname() {
-		return loginname;
-	}
-	public void setLoginname(String loginname) {
-		this.loginname = loginname;
-	}
-	public String getPassword() {
-		return password;
-	}
-	public void setPassword(String password) {
-		this.password = password;
-	}
-	public String getSalt() {
-		return salt;
-	}
-	public void setSalt(String salt) {
-		this.salt = salt;
-	}
-	public Date getCreateTime() {
-		return createTime;
-	}
-	public void setCreateTime(Date createTime) {
-		this.createTime = createTime;
-	}
-	public int getEnabled() {
-		return enabled;
-	}
-	public void setEnabled(int enabled) {
-		this.enabled = enabled;
-	}
-	public int getLocked() {
-		return locked;
-	}
-	public void setLocked(int locked) {
-		this.locked = locked;
-	}
-	public Date getUpdateTime() {
-		return updateTime;
-	}
-	public void setUpdateTime(Date updateTime) {
-		this.updateTime = updateTime;
-	}
-	/*public Date getPasswordChangeTime() {
-		return passwordChangeTime;
-	}
-	public void setPasswordChangeTime(Date passwordChangeTime) {
-		this.passwordChangeTime = passwordChangeTime;
-	}*/
-    
-}

+ 0 - 19
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/service/CommLoginService.java

@@ -1,19 +0,0 @@
-package com.rtrh.projects.modules.account.service;
-
-import java.util.Date;
-
-import com.rtrh.core.repository.Page;
-import com.rtrh.projects.modules.account.po.CommLogin;
-
-public interface CommLoginService {
-
-	void logRecord(CommLogin po);
-	
-	void logRecord(String ip, String loginname, String city, String ua, Boolean status);
-	
-	void logRecord(String ip, String loginname, String city, String ua, String remark, Boolean status);
-	
-	Page pageQueryCommLogin(Page page, String ip, String loginname, String city, String ua, 
-			String remark, Boolean status, Date beginCreateDate,
-			Date endCreateDate);
-}

+ 0 - 33
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/service/CommUserService.java

@@ -1,33 +0,0 @@
-package com.rtrh.projects.modules.account.service;
-
-import java.util.Date;
-import java.util.List;
-
-import org.hibernate.criterion.Order;
-
-import com.rtrh.core.repository.Page;
-import com.rtrh.projects.modules.account.exception.UsernameExistException;
-import com.rtrh.projects.modules.account.po.CommUser;
-
-/**
- * 通用帐号业务
- * @author luogl
- *
- */
-public interface CommUserService {
-	
-	CommUser findCommUserById(String id);
-	CommUser findCommUserByLoginname(String loginname);
-	CommUser insertCommUser(String loginName, String password) throws UsernameExistException;
-	CommUser updateCommUser(CommUser commUser);
-	CommUser updateLoginName(CommUser commUser)  throws UsernameExistException;
-	void updatePassword(String id, String password);
-	List<CommUser> listCommUser(String loginname, int enabled, int locked, Date beginCreateDate, Date endCreateDate, Order order);
-	Page pageQueryCommUser(Page page, String loginname, int enabled, int locked, Date beginCreateDate, Date endCreateDate, Order order);
-
-	void lockUser(String id);
-	void unlockUser(String id);
-	void enableUser(String id);
-	void disaleuser(String id);
-	
-}

+ 0 - 59
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/service/impl/CommLoginServiceImpl.java

@@ -1,59 +0,0 @@
-package com.rtrh.projects.modules.account.service.impl;
-
-import java.util.Date;
-
-import org.hibernate.criterion.Order;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import com.rtrh.common.util.Identities;
-import com.rtrh.common.util.StringUtil;
-import com.rtrh.core.repository.Page;
-import com.rtrh.projects.modules.account.dao.CommLoginDao;
-import com.rtrh.projects.modules.account.po.CommLogin;
-import com.rtrh.projects.modules.account.service.CommLoginService;
-
-@Service
-public class CommLoginServiceImpl implements CommLoginService {
-
-	@Autowired
-	private CommLoginDao commLoginDao;
-	
-	@Override
-	public void logRecord(CommLogin po) {
-		if(StringUtil.isEmpty(po.getId())){
-			po.setId(Identities.uuid());
-		}
-		if(null == po.getCreateTime()){
-			po.setCreateTime(new Date());
-		}
-		commLoginDao.save(po);
-	}
-
-	@Override
-	public void logRecord(String ip, String loginname, String city, String ua, Boolean status) {
-		logRecord(ip, loginname, city, ua, null, status);
-		
-	}
-
-	@Override
-	public void logRecord(String ip, String loginname, String city, String ua, String remark, Boolean status) {
-		CommLogin po = new CommLogin();
-		po.setIp(ip);
-		po.setLoginname(loginname);
-		po.setCity(city);
-		po.setUa(ua);
-		po.setStatus(status);
-		po.setRemark(remark);
-		logRecord(po);
-	}
-
-	@Override
-	public Page pageQueryCommLogin(Page page, String ip, String loginname, String city, String ua, String remark,
-			Boolean status, Date beginCreateDate, Date endCreateDate) {
-		
-		return commLoginDao.pageQueryCommLogin(page, ip, loginname, city, ua, remark, 
-				status, beginCreateDate, endCreateDate, Order.desc("createTime"));
-	}
-
-}

+ 0 - 41
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/service/impl/CommUserChecker.java

@@ -1,41 +0,0 @@
-package com.rtrh.projects.modules.account.service.impl;
-
-import com.rtrh.common.util.Digests;
-import com.rtrh.common.util.Encodes;
-import com.rtrh.core.common.EnabledState;
-import com.rtrh.projects.modules.account.SecurityStaticValue;
-import com.rtrh.projects.modules.account.enums.LockState;
-import com.rtrh.projects.modules.account.po.CommUser;
-
-/**
- * 帐号状态判定
- * @author luogl
- *
- */
-public class CommUserChecker {
-
-	public static boolean isEnabledUser(CommUser user){
-		return EnabledState.Enable.key == user.getEnabled();
-	}
-	
-	public static boolean isDisabledUser(CommUser user){
-		return EnabledState.Disable.key == user.getEnabled();
-	}
-	
-	public static boolean isLockedUser(CommUser user){
-		return LockState.Locked.key == user.getLocked();
-	}
-	
-	public static boolean loginPasswordCheck(CommUser user, String loginPassword) {
-		
-		return user.getPassword().equals(entryptPassword(user, loginPassword));
-	}
-	
-	private static String entryptPassword(CommUser commUser, String loginPassword) {
-		byte[] salt =  Encodes.decodeHex(commUser.getSalt());
-		byte[] hashPassword = Digests.sha1(loginPassword.getBytes(),
-				salt, SecurityStaticValue.HASH_INTERATIONS);
-		return Encodes.encodeHex(hashPassword);
-	}
-	
-}

+ 0 - 193
projects-service_1018/src/main/java/com/rtrh/projects/modules/account/service/impl/CommUserServiceImpl.java

@@ -1,193 +0,0 @@
-package com.rtrh.projects.modules.account.service.impl;
-
-import java.util.Date;
-import java.util.List;
-
-import org.hibernate.criterion.Order;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import com.rtrh.common.util.Digests;
-import com.rtrh.common.util.Encodes;
-import com.rtrh.common.util.Identities;
-import com.rtrh.common.util.StringUtil;
-import com.rtrh.core.common.EnabledState;
-import com.rtrh.core.repository.Page;
-import com.rtrh.projects.modules.account.SecurityStaticValue;
-import com.rtrh.projects.modules.account.dao.CommUserDao;
-import com.rtrh.projects.modules.account.enums.LockState;
-import com.rtrh.projects.modules.account.exception.UsernameExistException;
-import com.rtrh.projects.modules.account.po.CommUser;
-import com.rtrh.projects.modules.account.service.CommUserService;
-
-@Service
-public class CommUserServiceImpl implements CommUserService {
-
-	@Autowired
-	private CommUserDao commUserDao;
-	
-	@Override
-	public CommUser findCommUserById(String id) {
-		return commUserDao.findById(id);
-	}
-
-	@Override
-	public CommUser findCommUserByLoginname(String loginname) {
-		if(StringUtil.isEmpty(loginname)){
-			return null;
-		}
-		CommUser commUser = commUserDao.findCommUserByLoginname(loginname);
-		return commUser;
-	}
-
-	@Override
-	public CommUser insertCommUser(String loginName, String password) throws UsernameExistException {
-		if(StringUtil.isEmpty(loginName) || StringUtil.isEmpty(password)){
-			return null;
-		}
-		if(findCommUserByLoginname(loginName) != null){
-			throw new UsernameExistException(loginName, String.format("用户名已存在:%s", loginName));
-		}
-		CommUser commUser = new CommUser();
-		commUser.setId(Identities.uuid());
-		commUser.setLoginname(loginName);
-		commUser.setEnabled(EnabledState.Enable.key);
-		commUser.setLocked(LockState.Unlocked.key);
-		commUser.setCreateTime(new Date());
-		commUser.setPassword(password);
-		entryptPassword(commUser);
-		//commUser.setPasswordChangeTime(new Date());
-		commUserDao.save(commUser);
-		return commUser;
-	}
-
-	@Override
-	public CommUser updateCommUser(CommUser commUser) {
-		if(null == commUser || StringUtil.isEmpty(commUser.getId())){
-			return null;
-		}
-		CommUser oldUser = commUserDao.findById(commUser.getId());
-		oldUser.setEnabled(commUser.getEnabled());
-		oldUser.setLocked(commUser.getLocked());
-		oldUser.setUpdateTime(new Date());
-		commUserDao.save(oldUser);
-		return oldUser;
-	}
-
-	@Override
-	public void updatePassword(String id, String password) {
-		CommUser oldUser = commUserDao.findById(id);
-		if(oldUser != null && StringUtil.isNotEmpty(password)){
-			oldUser.setPassword(password);
-			entryptPassword(oldUser);
-			oldUser.setUpdateTime(new Date());
-			//oldUser.setPasswordChangeTime(new Date());
-			commUserDao.update(oldUser);
-		}
-	}
-	
-	@Override
-	public List<CommUser> listCommUser(String loginname, int enabled, int locked, Date beginCreateDate,
-			Date endCreateDate, Order order) {
-		List<CommUser> userList = commUserDao.listCommUser(loginname, enabled, locked, beginCreateDate, endCreateDate, order);
-		return userList;
-	}
-
-	@Override
-	public Page pageQueryCommUser(Page page, String loginname, int enabled, int locked, Date beginCreateDate,
-			Date endCreateDate, Order order) {
-		Page dataPage = commUserDao.pageQueryCommUser(page, loginname, enabled, locked, beginCreateDate, endCreateDate, order);
-		return dataPage;
-	}
-
-	@Override
-	public void lockUser(String id) {
-		if(StringUtil.isEmpty(id)){
-			return ;
-		}
-		
-		CommUser commUser = commUserDao.findById(id);
-		if(null == commUser){
-			return ;
-		}
-		
-		commUser.setLocked(LockState.Locked.key);
-		
-		commUserDao.update(commUser);
-	}
-
-	@Override
-	public void unlockUser(String id) {
-		if(StringUtil.isEmpty(id)){
-			return ;
-		}
-		
-		CommUser commUser = commUserDao.findById(id);
-		if(null == commUser){
-			return ;
-		}
-		
-		commUser.setLocked(LockState.Unlocked.key);
-		
-		commUserDao.update(commUser);
-	}
-
-	@Override
-	public void enableUser(String id) {
-		if(StringUtil.isEmpty(id)){
-			return ;
-		}
-		
-		CommUser commUser = commUserDao.findById(id);
-		if(null == commUser){
-			return ;
-		}
-		
-		commUser.setEnabled(EnabledState.Enable.key);
-		
-		commUserDao.update(commUser);
-	}
-
-	@Override
-	public void disaleuser(String id) {
-		if(StringUtil.isEmpty(id)){
-			return ;
-		}
-		
-		CommUser commUser = commUserDao.findById(id);
-		if(null == commUser){
-			return ;
-		}
-		
-		commUser.setEnabled(EnabledState.Disable.key);
-		
-		commUserDao.update(commUser);
-	}
-	
-	
-	private void entryptPassword(CommUser commUser) {
-		byte[] salt = Digests.generateSalt(SecurityStaticValue.SALT_SIZE);
-		commUser.setSalt(Encodes.encodeHex(salt));
-		byte[] hashPassword = Digests.sha1(commUser.getPassword().getBytes(),
-				salt, SecurityStaticValue.HASH_INTERATIONS);
-		commUser.setPassword(Encodes.encodeHex(hashPassword));
-	}
-
-	@Override
-	public CommUser updateLoginName(CommUser commUser) throws UsernameExistException {
-		if(null == commUser || StringUtil.isEmpty(commUser.getId())) {
-			return null;
-		}
-		String loginName = commUser.getLoginname();
-		if(findCommUserByLoginname(loginName) != null){
-			throw new UsernameExistException(loginName, String.format("用户名已存在:%s", loginName));
-		}
-		CommUser oldUser = commUserDao.findById(commUser.getId());
-		
-		oldUser.setLoginname(loginName);
-		commUserDao.update(oldUser);
-		
-		return oldUser;
-	}
-
-}

+ 0 - 69
projects-service_1018/src/main/java/com/rtrh/projects/modules/email/EmailConfig.java

@@ -1,69 +0,0 @@
-package com.rtrh.projects.modules.email;
-
-public class EmailConfig {
-
-	/**
-	 * 主机名
-	 */
-	private String hostName;
-	
-	/**
-	 * 邮件发送方地址
-	 */
-	private String authenticationAddress;
-	/**
-	 * 别名
-	 */
-	private String addressAlias;
-	
-	/**
-	 * 授权码
-	 */
-	private String authenticationCode;
-	
-	/**
-	 * 最大有效期(分钟)
-	 */
-	private Integer periodOfValidity;
-
-	public String getHostName() {
-		return hostName;
-	}
-
-	public void setHostName(String hostName) {
-		this.hostName = hostName;
-	}
-
-	public String getAuthenticationAddress() {
-		return authenticationAddress;
-	}
-
-	public void setAuthenticationAddress(String authenticationAddress) {
-		this.authenticationAddress = authenticationAddress;
-	}
-
-	public String getAuthenticationCode() {
-		return authenticationCode;
-	}
-
-	public void setAuthenticationCode(String authenticationCode) {
-		this.authenticationCode = authenticationCode;
-	}
-	
-	public String getAddressAlias() {
-		return addressAlias;
-	}
-
-	public void setAddressAlias(String addressAlias) {
-		this.addressAlias = addressAlias;
-	}
-
-	public Integer getPeriodOfValidity() {
-		return periodOfValidity;
-	}
-
-	public void setPeriodOfValidity(Integer periodOfValidity) {
-		this.periodOfValidity = periodOfValidity;
-	}
-	
-}

+ 0 - 30
projects-service_1018/src/main/java/com/rtrh/projects/modules/email/dao/EmailSendRecordDao.java

@@ -1,30 +0,0 @@
-package com.rtrh.projects.modules.email.dao;
-
-import java.util.Date;
-import java.util.List;
-
-import org.hibernate.criterion.Criterion;
-import org.hibernate.criterion.DetachedCriteria;
-import org.hibernate.criterion.Order;
-import org.hibernate.criterion.Restrictions;
-import org.springframework.stereotype.Service;
-
-import com.rtrh.common.util.CollectionUtil;
-import com.rtrh.core.repository.hibernate.EntityServiceImpl;
-import com.rtrh.projects.modules.email.po.EmailSendRecord;
-
-@Service
-public class EmailSendRecordDao extends EntityServiceImpl<EmailSendRecord> {
-
-	public EmailSendRecord findCodeByEmail(String email) {
-		DetachedCriteria detachedCriteria = DetachedCriteria.forClass(EmailSendRecord.class);
-		Criterion criterion = Restrictions.and(Restrictions.eq("email", email),
-				Restrictions.eq("sendSuccess", true),
-				Restrictions.eq("verfiy", false),
-				Restrictions.ge("endTime", new Date()));
-		detachedCriteria.add(criterion);
-		detachedCriteria.addOrder(Order.desc("sendTime"));
-		List<EmailSendRecord> list = find(detachedCriteria);
-		return CollectionUtil.isNotEmpty(list) ? list.get(0) : null;
-	}
-}

+ 0 - 13
projects-service_1018/src/main/java/com/rtrh/projects/modules/email/po/EmailSendRecord.hbm.xml

@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="gb2312"?>
-<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
-<hibernate-mapping package="com.rtrh.projects.modules.email.po">
-	<class name="EmailSendRecord" table="email_send_record">
-		<id column="id" name="id" type="java.lang.String"><generator class="assigned"/></id>
-		<property column="email" name="email" not-null="false" type="java.lang.String" />
-		<property column="send_time" name="sendTime" not-null="false" type="java.util.Date" />
-		<property column="send_success" name="sendSuccess" not-null="false" type="java.lang.Boolean" />
-		<property column="code" name="code" not-null="false" type="java.lang.String" />
-        <property column="verfiy" name="verfiy" not-null="false" type="java.lang.Boolean" />
-        <property column="end_time" name="endTime" not-null="false" type="java.util.Date" />
-	</class>
-</hibernate-mapping>

+ 0 - 41
projects-service_1018/src/main/java/com/rtrh/projects/modules/email/po/EmailSendRecord.java

@@ -1,41 +0,0 @@
-package com.rtrh.projects.modules.email.po;
-
-import java.util.Date;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class EmailSendRecord {
-
-	/**
-	 * id
-	 */
-	private String id;
-	
-	/**
-	 * email
-	 */
-	private String email;
-	/**
-	 * 发送时间
-	 */
-	private Date sendTime;
-	/**
-	 * 发送是否成功
-	 */
-	private Boolean sendSuccess = false;
-	/**
-	 * 验证码
-	 */
-	private String code;
-	/**
-	 * 是否已验证
-	 */
-	private Boolean verfiy = false;
-	/**
-	 * 过期时间
-	 */
-	private Date endTime;
-}

+ 0 - 18
projects-service_1018/src/main/java/com/rtrh/projects/modules/email/service/EmailService.java

@@ -1,18 +0,0 @@
-package com.rtrh.projects.modules.email.service;
-
-public interface EmailService {
-
-	/**
-	 * 发送验证码
-	 * @param email
-	 * @param code
-	 */
-	public Boolean sendEmail(String email);
-	
-	/**
-	 * 验证验证码
-	 * @param email
-	 * @param code
-	 */
-	public Boolean verfiyCode(String email, String code);
-}

+ 0 - 71
projects-service_1018/src/main/java/com/rtrh/projects/modules/email/service/impl/EmailServiceImpl.java

@@ -1,71 +0,0 @@
-package com.rtrh.projects.modules.email.service.impl;
-
-import java.util.Calendar;
-import java.util.Objects;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import com.rtrh.common.util.Identities;
-import com.rtrh.projects.modules.email.EmailConfig;
-import com.rtrh.projects.modules.email.dao.EmailSendRecordDao;
-import com.rtrh.projects.modules.email.po.EmailSendRecord;
-import com.rtrh.projects.modules.email.service.EmailService;
-import com.rtrh.projects.modules.email.utils.EmailSendUtils;
-
-@Service
-public class EmailServiceImpl implements EmailService {
-
-	@Autowired
-	private EmailSendRecordDao emailSendRecordDao;
-	private EmailConfig emailConfig = null;
-	
-	private Logger logger = LoggerFactory.getLogger(this.getClass());
-
-	@Override
-	public Boolean sendEmail(String email) {
-		EmailSendRecord record = new EmailSendRecord();
-		try {
-			Calendar calendar = Calendar.getInstance();
-			record.setCode(EmailSendUtils.generateCode());
-			record.setEmail(email);
-			record.setSendTime(calendar.getTime());
-			calendar.add(Calendar.MINUTE, emailConfig.getPeriodOfValidity());
-			record.setEndTime(calendar.getTime());
-			EmailSendUtils.sendEmail(emailConfig, email, record.getCode());
-			record.setSendSuccess(true);
-		} catch (Exception e) {
-			logger.error("", e);
-			record.setSendSuccess(false);
-		} finally {
-			record.setId(Identities.uuid());
-			emailSendRecordDao.save(record);
-		}
-		return record.getSendSuccess();
-	}
-
-	@Override
-	public Boolean verfiyCode(String email, String code) {
-		EmailSendRecord record = emailSendRecordDao.findCodeByEmail(email);
-		if(record == null) {
-			return false;
-		}
-		record.setVerfiy(true);
-		emailSendRecordDao.update(record);
-		if(!Objects.equals(code, record.getCode())) {
-			return false;
-		}
-		return true;
-	}
-
-	public EmailConfig getEmailConfig() {
-		return emailConfig;
-	}
-
-	public void setEmailConfig(EmailConfig emailConfig) {
-		this.emailConfig = emailConfig;
-	}
-	
-}

+ 0 - 69
projects-service_1018/src/main/java/com/rtrh/projects/modules/email/utils/EmailSendUtils.java

@@ -1,69 +0,0 @@
-package com.rtrh.projects.modules.email.utils;
-
-import java.util.Arrays;
-
-import javax.validation.constraints.NotNull;
-
-import org.apache.commons.lang.math.RandomUtils;
-import org.apache.commons.mail.HtmlEmail;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import com.rtrh.projects.modules.email.EmailConfig;
-
-/**
- * 邮箱验证码发送
- * @author PENG
- *
- */
-public class EmailSendUtils {
-
-	private static Logger logger = LoggerFactory.getLogger(EmailSendUtils.class);
-	
-	/**
-	 * 生成6位验证码
-	 * @return
-	 */
-	public static String generateCode() {
-		return generateCode(6);
-	}
-	
-	/**
-	 * 生成指定长度的验证码
-	 * @param length
-	 * @return
-	 */
-	public static String generateCode(@NotNull Integer length) {
-		String[] codes = new String[length];
-		for(int i=0;i<length;i++) {
-			codes[i] = String.valueOf(RandomUtils.nextInt(10));
-		}
-		return String.join("", Arrays.asList(codes));
-	}
-	
-	/**
-	 * 发送验证码
-	 * @param emailConfig
-	 * @param emailAddress
-	 * @param code
-	 * @return
-	 */
-	public static boolean sendEmail(EmailConfig emailConfig, String emailAddress, String code) {
-		HtmlEmail email = new HtmlEmail();
-		try {
-			email.setHostName(emailConfig.getHostName()); 
-            email.setCharset("UTF-8");
-            email.addTo(emailAddress);
-            email.setFrom(emailConfig.getAuthenticationAddress(),emailConfig.getAddressAlias());
-            email.setAuthentication(emailConfig.getAuthenticationAddress(), emailConfig.getAuthenticationCode());
-            email.setSubject("验证码");
-            email.setMsg("您的验证码是【"+ code + "】,有效期"+emailConfig.getPeriodOfValidity()+"分钟");
-            email.send();
-		} catch (Exception e) {
-			logger.error("", e);
-			return false;
-		}
-		return true;
-	}
-	
-}

+ 0 - 37
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/enums/HikApiEnum.java

@@ -1,37 +0,0 @@
-package com.rtrh.projects.modules.hik.enums;
-
-import com.rtrh.projects.modules.hik.request.CameraPreviewURLsQueryVO;
-import com.rtrh.projects.modules.hik.request.CameraSearchQueryVO;
-import com.rtrh.projects.modules.hik.request.EncodeDeviceSearchQueryVO;
-
-import lombok.Getter;
-
-@Getter
-public enum HikApiEnum {
-	
-	/**
-	 * 根据条件查询目录下有权限的编码设备列表
-	 */
-	ENCODE_DEVICE_SEARCH("/api/resource/v2/encodeDevice/search", "POST", "根据条件查询目录下有权限的编码设备列表", EncodeDeviceSearchQueryVO.class),
-	/**
-	 * 根据条件查询目录下有权限的监控点列表
-	 */
-	CAMERA_SEARCH("/api/resource/v2/camera/search", "POST", "根据条件查询目录下有权限的监控点列表", CameraSearchQueryVO.class),
-	/**
-	 * 获取监控点预览取流URLv2
-	 */
-	CAMERA_PREVIEW_URL_GET("/api/video/v2/cameras/previewURLs", "POST", "获取监控点预览取流URLv2", CameraPreviewURLsQueryVO.class);
-	
-	private final String api;
-	private final String method;
-	private final String apiName;
-	private final Class<?> requestBody;
-	
-	private HikApiEnum(String api, String method, String apiName,Class<?> requestBody) {
-		this.api = api;
-		this.method = method;
-		this.apiName = apiName;
-		this.requestBody = requestBody;
-	}
-
-}

+ 0 - 36
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/enums/HikExpressionOperatorEnum.java

@@ -1,36 +0,0 @@
-package com.rtrh.projects.modules.hik.enums;
-
-/**
- * 海康接口Expressions参数Operator枚举值
- * @author PENG
- *
- */
-public enum HikExpressionOperatorEnum {
-
-	EQ(0, "="),
-	GE(1, ">="),
-	LE(2, "<="),
-	IN(3, "in"),
-	NOT_IN(4, "not in"),
-	BETWEEN(5, "between"),
-	LIKE(6, "like"),
-	LIKE_PRE(7, "pre like"),
-	LIKE_SUFFIX(8, "suffix like");
-	
-	private final Integer code;
-	private final String desc;
-	
-	private HikExpressionOperatorEnum(Integer code, String desc) {
-		this.code = code;
-		this.desc = desc;
-	}
-
-	public Integer getCode() {
-		return code;
-	}
-
-	public String getDesc() {
-		return desc;
-	}
-	
-}

+ 0 - 35
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/request/CameraPreviewURLsQueryVO.java

@@ -1,35 +0,0 @@
-package com.rtrh.projects.modules.hik.request;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class CameraPreviewURLsQueryVO {
-
-	/**
-	 * 监控点唯一标识
-	 */
-	private String cameraIndexCode;
-	/**
-	 * 码流类型,0:主码流 1:子码流 2:第三码流 参数不填,默认为主码流
-	 */
-	private Integer streamType;
-	/**
-	 * 取流协议(应用层协议),“hik”:HIK私有协议,使用视频SDK进行播放时,传入此类型;“rtsp”:RTSP协议;“rtmp”:RTMP协议;“hls”:HLS协议(HLS协议只支持海康SDK协议、EHOME协议、ONVIF协议接入的设备;只支持H264视频编码和AAC音频编码)。参数不填,默认为HIK协议
-	 */
-	private String protocol;
-	/**
-	 * 传输协议(传输层协议),0:UDP 1:TCP 默认是TCP 注: GB28181 2011及以前版本只支持UDP传输
-	 */
-	private Integer transmode;
-	/**
-	 * 标识扩展内容,格式:key=value, 调用方根据其播放控件支持的解码格式选择相应的封装类型
-	 */
-	private String expand;
-	/**
-	 * 输出码流转封装格式,“ps”:PS封装格式、“rtp”:RTP封装协议。当protocol=rtsp时生效,且不传值时默认为RTP封装协议。
-	 */
-	private String streamform;
-
-}

+ 0 - 49
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/request/CameraSearchQueryVO.java

@@ -1,49 +0,0 @@
-package com.rtrh.projects.modules.hik.request;
-
-import java.util.List;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class CameraSearchQueryVO {
-
-	/**
-	 * 名称,模糊搜索,最大长度32
-	 */
-	private String name;
-	/**
-	 * 区域编号,可以为空
-	 */
-	private List<String> regionIndexCodes;
-	/**
-	 * true时,搜索regionIndexCodes及其子孙区域的资源; false时,只搜索 regionIndexCodes的资源
-	 */
-	private Boolean isSubRegion;
-	/**
-	 * 当前页码
-	 */
-	private Integer pageNo;
-	/**
-	 * 分页大小
-	 */
-	private Integer pageSize;
-	/**
-	 * 权限码集合,详见[附录A.3 资源权限码]@[软件产品-综合安防管理平台-附录-附录A 数据字典#附录A.3 资源权限码]
-	 */
-	private List<String> authCodes;
-	/**
-	 * 查询表达式
-	 */
-	private List<Expressions> expressions;
-	/**
-	 * 排序字段,注意:排序字段必须是查询条件,否则返回参数错误
-	 */
-	private String orderBy;
-	/**
-	 * 降序升序,降序:desc 升序:asc
-	 */
-	private String orderType;
-
-}

+ 0 - 49
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/request/EncodeDeviceSearchQueryVO.java

@@ -1,49 +0,0 @@
-package com.rtrh.projects.modules.hik.request;
-
-import java.util.List;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class EncodeDeviceSearchQueryVO {
-
-	/**
-	 * 名称,模糊搜索,最大长度32
-	 */
-	private String name;
-	/**
-	 * 区域编号,可以为空
-	 */
-	private List<String> regionIndexCodes;
-	/**
-	 * true时,搜索regionIndexCodes及其子孙区域的资源; false时,只搜索 regionIndexCodes的资源
-	 */
-	private Boolean isSubRegion;
-	/**
-	 * 当前页码
-	 */
-	private Integer pageNo;
-	/**
-	 * 分页大小
-	 */
-	private Integer pageSize;
-	/**
-	 * 权限码集合,详见[附录A.3 资源权限码]@[软件产品-综合安防管理平台-附录-附录A 数据字典#附录A.3 资源权限码]
-	 */
-	private List<String> authCodes;
-	/**
-	 * 查询表达式
-	 */
-	private List<Expressions> expressions;
-	/**
-	 * 排序字段,注意:排序字段必须是查询条件,否则返回参数错误
-	 */
-	private String orderBy;
-	/**
-	 * 降序升序,降序:desc 升序:asc
-	 */
-	private String orderType;
-
-}

+ 0 - 25
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/request/Expressions.java

@@ -1,25 +0,0 @@
-package com.rtrh.projects.modules.hik.request;
-
-import java.util.List;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class Expressions {
-	
-	/**
-	 * 字段
-	 */
-	private String key;
-	/**
-	 * 比较类型
-	 */
-	private Integer operator;
-	/**
-	 * 值
-	 */
-	private List<String> values;
-
-}

+ 0 - 145
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/response/CameraSearchData.java

@@ -1,145 +0,0 @@
-package com.rtrh.projects.modules.hik.response;
-
-import java.math.BigDecimal;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class CameraSearchData {
-
-	/**
-	 * 唯一编码
-	 */
-	private String indexCode;
-	
-	/**
-	 * 资源类型
-	 */
-	private String resourceType;
-	/**
-	 * 监控点国标编号
-	 */
-	private String externalIndexCode;
-	
-	/**
-	 * 资源名称
-	 */
-	private String name;
-	
-	/**
-	 * 通道号,为级联监控点时,该字段为空; 本级监控点时,该字段非空
-	 */
-	private Long chanNum;
-	/**
-	 * 级联编号
-	 */
-	private String cascadeCode;
-	
-	/**
-	 * 父级资源编号
-	 */
-	private String parentIndexCode;
-	
-	/**
-	 * 经度,精确到小数点后8位
-	 */
-	private BigDecimal longitude;
-	
-	/**
-	 * 纬度,精确到小数点后8位
-	 */
-	private BigDecimal latitude;
-	
-	/**
-	 * 海拔高度,单位:米
-	 */
-	private String elevation;
-	
-	/**
-	 * 监控点类型 枪机 0 半球 1 快球 2 带云台枪机 3
-	 */
-	private Integer cameraType;
-	
-	/**
-	 * 能力集
-	 */
-	private String capability;
-	
-	/**
-	 * 录像存储位置
-	 */
-	private String recordLocation;
-	
-	/**
-	 * 通道子类型, 模拟通道 analog 数字通道 digital 镜像通道 mirror 录播通道 record 零通道 zero
-	 */
-	private String channelType;
-	
-	/**
-	 * 所属区域
-	 */
-	private String regionIndexCode;
-	
-	/**
-	 * 所属区域路径,以@符号分割,包含本节点
-	 */
-	private String regionPath;
-	
-	/**
-	 * 传输协议, 0:UDP, 1:TCP
-	 */
-	private Integer transType;
-	
-	/**
-	 * 接入协议
-	 */
-	private String treatyType;
-	
-	/**
-	 * 安装位置
-	 */
-	private String installLocation;
-	
-	/**
-	 * 创建时间
-	 */
-	private String createTime;
-	
-	/**
-	 * 更新时间
-	 */
-	private String updateTime;
-	
-	/**
-	 * 数据在界面上的显示顺序
-	 */
-	private Long disOrder;
-	
-	/**
-	 * 资源唯一编码
-	 */
-	private String resourceIndexCode;
-	
-	/**
-	 * 解码模式
-	 */
-	private String decodeTag;
-	
-	/**
-	 * 监控点关联对讲的唯一标志
-	 */
-	private String cameraRelateTalk;
-	
-	/**
-	 * 	
-所属区域路径,由唯一标示组成,最大10级,格式: @根节点@子区域1@子区域2@
-	 */
-	private String regionName;
-	
-	/**
-	 * 区域路径名称,"/"分隔
-	 */
-	private String regionPathName;
-}

+ 0 - 80
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/response/EncodeDeviceSearchData.java

@@ -1,80 +0,0 @@
-package com.rtrh.projects.modules.hik.response;
-
-import lombok.Getter;
-import lombok.Setter;
-
-/**
- * 查询编码设备列表v2
- * @author PENG
- *
- */
-@Setter
-@Getter
-public class EncodeDeviceSearchData {
-
-	/**
-	 * 所属服务编号
-	 */
-	private String belongIndexCode;
-	
-	/**
-	 * 能力集
-	 */
-	private String capability;
-	
-	/**
-	 * 设备系列
-	 */
-	private String deviceType;
-	
-	/**
-	 * 设备序列号
-	 */
-	private String devSerialNum;
-	
-	/**
-	 * 主动设备编号
-	 */
-	private String deviceCode;
-	
-	/**
-	 * 资源唯一编码
-	 */
-	private String indexCode;
-	/**
-	 * 厂商
-	 */
-	private String manufacturer;
-	/**
-	 * 资源名称
-	 */
-	private String name;
-	
-	/**
-	 * 所属区域
-	 */
-	private String regionIndexCode;
-	/**
-	 * 所属区域路径,以@符号分割,包含本节点
-	 */
-	private String regionPath;
-	/**
-	 * 资源类型
-	 */
-	private String resourceType;
-	
-	/**
-	 * 接入协议,详见
-	 */
-	private String treatyType;
-	
-	/**
-	 * 创建时间
-	 */
-	private String createTime;
-	
-	/**
-	 * 
-	 */
-	private String updateTime;
-}

+ 0 - 28
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/response/HikPage.java

@@ -1,28 +0,0 @@
-package com.rtrh.projects.modules.hik.response;
-
-import java.util.List;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class HikPage<T> {
-
-	/**
-	 * 总数量
-	 */
-	private Integer total;
-	/**
-	 * 分页
-	 */
-	private Integer pageNo;
-	/**
-	 * 每页数据量
-	 */
-	private Integer pageSize;
-	/**
-	 * 数据
-	 */
-	private List<T> list;
-}

+ 0 - 20
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/response/HikResponse.java

@@ -1,20 +0,0 @@
-package com.rtrh.projects.modules.hik.response;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class HikResponse<T> {
-
-	private String code;
-	
-	private String msg;
-	
-	private T data;
-	
-	public boolean isSuccess() {
-		return "0".equals(code);
-	}
-	
-}

+ 0 - 11
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/response/PreviewUrlData.java

@@ -1,11 +0,0 @@
-package com.rtrh.projects.modules.hik.response;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class PreviewUrlData {
-
-	private String url;
-}

+ 0 - 28
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/service/IHikApiService.java

@@ -1,28 +0,0 @@
-package com.rtrh.projects.modules.hik.service;
-
-import com.rtrh.projects.modules.hik.vo.SyncHikCameraVO;
-import com.rtrh.projects.modules.system.vo.LoginUserVO;
-
-public interface IHikApiService {
-
-	/**
-	 * 同步摄像头信息
-	 * @param vo
-	 * @return errorMsg
-	 */
-	String syncCameraData(SyncHikCameraVO vo, LoginUserVO loginUserVO);
-	
-	/**
-	 * 通过摄像头id获取播放URL
-	 * @param cameraId
-	 * @return
-	 */
-	String getCameraVideoUrl(String cameraId);
-	
-	/**
-	 * 通过摄像头code获取播放URL
-	 * @param cameraCode
-	 * @return
-	 */
-	String getCameraVideoUrlByCode(String cameraCode);
-}

+ 0 - 205
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/service/impl/IHikApiServiceImpl.java

@@ -1,205 +0,0 @@
-package com.rtrh.projects.modules.hik.service.impl;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Date;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import java.util.stream.Collectors;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import com.alibaba.fastjson.TypeReference;
-import com.hikvision.artemis.sdk.constant.Constants;
-import com.rtrh.common.util.Identities;
-import com.rtrh.common.util.StringUtil;
-import com.rtrh.projects.modules.hik.enums.HikApiEnum;
-import com.rtrh.projects.modules.hik.enums.HikExpressionOperatorEnum;
-import com.rtrh.projects.modules.hik.request.CameraPreviewURLsQueryVO;
-import com.rtrh.projects.modules.hik.request.CameraSearchQueryVO;
-import com.rtrh.projects.modules.hik.request.EncodeDeviceSearchQueryVO;
-import com.rtrh.projects.modules.hik.request.Expressions;
-import com.rtrh.projects.modules.hik.response.CameraSearchData;
-import com.rtrh.projects.modules.hik.response.EncodeDeviceSearchData;
-import com.rtrh.projects.modules.hik.response.HikPage;
-import com.rtrh.projects.modules.hik.response.HikResponse;
-import com.rtrh.projects.modules.hik.response.PreviewUrlData;
-import com.rtrh.projects.modules.hik.service.IHikApiService;
-import com.rtrh.projects.modules.hik.utils.HikRequestUtils;
-import com.rtrh.projects.modules.hik.vo.SyncHikCameraVO;
-import com.rtrh.projects.modules.projects.po.SubCamera;
-import com.rtrh.projects.modules.projects.service.SubCameraService;
-import com.rtrh.projects.modules.projects.vo.SubCameraVO;
-import com.rtrh.projects.modules.system.vo.LoginUserVO;
-
-import cn.hutool.core.collection.CollectionUtil;
-
-
-@Service
-public class IHikApiServiceImpl implements IHikApiService {
-	
-	@Autowired
-	private SubCameraService subCameraService;
-	
-	public IHikApiServiceImpl() {
-		Constants.DEFAULT_TIMEOUT = 5000;
-	}
-
-	@Override
-	public String syncCameraData(SyncHikCameraVO vo, LoginUserVO loginUserVO) {
-		if(StringUtil.isEmpty(vo.getSubId()) || (StringUtil.isEmpty(vo.getDeviceCode()) && StringUtil.isEmpty(vo.getDevSerialNum()))) {
-			return "项目id以及设备序列号(或主动设备编号)必须填写";
-		}
-		EncodeDeviceSearchQueryVO queryVO = new EncodeDeviceSearchQueryVO();
-    	queryVO.setPageNo(1);
-    	queryVO.setPageSize(1);
-    	HikResponse<HikPage<EncodeDeviceSearchData>> response = null;
-    	TypeReference<HikPage<EncodeDeviceSearchData>> encodeDeviceSearchDataReference = new TypeReference<HikPage<EncodeDeviceSearchData>>() {};
-		if(StringUtil.isNotEmpty(vo.getDevSerialNum())) {
-			//设备序列号
-			Expressions expressions = new Expressions();
-			expressions.setKey("devSerialNum");
-			expressions.setOperator(HikExpressionOperatorEnum.EQ.getCode());
-			expressions.setValues(Arrays.asList(vo.getDevSerialNum()));
-			queryVO.setExpressions(Arrays.asList(expressions));
-			response = (HikResponse<HikPage<EncodeDeviceSearchData>>)HikRequestUtils.sendPost(HikApiEnum.ENCODE_DEVICE_SEARCH, null, queryVO, encodeDeviceSearchDataReference);
-		} else if(StringUtil.isNotEmpty(vo.getDeviceCode())) {
-			//主动设备编号
-			Expressions expressions = new Expressions();
-			expressions.setKey("deviceCode");
-			expressions.setOperator(HikExpressionOperatorEnum.EQ.getCode());
-			expressions.setValues(Arrays.asList(vo.getDeviceCode()));
-			queryVO.setExpressions(Arrays.asList(expressions));
-			response = (HikResponse<HikPage<EncodeDeviceSearchData>>)HikRequestUtils.sendPost(HikApiEnum.ENCODE_DEVICE_SEARCH, null, queryVO, encodeDeviceSearchDataReference);
-		} else {
-			return "设备序列号或主动设备编号必须填写";
-		}
-		if(response == null || !response.isSuccess()) {
-			return "同步失败!"+ Optional.ofNullable(response).orElse(new HikResponse<>()).getMsg();
-		}
-		HikPage<EncodeDeviceSearchData> page = response.getData();
-		if(page.getTotal() == 0) {
-			return "请填入正确的设备序列号/主动设备编号";
-		}
-		List<EncodeDeviceSearchData> listData = response.getData().getList();
-		EncodeDeviceSearchData encodeDevice = listData.get(0);
-		//获取到编码设备的主键id
-		String indexCode = encodeDevice.getIndexCode();
-		
-		//通过接口获取监控点
-		
-		CameraSearchQueryVO cameraSearchQueryVO = new CameraSearchQueryVO();
-		cameraSearchQueryVO.setPageNo(1);
-		//设定最大值1000
-		cameraSearchQueryVO.setPageSize(1000);
-		Expressions expressions = new Expressions();
-		expressions.setKey("parentIndexCode");
-		expressions.setOperator(HikExpressionOperatorEnum.EQ.getCode());
-		expressions.setValues(Arrays.asList(indexCode));
-		cameraSearchQueryVO.setExpressions(Arrays.asList(expressions));
-		
-		TypeReference<HikPage<CameraSearchData>> cameraSearchDataReference = new TypeReference<HikPage<CameraSearchData>>(){};
-		HikResponse<HikPage<CameraSearchData>> hikResponse = (HikResponse<HikPage<CameraSearchData>>)HikRequestUtils.sendPost(HikApiEnum.CAMERA_SEARCH, null, cameraSearchQueryVO, cameraSearchDataReference);
-		if(hikResponse == null || !hikResponse.isSuccess()) {
-			return "同步失败!"+ Optional.ofNullable(hikResponse).orElse(new HikResponse<>()).getMsg();
-		}
-		List<CameraSearchData> cameraList = hikResponse.getData().getList();
-		if(CollectionUtil.isEmpty(cameraList)) {
-			cameraList = new ArrayList<>();
-		}
-		
-		List<SubCamera> hasCamera = subCameraService.listAllBySubId(vo.getSubId(), indexCode);
-		if(CollectionUtil.isEmpty(hasCamera)) {
-			//不存在,则新增
-			List<SubCamera> cameras = cameraList.stream().map(item->{
-				SubCamera camera = new SubCamera();
-				camera.setId(Identities.uuid());
-				camera.setCode(item.getIndexCode());
-				camera.setTitle(item.getName());
-				camera.setEncodeDeviceCode(indexCode);
-				camera.setSubId(vo.getSubId());
-				camera.setCreateTime(new Date());
-				camera.setCreateUserId(loginUserVO.getId());
-				return camera;
-			}).collect(Collectors.toList());
-			subCameraService.saveOrUpdateBatch(cameras);
-		} else {
-			//更新
-			Map<String, SubCamera> collect1 = hasCamera.stream().collect(Collectors.toMap(SubCamera::getCode, item->item, (a,b)->a));
-			Map<String, CameraSearchData> collect2 = cameraList.stream().collect(Collectors.toMap(CameraSearchData::getIndexCode, item->item, (a,b)->a));
-			Iterator<String> iterator = collect1.keySet().iterator();
-			List<String> delId = new ArrayList<>();
-			while (iterator.hasNext()) {
-				String next = iterator.next();
-				if(!collect2.containsKey(next)) {
-					//接口同步数据中不存在,则说明被删除了,这里也要删除
-					delId.add(collect1.get(next).getId());
-				}else {
-					collect2.remove(next);
-				}
-			}
-			
-			//collect2剩余的是要新增的
-			List<SubCamera> addCamera = collect2.values().stream().map(item->{
-				SubCamera camera = new SubCamera();
-				camera.setId(Identities.uuid());
-				camera.setCode(item.getIndexCode());
-				camera.setTitle(item.getName());
-				camera.setEncodeDeviceCode(indexCode);
-				camera.setSubId(vo.getSubId());
-				camera.setCreateTime(new Date());
-				camera.setCreateUserId(loginUserVO.getId());
-				return camera;
-			}).collect(Collectors.toList());
-			
-			if(CollectionUtil.isNotEmpty(delId)) {
-				for(SubCamera subCamera : hasCamera) {
-					if(delId.contains(subCamera.getId())) {
-						subCamera.setLogicDeleteFlag(1);
-					}
-				}
-			}
-			hasCamera.addAll(addCamera);
-			subCameraService.saveOrUpdateBatch(hasCamera);
-		}
-		
-		
-		return null;
-	}
-
-	@Override
-	public String getCameraVideoUrl(String cameraId) {
-		SubCameraVO vo = subCameraService.getById(cameraId);
-		String code = vo.getCode();
-		CameraPreviewURLsQueryVO queryVO = new CameraPreviewURLsQueryVO();
-		queryVO.setCameraIndexCode(code);
-		queryVO.setProtocol("hls");
-		HikResponse<PreviewUrlData> response = HikRequestUtils.sendPost(HikApiEnum.CAMERA_PREVIEW_URL_GET, null, queryVO, new TypeReference<PreviewUrlData>() {
-		});
-		if(response == null) {
-			throw new RuntimeException("摄像头未在线");
-		} else if(!response.isSuccess()) {
-			throw new RuntimeException(response.getMsg());
-		}
-		return response.getData().getUrl();
-	}
-
-	@Override
-	public String getCameraVideoUrlByCode(String cameraCode) {
-		CameraPreviewURLsQueryVO queryVO = new CameraPreviewURLsQueryVO();
-		queryVO.setCameraIndexCode(cameraCode);
-		queryVO.setProtocol("hls");
-		HikResponse<PreviewUrlData> response = HikRequestUtils.sendPost(HikApiEnum.CAMERA_PREVIEW_URL_GET, null, queryVO, new TypeReference<PreviewUrlData>() {
-		});
-		if(response == null) {
-			throw new RuntimeException("摄像头未在线");
-		} else if(!response.isSuccess()) {
-			throw new RuntimeException(response.getMsg());
-		}
-		return response.getData().getUrl();
-	}
-
-}

+ 0 - 134
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/utils/HikRequestUtils.java

@@ -1,134 +0,0 @@
-package com.rtrh.projects.modules.hik.utils;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Properties;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import com.alibaba.fastjson.JSONObject;
-import com.alibaba.fastjson.TypeReference;
-import com.hikvision.artemis.sdk.ArtemisHttpUtil;
-import com.hikvision.artemis.sdk.config.ArtemisConfig;
-import com.hikvision.artemis.sdk.constant.ContentType;
-import com.hikvision.artemis.sdk.constant.HttpMethod;
-import com.rtrh.common.util.StringUtil;
-import com.rtrh.projects.modules.hik.enums.HikApiEnum;
-import com.rtrh.projects.modules.hik.response.HikResponse;
-
-import cn.hutool.json.JSONUtil;
-
-/**
- * 海康威视接口请求工具类
- * @author PENG
- *
- */
-public class HikRequestUtils {
-	
-	private static Logger logger = LoggerFactory.getLogger(HikRequestUtils.class);
-
-	private static String httpSchema;
-	private static String artemisPath;
-	private static ArtemisConfig artemisConfig;
-	
-	static {
-		Properties properties = new Properties();
-		InputStream inStream = HikRequestUtils.class.getResourceAsStream("/artemisconfig.properties");
-		try {
-			properties.load(inStream);
-			String host = properties.getProperty("host");
-			String appKey = properties.getProperty("appKey");
-			String appSecret = properties.getProperty("appSecret");
-			artemisConfig = new ArtemisConfig(host, appKey, appSecret);
-			httpSchema = properties.getProperty("httpSchema");
-			artemisPath = properties.getProperty("artemisPath");
-		} catch (IOException e) {
-			System.exit(1);
-		}
-		
-	}
-	
-	/**
-	 * 初始化
-	 * @param httpSchema
-	 * @param host
-	 * @param appKey
-	 * @param appSecret
-	 * @throws IOException 
-	 */
-	public HikRequestUtils() throws IOException {
-		
-	}
-	
-	
-	/**
-	 * 发送GET请求获取对象
-	 * @param apiPath
-	 * @return
-	 */
-	public static <T> HikResponse<T> sendGet(HikApiEnum apiEnum, Map<String, String> querys, TypeReference<T> typeReference) {
-		return sendRequest(HttpMethod.GET, apiEnum.getApi(), ContentType.CONTENT_TYPE_FORM, querys, null, typeReference);
-	}
-	
-	
-	/**
-	 * 发送POST请求
-	 * @param apiPath
-	 * @return
-	 */
-	public static <T> HikResponse<T> sendPost(HikApiEnum apiEnum, Map<String, String> querys, Object body, TypeReference<T> typeReference) {
-		if(body != null && !body.getClass().isAssignableFrom(apiEnum.getRequestBody())) {
-			throw new RuntimeException("查询请求体class类型错误");
-		}
-		
-		return sendRequest(HttpMethod.POST, apiEnum.getApi(), ContentType.CONTENT_TYPE_JSON, querys, body, typeReference);
-	}
-	
-	/**
-	 * 发送请求
-	 * @param method
-	 * @param apiPath
-	 * @return
-	 */
-	private static <T> HikResponse<T> sendRequest(String method, String apiPath, String contentType, Map<String, String> querys, Object body, TypeReference<T> typeReference) {
-		
-		Map<String, String> path = new HashMap<String, String>(1) {
-			{
-				put(httpSchema, artemisPath+apiPath);
-			}
-		};
-		String response = null;
-		try {
-			switch (method) {
-			case HttpMethod.GET:
-				response = ArtemisHttpUtil.doGetArtemis(artemisConfig, path, querys, null, contentType);
-				break;
-			case HttpMethod.POST:
-				if(body == null) {
-					body = new HashMap<>();
-				}
-				response = ArtemisHttpUtil.doPostStringArtemis(artemisConfig, path, JSONUtil.toJsonStr(body), querys, null, contentType);
-				break;
-			default:
-				break;
-			}
-		} catch (Exception e) {
-			logger.error("", e);
-			throw new RuntimeException(e);
-		}
-		if(StringUtil.isEmpty(response)) {
-			throw new RuntimeException("未定义的请求");
-		}
-		HikResponse<T> data = JSONObject.parseObject(response, new TypeReference<HikResponse<T>>() {
-		});
-		//直接转存在问题
-		if(data.getData() instanceof JSONObject) {
-			data.setData(JSONObject.parseObject(JSONObject.toJSONString(data.getData()), typeReference));
-		}
-		return data;
-	}
-	
-}

+ 0 - 24
projects-service_1018/src/main/java/com/rtrh/projects/modules/hik/vo/SyncHikCameraVO.java

@@ -1,24 +0,0 @@
-package com.rtrh.projects.modules.hik.vo;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class SyncHikCameraVO {
-
-	/**
-	 * 主键id
-	 */
-	private String subId;
-	
-	/**
-	 * 设备序列号
-	 */
-	private String devSerialNum;
-	
-	/**
-	 * 主动设备编号
-	 */
-	private String deviceCode;
-}

+ 0 - 37
projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/dto/IntermediatryDao.java

@@ -1,37 +0,0 @@
-package com.rtrh.projects.modules.intermediatry.dto;
-
-import java.util.List;
-
-import org.hibernate.criterion.Criterion;
-import org.hibernate.criterion.DetachedCriteria;
-import org.hibernate.criterion.Order;
-import org.hibernate.criterion.Restrictions;
-import org.springframework.stereotype.Service;
-
-import com.rtrh.core.repository.hibernate.EntityServiceImpl;
-import com.rtrh.projects.modules.intermediatry.po.Intermediatry;
-
-@Service
-public class IntermediatryDao extends EntityServiceImpl<Intermediatry> {
-
-    public List<Intermediatry> findByTitle(String title) {
-        DetachedCriteria detachedCriteria = DetachedCriteria.forClass(Intermediatry.class);
-        Criterion criterion = Restrictions.and(Restrictions.eq("logicDeleteFlag", 0),
-                Restrictions.eq("title", title));
-        detachedCriteria.add(criterion);
-        detachedCriteria.addOrder(Order.asc("createTime"));
-        return find(detachedCriteria);
-    }
-
-
-
-    public List<Intermediatry> findByGroupCode(String groupCode) {
-        DetachedCriteria detachedCriteria = DetachedCriteria.forClass(Intermediatry.class);
-        Criterion criterion = Restrictions.and(Restrictions.eq("logicDeleteFlag", 0),
-                Restrictions.eq("groupCode", groupCode));
-        detachedCriteria.add(criterion);
-        detachedCriteria.addOrder(Order.asc("createTime"));
-        return find(detachedCriteria);
-    }
-
-}

+ 0 - 26
projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/dto/IntermediatryFileDao.java

@@ -1,26 +0,0 @@
-package com.rtrh.projects.modules.intermediatry.dto;
-
-import java.util.List;
-
-import org.hibernate.criterion.Criterion;
-import org.hibernate.criterion.DetachedCriteria;
-import org.hibernate.criterion.Order;
-import org.hibernate.criterion.Restrictions;
-import org.springframework.stereotype.Service;
-
-import com.rtrh.core.repository.hibernate.EntityServiceImpl;
-import com.rtrh.projects.modules.intermediatry.po.IntermediatryFile;
-
-@Service
-public class IntermediatryFileDao extends EntityServiceImpl<IntermediatryFile> {
-
-    public List<IntermediatryFile> findByInterId(String interId) {
-        DetachedCriteria detachedCriteria = DetachedCriteria.forClass(IntermediatryFile.class);
-        Criterion criterion = Restrictions.and(Restrictions.eq("logicDeleteFlag", 0),
-                Restrictions.eq("interId", interId));
-        detachedCriteria.add(criterion);
-        detachedCriteria.addOrder(Order.asc("createTime"));
-        return find(detachedCriteria);
-    }
-
-}

+ 0 - 42
projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/enums/IntermediatryStatus.java

@@ -1,42 +0,0 @@
-package com.rtrh.projects.modules.intermediatry.enums;
-
-public enum IntermediatryStatus {
-
-    DSH("1","待审核"),
-    TG("2","审核通过"),
-	TH("3","退回");
-
-
-
-    private String code;
-
-    private String desc;
-
-
-
-    IntermediatryStatus(String code,String desc){
-        this.code=code;
-        this.desc=desc;
-    }
-
-
-    public String getCode() {
-        return code;
-    }
-
-    public String getDesc() {
-        return desc;
-    }
-
-    public static IntermediatryStatus getEnumByKey(String key) {
-        for(IntermediatryStatus _Enum : IntermediatryStatus.values()) {
-            if(_Enum.getCode().equals(key)) {
-                return _Enum;
-            }
-        }
-        return null;
-    }
-
-
-
-}

+ 0 - 33
projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/po/Intermediatry.hbm.xml

@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="gb2312"?>
-<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
-<hibernate-mapping package="com.rtrh.projects.modules.intermediatry.po">
-    <class name="Intermediatry" table="intermediatry_service">
-        <id column="id" name="id" type="java.lang.String"><generator class="assigned"/></id>
-        <property column="type" name="type" not-null="false" type="java.lang.String" />
-        <property column="title" name="title" not-null="false" type="java.lang.String" />
-        <property column="group_code" name="groupCode" not-null="false" type="java.lang.String" />
-        <property column="addr" name="addr" not-null="false" type="java.lang.String" />
-        <property column="legal_name" name="legalName" not-null="false" type="java.lang.String" />
-        <property column="legal_phone" name="legalPhone" not-null="false" type="java.lang.String" />
-        <property column="business_owner" name="businessOwner" not-null="false" type="java.lang.String" />
-        <property column="business_job" name="businessJob" not-null="false" type="java.lang.String" />
-        <property column="business_phone" name="businessPhone" not-null="false" type="java.lang.String" />
-        <property column="create_user_name" name="createUserName" not-null="false" type="java.lang.String" />
-        <property column="zxjb" name="zxjb" not-null="false" type="java.lang.String" />
-        <property column="zx_time" name="zxTime" not-null="false" type="java.util.Date" />
-        <property column="zx_time1" name="zxTime1" not-null="false" type="java.util.Date" />
-        <property column="zx_no" name="zxNo" not-null="false" type="java.lang.String" />
-        <property name="mainBusiness" type="java.lang.String">
-            <column name="main_business" not-null="false" sql-type="text"/>
-        </property>
-        <property column="remark" name="remark" not-null="false" type="java.lang.String" />
-        <property column="create_time" name="createTime" not-null="false" type="java.util.Date" />
-        <property column="create_user" name="createUser" not-null="false" type="java.lang.String" />
-        <property column="update_time" name="updateTime" not-null="false" type="java.util.Date" />
-        <property column="update_user" name="updateUser" not-null="false" type="java.lang.String" />
-        <property column="status" name="status" not-null="false" type="java.lang.String" />
-        <property column="reason" name="reason" not-null="false" type="java.lang.String" />
-        <property column="logic_delete_flag" name="logicDeleteFlag" not-null="false" type="java.lang.Integer" />
-    </class>
-
-</hibernate-mapping>

+ 0 - 148
projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/po/Intermediatry.java

@@ -1,148 +0,0 @@
-package com.rtrh.projects.modules.intermediatry.po;
-
-import com.alibaba.fastjson.annotation.JSONField;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import lombok.Getter;
-import lombok.Setter;
-
-import java.util.Date;
-
-
-
-
-@Setter
-@Getter
-public class Intermediatry {
-
-
-
-    private String id;
-    /**
-     * 机构类型
-     */
-    private String type;
-
-    /**
-     * 单位名称
-     */
-    private String title;
-
-    /**
-     * 统一社会信用代码
-     */
-    private String groupCode;
-
-    /**
-     * 单位地址
-     */
-    private String addr;
-
-    /**
-     * 法人名称
-     */
-    private String legalName;
-
-    /**
-     * 法人电话
-     */
-    private String legalPhone;
-
-    /**
-     * 业务负责人
-     */
-    private String businessOwner;
-
-    /**
-     * 业务负责人职务
-     */
-    private String businessJob;
-
-    /**
-     * 业务负责人电话
-     */
-    private String businessPhone;
-
-    /**
-     * 该单位主要业务
-     */
-    private String mainBusiness;
-
-    /**
-     * 备注
-     */
-    private String remark;
-
-
-
-    /**
-     * 创建时间
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    @JSONField(format= "yyyy-MM-dd HH:mm:ss")
-    private Date createTime;
-    /**
-     * 创建人
-     */
-    private String createUser;
-
-
-    /**
-     * 创建人名称
-     */
-    private String createUserName;
-
-
-    /**
-     * 资信级别
-     */
-    private String zxjb;
-
-
-    /**
-     * 资信有效期 甲级
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @JSONField(format= "yyyy-MM-dd")
-    private Date zxTime;
-
-    /**
-     * 资信有效期 乙级
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @JSONField(format= "yyyy-MM-dd")
-    private Date zxTime1;
-
-
-    /**
-     * 资信证书编号
-     */
-    private String zxNo;
-
-
-    /**
-     * 更新时间
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    @JSONField(format= "yyyy-MM-dd HH:mm:ss")
-    private Date updateTime;
-    /**
-     * 更新人
-     */
-    private String updateUser;
-    /**
-     * 是否删除
-     */
-    private Integer logicDeleteFlag = 0;
-
-    /***
-     * 审核状态 1 已审核  2 未审核
-     */
-    private String status;
-
-
-    /**
-     * 退回原因
-     */
-    private String reason;
-
-}

+ 0 - 13
projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/po/IntermediatryFile.hbm.xml

@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="gb2312"?>
-<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
-<hibernate-mapping package="com.rtrh.projects.modules.intermediatry.po">
-    <class name="IntermediatryFile" table="intermediatry_service_file">
-        <id column="id" name="id" type="java.lang.String"><generator class="assigned"/></id>
-        <property column="inter_id" name="interId" not-null="false" type="java.lang.String" />
-        <property column="file_id" name="fileId" not-null="false" type="java.lang.String" />
-        <property column="file_type" name="fileType" not-null="false" type="java.lang.String" />
-        <property column="file_name" name="fileName" not-null="false" type="java.lang.String" />
-        <property column="create_time" name="createTime" not-null="false" type="java.util.Date" />
-        <property column="logic_delete_flag" name="logicDeleteFlag" not-null="false" type="java.lang.Integer" />
-    </class>
-</hibernate-mapping>

+ 0 - 47
projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/po/IntermediatryFile.java

@@ -1,47 +0,0 @@
-package com.rtrh.projects.modules.intermediatry.po;
-
-import com.alibaba.fastjson.annotation.JSONField;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import lombok.Getter;
-import lombok.Setter;
-
-import java.util.Date;
-
-
-
-@Setter
-@Getter
-public class IntermediatryFile {
-
-    private String id;
-
-    /**
-     * 产业链服务库id
-     */
-    private String interId;
-    /**
-     * 文件id
-     */
-    private String fileId;
-    /**
-     * 文件类型
-     */
-    private String fileType;
-
-    /**
-     * 文件名
-     */
-    private String fileName;
-
-    /**
-     * 创建事件
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    @JSONField(format= "yyyy-MM-dd HH:mm:ss")
-    private Date createTime;
-    /**
-     * 是否删除
-     */
-    private Integer logicDeleteFlag = 0;
-
-}

+ 0 - 425
projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/service/Impl/IntermediatryServiceImpl.java

@@ -1,425 +0,0 @@
-package com.rtrh.projects.modules.intermediatry.service.Impl;
-
-import java.util.Collections;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import java.util.UUID;
-import java.util.stream.Collectors;
-
-import org.hibernate.criterion.Criterion;
-import org.hibernate.criterion.DetachedCriteria;
-import org.hibernate.criterion.Restrictions;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import com.rtrh.common.util.Identities;
-import com.rtrh.common.util.StringUtil;
-import com.rtrh.core.repository.Page;
-import com.rtrh.projects.modules.intermediatry.dto.IntermediatryDao;
-import com.rtrh.projects.modules.intermediatry.dto.IntermediatryFileDao;
-import com.rtrh.projects.modules.intermediatry.enums.IntermediatryStatus;
-import com.rtrh.projects.modules.intermediatry.po.Intermediatry;
-import com.rtrh.projects.modules.intermediatry.po.IntermediatryFile;
-import com.rtrh.projects.modules.intermediatry.service.IntermediatryService;
-import com.rtrh.projects.modules.intermediatry.vo.IntermediatrExcelVO;
-import com.rtrh.projects.modules.intermediatry.vo.IntermediatryQueryVO;
-import com.rtrh.projects.modules.intermediatry.vo.IntermediatryVO;
-import com.rtrh.projects.modules.system.enums.SysTableKind;
-import com.rtrh.projects.modules.system.po.TSystable;
-import com.rtrh.projects.modules.system.service.TSysTableService;
-import com.rtrh.projects.modules.system.vo.LoginUserVO;
-
-import cn.hutool.core.collection.CollectionUtil;
-
-@Service
-public class IntermediatryServiceImpl implements IntermediatryService {
-
-
-    @Autowired
-    private TSysTableService tSysTableService;
-    @Autowired
-    private IntermediatryDao intermediatryDao;
-    @Autowired
-    private IntermediatryFileDao intermediatryFileDao;
-
-
-    @Override
-    public Page pageQuery(Page page, IntermediatryQueryVO queryVO) {
-        StringBuffer sql = new StringBuffer();
-        sql.append(" SELECT a.create_user_name createUserName,a.zx_time1 zxTime1,a.zx_time zxTime,a.zxjb,a.id, a.type, ts.title typeName, a.title, a.group_code groupCode, a.addr, ");
-        sql.append(" a.legal_name legalName, a.legal_phone legalPhone, a.business_owner businessOwner, ");
-        sql.append(" a.business_job businessJob, a.business_phone businessPhone, a.main_business mainBusiness, ");
-        sql.append(" a.remark, a.create_time createTime,a.status,a.reason, c.title createUnitName ");
-        sql.append(" FROM intermediatry_service a LEFT JOIN sec_user b ON a.create_user = b.id ");
-        sql.append(" LEFT JOIN t_systable ts ON a.type = ts.id AND ts.kind = 'JGLX' ");
-        sql.append(" LEFT JOIN j_unit c ON b.unit_id = c.id ");
-        sql.append(" WHERE a.logic_delete_flag = 0 ");
-        if(StringUtil.isNotEmpty(queryVO.getType())) {
-        	sql.append(" AND a.type = '"+ queryVO.getType()+"' ");
-        }
-        if(StringUtil.isNotEmpty(queryVO.getTitle())) {
-        	sql.append(" AND a.title LIKE '%"+ queryVO.getTitle()+"%' ");
-        }
-    	if(StringUtil.isNotEmpty(queryVO.getBusinessOwner())) {
-    		sql.append(" AND a.business_owner LIKE '%" + queryVO.getBusinessOwner()+"%' ");
-    	}
-
-
-        if(StringUtil.isNotEmpty(queryVO.getMainBusiness())) {
-            sql.append(" AND a.main_business LIKE '%" + queryVO.getMainBusiness()+"%' ");
-        }
-
-        if(StringUtil.isNotEmpty(queryVO.getZxjb())) {
-
-            if("3".equals(queryVO.getZxjb())){
-                sql.append(" AND a.zxjb = '"+queryVO.getZxjb()+"' ");
-            }else{
-                sql.append(" AND ( a.zxjb = '"+queryVO.getZxjb()+"' OR a.zxjb = '3' )  ");
-            }
-
-
-        }
-
-    	if(StringUtil.isNotEmpty(queryVO.getStatus())) {
-    		if(IntermediatryStatus.DSH.getCode().equals(queryVO.getStatus())) {
-    			//待审核,加上旧数据空的
-    			sql.append(" AND (a.`status` = '"+ queryVO.getStatus()+"' or isnull(a.`status`)) ");
-    		} else {
-    			sql.append(" AND a.`status` = '"+ queryVO.getStatus()+"' ");
-    		}
-    	}
-
-    	Page pageData = intermediatryDao.queryForListBySql(sql.toString(), IntermediatryVO.class, page);
-        if(CollectionUtil.isNotEmpty(pageData.getList())) {
-            for(IntermediatryVO vo: (List<IntermediatryVO>)pageData.getList()) {
-                if (StringUtil.isNotEmpty(vo.getStatus())){
-                    vo.setStatusName(IntermediatryStatus.getEnumByKey(vo.getStatus()).getDesc());
-                }else{
-                    vo.setStatusName(IntermediatryStatus.DSH.getDesc());
-                }
-
-                if (StringUtil.isNotEmpty(vo.getZxjb())){
-                    if ("1".equals(vo.getZxjb())){
-                        vo.setZxjbName("甲级");
-                    }else if ("2".equals(vo.getZxjb())){
-                        vo.setZxjbName("乙级");
-                    }else if ("3".equals(vo.getZxjb())){
-                        vo.setZxjbName("甲级、乙级");
-                    }
-                }
-            }
-        }
-        return page;
-    }
-
-    @Override
-    public List<IntermediatryVO> listQuery(IntermediatryQueryVO queryVO) {
-
-    	StringBuffer sql = new StringBuffer();
-        sql.append(" SELECT a.create_user_name createUserName,a.id,a.zx_time zxTime,a.zx_time1 zxTime1,a.zx_no zxNo,a.zxjb, a.type, ts.title typeName, a.title, a.group_code groupCode, a.addr, ");
-        sql.append(" a.legal_name legalName, a.legal_phone legalPhone, a.business_owner businessOwner, ");
-        sql.append(" a.business_job businessJob, a.business_phone businessPhone, a.main_business mainBusiness, ");
-        sql.append(" a.remark, a.create_time createTime,a.status,a.reason, c.title createUnitName ");
-        sql.append(" FROM intermediatry_service a LEFT JOIN sec_user b ON a.create_user = b.id ");
-        sql.append(" LEFT JOIN t_systable ts ON a.type = ts.id AND ts.kind = 'JGLX' ");
-        sql.append(" LEFT JOIN j_unit c ON b.unit_id = c.id ");
-        sql.append(" WHERE a.logic_delete_flag = 0 ");
-        if(StringUtil.isNotEmpty(queryVO.getType())) {
-        	sql.append(" AND a.type = '"+ queryVO.getType()+"' ");
-        }
-        if(StringUtil.isNotEmpty(queryVO.getTitle())) {
-        	sql.append(" AND a.title LIKE '%"+ queryVO.getTitle()+"%' ");
-        }
-    	if(StringUtil.isNotEmpty(queryVO.getBusinessOwner())) {
-    		sql.append(" AND a.business_owner LIKE '%" + queryVO.getBusinessOwner()+"%' ");
-    	}
-    	if(StringUtil.isNotEmpty(queryVO.getStatus())) {
-    		if(IntermediatryStatus.DSH.getCode().equals(queryVO.getStatus())) {
-    			//待审核,加上旧数据空的
-    			sql.append(" AND (a.`status` = '"+ queryVO.getStatus()+"' or isnull(a.`status`)) ");
-    		} else {
-    			sql.append(" AND a.`status` = '"+ queryVO.getStatus()+"' ");
-    		}
-    	}
-    	List<IntermediatryVO> listData = (List<IntermediatryVO>)intermediatryDao.queryForClsBySql(sql.toString(), IntermediatryVO.class);
-        return listData;
-    }
-
-    @Override
-    public void save(IntermediatryVO vo, LoginUserVO loginUserVO) {
-        Boolean update = true;
-        if(StringUtil.isEmpty(vo.getId())) {
-            vo.setId(Identities.uuid());
-            vo.setCreateTime(new Date());
-            vo.setUpdateTime(new Date());
-            vo.setCreateUser(loginUserVO.getId());
-            vo.setUpdateUser(loginUserVO.getId());
-
-            //增加待审核状态   1为待审核   2 为已审核
-            vo.setStatus(IntermediatryStatus.DSH.getCode());
-
-            List<Intermediatry> list= intermediatryDao.findByTitle(vo.getTitle());
-            if (list.size()>0){
-                throw  new RuntimeException(vo.getTitle()+"单位名称已存在");
-            }
-            List<Intermediatry> list2= intermediatryDao.findByGroupCode(vo.getGroupCode());
-            if (list2.size()>0){
-                throw  new RuntimeException(vo.getGroupCode()+":统一社会信用代码已存在");
-            }
-            update = false;
-
-
-        }
-        else {
-            //增加待审核状态   1为待审核   2 为已审核
-            vo.setUpdateTime(new Date());
-            vo.setUpdateUser(loginUserVO.getId());
-            vo.setStatus(IntermediatryStatus.DSH.getCode());
-
-        }
-        Intermediatry po = new Intermediatry();
-        BeanUtils.copyProperties(vo, po);
-        intermediatryDao.saveOrUpdate(po);
-
-        List<IntermediatryFile> files = vo.getListFile();
-        if(CollectionUtil.isNotEmpty(files)) {
-            files.forEach(item->{
-                if(StringUtil.isEmpty(item.getId())) {
-                    item.setId(Identities.uuid());
-                    item.setCreateTime(new Date());
-                }
-                item.setInterId(vo.getId());
-            });
-            intermediatryFileDao.saveOrUpdateAll(files);
-        }
-        else if(!update){
-            files = intermediatryFileDao.findByInterId(vo.getId());
-            if(CollectionUtil.isNotEmpty(files)) {
-                files.forEach(item->{
-                    item.setLogicDeleteFlag(1);
-                });
-                intermediatryFileDao.saveOrUpdateAll(files);
-            }
-        }
-
-
-    }
-
-    @Override
-    public List<Intermediatry> listAll() {
-        DetachedCriteria detachedCriteria = DetachedCriteria.forClass(Intermediatry.class);
-        Criterion criterion = Restrictions.eq("logicDeleteFlag", 0);
-        detachedCriteria.add(criterion);
-        return intermediatryDao.find(detachedCriteria);
-    }
-
-    @Override
-    public IntermediatryVO getById(String id) {
-        Intermediatry intermediatry = intermediatryDao.findById(id);
-        List<IntermediatryFile> files = intermediatryFileDao.findByInterId(id);
-        IntermediatryVO vo = new IntermediatryVO(intermediatry, Optional.ofNullable(files).orElse(Collections.emptyList()));
-        if(StringUtil.isNotEmpty(vo.getType())) {
-            vo.setTypeName(Optional.ofNullable(tSysTableService.getById(vo.getType())).orElse(new TSystable()).getTitle());
-        }
-        return vo;
-    }
-
-    @Override
-    public void del(String id) {
-        Intermediatry intermediatry = intermediatryDao.findById(id);
-        intermediatry.setLogicDeleteFlag(1);
-        intermediatryDao.update(intermediatry);
-
-        List<IntermediatryFile> files = intermediatryFileDao.findByInterId(id);
-        if(CollectionUtil.isNotEmpty(files)) {
-            files.forEach(item->{
-                item.setLogicDeleteFlag(1);
-            });
-            intermediatryFileDao.saveOrUpdateAll(files);
-        }
-    }
-
-    @Override
-    public void pass(String id) {
-
-        Intermediatry intermediatry = intermediatryDao.findById(id);
-        intermediatry.setStatus(IntermediatryStatus.TG.getCode());
-        intermediatryDao.update(intermediatry);
-
-    }
-
-    @Override
-    public void back(String id, String reason) {
-        Intermediatry intermediatry = intermediatryDao.findById(id);
-        intermediatry.setStatus(IntermediatryStatus.TH.getCode());
-        intermediatry.setReason(reason);
-
-        //退回项目  默认有问题
-        //intermediatry.setProblemStatus("1");
-
-        intermediatryDao.update(intermediatry);
-    }
-
-    @Override
-    @Transactional(rollbackFor= {Exception.class, RuntimeException.class})
-    public void importData(List<IntermediatrExcelVO> datas, LoginUserVO loginUserVO) {
-        if(com.rtrh.common.util.CollectionUtil.isNotEmpty(datas)) {
-            List<TSystable> jglx = tSysTableService.getByKind(SysTableKind.JGLX);
-
-            Map<String, String> jsddMap = jglx.stream().collect(Collectors.toMap(TSystable::getTitle, TSystable::getId));
-
-            int i=2;
-
-            for(IntermediatrExcelVO vo : datas) {
-                if(StringUtil.isEmpty(vo.getType())) {
-                    //机构类型为空,跳过
-                    continue;
-                }
-                if(StringUtil.isEmpty(vo.getTitle())) {
-                    throw new RuntimeException("第"+i+"行【企业名称】不能为空");
-                }
-                if(StringUtil.isEmpty(vo.getGroupCode())) {
-                    throw new RuntimeException("第"+i+"行【统一社会信用代码】不能为空");
-                }
-//                if (StringUtil.isEmpty(vo.getZxjb())){
-//                    throw new RuntimeException("第"+i+"行【资信级别】不能为空");
-//                }
-//                if (StringUtil.isEmpty(vo.getTime())){
-//                    throw new RuntimeException("第"+i+"行【资信有效期】不能为空");
-//                }
-//                if (StringUtil.isEmpty(vo.getZxno())){
-//                    throw new RuntimeException("第"+i+"行【资信证书编号】不能为空");
-//                }
-
-
-                if (StringUtil.isEmpty(vo.getCreateUserName())){
-                    throw  new RuntimeException("第"+i+"行【创建人】不能为空");
-                }
-
-
-                //企业名称 判断是否存在企业信息  存在就更新
-                List<Intermediatry> list=  intermediatryDao.findByGroupCode(vo.getGroupCode());
-                Intermediatry intermediatry = null;
-                if (list.size()>0){
-                    intermediatry=list.get(0);
-                }else{
-                    intermediatry=new Intermediatry();
-                    intermediatry.setId(UUID.randomUUID().toString());
-                }
-
-                //建设性质
-                String typeId = jsddMap.get(vo.getType());
-                if(StringUtil.isEmpty(typeId)) {
-                    throw new RuntimeException("企业类型 【"+vo.getType()+"】在系统中不存在");
-                }
-
-                //检验数据是否符合规范
-
-                String checkZxjb="";
-                if (StringUtil.isNotEmpty(vo.getZxjb())){
-
-                    if (vo.getZxjb().contains(",")){
-                        String  zxjb[]=vo.getZxjb().split(",");
-                        if (zxjb.length==2&& "甲级".equals(zxjb[0])&& "乙级".equals(zxjb[1]) ){
-                            intermediatry.setZxjb("3");
-                            checkZxjb="3";
-                        }else{
-                            throw new RuntimeException("第"+i+"行,请按要求填写【资信级别】 甲级/乙级/甲级,乙级 ");
-                        }
-                    }
-                    else if (vo.getZxjb().contains(",")){
-                        String zxjb[]=vo.getZxjb().split(",");
-                        if (zxjb.length==2&& "甲级".equals(zxjb[0])&& "乙级".equals(zxjb[1]) ){
-                            intermediatry.setZxjb("3");
-                            checkZxjb="3";
-                        }else{
-                            throw new RuntimeException("第"+i+"行,请按要求填写【资信级别】 甲级/乙级/甲级,乙级 ");
-                        }
-                    }
-                    else{
-                        if ("甲级".equals(vo.getZxjb())){
-                            intermediatry.setZxjb("1");
-                            checkZxjb="1";
-                        }else if ("乙级".equals(vo.getZxjb())){
-                            intermediatry.setZxjb("2");
-                            checkZxjb="2";
-                        }else{
-                            throw new RuntimeException("第"+i+"行,请按要求填写【资信级别】  甲级/乙级/甲级,乙级   ");
-                        }
-                    }
-
-
-                }else{
-                    intermediatry.setZxjb("");
-                }
-
-
-
-                //检验时间是否符合 要求
-                if ("1".equals(checkZxjb)){
-                    if (vo.getTime_1()!=null){
-                        intermediatry.setZxTime(vo.getTime_1());
-                    }else{
-                        throw new RuntimeException("第"+i+"行,【资信级别】为甲级,【甲级资信有效期】不能为空   ");
-                    }
-                }else if ("2".equals(checkZxjb)){
-                    if (vo.getTime_2()!=null){
-                        intermediatry.setZxTime1(vo.getTime_2());
-                    }else{
-                        throw new RuntimeException("第"+i+"行,【资信级别】为乙级,【乙级资信有效期】不能为空   ");
-                    }
-                }else if ("3".equals(checkZxjb)){
-                    if (vo.getTime_1()!=null&&vo.getTime_2()!=null){
-                        intermediatry.setZxTime(vo.getTime_1());
-                        intermediatry.setZxTime1(vo.getTime_2());
-                    }else{
-                        throw new RuntimeException("第"+i+"行,【资信级别】为甲级、乙级,【甲级资信有效期】与【乙级资信有效期】不能为空   ");
-                    }
-                }else {
-                    intermediatry.setZxTime1(null);
-                    intermediatry.setZxTime(null);
-                }
-
-
-
-
-
-                intermediatry.setType(typeId);
-                intermediatry.setCreateUserName(vo.getCreateUserName());
-                intermediatry.setTitle(vo.getTitle());
-                intermediatry.setZxNo(vo.getZxno());
-                intermediatry.setAddr(vo.getAddr());
-                intermediatry.setBusinessJob(vo.getBusinessJob());
-                intermediatry.setBusinessOwner(vo.getBusinessOwner());
-                intermediatry.setBusinessPhone(vo.getBusinessPhone());
-                intermediatry.setMainBusiness(vo.getMainBusiness());
-                intermediatry.setLegalName(vo.getLegalName());
-                intermediatry.setLegalPhone(vo.getLegalPhone());
-                intermediatry.setRemark(vo.getRemark());
-                intermediatry.setGroupCode(vo.getGroupCode());
-                intermediatry.setCreateUser(loginUserVO.getLoginName());
-                intermediatry.setCreateTime(new Date());
-                intermediatry.setUpdateTime(new Date());
-                intermediatry.setUpdateUser(loginUserVO.getLoginName());
-                intermediatryDao.saveOrUpdate(intermediatry);
-
-                i=i+1;
-            }
-        }
-    }
-
-	@Override
-	public List<Map<String, Object>> statics() {
-		StringBuffer sql = new StringBuffer();
-		sql.append(" SELECT b.title typeName, a.type , COUNT(1) total, SUM(if(ISNULL(a.`status`) or a.`status` = 1,1,0)) wait, ");
-		sql.append(" SUM(if(a.`status` = 2, 1, 0)) zc, SUM(if(a.`status` = 3, 1, 0)) yc ");
-		sql.append(" FROM intermediatry_service a LEFT JOIN t_systable b ON a.type = b.id ");
-		sql.append(" WHERE a.logic_delete_flag = 0 ");
-		sql.append(" GROUP BY a.type ");
-		return (List<Map<String, Object>>)intermediatryDao.queryForObjListBySql(sql.toString());
-	}
-}

+ 0 - 71
projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/service/IntermediatryService.java

@@ -1,71 +0,0 @@
-package com.rtrh.projects.modules.intermediatry.service;
-
-import java.util.List;
-import java.util.Map;
-
-import com.rtrh.core.repository.Page;
-import com.rtrh.projects.modules.intermediatry.po.Intermediatry;
-import com.rtrh.projects.modules.intermediatry.vo.IntermediatrExcelVO;
-import com.rtrh.projects.modules.intermediatry.vo.IntermediatryQueryVO;
-import com.rtrh.projects.modules.intermediatry.vo.IntermediatryVO;
-import com.rtrh.projects.modules.system.vo.LoginUserVO;
-
-public interface IntermediatryService {
-
-    /**
-     * 查询
-     * @param page
-     * @param queryVO
-     * @return
-     */
-    public Page pageQuery(Page page, IntermediatryQueryVO queryVO);
-
-     List<IntermediatryVO> listQuery(IntermediatryQueryVO queryVO);
-
-     /**
-      * 统计
-      * @return
-      */
-    List<Map<String, Object>> statics();
-
-    /**
-     * 保存
-     * @param vo
-     */
-    public void save(IntermediatryVO vo, LoginUserVO loginUserVO);
-
-
-
-
-    List<Intermediatry> listAll();
-    /**
-     * 获取
-     * @param id
-     * @return
-     */
-    public IntermediatryVO getById(String id);
-    /**
-     * 删除
-     * @param id
-     */
-    public void del(String id);
-
-    /**
-     * 审核
-     * @param id
-     */
-    public void pass(String id);
-
-
-    /**
-     * 退回
-     * @param id
-     */
-    public void back(String id,String reason);
-
-    /**
-     * 导入数据
-     * @param datas
-     */
-    void importData(List<IntermediatrExcelVO> datas, LoginUserVO loginUserVO);
-}

+ 0 - 15
projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/vo/BackInterVO.java

@@ -1,15 +0,0 @@
-package com.rtrh.projects.modules.intermediatry.vo;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class BackInterVO {
-
-    private String id;
-
-
-    private String reason;
-
-}

+ 0 - 117
projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/vo/IntermediatrExcelVO.java

@@ -1,117 +0,0 @@
-package com.rtrh.projects.modules.intermediatry.vo;
-
-import cn.afterturn.easypoi.excel.annotation.Excel;
-import lombok.Getter;
-import lombok.Setter;
-
-import java.util.Date;
-
-
-@Setter
-@Getter
-public class IntermediatrExcelVO {
-
-
-    /**
-     * 机构类型
-     */
-    @Excel(name = "机构类型", width =20 ,orderNum = "1" )
-    private String type;
-
-    /**
-     * 单位名称
-     */
-    @Excel(name = "单位名称", width =20,orderNum = "2")
-    private String title;
-
-    /**
-     * 统一社会信用代码
-     */
-    @Excel(name = "统一社会信用代码", width =20,orderNum = "3")
-    private String groupCode;
-
-    /**
-     * 单位地址
-     */
-    @Excel(name = "归属地", width =20,orderNum = "4")
-    private String addr;
-
-
-    /**
-     * 资信级别
-     */
-    @Excel(name = "资信级别", width =20,orderNum = "5")
-    private String zxjb;
-
-    /**
-     * 甲级资信有效期
-     */
-    @Excel(name = "甲级资信有效期", width =20,orderNum = "6",format = "yyyy-MM-dd")
-    private Date time_1;
-
-    /**
-     * 乙级资信有效期
-     */
-    @Excel(name = "乙级资信有效期", width =20,orderNum = "7",format = "yyyy-MM-dd")
-    private Date time_2;
-
-    /**
-     * 资信证书编号
-     */
-    @Excel(name = "资信证书编号", width =20,orderNum = "8")
-    private String zxno;
-
-    /**
-     * 该单位主要业务
-     */
-    @Excel(name = "资信专业", width =40,orderNum = "9")
-    private String mainBusiness;
-
-    @Excel(name = "创建人", width =40,orderNum = "18")
-    private String createUserName;
-
-    /**
-     * 法人名称
-     */
-    @Excel(name = "法人姓名", width =20,orderNum = "10")
-    private String legalName;
-
-    /**
-     * 法人电话
-     */
-    @Excel(name = "法人联系电话号码", width =20,orderNum = "11")
-    private String legalPhone;
-
-    /**
-     * 业务负责人
-     */
-    @Excel(name = "业务负责人姓名", width =20,orderNum = "12")
-    private String businessOwner;
-
-    /**
-     * 业务负责人职务
-     */
-    @Excel(name = "业务负责人职务", width =20,orderNum = "13")
-    private String businessJob;
-
-    /**
-     * 业务负责人电话
-     */
-    @Excel(name = "业务负责人电话号码", width =20,orderNum = "14")
-    private String businessPhone;
-
-    /**
-     * 备注
-     */
-    @Excel(name = "备注", width =40,orderNum = "15")
-    private String remark;
-
-
-    @Excel(name = "状态", width =20,orderNum = "16")
-    private String status;
-
-    @Excel(name = "原因", width =20,orderNum = "17")
-    private String reason;
-
-
-}

+ 0 - 45
projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/vo/IntermediatryQueryVO.java

@@ -1,45 +0,0 @@
-package com.rtrh.projects.modules.intermediatry.vo;
-
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class IntermediatryQueryVO {
-
-
-    /**
-     * 机构类型
-     */
-    private String type;
-
-
-    /**
-     * 企业名称
-     */
-    private String title;
-
-    /**
-     * 业务负责人
-     */
-    private String businessOwner;
-
-    /***
-     * 状态
-     */
-    private String status;
-
-
-    /**
-     * 资信专业
-     */
-    private String mainBusiness;
-
-    /**
-     * 资信级别
-     */
-    private String zxjb;
-
-
-}

+ 0 - 38
projects-service_1018/src/main/java/com/rtrh/projects/modules/intermediatry/vo/IntermediatryVO.java

@@ -1,38 +0,0 @@
-package com.rtrh.projects.modules.intermediatry.vo;
-
-import java.util.List;
-
-import org.springframework.beans.BeanUtils;
-
-import com.rtrh.projects.modules.intermediatry.po.Intermediatry;
-import com.rtrh.projects.modules.intermediatry.po.IntermediatryFile;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class IntermediatryVO extends Intermediatry {
-
-    private String typeName;
-
-
-    private String statusName;
-
-    private String createUnitName;
-
-    private String zxjbName;
-
-    private String createUserName;
-
-    private List<IntermediatryFile> listFile;
-    public IntermediatryVO(Intermediatry po) {
-        BeanUtils.copyProperties(po, this);
-    }
-    public IntermediatryVO(Intermediatry po,List<IntermediatryFile> listFile) {
-        this(po);
-        this.listFile=listFile;
-    }
-
-    public IntermediatryVO() {}
-}

+ 0 - 11
projects-service_1018/src/main/java/com/rtrh/projects/modules/message/dao/MessageConsumeDao.java

@@ -1,11 +0,0 @@
-package com.rtrh.projects.modules.message.dao;
-
-import org.springframework.stereotype.Service;
-
-import com.rtrh.core.repository.hibernate.EntityServiceImpl;
-import com.rtrh.projects.modules.message.po.MessageConsume;
-
-@Service
-public class MessageConsumeDao extends EntityServiceImpl<MessageConsume> {
-
-}

+ 0 - 11
projects-service_1018/src/main/java/com/rtrh/projects/modules/message/dao/MessageInfoDao.java

@@ -1,11 +0,0 @@
-package com.rtrh.projects.modules.message.dao;
-
-import org.springframework.stereotype.Service;
-
-import com.rtrh.core.repository.hibernate.EntityServiceImpl;
-import com.rtrh.projects.modules.message.po.MessageInfo;
-
-@Service
-public class MessageInfoDao extends EntityServiceImpl<MessageInfo>{
-
-}

+ 0 - 13
projects-service_1018/src/main/java/com/rtrh/projects/modules/message/po/MessageConsume.hbm.xml

@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="gb2312"?>
-<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
-<hibernate-mapping package="com.rtrh.projects.modules.message.po">
-	<class name="MessageConsume" table="mse_consume">
-		<id column="id" name="id" type="java.lang.String"><generator class="assigned"/></id>
-		<property column="mesinfo_id" name="msgInfoId" not-null="false" type="java.lang.String" />
-		<property column="user_id" name="userId" not-null="false" type="java.lang.String" />
-		<property column="user_name" name="userName" not-null="false" type="java.lang.String" />
-        <property column="status" name="status" not-null="false" type="java.lang.String" />
-        <property column="logic_delete_flag" name="logicDeleteFlag" not-null="false" type="java.lang.Integer" />
-		<property column="date_read" name="dateRead" not-null="false" type="java.util.Date" />
-	</class>
-</hibernate-mapping>

+ 0 - 45
projects-service_1018/src/main/java/com/rtrh/projects/modules/message/po/MessageConsume.java

@@ -1,45 +0,0 @@
-package com.rtrh.projects.modules.message.po;
-
-import java.util.Date;
-
-import com.alibaba.fastjson.annotation.JSONField;
-import com.fasterxml.jackson.annotation.JsonFormat;
-
-import lombok.Getter;
-import lombok.Setter;
-
-/**
- * 消息接收人
- * @author PENG
- *
- */
-@Setter
-@Getter
-public class MessageConsume {
-
-	private String id;
-	/**
-	 * 消息id
-	 */
-	private String msgInfoId;
-	/**
-	 * 接收消息的用户id
-	 */
-	private String userId;
-	/**
-	 * 接收消息的用户名
-	 */
-	private String userName;
-	/**
-	 * 0未读, 1已读
-	 */
-	private String status;
-	/**
-	 * 消息读取时间
-	 */
-	@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
-	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
-	private Date dateRead;
-	
-	private Integer logicDeleteFlag = 0;
-}

+ 0 - 13
projects-service_1018/src/main/java/com/rtrh/projects/modules/message/po/MessageInfo.hbm.xml

@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="gb2312"?>
-<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
-<hibernate-mapping package="com.rtrh.projects.modules.message.po">
-	<class name="MessageInfo" table="mse_info">
-		<id column="id" name="id" type="java.lang.String"><generator class="assigned"/></id>
-		<property column="user_id" name="userId" not-null="false" type="java.lang.String" />
-		<property column="user_name" name="userName" not-null="false" type="java.lang.String" />
-        <property column="content" name="content" not-null="false" type="java.lang.String" />
-        <property column="logic_delete_flag" name="logicDeleteFlag" not-null="false" type="java.lang.Integer" />
-		<property column="create_user_id" name="createUserId" not-null="false" type="java.lang.String" />
-		<property column="create_time" name="createTime" not-null="false" type="java.util.Date" />
-	</class>
-</hibernate-mapping>

+ 0 - 36
projects-service_1018/src/main/java/com/rtrh/projects/modules/message/po/MessageInfo.java

@@ -1,36 +0,0 @@
-package com.rtrh.projects.modules.message.po;
-
-import java.util.Date;
-
-import com.alibaba.fastjson.annotation.JSONField;
-import com.fasterxml.jackson.annotation.JsonFormat;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class MessageInfo {
-
-	private String id;
-	/**
-	 * 用户id
-	 */
-	private String userId;
-	/**
-	 * 用户名
-	 */
-	private String userName;
-	/**
-	 * 消息内容
-	 */
-	private String content;
-	
-	private Integer logicDeleteFlag = 0;
-	
-	private String createUserId;
-	
-	@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
-	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
-	private Date createTime;
-}

+ 0 - 48
projects-service_1018/src/main/java/com/rtrh/projects/modules/message/service/MessageInfoService.java

@@ -1,48 +0,0 @@
-package com.rtrh.projects.modules.message.service;
-
-import com.rtrh.core.repository.Page;
-import com.rtrh.projects.modules.message.vo.MessageQueryVO;
-import com.rtrh.projects.modules.message.vo.MessageVO;
-import com.rtrh.projects.modules.system.vo.LoginUserVO;
-
-public interface MessageInfoService {
-
-	/**
-	 * 新增消息
-	 * @param messageVO
-	 * @param loginUserVO
-	 * @return
-	 */
-	public boolean addMessage(MessageVO messageVO, LoginUserVO loginUserVO);
-
-	/**
-	 * 分页查询
-	 * @param page
-	 * @param read
-	 * @param loginUserVO
-	 * @return
-	 */
-	public Page pageMessage(Page page, Boolean read, LoginUserVO loginUserVO);
-
-	/**
-	 * 分页获取自己创建的消息
-	 * @param page
-	 * @param loginUserVO
-	 * @return
-	 */
-	public Page pageMyCreateMsg(Page page, LoginUserVO loginUserVO, MessageQueryVO queryVO);
-	
-	/**
-	 * 消息已读
-	 * @param consumeId
-	 * @return
-	 */
-	public boolean readMsg(String consumeId);
-	
-	/**
-	 * 未读消息数量
-	 * @param loginUserVO
-	 * @return
-	 */
-	public Long unReadCount(LoginUserVO loginUserVO);
-}

+ 0 - 109
projects-service_1018/src/main/java/com/rtrh/projects/modules/message/service/impl/MessageInfoServiceImpl.java

@@ -1,109 +0,0 @@
-package com.rtrh.projects.modules.message.service.impl;
-
-import java.util.Date;
-import java.util.List;
-
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import com.rtrh.common.util.Identities;
-import com.rtrh.common.util.StringUtil;
-import com.rtrh.core.repository.Page;
-import com.rtrh.projects.modules.message.dao.MessageConsumeDao;
-import com.rtrh.projects.modules.message.dao.MessageInfoDao;
-import com.rtrh.projects.modules.message.po.MessageConsume;
-import com.rtrh.projects.modules.message.po.MessageInfo;
-import com.rtrh.projects.modules.message.service.MessageInfoService;
-import com.rtrh.projects.modules.message.vo.MessageQueryVO;
-import com.rtrh.projects.modules.message.vo.MessageVO;
-import com.rtrh.projects.modules.system.vo.LoginUserVO;
-
-import cn.hutool.core.date.DateUtil;
-
-@Service
-public class MessageInfoServiceImpl implements MessageInfoService {
-
-	@Autowired
-	private MessageInfoDao messageInfoDao;
-	@Autowired
-	private MessageConsumeDao messageConsumeDao;
-	
-	@Override
-	public boolean addMessage(MessageVO messageVO, LoginUserVO loginUserVO) {
-		MessageInfo info = new MessageInfo();
-		BeanUtils.copyProperties(messageVO, info);
-		if(StringUtil.isEmpty(info.getId())) {
-			info.setId(Identities.uuid());
-			info.setCreateTime(new Date());
-			info.setCreateUserId(loginUserVO.getId());
-			info.setUserId(loginUserVO.getId());
-			info.setUserName(loginUserVO.getRealName());
-		} 
-		messageInfoDao.saveOrUpdate(info);
-		
-		List<MessageConsume> consumes = messageVO.getConsumes();
-		for(MessageConsume consume : consumes) {
-			consume.setMsgInfoId(info.getId());
-			if(StringUtil.isEmpty(consume.getId())) {
-				consume.setStatus("0");
-				consume.setId(Identities.uuid());
-			}
-		}
-		messageConsumeDao.saveOrUpdateAll(consumes);
-		return true;
-	}
-
-	@Override
-	public Page pageMessage(Page page, Boolean read, LoginUserVO loginUserVO) {
-		StringBuffer sql = new StringBuffer();
-		sql.append(" SELECT a.status,a.id,b.content,b.user_name userName, date_format(b.create_time,'%Y-%m-%d %H:%i:%s') as createTime ");
-		sql.append(" FROM mse_consume a LEFT JOIN mse_info b ON a.mesinfo_id = b.id ");
-		sql.append(" WHERE a.logic_delete_flag = 0 AND b.logic_delete_flag = 0 ");
-		sql.append(" and a.user_id = '"+ loginUserVO.getId()+"' ");
-		if(read != null) {
-			sql.append(" and a.status = '"+ (Boolean.TRUE.equals(read)?"1":"0")+"' ");
-		}
-		sql.append(" order by b.create_time desc ");
-		return messageConsumeDao.queryForListBySql(sql.toString(), page);
-	}
-
-	@Override
-	public Page pageMyCreateMsg(Page page, LoginUserVO loginUserVO, MessageQueryVO queryVO) {
-		StringBuffer sql = new StringBuffer();
-		sql.append(" SELECT a.status,a.id,b.content,a.user_name userName, date_format(b.create_time,'%Y-%m-%d %H:%i:%s') as createTime ");
-		sql.append(" FROM mse_consume a LEFT JOIN mse_info b ON a.mesinfo_id = b.id ");
-		sql.append(" WHERE a.logic_delete_flag = 0 AND b.logic_delete_flag = 0 ");
-		sql.append(" and b.user_id = '"+ loginUserVO.getId()+"' ");
-		if(queryVO.getBeginDate() != null) {
-			sql.append(" AND b.create_time >= '"+ DateUtil.format(queryVO.getBeginDate(), "yyyy-MM-dd 00:00:00")+ "' ");
-		}
-		if(queryVO.getEndDate() != null) {
-			sql.append(" AND b.create_time <= '" + DateUtil.format(queryVO.getEndDate(), "yyyy-MM-dd 23:59:59")+ "' ");
-		}
-		if(StringUtil.isNotEmpty(queryVO.getUserName())) {
-			sql.append(" AND a.user_name like '%" + queryVO.getUserName()+ "%' ");
-		}
-		if(StringUtil.isNotEmpty(queryVO.getContent())) {
-			sql.append(" AND b.content LIKE '%" + queryVO.getContent() + "%' ");
-		}
-		sql.append(" order by b.create_time desc ");
-		return messageConsumeDao.queryForListBySql(sql.toString(), page);
-	}
-
-	@Override
-	public boolean readMsg(String consumeId) {
-		MessageConsume consume = messageConsumeDao.findById(consumeId);
-		consume.setDateRead(new Date());
-		consume.setStatus("1");
-		messageConsumeDao.update(consume);
-		return true;
-	}
-
-	@Override
-	public Long unReadCount(LoginUserVO loginUserVO) {
-		String hql = "FROM MessageConsume WHERE logicDeleteFlag = 0 AND userId = ? AND status = ?";
-		return messageConsumeDao.getCount(hql, loginUserVO.getId(), "0");
-	}
-
-}

+ 0 - 23
projects-service_1018/src/main/java/com/rtrh/projects/modules/message/vo/MessageQueryVO.java

@@ -1,23 +0,0 @@
-package com.rtrh.projects.modules.message.vo;
-
-import java.util.Date;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class MessageQueryVO {
-
-	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-	private Date beginDate;
-	
-	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-	private Date endDate;
-	
-	private String userName;
-	
-	private String content;
-}

+ 0 - 19
projects-service_1018/src/main/java/com/rtrh/projects/modules/message/vo/MessageVO.java

@@ -1,19 +0,0 @@
-package com.rtrh.projects.modules.message.vo;
-
-import java.util.List;
-
-import com.rtrh.projects.modules.message.po.MessageConsume;
-import com.rtrh.projects.modules.message.po.MessageInfo;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class MessageVO extends MessageInfo {
-
-	/**
-	 * 消息接收者
-	 */
-	private List<MessageConsume> consumes;
-}

+ 0 - 22
projects-service_1018/src/main/java/com/rtrh/projects/modules/msglog/dao/PhoneMsgLogDao.java

@@ -1,22 +0,0 @@
-package com.rtrh.projects.modules.msglog.dao;
-
-import java.util.Date;
-
-import org.springframework.stereotype.Service;
-
-import com.rtrh.core.repository.hibernate.EntityServiceImpl;
-import com.rtrh.projects.modules.msglog.po.PhoneMsgLog;
-
-import cn.hutool.core.date.DateTime;
-import cn.hutool.core.date.DateUtil;
-
-@Service
-public class PhoneMsgLogDao extends EntityServiceImpl<PhoneMsgLog> {
-
-	public Boolean thisDayHasSend(String tel, String msgType, String subId) {
-		String hql = "FROM PhoneMsgLog WHERE tel = ? AND msgType = ? AND subId = ? AND logicDeleteFlag = 0 AND createTime >= ? AND createTime <= ?";
-		DateTime begin = DateUtil.beginOfDay(new Date());
-		DateTime end = DateUtil.endOfDay(new Date());
-		return this.getCount(hql, tel, msgType, subId, begin, end) > 0;
-	}
-}

+ 0 - 17
projects-service_1018/src/main/java/com/rtrh/projects/modules/msglog/po/PhoneMsgLog.hbm.xml

@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="gb2312"?>
-<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
-<hibernate-mapping package="com.rtrh.projects.modules.msglog.po">
-	<class name="PhoneMsgLog" table="phone_msg_log">
-		<id column="id" name="id" type="java.lang.String"><generator class="assigned"/></id>
-		<property column="sub_id" name="subId" not-null="false" type="java.lang.String" />
-		<property column="msg_type" name="msgType" not-null="false" type="java.lang.String" />
-		<property column="user_name" name="userName" not-null="false" type="java.lang.String" />
-        <property column="content" name="content" not-null="false" type="java.lang.String" />
-        <property column="tel" name="tel" not-null="false" type="java.lang.String" />
-        <property column="kind" name="kind" not-null="false" type="java.lang.String" />
-        <property column="success" name="success" not-null="false" type="java.lang.Boolean" />
-        <property column="error_msg" name="errorMsg" not-null="false" type="java.lang.String" />
-        <property column="logic_delete_flag" name="logicDeleteFlag" not-null="false" type="java.lang.Integer" />
-		<property column="create_time" name="createTime" not-null="false" type="java.util.Date" />
-	</class>
-</hibernate-mapping>

+ 0 - 60
projects-service_1018/src/main/java/com/rtrh/projects/modules/msglog/po/PhoneMsgLog.java

@@ -1,60 +0,0 @@
-package com.rtrh.projects.modules.msglog.po;
-
-import java.util.Date;
-
-import com.alibaba.fastjson.annotation.JSONField;
-import com.fasterxml.jackson.annotation.JsonFormat;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class PhoneMsgLog {
-
-	private String id;
-	/**
-	 * 项目id
-	 */
-	private String subId;
-
-	/**
-	 * 通知消息类型
-	 */
-	private String msgType;
-	/**
-	 * 用户名
-	 */
-	private String userName;
-	/**
-	 * 电话
-	 */
-	private String tel;
-	/**
-	 * 消息内容
-	 */
-	private String content;
-
-	/**
-	 * 是否成功
-	 */
-	private Boolean success;
-
-	/**
-	 * 失败信息
-	 */
-	private String errorMsg;
-
-
-	/**
-	 * 类型
-	 */
-	private String kind;
-
-
-	private Integer logicDeleteFlag = 0;
-
-	@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
-	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
-	private Date createTime;
-}

+ 0 - 18
projects-service_1018/src/main/java/com/rtrh/projects/modules/msglog/service/IPhoneMsgLogService.java

@@ -1,18 +0,0 @@
-package com.rtrh.projects.modules.msglog.service;
-
-import java.io.IOException;
-
-import com.aliyuncs.exceptions.ClientException;
-import com.rtrh.core.repository.Page;
-
-public interface IPhoneMsgLogService {
-
-	Page pageQueryLog(Page page, String tel, String subName, String userName);
-
-	Page pageQueryBySubId(Page page, String subId);
-
-
-	Page pageQueryBySubIdAndKind(Page page, String subId,String kind);
-
-	void sendDusMsg(String subId) throws IOException, ClientException;
-}

+ 0 - 120
projects-service_1018/src/main/java/com/rtrh/projects/modules/msglog/service/impl/PhoneMsgLogServiceImpl.java

@@ -1,120 +0,0 @@
-package com.rtrh.projects.modules.msglog.service.impl;
-
-import java.io.IOException;
-import java.text.MessageFormat;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.regex.Pattern;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import com.aliyuncs.exceptions.ClientException;
-import com.rtrh.common.util.Identities;
-import com.rtrh.common.util.StringUtil;
-import com.rtrh.core.repository.Page;
-import com.rtrh.projects.modules.msglog.dao.PhoneMsgLogDao;
-import com.rtrh.projects.modules.msglog.po.PhoneMsgLog;
-import com.rtrh.projects.modules.msglog.service.IPhoneMsgLogService;
-import com.rtrh.projects.modules.projects.dao.SubInfoDao;
-import com.rtrh.projects.modules.projects.po.SubInfo;
-import com.rtrh.projects.modules.utils.AliSendTelPhoneUtil;
-import com.rtrh.projects.modules.utils.AliSendTelPhoneUtil.SendResponse;
-
-import cn.hutool.core.date.DateUtil;
-
-@Service
-public class PhoneMsgLogServiceImpl implements IPhoneMsgLogService {
-
-	@Autowired
-	private PhoneMsgLogDao phoneMsgLogDao;
-	@Autowired
-	private SubInfoDao subInfoDao;
-
-	private static Pattern TEL_PATTERN = Pattern.compile("^1[3-9]\\d{9}$");
-
-	@Override
-	public Page pageQueryLog(Page page, String tel, String subName, String userName) {
-		StringBuffer sql = new StringBuffer();
-		sql.append(" SELECT a.id,sub_id, a.content,a.success, a.tel, a.user_name userName, b.sub_name subName, ");
-		sql.append(" DATE_FORMAT(a.create_time,'%Y-%m-%d %H:%i:%s') createTime,DATE_FORMAT(b.begin_date,'%Y-%m-%d') beginDate, DATE_FORMAT(b.end_date,'%Y-%m-%d') endDate, ");
-		sql.append(" b.amt_total amtTotal ");
-		sql.append(" FROM phone_msg_log a LEFT JOIN sub_info b ON a.sub_id = b.id ");
-		sql.append(" WHERE a.logic_delete_flag = 0 ");
-		if(StringUtil.isNotEmpty(tel)) {
-			sql.append(" AND a.tel LIKE '%" + tel+"%' ");
-		}
-		if(StringUtil.isNotEmpty(subName)) {
-			sql.append(" AND a.user_name LIKE '%"+ userName+"%' ");
-		}
-		if(StringUtil.isNotEmpty(subName)) {
-			sql.append(" AND b.sub_name LIKE '%"+subName+"%' ");
-		}
-		sql.append(" ORDER BY a.create_time desc ");
-		return phoneMsgLogDao.queryForListBySql(sql.toString(), page);
-	}
-
-	@Override
-	public void sendDusMsg(String subId) throws IOException, ClientException {
-		SubInfo subInfo = subInfoDao.findById(subId);
-		if(!TEL_PATTERN.matcher(subInfo.getTel()).matches()) {
-			throw new RuntimeException("请填写正确得手机号码");
-		}
-		long dueDay = DateUtil.betweenDay(subInfo.getEndDate(), new Date(), true);
-		String content = MessageFormat.format("哈密市发改委提醒:您监管/负责的{0}项目,已经逾期{1}天,请及时关注并处理!!!", msgParamLengthSplit(subInfo.getSubName()), dueDay);
-		Map<String, String> context = new HashMap<String, String>();
-		context.put("name", "哈密市发改委");
-		context.put("projName", msgParamLengthSplit("("+ subInfo.getSubName()+")"));
-		context.put("days", String.valueOf(dueDay));
-		SendResponse sendResponse = AliSendTelPhoneUtil.sendMessage(subInfo.getTel(), context, "SMS_465155436");
-		PhoneMsgLog log = new PhoneMsgLog();
-		log.setId(Identities.uuid());
-		log.setCreateTime(new Date());
-		log.setSubId(subId);
-		log.setTel(subInfo.getTel());
-		log.setUserName(subInfo.getNameZrr());
-		log.setSuccess(sendResponse.getSuccess());
-		log.setErrorMsg(sendResponse.getMessage());
-		log.setContent(content);
-		phoneMsgLogDao.save(log);
-	}
-
-	@Override
-	public Page pageQueryBySubId(Page page, String subId) {
-		StringBuffer sql = new StringBuffer();
-		sql.append(" SELECT a.id, a.content, a.tel, a.user_name userName, b.sub_name subName, ");
-		sql.append(" DATE_FORMAT(a.create_time,'%Y-%m-%d %H:%i:%s') createTime,DATE_FORMAT(b.begin_date,'%Y-%m-%d') beginDate, DATE_FORMAT(b.end_date,'%Y-%m-%d') endDate, ");
-		sql.append(" b.amt_total amtTotal ");
-		sql.append(" FROM phone_msg_log a LEFT JOIN sub_info b ON a.sub_id = b.id ");
-		sql.append(" WHERE a.logic_delete_flag = 0 ");
-		sql.append(" AND a.sub_id = '" + subId+"' ");
-		sql.append(" ORDER BY a.create_time desc ");
-		return phoneMsgLogDao.queryForListBySql(sql.toString(), page);
-	}
-
-	@Override
-	public Page pageQueryBySubIdAndKind(Page page, String subId, String kind) {
-
-		StringBuffer sql = new StringBuffer();
-		sql.append(" SELECT a.id, a.content, a.success,a.tel, a.user_name userName, b.sub_name subName, ");
-		sql.append(" DATE_FORMAT(a.create_time,'%Y-%m-%d %H:%i:%s') createTime,DATE_FORMAT(b.begin_date,'%Y-%m-%d') beginDate, DATE_FORMAT(b.end_date,'%Y-%m-%d') endDate, ");
-		sql.append(" b.amt_total amtTotal ");
-		sql.append(" FROM phone_msg_log a LEFT JOIN sub_info b ON a.sub_id = b.id ");
-		sql.append(" WHERE a.logic_delete_flag = 0 ");
-		sql.append(" AND a.sub_id = '" + subId+"' ");
-		sql.append(" AND a.kind like  '%"+kind+"%' ");
-		sql.append(" ORDER BY a.create_time desc ");
-		return phoneMsgLogDao.queryForListBySql(sql.toString(), page);
-	}
-
-	private String msgParamLengthSplit(String params) {
-		if(StringUtil.isNotEmpty(params)) {
-			if(params.length() > 35) {
-				return params.substring(0, 30)+"..."+(params.endsWith(")")?")":"");
-			}
-		}
-		return params;
-	}
-
-}

+ 0 - 16
projects-service_1018/src/main/java/com/rtrh/projects/modules/msglog/vo/MsgLogQueryKindVO.java

@@ -1,16 +0,0 @@
-package com.rtrh.projects.modules.msglog.vo;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Getter
-@Setter
-public class MsgLogQueryKindVO {
-
-
-    private String subId;
-
-    private String kind;
-
-
-}

+ 0 - 15
projects-service_1018/src/main/java/com/rtrh/projects/modules/msglog/vo/PhoneMsgLogQueryVO.java

@@ -1,15 +0,0 @@
-package com.rtrh.projects.modules.msglog.vo;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class PhoneMsgLogQueryVO {
-
-	private String subName;
-	
-	private String tel;
-	
-	private String userName;
-}

+ 0 - 50
projects-service_1018/src/main/java/com/rtrh/projects/modules/notice/dao/NoticeDao.java

@@ -1,50 +0,0 @@
-package com.rtrh.projects.modules.notice.dao;
-
-import java.util.Date;
-
-import org.hibernate.criterion.Criterion;
-import org.hibernate.criterion.DetachedCriteria;
-import org.hibernate.criterion.MatchMode;
-import org.hibernate.criterion.Order;
-import org.hibernate.criterion.Restrictions;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import com.rtrh.common.util.StringUtil;
-import com.rtrh.core.repository.Page;
-import com.rtrh.core.repository.hibernate.EntityServiceImpl;
-import com.rtrh.projects.modules.notice.po.NoticePO;
-
-import cn.hutool.core.date.DateUtil;
-
-@Service
-public class NoticeDao extends EntityServiceImpl<NoticePO> {
-
-	public Page pageQueryData(Page page, Boolean publish, String title) {
-		DetachedCriteria detachedCriteria = DetachedCriteria.forClass(NoticePO.class);
-		Criterion criterion = Restrictions.eq("logicDeleteFlag", 0);
-		if(publish != null) {
-			criterion = Restrictions.and(criterion, Restrictions.eq("publish", publish));
-		}
-		if(StringUtil.isNotEmpty(title)) {
-			criterion = Restrictions.and(criterion, Restrictions.like("title", title, MatchMode.ANYWHERE));
-		}
-		detachedCriteria.add(criterion);
-		detachedCriteria.addOrder(Order.desc("createTime"));
-		return this.pagedQuery(page, detachedCriteria);
-	}
-	
-	@Transactional(readOnly = true)
-	public Page pageQueryShow(Page page) {
-		DetachedCriteria detachedCriteria = DetachedCriteria.forClass(NoticePO.class);
-		Criterion criterion = Restrictions.and(
-				Restrictions.eq("logicDeleteFlag", 0),
-				Restrictions.eq("publish", Boolean.TRUE),
-				Restrictions.or(Restrictions.le("beginDate", new Date()), Restrictions.isNull("beginDate")),
-				Restrictions.or(Restrictions.ge("endDate", DateUtil.parse(DateUtil.formatDate(new Date()))), Restrictions.isNull("endDate")));
-		detachedCriteria.add(criterion);
-		detachedCriteria.addOrder(Order.desc("publishDate"));
-		return pagedQuery(page, detachedCriteria);
-		
-	}
-}

+ 0 - 20
projects-service_1018/src/main/java/com/rtrh/projects/modules/notice/po/NoticePO.hbm.xml

@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="gb2312"?>
-<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
-<hibernate-mapping package="com.rtrh.projects.modules.notice.po">
-	<class name="NoticePO" table="notice">
-		<id column="id" name="id" type="java.lang.String"><generator class="assigned"/></id>
-		<property column="title" name="title" not-null="false" type="java.lang.String" />
-		<property column="begin_date" name="beginDate" not-null="false" type="java.util.Date" />
-		<property column="end_date" name="endDate" not-null="false" type="java.util.Date" />
-		<property column="publish" name="publish" not-null="false" type="java.lang.Boolean" />
-		<property column="publish_date" name="publishDate" not-null="false" type="java.util.Date" />
-		<property name="content" type="java.lang.String">
-			<column name="content" not-null="false" sql-type="text"/>
-		</property>
-       <property column="create_time" name="createTime" not-null="false" type="java.util.Date" />
-        <property column="create_user_id" name="createUserId" not-null="false" type="java.lang.String" />
-        <property column="last_update_user_id" name="lastUpdateUserId" not-null="false" type="java.lang.String" />
-        <property column="last_update_time" name="lastUpdateTime" not-null="false" type="java.util.Date" />
-        <property column="logic_delete_flag" name="logicDeleteFlag" not-null="false" type="java.lang.Integer" />
-	</class>
-</hibernate-mapping>

+ 0 - 52
projects-service_1018/src/main/java/com/rtrh/projects/modules/notice/po/NoticePO.java

@@ -1,52 +0,0 @@
-package com.rtrh.projects.modules.notice.po;
-
-import java.util.Date;
-
-import com.alibaba.fastjson.annotation.JSONField;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.rtrh.projects.modules.system.po.TableBaseColomn;
-
-import lombok.Getter;
-import lombok.Setter;
-
-@Setter
-@Getter
-public class NoticePO extends TableBaseColomn {
-
-	/**
-	 * id
-	 */
-	private String id;
-	
-	/**
-	 * 公告标题
-	 */
-	private String title;
-	/**
-	 * 开始时间
-	 */
-	@JsonFormat(pattern = "yyyy-MM-dd", timezone="GMT+8")
-	@JSONField(format = "yyyy-MM-dd")
-	private Date beginDate;
-	/**
-	 * 结束时间
-	 */
-	@JsonFormat(pattern = "yyyy-MM-dd", timezone="GMT+8")
-	@JSONField(format = "yyyy-MM-dd")
-	private Date endDate;
-	/**
-	 * 是否发布
-	 */
-	private Boolean publish;
-	/**
-	 * 发布日期
-	 */
-	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
-	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
-	private Date publishDate;
-	/**
-	 * 公告内容
-	 */
-	private String content;
-	
-}

+ 0 - 48
projects-service_1018/src/main/java/com/rtrh/projects/modules/notice/service/NoticeService.java

@@ -1,48 +0,0 @@
-package com.rtrh.projects.modules.notice.service;
-
-import com.rtrh.core.repository.Page;
-import com.rtrh.projects.modules.notice.po.NoticePO;
-import com.rtrh.projects.modules.system.vo.LoginUserVO;
-
-public interface NoticeService {
-
-	/**
-	 * 查询编辑用列表
-	 * @param page
-	 * @param publish
-	 * @param title
-	 * @return
-	 */
-	public Page pageQuery(Page page, Boolean publish, String title);
-	/**
-	 * 查询显示的公告
-	 * @param page
-	 * @return
-	 */
-	public Page pageQueryShow(Page page);
-	
-	/**
-	 * 通过id获取数据
-	 * @param id
-	 * @return
-	 */
-	public NoticePO getById(String id);
-	
-	/**
-	 * 保存或修改
-	 * @param po
-	 */
-	public void saveOrUpate(NoticePO po, LoginUserVO vo);
-	
-	/**
-	 * 改变发布状态
-	 * @param id
-	 */
-	public void changePublish(String id);
-	
-	/**
-	 * 删除公告
-	 * @param id
-	 */
-	public void del(String id);
-}

+ 0 - 72
projects-service_1018/src/main/java/com/rtrh/projects/modules/notice/service/impl/NoticeServiceImpl.java

@@ -1,72 +0,0 @@
-package com.rtrh.projects.modules.notice.service.impl;
-
-import java.util.Date;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import com.rtrh.common.util.Identities;
-import com.rtrh.common.util.StringUtil;
-import com.rtrh.core.repository.Page;
-import com.rtrh.projects.modules.notice.dao.NoticeDao;
-import com.rtrh.projects.modules.notice.po.NoticePO;
-import com.rtrh.projects.modules.notice.service.NoticeService;
-import com.rtrh.projects.modules.system.vo.LoginUserVO;
-
-@Service
-public class NoticeServiceImpl implements NoticeService {
-
-	@Autowired
-	private NoticeDao noticeDao;
-	
-	@Override
-	public Page pageQuery(Page page, Boolean publish, String title) {
-
-		return noticeDao.pageQueryData(page, publish, title);
-	}
-
-	@Override
-	public Page pageQueryShow(Page page) {
-
-		return noticeDao.pageQueryShow(page);
-	}
-
-	@Override
-	public NoticePO getById(String id) {
-		
-		return noticeDao.findById(id);
-	}
-
-	@Override
-	public void saveOrUpate(NoticePO po, LoginUserVO vo) {
-		if(StringUtil.isEmpty(po.getId())) {
-			po.setId(Identities.uuid());
-			po.setCreateTime(new Date());
-			po.setCreateUserId(vo.getId());
-		}
-		po.setPublish(false);
-		po.setLastUpdateTime(new Date());
-		po.setLastUpdateUserId(vo.getId());
-		noticeDao.saveOrUpdate(po);
-	}
-
-	@Override
-	public void changePublish(String id) {
-		NoticePO po = noticeDao.findById(id);
-		po.setPublish(!po.getPublish());
-		if(po.getPublish()) {
-			po.setPublishDate(new Date());
-		} else {
-			po.setPublishDate(null);
-		}
-		noticeDao.update(po);
-	}
-
-	@Override
-	public void del(String id) {
-		NoticePO po = noticeDao.findById(id);
-		po.setLogicDeleteFlag(1);
-		noticeDao.update(po);
-	}
-
-}

+ 0 - 65
projects-service_1018/src/main/java/com/rtrh/projects/modules/outApi/vo/StaticsQueryVO.java

@@ -1,65 +0,0 @@
-package com.rtrh.projects.modules.outApi.vo;
-
-import lombok.Getter;
-
-import lombok.Setter;
-
-@Setter
-@Getter
-public class StaticsQueryVO {
-
-	/**
-	 * 年度
-	 */
-	private String year;
-	/**
-	 * 建设地点
-	 */
-	private String subjectId;
-	/**
-	 * 项目类型
-	 */
-	private String kind;
-	/**
-	 * 建设性质
-	 */
-	private String propKind;
-	/**
-	 * 是否隐藏
-	 */
-	private Boolean isHide;
-
-	//========年度投资分析用start======
-
-	/**
-	 * 亿元项目
-	 */
-	private String yType;
-
-	/**
-	 * 资金来源
-	 */
-	private String zjly;
-
-	/**
-	 * 所属行业
-	 */
-	private String hyfl;
-
-	/**
-	 * 模式
-	 */
-	private String mode;
-
-	/**
-	 * 1-同比 2-环比
-	 */
-	private String kindType;
-
-	//========年度投资分析用end======
-
-	/**
-	 * 用于区分是否 APP   1为 App
-	 */
-	//private String isApp;
-}

+ 0 - 11
projects-service_1018/src/main/java/com/rtrh/projects/modules/policy/dao/PolicyDocumentColumnDao.java

@@ -1,11 +0,0 @@
-package com.rtrh.projects.modules.policy.dao;
-
-import org.springframework.stereotype.Service;
-
-import com.rtrh.core.repository.hibernate.EntityServiceImpl;
-import com.rtrh.projects.modules.policy.po.PolicyDocumentColumn;
-
-@Service
-public class PolicyDocumentColumnDao extends EntityServiceImpl<PolicyDocumentColumn> {
-
-}

+ 0 - 15
projects-service_1018/src/main/java/com/rtrh/projects/modules/policy/dao/PolicyDocumentDao.java

@@ -1,15 +0,0 @@
-package com.rtrh.projects.modules.policy.dao;
-
-import org.springframework.stereotype.Service;
-
-import com.rtrh.core.repository.hibernate.EntityServiceImpl;
-import com.rtrh.projects.modules.policy.po.PolicyDocumentPO;
-
-@Service
-public class PolicyDocumentDao extends EntityServiceImpl<PolicyDocumentPO> {
-
-	public Long countOfcolumn(String columnId) {
-		String hql = "FROM PolicyDocumentPO WHERE logicDeleteFlag = 0 AND columnId = ? ";
-		return getCount(hql, columnId);
-	}
-}

Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików