diff --git a/ruoyi-isc/src/main/java/com/ruoyi/isc/controller/IscAppServiceController.java b/ruoyi-isc/src/main/java/com/ruoyi/isc/controller/IscAppServiceController.java new file mode 100644 index 000000000..24c412947 --- /dev/null +++ b/ruoyi-isc/src/main/java/com/ruoyi/isc/controller/IscAppServiceController.java @@ -0,0 +1,113 @@ +package com.ruoyi.isc.controller; + +import java.util.List; +import java.util.Arrays; +import java.util.concurrent.TimeUnit; + +import lombok.RequiredArgsConstructor; +import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.*; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.ruoyi.common.annotation.RepeatSubmit; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.validate.AddGroup; +import com.ruoyi.common.core.validate.EditGroup; +import com.ruoyi.common.core.validate.QueryGroup; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.isc.domain.vo.IscAppServiceVo; +import com.ruoyi.isc.domain.bo.IscAppServiceBo; +import com.ruoyi.isc.service.IIscAppServiceService; +import com.ruoyi.common.core.page.TableDataInfo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; + +/** + * 应用服务Controller + * + * @author Wenchao Gong + * @date 2021-09-08 + */ +@Validated +@Api(value = "应用服务控制器", tags = {"应用服务管理"}) +@RequiredArgsConstructor(onConstructor_ = @Autowired) +@RestController +@RequestMapping("/isc/appservice") +public class IscAppServiceController extends BaseController { + + private final IIscAppServiceService iIscAppServiceService; + + /** + * 查询应用服务列表 + */ + @ApiOperation("查询应用服务列表") + @PreAuthorize("@ss.hasPermi('isc:appservice:list')") + @GetMapping("/list") + public TableDataInfo list(@Validated(QueryGroup.class) IscAppServiceBo bo) { + return iIscAppServiceService.queryPageList(bo); + } + + /** + * 导出应用服务列表 + */ + @ApiOperation("导出应用服务列表") + @PreAuthorize("@ss.hasPermi('isc:appservice:export')") + @Log(title = "应用服务", businessType = BusinessType.EXPORT) + @GetMapping("/export") + public void export(@Validated IscAppServiceBo bo, HttpServletResponse response) { + List list = iIscAppServiceService.queryList(bo); + ExcelUtil.exportExcel(list, "应用服务", IscAppServiceVo.class, response); + } + + /** + * 获取应用服务详细信息 + */ + @ApiOperation("获取应用服务详细信息") + @PreAuthorize("@ss.hasPermi('isc:appservice:query')") + @GetMapping("/{serviceAppId}") + public AjaxResult getInfo(@NotNull(message = "主键不能为空") + @PathVariable("serviceAppId") Long serviceAppId) { + return AjaxResult.success(iIscAppServiceService.queryById(serviceAppId)); + } + + /** + * 新增应用服务 + */ + @ApiOperation("新增应用服务") + @PreAuthorize("@ss.hasPermi('isc:appservice:add')") + @Log(title = "应用服务", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public AjaxResult add(@Validated(AddGroup.class) @RequestBody IscAppServiceBo bo) { + return toAjax(iIscAppServiceService.insertByBo(bo) ? 1 : 0); + } + + /** + * 修改应用服务 + */ + @ApiOperation("修改应用服务") + @PreAuthorize("@ss.hasPermi('isc:appservice:edit')") + @Log(title = "应用服务", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public AjaxResult edit(@Validated(EditGroup.class) @RequestBody IscAppServiceBo bo) { + return toAjax(iIscAppServiceService.updateByBo(bo) ? 1 : 0); + } + + /** + * 删除应用服务 + */ + @ApiOperation("删除应用服务") + @PreAuthorize("@ss.hasPermi('isc:appservice:remove')") + @Log(title = "应用服务" , businessType = BusinessType.DELETE) + @DeleteMapping("/{serviceAppIds}") + public AjaxResult remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] serviceAppIds) { + return toAjax(iIscAppServiceService.deleteWithValidByIds(Arrays.asList(serviceAppIds), true) ? 1 : 0); + } +} diff --git a/ruoyi-isc/src/main/java/com/ruoyi/isc/domain/IscAppService.java b/ruoyi-isc/src/main/java/com/ruoyi/isc/domain/IscAppService.java new file mode 100644 index 000000000..2a4e21d0d --- /dev/null +++ b/ruoyi-isc/src/main/java/com/ruoyi/isc/domain/IscAppService.java @@ -0,0 +1,122 @@ +package com.ruoyi.isc.domain; + +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; +import java.io.Serializable; +import java.util.Date; +import java.math.BigDecimal; + +/** + * 应用服务对象 isc_app_service + * + * @author Wenchao Gong + * @date 2021-09-08 + */ +@Data +@NoArgsConstructor +@Accessors(chain = true) +@TableName("isc_app_service") +public class IscAppService implements Serializable { + + private static final long serialVersionUID=1L; + + + /** + * 应用服务ID + */ + @TableId(value = "service_app_id") + private Long serviceAppId; + + /** + * 服务ID + */ + private Long serviceId; + + /** + * 应用ID + */ + private Long applicationId; + + /** + * 用户ID + */ + private Long userId; + + /** + * 启用状态(0启用 1停用) + */ + private String enabled; + + /** + * 申请类型(0申请 1续期) + */ + private String applyType; + + /** + * 审核状态(0待审核 1审核通过 2驳回) + */ + private String status; + + /** + * 虚拟地址 + */ + private String virtualAddr; + + /** + * 到期时间 + */ + private Date endTime; + + /** + * 天配额 + */ + private Long quotaDays; + + /** + * 小时配额 + */ + private Long quotaHours; + + /** + * 分钟配额 + */ + private Long quotaMinutes; + + /** + * 秒配额 + */ + private Long quotaSeconds; + + /** + * 创建者 + */ + @TableField(fill = FieldFill.INSERT) + private String createBy; + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + private Date createTime; + + /** + * 更新者 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String updateBy; + + /** + * 更新时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private Date updateTime; + + /** + * 删除标志(0代表存在 2代表删除) + */ + @TableLogic + private String delFlag; + +} diff --git a/ruoyi-isc/src/main/java/com/ruoyi/isc/domain/bo/IscAppServiceBo.java b/ruoyi-isc/src/main/java/com/ruoyi/isc/domain/bo/IscAppServiceBo.java new file mode 100644 index 000000000..0f331f243 --- /dev/null +++ b/ruoyi-isc/src/main/java/com/ruoyi/isc/domain/bo/IscAppServiceBo.java @@ -0,0 +1,129 @@ +package com.ruoyi.isc.domain.bo; + +import com.ruoyi.common.core.validate.AddGroup; +import com.ruoyi.common.core.validate.EditGroup; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import javax.validation.constraints.*; + +import java.util.Date; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 应用服务业务对象 isc_app_service + * + * @author Wenchao Gong + * @date 2021-09-08 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +@ApiModel("应用服务业务对象") +public class IscAppServiceBo extends BaseEntity { + + /** + * 应用服务ID + */ + @ApiModelProperty(value = "应用服务ID") + private Long serviceAppId; + + /** + * 服务ID + */ + @ApiModelProperty(value = "服务ID", required = true) + @NotNull(message = "服务ID不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long serviceId; + + /** + * 应用ID + */ + @ApiModelProperty(value = "应用ID", required = true) + @NotNull(message = "应用ID不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long applicationId; + + /** + * 用户ID + */ + @ApiModelProperty(value = "用户ID") + private Long userId; + + /** + * 启用状态(0启用 1停用) + */ + @ApiModelProperty(value = "启用状态(0启用 1停用)", required = true) + @NotBlank(message = "启用状态(0启用 1停用)不能为空", groups = { AddGroup.class, EditGroup.class }) + private String enabled; + + /** + * 申请类型(0申请 1续期) + */ + @ApiModelProperty(value = "申请类型(0申请 1续期)") + private String applyType; + + /** + * 审核状态(0待审核 1审核通过 2驳回) + */ + @ApiModelProperty(value = "审核状态(0待审核 1审核通过 2驳回)") + private String status; + + /** + * 到期时间 + */ + @ApiModelProperty(value = "到期时间") + private Date endTime; + + /** + * 天配额 + */ + @ApiModelProperty(value = "天配额") + private Long quotaDays; + + /** + * 小时配额 + */ + @ApiModelProperty(value = "小时配额") + private Long quotaHours; + + /** + * 分钟配额 + */ + @ApiModelProperty(value = "分钟配额") + private Long quotaMinutes; + + /** + * 秒配额 + */ + @ApiModelProperty(value = "秒配额") + private Long quotaSeconds; + + + /** + * 分页大小 + */ + @ApiModelProperty("分页大小") + private Integer pageSize; + + /** + * 当前页数 + */ + @ApiModelProperty("当前页数") + private Integer pageNum; + + /** + * 排序列 + */ + @ApiModelProperty("排序列") + private String orderByColumn; + + /** + * 排序的方向desc或者asc + */ + @ApiModelProperty(value = "排序的方向", example = "asc,desc") + private String isAsc; + +} diff --git a/ruoyi-isc/src/main/java/com/ruoyi/isc/domain/bo/IscServiceBo.java b/ruoyi-isc/src/main/java/com/ruoyi/isc/domain/bo/IscServiceBo.java index 2254e9fa9..b6eab36e8 100644 --- a/ruoyi-isc/src/main/java/com/ruoyi/isc/domain/bo/IscServiceBo.java +++ b/ruoyi-isc/src/main/java/com/ruoyi/isc/domain/bo/IscServiceBo.java @@ -1,16 +1,15 @@ package com.ruoyi.isc.domain.bo; +import com.ruoyi.common.core.domain.BaseEntity; import com.ruoyi.common.core.validate.AddGroup; import com.ruoyi.common.core.validate.EditGroup; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; -import javax.validation.constraints.*; -import java.util.Date; - -import com.ruoyi.common.core.domain.BaseEntity; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; /** * 服务信息业务对象 isc_service @@ -105,13 +104,6 @@ public class IscServiceBo extends BaseEntity { @NotNull(message = "服务分类不能为空", groups = { AddGroup.class, EditGroup.class }) private String cateFullPath; - /** - * 用户ID - */ - @ApiModelProperty(value = "用户ID", required = true) - private Long userId; - - /** * 分页大小 */ diff --git a/ruoyi-isc/src/main/java/com/ruoyi/isc/domain/vo/IscAppServiceVo.java b/ruoyi-isc/src/main/java/com/ruoyi/isc/domain/vo/IscAppServiceVo.java new file mode 100644 index 000000000..acfb95381 --- /dev/null +++ b/ruoyi-isc/src/main/java/com/ruoyi/isc/domain/vo/IscAppServiceVo.java @@ -0,0 +1,108 @@ +package com.ruoyi.isc.domain.vo; + +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.ruoyi.common.annotation.ExcelDictFormat; +import com.ruoyi.common.convert.ExcelDictConvert; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + + + +/** + * 应用服务视图对象 isc_app_service + * + * @author Wenchao Gong + * @date 2021-09-08 + */ +@Data +@ApiModel("应用服务视图对象") +@ExcelIgnoreUnannotated +public class IscAppServiceVo { + + private static final long serialVersionUID = 1L; + + /** + * 应用服务ID + */ + @ApiModelProperty("应用服务ID") + private Long serviceAppId; + + /** + * 服务ID + */ + @ExcelProperty(value = "服务ID") + @ApiModelProperty("服务ID") + private Long serviceId; + + /** + * 应用ID + */ + @ExcelProperty(value = "应用ID") + @ApiModelProperty("应用ID") + private Long applicationId; + + /** + * 用户ID + */ + @ExcelProperty(value = "用户ID") + @ApiModelProperty("用户ID") + private Long userId; + + /** + * 启用状态(0启用 1停用) + */ + @ExcelProperty(value = "启用状态", converter = ExcelDictConvert.class) + @ExcelDictFormat(dictType = "sys_normal_disable") + @ApiModelProperty("启用状态(0启用 1停用)") + private String enabled; + + /** + * 申请类型(0申请 1续期) + */ + @ExcelProperty(value = "申请类型(0申请 1续期)", converter = ExcelDictConvert.class) + @ExcelDictFormat(dictType = "isc_apply_type") + @ApiModelProperty("申请类型(0申请 1续期)") + private String applyType; + + /** + * 审核状态(0待审核 1审核通过 2驳回) + */ + @ExcelProperty(value = "审核状态", converter = ExcelDictConvert.class) + @ExcelDictFormat(dictType = "sys_audit_status") + @ApiModelProperty("审核状态(0待审核 1审核通过 2驳回)") + private String status; + + /** + * 虚拟地址 + */ + @ExcelProperty(value = "虚拟地址") + @ApiModelProperty("虚拟地址") + private String virtualAddr; + + /** + * 到期时间 + */ + @ExcelProperty(value = "到期时间") + @ApiModelProperty("到期时间") + private Date endTime; + + /** + * 更新者 + */ + @ExcelProperty(value = "更新者") + @ApiModelProperty("更新者") + private String updateBy; + + /** + * 更新时间 + */ + @ExcelProperty(value = "更新时间") + @ApiModelProperty("更新时间") + private Date updateTime; + + +} diff --git a/ruoyi-isc/src/main/java/com/ruoyi/isc/mapper/IscAppServiceMapper.java b/ruoyi-isc/src/main/java/com/ruoyi/isc/mapper/IscAppServiceMapper.java new file mode 100644 index 000000000..2e0d5d22f --- /dev/null +++ b/ruoyi-isc/src/main/java/com/ruoyi/isc/mapper/IscAppServiceMapper.java @@ -0,0 +1,16 @@ +package com.ruoyi.isc.mapper; + +import com.ruoyi.isc.domain.IscAppService; +import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus; +import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache; +import org.apache.ibatis.annotations.CacheNamespace; + +/** + * 应用服务Mapper接口 + * + * @author Wenchao Gong + * @date 2021-09-08 + */ +public interface IscAppServiceMapper extends BaseMapperPlus { + +} diff --git a/ruoyi-isc/src/main/java/com/ruoyi/isc/service/IIscAppServiceService.java b/ruoyi-isc/src/main/java/com/ruoyi/isc/service/IIscAppServiceService.java new file mode 100644 index 000000000..41087fdd5 --- /dev/null +++ b/ruoyi-isc/src/main/java/com/ruoyi/isc/service/IIscAppServiceService.java @@ -0,0 +1,56 @@ +package com.ruoyi.isc.service; + +import com.ruoyi.isc.domain.IscAppService; +import com.ruoyi.isc.domain.vo.IscAppServiceVo; +import com.ruoyi.isc.domain.bo.IscAppServiceBo; +import com.ruoyi.common.core.mybatisplus.core.IServicePlus; +import com.ruoyi.common.core.page.TableDataInfo; + +import java.util.Collection; +import java.util.List; + +/** + * 应用服务Service接口 + * + * @author Wenchao Gong + * @date 2021-09-08 + */ +public interface IIscAppServiceService extends IServicePlus { + /** + * 查询单个 + * @return + */ + IscAppServiceVo queryById(Long serviceAppId); + + /** + * 查询列表 + */ + TableDataInfo queryPageList(IscAppServiceBo bo); + + /** + * 查询列表 + */ + List queryList(IscAppServiceBo bo); + + /** + * 根据新增业务对象插入应用服务 + * @param bo 应用服务新增业务对象 + * @return + */ + Boolean insertByBo(IscAppServiceBo bo); + + /** + * 根据编辑业务对象修改应用服务 + * @param bo 应用服务编辑业务对象 + * @return + */ + Boolean updateByBo(IscAppServiceBo bo); + + /** + * 校验并删除数据 + * @param ids 主键集合 + * @param isValid 是否校验,true-删除前校验,false-不校验 + * @return + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/ruoyi-isc/src/main/java/com/ruoyi/isc/service/impl/IscAppServiceServiceImpl.java b/ruoyi-isc/src/main/java/com/ruoyi/isc/service/impl/IscAppServiceServiceImpl.java new file mode 100644 index 000000000..98e10b198 --- /dev/null +++ b/ruoyi-isc/src/main/java/com/ruoyi/isc/service/impl/IscAppServiceServiceImpl.java @@ -0,0 +1,88 @@ +package com.ruoyi.isc.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.common.utils.PageUtils; +import com.ruoyi.common.core.page.PagePlus; +import com.ruoyi.common.core.page.TableDataInfo; +import org.springframework.stereotype.Service; +import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.ruoyi.isc.domain.bo.IscAppServiceBo; +import com.ruoyi.isc.domain.vo.IscAppServiceVo; +import com.ruoyi.isc.domain.IscAppService; +import com.ruoyi.isc.mapper.IscAppServiceMapper; +import com.ruoyi.isc.service.IIscAppServiceService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 应用服务Service业务层处理 + * + * @author Wenchao Gong + * @date 2021-09-08 + */ +@Service +public class IscAppServiceServiceImpl extends ServicePlusImpl implements IIscAppServiceService { + + @Override + public IscAppServiceVo queryById(Long serviceAppId){ + return getVoById(serviceAppId); + } + + @Override + public TableDataInfo queryPageList(IscAppServiceBo bo) { + PagePlus result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo)); + return PageUtils.buildDataInfo(result); + } + + @Override + public List queryList(IscAppServiceBo bo) { + return listVo(buildQueryWrapper(bo)); + } + + private LambdaQueryWrapper buildQueryWrapper(IscAppServiceBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(bo.getServiceId() != null, IscAppService::getServiceId, bo.getServiceId()); + lqw.eq(bo.getApplicationId() != null, IscAppService::getApplicationId, bo.getApplicationId()); + lqw.eq(bo.getUserId() != null, IscAppService::getUserId, bo.getUserId()); + lqw.eq(StringUtils.isNotBlank(bo.getEnabled()), IscAppService::getEnabled, bo.getEnabled()); + lqw.eq(StringUtils.isNotBlank(bo.getStatus()), IscAppService::getStatus, bo.getStatus()); + return lqw; + } + + @Override + public Boolean insertByBo(IscAppServiceBo bo) { + IscAppService add = BeanUtil.toBean(bo, IscAppService.class); + validEntityBeforeSave(add); + return save(add); + } + + @Override + public Boolean updateByBo(IscAppServiceBo bo) { + IscAppService update = BeanUtil.toBean(bo, IscAppService.class); + validEntityBeforeSave(update); + return updateById(update); + } + + /** + * 保存前的数据校验 + * + * @param entity 实体类数据 + */ + private void validEntityBeforeSave(IscAppService entity){ + //TODO 做一些数据校验,如唯一约束 + } + + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return removeByIds(ids); + } +} diff --git a/ruoyi-isc/src/main/java/com/ruoyi/isc/service/impl/IscApplicationServiceImpl.java b/ruoyi-isc/src/main/java/com/ruoyi/isc/service/impl/IscApplicationServiceImpl.java index 3c4550381..8d15afcd0 100644 --- a/ruoyi-isc/src/main/java/com/ruoyi/isc/service/impl/IscApplicationServiceImpl.java +++ b/ruoyi-isc/src/main/java/com/ruoyi/isc/service/impl/IscApplicationServiceImpl.java @@ -51,6 +51,8 @@ public class IscApplicationServiceImpl extends ServicePlusImpl lqw = Wrappers.lambdaQuery(); lqw.like(StringUtils.isNotBlank(bo.getApplicationName()), IscApplication::getApplicationName, bo.getApplicationName()); lqw.eq(StringUtils.isNotBlank(bo.getAccessKey()), IscApplication::getAccessKey, bo.getAccessKey()); + Long userId = SecurityUtils.getUserId(); + lqw.eq(!SecurityUtils.isAdmin(userId), IscApplication::getUserId, userId); return lqw; } diff --git a/ruoyi-isc/src/main/java/com/ruoyi/isc/service/impl/IscServiceServiceImpl.java b/ruoyi-isc/src/main/java/com/ruoyi/isc/service/impl/IscServiceServiceImpl.java index 65d69bd29..efa0efe0f 100644 --- a/ruoyi-isc/src/main/java/com/ruoyi/isc/service/impl/IscServiceServiceImpl.java +++ b/ruoyi-isc/src/main/java/com/ruoyi/isc/service/impl/IscServiceServiceImpl.java @@ -83,7 +83,8 @@ public class IscServiceServiceImpl extends ServicePlusImpl + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ruoyi-ui/src/api/isc/application.js b/ruoyi-ui/src/api/isc/application.js new file mode 100644 index 000000000..538b255e3 --- /dev/null +++ b/ruoyi-ui/src/api/isc/application.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询应用信息列表 +export function listApplication(query) { + return request({ + url: '/isc/application/list', + method: 'get', + params: query + }) +} + +// 查询应用信息详细 +export function getApplication(applicationId) { + return request({ + url: '/isc/application/' + applicationId, + method: 'get' + }) +} + +// 新增应用信息 +export function addApplication(data) { + return request({ + url: '/isc/application', + method: 'post', + data: data + }) +} + +// 修改应用信息 +export function updateApplication(data) { + return request({ + url: '/isc/application', + method: 'put', + data: data + }) +} + +// 删除应用信息 +export function delApplication(applicationId) { + return request({ + url: '/isc/application/' + applicationId, + method: 'delete' + }) +} diff --git a/ruoyi-ui/src/api/isc/appservice.js b/ruoyi-ui/src/api/isc/appservice.js new file mode 100644 index 000000000..180648fef --- /dev/null +++ b/ruoyi-ui/src/api/isc/appservice.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询应用服务列表 +export function listAppservice(query) { + return request({ + url: '/isc/appservice/list', + method: 'get', + params: query + }) +} + +// 查询应用服务详细 +export function getAppservice(serviceAppId) { + return request({ + url: '/isc/appservice/' + serviceAppId, + method: 'get' + }) +} + +// 新增应用服务 +export function addAppservice(data) { + return request({ + url: '/isc/appservice', + method: 'post', + data: data + }) +} + +// 修改应用服务 +export function updateAppservice(data) { + return request({ + url: '/isc/appservice', + method: 'put', + data: data + }) +} + +// 删除应用服务 +export function delAppservice(serviceAppId) { + return request({ + url: '/isc/appservice/' + serviceAppId, + method: 'delete' + }) +} diff --git a/ruoyi-ui/src/router/index.js b/ruoyi-ui/src/router/index.js index 381264eeb..c4c8d05bd 100644 --- a/ruoyi-ui/src/router/index.js +++ b/ruoyi-ui/src/router/index.js @@ -162,6 +162,19 @@ export const constantRoutes = [ meta: { title: '修改生成配置', activeMenu: '/tool/gen'} } ] + }, + { + path: '/isc/app-service', + component: Layout, + hidden: true, + children: [ + { + path: 'index/:applicationId(\\d+)', + component: (resolve) => require(['@/views/isc/appservice/index'], resolve), + name: 'Appservice', + meta: { title: '应用服务', activeMenu: '/isc/application'} + } + ] } ] diff --git a/ruoyi-ui/src/views/isc/application/index.vue b/ruoyi-ui/src/views/isc/application/index.vue new file mode 100644 index 000000000..66dcda684 --- /dev/null +++ b/ruoyi-ui/src/views/isc/application/index.vue @@ -0,0 +1,304 @@ + + + diff --git a/ruoyi-ui/src/views/isc/appservice/index.vue b/ruoyi-ui/src/views/isc/appservice/index.vue new file mode 100644 index 000000000..6479c594d --- /dev/null +++ b/ruoyi-ui/src/views/isc/appservice/index.vue @@ -0,0 +1,411 @@ + + + diff --git a/ruoyi-ui/src/views/isc/service/index.vue b/ruoyi-ui/src/views/isc/service/index.vue index fde9d000b..4c1db3159 100644 --- a/ruoyi-ui/src/views/isc/service/index.vue +++ b/ruoyi-ui/src/views/isc/service/index.vue @@ -272,10 +272,7 @@ export default { ], cateFullPath: [ { required: true, message: "服务分类不能为空", trigger: "change" } - ], - userId: [ - { required: true, message: "用户ID不能为空", trigger: "blur" } - ], + ] } }; }, @@ -346,7 +343,6 @@ export default { auditMind: undefined, enabled: "0", cateFullPath: undefined, - userId: undefined, createBy: undefined, createTime: undefined, updateBy: undefined, diff --git a/sql/isc.sql b/sql/isc.sql index 0ef994b57..6401cabdc 100644 --- a/sql/isc.sql +++ b/sql/isc.sql @@ -235,6 +235,13 @@ INSERT INTO `sys_menu` VALUES (1627, '应用信息新增', 1625, 2, '#', '', 1, INSERT INTO `sys_menu` VALUES (1628, '应用信息修改', 1625, 3, '#', '', 1, 0, 'F', '0', '0', 'isc:application:edit', '#', 'admin', '2021-09-08 14:10:06', '', NULL, ''); INSERT INTO `sys_menu` VALUES (1629, '应用信息删除', 1625, 4, '#', '', 1, 0, 'F', '0', '0', 'isc:application:remove', '#', 'admin', '2021-09-08 14:10:06', '', NULL, ''); INSERT INTO `sys_menu` VALUES (1630, '应用信息导出', 1625, 5, '#', '', 1, 0, 'F', '0', '0', 'isc:application:export', '#', 'admin', '2021-09-08 14:10:06', '', NULL, ''); + +INSERT INTO `sys_menu` VALUES (1631, '应用服务', 1625, 1, 'appservice', 'isc/appservice/index', 1, 0, 'F', '0', '0', 'isc:appservice:list', '#', 'admin', '2021-09-08 16:11:57', 'admin', '2021-09-08 16:22:10', '应用服务菜单'); +INSERT INTO `sys_menu` VALUES (1632, '应用服务查询', 1631, 1, '#', '', 1, 0, 'F', '0', '0', 'isc:appservice:query', '#', 'admin', '2021-09-08 16:11:57', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1633, '应用服务新增', 1631, 2, '#', '', 1, 0, 'F', '0', '0', 'isc:appservice:add', '#', 'admin', '2021-09-08 16:11:57', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1634, '应用服务修改', 1631, 3, '#', '', 1, 0, 'F', '0', '0', 'isc:appservice:edit', '#', 'admin', '2021-09-08 16:11:57', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1635, '应用服务删除', 1631, 4, '#', '', 1, 0, 'F', '0', '0', 'isc:appservice:remove', '#', 'admin', '2021-09-08 16:11:57', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1636, '应用服务导出', 1631, 5, '#', '', 1, 0, 'F', '0', '0', 'isc:appservice:export', '#', 'admin', '2021-09-08 16:11:57', '', NULL, ''); COMMIT; SET FOREIGN_KEY_CHECKS = 1;