From 55b40c0ce83070bfdcd9180a37537cb888dd6263 Mon Sep 17 00:00:00 2001 From: xuyang <748613696@qq.com> Date: Wed, 12 Jul 2023 17:15:27 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=84=E6=80=81=E6=96=B0=E5=A2=9E=E5=9B=BE?= =?UTF-8?q?=E5=85=83=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/CsElementController.java | 1 + .../cssystem/pojo/param/ElementParam.java | 41 ++++++++++++ .../com/njcn/cssystem/pojo/po/CsElement.java | 62 +++++++++++++++++++ .../controller/zutai/ElementController.java | 55 ++++++++++++++++ .../njcn/cssystem/mapper/CsElementMapper.java | 16 +++++ .../cssystem/service/IElementService.java | 30 +++++++++ .../service/impl/CsElementServiceImpl.java | 50 +++++++++++++++ 7 files changed, 255 insertions(+) create mode 100644 cs-system/cs-system-api/src/main/java/com/njcn/cssystem/pojo/param/ElementParam.java create mode 100644 cs-system/cs-system-api/src/main/java/com/njcn/cssystem/pojo/po/CsElement.java create mode 100644 cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/controller/zutai/ElementController.java create mode 100644 cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/mapper/CsElementMapper.java create mode 100644 cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/IElementService.java create mode 100644 cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/impl/CsElementServiceImpl.java diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/controller/CsElementController.java b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/controller/CsElementController.java index e0829e7..d9d67b4 100644 --- a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/controller/CsElementController.java +++ b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/controller/CsElementController.java @@ -32,6 +32,7 @@ import org.springframework.web.multipart.MultipartFile; @RequestMapping("/csElement") @Api(tags = "组态图元") @AllArgsConstructor +@Deprecated public class CsElementController extends BaseController { private final ICsElementService csElementService; diff --git a/cs-system/cs-system-api/src/main/java/com/njcn/cssystem/pojo/param/ElementParam.java b/cs-system/cs-system-api/src/main/java/com/njcn/cssystem/pojo/param/ElementParam.java new file mode 100644 index 0000000..7d38e52 --- /dev/null +++ b/cs-system/cs-system-api/src/main/java/com/njcn/cssystem/pojo/param/ElementParam.java @@ -0,0 +1,41 @@ +package com.njcn.cssystem.pojo.param; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.web.multipart.MultipartFile; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +/** + * 类的介绍: + * + * @author xuyang + * @version 1.0.0 + * @createTime 2023/7/12 16:23 + */ +@Data +public class ElementParam { + + @ApiModelProperty(value = "组件分类") + @NotBlank(message="组件分类不能为空!") + private String elementType; + + @ApiModelProperty(value = "组件子类型") + @NotBlank(message="组件子类型不能为空!") + private String elementSonType; + + @ApiModelProperty(value = "组件编码") + private String elementCode; + + @ApiModelProperty(value = "组件名称") + private String elementName; + + @ApiModelProperty(value = "组件标识") + private String elementMark; + + @ApiModelProperty(value = "图元文件") + @NotNull(message="图元文件不能为空!") + private MultipartFile multipartFile; + +} diff --git a/cs-system/cs-system-api/src/main/java/com/njcn/cssystem/pojo/po/CsElement.java b/cs-system/cs-system-api/src/main/java/com/njcn/cssystem/pojo/po/CsElement.java new file mode 100644 index 0000000..4bb898c --- /dev/null +++ b/cs-system/cs-system-api/src/main/java/com/njcn/cssystem/pojo/po/CsElement.java @@ -0,0 +1,62 @@ +package com.njcn.cssystem.pojo.po; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.njcn.db.bo.BaseEntity; +import lombok.Data; + +/** + *

+ * 组态图元库 + *

+ * + * @author xuyang + * @since 2023-07-12 + */ +@Data +@TableName("cs_element") +public class CsElement extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** + * id + */ + private String id; + + /** + * 图元文件路径 + */ + private String path; + + /** + * 组件分类 + */ + private String elementType; + + /** + * 组件子类型 + */ + private String elementSonType; + + /** + * 组件编码 + */ + private String elementCode; + + /** + * 组件名称 + */ + private String elementName; + + /** + * 组件标识 + */ + private String elementMark; + + /** + * 状态 + */ + private Integer status; + + +} diff --git a/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/controller/zutai/ElementController.java b/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/controller/zutai/ElementController.java new file mode 100644 index 0000000..c9353cc --- /dev/null +++ b/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/controller/zutai/ElementController.java @@ -0,0 +1,55 @@ +package com.njcn.cssystem.controller.zutai; + +import com.njcn.common.pojo.annotation.OperateInfo; +import com.njcn.common.pojo.enums.common.LogEnum; +import com.njcn.common.pojo.enums.response.CommonResponseEnum; +import com.njcn.common.pojo.response.HttpResult; +import com.njcn.common.utils.HttpResultUtil; +import com.njcn.cssystem.pojo.param.ElementParam; +import com.njcn.cssystem.pojo.po.CsElement; +import com.njcn.cssystem.service.IElementService; +import com.njcn.web.controller.BaseController; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * 类的介绍: + * + * @author xuyang + * @version 1.0.0 + * @createTime 2023/7/12 16:07 + */ +@RestController +@RequestMapping("/csElement") +@Api(tags = "组态图元") +@AllArgsConstructor +public class ElementController extends BaseController { + + private final IElementService csElementService; + + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("/add") + @ApiOperation("组态图元新增") + public HttpResult add(@Validated ElementParam param){ + String methodDescribe = getMethodDescribe("add"); + CsElement csElement = csElementService.addElement(param); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, csElement, methodDescribe); + } + + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("/find") + @ApiOperation("查询组态图元数据") + public HttpResult> find(){ + String methodDescribe = getMethodDescribe("find"); + List list = csElementService.findElement(); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe); + } + +} diff --git a/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/mapper/CsElementMapper.java b/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/mapper/CsElementMapper.java new file mode 100644 index 0000000..73ec270 --- /dev/null +++ b/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/mapper/CsElementMapper.java @@ -0,0 +1,16 @@ +package com.njcn.cssystem.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.njcn.cssystem.pojo.po.CsElement; + +/** + *

+ * 组态图元库 Mapper 接口 + *

+ * + * @author xuyang + * @since 2023-07-12 + */ +public interface CsElementMapper extends BaseMapper { + +} diff --git a/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/IElementService.java b/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/IElementService.java new file mode 100644 index 0000000..e6e3112 --- /dev/null +++ b/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/IElementService.java @@ -0,0 +1,30 @@ +package com.njcn.cssystem.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.njcn.cssystem.pojo.param.ElementParam; +import com.njcn.cssystem.pojo.po.CsElement; + +import java.util.List; + +/** + *

+ * 组态图元库 服务类 + *

+ * + * @author xuyang + * @since 2023-06-14 + */ +public interface IElementService extends IService { + + /** + * 新增组态图元 + * @param param 图元参数 + */ + CsElement addElement(ElementParam param); + + /** + * 组态图元数据查询 + */ + List findElement(); + +} diff --git a/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/impl/CsElementServiceImpl.java b/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/impl/CsElementServiceImpl.java new file mode 100644 index 0000000..073cb6d --- /dev/null +++ b/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/impl/CsElementServiceImpl.java @@ -0,0 +1,50 @@ +package com.njcn.cssystem.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.njcn.cssystem.mapper.CsElementMapper; +import com.njcn.cssystem.pojo.param.ElementParam; +import com.njcn.cssystem.pojo.po.CsElement; +import com.njcn.cssystem.service.IElementService; +import com.njcn.oss.constant.OssPath; +import com.njcn.oss.utils.FileStorageUtil; +import lombok.AllArgsConstructor; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + *

+ * 组态图元库 服务实现类 + *

+ * + * @author xuyang + * @since 2023-07-12 + */ +@Service +@AllArgsConstructor +public class CsElementServiceImpl extends ServiceImpl implements IElementService { + + private final FileStorageUtil fileStorageUtil; + + @Override + public CsElement addElement(ElementParam param) { + CsElement csElement = new CsElement(); + BeanUtils.copyProperties(param,csElement); + String path = fileStorageUtil.uploadMultipart(param.getMultipartFile(), OssPath.ELEMENT); + csElement.setPath(path); + csElement.setStatus(1); + this.saveOrUpdate(csElement); + csElement.setPath(fileStorageUtil.getFileUrl(path)); + return csElement; + } + + @Override + public List findElement() { + List list = this.lambdaQuery().eq(CsElement::getStatus,1).list(); + list.forEach(item->{ + item.setPath(fileStorageUtil.getFileUrl(item.getPath())); + }); + return list; + } +}