Sfoglia il codice sorgente

Merge remote-tracking branch 'origin/dev' into dev

dev
cailu 2 anni fa
parent
commit
7d825fb26c
39 ha cambiato i file con 1362 aggiunte e 54 eliminazioni
  1. +0
    -1
      1068-yexiu-read-model-mybatis/1068-yexiu-read-model-mybatis.iml
  2. +17
    -0
      1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/dao/ArticlePreviewContentDao.java
  3. +9
    -0
      1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/dao/CopywritingDao.java
  4. +9
    -0
      1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/dao/UnitUserDao.java
  5. +9
    -0
      1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/dao/readonly/CopywritingDaoRO.java
  6. +9
    -0
      1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/dao/readonly/UnitUserDaoRO.java
  7. +2
    -0
      1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/ArticlePreviewContentEntity.java
  8. +9
    -7
      1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/ArticlePreviewEntity.java
  9. +2
    -0
      1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/ArticlePreviewProjectEntity.java
  10. +2
    -0
      1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/ArticlePreviewSpreadEntity.java
  11. +48
    -0
      1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/CopywritingEntity.java
  12. +34
    -0
      1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/UnitUserEntity.java
  13. +59
    -0
      1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/readonly/CopywritingEntityRO.java
  14. +8
    -8
      1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/readonly/CostUnitEntityRO.java
  15. +40
    -0
      1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/readonly/UnitUserEntityRO.java
  16. +45
    -0
      2068-yexiu-read-api/src/main/java/com/yuexiu/secp/read/dto/ArticlePreviewQueryDto.java
  17. +9
    -7
      2068-yexiu-read-api/src/main/java/com/yuexiu/secp/read/dto/ArticlePreviewSaveDto.java
  18. +38
    -0
      2068-yexiu-read-api/src/main/java/com/yuexiu/secp/read/dto/CopywritingDto.java
  19. +3
    -2
      2068-yexiu-read-api/src/main/java/com/yuexiu/secp/read/dto/CostUnitDto.java
  20. +24
    -0
      2068-yexiu-read-api/src/main/java/com/yuexiu/secp/read/dto/UnitUserDto.java
  21. +81
    -8
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/controller/ArticlePreviewController.java
  22. +99
    -0
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/controller/CopywritingController.java
  23. +26
    -0
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/controller/CostUnitController.java
  24. +99
    -0
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/controller/UnitUserController.java
  25. +1
    -1
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/infra/config/Swagger2Config.java
  26. +37
    -5
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/IArticlePreview.java
  27. +9
    -0
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/IArticlePreviewContent.java
  28. +10
    -0
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/IArticlePreviewProject.java
  29. +10
    -0
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/IArticlePreviewSpread.java
  30. +20
    -0
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/ICopywriting.java
  31. +20
    -0
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/IUnitUser.java
  32. +16
    -0
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/impl/ArticlePreviewContentServer.java
  33. +19
    -0
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/impl/ArticlePreviewProjectServer.java
  34. +194
    -14
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/impl/ArticlePreviewServer.java
  35. +18
    -0
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/impl/ArticlePreviewSpreadServer.java
  36. +57
    -0
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/impl/CopywritingServer.java
  37. +2
    -1
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/impl/CostUnitServer.java
  38. +42
    -0
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/impl/UnitUserServer.java
  39. +226
    -0
      2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/util/DateUtil.java

+ 0
- 1
1068-yexiu-read-model-mybatis/1068-yexiu-read-model-mybatis.iml Vedi File

@@ -9,7 +9,6 @@
<factory-entry name="1068-yexiu-read-model-mybatis" />
<factory-entry name="Entities" />
</datasource-mapping>
<naming-strategy-map />
</configuration>
</facet>
<facet type="Spring" name="Spring">


+ 17
- 0
1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/dao/ArticlePreviewContentDao.java Vedi File

@@ -8,4 +8,21 @@ import org.springframework.stereotype.Component;
@Component("ArticlePreviewContentDao")
public interface ArticlePreviewContentDao extends BaseCommonDAO_HI<ArticlePreviewContentEntity> {

/**
* 根据文章任务id查询文章正文
*
* @param articlePreviewId 文章任务id
* @return
*/
@Select("select preview_content_id,article_preview_id,article_content from yxh_article_preview_content where " +
"article_preview_id = " +
"#{articlePreviewId," +
"jdbcType=BIGINT}")
ArticlePreviewContentEntity selectByArticlePreviewId(Long articlePreviewId);

@Select("update yxh_article_preview_content set article_content = #{articleContent,jdbcType=VARCHAR} where " +
"article_preview_id = " +
"#{articlePreviewId," +
"jdbcType=BIGINT}")
int updateByArticlePreviewId(String articleContent, Long articlePreviewId);
}

+ 9
- 0
1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/dao/CopywritingDao.java Vedi File

@@ -0,0 +1,9 @@
package com.yuexiu.secp.read.model.dao;

import com.sie.iot.common.model.dao.BaseCommonDAO_HI;
import com.yuexiu.secp.read.model.entities.CopywritingEntity;
import org.springframework.stereotype.Component;

@Component("copywritingDao")
public interface CopywritingDao extends BaseCommonDAO_HI<CopywritingEntity> {
}

+ 9
- 0
1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/dao/UnitUserDao.java Vedi File

@@ -0,0 +1,9 @@
package com.yuexiu.secp.read.model.dao;

import com.sie.iot.common.model.dao.BaseCommonDAO_HI;
import com.yuexiu.secp.read.model.entities.UnitUserEntity;
import org.springframework.stereotype.Component;

@Component("unitUserDao")
public interface UnitUserDao extends BaseCommonDAO_HI<UnitUserEntity> {
}

+ 9
- 0
1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/dao/readonly/CopywritingDaoRO.java Vedi File

@@ -0,0 +1,9 @@
package com.yuexiu.secp.read.model.dao.readonly;

import com.siefw.hibernate.core.dao.DynamicViewObjectImpl;
import com.yuexiu.secp.read.model.entities.readonly.CopywritingEntityRO;
import org.springframework.stereotype.Component;

@Component("copywritingDaoRO")
public interface CopywritingDaoRO extends DynamicViewObjectImpl<CopywritingEntityRO> {
}

+ 9
- 0
1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/dao/readonly/UnitUserDaoRO.java Vedi File

@@ -0,0 +1,9 @@
package com.yuexiu.secp.read.model.dao.readonly;

import com.siefw.hibernate.core.dao.DynamicViewObjectImpl;
import com.yuexiu.secp.read.model.entities.readonly.UnitUserEntityRO;
import org.springframework.stereotype.Component;

@Component("unitUserDaoRO")
public interface UnitUserDaoRO extends DynamicViewObjectImpl<UnitUserEntityRO> {
}

+ 2
- 0
1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/ArticlePreviewContentEntity.java Vedi File

@@ -25,4 +25,6 @@ public class ArticlePreviewContentEntity extends BaseEntity<ArticlePreviewConten
private String articleContent;
@ApiModelProperty(value = "租户id")
private Long tenantId;
@ApiModelProperty(value = "版本号")
private Long versionNum;
}

+ 9
- 7
1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/ArticlePreviewEntity.java Vedi File

@@ -14,11 +14,11 @@ import java.io.Serializable;
import java.util.Date;

@Data
@TableName("yx_article_preview")
@TableName("yxh_article_preview")
@GeneratedKeyValue
@ApiModel(value = "文章预览表")
public class ArticlePreviewEntity extends BaseEntity<ArticlePreviewEntity> implements Serializable{
@TableId(value = "cost_unit_id", type = IdType.ASSIGN_ID)
@TableId(value = "article_preview_id", type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "文章预览id")
private Long articlePreviewId;
@ApiModelProperty(value = "文章任务id")
@@ -36,15 +36,15 @@ public class ArticlePreviewEntity extends BaseEntity<ArticlePreviewEntity> imple
@ApiModelProperty(value = "转发限制:1过期可推,2过期不可推")
private Integer shareType;
@ApiModelProperty(value = "建议文案1")
private String copyWrite1;
private String copywrite1;
@ApiModelProperty(value = "建议文案2")
private String copyWrite2;
private String copywrite2;
@ApiModelProperty(value = "建议文案3")
private String copyWrite3;
private String copywrite3;
@ApiModelProperty(value = "建议文案4")
private String copyWrite4;
private String copywrite4;
@ApiModelProperty(value = "建议文案5")
private String copyWrite5;
private String copywrite5;
@ApiModelProperty(value = "分享摘要")
private String shareTitle;
@ApiModelProperty(value = "分享小图")
@@ -85,4 +85,6 @@ public class ArticlePreviewEntity extends BaseEntity<ArticlePreviewEntity> imple
private String codeImg;
@ApiModelProperty(value = "租户id")
private Long tenantId;
@ApiModelProperty(value = "版本号")
private Long versionNum;
}

+ 2
- 0
1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/ArticlePreviewProjectEntity.java Vedi File

@@ -35,4 +35,6 @@ public class ArticlePreviewProjectEntity extends BaseEntity<ArticlePreviewProjec
private String projectArea;
@ApiModelProperty(value = "租户id")
private Long tenantId;
@ApiModelProperty(value = "版本号")
private Long versionNum;
}

+ 2
- 0
1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/ArticlePreviewSpreadEntity.java Vedi File

@@ -31,4 +31,6 @@ public class ArticlePreviewSpreadEntity extends BaseEntity<ArticlePreviewSpreadE
private String spreadDesc;
@ApiModelProperty(value = "租户id")
private Long tenantId;
@ApiModelProperty(value = "版本号")
private Long versionNum;
}

+ 48
- 0
1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/CopywritingEntity.java Vedi File

@@ -0,0 +1,48 @@
package com.yuexiu.secp.read.model.entities;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sie.iot.common.idgenerate.GeneratedKeyValue;
import com.sie.iot.common.model.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

@Data
@TableName("yxh_copywriting")
@GeneratedKeyValue
@ApiModel(value = "文案维护")
public class CopywritingEntity extends BaseEntity<CopywritingEntity> implements Serializable {
@TableId(value = "copywriting_id", type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键id")
private Long copywritingId;
@ApiModelProperty(value = "文案标题")
private String copywritingTitle;
@ApiModelProperty(value = "文案作者")
private String copywritingAuthor;
@ApiModelProperty(value = "文案分类")
private Integer copywritingType;
@ApiModelProperty(value = "文案状态")
private Integer copywritingState;
@ApiModelProperty(value = "内容类型")
private Integer copywritingContentType;
@ApiModelProperty(value = "生效开始时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private Date takeBeginTime;
@ApiModelProperty(value = "生效结束时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private Date takeEndTime;
@ApiModelProperty(value = "提示样式图片")
private String tipsImg;
@ApiModelProperty(value = "文案概要")
private String copywritingOutline;
@ApiModelProperty(value = "文案内容")
private String copywritingConten;
@ApiModelProperty(value = "租户id")
private Long tenantId;
}

+ 34
- 0
1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/UnitUserEntity.java Vedi File

@@ -0,0 +1,34 @@
package com.yuexiu.secp.read.model.entities;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sie.iot.common.idgenerate.GeneratedKeyValue;
import com.sie.iot.common.model.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;

@Data
@TableName("yxh_unit_user")
@GeneratedKeyValue
@ApiModel(value = "成本单位授权")
public class UnitUserEntity extends BaseEntity<UnitUserEntity> implements Serializable {
@TableId(value = "unit_user_id", type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键id")
private Long unitUserId;
@ApiModelProperty(value = "成本单位id")
private Long costUnitId;
@ApiModelProperty(value = "成本单位名称")
private String unitName;
@ApiModelProperty(value = "员工id")
private Long userId;
@ApiModelProperty(value = "员工编码")
private String employeeCustomCode;
@ApiModelProperty(value = "员工名称")
private String psnName;
@ApiModelProperty(value = "租户id")
private Long tenantId;
}

+ 59
- 0
1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/readonly/CopywritingEntityRO.java Vedi File

@@ -0,0 +1,59 @@
package com.yuexiu.secp.read.model.entities.readonly;

import com.alibaba.fastjson.annotation.JSONField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

@Data
@ApiModel(value = "成本单位")
public class CopywritingEntityRO implements Serializable {

public static final String QUERY_SQL = " SELECT \n" +
" yc.copywriting_id as copywritingId,\n" +
" yc.copywriting_title as copywritingTitle,\n" +
" yc.copywriting_author as copywritingAuthor,\n" +
" yc.copywriting_type as copywritingType,\n" +
" yc.copywriting_state as copywritingState,\n" +
" yc.copywriting_content_type as copywritingContentType,\n" +
" yc.take_begin_time as takeBeginTime,\n" +
" yc.take_end_time as takeEndTime,\n" +
" yc.tips_img as tipsImg,\n" +
" yc.copywriting_outline as copywritingOutline,\n" +
" yc.copywriting_conten as copywritingConten,\n" +
" yc.tenant_id as tenantId\n" +
"FROM\n" +
" yxh_copywriting yc \n" +
"WHERE\n" +
" yc.delete_flag = 0 ";

@ApiModelProperty(value = "主键id")
private Long copywritingId;
@ApiModelProperty(value = "文案标题")
private String copywritingTitle;
@ApiModelProperty(value = "文案作者")
private String copywritingAuthor;
@ApiModelProperty(value = "文案分类")
private Integer copywritingType;
@ApiModelProperty(value = "文案状态")
private Integer copywritingState;
@ApiModelProperty(value = "内容类型")
private Integer copywritingContentType;
@ApiModelProperty(value = "生效开始时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private Date takeBeginTime;
@ApiModelProperty(value = "生效结束时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private Date takeEndTime;
@ApiModelProperty(value = "提示样式图片")
private String tipsImg;
@ApiModelProperty(value = "文案概要")
private String copywritingOutline;
@ApiModelProperty(value = "文案内容")
private String copywritingConten;
@ApiModelProperty(value = "租户id")
private Long tenantId;
}

+ 8
- 8
1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/readonly/CostUnitEntityRO.java Vedi File

@@ -10,19 +10,19 @@ import java.io.Serializable;
import java.util.Date;

@Data
@ApiModel(value = "成本单位")
@ApiModel(value = "文案维护")
public class CostUnitEntityRO implements Serializable {

public static final String QUERY_SQL = " SELECT\n" +
"scu.cost_unit_id,\n" +
"scu.unit_name,\n" +
"scu.tenant_id,\n" +
"scu.creation_date,\n" +
"scu.last_update_date\n" +
"ycu.cost_unit_id,\n" +
"ycu.unit_name,\n" +
"ycu.tenant_id,\n" +
"ycu.creation_date,\n" +
"ycu.last_update_date\n" +
"FROM\n" +
"sie_cost_unit scu \n" +
"yxh_cost_unit ycu \n" +
"WHERE\n" +
"scu.delete_flag = 0 ";
"ycu.delete_flag = 0 ";

@ApiModelProperty(value = "主键id")
private Long costUnitId;


+ 40
- 0
1068-yexiu-read-model-mybatis/src/main/java/com/yuexiu/secp/read/model/entities/readonly/UnitUserEntityRO.java Vedi File

@@ -0,0 +1,40 @@
package com.yuexiu.secp.read.model.entities.readonly;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;

@Data
@ApiModel(value = "成本单位授权")
public class UnitUserEntityRO implements Serializable {

public static final String QUERY_SQL = " SELECT \n" +
" yuu.unit_user_id as unitUserId,\n" +
" yuu.cost_unit_id as costUnitId,\n" +
" yuu.unit_name as unitName,\n" +
" yuu.user_id as userId,\n" +
" yuu.employee_custom_code as employeeCustomCode,\n" +
" yuu.psn_name as psnName,\n" +
" yuu.tenant_id as tenantId\n" +
"FROM\n" +
" yxh_unit_user yuu \n" +
"WHERE\n" +
" yuu.delete_flag = 0 ";

@ApiModelProperty(value = "主键id")
private Long unitUserId;
@ApiModelProperty(value = "成本单位id")
private Long costUnitId;
@ApiModelProperty(value = "成本单位名称")
private String unitName;
@ApiModelProperty(value = "员工id")
private Long userId;
@ApiModelProperty(value = "员工编码")
private String employeeCustomCode;
@ApiModelProperty(value = "员工名称")
private String psnName;
@ApiModelProperty(value = "租户id")
private Long tenantId;
}

+ 45
- 0
2068-yexiu-read-api/src/main/java/com/yuexiu/secp/read/dto/ArticlePreviewQueryDto.java Vedi File

@@ -0,0 +1,45 @@
package com.yuexiu.secp.read.dto;


import com.alibaba.fastjson.annotation.JSONField;
import com.sie.iot.common.bean.ReqeustCommonDataBean;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

@Data
@ApiModel(value = "查询文章任务dto")
public class ArticlePreviewQueryDto extends ReqeustCommonDataBean {

@ApiModelProperty(value = "文章标题")
private String articleTitle;
@ApiModelProperty(value = "发布单位")
private String publishUnit;
@ApiModelProperty(value = "推广状态(1有效期内/2已过有效期/3未开始)")
private Integer promotionStatus;
@ApiModelProperty(value = "任务状态(1草稿/2待发布/3已发布/4已下架)")
private Integer taskStatus;
@ApiModelProperty(value = "查询使用,操作人")
private String oprator;
@ApiModelProperty(value = "推广开始时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private String spreadBeginTime;
@ApiModelProperty(value = "推广结束时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private String spreadEndTime;
@ApiModelProperty(value = "计划发布开始时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private String releaseBeginTime;
@ApiModelProperty(value = "计划发布结束时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private String releaseEndTime;
@ApiModelProperty(value = "实际发布开始时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private String releaseTaskBeginTime;
@ApiModelProperty(value = "实际发布结束时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private String releaseTaskEndTime;
}

2068-yexiu-read-api/src/main/java/com/yuexiu/secp/read/dto/ArticlePreviewDto.java → 2068-yexiu-read-api/src/main/java/com/yuexiu/secp/read/dto/ArticlePreviewSaveDto.java Vedi File

@@ -11,9 +11,11 @@ import java.util.Date;
import java.util.List;

@Data
@ApiModel(value = "新增文章任务")
public class ArticlePreviewDto extends ReqeustCommonDataBean {
@ApiModel(value = "新增/编辑文章任务")
public class ArticlePreviewSaveDto extends ReqeustCommonDataBean {

@ApiModelProperty(value = "文章任务id")
private Long articlePreviewId;
@ApiModelProperty(value = "发布单位")
private String publishUnit;
@ApiModelProperty(value = "文章类别")
@@ -22,15 +24,15 @@ public class ArticlePreviewDto extends ReqeustCommonDataBean {
private String articleTypeAlias;
@ApiModelProperty(value = "计划发布时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private Date releaseTime;
private String releaseTime;
@ApiModelProperty(value = "推广开始时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private Date spreadBeginTime;
private String spreadBeginTime;
@ApiModelProperty(value = "推广结束时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private Date spreadEndTime;
@ApiModelProperty(value = "发布状态(1草稿/2待发布")
private Integer publishStatus;
private String spreadEndTime;
@ApiModelProperty(value = "任务状态(1草稿/2待发布/3已发布/4已下架)")
private Integer taskStatus;
@ApiModelProperty(value = "建议推广人,1.按CDP标签选择;2.按部门;3.按项目;4.按CDP标签删除")
private String spreadType;
@ApiModelProperty(value = "建议推广人选部门或项目时,需要返回选择项")

+ 38
- 0
2068-yexiu-read-api/src/main/java/com/yuexiu/secp/read/dto/CopywritingDto.java Vedi File

@@ -0,0 +1,38 @@
package com.yuexiu.secp.read.dto;

import com.alibaba.fastjson.annotation.JSONField;
import com.sie.iot.common.bean.ReqeustCommonDataBean;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

@Data
@ApiModel(value = "文案")
public class CopywritingDto extends ReqeustCommonDataBean {
@ApiModelProperty(value = "主键id")
private Long copywritingId;
@ApiModelProperty(value = "文案标题")
private String copywritingTitle;
@ApiModelProperty(value = "文案作者")
private String copywritingAuthor;
@ApiModelProperty(value = "文案分类")
private Integer copywritingType;
@ApiModelProperty(value = "文案状态")
private Integer copywritingState;
@ApiModelProperty(value = "内容类型")
private Integer copywritingContentType;
@ApiModelProperty(value = "生效开始时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private Date takeBeginTime;
@ApiModelProperty(value = "生效结束时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private Date takeEndTime;
@ApiModelProperty(value = "提示样式图片")
private String tipsImg;
@ApiModelProperty(value = "文案概要")
private String copywritingOutline;
@ApiModelProperty(value = "文案内容")
private String copywritingConten;
}

+ 3
- 2
2068-yexiu-read-api/src/main/java/com/yuexiu/secp/read/dto/CostUnitDto.java Vedi File

@@ -14,6 +14,7 @@ public class CostUnitDto extends ReqeustCommonDataBean {
private Long costUnitId;
@ApiModelProperty(value = "成本单位名称")
private String unitName;
@ApiModelProperty(value = "租户id")
private Long tenantId;

@ApiModelProperty(value = "id以逗号分隔")
private String ids;
}

+ 24
- 0
2068-yexiu-read-api/src/main/java/com/yuexiu/secp/read/dto/UnitUserDto.java Vedi File

@@ -0,0 +1,24 @@
package com.yuexiu.secp.read.dto;

import com.sie.iot.common.bean.ReqeustCommonDataBean;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

@Data
@ApiModel(value = "成本单位授权")
public class UnitUserDto extends ReqeustCommonDataBean {

@ApiModelProperty(value = "主键id")
private Long unitUserId;
@ApiModelProperty(value = "成本单位id")
private Long costUnitId;
@ApiModelProperty(value = "成本单位名称")
private String unitName;
@ApiModelProperty(value = "员工id")
private Long userId;
@ApiModelProperty(value = "员工编码")
private String employeeCustomCode;
@ApiModelProperty(value = "员工名称")
private String psnName;
}

+ 81
- 8
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/controller/ArticlePreviewController.java Vedi File

@@ -1,40 +1,113 @@
package com.yuexiu.secp.read.controller;

import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSONObject;
import com.sie.iot.common.bean.PaginationRequestData;
import com.sie.iot.common.bean.RequestData;
import com.sie.iot.common.bean.ResponseData;
import com.sie.iot.common.iotenum.ResponseMsgCode;
import com.sie.iot.common.model.inter.IBaseCommon;
import com.sie.iot.common.secure.annotation.CheckToken;
import com.sie.iot.common.services.CommonAbstractService;
import com.yuexiu.secp.read.dto.ArticlePreviewDto;
import com.siefw.hibernate.core.paging.Pagination;
import com.yuexiu.secp.read.dto.ArticlePreviewQueryDto;
import com.yuexiu.secp.read.dto.ArticlePreviewSaveDto;
import com.yuexiu.secp.read.dto.CostUnitDto;
import com.yuexiu.secp.read.model.entities.ArticlePreviewEntity;
import com.yuexiu.secp.read.model.entities.CostUnitEntity;
import com.yuexiu.secp.read.model.service.IArticlePreview;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

@RestController
@RequestMapping("/read/article/preview")
@Api(value = "阅读有礼-预览", tags = "阅读有礼-预览")
public class ArticlePreviewController extends CommonAbstractService {


@Autowired
private IArticlePreview iReadService;

@Override
public IBaseCommon<?> getBaseCommonServer() {
return this.iReadService;
return this.iReadService;
}

@ApiOperation(value = "分页查询文章任务", notes = "分页文章任务")
@PostMapping(value = "/findPagination")
@CheckToken
public ResponseData<Pagination<ArticlePreviewEntity>> findPagination(@RequestBody PaginationRequestData<ArticlePreviewQueryDto> paginationRequestData) {
Integer pageIndex = paginationRequestData.getPageIndex();
Integer pageRows = paginationRequestData.getPageRows();
ArticlePreviewQueryDto articlePreviewQueryDto = paginationRequestData.getParams();
JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(articlePreviewQueryDto));
Pagination<ArticlePreviewEntity> pagination = iReadService.findPagination(jsonObject, pageIndex, pageRows, paginationRequestData.getOrderByBean());
return ResponseData.data(pagination);
}

@ApiOperation(value = "保存成本单位", notes = "保存成本单位")
@ApiOperation(value = "保存文章任务", notes = "保存文章任务")
@PostMapping(value = "/save")
@CheckToken
public ResponseData<ArticlePreviewEntity> save(@RequestBody RequestData<ArticlePreviewDto> requestData) {
ArticlePreviewDto articlePreviewDto = requestData.getParams();
public ResponseData<ArticlePreviewEntity> save(@RequestBody RequestData<ArticlePreviewSaveDto> requestData) {
ArticlePreviewSaveDto articlePreviewDto = requestData.getParams();
return ResponseData.data(iReadService.saveArticlePreview(articlePreviewDto));
}

getUserSessionBean().getUserId();
@ApiOperation(value = "更新文章任务", notes = "更新文章任务")
@PostMapping(value = "/update")
@CheckToken
public ResponseData<ArticlePreviewEntity> update(@RequestBody RequestData<ArticlePreviewSaveDto> requestData) {
ArticlePreviewSaveDto articlePreviewDto = requestData.getParams();
ArticlePreviewEntity articlePreviewEntity =
iReadService.getById(articlePreviewDto.getArticlePreviewId());
if (null != articlePreviewEntity) {
return ResponseData.data(iReadService.updateArticlePreview(articlePreviewDto));
} else {
return ResponseData.fail(ResponseMsgCode.UPDATE_DATA_NOT_EXIST.msgCode);
}
}

return ResponseData.data(iReadService.saveArticlePreview(articlePreviewDto));
@ApiOperation(value = "根据文章任务id查询相关信息", notes = "根据文章任务id查询相关信息")
@PostMapping(value = "/findByArticlePreviewId")
@CheckToken
public ResponseData<ArticlePreviewSaveDto> findByArticlePreviewId(@RequestParam Long articlePreviewId) {
ArticlePreviewSaveDto articlePreviewSaveDto = iReadService.findByArticlePreviewId(articlePreviewId);
return ResponseData.data(articlePreviewSaveDto);
}

@ApiOperation(value = "通过Id删除文章任务", notes = "通过Id删除文章任务")
@GetMapping(value = "/delete")
@CheckToken
public ResponseData deleteById(@RequestParam Long id) {
ArticlePreviewEntity articlePreviewEntity = iReadService.getById(id);
if (articlePreviewEntity != null) {
iReadService.deleteById(id);
}
return ResponseData.success();
}

@ApiOperation(value = "下架", notes = "下架")
@PostMapping(value = "/off-the-shelves")
// @CheckToken
public ResponseData offTheShelves(@RequestParam Long id) {

return ResponseData.success();
}

@ApiOperation(value = "发布", notes = "发布")
@PostMapping(value = "/release")
// @CheckToken
public ResponseData release(@RequestParam Long id) {

return ResponseData.success();
}

@ApiOperation(value = "重新发布", notes = "重新发布")
@PostMapping(value = "/re-release")
// @CheckToken
public ResponseData reRelease(@RequestParam Long id) {

return ResponseData.success();
}
}

+ 99
- 0
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/controller/CopywritingController.java Vedi File

@@ -0,0 +1,99 @@
package com.yuexiu.secp.read.controller;

import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSONObject;
import com.sie.iot.common.bean.PaginationRequestData;
import com.sie.iot.common.bean.RequestData;
import com.sie.iot.common.bean.ResponseData;
import com.sie.iot.common.iotenum.ResponseMsgCode;
import com.sie.iot.common.model.inter.IBaseCommon;
import com.sie.iot.common.secure.annotation.CheckToken;
import com.sie.iot.common.services.CommonAbstractService;
import com.siefw.hibernate.core.paging.Pagination;
import com.yuexiu.secp.read.dto.CopywritingDto;
import com.yuexiu.secp.read.model.entities.CopywritingEntity;
import com.yuexiu.secp.read.model.entities.readonly.CopywritingEntityRO;
import com.yuexiu.secp.read.model.service.ICopywriting;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;

@Validated
@Api(value = "文案维护", tags = "文案维护")
@RestController
@RequestMapping("/copywritingController")
public class CopywritingController extends CommonAbstractService {

@Autowired(required = true)
private ICopywriting copywritingServer;

@Override
public IBaseCommon<?> getBaseCommonServer() {
return this.copywritingServer;
}

@ApiOperation(value = "分页查询文案", notes = "分页文案")
@PostMapping(value = "/findPaginationRO")
@CheckToken
public ResponseData<Pagination<CopywritingEntityRO>> findPaginationRO(@RequestBody PaginationRequestData<CopywritingDto> paginationRequestData) {
Integer pageIndex = paginationRequestData.getPageIndex();
Integer pageRows = paginationRequestData.getPageRows();
CopywritingDto copywritingDto = paginationRequestData.getParams();
JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(copywritingDto));
Pagination<CopywritingEntityRO> pagination = copywritingServer.findPaginationRO(jsonObject, pageIndex, pageRows, paginationRequestData.getOrderByBean());
return ResponseData.data(pagination);
}

@ApiOperation(value = "根据id文案信息", notes = "根据id文案信息")
@GetMapping(value = "/findById")
@CheckToken
public ResponseData<CopywritingEntity> findById(Long id) {
CopywritingEntity copywritingEntity = copywritingServer.getById(id);
return ResponseData.data(copywritingEntity);
}

@ApiOperation(value = "保存文案", notes = "保存文案")
@PostMapping(value = "/save")
@CheckToken
public ResponseData<CopywritingEntity> save(@RequestBody RequestData<CopywritingDto> requestData) {
CopywritingDto copywritingDto = requestData.getParams();
CopywritingEntity copywritingEntity = JSONObject.parseObject(JSONObject.toJSONString(copywritingDto), CopywritingEntity.class);
//固定
copywritingEntity.setOperatorUserId(getUserSessionBean().getUserId());
copywritingEntity.setTenantId(getUserSessionBean().getTenantId());

copywritingServer.save(copywritingEntity);
return ResponseData.data(copywritingEntity);
}

@PostMapping(value = "/update")
@CheckToken
public ResponseData<CopywritingEntity> update(@RequestBody RequestData<CopywritingDto> requestData) {
CopywritingDto copywritingDto = requestData.getParams();
CopywritingEntity copywritingEntity = copywritingServer.getById(copywritingDto.getCopywritingId());
if (null != copywritingEntity) {
BeanUtil.copyProperties(copywritingDto, copywritingEntity);
//固定
copywritingEntity.setOperatorUserId(getUserSessionBean().getUserId());
} else {
return ResponseData.fail(ResponseMsgCode.UPDATE_DATA_NOT_EXIST.msgCode);
}
copywritingServer.update(copywritingEntity);
return ResponseData.data(copywritingEntity);
}

@ApiOperation(value = "通过Id删除文案", notes = "通过Id删除文案")
@GetMapping(value = "/delete")
@CheckToken
public ResponseData deleteById(@RequestParam Long id) {
CopywritingEntity copywritingEntity = copywritingServer.getById(id);
if (copywritingEntity != null) {
copywritingEntity.setDeleteFlag(1);
copywritingEntity.setOperatorUserId(getUserSessionBean().getUserId());
}
copywritingServer.update(copywritingEntity);
return ResponseData.success();
}
}

+ 26
- 0
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/controller/CostUnitController.java Vedi File

@@ -2,6 +2,7 @@ package com.yuexiu.secp.read.controller;


import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.sie.iot.common.bean.PaginationRequestData;
import com.sie.iot.common.bean.RequestData;
@@ -10,6 +11,7 @@ import com.sie.iot.common.iotenum.ResponseMsgCode;
import com.sie.iot.common.model.inter.IBaseCommon;
import com.sie.iot.common.secure.annotation.CheckToken;
import com.sie.iot.common.services.CommonAbstractService;
import com.sie.iot.component.exception.ParameterNotValidException;
import com.siefw.hibernate.core.paging.Pagination;
import com.yuexiu.secp.read.dto.CostUnitDto;
import com.yuexiu.secp.read.model.entities.CostUnitEntity;
@@ -21,6 +23,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;

import java.util.Arrays;
import java.util.List;

@Validated
@Api(value = "阅读有礼-成本单位", tags = "阅读有礼-成本单位")
@RestController
@@ -69,6 +74,7 @@ public class CostUnitController extends CommonAbstractService {
return ResponseData.data(costUnitEntity);
}

@ApiOperation(value = "修改成本单位", notes = "修改成本单位")
@PostMapping(value = "/update")
@CheckToken
public ResponseData<CostUnitEntity> update(@RequestBody RequestData<CostUnitDto> requestData) {
@@ -97,4 +103,24 @@ public class CostUnitController extends CommonAbstractService {
costUnitServer.update(costUnitEntity);
return ResponseData.success();
}

@ApiOperation(value = "批量删除成本单位", notes = "批量删除成本单位")
@PostMapping(value = "/deleteByIds")
@CheckToken
public ResponseData deleteByIds(@RequestBody RequestData<CostUnitDto> requestData) throws ParameterNotValidException {
CostUnitDto costUnitDto = requestData.getParams();
if(StrUtil.isEmpty(costUnitDto.getIds())){
throw new ParameterNotValidException();
}
List<String> idList = Arrays.asList(costUnitDto.getIds().split(","));
for (String id : idList) {
CostUnitEntity costUnitEntity = costUnitServer.getById(Long.parseLong(id));
if (costUnitEntity != null) {
costUnitEntity.setDeleteFlag(1);
costUnitEntity.setOperatorUserId(getUserSessionBean().getUserId());
}
costUnitServer.update(costUnitEntity);
}
return ResponseData.success();
}
}

+ 99
- 0
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/controller/UnitUserController.java Vedi File

@@ -0,0 +1,99 @@
package com.yuexiu.secp.read.controller;

import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSONObject;
import com.sie.iot.common.bean.PaginationRequestData;
import com.sie.iot.common.bean.RequestData;
import com.sie.iot.common.bean.ResponseData;
import com.sie.iot.common.iotenum.ResponseMsgCode;
import com.sie.iot.common.model.inter.IBaseCommon;
import com.sie.iot.common.secure.annotation.CheckToken;
import com.sie.iot.common.services.CommonAbstractService;
import com.siefw.hibernate.core.paging.Pagination;
import com.yuexiu.secp.read.dto.UnitUserDto;
import com.yuexiu.secp.read.model.entities.UnitUserEntity;
import com.yuexiu.secp.read.model.entities.readonly.UnitUserEntityRO;
import com.yuexiu.secp.read.model.service.IUnitUser;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;

@Validated
@Api(value = "成本单位授权", tags = "成本单位授权")
@RestController
@RequestMapping("/unitUserController")
public class UnitUserController extends CommonAbstractService {

@Autowired(required = true)
private IUnitUser unitUserServer;

@Override
public IBaseCommon<?> getBaseCommonServer() {
return this.unitUserServer;
}

@ApiOperation(value = "分页查询成本单位授权", notes = "分页成本单位授权")
@PostMapping(value = "/findPaginationRO")
@CheckToken
public ResponseData<Pagination<UnitUserEntityRO>> findPaginationRO(@RequestBody PaginationRequestData<UnitUserDto> paginationRequestData) {
Integer pageIndex = paginationRequestData.getPageIndex();
Integer pageRows = paginationRequestData.getPageRows();
UnitUserDto unitUserDto = paginationRequestData.getParams();
JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(unitUserDto));
Pagination<UnitUserEntityRO> pagination = unitUserServer.findPaginationRO(jsonObject, pageIndex, pageRows, paginationRequestData.getOrderByBean());
return ResponseData.data(pagination);
}

@ApiOperation(value = "根据id成本单位授权信息", notes = "根据id成本单位授权信息")
@GetMapping(value = "/findById")
@CheckToken
public ResponseData<UnitUserEntity> findById(Long id) {
UnitUserEntity unitUserEntity = unitUserServer.getById(id);
return ResponseData.data(unitUserEntity);
}

@ApiOperation(value = "保存成本单位授权", notes = "保存成本单位授权")
@PostMapping(value = "/save")
@CheckToken
public ResponseData<UnitUserEntity> save(@RequestBody RequestData<UnitUserDto> requestData) {
UnitUserDto unitUserDto = requestData.getParams();
UnitUserEntity unitUserEntity = JSONObject.parseObject(JSONObject.toJSONString(unitUserDto), UnitUserEntity.class);
//固定
unitUserEntity.setOperatorUserId(getUserSessionBean().getUserId());
unitUserEntity.setTenantId(getUserSessionBean().getTenantId());

unitUserServer.save(unitUserEntity);
return ResponseData.data(unitUserEntity);
}

@PostMapping(value = "/update")
@CheckToken
public ResponseData<UnitUserEntity> update(@RequestBody RequestData<UnitUserDto> requestData) {
UnitUserDto unitUserDto = requestData.getParams();
UnitUserEntity unitUserEntity = unitUserServer.getById(unitUserDto.getUnitUserId());
if (null != unitUserEntity) {
BeanUtil.copyProperties(unitUserDto, unitUserEntity);
//固定
unitUserEntity.setOperatorUserId(getUserSessionBean().getUserId());
} else {
return ResponseData.fail(ResponseMsgCode.UPDATE_DATA_NOT_EXIST.msgCode);
}
unitUserServer.update(unitUserEntity);
return ResponseData.data(unitUserEntity);
}

@ApiOperation(value = "通过Id删除成本单位授权", notes = "通过Id删除成本单位授权")
@GetMapping(value = "/delete")
@CheckToken
public ResponseData deleteById(@RequestParam Long id) {
UnitUserEntity unitUserEntity = unitUserServer.getById(id);
if (unitUserEntity != null) {
unitUserEntity.setDeleteFlag(1);
unitUserEntity.setOperatorUserId(getUserSessionBean().getUserId());
}
unitUserServer.update(unitUserEntity);
return ResponseData.success();
}
}

+ 1
- 1
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/infra/config/Swagger2Config.java Vedi File

@@ -52,7 +52,7 @@ public class Swagger2Config {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(basePackage("com.yuexiu.secp.interfaces.controller"))
.apis(basePackage("com.yuexiu.secp.read.controller"))
.paths(PathSelectors.any())
.build().enable(enableSwagger)
.globalOperationParameters(pars);


+ 37
- 5
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/IArticlePreview.java Vedi File

@@ -1,15 +1,47 @@
package com.yuexiu.secp.read.model.service;


import com.alibaba.fastjson.JSONObject;
import com.sie.iot.common.bean.OrderByBean;
import com.sie.iot.common.model.inter.IBaseCommon;
import com.yuexiu.secp.read.dto.ArticlePreviewDto;
import com.siefw.hibernate.core.paging.Pagination;
import com.yuexiu.secp.read.dto.ArticlePreviewSaveDto;
import com.yuexiu.secp.read.model.entities.ArticlePreviewEntity;
import com.yuexiu.secp.read.model.entities.CostUnitEntity;

public interface IArticlePreview extends IBaseCommon<CostUnitEntity> {
public interface IArticlePreview extends IBaseCommon<ArticlePreviewEntity> {

/**
* 新增文章任务
*
* @param dto
* @return
*/
ArticlePreviewEntity saveArticlePreview(ArticlePreviewSaveDto dto);

/**
* 编辑文章任务
*
* @param dto
* @return
*/
ArticlePreviewEntity updateArticlePreview(ArticlePreviewSaveDto dto);

/**
* 根据文章任务id查询相关信息
*
* @param previewId 文章任务id
* @return
*/
ArticlePreviewSaveDto findByArticlePreviewId(Long previewId);

/**
* 分页查询 部门列表
*
* @param jsonObject 条件参数
* @param pageIndex 第几页
* @param pageRows 每页数量
* @param orderByBean orderByBean
* @return
*/
Pagination<ArticlePreviewEntity> findPagination(JSONObject jsonObject, Integer pageIndex, Integer pageRows, OrderByBean orderByBean);

ArticlePreviewEntity saveArticlePreview(ArticlePreviewDto dto);
}

+ 9
- 0
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/IArticlePreviewContent.java Vedi File

@@ -0,0 +1,9 @@
package com.yuexiu.secp.read.model.service;


import com.sie.iot.common.model.inter.IBaseCommon;
import com.yuexiu.secp.read.model.entities.ArticlePreviewContentEntity;

public interface IArticlePreviewContent extends IBaseCommon<ArticlePreviewContentEntity> {

}

+ 10
- 0
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/IArticlePreviewProject.java Vedi File

@@ -0,0 +1,10 @@
package com.yuexiu.secp.read.model.service;


import com.sie.iot.common.model.inter.IBaseCommon;
import com.yuexiu.secp.read.model.entities.ArticlePreviewContentEntity;
import com.yuexiu.secp.read.model.entities.ArticlePreviewProjectEntity;

public interface IArticlePreviewProject extends IBaseCommon<ArticlePreviewProjectEntity> {

}

+ 10
- 0
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/IArticlePreviewSpread.java Vedi File

@@ -0,0 +1,10 @@
package com.yuexiu.secp.read.model.service;


import com.sie.iot.common.model.inter.IBaseCommon;
import com.yuexiu.secp.read.model.entities.ArticlePreviewProjectEntity;
import com.yuexiu.secp.read.model.entities.ArticlePreviewSpreadEntity;

public interface IArticlePreviewSpread extends IBaseCommon<ArticlePreviewSpreadEntity> {

}

+ 20
- 0
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/ICopywriting.java Vedi File

@@ -0,0 +1,20 @@
package com.yuexiu.secp.read.model.service;

import com.alibaba.fastjson.JSONObject;
import com.sie.iot.common.bean.OrderByBean;
import com.sie.iot.common.model.inter.IBaseCommon;
import com.siefw.hibernate.core.paging.Pagination;
import com.yuexiu.secp.read.model.entities.CopywritingEntity;
import com.yuexiu.secp.read.model.entities.readonly.CopywritingEntityRO;

public interface ICopywriting extends IBaseCommon<CopywritingEntity> {
/**
* 分页查询 文案
* @param jsonObject
* @param pageIndex
* @param pageRows
* @param orderByBean
* @return
*/
Pagination<CopywritingEntityRO> findPaginationRO(JSONObject jsonObject, Integer pageIndex, Integer pageRows, OrderByBean orderByBean);
}

+ 20
- 0
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/IUnitUser.java Vedi File

@@ -0,0 +1,20 @@
package com.yuexiu.secp.read.model.service;

import com.alibaba.fastjson.JSONObject;
import com.sie.iot.common.bean.OrderByBean;
import com.sie.iot.common.model.inter.IBaseCommon;
import com.siefw.hibernate.core.paging.Pagination;
import com.yuexiu.secp.read.model.entities.UnitUserEntity;
import com.yuexiu.secp.read.model.entities.readonly.UnitUserEntityRO;

public interface IUnitUser extends IBaseCommon<UnitUserEntity> {
/**
* 分页查询 成本单位授权
* @param jsonObject
* @param pageIndex
* @param pageRows
* @param orderByBean
* @return
*/
Pagination<UnitUserEntityRO> findPaginationRO(JSONObject jsonObject, Integer pageIndex, Integer pageRows, OrderByBean orderByBean);
}

+ 16
- 0
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/impl/ArticlePreviewContentServer.java Vedi File

@@ -0,0 +1,16 @@
package com.yuexiu.secp.read.model.service.impl;

import com.sie.iot.common.model.inter.server.BaseCommonServer;
import com.yuexiu.secp.read.model.entities.ArticlePreviewContentEntity;
import com.yuexiu.secp.read.model.service.IArticlePreviewContent;
import org.springframework.stereotype.Service;

/**
* @author YuChengLong
* @date 2022/5/10
*/

@Service
public class ArticlePreviewContentServer extends BaseCommonServer<ArticlePreviewContentEntity> implements IArticlePreviewContent {

}

+ 19
- 0
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/impl/ArticlePreviewProjectServer.java Vedi File

@@ -0,0 +1,19 @@
package com.yuexiu.secp.read.model.service.impl;

import com.sie.iot.common.model.inter.server.BaseCommonServer;
import com.yuexiu.secp.read.model.entities.ArticlePreviewContentEntity;
import com.yuexiu.secp.read.model.entities.ArticlePreviewEntity;
import com.yuexiu.secp.read.model.entities.ArticlePreviewProjectEntity;
import com.yuexiu.secp.read.model.service.IArticlePreviewContent;
import com.yuexiu.secp.read.model.service.IArticlePreviewProject;
import org.springframework.stereotype.Service;

/**
* @author YuChengLong
* @date 2022/5/10
*/

@Service
public class ArticlePreviewProjectServer extends BaseCommonServer<ArticlePreviewProjectEntity> implements IArticlePreviewProject {

}

+ 194
- 14
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/impl/ArticlePreviewServer.java Vedi File

@@ -1,22 +1,26 @@
package com.yuexiu.secp.read.model.service.impl;


import cn.hutool.core.bean.BeanUtil;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.common.collect.Iterables;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.sie.iot.common.bean.OrderByBean;
import com.sie.iot.common.model.inter.server.BaseCommonServer;
import com.sie.iot.common.util.SaafToolUtils;
import com.sie.iot.common.util.UserSessionHelper;
import com.yuexiu.secp.read.dto.RecommendDto;
import com.siefw.hibernate.core.paging.Pagination;
import com.yuexiu.secp.read.model.dao.ArticlePreviewContentDao;
import com.yuexiu.secp.read.model.dao.ArticlePreviewDao;
import com.yuexiu.secp.read.dto.ArticlePreviewDto;
import com.yuexiu.secp.read.dto.ArticlePreviewSaveDto;
import com.yuexiu.secp.read.model.entities.ArticlePreviewContentEntity;
import com.yuexiu.secp.read.model.entities.ArticlePreviewEntity;
import com.yuexiu.secp.read.model.entities.CostUnitEntity;
import com.yuexiu.secp.read.model.service.IArticlePreview;
import com.yuexiu.secp.read.model.service.IArticlePreviewContent;
import com.yuexiu.secp.read.util.DateUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.time.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import com.sie.iot.common.services.CommonAbstractService;

import java.util.*;

@@ -24,10 +28,9 @@ import java.util.*;
* @author YuChengLong
* @date 2022/5/10
*/
@Slf4j
@Service
public class ArticlePreviewServer extends BaseCommonServer<CostUnitEntity> implements IArticlePreview {

public class ArticlePreviewServer extends BaseCommonServer<ArticlePreviewEntity> implements IArticlePreview {

@Autowired
private StringRedisTemplate redisTemplate;
@@ -35,18 +38,195 @@ public class ArticlePreviewServer extends BaseCommonServer<CostUnitEntity> imple
@Autowired
private ArticlePreviewDao articlePreviewDao;

@Autowired
private ArticlePreviewContentDao articlePreviewContentDao;

@Override
public ArticlePreviewEntity saveArticlePreview(ArticlePreviewSaveDto dto) {

// TODO 需要加事务
ArticlePreviewEntity entity = new ArticlePreviewEntity();
BeanUtil.copyProperties(dto, entity);
//固定
entity.setOperatorUserId(1L);
entity.setTenantId(1L);
// entity.setOperatorUserId(UserSessionHelper.getCurrentSession().getUserId());
// entity.setTenantId(UserSessionHelper.getCurrentSession().getTenantId());
// 推广状态
Date now = new Date();
if (DateUtil.str2Time(dto.getSpreadBeginTime()).getTime() > now.getTime()) {
entity.setPromotionStatus(3);
} else if (DateUtil.str2Time(dto.getSpreadEndTime()).getTime() < now.getTime()) {
entity.setPromotionStatus(2);
} else if (DateUtil.str2Time(dto.getSpreadEndTime()).getTime() > now.getTime() && DateUtil.str2Time(dto.getSpreadBeginTime()).getTime() <= now.getTime()) {
entity.setPromotionStatus(1);
}
// 审批状态
entity.setApprovalStatus(1);

// 保存预览记录
entity = (ArticlePreviewEntity) this.save(entity);

long articlePreviewId = entity.getArticlePreviewId();
// 保存文章正文详情
ArticlePreviewContentEntity contentEntity = new ArticlePreviewContentEntity();
//固定
contentEntity.setOperatorUserId(1L);
contentEntity.setTenantId(1L);
contentEntity.setArticlePreviewId(articlePreviewId);
contentEntity.setArticleContent(dto.getArticleContent());

articlePreviewContentDao.save(contentEntity);

// 关联类型
// int placeOfOrigin = dto.getPlaceOfOrigin();
// TODO 根据类型去CDP查询相关信息,将得到的结果存入yxh_article_preview_project表中

// 推广人
// TODO 同上,需要去CDP查询相关信息

return entity;
}

@Override
public ArticlePreviewEntity saveArticlePreview(ArticlePreviewDto dto) {
public ArticlePreviewEntity updateArticlePreview(ArticlePreviewSaveDto dto) {

// TODO 需要加事务
ArticlePreviewEntity entity = new ArticlePreviewEntity();
BeanUtil.copyProperties(dto,entity);
BeanUtil.copyProperties(dto, entity);
//固定
entity.setOperatorUserId(1L);
entity.setTenantId(1L);
// entity.setOperatorUserId(UserSessionHelper.getCurrentSession().getUserId());
// entity.setTenantId(UserSessionHelper.getCurrentSession().getTenantId());
// 推广状态
Date now = new Date();
if (DateUtil.str2Time(dto.getSpreadBeginTime()).getTime() > now.getTime()) {
entity.setPromotionStatus(3);
} else if (DateUtil.str2Time(dto.getSpreadEndTime()).getTime() < now.getTime()) {
entity.setPromotionStatus(2);
} else if (DateUtil.str2Time(dto.getSpreadEndTime()).getTime() > now.getTime() && DateUtil.str2Time(dto.getSpreadBeginTime()).getTime() <= now.getTime()) {
entity.setPromotionStatus(1);
}
// 审批状态
entity.setApprovalStatus(1);

// 更新预览记录
this.update(entity);

long articlePreviewId = entity.getArticlePreviewId();
// 保存文章正文详情
ArticlePreviewContentEntity contentEntity = new ArticlePreviewContentEntity();
//固定
contentEntity.setOperatorUserId(1L);
contentEntity.setTenantId(1L);
contentEntity.setArticlePreviewId(articlePreviewId);
contentEntity.setArticleContent(dto.getArticleContent());

ArticlePreviewContentEntity articlePreviewContentEntity =
articlePreviewContentDao.selectByArticlePreviewId(articlePreviewId);
contentEntity.setPreviewContentId(articlePreviewContentEntity.getPreviewContentId());
articlePreviewContentDao.update(contentEntity);

// 关联类型
// int placeOfOrigin = dto.getPlaceOfOrigin();
// TODO 根据类型去CDP查询相关信息,将得到的结果存入yxh_article_preview_project表中

// 推广人
// TODO 同上,需要去CDP查询相关信息

return entity;
}

@Override
public ArticlePreviewSaveDto findByArticlePreviewId(Long previewId) {

ArticlePreviewSaveDto saveDto = new ArticlePreviewSaveDto();
// 查询文章预览基本信息
ArticlePreviewEntity articlePreviewEntity = articlePreviewDao.getById(previewId);
BeanUtil.copyProperties(articlePreviewEntity, saveDto);
// 查询文章正文内容
ArticlePreviewContentEntity articlePreviewContentEntity =
articlePreviewContentDao.selectByArticlePreviewId(previewId);
saveDto.setArticleContent(articlePreviewContentEntity.getArticleContent());
// TODO 查询文章推广人信息

// TODO 查询文章所属城市/项目
return saveDto;
}

@Override
public Pagination<ArticlePreviewEntity> findPagination(JSONObject jsonObject, Integer pageIndex, Integer pageRows, OrderByBean orderByBean) {
Map<String, Object> paramsMap = new HashMap<String, Object>();
StringBuffer querySQLSB = new StringBuffer("select * from yxh_article_preview where delete_flag = 0 ");

//通过标题查询
if (StrUtil.isNotEmpty(jsonObject.getString("articleTitle"))) {
SaafToolUtils.parperParam(jsonObject, "article_title", "articleTitle", querySQLSB, paramsMap, "like");
}

//通过发布单位查询
if (StrUtil.isNotEmpty(jsonObject.getString("publishUnit"))) {
SaafToolUtils.parperParam(jsonObject, "publish_unit", "publishUnit", querySQLSB, paramsMap, "like");
}

//通过推广状态查询
if (jsonObject.getLong("promotionStatus") != null) {
SaafToolUtils.parperParam(jsonObject, "promotion_status", "promotionStatus", querySQLSB, paramsMap, "=");
}

//通过任务状态查询
if (jsonObject.getLong("taskStatus") != null) {
SaafToolUtils.parperParam(jsonObject, "task_status", "taskStatus", querySQLSB, paramsMap, "=");
}

//通过操作人查询
if (StrUtil.isNotEmpty(jsonObject.getString("oprator"))) {
// TODO 需要根据用户名查出userId,再去查询created_by
SaafToolUtils.parperParam(jsonObject, "created_by", "oprator", querySQLSB, paramsMap, "like");
}

//通过推广有效期查询
if (!StrUtil.isBlank(jsonObject.getString("spreadBeginTime"))) {
querySQLSB.append(" and ((spread_begin_time between :spreadBeginTime and :spreadEndTime) or " +
"(spread_end_time between :spreadBeginTime and :spreadEndTime) or " +
"(spread_begin_time <= :spreadBeginTime and spread_end_time >= :spreadEndTime))");
paramsMap.put("spreadBeginTime", jsonObject.getDate("spreadBeginTime"));
paramsMap.put("spreadEndTime", jsonObject.getDate("spreadEndTime"));
paramsMap.put("spreadBeginTime", jsonObject.getDate("spreadBeginTime"));
paramsMap.put("spreadEndTime", jsonObject.getDate("spreadEndTime"));
paramsMap.put("spreadBeginTime", jsonObject.getDate("spreadBeginTime"));
paramsMap.put("spreadEndTime", jsonObject.getDate("spreadEndTime"));
}

// 通过计划发布时间查询
if (!StrUtil.isBlank(jsonObject.getString("releaseBeginTime"))) {
paramsMap.put("releaseBeginTime", jsonObject.getDate("releaseBeginTime"));
querySQLSB.append(" and release_time >= :releaseBeginTime ");
}
if (!StrUtil.isBlank(jsonObject.getString("releaseEndTime"))) {
paramsMap.put("releaseEndTime", jsonObject.getDate("releaseEndTime"));
querySQLSB.append(" and release_time <= :releaseEndTime ");
}

// 通过实际发布时间查询
if (!StrUtil.isBlank(jsonObject.getString("releaseTaskBeginTime"))) {
paramsMap.put("releaseTaskBeginTime", jsonObject.getDate("releaseTaskBeginTime"));
querySQLSB.append(" and release_task_time >= :releaseTaskBeginTime ");
}
if (!StrUtil.isBlank(jsonObject.getString("releaseTaskEndTime"))) {
paramsMap.put("releaseTaskEndTime", jsonObject.getDate("releaseTaskEndTime"));
querySQLSB.append(" and release_task_time <= :releaseTaskEndTime ");
}

if (orderByBean == null) {
orderByBean = new OrderByBean();
orderByBean.setAttributeName("creation_date");
orderByBean.setSortType("desc");
}

SaafToolUtils.sortUtil(orderByBean, querySQLSB);
return articlePreviewDao.findPagination(querySQLSB.toString(), paramsMap, pageIndex, pageRows);
}

}

+ 18
- 0
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/impl/ArticlePreviewSpreadServer.java Vedi File

@@ -0,0 +1,18 @@
package com.yuexiu.secp.read.model.service.impl;

import com.sie.iot.common.model.inter.server.BaseCommonServer;
import com.yuexiu.secp.read.model.entities.ArticlePreviewProjectEntity;
import com.yuexiu.secp.read.model.entities.ArticlePreviewSpreadEntity;
import com.yuexiu.secp.read.model.service.IArticlePreviewProject;
import com.yuexiu.secp.read.model.service.IArticlePreviewSpread;
import org.springframework.stereotype.Service;

/**
* @author YuChengLong
* @date 2022/5/10
*/

@Service
public class ArticlePreviewSpreadServer extends BaseCommonServer<ArticlePreviewSpreadEntity> implements IArticlePreviewSpread {

}

+ 57
- 0
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/impl/CopywritingServer.java Vedi File

@@ -0,0 +1,57 @@
package com.yuexiu.secp.read.model.service.impl;

import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.sie.iot.common.bean.OrderByBean;
import com.sie.iot.common.model.inter.server.BaseCommonServer;
import com.sie.iot.common.util.SaafToolUtils;
import com.siefw.hibernate.core.dao.ViewObject;
import com.siefw.hibernate.core.paging.Pagination;
import com.yuexiu.secp.read.model.dao.readonly.CopywritingDaoRO;
import com.yuexiu.secp.read.model.entities.CopywritingEntity;
import com.yuexiu.secp.read.model.entities.readonly.CopywritingEntityRO;
import com.yuexiu.secp.read.model.service.ICopywriting;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.util.HashMap;
import java.util.Map;

@Component("copywritingServer")
public class CopywritingServer extends BaseCommonServer<CopywritingEntity> implements ICopywriting {
@Autowired
private ViewObject<CopywritingEntity> copywritingDao;
@Autowired
private CopywritingDaoRO copywritingDaoRO;

/**
* 分页查询 文案
* @param jsonObject
* @param pageIndex
* @param pageRows
* @param orderByBean
* @return
*/
@Override
public Pagination<CopywritingEntityRO> findPaginationRO(JSONObject jsonObject, Integer pageIndex, Integer pageRows, OrderByBean orderByBean) {
Map<String, Object> paramsMap = new HashMap<String, Object>();
StringBuffer querySQL = new StringBuffer(CopywritingEntityRO.QUERY_SQL);

//通过 文案标题 模糊查询
if (StrUtil.isNotEmpty(jsonObject.getString("copywritingTitle"))) {
SaafToolUtils.parperParam(jsonObject, "yc.copywriting_title", "copywritingTitle", querySQL, paramsMap, "like");
}
//通过 文案作者 模糊查询
if (StrUtil.isNotEmpty(jsonObject.getString("copywritingAuthor"))) {
SaafToolUtils.parperParam(jsonObject, "yc.copywriting_author", "copywritingAuthor", querySQL, paramsMap, "like");
}
//通过 文案状态 查询
if (StrUtil.isNotEmpty(jsonObject.getString("copywritingState"))) {
SaafToolUtils.parperParam(jsonObject, "yc.copywriting_state", "copywritingState", querySQL, paramsMap, "=");
}

SaafToolUtils.sortUtil(orderByBean, querySQL);
return copywritingDaoRO.findPagination(querySQL.toString(), paramsMap, pageIndex, pageRows);
}

}

+ 2
- 1
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/impl/CostUnitServer.java Vedi File

@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONObject;
import com.sie.iot.common.bean.OrderByBean;
import com.sie.iot.common.model.inter.server.BaseCommonServer;
import com.sie.iot.common.util.SaafToolUtils;
import com.siefw.base.utils.SToolUtils;
import com.siefw.hibernate.core.dao.ViewObject;
import com.siefw.hibernate.core.paging.Pagination;
import com.yuexiu.secp.read.model.dao.readonly.CostUnitDaoRO;
@@ -39,7 +40,7 @@ public class CostUnitServer extends BaseCommonServer<CostUnitEntity> implements

//通过 成本单位名称 模糊查询
if (StrUtil.isNotEmpty(jsonObject.getString("unitName"))) {
SaafToolUtils.parperParam(jsonObject, "dept.unit_name", "unitName", querySQL, paramsMap, "like");
SaafToolUtils.parperParam(jsonObject, "ycu.unit_name", "unitName", querySQL, paramsMap, "like");
}

SaafToolUtils.sortUtil(orderByBean, querySQL);


+ 42
- 0
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/model/service/impl/UnitUserServer.java Vedi File

@@ -0,0 +1,42 @@
package com.yuexiu.secp.read.model.service.impl;

import com.alibaba.fastjson.JSONObject;
import com.sie.iot.common.bean.OrderByBean;
import com.sie.iot.common.model.inter.server.BaseCommonServer;
import com.sie.iot.common.util.SaafToolUtils;
import com.siefw.hibernate.core.dao.ViewObject;
import com.siefw.hibernate.core.paging.Pagination;
import com.yuexiu.secp.read.model.dao.readonly.UnitUserDaoRO;
import com.yuexiu.secp.read.model.entities.UnitUserEntity;
import com.yuexiu.secp.read.model.entities.readonly.UnitUserEntityRO;
import com.yuexiu.secp.read.model.service.IUnitUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.util.HashMap;
import java.util.Map;

@Component("unitUserServer")
public class UnitUserServer extends BaseCommonServer<UnitUserEntity> implements IUnitUser {
@Autowired
private ViewObject<UnitUserEntity> unitUserDao;
@Autowired
private UnitUserDaoRO unitUserDaoRO;

/**
* 分页查询 成本单位授权
* @param jsonObject
* @param pageIndex
* @param pageRows
* @param orderByBean
* @return
*/
@Override
public Pagination<UnitUserEntityRO> findPaginationRO(JSONObject jsonObject, Integer pageIndex, Integer pageRows, OrderByBean orderByBean) {
Map<String, Object> paramsMap = new HashMap<String, Object>();
StringBuffer querySQL = new StringBuffer(UnitUserEntityRO.QUERY_SQL);

SaafToolUtils.sortUtil(orderByBean, querySQL);
return unitUserDaoRO.findPagination(querySQL.toString(), paramsMap, pageIndex, pageRows);
}
}

+ 226
- 0
2068-yexiu-read-application/src/main/java/com/yuexiu/secp/read/util/DateUtil.java Vedi File

@@ -0,0 +1,226 @@
package com.yuexiu.secp.read.util;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;

/**
* @author YuChengLong
* @date 2022/5/10
*/
public class DateUtil {

public static final String DATE_FORMAT_YY_MM_DD = "yyyy-MM-dd";

public static final String DATE_FORMAT_YY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss";

private static SimpleDateFormat sdf_date_format = new SimpleDateFormat(DATE_FORMAT_YY_MM_DD);
private static SimpleDateFormat sdf_time_format = new SimpleDateFormat(DATE_FORMAT_YY_MM_DD_HH_MM_SS);

/**
* java 获取月周
*/
public static Integer getDateOfWeek(String data) {
Calendar calendar = Calendar.getInstance();
calendar.setFirstDayOfWeek(Calendar.SUNDAY);// 设置星期一为一周开始的第一天
// calendar.setMinimalDaysInFirstWeek(4);//可以不用设置
calendar.setTime(DateUtil.str2Date(data));// 获得当前的时间戳
return calendar.get(Calendar.WEEK_OF_YEAR);
}

/**
* 获取当前日期的上一个月
*/
public static Date getLastMonth(Date date) {
Calendar c = Calendar.getInstance();
c.setTime(date);
c.add(Calendar.MONTH, -1);
return c.getTime();
}

/**
* 获取当前日期的下一个月的日期(下个月日期不能超过2月29)
*
* @param date 输入日期
* @return
*/
public static Date getNextMonth(Date date) {
Calendar c = Calendar.getInstance();
c.setTime(new Date());
c.add(Calendar.MONTH, -1);
return c.getTime();
}

/**
* 获取当前日期是当年的第几周
*
* @param date 日期
* @return
*/
public static Integer getWeekOfYear(Date date) {
Calendar calendar = Calendar.getInstance();
calendar.setFirstDayOfWeek(Calendar.SUNDAY);
calendar.setTime(date);
return calendar.get(Calendar.WEEK_OF_YEAR);
}

/**
* 根据日期获取该天星期几
*
* @param date 日期
* @return
*/
public static String getWeek(Date date) {
String[] weeks = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
Calendar cal = Calendar.getInstance();
cal.setTime(date);
int week_index = cal.get(Calendar.DAY_OF_WEEK) - 1;
if (week_index < 0) {
week_index = 0;
}
return weeks[week_index];
}

/**
* 根据输入日期获取今天是周几(数值: 1 2 3 4 5 6 7)
*
* @param date 输入日期
* @return 周几(数值)
*/
public static int getWeek1(Date date) {
int[] weeks = {7, 1, 2, 3, 4, 5, 6};
Calendar cal = Calendar.getInstance();
cal.setTime(date);
int week_index = cal.get(Calendar.DAY_OF_WEEK) - 1;
if (week_index < 0) {
week_index = 0;
}
return weeks[week_index];
}

/**
* 获取指定日期的过去第past天的日期
*/
public static Date getPastDate(Date date, int past) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DATE, -past);
return calendar.getTime();
}

/**
* 获取指定日期的之后第past天的日期
*/
public static Date getLaterDate(Date date, int past) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DATE, past);
return calendar.getTime();
}

/**
* 获取指定日期的字符串之后第past天的日期字符串
*/
public static String getLaterDateStr(String date, int past) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(str2Date(date));
calendar.add(Calendar.DATE, past);
return date2Str(calendar.getTime());
}

/**
* 给时间加上几个小时
*
* @param hour 需要加的时间
* @return
*/
public static Date dateAddHours(Date date, int hour) {
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.HOUR, hour);// 24小时制
date = cal.getTime();
return date;

}

/**
* 字符串格式转换time
*
* @param date
* @return
*/
public static Date str2Time(String date) {
Date result = null;
try {
result = sdf_time_format.parse(date);
} catch (ParseException e) {
e.printStackTrace();
}
return result;
}

/**
* 字符串格式转换date
*
* @param date
* @return
*/
public static Date str2Date(String date) {
Date result = null;
try {
result = sdf_date_format.parse(date);
} catch (ParseException e) {
e.printStackTrace();
}
return result;
}

/**
* date转换字符串格式
*
* @param date
* @return
*/
public static String date2Str(Date date) {
String dateString = sdf_date_format.format(date);
return dateString;
}

/**
* 计算两个日期之间相隔的天数
*
* @param begin
* @param end
* @return
* @throws ParseException
*/
public static long countDay(String begin, String end) {
Date beginDate, endDate;
long day = 0;
try {
beginDate = sdf_date_format.parse(begin);
endDate = sdf_date_format.parse(end);
day = (endDate.getTime() - beginDate.getTime()) / (24 * 60 * 60 * 1000);
} catch (ParseException e) {
e.printStackTrace();
}
return day;
}

public static int getMonth(String date) {
Calendar c = Calendar.getInstance();
c.setTime(str2Date(date));
return c.get(Calendar.MONTH) + 1;
}

public static int getYear(String date) {
Calendar c = Calendar.getInstance();
c.setTime(str2Date(date));
return c.get(Calendar.YEAR);
}

public static void main(String[] args) {

}

}

Caricamento…
Annulla
Salva