27 files modified
20 files added
| | |
| | | <artifactId>mysql-connector-java</artifactId> |
| | | <version>8.0.27</version> |
| | | </dependency> |
| | | |
| | | <!-- JimuReport --> |
| | | <dependency> |
| | | <groupId>org.jeecgframework.jimureport</groupId> |
| | | <artifactId>jimureport-spring-boot-starter</artifactId> |
| | | <version>1.7.6</version> |
| | | </dependency> |
| | | |
| | | </dependencies> |
| | | |
| | | <build> |
| | |
| | | */ |
| | | package org.springblade.modules.discuss.controller; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; |
| | | import io.swagger.annotations.Api; |
| | |
| | | import org.springblade.core.secure.utils.AuthUtil; |
| | | import org.springblade.core.tool.api.R; |
| | | import org.springblade.core.tool.utils.Func; |
| | | import org.springblade.modules.discuss.dto.TopicsDTO; |
| | | import org.springblade.modules.discuss.entity.PublicDiscussEntity; |
| | | import org.springblade.modules.discuss.service.IPublicDiscussService; |
| | | import org.springblade.modules.discuss.vo.PublicDiscussVO; |
| | |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.validation.Valid; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * 公益报名与议事 控制器 |
| | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 议事统计 |
| | | * @param publicDiscuss |
| | | * @return |
| | | */ |
| | | @GetMapping("/publicDiscussTotal") |
| | | @ApiOperationSupport(order = 7) |
| | | @ApiOperation(value = "房屋统计", notes = "传入ids") |
| | | public R publicDiscussTotal(PublicDiscussVO publicDiscuss) { |
| | | Map<String, Object> result = publicDiscussService.GetPublicDiscussTotal(publicDiscuss); |
| | | return R.data(result); |
| | | } |
| | | |
| | | /** |
| | | * 议事统计 |
| | | * @param publicDiscuss |
| | | * @return |
| | | */ |
| | | @GetMapping("/managementProtocol") |
| | | @ApiOperationSupport(order = 7) |
| | | @ApiOperation(value = "管理规约", notes = "传入ids") |
| | | public R managementProtocol(PublicDiscussVO publicDiscuss) { |
| | | List<TopicsDTO> result = publicDiscussService.managementProtocol(publicDiscuss,1); |
| | | return R.data(result); |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 议事统计 |
| | | * @param publicDiscuss |
| | | * @return |
| | | */ |
| | | @GetMapping("/candidate") |
| | | @ApiOperationSupport(order = 7) |
| | | @ApiOperation(value = "candidate", notes = "传入ids") |
| | | public R candidate(PublicDiscussVO publicDiscuss) { |
| | | List<TopicsDTO> result = publicDiscussService.managementProtocol(publicDiscuss,2); |
| | | return R.data(result); |
| | | |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | for (TopicsDTO child : children) { |
| | | child.setParentId(topics.getId()); |
| | | child.setDiscussContent(topics.getDiscussContent()); |
| | | child.setArticleId(topics.getArticleId()); |
| | | child.setLevel(2); |
| | | boolean b2 = topicsService.saveOrUpdate(child); |
| | | } |
| | |
| | | */ |
| | | package org.springblade.modules.discuss.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import org.springblade.modules.discuss.entity.TopicsEntity; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | |
| | | private String houseCode; |
| | | |
| | | @ApiModelProperty(value = "数量", example = "") |
| | | private Integer number; |
| | | |
| | | @ApiModelProperty(value = "比例", example = "") |
| | | private BigDecimal proportion; |
| | | |
| | | } |
| | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Integer id; |
| | | |
| | | /** |
| | | * 标题 |
| | | */ |
| | | @ApiModelProperty(value = "标题", example = "") |
| | | @TableField("title") |
| | | private String title; |
| | | |
| | | /** |
| | | * 0 开启:1关闭 |
| | | */ |
| | | @ApiModelProperty(value = "0 开启:1关闭", example = "") |
| | | @TableField("open_flag") |
| | | private Integer openFlag; |
| | | |
| | | /** |
| | | * 人数限制:0 不限制 |
| | | */ |
| | | @ApiModelProperty(value = "人数限制:0 不限制", example = "") |
| | | @TableField("number_restrictions") |
| | | private Integer numberRestrictions; |
| | | |
| | | /** |
| | | * 投票限制:0 一人一票 1 一户一票 |
| | | */ |
| | | @ApiModelProperty(value = "投票限制:0 一人一票 1 一户一票", example = "") |
| | | @TableField("vote_restrictions") |
| | | private Integer voteRestrictions; |
| | | |
| | | /** |
| | | * 用户限制 0 不限制 1 必须绑定手机 2 必须绑定住房 |
| | | */ |
| | | @ApiModelProperty(value = "用户限制 0 不限制 1 必须绑定手机 2 必须绑定住房", example = "") |
| | | @TableField("user_restrictions") |
| | | private Integer userRestrictions; |
| | | |
| | | /** |
| | | * 截止时间 |
| | | */ |
| | | @ApiModelProperty(value = "截止时间", example = "") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | @TableField("end_time") |
| | | @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private Date endTime; |
| | | |
| | | /** |
| | | * 开始时间 |
| | | */ |
| | | @ApiModelProperty(value = "开始时间", example = "") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | @TableField("start_time") |
| | | @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private Date startTime; |
| | | |
| | | /** |
| | | * 文章id |
| | | */ |
| | | @ApiModelProperty(value = "文章id", example = "") |
| | | @TableField("article_id") |
| | | private Integer articleId; |
| | | |
| | | /** |
| | | * 创建时间 |
| | | */ |
| | | @ApiModelProperty(value = "创建时间", example = "") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | @TableField(value = "create_time",fill = FieldFill.INSERT) |
| | | private Date createTime; |
| | | |
| | | /** |
| | | * 更新时间 |
| | | */ |
| | | @ApiModelProperty(value = "更新时间", example = "") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | @TableField(value = "update_time",fill = FieldFill.UPDATE) |
| | | private Date updateTime; |
| | | |
| | | /** |
| | | * 0:否 1 是 |
| | | */ |
| | | @ApiModelProperty(value = "0:否 1 是", example = "") |
| | | @TableField("deleted_flag") |
| | | @TableLogic |
| | | private Integer deletedFlag; |
| | | |
| | | /** |
| | | * 多房屋可重复投票 0否 1是 |
| | | */ |
| | | @ApiModelProperty(value = "多房屋可重复投票 0否 1是", example = "") |
| | | @TableField("repeat_vote") |
| | | private Integer repeatVote; |
| | | |
| | | /** |
| | | * 票数公开 0 全程公开 1 投票后公开 2 投票结束公开 3 不公开 |
| | | */ |
| | | @ApiModelProperty(value = "票数公开 0 全程公开 1 投票后公开 2 投票结束公开 3 不公开", example = "") |
| | | @TableField("vote_number_public") |
| | | private Integer voteNumberPublic; |
| | | |
| | | /** |
| | | * 指定用户 0 否 1是 |
| | | */ |
| | | @ApiModelProperty(value = "指定用户 0 否 1是", example = "") |
| | | @TableField("appoint_user") |
| | | private Integer appointUser; |
| | | |
| | | /** |
| | | * 指定用户id [ 1,2,3,4,5,6,7,8,9 ] |
| | | */ |
| | | @ApiModelProperty(value = "指定用户id [ 1,2,3,4,5,6,7,8,9 ]", example = "") |
| | | @TableField("user_ids") |
| | | private String userIds; |
| | | |
| | | /** |
| | | * 0:公益报名 1:议事 |
| | | */ |
| | | @ApiModelProperty(value = "0:公益报名 1:议事", example = "") |
| | | @TableField("event_type") |
| | | private Integer eventType; |
| | | |
| | | /** |
| | | * 创建人 |
| | | */ |
| | | @ApiModelProperty(value = "创建人", example = "") |
| | | @TableField("create_by") |
| | | private Long createBy; |
| | |
| | | */ |
| | | public List<TopicsDTO> selectTopicsList(TopicsDTO topicsDTO); |
| | | |
| | | /** |
| | | * |
| | | * @param articleId |
| | | * @return |
| | | */ |
| | | |
| | | List<TopicsDTO> getTopicstotalbyarticleid(Integer articleId); |
| | | } |
| | |
| | | </select> |
| | | |
| | | |
| | | <select id="getTopicstotalbyarticleid" resultType="org.springblade.modules.discuss.dto.TopicsDTO"> |
| | | |
| | | SELECT |
| | | jt.discuss_content, |
| | | jt.option_content, |
| | | ( SELECT count( 1 ) FROM jczz_user_topics jut WHERE jut.topics_id = jt.id ) number |
| | | FROM |
| | | jczz_topics jt |
| | | WHERE |
| | | jt.article_id = #{articleId} |
| | | AND jt.`level` = 2 |
| | | and jt.delete_flag = 0 |
| | | |
| | | </select> |
| | | |
| | | |
| | | </mapper> |
| | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * 用户议题报表 Mapper 接口 |
| | |
| | | UserTopicsVO getresult(UserTopicsVO userTopics); |
| | | |
| | | List<holdExcel> getHouseholdList(UserTopicsVO userTopics); |
| | | |
| | | Map<String, Object> getUserTopicsTotal(Integer articleId); |
| | | } |
| | |
| | | GROUP BY id |
| | | </select> |
| | | |
| | | <select id="getUserTopicsTotal" resultType="java.util.Map"> |
| | | SELECT IFNULL(sum(a.area), 0) AS area, |
| | | IFNULL(COUNT(1), 0) number |
| | | FROM (SELECT DISTINCT jut.house_code, |
| | | jh.area |
| | | FROM jczz_user_topics jut |
| | | LEFT JOIN jczz_household jhd ON jhd.id = jut.household_id |
| | | LEFT JOIN jczz_house jh ON jh.house_code = jhd.house_code |
| | | LEFT JOIN jczz_topics jt ON jt.id = jut.topics_id |
| | | AND jt.delete_flag = 0 |
| | | WHERE jut.article_id = #{articleId}) a |
| | | |
| | | </select> |
| | | |
| | | |
| | | </mapper> |
| | |
| | | package org.springblade.modules.discuss.service; |
| | | |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | import org.springblade.modules.discuss.dto.TopicsDTO; |
| | | import org.springblade.modules.discuss.entity.PublicDiscussEntity; |
| | | import org.springblade.modules.discuss.vo.PublicDiscussVO; |
| | | import org.springblade.core.mp.base.BaseService; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * 公益报名与议事 服务类 |
| | |
| | | |
| | | |
| | | PublicDiscussVO getDetail(PublicDiscussVO publicDiscuss); |
| | | |
| | | /** |
| | | * 获取统计数据 |
| | | * @param publicDiscuss |
| | | * @return |
| | | */ |
| | | Map<String, Object> GetPublicDiscussTotal(PublicDiscussVO publicDiscuss); |
| | | |
| | | List<TopicsDTO> managementProtocol(PublicDiscussVO publicDiscuss,Integer type); |
| | | } |
| | |
| | | */ |
| | | public List<TopicsDTO> selectTopicsList(TopicsDTO topicsDTO); |
| | | |
| | | /** |
| | | * 根据文章id查询用户参与次数 |
| | | * @param articleId |
| | | * @return |
| | | */ |
| | | List<TopicsDTO> getTopicsTotalByArticleId(Integer articleId); |
| | | |
| | | |
| | | |
| | | } |
| | |
| | | |
| | | import java.io.OutputStream; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * 用户议题报表 服务类 |
| | |
| | | Boolean saveUserTopicsEntity(UserTopicsEntity userTopics); |
| | | |
| | | void handleExcel(OutputStream out,UserTopicsVO userTopics); |
| | | |
| | | Map<String,Object> getUserTopicsTotal(Integer articleId); |
| | | } |
| | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.xxl.job.core.util.DateUtil; |
| | | import org.springblade.common.constant.CommonConstant; |
| | | import org.springblade.common.utils.SpringUtils; |
| | | import org.springblade.core.mp.support.Condition; |
| | | import org.springblade.core.mp.support.Query; |
| | | import org.springblade.core.secure.utils.AuthUtil; |
| | | import org.springblade.core.tool.utils.Func; |
| | | import org.springblade.modules.article.entity.Article; |
| | | import org.springblade.modules.article.service.ArticleService; |
| | | import org.springblade.modules.discuss.dto.TopicsDTO; |
| | | import org.springblade.modules.discuss.entity.PublicDiscussEntity; |
| | | import org.springblade.modules.discuss.entity.UserTopicsEntity; |
| | | import org.springblade.modules.discuss.mapper.PublicDiscussMapper; |
| | | import org.springblade.modules.discuss.service.IPublicDiscussService; |
| | | import org.springblade.modules.discuss.service.ITopicsService; |
| | | import org.springblade.modules.discuss.service.IUserPublicEnrollService; |
| | | import org.springblade.modules.discuss.service.IUserTopicsService; |
| | | import org.springblade.modules.discuss.vo.PublicDiscussVO; |
| | | import org.springblade.modules.discuss.vo.UserTopicsVO; |
| | | import org.springblade.modules.district.entity.DistrictEntity; |
| | | import org.springblade.modules.district.service.IDistrictService; |
| | | import org.springblade.modules.house.entity.HouseholdEntity; |
| | | import org.springblade.modules.house.service.IHouseService; |
| | | import org.springblade.modules.house.service.IHouseholdService; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.math.BigDecimal; |
| | | import java.util.Comparator; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * 公益报名与议事 服务实现类 |
| | |
| | | } |
| | | return publicDiscussVO; |
| | | } |
| | | |
| | | @Override |
| | | public Map<String, Object> GetPublicDiscussTotal(PublicDiscussVO publicDiscuss) { |
| | | // 参与房屋投票的总数 |
| | | IDistrictService districtService = SpringUtils.getBean(IDistrictService.class); |
| | | // 获取文章信息 |
| | | PublicDiscussEntity discussEntity = getOne(Wrappers.<PublicDiscussEntity>lambdaQuery().eq(PublicDiscussEntity::getArticleId, publicDiscuss.getArticleId())); |
| | | ArticleService articleService = SpringUtils.getBean(ArticleService.class); |
| | | Article serviceOne = articleService.getOne(Wrappers.<Article>lambdaQuery().eq(Article::getId, publicDiscuss.getArticleId())); |
| | | String articleRange = serviceOne.getArticleRange(); |
| | | List<String> strings = Func.toStrList(articleRange); |
| | | // 获取小区信息 |
| | | List<DistrictEntity> list = districtService.list(Wrappers.<DistrictEntity>lambdaQuery() |
| | | .in(DistrictEntity::getId, strings)); |
| | | List<String> aoiCodeList = list.stream().map(districtEntity -> districtEntity.getAoiCode()).collect(Collectors.toList()); |
| | | |
| | | IHouseService iHouseService = SpringUtils.getBean(IHouseService.class); |
| | | // 获取小区房屋总数和面积 |
| | | Map<String, Object> buildingAreaStatistics = iHouseService.getHoseTotalAndAreaTotalByDistrictCode(aoiCodeList); |
| | | // 获取投票数量和面积 |
| | | IUserTopicsService userTopicsService = SpringUtils.getBean(IUserTopicsService.class); |
| | | Map<String, Object> userTopicsTotal = userTopicsService.getUserTopicsTotal(discussEntity.getArticleId()); |
| | | // 投票详情统计 |
| | | ITopicsService iTopicsService = SpringUtils.getBean(ITopicsService.class); |
| | | List<TopicsDTO> userTopicsTotalByArticleId = iTopicsService.getTopicsTotalByArticleId(discussEntity.getArticleId()); |
| | | // 已投票房屋面积 |
| | | BigDecimal areaCount = (BigDecimal) userTopicsTotal.get("area"); |
| | | // 已投票房屋数量 |
| | | BigDecimal numberCount = BigDecimal.valueOf((Long) userTopicsTotal.get("number")); |
| | | // 总房屋数量 |
| | | BigDecimal houseCount = BigDecimal.valueOf((Long) buildingAreaStatistics.get("houseCount")); |
| | | // 总房屋面积 |
| | | BigDecimal houseAreaCount = (BigDecimal) buildingAreaStatistics.get("houseArea"); |
| | | |
| | | // 已完成房屋投票数量占比 |
| | | if (houseCount.compareTo(BigDecimal.ZERO) > 0) { |
| | | BigDecimal divide = numberCount.divide(houseCount, 4, BigDecimal.ROUND_HALF_UP); |
| | | // 将结果乘以100得到百分比形式,然后设置为2位小数 |
| | | // 这里保持了原有的功能和精度要求 |
| | | userTopicsTotal.put("houseProportion", divide.multiply(BigDecimal.valueOf(100)).setScale(2)); |
| | | } |
| | | if (houseAreaCount.compareTo(BigDecimal.ZERO) > 0) { |
| | | // 已完成房屋投票面积占比 |
| | | BigDecimal divide1 = areaCount.divide(houseAreaCount, 4, BigDecimal.ROUND_HALF_UP); |
| | | // 将结果乘以100得到百分比形式,然后设置为2位小数 |
| | | // 这里保持了原有的功能和精度要求 |
| | | userTopicsTotal.put("areaProportion", divide1.multiply(BigDecimal.valueOf(100)).setScale(2)); |
| | | } |
| | | buildingAreaStatistics.putAll(userTopicsTotal); |
| | | // 设置小区名称 |
| | | StringBuffer stringBuffer = new StringBuffer(); |
| | | for (DistrictEntity districtEntity : list) { |
| | | if (stringBuffer.length() > 0) { |
| | | stringBuffer.append(","); |
| | | } |
| | | stringBuffer.append(districtEntity.getName()); |
| | | } |
| | | buildingAreaStatistics.put("districtName", stringBuffer.toString()); |
| | | // 设置当前时间并且格式化时间 |
| | | buildingAreaStatistics.put("time", DateUtil.format(new Date(), "yyyy-MM-dd")); |
| | | return buildingAreaStatistics; |
| | | } |
| | | |
| | | @Override |
| | | public List<TopicsDTO> managementProtocol(PublicDiscussVO publicDiscuss, Integer type) { |
| | | // 参与房屋投票的总数 |
| | | IDistrictService districtService = SpringUtils.getBean(IDistrictService.class); |
| | | PublicDiscussEntity discussEntity = getOne(Wrappers.<PublicDiscussEntity>lambdaQuery().eq(PublicDiscussEntity::getArticleId, publicDiscuss.getArticleId())); |
| | | ArticleService articleService = SpringUtils.getBean(ArticleService.class); |
| | | Article serviceOne = articleService.getOne(Wrappers.<Article>lambdaQuery().eq(Article::getId, publicDiscuss.getArticleId())); |
| | | String articleRange = serviceOne.getArticleRange(); |
| | | List<String> strings = Func.toStrList(articleRange); |
| | | // 获取小区信息 |
| | | List<DistrictEntity> list = districtService.list(Wrappers.<DistrictEntity>lambdaQuery() |
| | | .in(DistrictEntity::getId, strings)); |
| | | List<String> aoiCodeList = list.stream().map(districtEntity -> districtEntity.getAoiCode()).collect(Collectors.toList()); |
| | | // 投票详情统计 |
| | | ITopicsService iTopicsService = SpringUtils.getBean(ITopicsService.class); |
| | | List<TopicsDTO> userTopicsTotalByArticleId = iTopicsService.getTopicsTotalByArticleId(discussEntity.getArticleId()); |
| | | // 按投票数量排序 |
| | | List<TopicsDTO> collect = userTopicsTotalByArticleId.stream().sorted(Comparator.comparing(TopicsDTO::getNumber).reversed()).collect(Collectors.toList()); |
| | | |
| | | if (type == 2) { |
| | | // 获取候选人 |
| | | List<TopicsDTO> candidate = collect.stream().filter(topicsDTO -> |
| | | !(topicsDTO.getDiscussContent().equals("管理规约") || topicsDTO.getDiscussContent().equals("议事规则"))) |
| | | .collect(Collectors.toList()); |
| | | Integer candidateNumber = candidate.stream().map(TopicsDTO::getNumber).reduce(0, Integer::sum); |
| | | // 计算投票的占比 |
| | | candidate.forEach(topicsDTO -> { |
| | | BigDecimal number = new BigDecimal(topicsDTO.getNumber()); |
| | | BigDecimal total = new BigDecimal(candidateNumber); |
| | | if (total.compareTo(BigDecimal.ZERO) > 0) { |
| | | BigDecimal divide = number.divide(total, 4, BigDecimal.ROUND_HALF_UP); |
| | | topicsDTO.setProportion(divide.multiply(BigDecimal.valueOf(100)).setScale(2)); |
| | | } |
| | | }); |
| | | return candidate; |
| | | } else { |
| | | // 获取管理规约和议事规则 |
| | | List<TopicsDTO> managementProtocol = collect.stream().filter(topicsDTO -> |
| | | topicsDTO.getDiscussContent().equals("管理规约") || topicsDTO.getDiscussContent().equals("议事规则")) |
| | | .collect(Collectors.toList()); |
| | | Integer managementProtocolNumber = managementProtocol.stream().map(TopicsDTO::getNumber).reduce(0, Integer::sum); |
| | | // 计算投票的占比 |
| | | managementProtocol.forEach(topicsDTO -> { |
| | | BigDecimal number = new BigDecimal(topicsDTO.getNumber()); |
| | | BigDecimal total = new BigDecimal(managementProtocolNumber); |
| | | if (total.compareTo(BigDecimal.ZERO) > 0) { |
| | | BigDecimal divide = number.divide(total, 4, BigDecimal.ROUND_HALF_UP); |
| | | topicsDTO.setProportion(divide.multiply(BigDecimal.valueOf(100)).setScale(2)); |
| | | } |
| | | }); |
| | | return managementProtocol; |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | return baseMapper.selectTopicsList(topicsDTO); |
| | | } |
| | | |
| | | @Override |
| | | public List<TopicsDTO> getTopicsTotalByArticleId(Integer articleId) { |
| | | return baseMapper.getTopicstotalbyarticleid(articleId); |
| | | } |
| | | } |
| | |
| | | import java.util.ArrayList; |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | |
| | | list.addAll(userTopicsExcels); |
| | | return list; |
| | | } |
| | | |
| | | @Override |
| | | public Map<String, Object> getUserTopicsTotal(Integer articleId) { |
| | | return baseMapper.getUserTopicsTotal(articleId); |
| | | } |
| | | } |
| | |
| | | */ |
| | | package org.springblade.modules.discuss.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import org.springblade.modules.discuss.entity.PublicDiscussEntity; |
| | | import org.springblade.core.tool.node.INode; |
| | | import lombok.Data; |
| | |
| | | public class PublicDiscussVO extends PublicDiscussEntity { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @ApiModelProperty(value = "报名人数") |
| | | private Integer enrollCount; |
| | | |
| | | @ApiModelProperty(value = "投票人数") |
| | | private Integer topsCount; |
| | | |
| | | @ApiModelProperty(value = "住户id") |
| | | private Long householdId; |
| | | |
| | | @ApiModelProperty(value = "住户姓名") |
| | | private String userName; |
| | | |
| | | @ApiModelProperty(value = "地址编码") |
| | | private String houseCode; |
| | | |
| | | @ApiModelProperty(value = "是否禁用") |
| | | private Boolean disabled; |
| | | |
| | | @ApiModelProperty(value = "小区id") |
| | | private String districtId; |
| | | |
| | | } |
| | |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.validation.Valid; |
| | | import java.time.LocalDateTime; |
| | | import java.time.LocalTime; |
| | | import java.time.temporal.ChronoUnit; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | |
| | | @ApiOperationSupport(order = 8) |
| | | @ApiOperation(value = "工单 同步") |
| | | public R synchronizeData() { |
| | | // 创建居住证发送短信定时任务 |
| | | EcOrderParamDTO ecOrderParamDTO = new EcOrderParamDTO(); |
| | | // 获取当前日期时间 |
| | | LocalDateTime now = LocalDateTime.now(); |
| | | // 获取前一天的开始时间 |
| | | LocalDateTime yesterdayStart = now.minus(1, ChronoUnit.DAYS).with(LocalTime.MIN); |
| | | // 获取前一天的结束时间 |
| | | LocalDateTime yesterdayEnd = now.minus(1, ChronoUnit.DAYS).with(LocalTime.MAX); |
| | | ecOrderParamDTO.setEndTime(yesterdayEnd); |
| | | ecOrderParamDTO.setStartTime(yesterdayStart); |
| | | boolean b = ecOrderService.SynchronizeData(ecOrderParamDTO); |
| | | return R.status(b); |
| | | } |
| | |
| | | @ApiModelProperty(value = "核实/督办(N1/N2)", example = "") |
| | | @TableField("tag_redo") |
| | | private String tagRedo; |
| | | |
| | | @ApiModelProperty(value = "导入时间", example = "") |
| | | @TableField("import_time") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | private Date importTime; |
| | | } |
| | |
| | | import org.springblade.modules.police.service.IPoliceAffairsGridService; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.math.RoundingMode; |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public boolean SynchronizeData(EcOrderParamDTO ecOrderParamDTO) { |
| | | processPages(100, ecOrderParamDTO); |
| | | return true; |
| | | } |
| | | |
| | | public void processPages(int pageSize, EcOrderParamDTO ecOrderParamDTO) { |
| | | long count = count(new QueryWrapper<>()); |
| | | QueryWrapper<EcOrder> ecOrderQueryWrapper = new QueryWrapper<>(); |
| | | ecOrderQueryWrapper.between("import_time", ecOrderParamDTO.getStartTime(), ecOrderParamDTO.getEndTime()); |
| | | long count = baseMapper.selectCount(ecOrderQueryWrapper); |
| | | int totalPages = (int) Math.ceil((double) count / pageSize); // 计算总页数 |
| | | |
| | | for (int pageNum = 1; pageNum <= totalPages; pageNum++) { |
| | |
| | | * @return |
| | | */ |
| | | List<HouseVO> getNotBindLabelHouseList(@Param("i") int i,@Param("size") int size); |
| | | |
| | | /** |
| | | * |
| | | * @param aoiCodeList |
| | | * @return |
| | | */ |
| | | Map<String, Object> getHoseTotalAndAreaTotalByDistrictCode(List<String> aoiCodeList); |
| | | } |
| | |
| | | select house_code from jczz_household where is_deleted = 0 and relationship = 1 and house_code is not null and house_code != '' GROUP BY house_code |
| | | ) a on a.house_code = jh.house_code |
| | | left join |
| | | ( |
| | | select house_code from jczz_household where is_deleted = 0 and relationship = 18 and house_code is not null and house_code != '' GROUP BY house_code |
| | | ) b on b.house_code = jh.house_code |
| | | (select house_code |
| | | from jczz_household |
| | | where is_deleted = 0 |
| | | and relationship = 18 |
| | | and house_code is not null |
| | | and house_code != '' |
| | | GROUP BY house_code) b on b.house_code = jh.house_code |
| | | left join |
| | | ( |
| | | select house_code from jczz_household where is_deleted = 0 and relationship is null or (relationship!=1 and relationship!=18) and house_code is not null and house_code != '' GROUP BY house_code |
| | | ) c on c.house_code = jh.house_code |
| | | ) d left join jczz_user_house_label juhl on d.house_code = juhl.house_code and lable_type = 2 |
| | | where juhl.id is null and status is not null |
| | | limit #{i},#{size} |
| | | (select house_code |
| | | from jczz_household |
| | | where is_deleted = 0 and relationship is null |
| | | or (relationship!=1 and relationship!=18) and house_code is not null and house_code != '' |
| | | GROUP BY house_code) c on c.house_code = jh.house_code) d |
| | | left join jczz_user_house_label juhl on d.house_code = juhl.house_code and lable_type = 2 |
| | | where juhl.id is null |
| | | and status is not null |
| | | limit #{i} |
| | | , #{size} |
| | | </select> |
| | | <select id="getHoseTotalAndAreaTotalByDistrictCode" resultType="java.util.Map"> |
| | | |
| | | SELECT |
| | | count( 1 ) AS houseCount, |
| | | IFNULL(sum( area ),0) AS houseArea |
| | | FROM |
| | | jczz_house jh |
| | | WHERE |
| | | jh.district_code in |
| | | <foreach collection="aoiCodeList" item="code" open="(" close=")" separator=","> |
| | | #{code} |
| | | </foreach> |
| | | </select> |
| | | |
| | | |
| | |
| | | * @param householdEntity |
| | | */ |
| | | void saveOrUpdateUser(HouseholdEntity householdEntity); |
| | | |
| | | /** |
| | | * 获取房屋总数和房屋面积总数 |
| | | * @return |
| | | */ |
| | | Map<String, Object> getHoseTotalAndAreaTotalByDistrictCode(List<String> aoiCodeList); |
| | | } |
| | |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | @Override |
| | | public Map<String, Object> getHoseTotalAndAreaTotalByDistrictCode(List<String> aoiCodeList) { |
| | | return baseMapper.getHoseTotalAndAreaTotalByDistrictCode(aoiCodeList); |
| | | } |
| | | } |
| | |
| | | } |
| | | } |
| | | // 判断是否租户导入 |
| | | if (StringUtils.isNotBlank(isTenant) || householdEntity.getRelationship() == 18) { |
| | | if (StringUtils.isNotBlank(isTenant) || (householdEntity.getRelationship() != null && householdEntity.getRelationship() == 18)) { |
| | | householdEntity.setRelationship(18); |
| | | HouseRentalEntity houseRentalEntity = iHouseRentalService.getOne(Wrappers.<HouseRentalEntity>lambdaQuery() |
| | | .eq(HouseRentalEntity::getHouseCode, householdEntity.getHouseCode()).last("limit 1")); |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.controller; |
| | | |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import io.swagger.annotations.ApiParam; |
| | | import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; |
| | | import lombok.AllArgsConstructor; |
| | | import javax.validation.Valid; |
| | | |
| | | import org.springblade.core.secure.BladeUser; |
| | | import org.springblade.core.mp.support.Condition; |
| | | import org.springblade.core.mp.support.Query; |
| | | import org.springblade.core.tool.api.R; |
| | | import org.springblade.core.tool.utils.Func; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import org.springblade.modules.report.entity.ReportEntity; |
| | | import org.springblade.modules.report.vo.ReportVO; |
| | | import org.springblade.modules.report.wrapper.ReportWrapper; |
| | | import org.springblade.modules.report.service.IReportService; |
| | | import org.springblade.core.boot.ctrl.BladeController; |
| | | |
| | | /** |
| | | * 在线excel设计器 控制器 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-27 |
| | | */ |
| | | @RestController |
| | | @AllArgsConstructor |
| | | @RequestMapping("blade-report/report") |
| | | @Api(value = "在线excel设计器", tags = "在线excel设计器接口") |
| | | public class ReportController extends BladeController { |
| | | |
| | | private final IReportService reportService; |
| | | |
| | | /** |
| | | * 在线excel设计器 详情 |
| | | */ |
| | | @GetMapping("/detail") |
| | | @ApiOperationSupport(order = 1) |
| | | @ApiOperation(value = "详情", notes = "传入report") |
| | | public R<ReportVO> detail(ReportEntity report) { |
| | | ReportEntity detail = reportService.getOne(Condition.getQueryWrapper(report)); |
| | | return R.data(ReportWrapper.build().entityVO(detail)); |
| | | } |
| | | /** |
| | | * 在线excel设计器 分页 |
| | | */ |
| | | @GetMapping("/list") |
| | | @ApiOperationSupport(order = 2) |
| | | @ApiOperation(value = "分页", notes = "传入report") |
| | | public R<IPage<ReportVO>> list(ReportEntity report, Query query) { |
| | | IPage<ReportEntity> pages = reportService.page(Condition.getPage(query), Condition.getQueryWrapper(report)); |
| | | return R.data(ReportWrapper.build().pageVO(pages)); |
| | | } |
| | | |
| | | /** |
| | | * 在线excel设计器 自定义分页 |
| | | */ |
| | | @GetMapping("/page") |
| | | @ApiOperationSupport(order = 3) |
| | | @ApiOperation(value = "分页", notes = "传入report") |
| | | public R<IPage<ReportVO>> page(ReportVO report, Query query) { |
| | | IPage<ReportVO> pages = reportService.selectReportPage(Condition.getPage(query), report); |
| | | return R.data(pages); |
| | | } |
| | | |
| | | /** |
| | | * 在线excel设计器 新增 |
| | | */ |
| | | @PostMapping("/save") |
| | | @ApiOperationSupport(order = 4) |
| | | @ApiOperation(value = "新增", notes = "传入report") |
| | | public R save(@Valid @RequestBody ReportEntity report) { |
| | | return R.status(reportService.save(report)); |
| | | } |
| | | |
| | | /** |
| | | * 在线excel设计器 修改 |
| | | */ |
| | | @PostMapping("/update") |
| | | @ApiOperationSupport(order = 5) |
| | | @ApiOperation(value = "修改", notes = "传入report") |
| | | public R update(@Valid @RequestBody ReportEntity report) { |
| | | return R.status(reportService.updateById(report)); |
| | | } |
| | | |
| | | /** |
| | | * 在线excel设计器 新增或修改 |
| | | */ |
| | | @PostMapping("/submit") |
| | | @ApiOperationSupport(order = 6) |
| | | @ApiOperation(value = "新增或修改", notes = "传入report") |
| | | public R submit(@Valid @RequestBody ReportEntity report) { |
| | | return R.status(reportService.saveOrUpdate(report)); |
| | | } |
| | | |
| | | /** |
| | | * 在线excel设计器 删除 |
| | | */ |
| | | @PostMapping("/remove") |
| | | @ApiOperationSupport(order = 7) |
| | | @ApiOperation(value = "逻辑删除", notes = "传入ids") |
| | | public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) { |
| | | return R.status(reportService.removeBatchByIds(Func.toStrList(ids))); |
| | | } |
| | | |
| | | |
| | | } |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.controller; |
| | | |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import io.swagger.annotations.ApiParam; |
| | | import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; |
| | | import lombok.AllArgsConstructor; |
| | | import javax.validation.Valid; |
| | | |
| | | import org.springblade.core.mp.support.Condition; |
| | | import org.springblade.core.mp.support.Query; |
| | | import org.springblade.core.tool.api.R; |
| | | import org.springblade.core.tool.utils.Func; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import org.springblade.modules.report.entity.ReportDbEntity; |
| | | import org.springblade.modules.report.vo.ReportDbVO; |
| | | import org.springblade.modules.report.wrapper.ReportDbWrapper; |
| | | import org.springblade.modules.report.service.IReportDbService; |
| | | import org.springblade.core.boot.ctrl.BladeController; |
| | | |
| | | /** |
| | | * 积木报表表 控制器 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-26 |
| | | */ |
| | | @RestController |
| | | @AllArgsConstructor |
| | | @RequestMapping("blade-reportDb/reportDb") |
| | | @Api(value = "积木报表表", tags = "积木报表表接口") |
| | | public class ReportDbController extends BladeController { |
| | | |
| | | private final IReportDbService reportDbService; |
| | | |
| | | /** |
| | | * 积木报表表 详情 |
| | | */ |
| | | @GetMapping("/detail") |
| | | @ApiOperationSupport(order = 1) |
| | | @ApiOperation(value = "详情", notes = "传入reportDb") |
| | | public R<ReportDbVO> detail(ReportDbEntity reportDb) { |
| | | ReportDbEntity detail = reportDbService.getOne(Condition.getQueryWrapper(reportDb)); |
| | | return R.data(ReportDbWrapper.build().entityVO(detail)); |
| | | } |
| | | /** |
| | | * 积木报表表 分页 |
| | | */ |
| | | @GetMapping("/list") |
| | | @ApiOperationSupport(order = 2) |
| | | @ApiOperation(value = "分页", notes = "传入reportDb") |
| | | public R<IPage<ReportDbVO>> list(ReportDbEntity reportDb, Query query) { |
| | | IPage<ReportDbEntity> pages = reportDbService.page(Condition.getPage(query), Condition.getQueryWrapper(reportDb)); |
| | | return R.data(ReportDbWrapper.build().pageVO(pages)); |
| | | } |
| | | |
| | | /** |
| | | * 积木报表表 自定义分页 |
| | | */ |
| | | @GetMapping("/page") |
| | | @ApiOperationSupport(order = 3) |
| | | @ApiOperation(value = "分页", notes = "传入reportDb") |
| | | public R<IPage<ReportDbVO>> page(ReportDbVO reportDb, Query query) { |
| | | IPage<ReportDbVO> pages = reportDbService.selectReportDbPage(Condition.getPage(query), reportDb); |
| | | return R.data(pages); |
| | | } |
| | | |
| | | /** |
| | | * 积木报表表 新增 |
| | | */ |
| | | @PostMapping("/save") |
| | | @ApiOperationSupport(order = 4) |
| | | @ApiOperation(value = "新增", notes = "传入reportDb") |
| | | public R save(@Valid @RequestBody ReportDbEntity reportDb) { |
| | | return R.status(reportDbService.save(reportDb)); |
| | | } |
| | | |
| | | /** |
| | | * 积木报表表 修改 |
| | | */ |
| | | @PostMapping("/update") |
| | | @ApiOperationSupport(order = 5) |
| | | @ApiOperation(value = "修改", notes = "传入reportDb") |
| | | public R update(@Valid @RequestBody ReportDbEntity reportDb) { |
| | | return R.status(reportDbService.updateById(reportDb)); |
| | | } |
| | | |
| | | /** |
| | | * 积木报表表 新增或修改 |
| | | */ |
| | | @PostMapping("/submit") |
| | | @ApiOperationSupport(order = 6) |
| | | @ApiOperation(value = "新增或修改", notes = "传入reportDb") |
| | | public R submit(@Valid @RequestBody ReportDbEntity reportDb) { |
| | | return R.status(reportDbService.saveOrUpdate(reportDb)); |
| | | } |
| | | |
| | | /** |
| | | * 积木报表表 删除 |
| | | */ |
| | | @PostMapping("/remove") |
| | | @ApiOperationSupport(order = 7) |
| | | @ApiOperation(value = "逻辑删除", notes = "传入ids") |
| | | public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) { |
| | | return R.status(reportDbService.removeBatchByIds(Func.toLongList(ids))); |
| | | } |
| | | |
| | | |
| | | } |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.dto; |
| | | |
| | | import org.springblade.modules.report.entity.ReportEntity; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | |
| | | /** |
| | | * 在线excel设计器 数据传输对象实体类 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-27 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | public class ReportDTO extends ReportEntity { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | } |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.dto; |
| | | |
| | | import org.springblade.modules.report.entity.ReportDbEntity; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | |
| | | /** |
| | | * 数据源 数据传输对象实体类 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-26 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | public class ReportDbDTO extends ReportDbEntity { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | } |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.entity; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serializable; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * 积木报表表 实体类 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-26 |
| | | */ |
| | | |
| | | /** |
| | | * 对象 jimu_report_db |
| | | * |
| | | * @author ${context.author} |
| | | * @date 2024-06-26 14:26:27 |
| | | */ |
| | | @ApiModel(value = "JimuReportDb对象", description = "") |
| | | @Data |
| | | @TableName("jimu_report_db") |
| | | public class ReportDbEntity implements Serializable { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | |
| | | @ApiModelProperty(value = "主键ID", example = "") |
| | | @TableId(value = "id", type = IdType.ASSIGN_UUID) |
| | | private String id; |
| | | |
| | | @ApiModelProperty(value = "主键字段", example = "") |
| | | @TableField("jimu_report_id") |
| | | private String jimuReportId; |
| | | |
| | | @ApiModelProperty(value = "创建人登录名称", example = "") |
| | | @TableField("create_by") |
| | | private String createBy; |
| | | |
| | | @ApiModelProperty(value = "更新人登录名称", example = "") |
| | | @TableField("update_by") |
| | | private String updateBy; |
| | | |
| | | @ApiModelProperty(value = "创建日期", example = "") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | @TableField("create_time") |
| | | private Date createTime; |
| | | |
| | | @ApiModelProperty(value = "更新日期", example = "") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | @TableField("update_time") |
| | | private Date updateTime; |
| | | |
| | | @ApiModelProperty(value = "数据集编码", example = "") |
| | | @TableField("db_code") |
| | | private String dbCode; |
| | | |
| | | @ApiModelProperty(value = "数据集名字", example = "") |
| | | @TableField("db_ch_name") |
| | | private String dbChName; |
| | | |
| | | @ApiModelProperty(value = "数据源类型", example = "") |
| | | @TableField("db_type") |
| | | private String dbType; |
| | | |
| | | @ApiModelProperty(value = "数据库表名", example = "") |
| | | @TableField("db_table_name") |
| | | private String dbTableName; |
| | | |
| | | @ApiModelProperty(value = "动态查询SQL", example = "") |
| | | @TableField("db_dyn_sql") |
| | | private String dbDynSql; |
| | | |
| | | @ApiModelProperty(value = "数据源KEY", example = "") |
| | | @TableField("db_key") |
| | | private String dbKey; |
| | | |
| | | @ApiModelProperty(value = "填报数据源", example = "") |
| | | @TableField("tb_db_key") |
| | | private String tbDbKey; |
| | | |
| | | @ApiModelProperty(value = "填报数据表", example = "") |
| | | @TableField("tb_db_table_name") |
| | | private String tbDbTableName; |
| | | |
| | | @ApiModelProperty(value = "java类数据集 类型(spring:springkey,class:java类名)", example = "") |
| | | @TableField("java_type") |
| | | private String javaType; |
| | | |
| | | @ApiModelProperty(value = "java类数据源 数值(bean key/java类名)", example = "") |
| | | @TableField("java_value") |
| | | private String javaValue; |
| | | |
| | | @ApiModelProperty(value = "请求地址", example = "") |
| | | @TableField("api_url") |
| | | private String apiUrl; |
| | | |
| | | @ApiModelProperty(value = "请求方法0-get,1-post", example = "") |
| | | @TableField("api_method") |
| | | private String apiMethod; |
| | | |
| | | @ApiModelProperty(value = "是否是列表0否1是 默认0", example = "") |
| | | @TableField("is_list") |
| | | private String isList; |
| | | |
| | | @ApiModelProperty(value = "是否作为分页,0:不分页,1:分页", example = "") |
| | | @TableField("is_page") |
| | | private String isPage; |
| | | |
| | | @ApiModelProperty(value = "数据源", example = "") |
| | | @TableField("db_source") |
| | | private String dbSource; |
| | | |
| | | @ApiModelProperty(value = "数据库类型 MYSQL ORACLE SQLSERVER", example = "") |
| | | @TableField("db_source_type") |
| | | private String dbSourceType; |
| | | |
| | | @ApiModelProperty(value = "json数据,直接解析json内容", example = "") |
| | | @TableField("json_data") |
| | | private String jsonData; |
| | | |
| | | @ApiModelProperty(value = "api转换器", example = "") |
| | | @TableField("api_convert") |
| | | private String apiConvert; |
| | | } |
| | | |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.entity; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import lombok.Data; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.EqualsAndHashCode; |
| | | import org.springblade.core.tenant.mp.TenantEntity; |
| | | |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * 在线excel设计器 实体类 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-27 |
| | | */ |
| | | @Data |
| | | @TableName("jimu_report") |
| | | @ApiModel(value = "Report对象", description = "在线excel设计器") |
| | | public class ReportEntity { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | |
| | | /** 主键 */ |
| | | @ApiModelProperty(value = "主键ID", example = "") |
| | | @TableId(value = "id", type = IdType.ASSIGN_UUID) |
| | | private String id; |
| | | |
| | | /** 编码 */ |
| | | @ApiModelProperty(value = "编码", example = "") |
| | | @TableField("code") |
| | | private String code; |
| | | |
| | | /** 名称 */ |
| | | @ApiModelProperty(value = "名称", example = "") |
| | | @TableField("name") |
| | | private String name; |
| | | |
| | | /** 说明 */ |
| | | @ApiModelProperty(value = "说明", example = "") |
| | | @TableField("note") |
| | | private String note; |
| | | |
| | | /** 状态 */ |
| | | @ApiModelProperty(value = "状态", example = "") |
| | | @TableField("status") |
| | | private String status; |
| | | |
| | | /** 类型 */ |
| | | @ApiModelProperty(value = "类型", example = "") |
| | | @TableField("type") |
| | | private String type; |
| | | |
| | | /** json字符串 */ |
| | | @ApiModelProperty(value = "json字符串", example = "") |
| | | @TableField("json_str") |
| | | private String jsonStr; |
| | | |
| | | /** 请求地址 */ |
| | | @ApiModelProperty(value = "请求地址", example = "") |
| | | @TableField("api_url") |
| | | private String apiUrl; |
| | | |
| | | /** 缩略图 */ |
| | | @ApiModelProperty(value = "缩略图", example = "") |
| | | @TableField("thumb") |
| | | private String thumb; |
| | | |
| | | /** 创建人 */ |
| | | @ApiModelProperty(value = "创建人", example = "") |
| | | @TableField("create_by") |
| | | private String createBy; |
| | | |
| | | /** 创建时间 */ |
| | | @ApiModelProperty(value = "创建时间", example = "") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | @TableField("create_time") |
| | | private Date createTime; |
| | | |
| | | /** 修改人 */ |
| | | @ApiModelProperty(value = "修改人", example = "") |
| | | @TableField("update_by") |
| | | private String updateBy; |
| | | |
| | | /** 修改时间 */ |
| | | @ApiModelProperty(value = "修改时间", example = "") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | @TableField("update_time") |
| | | private Date updateTime; |
| | | |
| | | /** 删除标识0-正常,1-已删除 */ |
| | | @ApiModelProperty(value = "删除标识0-正常,1-已删除", example = "") |
| | | @TableField("del_flag") |
| | | private Byte delFlag; |
| | | |
| | | /** 请求方法0-get,1-post */ |
| | | @ApiModelProperty(value = "请求方法0-get,1-post", example = "") |
| | | @TableField("api_method") |
| | | private String apiMethod; |
| | | |
| | | /** 请求编码 */ |
| | | @ApiModelProperty(value = "请求编码", example = "") |
| | | @TableField("api_code") |
| | | private String apiCode; |
| | | |
| | | /** 是否是模板 0-是,1-不是 */ |
| | | @ApiModelProperty(value = "是否是模板 0-是,1-不是", example = "") |
| | | @TableField("template") |
| | | private Byte template; |
| | | |
| | | /** 浏览次数 */ |
| | | @ApiModelProperty(value = "浏览次数", example = "") |
| | | @TableField("view_count") |
| | | private Long viewCount; |
| | | |
| | | /** css增强 */ |
| | | @ApiModelProperty(value = "css增强", example = "") |
| | | @TableField("css_str") |
| | | private String cssStr; |
| | | |
| | | /** js增强 */ |
| | | @ApiModelProperty(value = "js增强", example = "") |
| | | @TableField("js_str") |
| | | private String jsStr; |
| | | |
| | | /** py增强 */ |
| | | @ApiModelProperty(value = "py增强", example = "") |
| | | @TableField("py_str") |
| | | private String pyStr; |
| | | |
| | | /** 多租户标识 */ |
| | | @ApiModelProperty(value = "多租户标识", example = "") |
| | | @TableField("tenant_id") |
| | | private String tenantId; |
| | | } |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.mapper; |
| | | |
| | | import org.springblade.modules.report.entity.ReportDbEntity; |
| | | import org.springblade.modules.report.vo.ReportDbVO; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * 积木报表表 Mapper 接口 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-26 |
| | | */ |
| | | public interface ReportDbMapper extends BaseMapper<ReportDbEntity> { |
| | | |
| | | /** |
| | | * 自定义分页 |
| | | * |
| | | * @param page |
| | | * @param reportDb |
| | | * @return |
| | | */ |
| | | List<ReportDbVO> selectReportDbPage(IPage page, ReportDbVO reportDb); |
| | | |
| | | |
| | | } |
| New file |
| | |
| | | <?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="org.springblade.modules.report.mapper.ReportDbMapper"> |
| | | |
| | | <!-- 通用查询映射结果 --> |
| | | <resultMap id="reportDbResultMap" type="org.springblade.modules.report.entity.ReportDbEntity"> |
| | | </resultMap> |
| | | |
| | | |
| | | <select id="selectReportDbPage" resultMap="reportDbResultMap"> |
| | | select * from jimu_report_db order by create_time desc |
| | | </select> |
| | | |
| | | |
| | | </mapper> |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.mapper; |
| | | |
| | | import org.springblade.modules.report.entity.ReportEntity; |
| | | import org.springblade.modules.report.vo.ReportVO; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * 在线excel设计器 Mapper 接口 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-27 |
| | | */ |
| | | public interface ReportMapper extends BaseMapper<ReportEntity> { |
| | | |
| | | /** |
| | | * 自定义分页 |
| | | * |
| | | * @param page |
| | | * @param report |
| | | * @return |
| | | */ |
| | | List<ReportVO> selectReportPage(IPage page, ReportVO report); |
| | | |
| | | |
| | | } |
| New file |
| | |
| | | <?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="org.springblade.modules.report.mapper.ReportMapper"> |
| | | |
| | | <!-- 通用查询映射结果 --> |
| | | <resultMap id="reportResultMap" type="org.springblade.modules.report.entity.ReportEntity"> |
| | | </resultMap> |
| | | |
| | | |
| | | <select id="selectReportPage" resultMap="reportResultMap"> |
| | | select * from jimu_report order by create_time desc |
| | | </select> |
| | | |
| | | |
| | | </mapper> |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.service; |
| | | |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | import org.springblade.modules.report.entity.ReportDbEntity; |
| | | import org.springblade.modules.report.vo.ReportDbVO; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | |
| | | /** |
| | | * 积木报表表 服务类 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-26 |
| | | */ |
| | | public interface IReportDbService extends IService<ReportDbEntity> { |
| | | |
| | | /** |
| | | * 自定义分页 |
| | | * |
| | | * @param page |
| | | * @param reportDb |
| | | * @return |
| | | */ |
| | | IPage<ReportDbVO> selectReportDbPage(IPage<ReportDbVO> page, ReportDbVO reportDb); |
| | | |
| | | |
| | | } |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.service; |
| | | |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | import org.springblade.modules.report.entity.ReportEntity; |
| | | import org.springblade.modules.report.vo.ReportVO; |
| | | import org.springblade.core.mp.base.BaseService; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | |
| | | /** |
| | | * 在线excel设计器 服务类 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-27 |
| | | */ |
| | | public interface IReportService extends IService<ReportEntity> { |
| | | |
| | | /** |
| | | * 自定义分页 |
| | | * |
| | | * @param page |
| | | * @param report |
| | | * @return |
| | | */ |
| | | IPage<ReportVO> selectReportPage(IPage<ReportVO> page, ReportVO report); |
| | | |
| | | |
| | | } |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springblade.modules.report.entity.ReportDbEntity; |
| | | import org.springblade.modules.report.vo.ReportDbVO; |
| | | import org.springblade.modules.report.mapper.ReportDbMapper; |
| | | import org.springblade.modules.report.service.IReportDbService; |
| | | import org.springframework.stereotype.Service; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | |
| | | /** |
| | | * 积木报表表 服务实现类 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-26 |
| | | */ |
| | | @Service |
| | | public class ReportDbServiceImpl extends ServiceImpl<ReportDbMapper, ReportDbEntity> implements IReportDbService { |
| | | |
| | | @Override |
| | | public IPage<ReportDbVO> selectReportDbPage(IPage<ReportDbVO> page, ReportDbVO reportDb) { |
| | | return page.setRecords(baseMapper.selectReportDbPage(page, reportDb)); |
| | | } |
| | | |
| | | |
| | | } |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springblade.modules.report.entity.ReportEntity; |
| | | import org.springblade.modules.report.vo.ReportVO; |
| | | import org.springblade.modules.report.mapper.ReportMapper; |
| | | import org.springblade.modules.report.service.IReportService; |
| | | import org.springblade.core.mp.base.BaseServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | |
| | | /** |
| | | * 在线excel设计器 服务实现类 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-27 |
| | | */ |
| | | @Service |
| | | public class ReportServiceImpl extends ServiceImpl<ReportMapper, ReportEntity> implements IReportService { |
| | | |
| | | @Override |
| | | public IPage<ReportVO> selectReportPage(IPage<ReportVO> page, ReportVO report) { |
| | | return page.setRecords(baseMapper.selectReportPage(page, report)); |
| | | } |
| | | |
| | | |
| | | } |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.vo; |
| | | |
| | | import org.springblade.modules.report.entity.ReportDbEntity; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | |
| | | /** |
| | | * 积木报表表 视图实体类 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-26 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | public class ReportDbVO extends ReportDbEntity { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | } |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.vo; |
| | | |
| | | import org.springblade.modules.report.entity.ReportEntity; |
| | | import org.springblade.core.tool.node.INode; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | |
| | | /** |
| | | * 在线excel设计器 视图实体类 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-27 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | public class ReportVO extends ReportEntity { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | } |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.wrapper; |
| | | |
| | | import org.springblade.core.mp.support.BaseEntityWrapper; |
| | | import org.springblade.core.tool.utils.BeanUtil; |
| | | import org.springblade.modules.report.entity.ReportDbEntity; |
| | | import org.springblade.modules.report.vo.ReportDbVO; |
| | | import java.util.Objects; |
| | | |
| | | /** |
| | | * 数据源 包装类,返回视图层所需的字段 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-26 |
| | | */ |
| | | public class ReportDbWrapper extends BaseEntityWrapper<ReportDbEntity, ReportDbVO> { |
| | | |
| | | public static ReportDbWrapper build() { |
| | | return new ReportDbWrapper(); |
| | | } |
| | | |
| | | @Override |
| | | public ReportDbVO entityVO(ReportDbEntity reportDb) { |
| | | ReportDbVO reportDbVO = Objects.requireNonNull(BeanUtil.copy(reportDb, ReportDbVO.class)); |
| | | |
| | | //User createUser = UserCache.getUser(reportDb.getCreateUser()); |
| | | //User updateUser = UserCache.getUser(reportDb.getUpdateUser()); |
| | | //reportDbVO.setCreateUserName(createUser.getName()); |
| | | //reportDbVO.setUpdateUserName(updateUser.getName()); |
| | | |
| | | return reportDbVO; |
| | | } |
| | | |
| | | |
| | | } |
| New file |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.modules.report.wrapper; |
| | | |
| | | import org.springblade.core.mp.support.BaseEntityWrapper; |
| | | import org.springblade.core.tool.utils.BeanUtil; |
| | | import org.springblade.modules.report.entity.ReportEntity; |
| | | import org.springblade.modules.report.vo.ReportVO; |
| | | import java.util.Objects; |
| | | |
| | | /** |
| | | * 在线excel设计器 包装类,返回视图层所需的字段 |
| | | * |
| | | * @author BladeX |
| | | * @since 2024-06-27 |
| | | */ |
| | | public class ReportWrapper extends BaseEntityWrapper<ReportEntity, ReportVO> { |
| | | |
| | | public static ReportWrapper build() { |
| | | return new ReportWrapper(); |
| | | } |
| | | |
| | | @Override |
| | | public ReportVO entityVO(ReportEntity report) { |
| | | ReportVO reportVO = Objects.requireNonNull(BeanUtil.copy(report, ReportVO.class)); |
| | | |
| | | //User createUser = UserCache.getUser(report.getCreateUser()); |
| | | //User updateUser = UserCache.getUser(report.getUpdateUser()); |
| | | //reportVO.setCreateUserName(createUser.getName()); |
| | | //reportVO.setUpdateUserName(updateUser.getName()); |
| | | |
| | | return reportVO; |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | // 是否加锁成功 |
| | | logger.info("是否加锁成功:" + isLock); |
| | | if (isLock) { |
| | | userDeptService.remove(Wrappers.<UserDept>update().lambda().eq(UserDept::getUserId, user.getId())); |
| | | // userDeptService.remove(Wrappers.<UserDept>update().lambda().eq(UserDept::getUserId, user.getId())); |
| | | result = userDeptService.saveBatch(userDeptList); |
| | | } |
| | | // 释放锁 |
| | |
| | | |
| | | |
| | | /** |
| | | * 创建校园安全发送短信定时任务 |
| | | * 创建校园安全发送短信定时任务 0 15 0 * * ? |
| | | */ |
| | | @XxlJob("ehjbJobHandler") |
| | | public void ehjbJobHandler (){ |
| | |
| | | ecOrderParamDTO.setStartTime(yesterdayStart); |
| | | boolean result = ecOrderService.SynchronizeData(ecOrderParamDTO); |
| | | XxlJobHelper.log("任务响应结果..." + result); |
| | | // 创建居住证发送短信定时任务 |
| | | XxlJobHelper.log("E呼即办定时任务-结束自动创建任务..."); |
| | | } |
| | | |
| New file |
| | |
| | | INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`) |
| | | VALUES ('1806128994395938817', 1123598815738675201, 'report', '在线excel设计器', 'menu', '/report/report', NULL, 1, 1, 0, 1, NULL, 0); |
| | | INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`) |
| | | VALUES ('1806128994395938818', '1806128994395938817', 'report_add', '新增', 'add', '/report/report/add', 'plus', 1, 2, 1, 1, NULL, 0); |
| | | INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`) |
| | | VALUES ('1806128994395938819', '1806128994395938817', 'report_edit', '修改', 'edit', '/report/report/edit', 'form', 2, 2, 2, 1, NULL, 0); |
| | | INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`) |
| | | VALUES ('1806128994395938820', '1806128994395938817', 'report_delete', '删除', 'delete', '/api/blade-report/report/remove', 'delete', 3, 2, 3, 1, NULL, 0); |
| | | INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`) |
| | | VALUES ('1806128994395938821', '1806128994395938817', 'report_view', '查看', 'view', '/report/report/view', 'file-text', 4, 2, 2, 1, NULL, 0); |
| New file |
| | |
| | | INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`) |
| | | VALUES ('1805843789026185217', 1123598815738675201, 'reportDb', '数据源', 'menu', '/reportDb/reportDb', NULL, 1, 1, 0, 1, NULL, 0); |
| | | INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`) |
| | | VALUES ('1805843789026185218', '1805843789026185217', 'reportDb_add', '新增', 'add', '/reportDb/reportDb/add', 'plus', 1, 2, 1, 1, NULL, 0); |
| | | INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`) |
| | | VALUES ('1805843789026185219', '1805843789026185217', 'reportDb_edit', '修改', 'edit', '/reportDb/reportDb/edit', 'form', 2, 2, 2, 1, NULL, 0); |
| | | INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`) |
| | | VALUES ('1805843789026185220', '1805843789026185217', 'reportDb_delete', '删除', 'delete', '/api/blade-reportDb/reportDb/remove', 'delete', 3, 2, 3, 1, NULL, 0); |
| | | INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`) |
| | | VALUES ('1805843789026185221', '1805843789026185217', 'reportDb_view', '查看', 'view', '/reportDb/reportDb/view', 'file-text', 4, 2, 2, 1, NULL, 0); |
| | |
| | | - /blade-smsSend/smsSend/send |
| | | - /blade-system/user/register-user |
| | | - /blade-eCallEventTwo/eCallEventTwo/synchronizeData |
| | | - /jmreport/** |
| | | - /public_discuss/publicDiscuss/publicDiscussTotal |
| | | - /public_discuss/publicDiscuss/managementProtocol |
| | | - /public_discuss/publicDiscuss/candidate |
| | | # - /blade-householdLabel/** |
| | | # - /blade-system/** |
| | | # - /blade-doorplateAddress/doorplateAddress/** |