From 5a4cefe994aaf554c4f4c5d94c325e0f3d4be358 Mon Sep 17 00:00:00 2001 From: 唐耀东 <18861537@qq.com> Date: 星期一, 15 八月 2022 13:23:14 +0800 Subject: [PATCH] 提交代码 --- ruoyi-oa/src/main/java/com/ruoyi/oa/domain/BsTemplate.java | 53 ++ ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/BsTemplateMapper.java | 14 ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/BsTemplateController.java | 116 ++++++ ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/BsTemplateServiceImpl.java | 110 ++++++ ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/BsManualMapper.java | 14 ruoyi-oa/src/main/resources/mapper/oa/BsTemplateMapper.xml | 21 + ruoyi-oa/src/main/java/com/ruoyi/oa/domain/BsManual.java | 53 ++ ruoyi-oa/src/main/java/com/ruoyi/oa/domain/vo/BsTemplateVo.java | 70 +++ ruoyi-oa/src/main/java/com/ruoyi/oa/domain/bo/BsTemplateBo.java | 86 ++++ ruoyi-oa/src/main/java/com/ruoyi/oa/service/IBsManualService.java | 56 +++ ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/BsManualController.java | 116 ++++++ ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/BsManualServiceImpl.java | 110 ++++++ ruoyi-oa/src/main/java/com/ruoyi/oa/domain/vo/BsManualVo.java | 70 +++ ruoyi-oa/src/main/java/com/ruoyi/oa/service/IBsTemplateService.java | 56 +++ ruoyi-oa/src/main/resources/mapper/oa/BsManualMapper.xml | 21 + ruoyi-oa/src/main/java/com/ruoyi/oa/domain/bo/BsManualBo.java | 86 ++++ 16 files changed, 1,052 insertions(+), 0 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/BsManualController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/BsManualController.java new file mode 100644 index 0000000..59f344f --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/BsManualController.java @@ -0,0 +1,116 @@ +package com.ruoyi.web.controller.oa; + +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.oa.domain.vo.BsManualVo; +import com.ruoyi.oa.domain.bo.BsManualBo; +import com.ruoyi.oa.service.IBsManualService; +import com.ruoyi.common.core.page.TableDataInfo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiParam; +import io.swagger.annotations.ApiOperation; + +/** + * 鎵嬪唽绠$悊Controller + * + * @author ruoyi + * @date 2022-08-15 + */ +@Validated +@Api(value = "鎵嬪唽绠$悊鎺у埗鍣�", tags = {"鎵嬪唽绠$悊绠$悊"}) +@RequiredArgsConstructor(onConstructor_ = @Autowired) +@RestController +@RequestMapping("/oa/manual") +public class BsManualController extends BaseController { + + private final IBsManualService iBsManualService; + + /** + * 鏌ヨ鎵嬪唽绠$悊鍒楄〃 + */ + @ApiOperation("鏌ヨ鎵嬪唽绠$悊鍒楄〃") + @PreAuthorize("@ss.hasPermi('oa:manual:list')") + @GetMapping("/list") + public TableDataInfo<BsManualVo> list(@Validated(QueryGroup.class) BsManualBo bo) { + return iBsManualService.queryPageList(bo); + } + + /** + * 瀵煎嚭鎵嬪唽绠$悊鍒楄〃 + */ + @ApiOperation("瀵煎嚭鎵嬪唽绠$悊鍒楄〃") + @PreAuthorize("@ss.hasPermi('oa:manual:export')") + @Log(title = "鎵嬪唽绠$悊", businessType = BusinessType.EXPORT) + @GetMapping("/export") + public void export(@Validated BsManualBo bo, HttpServletResponse response) { + List<BsManualVo> list = iBsManualService.queryList(bo); + ExcelUtil.exportExcel(list, "鎵嬪唽绠$悊", BsManualVo.class, response); + } + + /** + * 鑾峰彇鎵嬪唽绠$悊璇︾粏淇℃伅 + */ + @ApiOperation("鑾峰彇鎵嬪唽绠$悊璇︾粏淇℃伅") + @PreAuthorize("@ss.hasPermi('oa:manual:query')") + @GetMapping("/{id}") + public AjaxResult<BsManualVo> getInfo(@ApiParam("涓婚敭") + @NotNull(message = "涓婚敭涓嶈兘涓虹┖") + @PathVariable("id") Long id) { + return AjaxResult.success(iBsManualService.queryById(id)); + } + + /** + * 鏂板鎵嬪唽绠$悊 + */ + @ApiOperation("鏂板鎵嬪唽绠$悊") + @PreAuthorize("@ss.hasPermi('oa:manual:add')") + @Log(title = "鎵嬪唽绠$悊", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public AjaxResult<Void> add(@Validated(AddGroup.class) @RequestBody BsManualBo bo) { + return toAjax(iBsManualService.insertByBo(bo) ? 1 : 0); + } + + /** + * 淇敼鎵嬪唽绠$悊 + */ + @ApiOperation("淇敼鎵嬪唽绠$悊") + @PreAuthorize("@ss.hasPermi('oa:manual:edit')") + @Log(title = "鎵嬪唽绠$悊", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public AjaxResult<Void> edit(@Validated(EditGroup.class) @RequestBody BsManualBo bo) { + return toAjax(iBsManualService.updateByBo(bo) ? 1 : 0); + } + + /** + * 鍒犻櫎鎵嬪唽绠$悊 + */ + @ApiOperation("鍒犻櫎鎵嬪唽绠$悊") + @PreAuthorize("@ss.hasPermi('oa:manual:remove')") + @Log(title = "鎵嬪唽绠$悊" , businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult<Void> remove(@ApiParam("涓婚敭涓�") + @NotEmpty(message = "涓婚敭涓嶈兘涓虹┖") + @PathVariable Long[] ids) { + return toAjax(iBsManualService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0); + } +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/BsTemplateController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/BsTemplateController.java new file mode 100644 index 0000000..03ef275 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/BsTemplateController.java @@ -0,0 +1,116 @@ +package com.ruoyi.web.controller.oa; + +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.oa.domain.vo.BsTemplateVo; +import com.ruoyi.oa.domain.bo.BsTemplateBo; +import com.ruoyi.oa.service.IBsTemplateService; +import com.ruoyi.common.core.page.TableDataInfo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiParam; +import io.swagger.annotations.ApiOperation; + +/** + * 妯℃澘绠$悊Controller + * + * @author ruoyi + * @date 2022-08-15 + */ +@Validated +@Api(value = "妯℃澘绠$悊鎺у埗鍣�", tags = {"妯℃澘绠$悊绠$悊"}) +@RequiredArgsConstructor(onConstructor_ = @Autowired) +@RestController +@RequestMapping("/oa/template") +public class BsTemplateController extends BaseController { + + private final IBsTemplateService iBsTemplateService; + + /** + * 鏌ヨ妯℃澘绠$悊鍒楄〃 + */ + @ApiOperation("鏌ヨ妯℃澘绠$悊鍒楄〃") + @PreAuthorize("@ss.hasPermi('oa:template:list')") + @GetMapping("/list") + public TableDataInfo<BsTemplateVo> list(@Validated(QueryGroup.class) BsTemplateBo bo) { + return iBsTemplateService.queryPageList(bo); + } + + /** + * 瀵煎嚭妯℃澘绠$悊鍒楄〃 + */ + @ApiOperation("瀵煎嚭妯℃澘绠$悊鍒楄〃") + @PreAuthorize("@ss.hasPermi('oa:template:export')") + @Log(title = "妯℃澘绠$悊", businessType = BusinessType.EXPORT) + @GetMapping("/export") + public void export(@Validated BsTemplateBo bo, HttpServletResponse response) { + List<BsTemplateVo> list = iBsTemplateService.queryList(bo); + ExcelUtil.exportExcel(list, "妯℃澘绠$悊", BsTemplateVo.class, response); + } + + /** + * 鑾峰彇妯℃澘绠$悊璇︾粏淇℃伅 + */ + @ApiOperation("鑾峰彇妯℃澘绠$悊璇︾粏淇℃伅") + @PreAuthorize("@ss.hasPermi('oa:template:query')") + @GetMapping("/{id}") + public AjaxResult<BsTemplateVo> getInfo(@ApiParam("涓婚敭") + @NotNull(message = "涓婚敭涓嶈兘涓虹┖") + @PathVariable("id") Long id) { + return AjaxResult.success(iBsTemplateService.queryById(id)); + } + + /** + * 鏂板妯℃澘绠$悊 + */ + @ApiOperation("鏂板妯℃澘绠$悊") + @PreAuthorize("@ss.hasPermi('oa:template:add')") + @Log(title = "妯℃澘绠$悊", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public AjaxResult<Void> add(@Validated(AddGroup.class) @RequestBody BsTemplateBo bo) { + return toAjax(iBsTemplateService.insertByBo(bo) ? 1 : 0); + } + + /** + * 淇敼妯℃澘绠$悊 + */ + @ApiOperation("淇敼妯℃澘绠$悊") + @PreAuthorize("@ss.hasPermi('oa:template:edit')") + @Log(title = "妯℃澘绠$悊", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public AjaxResult<Void> edit(@Validated(EditGroup.class) @RequestBody BsTemplateBo bo) { + return toAjax(iBsTemplateService.updateByBo(bo) ? 1 : 0); + } + + /** + * 鍒犻櫎妯℃澘绠$悊 + */ + @ApiOperation("鍒犻櫎妯℃澘绠$悊") + @PreAuthorize("@ss.hasPermi('oa:template:remove')") + @Log(title = "妯℃澘绠$悊" , businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult<Void> remove(@ApiParam("涓婚敭涓�") + @NotEmpty(message = "涓婚敭涓嶈兘涓虹┖") + @PathVariable Long[] ids) { + return toAjax(iBsTemplateService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0); + } +} diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/BsManual.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/BsManual.java new file mode 100644 index 0000000..a08ce87 --- /dev/null +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/BsManual.java @@ -0,0 +1,53 @@ +package com.ruoyi.oa.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; + +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 鎵嬪唽绠$悊瀵硅薄 bs_manual + * + * @author ruoyi + * @date 2022-08-15 + */ +@Data +@Accessors(chain = true) +@TableName("bs_manual") +public class BsManual extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * + */ + @TableId(value = "id") + private Long id; + /** + * 鎵嬪唽 + */ + private String manual; + /** + * 鍙戝竷鐗堟湰 + */ + private String versionCode; + /** + * 淇鏃ユ湡 + */ + private String reviseTime; + /** + * 闄勪欢 + */ + private String fileUrl; + /** + * 鍒犻櫎鏍囪瘑 + */ + @TableLogic + private String delFlag; + +} diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/BsTemplate.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/BsTemplate.java new file mode 100644 index 0000000..8ef974b --- /dev/null +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/BsTemplate.java @@ -0,0 +1,53 @@ +package com.ruoyi.oa.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; + +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 妯℃澘绠$悊瀵硅薄 bs_template + * + * @author ruoyi + * @date 2022-08-15 + */ +@Data +@Accessors(chain = true) +@TableName("bs_template") +public class BsTemplate extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * + */ + @TableId(value = "id") + private Long id; + /** + * 妯℃澘 + */ + private String templateName; + /** + * 鍙戝竷鐗堟湰 + */ + private String versionCode; + /** + * 淇鏃ユ湡 + */ + private String reviseTime; + /** + * 闄勪欢 + */ + private String fileUrl; + /** + * 鍒犻櫎鏍囪瘑 + */ + @TableLogic + private String delFlag; + +} diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/bo/BsManualBo.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/bo/BsManualBo.java new file mode 100644 index 0000000..ce90e7b --- /dev/null +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/bo/BsManualBo.java @@ -0,0 +1,86 @@ +package com.ruoyi.oa.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 com.ruoyi.common.core.domain.BaseEntity; + +/** + * 鎵嬪唽绠$悊涓氬姟瀵硅薄 bs_manual + * + * @author ruoyi + * @date 2022-08-15 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +@ApiModel("鎵嬪唽绠$悊涓氬姟瀵硅薄") +public class BsManualBo extends BaseEntity { + + /** + * + */ + @ApiModelProperty(value = "", required = true) + @NotNull(message = "涓嶈兘涓虹┖", groups = { EditGroup.class }) + private Long id; + + /** + * 鎵嬪唽 + */ + @ApiModelProperty(value = "鎵嬪唽", required = true) + @NotBlank(message = "鎵嬪唽涓嶈兘涓虹┖", groups = { AddGroup.class, EditGroup.class }) + private String manual; + + /** + * 鍙戝竷鐗堟湰 + */ + @ApiModelProperty(value = "鍙戝竷鐗堟湰", required = true) + @NotBlank(message = "鍙戝竷鐗堟湰涓嶈兘涓虹┖", groups = { AddGroup.class, EditGroup.class }) + private String versionCode; + + /** + * 淇鏃ユ湡 + */ + @ApiModelProperty(value = "淇鏃ユ湡", required = true) + @NotBlank(message = "淇鏃ユ湡涓嶈兘涓虹┖", groups = { AddGroup.class, EditGroup.class }) + private String reviseTime; + + /** + * 闄勪欢 + */ + @ApiModelProperty(value = "闄勪欢") + private String fileUrl; + + + /** + * 鍒嗛〉澶у皬 + */ + @ApiModelProperty("鍒嗛〉澶у皬") + private Integer pageSize; + + /** + * 褰撳墠椤垫暟 + */ + @ApiModelProperty("褰撳墠椤垫暟") + private Integer pageNum; + + /** + * 鎺掑簭鍒� + */ + @ApiModelProperty("鎺掑簭鍒�") + private String orderByColumn; + + /** + * 鎺掑簭鐨勬柟鍚慸esc鎴栬�卆sc + */ + @ApiModelProperty(value = "鎺掑簭鐨勬柟鍚�", example = "asc,desc") + private String isAsc; + +} diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/bo/BsTemplateBo.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/bo/BsTemplateBo.java new file mode 100644 index 0000000..547c179 --- /dev/null +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/bo/BsTemplateBo.java @@ -0,0 +1,86 @@ +package com.ruoyi.oa.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 com.ruoyi.common.core.domain.BaseEntity; + +/** + * 妯℃澘绠$悊涓氬姟瀵硅薄 bs_template + * + * @author ruoyi + * @date 2022-08-15 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +@ApiModel("妯℃澘绠$悊涓氬姟瀵硅薄") +public class BsTemplateBo extends BaseEntity { + + /** + * + */ + @ApiModelProperty(value = "", required = true) + @NotNull(message = "涓嶈兘涓虹┖", groups = { EditGroup.class }) + private Long id; + + /** + * 妯℃澘 + */ + @ApiModelProperty(value = "妯℃澘", required = true) + @NotBlank(message = "妯℃澘涓嶈兘涓虹┖", groups = { AddGroup.class, EditGroup.class }) + private String templateName; + + /** + * 鍙戝竷鐗堟湰 + */ + @ApiModelProperty(value = "鍙戝竷鐗堟湰", required = true) + @NotBlank(message = "鍙戝竷鐗堟湰涓嶈兘涓虹┖", groups = { AddGroup.class, EditGroup.class }) + private String versionCode; + + /** + * 淇鏃ユ湡 + */ + @ApiModelProperty(value = "淇鏃ユ湡", required = true) + @NotBlank(message = "淇鏃ユ湡涓嶈兘涓虹┖", groups = { AddGroup.class, EditGroup.class }) + private String reviseTime; + + /** + * 闄勪欢 + */ + @ApiModelProperty(value = "闄勪欢") + private String fileUrl; + + + /** + * 鍒嗛〉澶у皬 + */ + @ApiModelProperty("鍒嗛〉澶у皬") + private Integer pageSize; + + /** + * 褰撳墠椤垫暟 + */ + @ApiModelProperty("褰撳墠椤垫暟") + private Integer pageNum; + + /** + * 鎺掑簭鍒� + */ + @ApiModelProperty("鎺掑簭鍒�") + private String orderByColumn; + + /** + * 鎺掑簭鐨勬柟鍚慸esc鎴栬�卆sc + */ + @ApiModelProperty(value = "鎺掑簭鐨勬柟鍚�", example = "asc,desc") + private String isAsc; + +} diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/vo/BsManualVo.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/vo/BsManualVo.java new file mode 100644 index 0000000..8d64a1e --- /dev/null +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/vo/BsManualVo.java @@ -0,0 +1,70 @@ +package com.ruoyi.oa.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; + + + +/** + * 鎵嬪唽绠$悊瑙嗗浘瀵硅薄 bs_manual + * + * @author ruoyi + * @date 2022-08-15 + */ +@Data +@ApiModel("鎵嬪唽绠$悊瑙嗗浘瀵硅薄") +@ExcelIgnoreUnannotated +public class BsManualVo { + + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + @ApiModelProperty("") + private Long id; + + /** + * 鎵嬪唽 + */ + @ExcelProperty(value = "鎵嬪唽") + @ApiModelProperty("鎵嬪唽") + private String manual; + + /** + * 鍙戝竷鐗堟湰 + */ + @ExcelProperty(value = "鍙戝竷鐗堟湰") + @ApiModelProperty("鍙戝竷鐗堟湰") + private String versionCode; + + /** + * 淇鏃ユ湡 + */ + @ExcelProperty(value = "淇鏃ユ湡") + @ApiModelProperty("淇鏃ユ湡") + private String reviseTime; + + /** + * 闄勪欢 + */ + @ExcelProperty(value = "闄勪欢") + @ApiModelProperty("闄勪欢") + private String fileUrl; + + /** + * 鍒涘缓鏃堕棿 + */ + @ExcelProperty(value = "鍒涘缓鏃堕棿") + @ApiModelProperty("鍒涘缓鏃堕棿") + private Date createTime; + + +} diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/vo/BsTemplateVo.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/vo/BsTemplateVo.java new file mode 100644 index 0000000..120833e --- /dev/null +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/vo/BsTemplateVo.java @@ -0,0 +1,70 @@ +package com.ruoyi.oa.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; + + + +/** + * 妯℃澘绠$悊瑙嗗浘瀵硅薄 bs_template + * + * @author ruoyi + * @date 2022-08-15 + */ +@Data +@ApiModel("妯℃澘绠$悊瑙嗗浘瀵硅薄") +@ExcelIgnoreUnannotated +public class BsTemplateVo { + + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + @ApiModelProperty("") + private Long id; + + /** + * 妯℃澘 + */ + @ExcelProperty(value = "妯℃澘") + @ApiModelProperty("妯℃澘") + private String templateName; + + /** + * 鍙戝竷鐗堟湰 + */ + @ExcelProperty(value = "鍙戝竷鐗堟湰") + @ApiModelProperty("鍙戝竷鐗堟湰") + private String versionCode; + + /** + * 淇鏃ユ湡 + */ + @ExcelProperty(value = "淇鏃ユ湡") + @ApiModelProperty("淇鏃ユ湡") + private String reviseTime; + + /** + * 闄勪欢 + */ + @ExcelProperty(value = "闄勪欢") + @ApiModelProperty("闄勪欢") + private String fileUrl; + + /** + * 鍒涘缓鏃堕棿 + */ + @ExcelProperty(value = "鍒涘缓鏃堕棿") + @ApiModelProperty("鍒涘缓鏃堕棿") + private Date createTime; + + +} diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/BsManualMapper.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/BsManualMapper.java new file mode 100644 index 0000000..b49321b --- /dev/null +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/BsManualMapper.java @@ -0,0 +1,14 @@ +package com.ruoyi.oa.mapper; + +import com.ruoyi.oa.domain.BsManual; +import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus; + +/** + * 鎵嬪唽绠$悊Mapper鎺ュ彛 + * + * @author ruoyi + * @date 2022-08-15 + */ +public interface BsManualMapper extends BaseMapperPlus<BsManual> { + +} diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/BsTemplateMapper.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/BsTemplateMapper.java new file mode 100644 index 0000000..180d26c --- /dev/null +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/BsTemplateMapper.java @@ -0,0 +1,14 @@ +package com.ruoyi.oa.mapper; + +import com.ruoyi.oa.domain.BsTemplate; +import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus; + +/** + * 妯℃澘绠$悊Mapper鎺ュ彛 + * + * @author ruoyi + * @date 2022-08-15 + */ +public interface BsTemplateMapper extends BaseMapperPlus<BsTemplate> { + +} diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/service/IBsManualService.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/IBsManualService.java new file mode 100644 index 0000000..ea4ac73 --- /dev/null +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/IBsManualService.java @@ -0,0 +1,56 @@ +package com.ruoyi.oa.service; + +import com.ruoyi.oa.domain.BsManual; +import com.ruoyi.oa.domain.vo.BsManualVo; +import com.ruoyi.oa.domain.bo.BsManualBo; +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 ruoyi + * @date 2022-08-15 + */ +public interface IBsManualService extends IServicePlus<BsManual, BsManualVo> { + /** + * 鏌ヨ鍗曚釜 + * @return + */ + BsManualVo queryById(Long id); + + /** + * 鏌ヨ鍒楄〃 + */ + TableDataInfo<BsManualVo> queryPageList(BsManualBo bo); + + /** + * 鏌ヨ鍒楄〃 + */ + List<BsManualVo> queryList(BsManualBo bo); + + /** + * 鏍规嵁鏂板涓氬姟瀵硅薄鎻掑叆鎵嬪唽绠$悊 + * @param bo 鎵嬪唽绠$悊鏂板涓氬姟瀵硅薄 + * @return + */ + Boolean insertByBo(BsManualBo bo); + + /** + * 鏍规嵁缂栬緫涓氬姟瀵硅薄淇敼鎵嬪唽绠$悊 + * @param bo 鎵嬪唽绠$悊缂栬緫涓氬姟瀵硅薄 + * @return + */ + Boolean updateByBo(BsManualBo bo); + + /** + * 鏍¢獙骞跺垹闄ゆ暟鎹� + * @param ids 涓婚敭闆嗗悎 + * @param isValid 鏄惁鏍¢獙,true-鍒犻櫎鍓嶆牎楠�,false-涓嶆牎楠� + * @return + */ + Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid); +} diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/service/IBsTemplateService.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/IBsTemplateService.java new file mode 100644 index 0000000..76b9335 --- /dev/null +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/IBsTemplateService.java @@ -0,0 +1,56 @@ +package com.ruoyi.oa.service; + +import com.ruoyi.oa.domain.BsTemplate; +import com.ruoyi.oa.domain.vo.BsTemplateVo; +import com.ruoyi.oa.domain.bo.BsTemplateBo; +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 ruoyi + * @date 2022-08-15 + */ +public interface IBsTemplateService extends IServicePlus<BsTemplate, BsTemplateVo> { + /** + * 鏌ヨ鍗曚釜 + * @return + */ + BsTemplateVo queryById(Long id); + + /** + * 鏌ヨ鍒楄〃 + */ + TableDataInfo<BsTemplateVo> queryPageList(BsTemplateBo bo); + + /** + * 鏌ヨ鍒楄〃 + */ + List<BsTemplateVo> queryList(BsTemplateBo bo); + + /** + * 鏍规嵁鏂板涓氬姟瀵硅薄鎻掑叆妯℃澘绠$悊 + * @param bo 妯℃澘绠$悊鏂板涓氬姟瀵硅薄 + * @return + */ + Boolean insertByBo(BsTemplateBo bo); + + /** + * 鏍规嵁缂栬緫涓氬姟瀵硅薄淇敼妯℃澘绠$悊 + * @param bo 妯℃澘绠$悊缂栬緫涓氬姟瀵硅薄 + * @return + */ + Boolean updateByBo(BsTemplateBo bo); + + /** + * 鏍¢獙骞跺垹闄ゆ暟鎹� + * @param ids 涓婚敭闆嗗悎 + * @param isValid 鏄惁鏍¢獙,true-鍒犻櫎鍓嶆牎楠�,false-涓嶆牎楠� + * @return + */ + Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid); +} diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/BsManualServiceImpl.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/BsManualServiceImpl.java new file mode 100644 index 0000000..24b27ad --- /dev/null +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/BsManualServiceImpl.java @@ -0,0 +1,110 @@ +package com.ruoyi.oa.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.http.HttpStatus; +import com.ruoyi.common.exception.ServiceException; +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 com.ruoyi.oa.domain.BsTemplate; +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.oa.domain.bo.BsManualBo; +import com.ruoyi.oa.domain.vo.BsManualVo; +import com.ruoyi.oa.domain.BsManual; +import com.ruoyi.oa.mapper.BsManualMapper; +import com.ruoyi.oa.service.IBsManualService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 鎵嬪唽绠$悊Service涓氬姟灞傚鐞� + * + * @author ruoyi + * @date 2022-08-15 + */ +@Service +public class BsManualServiceImpl extends ServicePlusImpl<BsManualMapper, BsManual, BsManualVo> implements IBsManualService { + + @Override + public BsManualVo queryById(Long id){ + return getVoById(id); + } + + @Override + public TableDataInfo<BsManualVo> queryPageList(BsManualBo bo) { + PagePlus<BsManual, BsManualVo> result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo)); + return PageUtils.buildDataInfo(result); + } + + @Override + public List<BsManualVo> queryList(BsManualBo bo) { + return listVo(buildQueryWrapper(bo)); + } + + private LambdaQueryWrapper<BsManual> buildQueryWrapper(BsManualBo bo) { + Map<String, Object> params = bo.getParams(); + LambdaQueryWrapper<BsManual> lqw = Wrappers.lambdaQuery(); + return lqw; + } + + @Override + public Boolean insertByBo(BsManualBo bo) { + List<BsManual> list = baseMapper.selectList(new LambdaQueryWrapper<BsManual>().eq(BsManual::getManual, bo.getManual())); + if (list.size() > 0) { + throw new ServiceException("鎵嬪唽閲嶅", HttpStatus.HTTP_PARTIAL); + } + List<BsManual> vList = baseMapper.selectList(new LambdaQueryWrapper<BsManual>().eq(BsManual::getVersionCode, bo.getVersionCode())); + if (vList.size() > 0) { + throw new ServiceException("鍙戝竷鐗堟湰閲嶅", HttpStatus.HTTP_PARTIAL); + } + BsManual add = BeanUtil.toBean(bo, BsManual.class); + validEntityBeforeSave(add); + boolean flag = save(add); + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + @Override + public Boolean updateByBo(BsManualBo bo) { + List<BsManual> list = baseMapper.selectList(new LambdaQueryWrapper<BsManual>() + .eq(BsManual::getManual, bo.getManual()) + .ne(BsManual::getId, bo.getId())); + if (list.size() > 0) { + throw new ServiceException("鎵嬪唽閲嶅", HttpStatus.HTTP_PARTIAL); + } + List<BsManual> vList = baseMapper.selectList(new LambdaQueryWrapper<BsManual>() + .eq(BsManual::getVersionCode, bo.getVersionCode()) + .ne(BsManual::getId, bo.getId())); + if (vList.size() > 0) { + throw new ServiceException("鍙戝竷鐗堟湰閲嶅", HttpStatus.HTTP_PARTIAL); + } + BsManual update = BeanUtil.toBean(bo, BsManual.class); + validEntityBeforeSave(update); + return updateById(update); + } + + /** + * 淇濆瓨鍓嶇殑鏁版嵁鏍¢獙 + * + * @param entity 瀹炰綋绫绘暟鎹� + */ + private void validEntityBeforeSave(BsManual entity){ + //TODO 鍋氫竴浜涙暟鎹牎楠�,濡傚敮涓�绾︽潫 + } + + @Override + public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { + if(isValid){ + //TODO 鍋氫竴浜涗笟鍔′笂鐨勬牎楠�,鍒ゆ柇鏄惁闇�瑕佹牎楠� + } + return removeByIds(ids); + } +} diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/BsTemplateServiceImpl.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/BsTemplateServiceImpl.java new file mode 100644 index 0000000..96476f8 --- /dev/null +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/BsTemplateServiceImpl.java @@ -0,0 +1,110 @@ +package com.ruoyi.oa.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.http.HttpStatus; +import com.ruoyi.common.exception.ServiceException; +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 com.ruoyi.oa.domain.BsRules; +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.oa.domain.bo.BsTemplateBo; +import com.ruoyi.oa.domain.vo.BsTemplateVo; +import com.ruoyi.oa.domain.BsTemplate; +import com.ruoyi.oa.mapper.BsTemplateMapper; +import com.ruoyi.oa.service.IBsTemplateService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 妯℃澘绠$悊Service涓氬姟灞傚鐞� + * + * @author ruoyi + * @date 2022-08-15 + */ +@Service +public class BsTemplateServiceImpl extends ServicePlusImpl<BsTemplateMapper, BsTemplate, BsTemplateVo> implements IBsTemplateService { + + @Override + public BsTemplateVo queryById(Long id){ + return getVoById(id); + } + + @Override + public TableDataInfo<BsTemplateVo> queryPageList(BsTemplateBo bo) { + PagePlus<BsTemplate, BsTemplateVo> result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo)); + return PageUtils.buildDataInfo(result); + } + + @Override + public List<BsTemplateVo> queryList(BsTemplateBo bo) { + return listVo(buildQueryWrapper(bo)); + } + + private LambdaQueryWrapper<BsTemplate> buildQueryWrapper(BsTemplateBo bo) { + Map<String, Object> params = bo.getParams(); + LambdaQueryWrapper<BsTemplate> lqw = Wrappers.lambdaQuery(); + return lqw; + } + + @Override + public Boolean insertByBo(BsTemplateBo bo) { + List<BsTemplate> list = baseMapper.selectList(new LambdaQueryWrapper<BsTemplate>().eq(BsTemplate::getTemplateName, bo.getTemplateName())); + if (list.size() > 0) { + throw new ServiceException("妯℃澘閲嶅", HttpStatus.HTTP_PARTIAL); + } + List<BsTemplate> vList = baseMapper.selectList(new LambdaQueryWrapper<BsTemplate>().eq(BsTemplate::getVersionCode, bo.getVersionCode())); + if (vList.size() > 0) { + throw new ServiceException("鍙戝竷鐗堟湰閲嶅", HttpStatus.HTTP_PARTIAL); + } + BsTemplate add = BeanUtil.toBean(bo, BsTemplate.class); + validEntityBeforeSave(add); + boolean flag = save(add); + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + @Override + public Boolean updateByBo(BsTemplateBo bo) { + List<BsTemplate> list = baseMapper.selectList(new LambdaQueryWrapper<BsTemplate>() + .eq(BsTemplate::getTemplateName, bo.getTemplateName()) + .ne(BsTemplate::getId, bo.getId())); + if (list.size() > 0) { + throw new ServiceException("妯℃澘閲嶅", HttpStatus.HTTP_PARTIAL); + } + List<BsTemplate> vList = baseMapper.selectList(new LambdaQueryWrapper<BsTemplate>() + .eq(BsTemplate::getVersionCode, bo.getVersionCode()) + .ne(BsTemplate::getId, bo.getId())); + if (vList.size() > 0) { + throw new ServiceException("鍙戝竷鐗堟湰閲嶅", HttpStatus.HTTP_PARTIAL); + } + BsTemplate update = BeanUtil.toBean(bo, BsTemplate.class); + validEntityBeforeSave(update); + return updateById(update); + } + + /** + * 淇濆瓨鍓嶇殑鏁版嵁鏍¢獙 + * + * @param entity 瀹炰綋绫绘暟鎹� + */ + private void validEntityBeforeSave(BsTemplate entity){ + //TODO 鍋氫竴浜涙暟鎹牎楠�,濡傚敮涓�绾︽潫 + } + + @Override + public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { + if(isValid){ + //TODO 鍋氫竴浜涗笟鍔′笂鐨勬牎楠�,鍒ゆ柇鏄惁闇�瑕佹牎楠� + } + return removeByIds(ids); + } +} diff --git a/ruoyi-oa/src/main/resources/mapper/oa/BsManualMapper.xml b/ruoyi-oa/src/main/resources/mapper/oa/BsManualMapper.xml new file mode 100644 index 0000000..427d2c9 --- /dev/null +++ b/ruoyi-oa/src/main/resources/mapper/oa/BsManualMapper.xml @@ -0,0 +1,21 @@ +<?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="com.ruoyi.oa.mapper.BsManualMapper"> + + <resultMap type="com.ruoyi.oa.domain.BsManual" id="BsManualResult"> + <result property="id" column="id"/> + <result property="manual" column="manual"/> + <result property="versionCode" column="version_code"/> + <result property="reviseTime" column="revise_time"/> + <result property="fileUrl" column="file_url"/> + <result property="createBy" column="create_by"/> + <result property="createTime" column="create_time"/> + <result property="updateBy" column="update_by"/> + <result property="updateTime" column="update_time"/> + <result property="delFlag" column="del_flag"/> + </resultMap> + + +</mapper> diff --git a/ruoyi-oa/src/main/resources/mapper/oa/BsTemplateMapper.xml b/ruoyi-oa/src/main/resources/mapper/oa/BsTemplateMapper.xml new file mode 100644 index 0000000..944e8fb --- /dev/null +++ b/ruoyi-oa/src/main/resources/mapper/oa/BsTemplateMapper.xml @@ -0,0 +1,21 @@ +<?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="com.ruoyi.oa.mapper.BsTemplateMapper"> + + <resultMap type="com.ruoyi.oa.domain.BsTemplate" id="BsTemplateResult"> + <result property="id" column="id"/> + <result property="templateName" column="template_name"/> + <result property="versionCode" column="version_code"/> + <result property="reviseTime" column="revise_time"/> + <result property="fileUrl" column="file_url"/> + <result property="createBy" column="create_by"/> + <result property="createTime" column="create_time"/> + <result property="updateBy" column="update_by"/> + <result property="updateTime" column="update_time"/> + <result property="delFlag" column="del_flag"/> + </resultMap> + + +</mapper> -- Gitblit v1.9.1