1、优化解算结果的查询

This commit is contained in:
weidong 2024-03-10 09:43:15 +08:00
parent 3a2cba9e43
commit 2281f3f15f
3 changed files with 23 additions and 18 deletions

View File

@ -155,7 +155,7 @@
</exclude> </exclude>
</excludes> </excludes>
</configuration> </configuration>
</plugin> </plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>11</source><target>11</target></configuration></plugin>
</plugins> </plugins>
</build> </build>

View File

@ -7,8 +7,6 @@ import com.imdroid.beidou.entity.Tenant;
import com.imdroid.beidou.entity.TenantMapper; import com.imdroid.beidou.entity.TenantMapper;
import com.imdroid.beidou.service.CommonExcelService; import com.imdroid.beidou.service.CommonExcelService;
import com.imdroid.secapi.dto.*; import com.imdroid.secapi.dto.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.ui.Model; import org.springframework.ui.Model;
@ -25,8 +23,6 @@ import java.util.List;
*/ */
@Controller @Controller
public class GnssCalcDataController extends BasicController implements CommonExcelService<GnssCalcData, GnssCalcData> { public class GnssCalcDataController extends BasicController implements CommonExcelService<GnssCalcData, GnssCalcData> {
private final Logger logger = LoggerFactory.getLogger(this.getClass());
@Autowired @Autowired
GnssCalcDataMapper dataMapper; GnssCalcDataMapper dataMapper;
@Autowired @Autowired
@ -45,14 +41,7 @@ public class GnssCalcDataController extends BasicController implements CommonExc
@RequestMapping("/gnss/data/list_calc") @RequestMapping("/gnss/data/list_calc")
@ResponseBody @ResponseBody
public JSONObject listMsg(HttpSession session, Integer page, Integer limit, String searchParams) { public JSONObject listMsg(HttpSession session, Integer page, Integer limit, String searchParams) {
if(searchParams != null) { return this.pageList(session, page, limit, searchParams);
isJoinQuery = searchParams.contains("parentid");
}
else isJoinQuery = false;
logger.info("gnss calc data query begin...join={} ",isJoinQuery);
JSONObject result = this.pageList(session, page, limit, searchParams);
logger.info("gnss calc data query done.");
return result;
} }
/** /**
@ -89,6 +78,14 @@ public class GnssCalcDataController extends BasicController implements CommonExc
this.export(session, request, response); this.export(session, request, response);
} }
@Override
public void checkSearchParams(JSONObject search){
if(search != null) {
String parentId = search.getString("sl_d.parentid");
isJoinQuery = (parentId != null && !parentId.isBlank());
}
else isJoinQuery=false;
}
@Override @Override
public MPJQueryWrapper<GnssCalcData> prepareQueryWrapper() { public MPJQueryWrapper<GnssCalcData> prepareQueryWrapper() {
if(isJoinQuery) { if(isJoinQuery) {

View File

@ -100,20 +100,26 @@ public interface CommonExcelService<T, R> {
default JSONObject pageList(HttpSession session, Integer page, Integer limit, String searchParams) { default JSONObject pageList(HttpSession session, Integer page, Integer limit, String searchParams) {
Page pageable = new Page<>(page == null ? 1 : page, limit == null ? 10 : limit); Page pageable = new Page<>(page == null ? 1 : page, limit == null ? 10 : limit);
AbstractWrapper queryWrapper = prepareQueryWrapper(); // 检查查询条件
JSONObject search = null;
if (searchParams != null) {
search = (JSONObject) JSONObject.parse(searchParams);
}
checkSearchParams(search);
// 构造wrapper
AbstractWrapper queryWrapper = prepareQueryWrapper();
Integer tenantId = (Integer) session.getAttribute(SessionUtils.SESSION_TENANT_ID); Integer tenantId = (Integer) session.getAttribute(SessionUtils.SESSION_TENANT_ID);
if (tenantId != null && tenantId != Tenant.SAAS_PROVIDER_ID) { if (tenantId != null && tenantId != Tenant.SAAS_PROVIDER_ID) {
queryWrapper.eq(tenantIdField(), tenantId); queryWrapper.eq(tenantIdField(), tenantId);
} }
if (search != null) {
// 条件查询
if (searchParams != null) {
JSONObject search = (JSONObject) JSONObject.parse(searchParams);
for (Map.Entry<String, Object> entry : search.entrySet()) { for (Map.Entry<String, Object> entry : search.entrySet()) {
setQueryWrapper(queryWrapper, entry.getKey(), entry.getValue()); setQueryWrapper(queryWrapper, entry.getKey(), entry.getValue());
} }
} }
// 查询
IPage<R> cs = null; IPage<R> cs = null;
if (isJoinSelect()) { if (isJoinSelect()) {
MPJBaseMapper baseMapper = (MPJBaseMapper) getMapper(); MPJBaseMapper baseMapper = (MPJBaseMapper) getMapper();
@ -172,6 +178,8 @@ public interface CommonExcelService<T, R> {
EasyExcel.write(response.getOutputStream(), getEntityClass()).sheet("sheet").doWrite(cs); EasyExcel.write(response.getOutputStream(), getEntityClass()).sheet("sheet").doWrite(cs);
} }
default void checkSearchParams(JSONObject search){}
/** /**
* 设置查询条件 * 设置查询条件
* *