Merge remote-tracking branch 'origin/main'

main
xueqingkun 1 year ago
commit 8fe1433df1

@ -0,0 +1,36 @@
package com.supervision.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.supervision.model.KgPolicy;
import com.supervision.service.KgPolicyService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Api(tags = "政策法规")
@RestController
@RequestMapping("policy")
@RequiredArgsConstructor
public class PolicyController {
private final KgPolicyService kgPolicyService;
@GetMapping("queryPolicyPage")
@ApiImplicitParams({
@ApiImplicitParam(name = "keyword", value = "模糊搜索", required = false, dataType = "String", paramType = "query"),
@ApiImplicitParam(name = "level", value = "政策层级(1国家级;2省级;3市级;4县级)", required = false, dataType = "String", paramType = "query"),
@ApiImplicitParam(name = "subject", value = "主题(1养老退休;2人事人才;3就业创业;4社会保障;5劳动关系)", required = false, dataType = "String", paramType = "query"),
@ApiImplicitParam(name = "type", value = "政策类型(1意见;2方案;3通知;4规章;5政策解读)", required = false, dataType = "String", paramType = "query"),
@ApiImplicitParam(name = "order", value = "排序方式 默认发文时间降序,1最多收藏降序;2最多浏览降序", required = false, dataType = "Integer", paramType = "query"),
@ApiImplicitParam(name = "pageSize", value = "pageSize", required = true, dataType = "Integer", paramType = "query"),
@ApiImplicitParam(name = "pageNum", value = "pageNum", required = true, dataType = "Integer", paramType = "query")
})
public IPage<KgPolicy> queryPolicyPage(String keyword, Integer level, Integer subject, Integer type, Integer order, Integer pageNum, Integer pageSize) {
return kgPolicyService.queryPolicyPage(keyword, level, subject, type, order, pageNum, pageSize);
}
}

@ -1,16 +1,25 @@
package com.supervision.mapper; package com.supervision.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.model.KgPolicy; import com.supervision.model.KgPolicy;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
/** /**
* @author Administrator * @author Administrator
* @description kg_policy()Mapper * @description kg_policy()Mapper
* @createDate 2024-04-16 13:05:24 * @createDate 2024-04-16 13:05:24
* @Entity com.supervision.model.KgPolicy * @Entity com.supervision.model.KgPolicy
*/ */
public interface KgPolicyMapper extends BaseMapper<KgPolicy> { public interface KgPolicyMapper extends BaseMapper<KgPolicy> {
IPage<KgPolicy> queryPolicyPage(@Param("keyword") String keyword,
@Param("level") Integer level,
@Param("subject") Integer subject,
@Param("type") Integer type,
@Param("page") Page<KgPolicy> page);
} }

@ -1,5 +1,6 @@
package com.supervision.service; package com.supervision.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.supervision.model.KgPolicy; import com.supervision.model.KgPolicy;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
@ -10,4 +11,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface KgPolicyService extends IService<KgPolicy> { public interface KgPolicyService extends IService<KgPolicy> {
IPage<KgPolicy> queryPolicyPage(String keyword, Integer level, Integer subject, Integer type, Integer order,Integer pageNum, Integer pageSize);
} }

@ -1,5 +1,9 @@
package com.supervision.service.impl; package com.supervision.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.supervision.model.KgPolicy; import com.supervision.model.KgPolicy;
import com.supervision.service.KgPolicyService; import com.supervision.service.KgPolicyService;
@ -7,14 +11,34 @@ import com.supervision.mapper.KgPolicyMapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
/** /**
* @author Administrator * @author Administrator
* @description kg_policy()Service * @description kg_policy()Service
* @createDate 2024-04-16 13:05:24 * @createDate 2024-04-16 13:05:24
*/ */
@Service @Service
public class KgPolicyServiceImpl extends ServiceImpl<KgPolicyMapper, KgPolicy> public class KgPolicyServiceImpl extends ServiceImpl<KgPolicyMapper, KgPolicy>
implements KgPolicyService{ implements KgPolicyService {
@Override
public IPage<KgPolicy> queryPolicyPage(String keyword, Integer level, Integer subject, Integer type, Integer order, Integer pageNum, Integer pageSize) {
// 排序方式 默认发文时间降序,1最多收藏降序;2最多浏览降序
Page<KgPolicy> page = new Page<>(pageNum, pageSize);
if (ObjectUtils.isNull(order)) {
// 默认发文时间排序
page.addOrder(OrderItem.desc("publish_time"));
} else {
if (1 == order) {
// 收藏降序
page.addOrder(OrderItem.desc("mark_count"));
}
if (2 == order) {
// 浏览降序
page.addOrder(OrderItem.desc("read_count"));
}
}
return this.baseMapper.queryPolicyPage(keyword, level, subject, type, page);
}
} }

@ -5,26 +5,44 @@
<mapper namespace="com.supervision.mapper.KgPolicyMapper"> <mapper namespace="com.supervision.mapper.KgPolicyMapper">
<resultMap id="BaseResultMap" type="com.supervision.model.KgPolicy"> <resultMap id="BaseResultMap" type="com.supervision.model.KgPolicy">
<id property="id" column="id" jdbcType="VARCHAR"/> <id property="id" column="id" jdbcType="VARCHAR"/>
<result property="title" column="title" jdbcType="VARCHAR"/> <result property="title" column="title" jdbcType="VARCHAR"/>
<result property="content" column="content" jdbcType="VARCHAR"/> <result property="content" column="content" jdbcType="VARCHAR"/>
<result property="status" column="status" jdbcType="INTEGER"/> <result property="status" column="status" jdbcType="INTEGER"/>
<result property="docNumber" column="doc_number" jdbcType="VARCHAR"/> <result property="docNumber" column="doc_number" jdbcType="VARCHAR"/>
<result property="level" column="level" jdbcType="INTEGER"/> <result property="level" column="level" jdbcType="INTEGER"/>
<result property="subject" column="subject" jdbcType="INTEGER"/> <result property="subject" column="subject" jdbcType="INTEGER"/>
<result property="type" column="type" jdbcType="INTEGER"/> <result property="type" column="type" jdbcType="INTEGER"/>
<result property="readCount" column="read_count" jdbcType="INTEGER"/> <result property="readCount" column="read_count" jdbcType="INTEGER"/>
<result property="markCount" column="mark_count" jdbcType="INTEGER"/> <result property="markCount" column="mark_count" jdbcType="INTEGER"/>
<result property="publishTime" column="publish_time" jdbcType="TIMESTAMP"/> <result property="publishTime" column="publish_time" jdbcType="TIMESTAMP"/>
<result property="writeTime" column="write_time" jdbcType="TIMESTAMP"/> <result property="writeTime" column="write_time" jdbcType="TIMESTAMP"/>
<result property="publishDept" column="publish_dept" jdbcType="VARCHAR"/> <result property="publishDept" column="publish_dept" jdbcType="VARCHAR"/>
</resultMap> </resultMap>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
id,title,content, id
,title,content,
status,doc_number,level, status,doc_number,level,
subject,type,read_count, subject,type,read_count,
mark_count,publish_time,write_time, mark_count,publish_time,write_time,
publish_dept publish_dept
</sql> </sql>
<select id="queryPolicyPage" resultType="com.supervision.model.KgPolicy">
select *
from kg_policy
where 1= 1
<if test="keyword != null and keyword != ''">
and (title like concat('%', #{keyword}, '%') or content like concat('%', #{keyword}, '%'))
</if>
<if test="level != null">
and level = #{level}
</if>
<if test="subject != null">
and subject = #{subject}
</if>
<if test="type != null">
and type = #{type}
</if>
</select>
</mapper> </mapper>

Loading…
Cancel
Save