From 9f10fc2d852b3808da0b10a107855f9f4f4aee25 Mon Sep 17 00:00:00 2001
From: sfd <sun.sunshine@163.com>
Date: 星期一, 19 五月 2025 15:08:56 +0800
Subject: [PATCH] 增加气体管路工单管理
---
aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsGasPipelineMo.java | 114 ++++++++++
aps-modules/aps-core/src/main/java/com/aps/core/service/IApsGasPipelineMoService.java | 70 ++++++
aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsGasPipelineMoMapper.java | 68 ++++++
aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsGasPipelineMoController.java | 120 ++++++++++
aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipelineMoServiceImpl.java | 150 +++++++++++++
aps-modules/aps-core/src/main/resources/mapper/core/ApsGasPipelineMoMapper.xml | 96 ++++++++
6 files changed, 618 insertions(+), 0 deletions(-)
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsGasPipelineMoController.java b/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsGasPipelineMoController.java
new file mode 100644
index 0000000..e11ccc3
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsGasPipelineMoController.java
@@ -0,0 +1,120 @@
+package com.aps.core.controller.mainPlan;
+
+import com.aps.common.core.utils.poi.ExcelUtil;
+import com.aps.common.core.web.controller.BaseController;
+import com.aps.common.core.web.domain.AjaxResult;
+import com.aps.common.core.web.page.TableDataInfo;
+import com.aps.common.log.annotation.Log;
+import com.aps.common.log.enums.BusinessType;
+import com.aps.common.security.annotation.RequiresPermissions;
+import com.aps.core.domain.ApsGasPipelineMo;
+import com.aps.core.service.IApsGasPipelineMoService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.List;
+
+/**
+ * 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁Controller
+ *
+ * @author sfd
+ * @date 2025-05-19
+ */
+
+@Tag(name = "绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁", description = "绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁鎺ュ彛")
+@RestController
+@RequestMapping("/gasPipelineMo")
+public class ApsGasPipelineMoController extends BaseController
+{
+ @Autowired
+ private IApsGasPipelineMoService apsGasPipelineMoService;
+
+ /**
+ * 鏌ヨ绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁鍒楄〃
+ */
+ @Operation(summary = "鏌ヨ绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁鍒楄〃", description = "鍒嗛〉鏌ヨ")
+// @RequiresPermissions("gasPipeline:mo:list")
+ @GetMapping("/list")
+ public TableDataInfo list(ApsGasPipelineMo apsGasPipelineMo)
+ {
+ startPage();
+ List<ApsGasPipelineMo> list = apsGasPipelineMoService.selectApsGasPipelineMoList(apsGasPipelineMo);
+ return getDataTable(list);
+ }
+
+
+ @Operation(summary = "瀵煎叆绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁", description = "鎵归噺瀵煎叆")
+ @Log(title = "瀵煎叆绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁", businessType = BusinessType.IMPORT)
+ @RequiresPermissions("gasPipeline:mo:import")
+ @PostMapping("/importData")
+ public AjaxResult importData(MultipartFile file) throws Exception {
+
+ int i = apsGasPipelineMoService.batchInsertGasPipelineMo(file);
+ return toAjax(i);
+ }
+
+ /**
+ * 瀵煎嚭绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁鍒楄〃
+ */
+ @Operation(summary = "瀵煎嚭绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁鍒楄〃", description = "瀵煎嚭")
+ @RequiresPermissions("gasPipeline:mo:export")
+ @Log(title = "绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(HttpServletResponse response, ApsGasPipelineMo apsGasPipelineMo)
+ {
+ List<ApsGasPipelineMo> list = apsGasPipelineMoService.selectApsGasPipelineMoList(apsGasPipelineMo);
+ ExcelUtil<ApsGasPipelineMo> util = new ExcelUtil<ApsGasPipelineMo>(ApsGasPipelineMo.class);
+ util.exportExcel(response, list, "绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁鏁版嵁");
+ }
+
+ /**
+ * 鑾峰彇绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁璇︾粏淇℃伅
+ */
+ @Operation(summary = "鑾峰彇绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁璇︾粏淇℃伅", description = "鏍规嵁id鑾峰彇")
+ @RequiresPermissions("gasPipeline:mo:query")
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Long id)
+ {
+ return success(apsGasPipelineMoService.selectApsGasPipelineMoById(id));
+ }
+
+ /**
+ * 鏂板绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ */
+ @Operation(summary = "鏂板绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁", description = "鍗曚釜鏂板")
+ @RequiresPermissions("gasPipeline:mo:add")
+ @Log(title = "绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody ApsGasPipelineMo apsGasPipelineMo)
+ {
+ return toAjax(apsGasPipelineMoService.insertApsGasPipelineMo(apsGasPipelineMo));
+ }
+
+ /**
+ * 淇敼绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ */
+ @Operation(summary = "淇敼绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁", description = "鍗曚釜淇敼")
+ @RequiresPermissions("gasPipeline:mo:edit")
+ @Log(title = "绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody ApsGasPipelineMo apsGasPipelineMo)
+ {
+ return toAjax(apsGasPipelineMoService.updateApsGasPipelineMo(apsGasPipelineMo));
+ }
+
+ /**
+ * 鍒犻櫎绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ */
+ @Operation(summary = "鍒犻櫎绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁", description = "鎵归噺鍒犻櫎")
+// @RequiresPermissions("gasPipeline:mo:remove")
+ @Log(title = "绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable Long[] ids)
+ {
+ return toAjax(apsGasPipelineMoService.deleteApsGasPipelineMoByIds(ids));
+ }
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsGasPipelineMo.java b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsGasPipelineMo.java
new file mode 100644
index 0000000..2c83cd4
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsGasPipelineMo.java
@@ -0,0 +1,114 @@
+package com.aps.core.domain;
+
+import com.aps.common.core.web.domain.BaseEntity;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.aps.common.core.annotation.Excel;
+import org.springframework.data.annotation.Id;
+
+import java.math.BigDecimal;
+import java.sql.Timestamp;
+
+/**
+ * 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁瀵硅薄 aps_gas_pipeline_mo
+ *
+ * @author ruoyi
+ * @date 2025-05-19
+ */
+@Schema(description = "绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁瀹炰綋绫�")
+@Data
+public class ApsGasPipelineMo extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ @Id
+ @JsonFormat(shape = JsonFormat.Shape.STRING)
+ /** ID */
+ @Schema(description = "ID")
+ private Long id;
+
+ /** 宸ュ崟鍙� */
+ @Excel(name = "宸ュ崟鍙�")
+ @Schema(description = "宸ュ崟鍙�")
+ private String mo;
+
+ /** 鐢熶骇鍩哄湴 */
+ @Excel(name = "鐢熶骇鍩哄湴")
+ @Schema(description = "鐢熶骇鍩哄湴")
+ private String factory;
+
+ /** 鏂欏彿 */
+ @Excel(name = "鏂欏彿")
+ @Schema(description = "鏂欏彿")
+ private String materialCode;
+
+ /** 璁″垝瀹屽伐鏃ユ湡 */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "璁″垝瀹屽伐鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ @Schema(description = "璁″垝瀹屽伐鏃ユ湡")
+ private Timestamp planEnd;
+
+ /** 鏁伴噺 */
+ @Excel(name = "鏁伴噺")
+ @Schema(description = "鏁伴噺")
+ private BigDecimal quantity;
+
+ public void setId(Long id)
+ {
+ this.id = id;
+ }
+
+ public Long getId()
+ {
+ return id;
+ }
+
+ public void setMo(String mo)
+ {
+ this.mo = mo;
+ }
+
+ public String getMo()
+ {
+ return mo;
+ }
+
+ public void setFactory(String factory)
+ {
+ this.factory = factory;
+ }
+
+ public String getFactory()
+ {
+ return factory;
+ }
+
+ public void setMaterialCode(String materialCode)
+ {
+ this.materialCode = materialCode;
+ }
+
+ public String getMaterialCode()
+ {
+ return materialCode;
+ }
+
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("id", getId())
+ .append("mo", getMo())
+ .append("factory", getFactory())
+ .append("materialCode", getMaterialCode())
+ .append("planEnd", getPlanEnd())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .toString();
+ }
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsGasPipelineMoMapper.java b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsGasPipelineMoMapper.java
new file mode 100644
index 0000000..13995f9
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsGasPipelineMoMapper.java
@@ -0,0 +1,68 @@
+package com.aps.core.mapper;
+
+import com.aps.core.domain.ApsGasPipelineMo;
+import com.aps.core.domain.ApsPlanCycle;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁Mapper鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-05-19
+ */
+@Mapper
+public interface ApsGasPipelineMoMapper extends BaseMapper<ApsGasPipelineMo>
+{
+ /**
+ * 鏌ヨ绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ *
+ * @param id 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁涓婚敭
+ * @return 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ */
+ public ApsGasPipelineMo selectApsGasPipelineMoById(Long id);
+
+ /**
+ * 鏌ヨ绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁鍒楄〃
+ *
+ * @param apsGasPipelineMo 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ * @return 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁闆嗗悎
+ */
+ public List<ApsGasPipelineMo> selectApsGasPipelineMoList(ApsGasPipelineMo apsGasPipelineMo);
+
+ /**
+ * 鏂板绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ *
+ * @param apsGasPipelineMo 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ * @return 缁撴灉
+ */
+ public int insertApsGasPipelineMo(ApsGasPipelineMo apsGasPipelineMo);
+
+ /**
+ * 淇敼绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ *
+ * @param apsGasPipelineMo 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ * @return 缁撴灉
+ */
+ public int updateApsGasPipelineMo(ApsGasPipelineMo apsGasPipelineMo);
+
+ /**
+ * 鍒犻櫎绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ *
+ * @param id 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁涓婚敭
+ * @return 缁撴灉
+ */
+ public int deleteApsGasPipelineMoById(Long id);
+
+ /**
+ * 鎵归噺鍒犻櫎绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+ * @return 缁撴灉
+ */
+ public int deleteApsGasPipelineMoByIds(Long[] ids);
+
+ void deleteAll();
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsGasPipelineMoService.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsGasPipelineMoService.java
new file mode 100644
index 0000000..ed91389
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsGasPipelineMoService.java
@@ -0,0 +1,70 @@
+package com.aps.core.service;
+
+import java.util.List;
+
+import com.aps.core.domain.ApsGasPipelineMo;
+import org.springframework.web.multipart.MultipartFile;
+
+/**
+ * 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁Service鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-05-19
+ */
+public interface IApsGasPipelineMoService
+{
+ /**
+ * 鏌ヨ绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ *
+ * @param id 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁涓婚敭
+ * @return 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ */
+ public ApsGasPipelineMo selectApsGasPipelineMoById(Long id);
+
+ /**
+ * 鏌ヨ绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁鍒楄〃
+ *
+ * @param apsGasPipelineMo 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ * @return 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁闆嗗悎
+ */
+ public List<ApsGasPipelineMo> selectApsGasPipelineMoList(ApsGasPipelineMo apsGasPipelineMo);
+
+ /**
+ * 鏂板绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ *
+ * @param apsGasPipelineMo 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ * @return 缁撴灉
+ */
+ public int insertApsGasPipelineMo(ApsGasPipelineMo apsGasPipelineMo);
+
+ /**
+ * 淇敼绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ *
+ * @param apsGasPipelineMo 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ * @return 缁撴灉
+ */
+ public int updateApsGasPipelineMo(ApsGasPipelineMo apsGasPipelineMo);
+
+ /**
+ * 鎵归噺鍒犻櫎绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁涓婚敭闆嗗悎
+ * @return 缁撴灉
+ */
+ public int deleteApsGasPipelineMoByIds(Long[] ids);
+
+ /**
+ * 鍒犻櫎绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁淇℃伅
+ *
+ * @param id 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁涓婚敭
+ * @return 缁撴灉
+ */
+ public int deleteApsGasPipelineMoById(Long id);
+
+ /**
+ * 鎻掑叆 绠¤矾宸ュ崟鏁版嵁
+ * @param file
+ * @return
+ */
+ int batchInsertGasPipelineMo(MultipartFile file);
+}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipelineMoServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipelineMoServiceImpl.java
new file mode 100644
index 0000000..d6f9650
--- /dev/null
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipelineMoServiceImpl.java
@@ -0,0 +1,150 @@
+package com.aps.core.service.impl;
+
+import cn.hutool.core.util.IdUtil;
+import com.aps.common.core.utils.DateUtils;
+import com.aps.common.security.utils.SecurityUtils;
+import com.aps.core.domain.ApsGasPipelineMo;
+import com.aps.core.mapper.ApsGasPipelineMoMapper;
+import com.aps.core.service.IApsGasPipelineMoService;
+import io.micrometer.common.util.StringUtils;
+import lombok.SneakyThrows;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.ss.usermodel.WorkbookFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.math.BigDecimal;
+import java.sql.Timestamp;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁Service涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2025-05-19
+ */
+@Service
+public class ApsGasPipelineMoServiceImpl implements IApsGasPipelineMoService {
+ @Autowired
+ private ApsGasPipelineMoMapper apsGasPipelineMoMapper;
+
+ /**
+ * 鏌ヨ绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ *
+ * @param id 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁涓婚敭
+ * @return 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ */
+ @Override
+ public ApsGasPipelineMo selectApsGasPipelineMoById(Long id) {
+ return apsGasPipelineMoMapper.selectApsGasPipelineMoById(id);
+ }
+
+ /**
+ * 鏌ヨ绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁鍒楄〃
+ *
+ * @param apsGasPipelineMo 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ * @return 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ */
+ @Override
+ public List<ApsGasPipelineMo> selectApsGasPipelineMoList(ApsGasPipelineMo apsGasPipelineMo) {
+ return apsGasPipelineMoMapper.selectApsGasPipelineMoList(apsGasPipelineMo);
+ }
+
+ /**
+ * 鏂板绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ *
+ * @param apsGasPipelineMo 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ * @return 缁撴灉
+ */
+ @Override
+ public int insertApsGasPipelineMo(ApsGasPipelineMo apsGasPipelineMo) {
+ apsGasPipelineMo.setCreateTime(DateUtils.getNowDate());
+ apsGasPipelineMo.setId(IdUtil.getSnowflakeNextId());
+ apsGasPipelineMo.setCreateBy(SecurityUtils.getUsername());
+ return apsGasPipelineMoMapper.insertApsGasPipelineMo(apsGasPipelineMo);
+ }
+
+ /**
+ * 淇敼绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ *
+ * @param apsGasPipelineMo 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ * @return 缁撴灉
+ */
+ @Override
+ public int updateApsGasPipelineMo(ApsGasPipelineMo apsGasPipelineMo) {
+ apsGasPipelineMo.setUpdateTime(DateUtils.getNowDate());
+ return apsGasPipelineMoMapper.updateApsGasPipelineMo(apsGasPipelineMo);
+ }
+
+ /**
+ * 鎵归噺鍒犻櫎绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁涓婚敭
+ * @return 缁撴灉
+ */
+ @Override
+ public int deleteApsGasPipelineMoByIds(Long[] ids) {
+ return apsGasPipelineMoMapper.deleteApsGasPipelineMoByIds(ids);
+ }
+
+ /**
+ * 鍒犻櫎绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁淇℃伅
+ *
+ * @param id 绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁涓婚敭
+ * @return 缁撴灉
+ */
+ @Override
+ public int deleteApsGasPipelineMoById(Long id) {
+ return apsGasPipelineMoMapper.deleteApsGasPipelineMoById(id);
+ }
+
+ @SneakyThrows
+ @Transactional(rollbackFor = Exception.class)
+ @Override
+ public int batchInsertGasPipelineMo(MultipartFile file) {
+ Workbook workbook = WorkbookFactory.create(file.getInputStream());
+
+ Sheet sheet = workbook.getSheetAt(0);
+ int rows = sheet.getLastRowNum();
+ if (rows > 0) {
+ List<ApsGasPipelineMo> list = new ArrayList<>();
+
+ /*鏁版嵁鍒椾粠1寮�濮�*/
+ for (int i = 1; i <= rows; i++) {
+ Row row = sheet.getRow(i);
+ String mo = row.getCell(0).getStringCellValue();
+ String factory = row.getCell(1).getStringCellValue();
+ String materialNum = row.getCell(2).getStringCellValue();
+ double quantity = row.getCell(3).getNumericCellValue();
+ Date planEnd = row.getCell(4).getDateCellValue();
+ if (StringUtils.isNotBlank(mo) &&
+ StringUtils.isNotBlank(factory) &&
+ StringUtils.isNotBlank(materialNum) &&
+ planEnd != null) {
+ ApsGasPipelineMo apsGasPipelineMo = new ApsGasPipelineMo();
+ apsGasPipelineMo.setMo(mo);
+ apsGasPipelineMo.setId(IdUtil.getSnowflakeNextId());
+ apsGasPipelineMo.setFactory(factory);
+ apsGasPipelineMo.setCreateBy(SecurityUtils.getUsername());
+ apsGasPipelineMo.setCreateTime(DateUtils.getNowDate());
+ apsGasPipelineMo.setQuantity(new BigDecimal(quantity));
+ apsGasPipelineMo.setPlanEnd(new Timestamp(planEnd.getTime()));
+ list.add(apsGasPipelineMo);
+ }
+ }
+ if (!list.isEmpty()) {
+ apsGasPipelineMoMapper.deleteAll();
+ apsGasPipelineMoMapper.insert(list);
+ }
+ return list.size();
+ }
+ return 0;
+
+ }
+}
diff --git a/aps-modules/aps-core/src/main/resources/mapper/core/ApsGasPipelineMoMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsGasPipelineMoMapper.xml
new file mode 100644
index 0000000..0e1c12b
--- /dev/null
+++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsGasPipelineMoMapper.xml
@@ -0,0 +1,96 @@
+<?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.aps.core.mapper.ApsGasPipelineMoMapper">
+
+ <resultMap type="com.aps.core.domain.ApsGasPipelineMo" id="ApsGasPipelineMoResult">
+ <result property="id" column="id" />
+ <result property="mo" column="mo" />
+ <result property="factory" column="factory" />
+ <result property="materialCode" column="material_code" />
+ <result property="planEnd" column="plan_end" />
+ <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="quantity" column="quantity" />
+ </resultMap>
+
+ <sql id="selectApsGasPipelineMoVo">
+ select id, mo, factory, material_code, plan_end, create_by, create_time, update_by, update_time, quantity from aps_gas_pipeline_mo
+ </sql>
+
+ <select id="selectApsGasPipelineMoList" parameterType="ApsGasPipelineMo" resultMap="ApsGasPipelineMoResult">
+ <include refid="selectApsGasPipelineMoVo"/>
+ <where>
+ <if test="mo != null and mo != ''"> and mo = #{mo}</if>
+ <if test="factory != null and factory != ''"> and factory = #{factory}</if>
+ <if test="materialCode != null and materialCode != ''"> and material_code = #{materialCode}</if>
+ <if test="planEnd != null and planEnd != ''"> and plan_end = #{planEnd}</if>
+ <if test="quantity != null and quantity != ''"> and quantity = #{quantity}</if>
+ </where>
+ </select>
+
+ <select id="selectApsGasPipelineMoById" parameterType="Long" resultMap="ApsGasPipelineMoResult">
+ </select>
+
+ <insert id="insertApsGasPipelineMo" parameterType="ApsGasPipelineMo">
+ insert into aps_gas_pipeline_mo
+ <trim prefix="(" suffix=")" suffixOverrides=",">
+ <if test="id != null">id,</if>
+ <if test="mo != null">mo,</if>
+ <if test="factory != null">factory,</if>
+ <if test="materialCode != null">material_code,</if>
+ <if test="planEnd != null">plan_end,</if>
+ <if test="createBy != null">create_by,</if>
+ <if test="createTime != null">create_time,</if>
+ <if test="updateBy != null">update_by,</if>
+ <if test="updateTime != null">update_time,</if>
+ <if test="quantity != null">quantity,</if>
+ </trim>
+ <trim prefix="values (" suffix=")" suffixOverrides=",">
+ <if test="id != null">#{id},</if>
+ <if test="mo != null">#{mo},</if>
+ <if test="factory != null">#{factory},</if>
+ <if test="materialCode != null">#{materialCode},</if>
+ <if test="planEnd != null">#{planEnd},</if>
+ <if test="createBy != null">#{createBy},</if>
+ <if test="createTime != null">#{createTime},</if>
+ <if test="updateBy != null">#{updateBy},</if>
+ <if test="updateTime != null">#{updateTime},</if>
+ <if test="quantity != null">#{quantity},</if>
+ </trim>
+ </insert>
+
+ <update id="updateApsGasPipelineMo" parameterType="ApsGasPipelineMo">
+ update aps_gas_pipeline_mo
+ <trim prefix="SET" suffixOverrides=",">
+ <if test="mo != null">mo = #{mo},</if>
+ <if test="factory != null">factory = #{factory},</if>
+ <if test="materialCode != null">material_code = #{materialCode},</if>
+ <if test="planEnd != null">plan_end = #{planEnd},</if>
+ <if test="createBy != null">create_by = #{createBy},</if>
+ <if test="createTime != null">create_time = #{createTime},</if>
+ <if test="updateBy != null">update_by = #{updateBy},</if>
+ <if test="updateTime != null">update_time = #{updateTime},</if>
+ <if test="quantity != null">quantity = #{quantity},</if>
+ </trim>
+ where id = #{id}
+ </update>
+
+ <delete id="deleteApsGasPipelineMoById" parameterType="Long">
+ delete from aps_gas_pipeline_mo where id = #{id}
+ </delete>
+
+ <delete id="deleteAll">
+ delete from aps_gas_pipeline_mo
+ </delete>
+
+ <delete id="deleteApsGasPipelineMoByIds" parameterType="String">
+ delete from aps_gas_pipeline_mo where id in
+ <foreach item="id" collection="array" open="(" separator="," close=")">
+ #{id}
+ </foreach>
+ </delete>
+</mapper>
\ No newline at end of file
--
Gitblit v1.9.3