| | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.yuanchu.mom.annotation.ValueAuth; |
| | | import com.yuanchu.mom.common.GetLook; |
| | | import com.yuanchu.mom.dto.DataReportingCsvDto; |
| | | import com.yuanchu.mom.dto.DataReportingPageDto; |
| | | import com.yuanchu.mom.dto.ProductCountDto; |
| | | import com.yuanchu.mom.dto.RegistrantCountDto; |
| | | import com.yuanchu.mom.dto.*; |
| | | import com.yuanchu.mom.exception.ErrorException; |
| | | import com.yuanchu.mom.pojo.DataReporting; |
| | | import com.yuanchu.mom.pojo.FansSubmit; |
| | |
| | | } |
| | | return Result.success(); |
| | | } |
| | | |
| | | @ApiOperation(value = "è·åæ°æ®å¯¹æ¯å表") |
| | | @PostMapping("/selectDataComparisonDtoPageList") |
| | | public Result selectDataComparisonDtoPageList(@RequestBody Map<String, Object> data) { |
| | | Page page = JSON.parseObject(JSON.toJSONString(data.get("page")), Page.class); |
| | | DataComparisonDto dataComparisonDto = JSON.parseObject(JSON.toJSONString(data.get("entity")), DataComparisonDto.class); |
| | | Map<String, Object> stringObjectMap = dataReportingService.selectDataComparisonDtoPageList(page, dataComparisonDto); |
| | | return Result.success(stringObjectMap); |
| | | } |
| | | |
| | | public static void main(String[] args) { |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.yuanchu.mom.dto; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import com.yuanchu.mom.annotation.ValueTableShow; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.AllArgsConstructor; |
| | | import lombok.Data; |
| | | import lombok.NoArgsConstructor; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.time.LocalDateTime; |
| | | |
| | | /** |
| | | * @Author æ´å |
| | | * @Date 2024/1/8 |
| | | */ |
| | | @Data |
| | | @AllArgsConstructor |
| | | @NoArgsConstructor |
| | | public class DataComparisonDto { |
| | | |
| | | @ApiModelProperty("è´¦å·") |
| | | @ValueTableShow(1) |
| | | private String account; |
| | | |
| | | @ApiModelProperty("è´¦æ·å") |
| | | @ValueTableShow(2) |
| | | private String name; |
| | | |
| | | @ApiModelProperty("è´¦æ·æ¶è´¹éé¢") |
| | | @ValueTableShow(3) |
| | | private BigDecimal consumption; |
| | | |
| | | @ApiModelProperty("ç»è®°æ¶é´") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | @ValueTableShow(4) |
| | | private LocalDateTime createTime; |
| | | |
| | | @ApiModelProperty("对æ¯çè´¦å·") |
| | | @ValueTableShow(5) |
| | | private String comparisonAccount; |
| | | |
| | | @ApiModelProperty("对æ¯çè´¦æ·å") |
| | | @ValueTableShow(6) |
| | | private String comparisonName; |
| | | |
| | | @ApiModelProperty("对æ¯çæ¶è´¹éé¢") |
| | | @ValueTableShow(7) |
| | | private BigDecimal comparisonConsumption; |
| | | |
| | | @ApiModelProperty("对æ¯çç»è®°æ¶é´") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | @ValueTableShow(8) |
| | | private LocalDateTime comparisonCreateTime; |
| | | } |
| | |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.yuanchu.mom.dto.DataComparisonDto; |
| | | import com.yuanchu.mom.dto.DataReportingPageDto; |
| | | import com.yuanchu.mom.dto.ProductCountDto; |
| | | import com.yuanchu.mom.dto.RegistrantCountDto; |
| | | import com.yuanchu.mom.pojo.DataReporting; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import org.apache.ibatis.annotations.Param; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.List; |
| | |
| | | |
| | | Map<String, String> selectUser(Integer userId); |
| | | |
| | | IPage<DataComparisonDto> selectDataComparisonDtoPageList(Page page, DataComparisonDto dataComparisonDto); |
| | | } |
| | | |
| | | |
| | |
| | | package com.yuanchu.mom.service; |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.yuanchu.mom.dto.DataComparisonDto; |
| | | import com.yuanchu.mom.dto.DataReportingPageDto; |
| | | import com.yuanchu.mom.dto.ProductCountDto; |
| | | import com.yuanchu.mom.dto.RegistrantCountDto; |
| | |
| | | |
| | | String downFansSubmitFile(IPage<FansSubmit> page, FansSubmit fansSubmit); |
| | | |
| | | Map<String, Object> selectDataComparisonDtoPageList(Page page, DataComparisonDto dataComparisonDto); |
| | | |
| | | } |
| | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.core.toolkit.StringUtils; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.yuanchu.mom.common.GetLook; |
| | | import com.yuanchu.mom.common.PrintChina; |
| | | import com.yuanchu.mom.dto.DataComparisonDto; |
| | | import com.yuanchu.mom.dto.DataReportingPageDto; |
| | | import com.yuanchu.mom.dto.ProductCountDto; |
| | | import com.yuanchu.mom.dto.RegistrantCountDto; |
| | |
| | | writer.close(); |
| | | return name; |
| | | } |
| | | |
| | | /** |
| | | * è·åæ°æ®å¯¹æ¯å表 |
| | | */ |
| | | @Override |
| | | public Map<String, Object> selectDataComparisonDtoPageList(Page page, DataComparisonDto dataComparisonDto) { |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("head", PrintChina.printChina(DataComparisonDto.class)); |
| | | |
| | | if (StringUtils.isEmpty(dataComparisonDto.getName()) |
| | | || StringUtils.isEmpty(dataComparisonDto.getComparisonName())) { |
| | | map.put("body", new Page<DataComparisonDto>()); |
| | | }else { |
| | | IPage<DataComparisonDto> dataReportingPageDtoIPage = dataReportingMapper.selectDataComparisonDtoPageList(page, dataComparisonDto); |
| | | map.put("body", dataReportingPageDtoIPage); |
| | | } |
| | | return map; |
| | | } |
| | | } |
| | | |
| | | |
| | |
| | | select user.department, user.name, user.account from user |
| | | where id = #{userId} |
| | | </select> |
| | | |
| | | <select id="selectDataComparisonDtoPageList" resultType="com.yuanchu.mom.dto.DataComparisonDto"> |
| | | select a.account account, |
| | | a.name name, |
| | | a.account_consumption consumption, |
| | | a.create_time createTime, |
| | | b.account comparisonAccount, |
| | | b.name comparisonName, |
| | | b.account_consumption comparisonConsumption, |
| | | b.create_time comparisonCreateTime |
| | | from (select user.account, |
| | | user.name, |
| | | dr1.account_consumption, |
| | | dr1.create_time |
| | | from data_reporting dr1 |
| | | join user on dr1.create_user = user.id |
| | | where date_format(dr1.create_time, '%Y-%m-%d') = date_format(#{dataComparisonDto.createTime}, '%Y-%m-%d') |
| | | and user.name like concat('%', #{dataComparisonDto.name}, '%')) a, |
| | | (select user.account, |
| | | user.name, |
| | | dr2.account_consumption, |
| | | dr2.create_time |
| | | from data_reporting dr2 |
| | | join user on dr2.create_user = user.id |
| | | where date_format(dr2.create_time, '%Y-%m-%d') = date_format(#{dataComparisonDto.createTime}, '%Y-%m-%d') |
| | | and user.name like concat('%', #{dataComparisonDto.comparisonName}, '%')) b |
| | | where a.account_consumption != b.account_consumption |
| | | </select> |
| | | </mapper> |