stjdydayou il y a 4 ans
Parent
commit
141e3a5540

+ 12 - 0
src/main/java/com/zhiqiyun/open/core/mapper/statistics/PopularFeelingsMapper.java

@@ -0,0 +1,12 @@
+package com.zhiqiyun.open.core.mapper.statistics;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.zhiqiyun.open.core.models.statistics.PopularFeelings;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author jtoms
+ */
+@Mapper
+public interface PopularFeelingsMapper extends BaseMapper<PopularFeelings> {
+}

+ 28 - 0
src/main/java/com/zhiqiyun/open/core/models/statistics/PopularFeelings.java

@@ -0,0 +1,28 @@
+package com.zhiqiyun.open.core.models.statistics;
+
+import com.baomidou.mybatisplus.annotation.FieldStrategy;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author jtoms
+ */
+@Data
+@TableName(value = "popular_feelings")
+public class PopularFeelings {
+    private Long id;
+    private String brief;
+    private String keywords;
+    private String siteUrl;
+
+    @TableField(updateStrategy = FieldStrategy.NEVER)
+    private Date createdTime;
+    @TableField(updateStrategy = FieldStrategy.NEVER)
+    private Long createdBy;
+
+    private Date updatedTime;
+    private Long updatedBy;
+}

+ 10 - 0
src/main/java/com/zhiqiyun/open/core/service/PopularFeelingsService.java

@@ -0,0 +1,10 @@
+package com.zhiqiyun.open.core.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.zhiqiyun.open.core.models.statistics.PopularFeelings;
+
+/**
+ * @author jtoms
+ */
+public interface PopularFeelingsService extends IService<PopularFeelings> {
+}

+ 14 - 0
src/main/java/com/zhiqiyun/open/core/service/impl/PopularFeelingsServiceImpl.java

@@ -0,0 +1,14 @@
+package com.zhiqiyun.open.core.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zhiqiyun.open.core.mapper.statistics.PopularFeelingsMapper;
+import com.zhiqiyun.open.core.models.statistics.PopularFeelings;
+import com.zhiqiyun.open.core.service.PopularFeelingsService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author jtoms
+ */
+@Service
+public class PopularFeelingsServiceImpl extends ServiceImpl<PopularFeelingsMapper, PopularFeelings> implements PopularFeelingsService {
+}

+ 102 - 0
src/main/java/com/zhiqiyun/open/mvc/controller/PopularFeelingsController.java

@@ -0,0 +1,102 @@
+package com.zhiqiyun.open.mvc.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.OrderItem;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.zhiqiyun.open.annotation.Permission;
+import com.zhiqiyun.open.core.models.statistics.PopularFeelings;
+import com.zhiqiyun.open.core.models.user.OauthInfo;
+import com.zhiqiyun.open.core.service.OauthService;
+import com.zhiqiyun.open.core.service.PopularFeelingsService;
+import com.zhiqiyun.open.core.service.SequenceService;
+import com.zhiqiyun.open.mvc.Result;
+import com.zhiqiyun.open.mvc.params.statistics.QueryPopularFeelingsParam;
+import com.zhiqiyun.open.mvc.params.statistics.SavePopularFeelingsParam;
+import com.zhiqiyun.open.utils.DateUtil;
+import com.zhiqiyun.open.utils.ServletContext;
+import org.springframework.beans.BeanUtils;
+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 javax.validation.Valid;
+import java.util.List;
+
+/**
+ * @author jtoms
+ */
+@RestController
+@RequestMapping("/popular/feelings")
+public class PopularFeelingsController {
+
+    @Autowired
+    private PopularFeelingsService popularFeelingsService;
+
+    @Autowired
+    private OauthService oauthService;
+
+    @Autowired
+    private SequenceService sequenceService;
+
+
+    @Permission(value = "popular.feelings.find", tags = "查询舆情监控")
+    @PostMapping("/findPage")
+    public Result findPage(@RequestBody QueryPopularFeelingsParam param) {
+
+        QueryWrapper<PopularFeelings> wrapper = new QueryWrapper<>();
+
+        Page<PopularFeelings> page = param.getPage();
+        page.addOrder(OrderItem.desc("id"));
+
+        Page<PopularFeelings> resultData = this.popularFeelingsService.page(page, wrapper);
+
+        return Result.instance(Result.Code.SUCCESS).setData(resultData);
+    }
+
+    @Permission(value = "popular.feelings.add", tags = "新建舆情监控")
+    @PostMapping("/save")
+    public Result save(@Valid @RequestBody SavePopularFeelingsParam param) throws Exception {
+
+        PopularFeelings entity = new PopularFeelings();
+        BeanUtils.copyProperties(param, entity);
+
+        OauthInfo oauthInfo = this.oauthService.getAuth(ServletContext.getAccessToken());
+
+        entity.setCreatedTime(DateUtil.current());
+        entity.setCreatedBy(oauthInfo.getId());
+
+        entity.setUpdatedTime(DateUtil.current());
+        entity.setUpdatedBy(oauthInfo.getId());
+        entity.setId(this.sequenceService.nextId());
+
+        this.popularFeelingsService.save(entity);
+
+        return Result.instance(Result.Code.MESSAGE_SUCCESS);
+    }
+
+    @Permission(value = "popular.feelings.edit", tags = "更新舆情监控")
+    @PostMapping("/updateById")
+    public Result updateById(Long id, @Valid @RequestBody SavePopularFeelingsParam param) {
+        PopularFeelings entity = new PopularFeelings();
+        BeanUtils.copyProperties(param, entity);
+
+        OauthInfo oauthInfo = this.oauthService.getAuth(ServletContext.getAccessToken());
+
+        entity.setUpdatedBy(oauthInfo.getId());
+        entity.setUpdatedTime(DateUtil.current());
+        entity.setId(id);
+
+        this.popularFeelingsService.updateById(entity);
+
+        return Result.instance(Result.Code.MESSAGE_SUCCESS);
+    }
+
+    @Permission(value = "popular.feelings.delete", tags = "删除舆情监控")
+    @PostMapping("/deleteByIds")
+    public Result deleteByIds(@RequestBody List<Long> ids) {
+        this.popularFeelingsService.removeByIds(ids);
+        return Result.instance(Result.Code.MESSAGE_SUCCESS);
+    }
+}

+ 3 - 0
src/main/java/com/zhiqiyun/open/mvc/params/statistics/QueryComplaintInfoParams.java

@@ -8,6 +8,9 @@ import lombok.EqualsAndHashCode;
 
 import java.util.List;
 
+/**
+ * @author jtoms
+ */
 @Data
 @EqualsAndHashCode(callSuper = true)
 public class QueryComplaintInfoParams extends QueryPageParams {

+ 9 - 0
src/main/java/com/zhiqiyun/open/mvc/params/statistics/QueryPopularFeelingsParam.java

@@ -0,0 +1,9 @@
+package com.zhiqiyun.open.mvc.params.statistics;
+
+import com.zhiqiyun.open.mvc.params.QueryPageParams;
+
+/**
+ * @author jtoms
+ */
+public class QueryPopularFeelingsParam extends QueryPageParams {
+}

+ 13 - 0
src/main/java/com/zhiqiyun/open/mvc/params/statistics/SavePopularFeelingsParam.java

@@ -0,0 +1,13 @@
+package com.zhiqiyun.open.mvc.params.statistics;
+
+import lombok.Data;
+
+/**
+ * @author jtoms
+ */
+@Data
+public class SavePopularFeelingsParam {
+    private String brief;
+    private String keywords;
+    private String siteUrl;
+}

+ 22 - 0
src/main/resources/db/migration/V1.0.7__popular_feelings.sql

@@ -0,0 +1,22 @@
+REPLACE
+INTO `authority_info` (`id`, `parent_id`, `name`, `remark`)
+VALUES (2300, 0, 'popular.feelings', '舆情监控管理'),
+       (2301, 2300, 'popular.feelings.find', '查询'),
+       (2302, 2300, 'popular.feelings.add', '添加'),
+       (2303, 2300, 'popular.feelings.edit', '修改'),
+       (2304, 2300, 'popular.feelings.delete', '删除');
+
+
+DROP TABLE IF EXISTS `popular_feelings`;
+CREATE TABLE `popular_feelings`
+(
+    `id`           BIGINT(20) NOT NULL COMMENT 'ID',
+    `brief`        VARCHAR(50) NOT NULL COMMENT '备注说明',
+    `keywords`     VARCHAR(50) NOT NULL COMMENT '监控关键词',
+    `site_url`     VARCHAR(50) NOT NULL COMMENT '网站URL',
+    `created_time` DATETIME NULL DEFAULT NULL COMMENT '创建时间',
+    `created_by`   BIGINT(20) NULL DEFAULT NULL COMMENT '创建人',
+    `updated_time` DATETIME NULL DEFAULT NULL COMMENT '修改时间',
+    `updated_by`   BIGINT(20) NULL DEFAULT NULL COMMENT '修改人',
+    PRIMARY KEY (`id`)
+) COMMENT ='舆情监控管理' ENGINE = InnoDB;