自定义报表代码提交

This commit is contained in:
2022-10-21 09:06:38 +08:00
parent b55d988c7e
commit 53389fb6f3
11 changed files with 387 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
package com.njcn.harmonic.pojo.param;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 模板动态更新数据
*
* @author qijian
* @date 2022/10/11
*/
@Data
public class ReportSearchParam {
@ApiModelProperty(name = "lineId",value = "监测点id")
private String lineId;
@ApiModelProperty(name = "tempId",value = "模板ID")
private String tempId;
@ApiModelProperty(name = "activation",value = "激活状态")
private Integer activation;
@ApiModelProperty(name = "type",value = "报表类型")
private Integer type;
@ApiModelProperty(name = "startTime",value = "开始时间")
private String startTime;
@ApiModelProperty(name = "endTime",value = "结束时间")
private String endTime;
@ApiModelProperty(name = "deptId",value = "部门ID")
private String deptId;
}

View File

@@ -0,0 +1,55 @@
package com.njcn.harmonic.pojo.po;
import com.baomidou.mybatisplus.annotation.TableName;
import com.njcn.db.bo.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* (SysExcelRpt)实体类
*
* @author qijian
* @since 2022-10-14 10:44:54
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value = "sys_excel_rpt")
public class ExcelRpt extends BaseEntity {
/**6
* 主键
*/
private String id;
/**
* 名称
*/
private String name;
/**
* 监测点Id
*/
private String lineId;
/**
* 报表日期
*/
private Date dataDate;
/**
* 报表模板Id
*/
private String tempId;
/**
* 报表内容
*/
private String content;
/**
* 报表类型1年 2季度 3月份 4周 5日
*/
private Integer type;
/**
* 状态0删除1正常
*/
private Integer state;
}

View File

@@ -0,0 +1,30 @@
package com.njcn.harmonic.pojo.po;
import com.baomidou.mybatisplus.annotation.TableName;
import com.njcn.db.bo.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* pqs
* 自定义报表
* @author cdf
* @date 2022/8/16
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value = "sys_excel_rpt_temp")
public class ExcelRptTemp extends BaseEntity {
private String id;
private String name;
private String content;
private Integer state;
private String valueTitle;
private String reportType;
}

View File

@@ -0,0 +1,35 @@
package com.njcn.harmonic.pojo.po;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
/**
* (SysDeptTemp)实体类
*
* @author qijian
* @since 2022-10-18 09:31:39
*/
@Data
@TableName(value = "sys_dept_temp")
public class SysDeptTemp implements Serializable {
private static final long serialVersionUID = -35391150359300949L;
/**
* 主键
*/
private String id;
/**
* 部门主键
*/
private String deptId;
/**
* 模板主键
*/
private String tempId;
/**
* 激活状态
*/
private Integer activation;
}

View File

@@ -0,0 +1,37 @@
package com.njcn.harmonic.pojo.vo;
import lombok.Data;
import java.io.Serializable;
/**
*
* @author qijian
* @since 2022-10-19 09:31:39
*/
@Data
public class SysDeptTempVO implements Serializable {
private static final long serialVersionUID = -35391150359300949L;
/**
* 主键
*/
private String id;
/**
* 部门主键
*/
private String deptId;
/**
* 模板主键
*/
private String tempId;
/**
* 激活状态
*/
private Integer activation;
//部门名称
private String deptName;
}

View File

@@ -0,0 +1,30 @@
package com.njcn.harmonic.utils;
/**
* 数据公共工具类
*
* @author qijian
* @version 1.0.0
* @createTime 2022/10/14 - 10:07
*/
public class PublicDataUtils {
/**
* 功能:下划线命名转驼峰命名
* 将下划线替换为空格,将字符串根据空格分割成数组,再将每个单词首字母大写
* @param s
* @return
*/
public static String underCamel(String s)
{
String separator = "_";
String under="";
s = s.toLowerCase().replace(separator, " ");
String sarr[]=s.split(" ");
for(int i=0;i<sarr.length;i++)
{
String w=sarr[i].substring(0,1).toUpperCase()+sarr[i].substring(1);
under +=w;
}
return under;
}
}

View File

@@ -0,0 +1,39 @@
package com.njcn.harmonic.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.SysDeptTemp;
import com.njcn.harmonic.pojo.vo.SysDeptTempVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* DeptTempMapper
*
* @author qijian
* @date 2022/10/18
*/
public interface DeptTempMapper extends BaseMapper<SysDeptTemp> {
/**
* 激活部门模板1激活
* @param sysDeptTemp 参数
* @return 结果
*/
int updateActivation(@Param("sysDeptTemp")SysDeptTemp sysDeptTemp);
/**
* 初始化部门激活状态0未激活
* @param deptId 参数
* @return 结果
*/
int updateAllActivation(@Param("deptId")String deptId);
/**
* 根据模板获取部门数据
* @param tempId 参数
* @return 结果
*/
List<SysDeptTempVO> getDeptTempByTempId(@Param("tempId")String tempId);
}

View File

@@ -0,0 +1,14 @@
package com.njcn.harmonic.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.ExcelRpt;
/**
* ExcelRptMapper
*
* @author qijian
* @date 2022/10/14
*/
public interface ExcelRptMapper extends BaseMapper<ExcelRpt> {
}

View File

@@ -0,0 +1,26 @@
package com.njcn.harmonic.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.harmonic.pojo.param.ReportSearchParam;
import com.njcn.harmonic.pojo.po.ExcelRptTemp;
import com.njcn.harmonic.pojo.vo.ReportTemplateVO;
import com.njcn.web.pojo.param.BaseParam;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* pqs
*
* @author cdf
* @date 2022/8/16
*/
public interface ExcelRptTempMapper extends BaseMapper<ExcelRptTemp> {
Page<ReportTemplateVO> getReportTemplateListPage(Page<BaseParam> page, @Param("baseParam")BaseParam baseParam);
List<ReportTemplateVO> getReportTemplateList(@Param("reportSearchParam")ReportSearchParam reportSearchParam);
List<ReportTemplateVO> getReportTemplateByDept(@Param("deptId")String deptId);
}

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.DeptTempMapper">
<update id="updateActivation">
UPDATE sys_dept_temp
SET activation = 1
WHERE 1=1
<if test="sysDeptTemp.deptId!=null and sysDeptTemp.deptId!=''">
and dept_id = #{sysDeptTemp.deptId}
</if>
<if test="sysDeptTemp.tempId!=null and sysDeptTemp.tempId!=''">
and temp_id = #{sysDeptTemp.tempId}
</if>
</update>
<update id="updateAllActivation">
UPDATE sys_dept_temp
SET activation = 0
WHERE
dept_id = #{deptId}
</update>
<select id="getDeptTempByTempId" resultType="SysDeptTempVO">
SELECT
a.*,
b.`Name` deptName
FROM
sys_dept_temp a
LEFT JOIN sys_dept b ON a.dept_id = b.id
WHERE
a.temp_id = #{tempId}
</select>
</mapper>

View File

@@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.ExcelRptTempMapper">
<select id="getReportTemplateListPage" resultType="ReportTemplateVO">
select
a.id,
a.name,
a.dept_id,
b.name deptName,
a.activation,
a.update_time,
c.name updateBy
from sys_excel_rpt_temp a
left join sys_dept b on a.dept_id = b.id
left join sys_user c on a.update_by = c.id
where a.state = 1
<if test="baseParam.searchValue!=null and baseParam.searchValue!=''">
and (
a.name like CONCAT('%', #{baseParam.searchValue},'%') or
b.name like CONCAT('%', #{baseParam.searchValue},'%')
)
</if>
</select>
<select id="getReportTemplateList" resultType="ReportTemplateVO">
SELECT
a.id,
a.NAME,
a.update_time,
d.NAME updateBy
FROM
sys_excel_rpt_temp a
LEFT JOIN sys_user d ON a.update_by = d.id
WHERE
a.state = 1
</select>
<select id="getReportTemplateByDept" resultType="ReportTemplateVO">
SELECT
a.id,
a.NAME,
b.activation
FROM
sys_excel_rpt_temp a
LEFT JOIN sys_dept_temp b ON a.Id = b.temp_id
WHERE
a.state = 1
and b.dept_id = #{deptId}
</select>
</mapper>