From a53406898f46e1ac5ef8a361dad7b863819cc019 Mon Sep 17 00:00:00 2001 From: weicw <594098497@qq.com> Date: Mon, 5 Jun 2023 22:57:09 +0800 Subject: [PATCH] =?UTF-8?q?=E9=98=B2=E5=9D=A0=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tower/controller/TowerFallController.java | 139 ++++++++++++++++++ .../com/gxwebsoft/tower/entity/TowerFall.java | 86 +++++++++++ .../tower/mapper/TowerFallMapper.java | 37 +++++ .../tower/mapper/xml/TowerFallMapper.xml | 80 ++++++++++ .../gxwebsoft/tower/param/TowerFallParam.java | 78 ++++++++++ .../tower/service/TowerFallService.java | 42 ++++++ .../service/impl/TowerFallServiceImpl.java | 47 ++++++ .../gxwebsoft/generator/TowerGenerator.java | 13 +- 8 files changed, 516 insertions(+), 6 deletions(-) create mode 100644 src/main/java/com/gxwebsoft/tower/controller/TowerFallController.java create mode 100644 src/main/java/com/gxwebsoft/tower/entity/TowerFall.java create mode 100644 src/main/java/com/gxwebsoft/tower/mapper/TowerFallMapper.java create mode 100644 src/main/java/com/gxwebsoft/tower/mapper/xml/TowerFallMapper.xml create mode 100644 src/main/java/com/gxwebsoft/tower/param/TowerFallParam.java create mode 100644 src/main/java/com/gxwebsoft/tower/service/TowerFallService.java create mode 100644 src/main/java/com/gxwebsoft/tower/service/impl/TowerFallServiceImpl.java diff --git a/src/main/java/com/gxwebsoft/tower/controller/TowerFallController.java b/src/main/java/com/gxwebsoft/tower/controller/TowerFallController.java new file mode 100644 index 0000000..1ffee8a --- /dev/null +++ b/src/main/java/com/gxwebsoft/tower/controller/TowerFallController.java @@ -0,0 +1,139 @@ +package com.gxwebsoft.tower.controller; + +import com.gxwebsoft.common.core.web.BaseController; +import com.gxwebsoft.common.system.entity.User; +import com.gxwebsoft.tower.service.TowerFallService; +import com.gxwebsoft.tower.entity.TowerFall; +import com.gxwebsoft.tower.param.TowerFallParam; +import com.gxwebsoft.common.core.web.ApiResult; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.BatchParam; +import com.gxwebsoft.common.core.annotation.OperationLog; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 防坠器管理控制器 + * + * @author 科技小王子 + * @since 2023-06-05 22:40:55 + */ +@Api(tags = "防坠器管理管理") +@RestController +@RequestMapping("/api/tower/tower-fall") +public class TowerFallController extends BaseController { + @Resource + private TowerFallService towerFallService; + + @PreAuthorize("hasAuthority('tower:towerFall:list')") + @OperationLog + @ApiOperation("分页查询防坠器管理") + @GetMapping("/page") + public ApiResult> page(TowerFallParam param) { + PageParam page = new PageParam<>(param); + page.setDefaultOrder("create_time desc"); + return success(towerFallService.page(page, page.getWrapper())); + // 使用关联查询 + //return success(towerFallService.pageRel(param)); + } + + @PreAuthorize("hasAuthority('tower:towerFall:list')") + @OperationLog + @ApiOperation("查询全部防坠器管理") + @GetMapping() + public ApiResult> list(TowerFallParam param) { + PageParam page = new PageParam<>(param); + page.setDefaultOrder("create_time desc"); + return success(towerFallService.list(page.getOrderWrapper())); + // 使用关联查询 + //return success(towerFallService.listRel(param)); + } + + @PreAuthorize("hasAuthority('tower:towerFall:list')") + @OperationLog + @ApiOperation("根据id查询防坠器管理") + @GetMapping("/{id}") + public ApiResult get(@PathVariable("id") Integer id) { + return success(towerFallService.getById(id)); + // 使用关联查询 + //return success(towerFallService.getByIdRel(id)); + } + + @PreAuthorize("hasAuthority('tower:towerFall:save')") + @OperationLog + @ApiOperation("添加防坠器管理") + @PostMapping() + public ApiResult save(@RequestBody TowerFall towerFall) { + // 记录当前登录用户id + User loginUser = getLoginUser(); + if (loginUser != null) { + towerFall.setUserId(loginUser.getUserId()); + } + if (towerFallService.save(towerFall)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @PreAuthorize("hasAuthority('tower:towerFall:update')") + @OperationLog + @ApiOperation("修改防坠器管理") + @PutMapping() + public ApiResult update(@RequestBody TowerFall towerFall) { + if (towerFallService.updateById(towerFall)) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @PreAuthorize("hasAuthority('tower:towerFall:remove')") + @OperationLog + @ApiOperation("删除防坠器管理") + @DeleteMapping("/{id}") + public ApiResult remove(@PathVariable("id") Integer id) { + if (towerFallService.removeById(id)) { + return success("删除成功"); + } + return fail("删除失败"); + } + + @PreAuthorize("hasAuthority('tower:towerFall:save')") + @OperationLog + @ApiOperation("批量添加防坠器管理") + @PostMapping("/batch") + public ApiResult saveBatch(@RequestBody List list) { + if (towerFallService.saveBatch(list)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @PreAuthorize("hasAuthority('tower:towerFall:update')") + @OperationLog + @ApiOperation("批量修改防坠器管理") + @PutMapping("/batch") + public ApiResult removeBatch(@RequestBody BatchParam batchParam) { + if (batchParam.update(towerFallService, "id")) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @PreAuthorize("hasAuthority('tower:towerFall:remove')") + @OperationLog + @ApiOperation("批量删除防坠器管理") + @DeleteMapping("/batch") + public ApiResult removeBatch(@RequestBody List ids) { + if (towerFallService.removeByIds(ids)) { + return success("删除成功"); + } + return fail("删除失败"); + } + +} diff --git a/src/main/java/com/gxwebsoft/tower/entity/TowerFall.java b/src/main/java/com/gxwebsoft/tower/entity/TowerFall.java new file mode 100644 index 0000000..d96b46b --- /dev/null +++ b/src/main/java/com/gxwebsoft/tower/entity/TowerFall.java @@ -0,0 +1,86 @@ +package com.gxwebsoft.tower.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableLogic; +import java.io.Serializable; +import java.util.Date; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 项目管理 + * + * @author 科技小王子 + * @since 2023-06-05 22:40:54 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "TowerFall对象", description = "项目管理") +public class TowerFall implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "自增ID") + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + @ApiModelProperty(value = "防坠器编号") + private String code; + + @ApiModelProperty(value = "防坠器型号") + private String model; + + @ApiModelProperty(value = "制造厂家") + private String factory; + + @ApiModelProperty(value = "产权单位") + private String companyId; + + @ApiModelProperty(value = "出厂日期") + private Date factoryDate; + + @ApiModelProperty(value = "报废日期") + private Date discardDate; + + @ApiModelProperty(value = "出厂检测报告") + private String file1; + + @ApiModelProperty(value = "合格证") + private String file2; + + @ApiModelProperty(value = "出厂铭牌") + private String file3; + + @ApiModelProperty(value = "发票") + private String file4; + + @ApiModelProperty(value = "状态, 0待发布, 1已发布") + private Integer status; + + @ApiModelProperty(value = "备注") + private String comments; + + @ApiModelProperty(value = "排序号") + private Integer sortNumber; + + @ApiModelProperty(value = "所有人") + private Integer userId; + + @ApiModelProperty(value = "是否删除, 0否, 1是") + @TableLogic + private Integer deleted; + + @ApiModelProperty(value = "租户id") + private Integer tenantId; + + @ApiModelProperty(value = "创建时间") + private Date createTime; + + @ApiModelProperty(value = "修改时间") + private Date updateTime; + +} diff --git a/src/main/java/com/gxwebsoft/tower/mapper/TowerFallMapper.java b/src/main/java/com/gxwebsoft/tower/mapper/TowerFallMapper.java new file mode 100644 index 0000000..dc55fca --- /dev/null +++ b/src/main/java/com/gxwebsoft/tower/mapper/TowerFallMapper.java @@ -0,0 +1,37 @@ +package com.gxwebsoft.tower.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.gxwebsoft.tower.entity.TowerFall; +import com.gxwebsoft.tower.param.TowerFallParam; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 项目管理Mapper + * + * @author 科技小王子 + * @since 2023-06-05 22:40:54 + */ +public interface TowerFallMapper extends BaseMapper { + + /** + * 分页查询 + * + * @param page 分页对象 + * @param param 查询参数 + * @return List + */ + List selectPageRel(@Param("page") IPage page, + @Param("param") TowerFallParam param); + + /** + * 查询全部 + * + * @param param 查询参数 + * @return List + */ + List selectListRel(@Param("param") TowerFallParam param); + +} diff --git a/src/main/java/com/gxwebsoft/tower/mapper/xml/TowerFallMapper.xml b/src/main/java/com/gxwebsoft/tower/mapper/xml/TowerFallMapper.xml new file mode 100644 index 0000000..09ad618 --- /dev/null +++ b/src/main/java/com/gxwebsoft/tower/mapper/xml/TowerFallMapper.xml @@ -0,0 +1,80 @@ + + + + + + + SELECT a.* + FROM tower_fall a + + + AND a.id = #{param.id} + + + AND a.code LIKE CONCAT('%', #{param.code}, '%') + + + AND a.model LIKE CONCAT('%', #{param.model}, '%') + + + AND a.factory LIKE CONCAT('%', #{param.factory}, '%') + + + AND a.company_id LIKE CONCAT('%', #{param.companyId}, '%') + + + AND a.factory_date LIKE CONCAT('%', #{param.factoryDate}, '%') + + + AND a.discard_date LIKE CONCAT('%', #{param.discardDate}, '%') + + + AND a.file1 LIKE CONCAT('%', #{param.file1}, '%') + + + AND a.file2 LIKE CONCAT('%', #{param.file2}, '%') + + + AND a.file3 LIKE CONCAT('%', #{param.file3}, '%') + + + AND a.file4 LIKE CONCAT('%', #{param.file4}, '%') + + + AND a.status = #{param.status} + + + AND a.comments LIKE CONCAT('%', #{param.comments}, '%') + + + AND a.sort_number = #{param.sortNumber} + + + AND a.user_id = #{param.userId} + + + AND a.deleted = #{param.deleted} + + + AND a.deleted = 0 + + + AND a.create_time >= #{param.createTimeStart} + + + AND a.create_time <= #{param.createTimeEnd} + + + + + + + + + + + diff --git a/src/main/java/com/gxwebsoft/tower/param/TowerFallParam.java b/src/main/java/com/gxwebsoft/tower/param/TowerFallParam.java new file mode 100644 index 0000000..132d760 --- /dev/null +++ b/src/main/java/com/gxwebsoft/tower/param/TowerFallParam.java @@ -0,0 +1,78 @@ +package com.gxwebsoft.tower.param; + +import com.gxwebsoft.common.core.annotation.QueryField; +import com.gxwebsoft.common.core.annotation.QueryType; +import com.gxwebsoft.common.core.web.BaseParam; +import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 项目管理查询参数 + * + * @author 科技小王子 + * @since 2023-06-05 22:40:54 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@JsonInclude(JsonInclude.Include.NON_NULL) +@ApiModel(value = "TowerFallParam对象", description = "项目管理查询参数") +public class TowerFallParam extends BaseParam { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "自增ID") + @QueryField(type = QueryType.EQ) + private Integer id; + + @ApiModelProperty(value = "防坠器编号") + private String code; + + @ApiModelProperty(value = "防坠器型号") + private String model; + + @ApiModelProperty(value = "制造厂家") + private String factory; + + @ApiModelProperty(value = "产权单位") + private String companyId; + + @ApiModelProperty(value = "出厂日期") + private String factoryDate; + + @ApiModelProperty(value = "报废日期") + private String discardDate; + + @ApiModelProperty(value = "出厂检测报告") + private String file1; + + @ApiModelProperty(value = "合格证") + private String file2; + + @ApiModelProperty(value = "出厂铭牌") + private String file3; + + @ApiModelProperty(value = "发票") + private String file4; + + @ApiModelProperty(value = "状态, 0待发布, 1已发布") + @QueryField(type = QueryType.EQ) + private Integer status; + + @ApiModelProperty(value = "备注") + private String comments; + + @ApiModelProperty(value = "排序号") + @QueryField(type = QueryType.EQ) + private Integer sortNumber; + + @ApiModelProperty(value = "所有人") + @QueryField(type = QueryType.EQ) + private Integer userId; + + @ApiModelProperty(value = "是否删除, 0否, 1是") + @QueryField(type = QueryType.EQ) + private Integer deleted; + +} diff --git a/src/main/java/com/gxwebsoft/tower/service/TowerFallService.java b/src/main/java/com/gxwebsoft/tower/service/TowerFallService.java new file mode 100644 index 0000000..46fd0ca --- /dev/null +++ b/src/main/java/com/gxwebsoft/tower/service/TowerFallService.java @@ -0,0 +1,42 @@ +package com.gxwebsoft.tower.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.tower.entity.TowerFall; +import com.gxwebsoft.tower.param.TowerFallParam; + +import java.util.List; + +/** + * 项目管理Service + * + * @author 科技小王子 + * @since 2023-06-05 22:40:55 + */ +public interface TowerFallService extends IService { + + /** + * 分页关联查询 + * + * @param param 查询参数 + * @return PageResult + */ + PageResult pageRel(TowerFallParam param); + + /** + * 关联查询全部 + * + * @param param 查询参数 + * @return List + */ + List listRel(TowerFallParam param); + + /** + * 根据id查询 + * + * @param id 自增ID + * @return TowerFall + */ + TowerFall getByIdRel(Integer id); + +} diff --git a/src/main/java/com/gxwebsoft/tower/service/impl/TowerFallServiceImpl.java b/src/main/java/com/gxwebsoft/tower/service/impl/TowerFallServiceImpl.java new file mode 100644 index 0000000..541ea9f --- /dev/null +++ b/src/main/java/com/gxwebsoft/tower/service/impl/TowerFallServiceImpl.java @@ -0,0 +1,47 @@ +package com.gxwebsoft.tower.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.gxwebsoft.tower.mapper.TowerFallMapper; +import com.gxwebsoft.tower.service.TowerFallService; +import com.gxwebsoft.tower.entity.TowerFall; +import com.gxwebsoft.tower.param.TowerFallParam; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.PageResult; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 项目管理Service实现 + * + * @author 科技小王子 + * @since 2023-06-05 22:40:55 + */ +@Service +public class TowerFallServiceImpl extends ServiceImpl implements TowerFallService { + + @Override + public PageResult pageRel(TowerFallParam param) { + PageParam page = new PageParam<>(param); + //page.setDefaultOrder("create_time desc"); + List list = baseMapper.selectPageRel(page, param); + return new PageResult<>(list, page.getTotal()); + } + + @Override + public List listRel(TowerFallParam param) { + List list = baseMapper.selectListRel(param); + // 排序 + PageParam page = new PageParam<>(); + //page.setDefaultOrder("create_time desc"); + return page.sortRecords(list); + } + + @Override + public TowerFall getByIdRel(Integer id) { + TowerFallParam param = new TowerFallParam(); + param.setId(id); + return param.getOne(baseMapper.selectListRel(param)); + } + +} diff --git a/src/test/java/com/gxwebsoft/generator/TowerGenerator.java b/src/test/java/com/gxwebsoft/generator/TowerGenerator.java index 078580a..fc245db 100644 --- a/src/test/java/com/gxwebsoft/generator/TowerGenerator.java +++ b/src/test/java/com/gxwebsoft/generator/TowerGenerator.java @@ -22,8 +22,8 @@ import java.util.Map; */ public class TowerGenerator { // 输出位置 - private static final String OUTPUT_LOCATION = System.getProperty("user.dir"); - //private static final String OUTPUT_LOCATION = "D:/codegen"; // 不想生成到项目中可以写磁盘路径 +// private static final String OUTPUT_LOCATION = System.getProperty("user.dir"); + private static final String OUTPUT_LOCATION = "D:/codegen"; // 不想生成到项目中可以写磁盘路径 // 输出目录 private static final String OUTPUT_DIR = "/src/main/java"; // 作者名称 @@ -31,10 +31,10 @@ public class TowerGenerator { // 是否在xml中添加二级缓存配置 private static final boolean ENABLE_CACHE = false; // 数据库连接配置 - private static final String DB_URL = "jdbc:mysql://47.119.165.234:3308/com_gxwebsoft_oa?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8"; + private static final String DB_URL = "jdbc:mysql://42.194.212.185:3308/tower?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8"; private static final String DB_DRIVER = "com.mysql.cj.jdbc.Driver"; - private static final String DB_USERNAME = "com_gxwebsoft_oa"; - private static final String DB_PASSWORD = "EZfW2R4YiWfbLHLw"; + private static final String DB_USERNAME = "tower"; + private static final String DB_PASSWORD = "FXFZrhHbs3pma6Zh"; // 包名 private static final String PACKAGE_NAME = "com.gxwebsoft"; // 模块名 @@ -45,7 +45,8 @@ public class TowerGenerator { // "tower_warehouse", // "tower_accessory" // "tower_project", - "tower_model" +// "tower_model" + "tower_fall" }; // 需要去除的表前缀 private static final String[] TABLE_PREFIX = new String[]{