Commit 97dced94 authored by tangwei's avatar tangwei

增加权限拦截

parent d91d5fdd
......@@ -99,4 +99,13 @@ public class TdHygfJpInverterWarn {
@TableField("handler_status")
private String handlerStatus ;
@TableField("station_name")
private String stationName; //名称
@TableField("regional_companies_code")
private String regionalCompaniesCode; //区域公司code
@TableField("amos_company_code")
private String amosCompanyCode; //经销商code
}
......@@ -20,7 +20,11 @@ import java.util.Map;
* @date 2023-09-19
*/
public interface JpStationMapper extends BaseMapper<JpStation> {
@UserEmpower(field ={"hygf_jp_station.regional_companies_code"},dealerField ={"amos_company_code","regional_companies_code"} ,fieldConditions ={"eq","in"} ,relationship="and")
List<JpStationDto> queryForDealerReviewPage(@Param("dto") JpStationDto reviewDto);
JpStationDto queryCount(@Param("dto") JpStationDto reviewDto);
List<Map<String,Object>> countState(@Param("dto") JpStationDto reviewDto);
List<Map<String,Double>> getPowerqx(String dateType);
......
package com.yeejoin.amos.boot.module.hygf.api.tdenginemapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yeejoin.amos.boot.module.hygf.api.config.UserEmpower;
import com.yeejoin.amos.boot.module.hygf.api.dto.PowerCurveDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.DayGenerate;
import com.yeejoin.amos.boot.module.hygf.api.entity.JpStation;
......@@ -30,5 +33,11 @@ public interface DayGenerateMapper extends BaseMapper<DayGenerate> {
List<PowerCurveDto> getYearGenerateqx(@Param("date") String month, @Param("dto")List<String> statioId);
@UserEmpower(field ={"regional_companies_code"},dealerField ={"amos_company_code","regional_companies_code"} ,fieldConditions ={"eq","in"} ,relationship="and")
List<DayGenerate> selectPagenewDayGenerate(@Param("current") int current,@Param("size") int size,@Param("dto") List<String> statioId, @Param("dateTime")String dateTime );
@UserEmpower(field ={"regional_companies_code"},dealerField ={"amos_company_code","regional_companies_code"} ,fieldConditions ={"eq","in"} ,relationship="and")
Integer selectCount(@Param(Constants.WRAPPER) Wrapper<DayGenerate> queryWrapper);
}
package com.yeejoin.amos.boot.module.hygf.api.tdenginemapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.hygf.api.config.UserEmpower;
import com.yeejoin.amos.boot.module.hygf.api.dto.TdHygfJpInverterWarnDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.JpStation;
import com.yeejoin.amos.boot.module.hygf.api.entity.TdHygfJpInverterWarn;
......@@ -29,9 +30,11 @@ public interface TdHygfJpInverterWarnMapper extends BaseMapper<TdHygfJpInverterW
TdHygfJpInverterWarnDto getByTime(@Param("createdTime") long createdTime);
List<TdHygfJpInverterWarnDto> selectWarnList(String state, String level, String minvalue, String maxValue, String snCode, List<String> stationId, String startTime, String endTime, String content, Integer current, Integer size,String handlerStatus);
int selectWarnListTotal(String state, String level, String minvalue, String maxValue, String snCode, List<String> stationId, String startTime, String endTime, String content,String handlerStatus);
@UserEmpower(field ={"regional_companies_code"},dealerField ={"amos_company_code","regional_companies_code"} ,fieldConditions ={"eq","in"} ,relationship="and")
List<TdHygfJpInverterWarnDto> selectWarnList(String state, String level, String minvalue, String maxValue, String snCode, List<String> stationId, String startTime, String endTime, String content, Integer current, Integer size,String handlerStatus,String stationName);
@UserEmpower(field ={"regional_companies_code"},dealerField ={"amos_company_code","regional_companies_code"} ,fieldConditions ={"eq","in"} ,relationship="and")
int selectWarnListTotal(String state, String level, String minvalue, String maxValue, String snCode, List<String> stationId, String startTime, String endTime, String content,String handlerStatus,String stationName);
@Select("SELECT * from td_hygf_jp_inverter_warn WHERE (third_station_id = #{thirdStationId} AND sn_code = #{sncode} AND created_time = #{createdTime})")
TdHygfJpInverterWarn getInverTerWarnByparams(@Param("createdTime") long createdTime, @Param("sncode") String snCode, @Param("thirdStationId") String thirdStationId);
......
......@@ -89,7 +89,7 @@
<if test="snCode != null and snCode != ''">
AND sn_code like #{snCode}
</if>
<if test="stationId.size >0 ">
<if test="stationId != null and stationId.size >0 ">
AND third_station_id in
<foreach collection="stationId" item="item" open='(' close=')' separator=",">
#{item}
......@@ -104,6 +104,9 @@
<if test="content != null and content != ''">
AND content like #{content}
</if>
<if test="stationName != null and stationName != ''">
AND station_name like #{stationName}
</if>
</where>
ORDER BY start_time desc
limit #{current},#{size}
......@@ -133,7 +136,7 @@
<if test="snCode != null and snCode != ''">
AND sn_code like #{snCode}
</if>
<if test="stationId.size >0 ">
<if test="stationId != null and stationId.size >0 ">
AND third_station_id in
<foreach collection="stationId" item="item" open='(' close=')' separator=",">
#{item}
......@@ -148,6 +151,11 @@
<if test="content != null and content != ''">
AND content like #{content}
</if>
<if test="stationName != null and stationName != ''">
AND station_name like #{stationName}
</if>
</where>
</select>
</mapper>
......@@ -3,6 +3,7 @@ package com.yeejoin.amos.boot.module.hygf.biz.config;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
import com.github.pagehelper.PageInterceptor;
import com.yeejoin.amos.boot.module.hygf.api.config.UserEmpowerInterceptor;
import org.apache.ibatis.plugin.Interceptor;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionTemplate;
......@@ -56,7 +57,13 @@ public class TDengineServerConfig {
"" +
";");
interceptor.setProperties(properties);
bean.setPlugins(new Interceptor[] {interceptor,paginationInterceptor()});
bean.setPlugins(new Interceptor[] {interceptor,
userEmpowerInterceptor(),
paginationInterceptor()
});
return bean.getObject();
}
......@@ -66,6 +73,12 @@ public class TDengineServerConfig {
return new DataSourceTransactionManager(dataSource);
}
@Bean
public UserEmpowerInterceptor userEmpowerInterceptor() {
UserEmpowerInterceptor userEmpowerInterceptor = new UserEmpowerInterceptor();
return userEmpowerInterceptor;
}
@Bean(name = "tdengineSqlSessionTemplate")
public SqlSessionTemplate tdengineSqlSessionTemplate(@Qualifier("tdengineSqlSessionFactory") SqlSessionFactory sqlSessionFactory) throws Exception {
......
......@@ -245,24 +245,24 @@ public class TdHygfJpInverterWarnController extends BaseController {
Page<TdHygfJpInverterWarnDto> result = new Page<>();
result.setCurrent(current);
result.setSize(size);
JpStationDto reviewDto = new JpStationDto();
Map<String, String> nameMaps = new HashMap<>();
if (null != stationName && stationName != "") {
reviewDto.setName(stationName);
}
List<JpStation> jpStation = jpStationMapper.getJpStation(reviewDto);
if (CollectionUtil.isEmpty(jpStation)) {
result.setTotal(0);
List<TdHygfJpInverterWarnDto> list = new ArrayList<>();
result.setRecords(list);
return ResponseHelper.buildResponse(result);
}
nameMaps = jpStation.stream().collect(Collectors.toMap(JpStation::getThirdStationId, JpStation::getName, (existing, replacement) -> existing));
if (null == stationId) {
stationId = jpStation.stream().map(JpStation::getThirdStationId).collect(Collectors.toList());
}
// JpStationDto reviewDto = new JpStationDto();
// Map<String, String> nameMaps = new HashMap<>();
// if (null != stationName && stationName != "") {
// reviewDto.setName(stationName);
// }
// List<JpStation> jpStation = jpStationMapper.getJpStation(reviewDto);
// if (CollectionUtil.isEmpty(jpStation)) {
// result.setTotal(0);
// List<TdHygfJpInverterWarnDto> list = new ArrayList<>();
// result.setRecords(list);
// return ResponseHelper.buildResponse(result);
//
// }
// nameMaps = jpStation.stream().collect(Collectors.toMap(JpStation::getThirdStationId, JpStation::getName, (existing, replacement) -> existing));
//
// if (null == stationId) {
// stationId = jpStation.stream().map(JpStation::getThirdStationId).collect(Collectors.toList());
// }
String startTime = "";
String endTime = "";
if (null != time) {
......@@ -281,16 +281,22 @@ public class TdHygfJpInverterWarnController extends BaseController {
if (StringUtils.isNotEmpty(content)) {
content = '%' + content + '%';
}
List<TdHygfJpInverterWarnDto> maps = tdHygfJpInverterWarnServiceImpl.selectWarnList(state, level, minvalue, maxValue, snCode, stationId, startTime, endTime, content, current, size, handlerStatus);
if (StringUtils.isNotEmpty(stationName)) {
stationName = '%' + stationName + '%';
}
List<TdHygfJpInverterWarnDto> maps = tdHygfJpInverterWarnServiceImpl.selectWarnList(state, level, minvalue, maxValue, snCode, stationId, startTime, endTime, content, current, size, handlerStatus,stationName);
for (TdHygfJpInverterWarnDto map : maps) {
if (nameMaps.containsKey(map.getThirdStationId())) {
map.setStationName(nameMaps.get(map.getThirdStationId()));
}
// if (nameMaps.containsKey(map.getThirdStationId())) {
// map.setStationName(nameMaps.get(map.getThirdStationId()));
// }
String te = map.getTimeLong() != null ? TimeUtil.longFormat(map.getTimeLong()) : "";
map.setTimeLongFormat(te);
}
result.setTotal(tdHygfJpInverterWarnServiceImpl.selectWarnListTotal(state, level, minvalue, maxValue, snCode, stationId, startTime, endTime, content, handlerStatus));
result.setTotal(tdHygfJpInverterWarnServiceImpl.selectWarnListTotal(state, level, minvalue, maxValue, snCode, stationId, startTime, endTime, content, handlerStatus,stationName));
List<Long> waringIds = maps.stream().map(tdHygfJpInverterWarnDto -> tdHygfJpInverterWarnDto.getCreatedTime()).collect(Collectors.toList());
if (waringIds.size() == 0) {
waringIds = Arrays.asList(0L);
......
......@@ -395,23 +395,17 @@ public class JpStationServiceImpl extends BaseService<JpStationDto,JpStation,JpS
map.put("y",listy);
return map;
}
@UserLimits
@UserLimits
public Page<JpStationDto> queryReport(int pageNum, int pageSize, JpStationDto reviewDto,String type) {
//权限
List<String> statioId=new ArrayList();
// if(reviewDto.getThirdStationIds()!=null){
// List<String> dd= reviewDto.getThirdStationIds()!=null? JSON.parseArray(reviewDto.getThirdStationIds().get(0),String.class):null;
// reviewDto.setThirdStationIds(dd);
// }
//查出权限下电站
List<JpStation> dataJpStation= jpStationMapper.getJpStation(reviewDto);
if(reviewDto.getThirdStationIds()==null||reviewDto.getThirdStationIds().isEmpty()){
for (JpStation jpStation : dataJpStation) {
statioId.add(jpStation.getThirdStationId());
}
reviewDto.setThirdStationIds(statioId);
}
List<JpStationDto> list = null;
int count=0;
......@@ -422,9 +416,11 @@ public class JpStationServiceImpl extends BaseService<JpStationDto,JpStation,JpS
reviewDto.setTimeDate(DateUtil.format(new Date(),"yyyy-MM-dd"));
}
LambdaQueryWrapper<DayGenerate> wapper = new LambdaQueryWrapper<DayGenerate>();
wapper.in(DayGenerate::getThirdStationId,reviewDto.getThirdStationIds());
wapper.in(reviewDto.getThirdStationId()!=null&&!reviewDto.getThirdStationId().isEmpty(),DayGenerate::getThirdStationId,reviewDto.getThirdStationIds());
wapper.eq(reviewDto.getTimeDate()!=null&&!reviewDto.getTimeDate().equals(""),DayGenerate::getDayTime,reviewDto.getTimeDate());
//拦截拼接权限
count= dayGenerateMapper.selectCount(wapper);
//拦截拼接权限
List<DayGenerate> listday= dayGenerateMapper.selectPagenewDayGenerate((pageNum-1)*pageSize,pageSize,reviewDto.getThirdStationIds(),reviewDto.getTimeDate());
list = getJpStationDtoday( dataJpStation, listday);
break;
......@@ -433,10 +429,12 @@ public class JpStationServiceImpl extends BaseService<JpStationDto,JpStation,JpS
reviewDto.setTimeDate(DateUtil.format(new Date(),"yyyy-MM"));
}
LambdaQueryWrapper<MonthGenerate> wapper1 = new LambdaQueryWrapper<MonthGenerate>();
wapper1.in(MonthGenerate::getThirdStationId,reviewDto.getThirdStationIds());
wapper1.in(reviewDto.getThirdStationId()!=null&&!reviewDto.getThirdStationId().isEmpty(),MonthGenerate::getThirdStationId,reviewDto.getThirdStationIds());
wapper1.eq(reviewDto.getTimeDate()!=null&&!reviewDto.getTimeDate().equals(""),MonthGenerate::getMonthTime,reviewDto.getTimeDate());
//拦截拼接权限
count= monthGenerateMapper.selectCount(wapper1);
List<MonthGenerate> listmonth= monthGenerateMapper.selectPagenewMonthGenerate((pageNum-1)*pageSize,pageSize,reviewDto.getThirdStationIds(),reviewDto.getTimeDate());
//拦截拼接权限
List<MonthGenerate> listmonth= monthGenerateMapper.selectPagenewMonthGenerate((pageNum-1)*pageSize,pageSize,reviewDto.getThirdStationIds(),reviewDto.getTimeDate());
list = getJpStationDtomonth( dataJpStation, listmonth);
break;
......@@ -445,9 +443,11 @@ public class JpStationServiceImpl extends BaseService<JpStationDto,JpStation,JpS
reviewDto.setTimeDate(DateUtil.format(new Date(),"yyyy"));
}
LambdaQueryWrapper<YearGenerate> wapper2 = new LambdaQueryWrapper<YearGenerate>();
wapper2.in(YearGenerate::getThirdStationId,reviewDto.getThirdStationIds());
wapper2.in(reviewDto.getThirdStationId()!=null&&!reviewDto.getThirdStationId().isEmpty(),YearGenerate::getThirdStationId,reviewDto.getThirdStationIds());
wapper2.eq(reviewDto.getTimeDate()!=null&&!reviewDto.getTimeDate().equals(""),YearGenerate::getYear,reviewDto.getTimeDate());
//拦截拼接权限
count= yearGenerateMapper.selectCount(wapper2);
//拦截拼接权限
List<YearGenerate> listyear= yearGenerateMapper.selectPagenewYearGenerate((pageNum-1)*pageSize,pageSize,reviewDto.getThirdStationIds(),reviewDto.getTimeDate());
......@@ -457,6 +457,7 @@ public class JpStationServiceImpl extends BaseService<JpStationDto,JpStation,JpS
count= reviewDto.getThirdStationIds()!=null?reviewDto.getThirdStationIds().size():0;
PageHelper.startPage(pageNum, pageSize);
List<JpStationDto> listJ= jpStationMapper.queryForDealerReviewPage(reviewDto);
list = getJpStationDtoAlldto(listJ);
......@@ -475,6 +476,100 @@ public class JpStationServiceImpl extends BaseService<JpStationDto,JpStation,JpS
// @UserLimits
// public Page<JpStationDto> queryReport(int pageNum, int pageSize, JpStationDto reviewDto,String type) {
// //权限
// List<String> statioId=new ArrayList();
//
// List<JpStation> dataJpStation= jpStationMapper.getJpStation(reviewDto);
// if(reviewDto.getThirdStationIds()==null||reviewDto.getThirdStationIds().isEmpty()){
// for (JpStation jpStation : dataJpStation) {
// statioId.add(jpStation.getThirdStationId());
// }
// reviewDto.setThirdStationIds(statioId);
// }
//
//
// List<JpStationDto> list = null;
// int count=0;
// if(dataJpStation!=null&&dataJpStation.size()>0){
// switch (type){
// case"day":
// if (StringUtils.isEmpty(reviewDto.getTimeDate())){
// reviewDto.setTimeDate(DateUtil.format(new Date(),"yyyy-MM-dd"));
// }
// LambdaQueryWrapper<DayGenerate> wapper = new LambdaQueryWrapper<DayGenerate>();
// wapper.in(DayGenerate::getThirdStationId,reviewDto.getThirdStationIds());
// wapper.eq(reviewDto.getTimeDate()!=null&&!reviewDto.getTimeDate().equals(""),DayGenerate::getDayTime,reviewDto.getTimeDate());
// count= dayGenerateMapper.selectCount(wapper);
// List<DayGenerate> listday= dayGenerateMapper.selectPagenewDayGenerate((pageNum-1)*pageSize,pageSize,reviewDto.getThirdStationIds(),reviewDto.getTimeDate());
// list = getJpStationDtoday( dataJpStation, listday);
// break;
// case"month":
// if (StringUtils.isEmpty(reviewDto.getTimeDate())){
// reviewDto.setTimeDate(DateUtil.format(new Date(),"yyyy-MM"));
// }
// LambdaQueryWrapper<MonthGenerate> wapper1 = new LambdaQueryWrapper<MonthGenerate>();
// wapper1.in(MonthGenerate::getThirdStationId,reviewDto.getThirdStationIds());
// wapper1.eq(reviewDto.getTimeDate()!=null&&!reviewDto.getTimeDate().equals(""),MonthGenerate::getMonthTime,reviewDto.getTimeDate());
// count= monthGenerateMapper.selectCount(wapper1);
// List<MonthGenerate> listmonth= monthGenerateMapper.selectPagenewMonthGenerate((pageNum-1)*pageSize,pageSize,reviewDto.getThirdStationIds(),reviewDto.getTimeDate());
//
// list = getJpStationDtomonth( dataJpStation, listmonth);
// break;
// case"year":
// if (StringUtils.isEmpty(reviewDto.getTimeDate())){
// reviewDto.setTimeDate(DateUtil.format(new Date(),"yyyy"));
// }
// LambdaQueryWrapper<YearGenerate> wapper2 = new LambdaQueryWrapper<YearGenerate>();
// wapper2.in(YearGenerate::getThirdStationId,reviewDto.getThirdStationIds());
// wapper2.eq(reviewDto.getTimeDate()!=null&&!reviewDto.getTimeDate().equals(""),YearGenerate::getYear,reviewDto.getTimeDate());
// count= yearGenerateMapper.selectCount(wapper2);
// List<YearGenerate> listyear= yearGenerateMapper.selectPagenewYearGenerate((pageNum-1)*pageSize,pageSize,reviewDto.getThirdStationIds(),reviewDto.getTimeDate());
//
//
// list = getJpStationDtoyear( dataJpStation, listyear);
// break;
// default:
//
// count= reviewDto.getThirdStationIds()!=null?reviewDto.getThirdStationIds().size():0;
// PageHelper.startPage(pageNum, pageSize);
// List<JpStationDto> listJ= jpStationMapper.queryForDealerReviewPage(reviewDto);
//
// list = getJpStationDtoAlldto(listJ);
// }
// }
// com.baomidou.mybatisplus.extension.plugins.pagination.Page<JpStationDto> pagenew = new com.baomidou.mybatisplus.extension.plugins.pagination.Page<JpStationDto>();
// pagenew.setCurrent(pageNum);
// pagenew.setTotal(count);
// pagenew.setSize(pageSize);
// pagenew.setRecords(list);
// return pagenew;
// }
public List<JpStationDto> getJpStationDtoAlldto( List<JpStationDto> da){
List<JpStationDto> ld=new ArrayList<>();
for (JpStationDto jpStation : da) {
......
......@@ -40,7 +40,8 @@ public class TdHygfJpInverterWarnServiceImpl
@Autowired
HYGFMaintenanceTicketsMapper hygfMaintenanceTicketsMapper;
@Autowired
TdHygfJpInverterWarnMapper tdHygfJpInverterWarnMapper;
/**
* 分页查询
*/
......@@ -165,8 +166,8 @@ public class TdHygfJpInverterWarnServiceImpl
return tdHygfJpInverterWarnDto;
}
public List<TdHygfJpInverterWarnDto> selectWarnList(String state, String level, String minvalue, String maxValue, String snCode, List<String> stationId, String startTime, String endTime, String content, Integer current, Integer size, String handlerStatus) {
List<TdHygfJpInverterWarnDto> list = this.getBaseMapper().selectWarnList(state, level, minvalue, maxValue, snCode, stationId, startTime, endTime, content, (current - 1) * size, size, handlerStatus);
public List<TdHygfJpInverterWarnDto> selectWarnList(String state, String level, String minvalue, String maxValue, String snCode, List<String> stationId, String startTime, String endTime, String content, Integer current, Integer size, String handlerStatus,String stationName) {
List<TdHygfJpInverterWarnDto> list = tdHygfJpInverterWarnMapper.selectWarnList(state, level, minvalue, maxValue, snCode, stationId, startTime, endTime, content, (current - 1) * size, size, handlerStatus, stationName);
list.forEach(i -> {
JpStation jpStation = jpStationServiceImpl.getOne(new LambdaQueryWrapper<JpStation>()
.eq(JpStation::getThirdStationId, i.getThirdStationId()));
......@@ -178,7 +179,7 @@ public class TdHygfJpInverterWarnServiceImpl
return list;
}
public int selectWarnListTotal(String state, String level, String minvalue, String maxValue, String snCode, List<String> stationId, String startTime, String endTime, String content, String handlerStatus) {
return this.getBaseMapper().selectWarnListTotal(state, level, minvalue, maxValue, snCode, stationId, startTime, endTime, content, handlerStatus);
public int selectWarnListTotal(String state, String level, String minvalue, String maxValue, String snCode, List<String> stationId, String startTime, String endTime, String content, String handlerStatus,String stationName) {
return tdHygfJpInverterWarnMapper.selectWarnListTotal(state, level, minvalue, maxValue, snCode, stationId, startTime, endTime, content, handlerStatus, stationName);
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment