From 7c2c09439da3dccf1e032e89e1cb950b8fa1cc26 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Tue, 01 Mar 2022 20:09:57 +0800
Subject: [PATCH] 健康证,合同基础接口编写

---
 src/main/java/org/springblade/modules/contract/entity/Contract.java                  |   78 +++++++
 src/main/java/org/springblade/modules/contract/mapper/ContractMapper.xml             |   20 ++
 src/main/java/org/springblade/modules/health/service/HealthCardService.java          |   27 ++
 src/main/java/org/springblade/modules/health/controller/HealthCardController.java    |   91 +++++++++
 src/main/java/org/springblade/modules/health/service/impl/HealthCardServiceImpl.java |   31 +++
 src/main/java/org/springblade/modules/health/vo/HealthCardVO.java                    |   15 +
 src/main/java/org/springblade/modules/contract/service/impl/ContractServiceImpl.java |   31 +++
 src/main/java/org/springblade/modules/contract/vo/ContractVO.java                    |   15 +
 src/main/java/org/springblade/modules/contract/mapper/ContractMapper.java            |   28 ++
 src/main/java/org/springblade/modules/contract/service/ContractService.java          |   27 ++
 src/main/java/org/springblade/modules/contract/controller/ContractController.java    |  100 ++++++++++
 src/main/java/org/springblade/modules/health/entity/HealthCard.java                  |   72 +++++++
 src/main/java/org/springblade/modules/health/mapper/HealthCardMapper.xml             |   14 +
 src/main/java/org/springblade/modules/health/mapper/HealthCardMapper.java            |   28 ++
 14 files changed, 577 insertions(+), 0 deletions(-)

diff --git a/src/main/java/org/springblade/modules/contract/controller/ContractController.java b/src/main/java/org/springblade/modules/contract/controller/ContractController.java
new file mode 100644
index 0000000..5a79946
--- /dev/null
+++ b/src/main/java/org/springblade/modules/contract/controller/ContractController.java
@@ -0,0 +1,100 @@
+
+package org.springblade.modules.contract.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.ApiParam;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.contract.entity.Contract;
+import org.springblade.modules.contract.service.ContractService;
+import org.springblade.modules.contract.vo.ContractVO;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Date;
+
+/**
+ * 合同控制器
+ * @author zhongrj
+ * @since 2022-03-01
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/contract")
+public class ContractController extends BladeController {
+
+	private final ContractService contractService;
+
+	/**
+	 * 详情
+	 */
+	@GetMapping("/detail")
+	public R<Contract> detail(Contract contract) {
+		Contract detail = contractService.getOne(Condition.getQueryWrapper(contract));
+		return R.data(detail);
+	}
+
+	/**
+	 * 分页
+	 */
+	@GetMapping("/list")
+	public R<IPage<Contract>> list(Contract contract, Query query) {
+		IPage<Contract> pages = contractService.page(Condition.getPage(query), Condition.getQueryWrapper(contract));
+		return R.data(pages);
+	}
+
+	/**
+	 * 自定义分页
+	 */
+	@GetMapping("/page")
+	public R<IPage<ContractVO>> page(ContractVO contract, Query query) {
+		IPage<ContractVO> pages = contractService.selectContractPage(Condition.getPage(query), contract);
+		return R.data(pages);
+	}
+
+	/**
+	 * 新增
+	 */
+	@PostMapping("/save")
+	public R save(@RequestBody Contract contract) {
+		//设置时间
+		contract.setCreateTime(new Date());
+		contract.setUpdateTime(new Date());
+		//返回
+		return R.data(contractService.save(contract));
+	}
+
+
+	/**
+	 * 修改
+	 */
+	@PostMapping("/update")
+	public R update(@RequestBody Contract contract) {
+		//设置更新时间
+		contract.setUpdateTime(new Date());
+		//修改并返回
+		return R.data(contractService.updateById(contract));
+	}
+
+	/**
+	 * 新增或修改
+	 */
+	@PostMapping("/submit")
+	public R submit(@RequestBody Contract contract) {
+		return R.status(contractService.saveOrUpdate(contract));
+	}
+
+
+	/**
+	 * 删除
+	 */
+	@PostMapping("/remove")
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(contractService.removeByIds(Func.toLongList(ids)));
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/contract/entity/Contract.java b/src/main/java/org/springblade/modules/contract/entity/Contract.java
new file mode 100644
index 0000000..df06f78
--- /dev/null
+++ b/src/main/java/org/springblade/modules/contract/entity/Contract.java
@@ -0,0 +1,78 @@
+package org.springblade.modules.contract.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 合同实体类
+ *
+ * @author zhongrj
+ * @since 2020-03-01
+ */
+@Data
+@TableName("sys_contract")
+public class Contract implements Serializable {
+
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 主键id
+	 */
+	@TableId(value = "id",type = IdType.AUTO)
+	private Long id;
+
+	/**
+	 * 合同名称
+	 */
+	private String name;
+
+	/**
+	 * 甲方名称
+	 */
+	private String partya;
+
+	/**
+	 * 乙方名称
+	 */
+	private String partyb;
+
+	/**
+	 * 纸质合同 urls
+	 */
+	private String urls;
+
+	/**
+	 * 合同金额
+	 */
+	private BigDecimal money;
+
+	/**
+	 * 合同签订日期
+	 */
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date signedTime;
+
+	/**
+	 * 创建时间
+	 */
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	private Date createTime;
+
+    /**
+	 * 更新时间
+	 */
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+  	private Date updateTime;
+
+}
diff --git a/src/main/java/org/springblade/modules/contract/mapper/ContractMapper.java b/src/main/java/org/springblade/modules/contract/mapper/ContractMapper.java
new file mode 100644
index 0000000..464574e
--- /dev/null
+++ b/src/main/java/org/springblade/modules/contract/mapper/ContractMapper.java
@@ -0,0 +1,28 @@
+
+package org.springblade.modules.contract.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.modules.contract.entity.Contract;
+import org.springblade.modules.contract.vo.ContractVO;
+
+import java.util.List;
+
+/**
+ *  合同Mapper 接口
+ *
+ * @author zhongrj
+ * @since 2022-03-01
+ */
+public interface ContractMapper extends BaseMapper<Contract> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param contract
+	 * @return
+	 */
+	List<ContractVO> selectContractPage(IPage<ContractVO> page, @Param("contract") ContractVO contract);
+}
diff --git a/src/main/java/org/springblade/modules/contract/mapper/ContractMapper.xml b/src/main/java/org/springblade/modules/contract/mapper/ContractMapper.xml
new file mode 100644
index 0000000..574094c
--- /dev/null
+++ b/src/main/java/org/springblade/modules/contract/mapper/ContractMapper.xml
@@ -0,0 +1,20 @@
+<?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.springblade.modules.contract.mapper.ContractMapper">
+
+    <!--自定义查询合同分页数据-->
+    <select id="selectContractPage" resultType="org.springblade.modules.contract.vo.ContractVO">
+        select * from sys_contract
+        where 1=1
+        <if test="contract.name!=null and contract.name!=''">
+            and name like concat('%',#{contract.name},'%')
+        </if>
+        <if test="contract.partya!=null and contract.partya!=''">
+            and partya like concat('%',#{contract.partya},'%')
+        </if>
+        <if test="contract.partyb!=null and contract.partyb!=''">
+            and partyb like concat('%',#{contract.partyb},'%')
+        </if>
+    </select>
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/contract/service/ContractService.java b/src/main/java/org/springblade/modules/contract/service/ContractService.java
new file mode 100644
index 0000000..48d0ee3
--- /dev/null
+++ b/src/main/java/org/springblade/modules/contract/service/ContractService.java
@@ -0,0 +1,27 @@
+
+package org.springblade.modules.contract.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.modules.contract.entity.Contract;
+import org.springblade.modules.contract.vo.ContractVO;
+
+/**
+ *  合同服务类
+ *
+ * @author zhongrj
+ * @since 2022-03-01
+ */
+public interface ContractService extends IService<Contract> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param contractVO
+	 * @return
+	 */
+	IPage<ContractVO> selectContractPage(IPage<ContractVO> page, @Param("contractVO") ContractVO contractVO);
+
+}
diff --git a/src/main/java/org/springblade/modules/contract/service/impl/ContractServiceImpl.java b/src/main/java/org/springblade/modules/contract/service/impl/ContractServiceImpl.java
new file mode 100644
index 0000000..c7124ff
--- /dev/null
+++ b/src/main/java/org/springblade/modules/contract/service/impl/ContractServiceImpl.java
@@ -0,0 +1,31 @@
+
+package org.springblade.modules.contract.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.modules.contract.entity.Contract;
+import org.springblade.modules.contract.mapper.ContractMapper;
+import org.springblade.modules.contract.service.ContractService;
+import org.springblade.modules.contract.vo.ContractVO;
+import org.springframework.stereotype.Service;
+
+/**
+ *  合同服务实现类
+ *
+ * @author zhongrj
+ * @since 2022-03-01
+ */
+@Service
+public class ContractServiceImpl extends ServiceImpl<ContractMapper, Contract> implements ContractService {
+
+	/**
+	 * 自定义分页查询健康证数据
+	 * @param page
+	 * @param contract
+	 * @return
+	 */
+	@Override
+	public IPage<ContractVO> selectContractPage(IPage<ContractVO> page, ContractVO contract) {
+		return page.setRecords(baseMapper.selectContractPage(page, contract));
+	}
+}
diff --git a/src/main/java/org/springblade/modules/contract/vo/ContractVO.java b/src/main/java/org/springblade/modules/contract/vo/ContractVO.java
new file mode 100644
index 0000000..6705482
--- /dev/null
+++ b/src/main/java/org/springblade/modules/contract/vo/ContractVO.java
@@ -0,0 +1,15 @@
+
+package org.springblade.modules.contract.vo;
+
+import lombok.Data;
+import org.springblade.modules.contract.entity.Contract;
+
+/**
+ * 合同视图实体类
+ * @author zhongrj
+ * @since 2022-03-01
+ */
+@Data
+public class ContractVO extends Contract {
+	private static final long serialVersionUID = 1L;
+}
diff --git a/src/main/java/org/springblade/modules/health/controller/HealthCardController.java b/src/main/java/org/springblade/modules/health/controller/HealthCardController.java
new file mode 100644
index 0000000..3b12e76
--- /dev/null
+++ b/src/main/java/org/springblade/modules/health/controller/HealthCardController.java
@@ -0,0 +1,91 @@
+
+package org.springblade.modules.health.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.ApiParam;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.health.entity.HealthCard;
+import org.springblade.modules.health.service.HealthCardService;
+import org.springblade.modules.health.vo.HealthCardVO;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * 健康证信息控制器
+ * @author zhongrj
+ * @since 2022-03-01
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/healthCard")
+public class HealthCardController extends BladeController {
+
+	private final HealthCardService healthCardService;
+
+	/**
+	 * 详情
+	 */
+	@GetMapping("/detail")
+	public R<HealthCard> detail(HealthCard healthCard) {
+		HealthCard detail = healthCardService.getOne(Condition.getQueryWrapper(healthCard));
+		return R.data(detail);
+	}
+
+	/**
+	 * 分页
+	 */
+	@GetMapping("/list")
+	public R<IPage<HealthCard>> list(HealthCard healthCard, Query query) {
+		IPage<HealthCard> pages = healthCardService.page(Condition.getPage(query), Condition.getQueryWrapper(healthCard));
+		return R.data(pages);
+	}
+
+	/**
+	 * 自定义分页
+	 */
+	@GetMapping("/page")
+	public R<IPage<HealthCardVO>> page(HealthCardVO healthCard, Query query) {
+		IPage<HealthCardVO> pages = healthCardService.selectHealthCardPage(Condition.getPage(query), healthCard);
+		return R.data(pages);
+	}
+
+	/**
+	 * 新增
+	 */
+	@PostMapping("/save")
+	public R save(@RequestBody HealthCard healthCard) {
+		return R.data(healthCardService.save(healthCard));
+	}
+
+
+	/**
+	 * 修改
+	 */
+	@PostMapping("/update")
+	public R update(@RequestBody HealthCard healthCard) {
+		return R.data(healthCardService.updateById(healthCard));
+	}
+
+	/**
+	 * 新增或修改
+	 */
+	@PostMapping("/submit")
+	public R submit(@RequestBody HealthCard healthCard) {
+		return R.status(healthCardService.saveOrUpdate(healthCard));
+	}
+
+
+	/**
+	 * 删除
+	 */
+	@PostMapping("/remove")
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(healthCardService.removeByIds(Func.toLongList(ids)));
+	}
+
+
+}
diff --git a/src/main/java/org/springblade/modules/health/entity/HealthCard.java b/src/main/java/org/springblade/modules/health/entity/HealthCard.java
new file mode 100644
index 0000000..d71a57f
--- /dev/null
+++ b/src/main/java/org/springblade/modules/health/entity/HealthCard.java
@@ -0,0 +1,72 @@
+package org.springblade.modules.health.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 健康证实体类
+ *
+ * @author zhongrj
+ * @since 2020-03-01
+ */
+@Data
+@TableName("sys_health_card")
+public class HealthCard implements Serializable {
+
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 主键id
+	 */
+	@TableId(value = "id",type = IdType.AUTO)
+	private Long id;
+
+	/**
+	 * 用户id
+	 */
+	private Long userId;
+
+	/**
+	 * 健康检查单位
+	 */
+	private String healthCheckUnit;
+
+	/**
+	 * 健康证图片 url
+	 */
+	private String url;
+
+	/**
+	 * 发证日期
+	 */
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	private Date openingDate;
+
+	/**
+	 * 有效时间
+	 */
+	private String validTime;
+
+	/**
+	 * 创建时间
+	 */
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	private Date createTime;
+
+    /**
+	 * 更新时间
+	 */
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+  	private Date updateTime;
+
+}
diff --git a/src/main/java/org/springblade/modules/health/mapper/HealthCardMapper.java b/src/main/java/org/springblade/modules/health/mapper/HealthCardMapper.java
new file mode 100644
index 0000000..125bf67
--- /dev/null
+++ b/src/main/java/org/springblade/modules/health/mapper/HealthCardMapper.java
@@ -0,0 +1,28 @@
+
+package org.springblade.modules.health.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.modules.health.entity.HealthCard;
+import org.springblade.modules.health.vo.HealthCardVO;
+
+import java.util.List;
+
+/**
+ *  健康证Mapper 接口
+ *
+ * @author zhongrj
+ * @since 2022-03-01
+ */
+public interface HealthCardMapper extends BaseMapper<HealthCard> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param healthCard
+	 * @return
+	 */
+	List<HealthCardVO> selectHealthCardPage(IPage<HealthCardVO> page, @Param("healthCard") HealthCardVO healthCard);
+}
diff --git a/src/main/java/org/springblade/modules/health/mapper/HealthCardMapper.xml b/src/main/java/org/springblade/modules/health/mapper/HealthCardMapper.xml
new file mode 100644
index 0000000..4a1a34d
--- /dev/null
+++ b/src/main/java/org/springblade/modules/health/mapper/HealthCardMapper.xml
@@ -0,0 +1,14 @@
+<?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.springblade.modules.health.mapper.HealthCardMapper">
+
+    <!--自定义查询健康证分页数据-->
+    <select id="selectHealthCardPage" resultType="org.springblade.modules.health.vo.HealthCardVO">
+        select * from sys_health_card
+        where 1=1
+        <if test="healthCard.userId!=null">
+            and user_id = #{extra.userId}
+        </if>
+    </select>
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/health/service/HealthCardService.java b/src/main/java/org/springblade/modules/health/service/HealthCardService.java
new file mode 100644
index 0000000..0a0e044
--- /dev/null
+++ b/src/main/java/org/springblade/modules/health/service/HealthCardService.java
@@ -0,0 +1,27 @@
+
+package org.springblade.modules.health.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.modules.health.entity.HealthCard;
+import org.springblade.modules.health.vo.HealthCardVO;
+
+/**
+ *  健康证服务类
+ *
+ * @author zhongrj
+ * @since 2022-03-01
+ */
+public interface HealthCardService extends IService<HealthCard> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param healthCardVO
+	 * @return
+	 */
+	IPage<HealthCardVO> selectHealthCardPage(IPage<HealthCardVO> page, @Param("healthCardVO") HealthCardVO healthCardVO);
+
+}
diff --git a/src/main/java/org/springblade/modules/health/service/impl/HealthCardServiceImpl.java b/src/main/java/org/springblade/modules/health/service/impl/HealthCardServiceImpl.java
new file mode 100644
index 0000000..25576ca
--- /dev/null
+++ b/src/main/java/org/springblade/modules/health/service/impl/HealthCardServiceImpl.java
@@ -0,0 +1,31 @@
+
+package org.springblade.modules.health.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.modules.health.entity.HealthCard;
+import org.springblade.modules.health.mapper.HealthCardMapper;
+import org.springblade.modules.health.service.HealthCardService;
+import org.springblade.modules.health.vo.HealthCardVO;
+import org.springframework.stereotype.Service;
+
+/**
+ *  健康证服务实现类
+ *
+ * @author zhongrj
+ * @since 2022-03-01
+ */
+@Service
+public class HealthCardServiceImpl extends ServiceImpl<HealthCardMapper, HealthCard> implements HealthCardService {
+
+	/**
+	 * 自定义分页查询健康证数据
+	 * @param page
+	 * @param healthCard
+	 * @return
+	 */
+	@Override
+	public IPage<HealthCardVO> selectHealthCardPage(IPage<HealthCardVO> page, HealthCardVO healthCard) {
+		return page.setRecords(baseMapper.selectHealthCardPage(page, healthCard));
+	}
+}
diff --git a/src/main/java/org/springblade/modules/health/vo/HealthCardVO.java b/src/main/java/org/springblade/modules/health/vo/HealthCardVO.java
new file mode 100644
index 0000000..cd616e2
--- /dev/null
+++ b/src/main/java/org/springblade/modules/health/vo/HealthCardVO.java
@@ -0,0 +1,15 @@
+
+package org.springblade.modules.health.vo;
+
+import lombok.Data;
+import org.springblade.modules.health.entity.HealthCard;
+
+/**
+ * 加班视图实体类
+ * @author zhongrj
+ * @since 2022-03-01
+ */
+@Data
+public class HealthCardVO extends HealthCard {
+	private static final long serialVersionUID = 1L;
+}

--
Gitblit v1.9.3