hql封装优化

yun-zuoyi
alwaysfrin 6 years ago
parent 0955b9ac13
commit fa6d248ea0

@ -1,6 +1,8 @@
package cn.estsh.i3plus.core.api.iservice.busi;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.platform.bean.SysUser;
import io.swagger.annotations.ApiOperation;
import java.util.List;
@ -16,4 +18,7 @@ public interface ITestService {
@ApiOperation(value = "多表查询")
List<Object> queryToolAndToolType(Pager pager);
@ApiOperation(value = "条件查询")
public ListPager<SysUser> querySysUserByPager(SysUser user, Pager pager);
}

@ -0,0 +1,47 @@
package cn.estsh.i3plus.core.apiservice.controller;
import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService;
import cn.estsh.i3plus.core.api.iservice.busi.ITestService;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.HqlPack;
import cn.estsh.i3plus.pojo.platform.bean.SysUser;
import cn.estsh.impp.framework.boot.exception.ImppBusiException;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import cn.estsh.impp.framework.boot.util.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.sql.SQLException;
@RestController
@RequestMapping("/impp-ddl")
@Api(description="hql封装demo")
public class DemoDdlPackController {
private static final Logger LOGGER = LoggerFactory.getLogger(DemoDdlPackController.class);
@Autowired
ITestService testService;
@GetMapping(value="/test-ddlpack")
@ApiOperation(value="ddl封装测试")
public ResultBean testDdlPack(SysUser user, Pager pager) throws Exception{
try{
ListPager<SysUser> listPager = testService.querySysUserByPager(user,pager);
return ResultBean.success("操作成功").setListPager(listPager).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
LOGGER.error(busExcep.getErrorMsg() + "{}",busExcep.getErrorDetail(),busExcep);
return ResultBean.fail(busExcep);
}
}
}

@ -1,45 +0,0 @@
package cn.estsh.i3plus.core.apiservice.controller.base;
import cn.estsh.i3plus.core.api.iservice.base.IDataSimpleService;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.impp.framework.base.controller.CoreBaseController;
import cn.estsh.impp.framework.boot.util.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
* @Description :
* @Reference :
* @Author : alwaysfrin
* @CreateDate : 2018-09-05 16:40
* @Modify:
**/
@RestController
@Api(tags="SimpleController",description="简单服务demo")
@RequestMapping(PlatformConstWords.BASE_URL +"/simple-service")
public class SimpleController extends CoreBaseController{
private Logger LOGGER = LoggerFactory.getLogger(this.getClass());
@Autowired
private IDataSimpleService dataSimpleService;
@PutMapping(value="/insert")
@ApiOperation(value="service服务",notes="返回内容添加service")
public ResultBean insertFactory(@RequestParam("name")String name, @RequestParam("code")String code){
// MachineFactory machineFactory = new MachineFactory();
// machineFactory.setFactoryName(name);
// machineFactory.setFactoryCode(code);
// dataSimpleService.saveMachineFactory(machineFactory);
return new ResultBean(true,"工厂已保存");
}
}

@ -2,11 +2,27 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ITestService;
import cn.estsh.i3plus.core.apiservice.dao.ITestDao;
import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.common.PagerHelper;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
import cn.estsh.i3plus.pojo.base.tool.HqlPack;
import cn.estsh.i3plus.pojo.platform.bean.SysDepartment;
import cn.estsh.i3plus.pojo.platform.bean.SysOrganize;
import cn.estsh.i3plus.pojo.platform.bean.SysUser;
import cn.estsh.i3plus.pojo.platform.repository.SysUserRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
@ -19,12 +35,44 @@ import java.util.List;
@Service
public class TestService implements ITestService {
public static final Logger LOGGER = LoggerFactory.getLogger(TestService.class);
@Autowired
ITestDao testDao;
@Autowired
private SysUserRepository sysUserRDao;
@Override
@ApiOperation(value = "多表查询")
public List<Object> queryToolAndToolType(Pager pager) {
return testDao.queryToolAndToolType(pager);
}
@Override
@ApiOperation(value = "账号分页查询", notes = "组合查询")
public ListPager<SysUser> querySysUserByPager(SysUser user, Pager pager) {
LOGGER.debug("系统用户 SysUser find user :{} page :{}", user, pager);
//生成hql查询语句
String hqlPack = CoreHqlPack.packHqlSysUser(user);
pager = PagerHelper.getPager(pager, sysUserRDao.findByHqlWhereCount(hqlPack));
ListPager<SysUser> list = new ListPager(sysUserRDao.findByHqlWherePage(hqlPack + user.orderBy(), pager), pager);
LOGGER.info("size:{},pager:{}",list.getObjectList().size(),list.getObjectPager());
DdlPackBean packBean = new DdlPackBean();
DdlPreparedPack.getNumEqualPackOverZero(CommonEnumUtil.IS_VAILD.VAILD.getValue(),"isValid",packBean);
DdlPreparedPack.getNumEqualPackOverZero(user.getDepartmentId(),"departmentId",packBean);
DdlPreparedPack.getNumEqualPackOverZero(user.getUserStatus(),"userStatus",packBean);
DdlPreparedPack.getStringLikerPack(user.getUserName(),"userName",packBean);
DdlPreparedPack.getStringLikerPack(user.getUserLoginName(),"userLoginName",packBean);
DdlPreparedPack.getStringLikerPack(user.getUserEmail(),"userEmail",packBean);
DdlPreparedPack.getStringLikerPack(user.getUserPhone(),"userPhone",packBean);
pager = PagerHelper.getPager(pager, sysUserRDao.findByHqlWhereCount(packBean));
list = new ListPager(sysUserRDao.findByHqlWherePage(packBean, pager), pager);
LOGGER.info("size:{},pager:{}",list.getObjectList().size(),list.getObjectPager());
return list;
}
}

Loading…
Cancel
Save