package cn.stylefeng.guns.modular.business.controller;
|
|
import cn.hutool.core.bean.BeanUtil;
|
import cn.stylefeng.guns.modular.business.dto.VersionAddDto;
|
import cn.stylefeng.guns.modular.business.entity.Version;
|
import cn.stylefeng.guns.modular.business.service.IVersionService;
|
import cn.hutool.core.collection.ListUtil;
|
import cn.hutool.core.util.StrUtil;
|
import cn.stylefeng.roses.kernel.auth.api.context.LoginContext;
|
import cn.stylefeng.roses.kernel.db.api.factory.PageFactory;
|
import cn.stylefeng.roses.kernel.db.api.factory.PageResultFactory;
|
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
import cn.stylefeng.roses.kernel.rule.annotation.BusinessLog;
|
import cn.stylefeng.roses.kernel.rule.enums.ResBizTypeEnum;
|
import cn.stylefeng.roses.kernel.rule.pojo.response.ErrorResponseData;
|
import cn.stylefeng.roses.kernel.rule.pojo.response.ResponseData;
|
import cn.stylefeng.roses.kernel.rule.pojo.response.SuccessResponseData;
|
import cn.stylefeng.roses.kernel.scanner.api.annotation.ApiResource;
|
import cn.stylefeng.roses.kernel.scanner.api.annotation.GetResource;
|
import cn.stylefeng.roses.kernel.scanner.api.annotation.PostResource;
|
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUser;
|
import cn.stylefeng.roses.kernel.system.modular.user.service.SysUserService;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.Query;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.sun.org.apache.bcel.internal.generic.NEW;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.annotation.Resource;
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* 管理类
|
* @author guo
|
*/
|
@RestController
|
@Api(tags = "版本管理")
|
@ApiResource(name = "版本管理", resBizType = ResBizTypeEnum.BUSINESS)
|
@RequestMapping("/business/version")
|
public class VersionController {
|
|
@Resource
|
private IVersionService versionService;
|
@Autowired
|
private SysUserService userService;
|
|
/**
|
* 添加
|
*/
|
@ApiOperation("添加")
|
@PostResource(name = "添加", path = "/version/add")
|
@BusinessLog
|
public ResponseData<?> add(@RequestBody VersionAddDto version) {
|
Version version1 = new Version();
|
BeanUtil.copyProperties(version,version1);
|
version1.setCreateUser(LoginContext.me().getLoginUser().getUserId());
|
version1.setCreateTime(new Date());
|
version1.setUpdateUser(LoginContext.me().getLoginUser().getUserId());
|
|
SysUser byId = userService.getById(LoginContext.me().getLoginUser().getUserId());
|
version1.setCreateName(byId.getRealName());
|
this.versionService.save(version1);
|
return new SuccessResponseData<>();
|
}
|
|
/**
|
* 删除
|
*/
|
@ApiOperation("删除")
|
@PostResource(name = "删除", path = "/version/delete")
|
@BusinessLog
|
public ResponseData<?> delete(@RequestParam String ids) {
|
if (StrUtil.isBlank(ids)){
|
return new ErrorResponseData<>("500","id不能为空");
|
}
|
LambdaUpdateWrapper<Version> lambdaUpdateWrapper = new LambdaUpdateWrapper<Version>().set(Version::getIsDelete,true);
|
lambdaUpdateWrapper.in(Version::getId, ListUtil.toList(ids.split(",")));
|
this.versionService.update(lambdaUpdateWrapper);
|
return new SuccessResponseData<>();
|
}
|
|
/**
|
* 修改
|
*/
|
@ApiOperation("修改")
|
@PostResource(name = "修改", path = "/version/edit")
|
@BusinessLog
|
public ResponseData<?> edit(@RequestBody Version version) {
|
this.versionService.updateById(version);
|
return new SuccessResponseData<>();
|
}
|
|
|
|
/**
|
* 获取详情
|
*/
|
@ApiOperation("获取详情")
|
@GetResource(name = "获取详情", path = "/version/detail/{id}", requiredPermission = false)
|
public ResponseData<Version> detail(@PathVariable("id") Long id) {
|
Version version = this.versionService.getById(id);
|
SysUser byId = userService.getById(version.getCreateUser());
|
version.setCreateName(byId.getRealName());
|
return new SuccessResponseData<>(version);
|
}
|
|
/**
|
* 获取列表
|
*/
|
@ApiOperation("获取列表")
|
@GetResource(name = "获取列表", path = "/version/list", requiredPermission = false)
|
public ResponseData<List<Version>> list(Version version) {
|
LambdaQueryWrapper<Version> lambdaQueryWrapper = new LambdaQueryWrapper<Version>().eq(Version::getIsDelete,false)
|
.orderByDesc(Version::getId);
|
return new SuccessResponseData<>(versionService.list(lambdaQueryWrapper));
|
}
|
|
/**
|
* 获取列表(分页)
|
*/
|
@ApiOperation("获取列表(分页)")
|
@GetResource(name = "获取列表(分页)", path = "/version/page", requiredPermission = false)
|
public ResponseData<PageResult<Version>> page(Version version) {
|
LambdaQueryWrapper<Version> lambdaQueryWrapper = new LambdaQueryWrapper<Version>().eq(Version::getIsDelete,0)
|
.orderByDesc(Version::getId);
|
Page<Version> page = this.versionService.listCreateUser(PageFactory.defaultPage(), version);
|
return new SuccessResponseData<>(PageResultFactory.createPageResult(page));
|
}
|
|
}
|