Selaa lähdekoodia

外部应用导航CRUD

yonghuifan 1 vuosi sitten
vanhempi
sitoutus
91ebf39684

+ 60 - 0
src/main/java/com/dragon/tj/portal/controller/ExternalAppController.java

@@ -0,0 +1,60 @@
+package com.dragon.tj.portal.controller;
+
+import com.dragon.tj.portal.common.base.R;
+import com.dragon.tj.portal.common.enums.log.ModuleEnum;
+import com.dragon.tj.portal.component.log.annotation.SysLog;
+import com.dragon.tj.portal.entity.ExternalApp;
+import com.dragon.tj.portal.entity.PageParam;
+import com.dragon.tj.portal.service.ExternalAppService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.web.bind.annotation.*;
+
+@RestController
+@RequestMapping("/external")
+@EnableScheduling
+public class ExternalAppController {
+
+
+    @Autowired
+    private ExternalAppService externalAppService;
+
+    /*
+     *    外部应用 CRUD
+     * */
+    @SysLog(value = "外部应用添加", module = ModuleEnum.APP_ADD)
+    @PostMapping("add")
+    public R addApp(@RequestBody ExternalApp appInfo) {
+        return R.ok(externalAppService.add(appInfo));
+    }
+
+    @SysLog(value = "外部应用删除", module = ModuleEnum.APP_DELETE)
+    @GetMapping("delete/{id}")
+    public R delete(@PathVariable("id") Long id) {
+        return R.ok(externalAppService.delete(id));
+    }
+
+    @SysLog(value = "外部应用更新", module = ModuleEnum.APP_UPDATE)
+    @PostMapping("update")
+    public R update(@RequestBody ExternalApp appInfo) {
+        return R.ok(externalAppService.update(appInfo));
+    }
+
+    @SysLog(value = "通过ID获取外部应用", module = ModuleEnum.APP_QUERY)
+    @GetMapping("info/{id}")
+    public R detail(@PathVariable("id") Long id) {
+        return R.ok(externalAppService.detail(id));
+    }
+
+    /*
+     *  搜索
+     * */
+    @SysLog(value = "搜索外部应用", module = ModuleEnum.APP_QUERY)
+    @PostMapping("search")
+    public R search(@RequestBody PageParam<ExternalApp> appInfoPage) {
+
+        return R.ok(externalAppService.search(appInfoPage));
+    }
+
+}
+

+ 36 - 0
src/main/java/com/dragon/tj/portal/entity/ExternalApp.java

@@ -0,0 +1,36 @@
+package com.dragon.tj.portal.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Getter;
+import lombok.Setter;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 外部应用导航
+ */
+@Getter
+@Setter
+@Accessors(chain = true)
+@TableName("external_app")
+public class ExternalApp implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    private String designation;
+
+    private String url;
+
+    private Date createTime;
+
+}

+ 14 - 0
src/main/java/com/dragon/tj/portal/mapper/ExternalAppMapper.java

@@ -0,0 +1,14 @@
+package com.dragon.tj.portal.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.dragon.tj.portal.entity.ExternalApp;
+import org.apache.ibatis.annotations.Mapper;
+
+
+/**
+ * 外部应用程序
+ */
+@Mapper
+public interface ExternalAppMapper extends BaseMapper<ExternalApp> {
+
+}

+ 22 - 0
src/main/java/com/dragon/tj/portal/service/ExternalAppService.java

@@ -0,0 +1,22 @@
+package com.dragon.tj.portal.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.dragon.tj.portal.entity.ExternalApp;
+import com.dragon.tj.portal.entity.PageParam;
+
+
+public interface ExternalAppService {
+    /*
+     * CRUD
+     * */
+    int add(ExternalApp externalApp);
+
+    int delete(Long id);
+
+    int update(ExternalApp externalApp);
+
+    ExternalApp detail(Long id);
+
+    IPage<ExternalApp> search(PageParam<ExternalApp> appInfoPage);
+
+}

+ 59 - 0
src/main/java/com/dragon/tj/portal/service/impl/ExternalAppServiceImpl.java

@@ -0,0 +1,59 @@
+package com.dragon.tj.portal.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.metadata.OrderItem;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.dragon.tj.portal.entity.ExternalApp;
+import com.dragon.tj.portal.entity.PageParam;
+import com.dragon.tj.portal.mapper.ExternalAppMapper;
+import com.dragon.tj.portal.service.ExternalAppService;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class ExternalAppServiceImpl implements ExternalAppService {
+
+    @Autowired
+    private ExternalAppMapper externalAppMapper;
+
+    @Override
+    public int add(ExternalApp externalApp) {
+
+        return externalAppMapper.insert(externalApp);
+    }
+
+    @Override
+    public int delete(Long id) {
+
+        return externalAppMapper.deleteById(id);
+    }
+
+    @Override
+    public int update(ExternalApp externalApp) {
+
+        return externalAppMapper.updateById(externalApp);
+    }
+
+    @Override
+    public ExternalApp detail(Long id) {
+
+        return externalAppMapper.selectById(id);
+    }
+
+    @Override
+    public IPage<ExternalApp> search(PageParam<ExternalApp> appInfoPage) {
+        ExternalApp params = appInfoPage.getParams();
+
+        LambdaQueryWrapper<ExternalApp> wrapper = Wrappers.lambdaQuery(ExternalApp.class)
+                .like(StringUtils.isNotEmpty(params.getDesignation()), ExternalApp::getDesignation, params.getDesignation())
+                .like(StringUtils.isNotEmpty(params.getUrl()), ExternalApp::getUrl, params.getUrl());
+
+        Page<ExternalApp> rowPage = new Page(appInfoPage.getPage(), appInfoPage.getSize());
+        rowPage.addOrder(OrderItem.desc(appInfoPage.getOrder()));
+
+        return externalAppMapper.selectPage(rowPage,wrapper);
+    }
+}