Commit 40fa64c6 authored by 廖旭伟's avatar 廖旭伟

增加站点查询接口,增加申请事项分组查询接口

parent a54ce107
......@@ -4721,4 +4721,132 @@ data|object|数据对象
```
### 查询站点列表
**请求URL:** sst/site/list
**请求方式:** POST
**内容类型:** application/json;charset=utf-8
**简要描述:** 查询站点事项列表
**请求参数:**
参数名称|类型|必填|描述
:---|:---|:---|:-------
page|int|是|页码
size|int|是|每页显示数
**请求样例:**
```
{
"size": 5,
"page": 1
}
```
**响应参数:**
参数名称 |参数类型|备注|其它
---|---|---|---
code|Integer|结果码(-1.失败,1.成功)|-
msg|String|消息|-
**响应消息样例:**
```
{
"code":1,
"msg":"成功"
}
```
### 分组查询事项列表
**请求URL:** sst/matter/apply/groupList
**请求方式:** POST
**内容类型:** application/json;charset=utf-8
**简要描述:** 查询站点事项列表
**请求参数:**
参数名称|类型|必填|描述
:---|:---|:---|:-------
page|int|是|页码
size|int|是|每页显示数
groupType|int|是|分组类型1按部门分组2按主题分组
**请求样例:**
```
{
"size": 2,
"page":1,
"groupType":2
}
```
**响应参数:**
参数名称 |参数类型|备注|其它
---|---|---|---
code|Integer|结果码(-1.失败,1.成功)|-
msg|String|消息|-
**响应消息样例:**
```
{
"data": {
"per_page": 2,
"total": 6,
"data": [
{
"deptId": null,
"deptName": null,
"themeCode": "",
"themeName": "无主题",
"count": 4
},
{
"deptId": null,
"deptName": null,
"themeCode": "060",
"themeName": "招标拍卖",
"count": 1
}
],
"last_page": 3,
"pageInfo": {
"beginIndex": 0,
"prePageResult": 2,
"totalResult": 6,
"totalPage": 3,
"currPage": 1,
"displayPageSize": 5,
"hasNextPage": true,
"hasPrePage": false,
"lastRecordKey": null,
"countPage": true
},
"dict": {
"source": {
"0": "政务网",
"1": "自定义"
}
},
"current_page": 1
},
"code": 1,
"msg": "分组查询申报事项成功",
"dict": {
"source": {
"0": "政务网",
"1": "自定义"
}
}
}
```
## 字典附录
package com.mortals.xhx.module.matter.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.xhx.module.matter.model.MatterApplyEntity;
import com.mortals.xhx.module.matter.model.vo.MatterApplyGroupVo;
import java.util.List;
/**
* 申报事项Dao
......@@ -13,5 +17,19 @@ import java.util.List;
public interface MatterApplyDao extends ICRUDDao<MatterApplyEntity,Long>{
/**
* 按部门分组
* @param params
* @param pageInfo
* @return
*/
Result<MatterApplyGroupVo> getDeptGroupList(MatterApplyEntity params, PageInfo pageInfo);
/**
* 按主题分组
* @param params
* @param pageInfo
* @return
*/
Result<MatterApplyGroupVo> getThemeGroupList(MatterApplyEntity params, PageInfo pageInfo);
}
package com.mortals.xhx.module.matter.dao.ibatis;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.ParamDto;
import com.mortals.framework.model.Result;
import com.mortals.framework.util.StringUtils;
import com.mortals.xhx.module.matter.model.vo.MatterApplyGroupVo;
import org.apache.ibatis.session.RowBounds;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.matter.dao.MatterApplyDao;
import com.mortals.xhx.module.matter.model.MatterApplyEntity;
import java.util.ArrayList;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
......@@ -17,5 +25,57 @@ import java.util.List;
public class MatterApplyDaoImpl extends BaseCRUDDaoMybatis<MatterApplyEntity,Long> implements MatterApplyDao {
@Override
public Result<MatterApplyGroupVo> getDeptGroupList(MatterApplyEntity params, PageInfo pageInfo) {
String sqlId = "getDeptGroupList";
ParamDto paramDto = this.getQueryParam(params);
Result result = new Result();
List list = null;
int count = this.getCount(paramDto, sqlId + "Count");
if (count == 0) {
list = new ArrayList();
} else if (pageInfo.getPrePageResult() == -1) {
list = this.getSqlSession().selectList(this.getSqlId(sqlId), paramDto);
} else {
if (pageInfo.getBeginIndex() > count) {
pageInfo.setCurrPage(1);
}
RowBounds rowBounds = new RowBounds(pageInfo.getBeginIndex(), pageInfo.getPrePageResult());
list = this.getSqlSession().selectList(this.getSqlId(sqlId), this.cpyQueryParamDto(paramDto), rowBounds);
}
pageInfo.setTotalResult(count);
result.setPageInfo(pageInfo);
result.setList((List)list);
return result;
}
@Override
public Result<MatterApplyGroupVo> getThemeGroupList(MatterApplyEntity params, PageInfo pageInfo) {
String sqlId = "getThemeGroupList";
ParamDto paramDto = this.getQueryParam(params);
Result result = new Result();
List list = null;
int count = this.getCount(paramDto, sqlId + "Count");
if (count == 0) {
list = new ArrayList();
} else if (pageInfo.getPrePageResult() == -1) {
list = this.getSqlSession().selectList(this.getSqlId(sqlId), paramDto);
} else {
if (pageInfo.getBeginIndex() > count) {
pageInfo.setCurrPage(1);
}
RowBounds rowBounds = new RowBounds(pageInfo.getBeginIndex(), pageInfo.getPrePageResult());
list = this.getSqlSession().selectList(this.getSqlId(sqlId), this.cpyQueryParamDto(paramDto), rowBounds);
}
pageInfo.setTotalResult(count);
result.setPageInfo(pageInfo);
result.setList((List)list);
return result;
}
}
package com.mortals.xhx.module.matter.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import lombok.Data;
import java.io.Serializable;
@Data
public class MatterApplyGroupVo implements Serializable {
private static final long serialVersionUID = 1234567L;
private Long deptId;
private String deptName;
private String themeCode;
private String themeName;
private Integer count;
}
......@@ -15,4 +15,5 @@ import java.util.List;
public class MatterApplyVo extends BaseEntityLong {
/** 序号,主键,自增长列表 */
private List <Long> idList;
private Integer groupType;
}
\ No newline at end of file
package com.mortals.xhx.module.matter.service;
import com.mortals.framework.common.Rest;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.matter.model.MatterApplyEntity;
import com.mortals.xhx.module.matter.model.vo.MatterApplyGroupVo;
/**
* MatterApplyService
*
......@@ -32,4 +37,24 @@ public interface MatterApplyService extends ICRUDService<MatterApplyEntity,Long>
* @param id
*/
void addDatumCount(Long id,Integer increment);
/**
* 按部门分组
* @param params
* @param pageInfo
* @param context
* @return
* @throws AppException
*/
Result<MatterApplyGroupVo> findDeptGroup(MatterApplyEntity params, PageInfo pageInfo, Context context) throws AppException;
/***
* 按主题分组
* @param params
* @param pageInfo
* @param context
* @return
* @throws AppException
*/
Result<MatterApplyGroupVo> findThemeGroup(MatterApplyEntity params, PageInfo pageInfo, Context context) throws AppException;
}
\ No newline at end of file
package com.mortals.xhx.module.matter.service.impl;
import com.mortals.framework.common.Rest;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.xhx.common.pdu.RespData;
import com.mortals.xhx.common.pdu.matter.MatterDatumPdu;
import com.mortals.xhx.common.pdu.matter.MatterPdu;
......@@ -11,6 +13,7 @@ import com.mortals.xhx.feign.matter.IMatterFeign;
import com.mortals.xhx.feign.site.ISiteMatterFeign;
import com.mortals.xhx.feign.site.ISiteThemeMatterFeign;
import com.mortals.xhx.module.matter.model.MatterApplyQuery;
import com.mortals.xhx.module.matter.model.vo.MatterApplyGroupVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
......@@ -154,4 +157,16 @@ public class MatterApplyServiceImpl extends AbstractCRUDServiceImpl<MatterApplyD
return null;
}
}
@Override
public Result<MatterApplyGroupVo> findDeptGroup(MatterApplyEntity params, PageInfo pageInfo, Context context) throws AppException {
Result<MatterApplyGroupVo> result = this.dao.getDeptGroupList(params, pageInfo);
return result;
}
@Override
public Result<MatterApplyGroupVo> findThemeGroup(MatterApplyEntity params, PageInfo pageInfo, Context context) throws AppException {
Result<MatterApplyGroupVo> result = this.dao.getThemeGroupList(params, pageInfo);
return result;
}
}
\ No newline at end of file
package com.mortals.xhx.module.matter.web;
import com.mortals.framework.annotation.UnAuth;
import com.mortals.framework.common.Rest;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.matter.model.DatumLibraryEntity;
import com.mortals.xhx.module.matter.model.vo.MatterApplyGroupVo;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
......@@ -96,4 +101,47 @@ public class MatterApplyController extends BaseCRUDJsonBodyMappingController<Mat
return ret.toJSONString();
}
}
@PostMapping({"groupList"})
@UnAuth
public Rest<Object> groupList(@RequestBody MatterApplyEntity query) {
Rest<Object> ret = new Rest();
Map<String, Object> model = new HashMap();
Context context = this.getContext();
String busiDesc = "分组查询" + this.getModuleDesc();
int code;
try {
PageInfo pageInfo = this.buildPageInfo(query);
Result<MatterApplyGroupVo> result = null;
if(query.getGroupType()==1) {
result = this.getService().findDeptGroup(query, pageInfo, context);
}else {
result = this.getService().findThemeGroup(query, pageInfo, context);
if(CollectionUtils.isNotEmpty(result.getList())){
for(MatterApplyGroupVo vo:result.getList()){
if(StringUtils.isEmpty(vo.getThemeName())){
vo.setThemeName("无主题");
}
}
}
}
model.put("data", result.getList());
model.put("pageInfo", result.getPageInfo());
this.parsePageInfo(model, result.getPageInfo());
code = 1;
model.put("message_info", busiDesc + "成功");
this.recordSysLog(this.request, busiDesc + " 【成功】");
} catch (Exception var9) {
code = -1;
this.doException(this.request, busiDesc, model, var9);
}
this.init(model, context);
ret.setCode(code);
ret.setData(model);
ret.setDict(model.get("dict"));
ret.setMsg(model.get("message_info") == null ? "" : model.remove("message_info").toString());
return ret;
}
}
\ No newline at end of file
package com.mortals.xhx.module.site.web;
import com.mortals.framework.annotation.UnAuth;
import com.mortals.framework.common.Rest;
import com.mortals.framework.model.Context;
import com.mortals.framework.web.BaseJsonBodyController;
import com.mortals.xhx.common.pdu.RespData;
import com.mortals.xhx.common.pdu.site.SitePdu;
import com.mortals.xhx.common.pdu.site.SiteThemePdu;
import com.mortals.xhx.feign.site.ISiteFeign;
import com.mortals.xhx.feign.site.ISiteThemeFeign;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@RestController
@RequestMapping("site")
public class SiteController extends BaseJsonBodyController {
@Autowired
private ISiteFeign siteFeign;
@PostMapping({"list"})
@UnAuth
public Rest<Object> list(@RequestBody SitePdu query) {
Rest<Object> ret = new Rest();
Map<String, Object> model = new HashMap();
Context context = this.getContext();
String busiDesc = "查询站点列表";
int code;
try {
Rest<RespData<List<SitePdu>>> result = siteFeign.list(query);
code = result.getCode();
if(code > 0) {
model.put("data", result.getData().getData());
model.put("pageInfo", result.getData().getPageInfo());
model.put("dict", result.getData().getDict());
}
model.put("message_info", busiDesc + "成功");
this.recordSysLog(this.request, busiDesc + " 【成功】");
} catch (Exception var9) {
code = -1;
this.doException(this.request, busiDesc, model, var9);
}
ret.setCode(code);
ret.setData(model);
ret.setDict(model.get("dict"));
ret.setMsg(model.get("message_info") == null ? "" : model.remove("message_info").toString());
return ret;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.matter.dao.ibatis.MatterApplyDaoImpl">
<!-- 获取按部门分组列表 -->
<select id="getDeptGroupList" parameterType="paramDto" resultType="com.mortals.xhx.module.matter.model.vo.MatterApplyGroupVo">
select *
from (
SELECT
deptId,
deptName,
count(id) AS `count`
FROM
mortals_sys_matter_apply
GROUP BY
deptId
ORDER BY
deptId
) as a
</select>
<!-- 获取按部门分组 -->
<select id="getDeptGroupListCount" parameterType="paramDto" resultType="int">
select count(1)
from (
SELECT
deptId,
deptName,
count(id) AS `count`
FROM
mortals_sys_matter_apply
GROUP BY
deptId
ORDER BY
deptId
) as a
</select>
<!-- 获取按主题分组列表 -->
<select id="getThemeGroupList" parameterType="paramDto" resultType="com.mortals.xhx.module.matter.model.vo.MatterApplyGroupVo">
select *
from (
SELECT
themeCode,
themeName,
count(id) AS `count`
FROM
mortals_sys_matter_apply
GROUP BY
themeCode
ORDER BY
themeCode
) as a
</select>
<!-- 获取按主题分组 -->
<select id="getThemeGroupListCount" parameterType="paramDto" resultType="int">
select count(1)
from (
SELECT
themeCode,
themeName,
count(id) AS `count`
FROM
mortals_sys_matter_apply
GROUP BY
themeCode
ORDER BY
themeCode
) as a
</select>
</mapper>
\ 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