Browse Source

update

yangzhenli
V26772074 1 year ago
parent
commit
2cc4db49a3
  1. 3
      jnpf-tendering-biz/src/main/java/jnpf/service/IndicatorStatisticsService.java
  2. 42
      jnpf-tendering-biz/src/main/java/jnpf/service/impl/IndicatorStatisticsServiceImpl.java
  3. 18
      jnpf-tendering-biz/src/main/resources/mapper/BiddingProjectSubscribeMapper.xml
  4. 6
      jnpf-tendering-controller/src/main/java/jnpf/controller/IndicatorStatisticsController.java
  5. 27
      jnpf-tendering-entity/src/main/java/jnpf/model/dto/IndicatorStatisticsDto.java

3
jnpf-tendering-biz/src/main/java/jnpf/service/IndicatorStatisticsService.java

@ -6,4 +6,7 @@ public interface IndicatorStatisticsService {
IndicatorStatisticsDto.ProjectsNumberResponse projectsNumber(IndicatorStatisticsDto.ProjectsNumberParam param); IndicatorStatisticsDto.ProjectsNumberResponse projectsNumber(IndicatorStatisticsDto.ProjectsNumberParam param);
IndicatorStatisticsDto.MoneyAndProjectsNumberResponse moneyAndProjectsNumber(IndicatorStatisticsDto.MoneyAndProjectsNumberParam param); IndicatorStatisticsDto.MoneyAndProjectsNumberResponse moneyAndProjectsNumber(IndicatorStatisticsDto.MoneyAndProjectsNumberParam param);
IndicatorStatisticsDto.MyToDoListResponse myToDoList();
} }

42
jnpf-tendering-biz/src/main/java/jnpf/service/impl/IndicatorStatisticsServiceImpl.java

@ -8,13 +8,17 @@ import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import jnpf.base.DictionaryDataApi; import jnpf.base.DictionaryDataApi;
import jnpf.base.UserInfo;
import jnpf.base.entity.DictionaryDataEntity; import jnpf.base.entity.DictionaryDataEntity;
import jnpf.entity.BiddingProjectSubscribeChild;
import jnpf.entity.Bidding_project_statisticsEntity; import jnpf.entity.Bidding_project_statisticsEntity;
import jnpf.enump.BiddingProjectEnum;
import jnpf.exception.DataException; import jnpf.exception.DataException;
import jnpf.model.dto.IndicatorStatisticsDto; import jnpf.model.dto.IndicatorStatisticsDto;
import jnpf.permission.model.authorize.AuthorizeConditionModel; import jnpf.permission.model.authorize.AuthorizeConditionModel;
import jnpf.service.BiddingProjectSubscribeService; import jnpf.service.BiddingProjectSubscribeService;
import jnpf.service.CustomAuthService; import jnpf.service.CustomAuthService;
import jnpf.service.IBiddingProjectSubscribeChildService;
import jnpf.service.IndicatorStatisticsService; import jnpf.service.IndicatorStatisticsService;
import jnpf.util.ServletUtil; import jnpf.util.ServletUtil;
import jnpf.util.UserProvider; import jnpf.util.UserProvider;
@ -27,6 +31,7 @@ import java.time.LocalDateTime;
import java.time.YearMonth; import java.time.YearMonth;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Optional; import java.util.Optional;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -36,6 +41,7 @@ import java.util.stream.Collectors;
public class IndicatorStatisticsServiceImpl implements IndicatorStatisticsService { public class IndicatorStatisticsServiceImpl implements IndicatorStatisticsService {
private final BiddingProjectSubscribeService biddingProjectSubscribeService; private final BiddingProjectSubscribeService biddingProjectSubscribeService;
private final IBiddingProjectSubscribeChildService iBiddingProjectSubscribeChildService;
private final CustomAuthService customAuthService; private final CustomAuthService customAuthService;
private final UserProvider userProvider; private final UserProvider userProvider;
private final DictionaryDataApi dictionaryDataApi; private final DictionaryDataApi dictionaryDataApi;
@ -207,6 +213,13 @@ public class IndicatorStatisticsServiceImpl implements IndicatorStatisticsServic
.filter(fullName -> !oldNameList.contains(fullName)) .filter(fullName -> !oldNameList.contains(fullName))
.collect(Collectors.toList()); .collect(Collectors.toList());
break; break;
case "5":
newNameList = dictionaryDataApi.getList("dc6b2542d94b5434fc61ec1d59592901")
.stream()
.map(DictionaryDataEntity::getFullName)
.filter(fullName -> !oldNameList.contains(fullName))
.collect(Collectors.toList());
break;
} }
if (CollectionUtil.isEmpty(newNameList)) { if (CollectionUtil.isEmpty(newNameList)) {
@ -236,6 +249,17 @@ public class IndicatorStatisticsServiceImpl implements IndicatorStatisticsServic
param.setCorresponding(yyyy); param.setCorresponding(yyyy);
case "3": case "3":
break; break;
case "4":
if (StrUtil.isBlank(param.getStartTime()) || StrUtil.isBlank(param.getEndTime())) {
throw new DataException("请传入开始及结束时间");
}
try {
LocalDateTimeUtil.parse(param.getStartTime(), "yyyy-MM-dd HH:mm:ss");
LocalDateTimeUtil.parse(param.getEndTime(), "yyyy-MM-dd HH:mm:ss");
} catch (Exception e) {
throw new DataException("时间格式错误,应为yyyy-MM-dd HH:mm:ss");
}
break;
default: default:
throw new DataException("查询类型错误: " + param.getQueryDateType()); throw new DataException("查询类型错误: " + param.getQueryDateType());
} }
@ -243,4 +267,22 @@ public class IndicatorStatisticsServiceImpl implements IndicatorStatisticsServic
return response; return response;
} }
@Override
public IndicatorStatisticsDto.MyToDoListResponse myToDoList() {
IndicatorStatisticsDto.MyToDoListResponse response = new IndicatorStatisticsDto.MyToDoListResponse();
//查询用户信息
UserInfo userInfo = userProvider.get();
//待办数量
response.setTodoCount(iBiddingProjectSubscribeChildService.lambdaQuery()
.eq(BiddingProjectSubscribeChild::getUserId, userInfo.getUserId())
.in(BiddingProjectSubscribeChild::getChildStatus, Arrays.asList(BiddingProjectEnum.ChildStatusEnum.PENDING_REVIEW.getCode(), BiddingProjectEnum.ChildStatusEnum.TO_BE_ARCHIVED.getCode(), BiddingProjectEnum.ChildStatusEnum.TO_BE_SUBMITTED.getCode(), BiddingProjectEnum.ChildStatusEnum.TO_BE_EDIT.getCode()))
.count() + "");
//已办数量
response.setAlreadyCount(iBiddingProjectSubscribeChildService.lambdaQuery()
.eq(BiddingProjectSubscribeChild::getUserId, userInfo.getUserId())
.in(BiddingProjectSubscribeChild::getChildStatus, Arrays.asList(BiddingProjectEnum.ChildStatusEnum.RETURNED.getCode(), BiddingProjectEnum.ChildStatusEnum.ARCHIVED.getCode(), BiddingProjectEnum.ChildStatusEnum.PASS.getCode()))
.count() + "");
return response;
}
} }

18
jnpf-tendering-biz/src/main/resources/mapper/BiddingProjectSubscribeMapper.xml

@ -161,16 +161,16 @@
</select> </select>
<select id="getProjectsNumberByType" resultType="jnpf.model.dto.IndicatorStatisticsDto$Indicator"> <select id="getProjectsNumberByType" resultType="jnpf.model.dto.IndicatorStatisticsDto$Indicator">
select select
<if test="param.type=='1'.toString()">
count(1) yData, count(1) yData,
count(case management_style when '1' then 1 end ) spCount,
count(case management_style when '2' then 1 end ) baCount,
<if test="param.type=='1'.toString()">
concat(date_format(create_time,'%d'),'日') xData concat(date_format(create_time,'%d'),'日') xData
</if> </if>
<if test="param.type=='2'.toString()"> <if test="param.type=='2'.toString()">
count(1) yData,
concat(date_format(create_time,'%m'),'月') xData concat(date_format(create_time,'%m'),'月') xData
</if> </if>
<if test="param.type=='3'.toString()"> <if test="param.type=='3'.toString()">
count(1) yData,
concat(date_format(create_time,'%Y'),'年') xData concat(date_format(create_time,'%Y'),'年') xData
</if> </if>
from bidding_project_subscribe main from bidding_project_subscribe main
@ -216,6 +216,11 @@
count(bidding_method) projectsNumber, count(bidding_method) projectsNumber,
(select f_full_name from base_dictionary_data where f_dictionary_type_id='539394095383057605' and f_en_code=main.bidding_method limit 1) yName (select f_full_name from base_dictionary_data where f_dictionary_type_id='539394095383057605' and f_en_code=main.bidding_method limit 1) yName
</if> </if>
<if test="param.classificationType=='5'.toString()">
count(agency_one) projectsNumber,
(select f_full_name from base_dictionary_data where f_dictionary_type_id='dc6b2542d94b5434fc61ec1d59592901' and f_en_code=main.agency_one limit 1) yName
</if>
from bidding_project_subscribe main from bidding_project_subscribe main
where 1=1 where 1=1
<if test="param.queryDateType=='1'.toString()"> <if test="param.queryDateType=='1'.toString()">
@ -224,6 +229,9 @@
<if test="param.queryDateType=='2'.toString()"> <if test="param.queryDateType=='2'.toString()">
and date_format(create_time,'%Y')=#{param.corresponding} and date_format(create_time,'%Y')=#{param.corresponding}
</if> </if>
<if test="param.queryDateType=='4'.toString()">
and create_time between #{param.startTime} and #{param.endTime}
</if>
<if test="sql != null and sql !=''"> <if test="sql != null and sql !=''">
and main.id in (select child.main_id from bidding_project_subscribe_child child where root_child_flag='0' and main.id in (select child.main_id from bidding_project_subscribe_child child where root_child_flag='0'
and ${sql}) and ${sql})
@ -237,5 +245,9 @@
<if test="param.classificationType=='4'.toString()"> <if test="param.classificationType=='4'.toString()">
group by bidding_method order by count(bidding_method) desc group by bidding_method order by count(bidding_method) desc
</if> </if>
<if test="param.classificationType=='5'.toString()">
group by agency_one order by count(agency_one) desc
</if>
</select> </select>
</mapper> </mapper>

6
jnpf-tendering-controller/src/main/java/jnpf/controller/IndicatorStatisticsController.java

@ -41,5 +41,11 @@ public class IndicatorStatisticsController {
return ActionResult.success(indicatorStatisticsService.moneyAndProjectsNumber(param)); return ActionResult.success(indicatorStatisticsService.moneyAndProjectsNumber(param));
} }
@Operation(summary = "我的待办")
@GetMapping("/myToDoList")
public ActionResult<IndicatorStatisticsDto.MyToDoListResponse> myToDoList() {
return ActionResult.success(indicatorStatisticsService.myToDoList());
}
} }

27
jnpf-tendering-entity/src/main/java/jnpf/model/dto/IndicatorStatisticsDto.java

@ -50,24 +50,40 @@ public class IndicatorStatisticsDto {
* y轴数据 * y轴数据
*/ */
private String yData; private String yData;
/**
* 审批数量
*/
private String spCount="0";
/**
* 备案数量
*/
private String baCount="0";
} }
@Data @Data
public static class MoneyAndProjectsNumberParam { public static class MoneyAndProjectsNumberParam {
/** /**
* 查询类型 1-本月 默认本月2-当年3-累计 * 查询类型 1-本月 默认本月2-当年3-累计 4-自定义日期
*/ */
private String queryDateType = "1"; private String queryDateType = "1";
/** /**
* 查询类型 1-所有(默认所有) 2-按组织形式分布 3-按事项分类分布 4-按招标方式分布 * 查询类型 1-所有(默认所有) 2-按组织形式分布 3-按事项分类分布 4-按招标方式分布 5-招标代理统计
*/ */
private String classificationType = "1"; private String classificationType = "1";
/** /**
* 权限控制 * 权限控制
*/ */
private String menuId; private String menuId;
//mapper查询使用 日期
private String corresponding; private String corresponding;
/**
* 自定义日期查询使用 -开始时间 yyyy-MM-dd HH:mm:ss
*/
private String startTime;
private String endTime;
} }
@Data @Data
@ -94,4 +110,11 @@ public class IndicatorStatisticsDto {
*/ */
private String money; private String money;
} }
@Data
public static class MyToDoListResponse {
private String todoCount;
private String alreadyCount;
}
} }

Loading…
Cancel
Save