From 4ff21938eaf1c26ff51901fefc74903ad0326494 Mon Sep 17 00:00:00 2001 From: winLsy <18332763730@163.com> Date: Sun, 4 Feb 2018 16:48:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=9F=BA=E7=A1=80=E5=A2=9E?= =?UTF-8?q?=E5=88=A0=E6=94=B9=E5=B7=AE=E6=A8=A1=E6=9D=BF=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/micro/fast/common/dao/SsmMapper.java | 19 ++++++ .../micro/fast/common/service/SsmService.java | 30 +++++++++ .../common/service/impl/SsmServiceImpl.java | 66 +++++++++++++++++++ .../upms/controller/UpmsSystemController.java | 49 ++++++++++---- .../micro/fast/upms/dao/UpmsSystemMapper.java | 4 +- .../fast/upms/service/UpmsSystemService.java | 12 ++++ .../service/impl/UpmSystemServiceImpl.java | 33 ++++++++++ .../service/impl/UpmsUserServiceImpl.java | 1 - 8 files changed, 199 insertions(+), 15 deletions(-) create mode 100644 boot-starter/boot-starter-ssm/src/main/java/com/micro/fast/common/dao/SsmMapper.java create mode 100644 boot-starter/boot-starter-ssm/src/main/java/com/micro/fast/common/service/SsmService.java create mode 100644 boot-starter/boot-starter-ssm/src/main/java/com/micro/fast/common/service/impl/SsmServiceImpl.java create mode 100644 ms/upms/src/main/java/com/micro/fast/upms/service/UpmsSystemService.java create mode 100644 ms/upms/src/main/java/com/micro/fast/upms/service/impl/UpmSystemServiceImpl.java diff --git a/boot-starter/boot-starter-ssm/src/main/java/com/micro/fast/common/dao/SsmMapper.java b/boot-starter/boot-starter-ssm/src/main/java/com/micro/fast/common/dao/SsmMapper.java new file mode 100644 index 0000000..d11b634 --- /dev/null +++ b/boot-starter/boot-starter-ssm/src/main/java/com/micro/fast/common/dao/SsmMapper.java @@ -0,0 +1,19 @@ +package com.micro.fast.common.dao; + + +public interface SsmMapper { + + int deleteByPrimaryKey(ID id); + + int insert(T record); + + int insertSelective(T record); + + T selectByPrimaryKey(ID id); + + int updateByPrimaryKeySelective(T record); + + int updateByPrimaryKeyWithBLOBs(T record); + + int updateByPrimaryKey(T record); +} diff --git a/boot-starter/boot-starter-ssm/src/main/java/com/micro/fast/common/service/SsmService.java b/boot-starter/boot-starter-ssm/src/main/java/com/micro/fast/common/service/SsmService.java new file mode 100644 index 0000000..dbe0e4a --- /dev/null +++ b/boot-starter/boot-starter-ssm/src/main/java/com/micro/fast/common/service/SsmService.java @@ -0,0 +1,30 @@ +package com.micro.fast.common.service; + +import com.micro.fast.boot.starter.common.response.ServerResponse; + +/** + * ssm框架service基础操作接口 + * @author lsy + */ +public interface SsmService { + /** + * 增加 + */ + ServerResponse add(T pojo); + /** + * 根据id查询 + */ + ServerResponse getById(ID id); + /** + * 按条件分页查询 + */ + ServerResponse getByCondition(T pojo); + /** + * 修改 + */ + ServerResponse update(T pojo); + /** + * 根据id删除 + */ + ServerResponse deleteById(ID id); +} diff --git a/boot-starter/boot-starter-ssm/src/main/java/com/micro/fast/common/service/impl/SsmServiceImpl.java b/boot-starter/boot-starter-ssm/src/main/java/com/micro/fast/common/service/impl/SsmServiceImpl.java new file mode 100644 index 0000000..4f0c68c --- /dev/null +++ b/boot-starter/boot-starter-ssm/src/main/java/com/micro/fast/common/service/impl/SsmServiceImpl.java @@ -0,0 +1,66 @@ +package com.micro.fast.common.service.impl; + +import com.micro.fast.boot.starter.common.exception.SystemException; +import com.micro.fast.boot.starter.common.response.BaseConst; +import com.micro.fast.boot.starter.common.response.ServerResponse; +import com.micro.fast.common.dao.SsmMapper; +import com.micro.fast.common.service.SsmService; +import lombok.Setter; + +import java.io.Serializable; + +/** + * T表示的是实体类型,ID表示的是主键类型,DAO表示的是dao层的类型 + * @author lsy + */ +@Setter +public abstract class SsmServiceImpl> implements SsmService{ + + /** + * 这个属性一定要使用子类的覆盖 + */ + private MAPPER mapper; + + + @Override + public ServerResponse add(T pojo) { + int insert = mapper.insertSelective(pojo); + if (insert!=1){ + throw new SystemException(BaseConst.SystemResponse.DATABASE_INSERT_FAILURE); + } + return ServerResponse.successMsg("添加成功"); + } + + @Override + public ServerResponse getById(ID id) + { + T t = mapper.selectByPrimaryKey(id); + return ServerResponse.successData(t); + } + + /** + * 抽象的,提示开发者条件化查询需要自定义实现 + * @param pojo + * @return + */ + @Override + public abstract ServerResponse getByCondition(T pojo); + + @Override + public ServerResponse update(T pojo) { + int i = mapper.updateByPrimaryKeySelective(pojo); + if (i<1){ + ServerResponse.errorMsg("更新失败"); + } + return ServerResponse.successMsg("更新成功"); + } + + @Override + public ServerResponse deleteById(ID id) { + int i = mapper.deleteByPrimaryKey(id); + if (i<1){ + ServerResponse.errorMsg("删除失败"); + } + return ServerResponse.successMsg("删除成功"); + } +} diff --git a/ms/upms/src/main/java/com/micro/fast/upms/controller/UpmsSystemController.java b/ms/upms/src/main/java/com/micro/fast/upms/controller/UpmsSystemController.java index 29638dc..b5907d2 100644 --- a/ms/upms/src/main/java/com/micro/fast/upms/controller/UpmsSystemController.java +++ b/ms/upms/src/main/java/com/micro/fast/upms/controller/UpmsSystemController.java @@ -1,19 +1,16 @@ package com.micro.fast.upms.controller; -import com.micro.fast.boot.starter.common.exception.SystemException; import com.micro.fast.boot.starter.common.response.BaseConst; import com.micro.fast.boot.starter.common.response.ServerResponse; -import com.micro.fast.upms.dao.UpmsSystemMapper; import com.micro.fast.upms.pojo.UpmsSystem; +import com.micro.fast.upms.service.UpmsSystemService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.hibernate.validator.constraints.NotBlank; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindException; import org.springframework.validation.BindingResult; -import org.springframework.validation.FieldError; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; @@ -27,18 +24,44 @@ import javax.validation.Valid; public class UpmsSystemController { @Autowired - private UpmsSystemMapper upmsSystemMapper; + private UpmsSystemService upmsSystemService; @ApiOperation("添加系统") @PostMapping public ServerResponse addSystem(@Valid UpmsSystem upmsSystem,BindingResult errors) throws BindException { upmsSystem.setCtime(System.currentTimeMillis()); upmsSystem.setStatus((byte)1); - //对参数的校验抛出异常 - int i = upmsSystemMapper.insertSelective(upmsSystem); - if (i!=1){ - throw new SystemException(BaseConst.SystemResponse.DATABASE_INSERT_FAILURE); - } - return ServerResponse.successMsg("添加系统成功"); + return upmsSystemService.add(upmsSystem); } + + @ApiOperation("根据id查询系统详细信息") + @GetMapping("/{id}") + public ServerResponse getSystemById( + @PathVariable(value = "id") @NotBlank(message = BaseConst.BASEMSG_PREFIX+"请传入id") String id){ + return upmsSystemService.getById(Integer.valueOf(id)); + } + + @ApiOperation("根据条件分页查询") + @GetMapping + public ServerResponse getSystemByCondition(){ + + return null; + } + + @ApiOperation("修改系统信息") + @PutMapping("/{id}") + public ServerResponse updateSystem(UpmsSystem upmsSystem, + @NotBlank(message = BaseConst.BASEMSG_PREFIX+"请传入id") String id){ + upmsSystem.setId(Integer.valueOf(id)); + return upmsSystemService.update(upmsSystem); + } + + @ApiOperation("根据id删除系统,多个使用逗号分割") + @DeleteMapping("/{id}") + public ServerResponse deleteSystem( + @NotBlank(message = BaseConst.BASEMSG_PREFIX+"请传入id") String id){ + return upmsSystemService.deleteById(Integer.valueOf(id)); + } + + } diff --git a/ms/upms/src/main/java/com/micro/fast/upms/dao/UpmsSystemMapper.java b/ms/upms/src/main/java/com/micro/fast/upms/dao/UpmsSystemMapper.java index f048422..8f882c6 100644 --- a/ms/upms/src/main/java/com/micro/fast/upms/dao/UpmsSystemMapper.java +++ b/ms/upms/src/main/java/com/micro/fast/upms/dao/UpmsSystemMapper.java @@ -1,8 +1,10 @@ package com.micro.fast.upms.dao; +import com.micro.fast.common.dao.SsmMapper; import com.micro.fast.upms.pojo.UpmsSystem; -public interface UpmsSystemMapper { +public interface UpmsSystemMapper extends SsmMapper { + int deleteByPrimaryKey(Integer id); int insert(UpmsSystem record); diff --git a/ms/upms/src/main/java/com/micro/fast/upms/service/UpmsSystemService.java b/ms/upms/src/main/java/com/micro/fast/upms/service/UpmsSystemService.java new file mode 100644 index 0000000..6777698 --- /dev/null +++ b/ms/upms/src/main/java/com/micro/fast/upms/service/UpmsSystemService.java @@ -0,0 +1,12 @@ +package com.micro.fast.upms.service; + +import com.micro.fast.common.service.SsmService; +import com.micro.fast.upms.pojo.UpmsSystem; + +/** + * 系统管理接口 + * @author lsy + */ +public interface UpmsSystemService extends SsmService{ + +} diff --git a/ms/upms/src/main/java/com/micro/fast/upms/service/impl/UpmSystemServiceImpl.java b/ms/upms/src/main/java/com/micro/fast/upms/service/impl/UpmSystemServiceImpl.java new file mode 100644 index 0000000..d6c0669 --- /dev/null +++ b/ms/upms/src/main/java/com/micro/fast/upms/service/impl/UpmSystemServiceImpl.java @@ -0,0 +1,33 @@ +package com.micro.fast.upms.service.impl; + +import com.micro.fast.boot.starter.common.response.ServerResponse; +import com.micro.fast.common.service.impl.SsmServiceImpl; +import com.micro.fast.upms.dao.UpmsSystemMapper; +import com.micro.fast.upms.pojo.UpmsSystem; +import com.micro.fast.upms.service.UpmsSystemService; +import org.springframework.beans.factory.InitializingBean; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * @author lsy + */ +@Service +public class UpmSystemServiceImpl extends SsmServiceImpl implements UpmsSystemService,InitializingBean { + + @Autowired + private UpmsSystemMapper mapper; + + @Override + public ServerResponse getByCondition(UpmsSystem pojo) { + return null; + } + + /** + * 在这个bean初始化完成后覆盖父类的mapper + */ + @Override + public void afterPropertiesSet() throws Exception { + super.setMapper(this.mapper); + } +} diff --git a/ms/upms/src/main/java/com/micro/fast/upms/service/impl/UpmsUserServiceImpl.java b/ms/upms/src/main/java/com/micro/fast/upms/service/impl/UpmsUserServiceImpl.java index 09c1a7c..8ab5468 100644 --- a/ms/upms/src/main/java/com/micro/fast/upms/service/impl/UpmsUserServiceImpl.java +++ b/ms/upms/src/main/java/com/micro/fast/upms/service/impl/UpmsUserServiceImpl.java @@ -8,7 +8,6 @@ import com.micro.fast.boot.starter.common.response.ServerResponse; import com.micro.fast.upms.dao.UpmsUserMapper; import com.micro.fast.upms.pojo.UpmsUser; import com.micro.fast.upms.service.UpmsUserService; -import com.micro.fast.boot.starter.common.util.ExceptionUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.stereotype.Service;