代码提交 公章管理
This commit is contained in:
parent
b49d6d81a9
commit
4a857c2134
2
pom.xml
2
pom.xml
@ -14,7 +14,7 @@
|
||||
|
||||
<properties>
|
||||
<revision>5.3.1</revision>
|
||||
<spring-boot.version>3.4.4</spring-boot.version>
|
||||
<spring-boot.version>3.4.5</spring-boot.version>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||
<java.version>17</java.version>
|
||||
|
@ -1 +0,0 @@
|
||||
package org.dromara.lx.domain;
|
@ -0,0 +1,116 @@
|
||||
package org.dromara.lx.operate.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.lx.operate.domain.bo.LxMaterialSealBo;
|
||||
import org.dromara.lx.operate.domain.vo.LxMaterialSealVo;
|
||||
import org.dromara.lx.operate.service.ILxMaterialSealService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 公章管理
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-05-12
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/operate/materialSeal")
|
||||
public class LxMaterialSealController extends BaseController {
|
||||
|
||||
private final ILxMaterialSealService lxMaterialSealService;
|
||||
|
||||
/**
|
||||
* 查询公章管理列表
|
||||
*/
|
||||
@SaCheckPermission("operate:materialSeal:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<LxMaterialSealVo> list(LxMaterialSealBo bo, PageQuery pageQuery) {
|
||||
return lxMaterialSealService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出公章管理列表
|
||||
*/
|
||||
@SaCheckPermission("operate:materialSeal:export")
|
||||
@Log(title = "公章管理", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(LxMaterialSealBo bo, HttpServletResponse response) {
|
||||
List<LxMaterialSealVo> list = lxMaterialSealService.queryList(bo);
|
||||
ExcelUtil.exportExcel(list, "公章管理", LxMaterialSealVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取公章管理详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("operate:materialSeal:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<LxMaterialSealVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable Long id) {
|
||||
return R.ok(lxMaterialSealService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增公章管理
|
||||
*/
|
||||
@SaCheckPermission("operate:materialSeal:add")
|
||||
@Log(title = "公章管理", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody LxMaterialSealBo bo) {
|
||||
return toAjax(lxMaterialSealService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改公章管理
|
||||
*/
|
||||
@SaCheckPermission("operate:materialSeal:edit")
|
||||
@Log(title = "公章管理", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody LxMaterialSealBo bo) {
|
||||
return toAjax(lxMaterialSealService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除公章管理
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("operate:materialSeal:remove")
|
||||
@Log(title = "公章管理", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable Long[] ids) {
|
||||
return toAjax(lxMaterialSealService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
|
||||
/**
|
||||
* 状态修改
|
||||
*/
|
||||
@SaCheckPermission("operate:materialSeal:edit")
|
||||
@Log(title = "公章管理", businessType = BusinessType.UPDATE)
|
||||
@PutMapping("/changeStatus")
|
||||
public R<Void> changeStatus(@RequestBody LxMaterialSealBo sealBo) {
|
||||
return toAjax(lxMaterialSealService.updateRoleStatus(sealBo.getId(), sealBo.getSealStatus()));
|
||||
}
|
||||
}
|
@ -1,25 +1,25 @@
|
||||
package org.dromara.lx.controller;
|
||||
package org.dromara.lx.operate.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.core.validate.QueryGroup;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.lx.domain.bo.LxTreeBo;
|
||||
import org.dromara.lx.domain.vo.LxTreeVo;
|
||||
import org.dromara.lx.service.ILxTreeTableService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.lx.operate.domain.bo.LxTreeBo;
|
||||
import org.dromara.lx.operate.domain.vo.LxTreeVo;
|
||||
import org.dromara.lx.operate.service.ILxTreeTableService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@ -66,7 +66,7 @@ public class OperateTreeController extends BaseController {
|
||||
@SaCheckPermission("operate:tree:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<LxTreeVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(lxTreeTableService.queryById(id));
|
||||
}
|
||||
|
@ -0,0 +1,59 @@
|
||||
package org.dromara.lx.operate.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 公章管理对象 lx_material_seal
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-05-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("lx_material_seal")
|
||||
public class LxMaterialSeal extends BaseEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 印章类型
|
||||
*/
|
||||
private Long sealType;
|
||||
|
||||
/**
|
||||
* 公章名称
|
||||
*/
|
||||
private String sealName;
|
||||
|
||||
/**
|
||||
* 公章管理员
|
||||
*/
|
||||
private Long sealAdminId;
|
||||
|
||||
/**
|
||||
* 启用状态
|
||||
*/
|
||||
private Long sealStatus;
|
||||
|
||||
/**
|
||||
* 删除标志
|
||||
*/
|
||||
@TableLogic
|
||||
private Long delFlag;
|
||||
|
||||
|
||||
}
|
@ -1,12 +1,12 @@
|
||||
package org.dromara.lx.domain;
|
||||
package org.dromara.lx.operate.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.Version;
|
||||
import org.dromara.common.tenant.core.TenantEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.dromara.common.tenant.core.TenantEntity;
|
||||
|
||||
import java.io.Serial;
|
||||
|
@ -0,0 +1,49 @@
|
||||
package org.dromara.lx.operate.domain.bo;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||
import org.dromara.lx.operate.domain.LxMaterialSeal;
|
||||
|
||||
/**
|
||||
* 公章管理业务对象 lx_material_seal
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-05-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = LxMaterialSeal.class, reverseConvertGenerate = false)
|
||||
public class LxMaterialSealBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
@NotNull(message = "id不能为空", groups = {EditGroup.class})
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 公章类型
|
||||
*/
|
||||
private Long sealType;
|
||||
|
||||
/**
|
||||
* 公章名称
|
||||
*/
|
||||
private String sealName;
|
||||
|
||||
/**
|
||||
* 公章管理员
|
||||
*/
|
||||
private Long sealAdminId;
|
||||
|
||||
/**
|
||||
* 启用状态
|
||||
*/
|
||||
private Long sealStatus;
|
||||
|
||||
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
package org.dromara.lx.domain.bo;
|
||||
package org.dromara.lx.operate.domain.bo;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
@ -8,7 +8,7 @@ import lombok.EqualsAndHashCode;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||
import org.dromara.lx.domain.LxTreeTable;
|
||||
import org.dromara.lx.operate.domain.LxTreeTable;
|
||||
|
||||
/**
|
||||
* 测试树表业务对象 test_tree
|
@ -0,0 +1 @@
|
||||
package org.dromara.lx.operate.domain;
|
@ -0,0 +1,58 @@
|
||||
package org.dromara.lx.operate.domain.vo;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import org.dromara.lx.operate.domain.LxMaterialSeal;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
|
||||
/**
|
||||
* 公章管理视图对象 lx_material_seal
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-05-12
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = LxMaterialSeal.class)
|
||||
public class LxMaterialSealVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
@ExcelProperty(value = "创建人")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 印章类型
|
||||
*/
|
||||
@ExcelProperty(value = "印章类型")
|
||||
private Long sealType;
|
||||
|
||||
/**
|
||||
* 印章名称
|
||||
*/
|
||||
@ExcelProperty(value = "印章名称")
|
||||
private String sealName;
|
||||
|
||||
/**
|
||||
* 印章管理员
|
||||
*/
|
||||
@ExcelProperty(value = "印章管理员")
|
||||
private Long sealAdminId;
|
||||
|
||||
/**
|
||||
* 启用状态
|
||||
*/
|
||||
@ExcelProperty(value = "启用状态")
|
||||
private Long sealStatus;
|
||||
|
||||
|
||||
}
|
@ -1,10 +1,10 @@
|
||||
package org.dromara.lx.domain.vo;
|
||||
package org.dromara.lx.operate.domain.vo;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import org.dromara.lx.domain.LxTreeTable;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import org.dromara.lx.operate.domain.LxTreeTable;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
@ -0,0 +1,15 @@
|
||||
package org.dromara.lx.operate.mapper;
|
||||
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
import org.dromara.lx.operate.domain.LxMaterialSeal;
|
||||
import org.dromara.lx.operate.domain.vo.LxMaterialSealVo;
|
||||
|
||||
/**
|
||||
* 公章管理Mapper接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-05-12
|
||||
*/
|
||||
public interface LxMaterialSealMapper extends BaseMapperPlus<LxMaterialSeal, LxMaterialSealVo> {
|
||||
|
||||
}
|
@ -1,10 +1,10 @@
|
||||
package org.dromara.lx.mapper;
|
||||
package org.dromara.lx.operate.mapper;
|
||||
|
||||
import org.dromara.common.mybatis.annotation.DataColumn;
|
||||
import org.dromara.common.mybatis.annotation.DataPermission;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
import org.dromara.lx.domain.LxTreeTable;
|
||||
import org.dromara.lx.domain.vo.LxTreeVo;
|
||||
import org.dromara.lx.operate.domain.LxTreeTable;
|
||||
import org.dromara.lx.operate.domain.vo.LxTreeVo;
|
||||
|
||||
/**
|
||||
* 测试树表Mapper接口
|
||||
@ -16,6 +16,6 @@ import org.dromara.lx.domain.vo.LxTreeVo;
|
||||
@DataColumn(key = "deptName", value = "dept_id"),
|
||||
@DataColumn(key = "userName", value = "user_id")
|
||||
})
|
||||
public interface IxTreeTableMapper extends BaseMapperPlus<LxTreeTable, LxTreeVo> {
|
||||
public interface LxTreeTableMapper extends BaseMapperPlus<LxTreeTable, LxTreeVo> {
|
||||
|
||||
}
|
@ -0,0 +1,77 @@
|
||||
package org.dromara.lx.operate.service;
|
||||
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.lx.operate.domain.bo.LxMaterialSealBo;
|
||||
import org.dromara.lx.operate.domain.vo.LxMaterialSealVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 公章管理Service接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-05-12
|
||||
*/
|
||||
public interface ILxMaterialSealService {
|
||||
|
||||
/**
|
||||
* 查询公章管理
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 公章管理
|
||||
*/
|
||||
LxMaterialSealVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询公章管理列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 公章管理分页列表
|
||||
*/
|
||||
TableDataInfo<LxMaterialSealVo> queryPageList(LxMaterialSealBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的公章管理列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 公章管理列表
|
||||
*/
|
||||
List<LxMaterialSealVo> queryList(LxMaterialSealBo bo);
|
||||
|
||||
/**
|
||||
* 新增公章管理
|
||||
*
|
||||
* @param bo 公章管理
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(LxMaterialSealBo bo);
|
||||
|
||||
/**
|
||||
* 修改公章管理
|
||||
*
|
||||
* @param bo 公章管理
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(LxMaterialSealBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除公章管理信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
|
||||
/**
|
||||
* 修改公章状态
|
||||
*
|
||||
* @param id 公章ID
|
||||
* @param sealStatus 公章状态
|
||||
* @return 结果
|
||||
*/
|
||||
Integer updateRoleStatus(Long id, Long sealStatus);
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
package org.dromara.lx.service;
|
||||
package org.dromara.lx.operate.service;
|
||||
|
||||
import org.dromara.lx.domain.bo.LxTreeBo;
|
||||
import org.dromara.lx.domain.vo.LxTreeVo;
|
||||
import org.dromara.lx.operate.domain.bo.LxTreeBo;
|
||||
import org.dromara.lx.operate.domain.vo.LxTreeVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
@ -0,0 +1,138 @@
|
||||
package org.dromara.lx.operate.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.utils.MapstructUtils;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.lx.operate.domain.LxMaterialSeal;
|
||||
import org.dromara.lx.operate.domain.bo.LxMaterialSealBo;
|
||||
import org.dromara.lx.operate.domain.vo.LxMaterialSealVo;
|
||||
import org.dromara.lx.operate.mapper.LxMaterialSealMapper;
|
||||
import org.dromara.lx.operate.service.ILxMaterialSealService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 公章管理Service业务层处理
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-05-12
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class LxMaterialSealServiceImpl implements ILxMaterialSealService {
|
||||
|
||||
private final LxMaterialSealMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询公章管理
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 公章管理
|
||||
*/
|
||||
@Override
|
||||
public LxMaterialSealVo queryById(Long id) {
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询公章管理列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 公章管理分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<LxMaterialSealVo> queryPageList(LxMaterialSealBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<LxMaterialSeal> lqw = buildQueryWrapper(bo);
|
||||
Page<LxMaterialSealVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的公章管理列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 公章管理列表
|
||||
*/
|
||||
@Override
|
||||
public List<LxMaterialSealVo> queryList(LxMaterialSealBo bo) {
|
||||
LambdaQueryWrapper<LxMaterialSeal> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<LxMaterialSeal> buildQueryWrapper(LxMaterialSealBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<LxMaterialSeal> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByAsc(LxMaterialSeal::getId);
|
||||
lqw.eq(bo.getSealType() != null, LxMaterialSeal::getSealType, bo.getSealType());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getSealName()), LxMaterialSeal::getSealName, bo.getSealName());
|
||||
lqw.eq(bo.getSealAdminId() != null, LxMaterialSeal::getSealAdminId, bo.getSealAdminId());
|
||||
lqw.eq(bo.getSealStatus() != null, LxMaterialSeal::getSealStatus, bo.getSealStatus());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增公章管理
|
||||
*
|
||||
* @param bo 公章管理
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(LxMaterialSealBo bo) {
|
||||
LxMaterialSeal add = MapstructUtils.convert(bo, LxMaterialSeal.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改公章管理
|
||||
*
|
||||
* @param bo 公章管理
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(LxMaterialSealBo bo) {
|
||||
LxMaterialSeal update = MapstructUtils.convert(bo, LxMaterialSeal.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(LxMaterialSeal entity) {
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除公章管理信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if (isValid) {
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer updateRoleStatus(Long id, Long sealStatus) {
|
||||
return null;
|
||||
}
|
||||
}
|
@ -1,15 +1,15 @@
|
||||
package org.dromara.lx.service.impl;
|
||||
package org.dromara.lx.operate.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.utils.MapstructUtils;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
import org.dromara.lx.domain.LxTreeTable;
|
||||
import org.dromara.lx.domain.bo.LxTreeBo;
|
||||
import org.dromara.lx.domain.vo.LxTreeVo;
|
||||
import org.dromara.lx.mapper.IxTreeTableMapper;
|
||||
import org.dromara.lx.service.ILxTreeTableService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.lx.operate.domain.LxTreeTable;
|
||||
import org.dromara.lx.operate.domain.bo.LxTreeBo;
|
||||
import org.dromara.lx.operate.domain.vo.LxTreeVo;
|
||||
import org.dromara.lx.operate.mapper.LxTreeTableMapper;
|
||||
import org.dromara.lx.operate.service.ILxTreeTableService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Collection;
|
||||
@ -27,7 +27,7 @@ import java.util.Map;
|
||||
@Service
|
||||
public class LxTreeTableServiceImpl implements ILxTreeTableService {
|
||||
|
||||
private final IxTreeTableMapper baseMapper;
|
||||
private final LxTreeTableMapper baseMapper;
|
||||
|
||||
@Override
|
||||
public LxTreeVo queryById(Long id) {
|
@ -2,6 +2,6 @@
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="org.dromara.lx.mapper.IxTreeTableMapper">
|
||||
<mapper namespace="org.dromara.system.mapper.LxMaterialSealMapper">
|
||||
|
||||
</mapper>
|
@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="org.dromara.lx.mapper.LxTreeTableMapper">
|
||||
|
||||
</mapper>
|
@ -0,0 +1,108 @@
|
||||
package org.dromara.workflow.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.workflow.common.ConditionalOnEnable;
|
||||
import org.dromara.workflow.domain.bo.TestLeaveBo;
|
||||
import org.dromara.workflow.domain.vo.TestLeaveVo;
|
||||
import org.dromara.workflow.service.ITestLeaveService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 出差
|
||||
*
|
||||
* @author may
|
||||
* @date 2023-07-21
|
||||
*/
|
||||
@ConditionalOnEnable
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/workflow/businessTrip")
|
||||
public class OABusinessTripController extends BaseController {
|
||||
|
||||
private final ITestLeaveService testLeaveService;
|
||||
|
||||
/**
|
||||
* 查询出差列表
|
||||
*/
|
||||
@SaCheckPermission("workflow:leave:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<TestLeaveVo> list(TestLeaveBo bo, PageQuery pageQuery) {
|
||||
return testLeaveService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出请假列表
|
||||
*/
|
||||
@SaCheckPermission("workflow:leave:export")
|
||||
@Log(title = "请假", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(TestLeaveBo bo, HttpServletResponse response) {
|
||||
List<TestLeaveVo> list = testLeaveService.queryList(bo);
|
||||
ExcelUtil.exportExcel(list, "请假", TestLeaveVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取请假详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("workflow:leave:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<TestLeaveVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable Long id) {
|
||||
return R.ok(testLeaveService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增请假
|
||||
*/
|
||||
@SaCheckPermission("workflow:leave:add")
|
||||
@Log(title = "请假", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<TestLeaveVo> add(@Validated(AddGroup.class) @RequestBody TestLeaveBo bo) {
|
||||
return R.ok(testLeaveService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改请假
|
||||
*/
|
||||
@SaCheckPermission("workflow:leave:edit")
|
||||
@Log(title = "请假", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<TestLeaveVo> edit(@Validated(EditGroup.class) @RequestBody TestLeaveBo bo) {
|
||||
return R.ok(testLeaveService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除请假
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("workflow:leave:remove")
|
||||
@Log(title = "请假", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable Long[] ids) {
|
||||
return toAjax(testLeaveService.deleteWithValidByIds(List.of(ids)));
|
||||
}
|
||||
}
|
@ -35,7 +35,7 @@ import java.util.List;
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/workflow/leave")
|
||||
public class TestLeaveController extends BaseController {
|
||||
public class OALeaveController extends BaseController {
|
||||
|
||||
private final ITestLeaveService testLeaveService;
|
||||
|
Loading…
x
Reference in New Issue
Block a user