From cf7bc2d68e7d86e7d4b896acf1400f534d594daa Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期二, 10 三月 2026 17:59:19 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_宁夏_中盛建材' into dev_宁夏_中盛建材
---
src/main/java/com/ruoyi/energy/service/impl/EnergyServiceImpl.java | 88 ++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 88 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/ruoyi/energy/service/impl/EnergyServiceImpl.java b/src/main/java/com/ruoyi/energy/service/impl/EnergyServiceImpl.java
new file mode 100644
index 0000000..b07e96d
--- /dev/null
+++ b/src/main/java/com/ruoyi/energy/service/impl/EnergyServiceImpl.java
@@ -0,0 +1,88 @@
+package com.ruoyi.energy.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.energy.mapper.EnergyConsumptionDetailMapper;
+import com.ruoyi.energy.pojo.Energy;
+import com.ruoyi.energy.mapper.EnergyMapper;
+import com.ruoyi.energy.pojo.EnergyConsumptionDetail;
+import com.ruoyi.energy.service.EnergyService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.framework.web.domain.R;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+/**
+ * <p>
+ * 鑳芥簮绫诲瀷 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-03-10 10:50:18
+ */
+@Service
+public class EnergyServiceImpl extends ServiceImpl<EnergyMapper, Energy> implements EnergyService {
+
+ @Autowired
+ private EnergyMapper energyMapper;
+
+ @Autowired
+ private EnergyConsumptionDetailMapper energyConsumptionDetailMapper;
+
+ @Override
+ public IPage<Energy> pageEnergy(Page<Energy> page, Energy energy) {
+ return energyMapper.pageEnergy(page,energy);
+ }
+
+ @Override
+ public boolean batchDelete(List<Long> ids) {
+ //鍏堝垽鏂槸鍚﹀凡缁忔湁濉啓鐨勮兘鑰楁暟鎹�
+ List<EnergyConsumptionDetail> energyConsumptionDetails = energyConsumptionDetailMapper.selectList(Wrappers.<EnergyConsumptionDetail>lambdaQuery().in(EnergyConsumptionDetail::getEnergyId, ids));
+ if (CollectionUtils.isNotEmpty(energyConsumptionDetails)){
+ throw new RuntimeException("閫変腑鐨勮兘婧愮被鍨嬪凡鏈夊搴旂殑鑳借�楁暟鎹�,鏃犳硶杩涜鍒犻櫎!");
+ }
+ return removeBatchByIds(ids);
+ }
+
+ @Override
+ public R importData(MultipartFile file) {
+ try {
+ ExcelUtil<Energy> util = new ExcelUtil<Energy>(Energy.class);
+ List<Energy> energyList = util.importExcel(file.getInputStream());
+ if(CollectionUtils.isEmpty(energyList)){
+ return R.fail("妯℃澘閿欒鎴栧鍏ユ暟鎹负绌�");
+ }
+ energyList.forEach(energy -> {
+ if (ObjectUtils.isEmpty(energy)) {
+ throw new RuntimeException("浣跨敤妯℃澘杩涜瀵煎叆");
+ }
+ if (ObjectUtils.isEmpty(energy.getEnergyTyep())) {
+ throw new RuntimeException("鑳芥簮绫诲瀷涓嶈兘涓虹┖");
+ }
+ });
+ this.saveOrUpdateBatch(energyList);
+ return R.ok(true);
+ }catch (Exception e){
+ e.printStackTrace();
+ return R.fail(e.getMessage());
+ }
+ }
+
+ @Override
+ public void export(HttpServletResponse response) {
+ List<Energy> list = energyMapper.selectList(null);
+ if(CollectionUtils.isEmpty(list)){
+ throw new RuntimeException("鏃犲鍑烘暟鎹�");
+ }
+ ExcelUtil<Energy> util = new ExcelUtil<>(Energy.class);
+ util.exportExcel(response, list, "鑳芥簮绫诲瀷");
+ }
+}
--
Gitblit v1.9.3