Browse Source

E表功能优化

2024年12月5日15:12:46
qingyuan_dev_new
lishuai 1 year ago
parent
commit
029e4a3c89
  1. 73
      modules/cbam/src/main/java/com/thing/cbam/material/controller/CbamMaterialConsumptionController.java
  2. 1
      modules/cbam/src/main/java/com/thing/cbam/material/controller/CbamMaterialSpecificController.java
  3. 42
      modules/cbam/src/main/java/com/thing/cbam/material/dto/CbamMaterialConsumptionDTO.java
  4. 59
      modules/cbam/src/main/java/com/thing/cbam/material/entity/CbamMaterialConsumptionEntity.java
  5. 9
      modules/cbam/src/main/java/com/thing/cbam/material/mapper/CbamMaterialConsumptionMapper.java
  6. 9
      modules/cbam/src/main/java/com/thing/cbam/material/service/CbamMaterialConsumptionService.java
  7. 5
      modules/cbam/src/main/java/com/thing/cbam/material/service/CbamMaterialSpecificService.java
  8. 23
      modules/cbam/src/main/java/com/thing/cbam/material/service/Impl/CbamMaterialConsumptionServiceImpl.java
  9. 13
      modules/cbam/src/main/java/com/thing/cbam/material/service/Impl/CbamMaterialSpecificServiceImpl.java
  10. 2
      modules/cbam/src/main/java/com/thing/cbam/production/dto/CbamProductAllocationDTO.java
  11. 2
      modules/cbam/src/main/java/com/thing/cbam/production/entity/CbamProductAllocationEntity.java

73
modules/cbam/src/main/java/com/thing/cbam/material/controller/CbamMaterialConsumptionController.java

@ -1,73 +0,0 @@
package com.thing.cbam.material.controller;
import com.thing.cbam.material.dto.CbamMaterialConsumptionDTO;
import com.thing.cbam.material.service.CbamMaterialConsumptionService;
import com.thing.common.core.annotation.LogOperation;
import com.thing.common.core.constants.Constant;
import com.thing.common.core.validator.AssertUtils;
import com.thing.common.core.web.response.PageData;
import com.thing.common.core.web.response.Result;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Parameters;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
@RestController
@RequestMapping("v2/cbam/material/consume")
@Tag(name = "原材料消耗量")
@RequiredArgsConstructor
public class CbamMaterialConsumptionController {
private final CbamMaterialConsumptionService cbamMaterialConsumptionService;
@GetMapping("page")
@Operation(summary = "分页")
@Parameters({
@Parameter(name = Constant.PAGE, description = "当前页码,从1开始", required = true),
@Parameter(name = Constant.LIMIT, description = "每页显示记录数", required = true),
@Parameter(name = Constant.ORDER_FIELD, description = "排序字段"),
@Parameter(name = Constant.ORDER, description = "排序方式,可选值(asc、desc)")
})
public Result<PageData<CbamMaterialConsumptionDTO>> page(@Parameter(hidden = true) @RequestParam Map<String,Object> param) {
PageData<CbamMaterialConsumptionDTO> pageList = cbamMaterialConsumptionService.getPageData(param,CbamMaterialConsumptionDTO.class);
return new Result<PageData<CbamMaterialConsumptionDTO>>().ok(pageList);
}
@GetMapping("{id}")
@Operation(summary = "信息")
public Result<CbamMaterialConsumptionDTO> get(@PathVariable("id") Long id) {
CbamMaterialConsumptionDTO dto = cbamMaterialConsumptionService.getByIdAs(id,CbamMaterialConsumptionDTO.class);
return new Result<CbamMaterialConsumptionDTO>().ok(dto);
}
@PostMapping
@Operation(summary = "保存")
@LogOperation("保存")
public Result<Void> save(@RequestBody CbamMaterialConsumptionDTO dto) {
cbamMaterialConsumptionService.saveDto(dto);
return new Result<>();
}
@PutMapping
@Operation(summary = "修改")
@LogOperation("修改")
public Result<Void> update(@RequestBody CbamMaterialConsumptionDTO dto) {
//效验数据
//ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
cbamMaterialConsumptionService.updateDto(dto);
return new Result<>();
}
@DeleteMapping
@Operation(summary = "删除")
@LogOperation("删除")
public Result<Void> delete(@RequestBody Long[] ids) {
//效验数据
AssertUtils.isArrayEmpty(ids, "id");
cbamMaterialConsumptionService.batchDelete(ids);
return new Result<>();
}
}

1
modules/cbam/src/main/java/com/thing/cbam/material/controller/CbamMaterialSpecificController.java

@ -1,7 +1,6 @@
package com.thing.cbam.material.controller; package com.thing.cbam.material.controller;
import com.thing.cbam.baesInfoExcel.dto.CbamIndustryDTO;
import com.thing.cbam.material.dto.CbamMaterialSpecificDTO; import com.thing.cbam.material.dto.CbamMaterialSpecificDTO;
import com.thing.cbam.material.service.CbamMaterialSpecificService; import com.thing.cbam.material.service.CbamMaterialSpecificService;
import com.thing.common.core.annotation.LogOperation; import com.thing.common.core.annotation.LogOperation;

42
modules/cbam/src/main/java/com/thing/cbam/material/dto/CbamMaterialConsumptionDTO.java

@ -1,42 +0,0 @@
package com.thing.cbam.material.dto;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.core.keygen.KeyGenerators;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
* 原材料消耗量
*
* @author xc
* @since 3.0 2024-12-03
*/
@Data
@Schema(description = "原材料消耗量")
public class CbamMaterialConsumptionDTO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
@Id(keyType = KeyType.Generator,value = KeyGenerators.snowFlakeId)
private Long id;
@Schema(description = "采购量")
private String purchaseQuantity;
@Schema(description = "消耗量")
private String consumAmount;
@Schema(description = "非欧盟商品消耗量")
private String consumGoods;
@Schema(description = "关联cbam_industry_information的主键id")
private Long industryId;
@Schema(description = "产品名称|生产过程")
private String prodNameProcess;
@Schema(description = "剩余消耗量")
private String remainConsum;
@Schema(description = "关联cbam_process_material的原材料")
private Long materialId;
}

59
modules/cbam/src/main/java/com/thing/cbam/material/entity/CbamMaterialConsumptionEntity.java

@ -1,59 +0,0 @@
package com.thing.cbam.material.entity;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import com.mybatisflex.core.keygen.KeyGenerators;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serial;
import java.io.Serializable;
/**
* 原材料消耗量
*
* @author xc
* @since 3.0 2024-12-03
*/
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper=false)
@Table("cbam_material_consumption")
public class CbamMaterialConsumptionEntity implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
@Id(keyType = KeyType.Generator,value = KeyGenerators.snowFlakeId)
private Long id;
/**
* 采购量
*/
private String purchaseQuantity;
/**
* 消耗量
*/
private String consumAmount;
/**
* 非欧盟商品消耗量
*/
private String consumGoods;
/**
* 关联cbam_industry_information的主键id
*/
private Long industryId;
/**
* 产品名称|生产过程
*/
private String prodNameProcess;
/**
* 剩余消耗量
*/
private String remainConsum;
/**
* 关联cbam_process_material的原材料
*/
private Long materialId;
}

9
modules/cbam/src/main/java/com/thing/cbam/material/mapper/CbamMaterialConsumptionMapper.java

@ -1,9 +0,0 @@
package com.thing.cbam.material.mapper;
import com.thing.cbam.material.entity.CbamMaterialConsumptionEntity;
import com.thing.common.orm.mapper.PowerBaseMapper;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface CbamMaterialConsumptionMapper extends PowerBaseMapper<CbamMaterialConsumptionEntity> {
}

9
modules/cbam/src/main/java/com/thing/cbam/material/service/CbamMaterialConsumptionService.java

@ -1,9 +0,0 @@
package com.thing.cbam.material.service;
import com.thing.cbam.material.dto.CbamMaterialConsumptionDTO;
import com.thing.cbam.material.entity.CbamMaterialConsumptionEntity;
import com.thing.common.orm.service.IBaseService;
public interface CbamMaterialConsumptionService extends IBaseService<CbamMaterialConsumptionEntity> {
}

5
modules/cbam/src/main/java/com/thing/cbam/material/service/CbamMaterialSpecificService.java

@ -5,7 +5,12 @@ import com.thing.cbam.material.entity.CbamMaterialSpecificEntity;
import com.thing.common.orm.service.IBaseService; import com.thing.common.orm.service.IBaseService;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
import java.util.List;
public interface CbamMaterialSpecificService extends IBaseService<CbamMaterialSpecificEntity> { public interface CbamMaterialSpecificService extends IBaseService<CbamMaterialSpecificEntity> {
List<CbamMaterialSpecificDTO> batchSaveOrUpdate(List<CbamMaterialSpecificDTO> cbamMaterialSpecificDTOList);
LinkedHashMap<String,Object> validateMsg(CbamMaterialSpecificDTO cbamMaterialSpecificDTO); LinkedHashMap<String,Object> validateMsg(CbamMaterialSpecificDTO cbamMaterialSpecificDTO);
} }

23
modules/cbam/src/main/java/com/thing/cbam/material/service/Impl/CbamMaterialConsumptionServiceImpl.java

@ -1,23 +0,0 @@
package com.thing.cbam.material.service.Impl;
import com.mybatisflex.core.query.QueryWrapper;
import com.thing.cbam.material.dto.CbamMaterialConsumptionDTO;
import com.thing.cbam.material.entity.CbamMaterialConsumptionEntity;
import com.thing.cbam.material.entity.CbamMaterialSpecificEntity;
import com.thing.cbam.material.mapper.CbamMaterialConsumptionMapper;
import com.thing.cbam.material.mapper.CbamMaterialSpecificMapper;
import com.thing.cbam.material.service.CbamMaterialConsumptionService;
import com.thing.common.orm.service.impl.BaseServiceImpl;
import org.springframework.stereotype.Service;
import java.util.Map;
@Service
public class CbamMaterialConsumptionServiceImpl extends BaseServiceImpl<CbamMaterialConsumptionMapper, CbamMaterialConsumptionEntity> implements CbamMaterialConsumptionService {
@Override
public QueryWrapper getWrapper(Map<String, Object> params) {
QueryWrapper wrapper = new QueryWrapper();
return wrapper;
}
}

13
modules/cbam/src/main/java/com/thing/cbam/material/service/Impl/CbamMaterialSpecificServiceImpl.java

@ -6,11 +6,13 @@ import com.thing.cbam.material.dto.CbamMaterialSpecificDTO;
import com.thing.cbam.material.entity.CbamMaterialSpecificEntity; import com.thing.cbam.material.entity.CbamMaterialSpecificEntity;
import com.thing.cbam.material.mapper.CbamMaterialSpecificMapper; import com.thing.cbam.material.mapper.CbamMaterialSpecificMapper;
import com.thing.cbam.material.service.CbamMaterialSpecificService; import com.thing.cbam.material.service.CbamMaterialSpecificService;
import com.thing.common.core.utils.ConvertUtils;
import com.thing.common.orm.service.impl.BaseServiceImpl; import com.thing.common.orm.service.impl.BaseServiceImpl;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
@Service @Service
@ -21,6 +23,17 @@ public class CbamMaterialSpecificServiceImpl extends BaseServiceImpl<CbamMateria
return wrapper; return wrapper;
} }
@Override
public List<CbamMaterialSpecificDTO> batchSaveOrUpdate(List<CbamMaterialSpecificDTO> cbamMaterialSpecificDTOList) {
//先删除
List<Long> industryIds = cbamMaterialSpecificDTOList.stream().map(CbamMaterialSpecificDTO::getIndustryId).toList();
mapper.deleteByQuery(QueryWrapper.create().in(CbamMaterialSpecificEntity::getIndustryId,industryIds));
//再批量新增
List<CbamMaterialSpecificEntity> cbamMaterialSpecificEntities = ConvertUtils.sourceToTarget(cbamMaterialSpecificDTOList, CbamMaterialSpecificEntity.class);
mapper.insertBatch(cbamMaterialSpecificEntities);
return ConvertUtils.sourceToTarget(cbamMaterialSpecificEntities, CbamMaterialSpecificDTO.class);
}
@Override @Override
public LinkedHashMap<String, Object> validateMsg(CbamMaterialSpecificDTO cbamMaterialSpecificDTO) { public LinkedHashMap<String, Object> validateMsg(CbamMaterialSpecificDTO cbamMaterialSpecificDTO) {
LinkedHashMap<String,Object> resultMap = new LinkedHashMap<>(); LinkedHashMap<String,Object> resultMap = new LinkedHashMap<>();

2
modules/cbam/src/main/java/com/thing/cbam/production/dto/CbamProductAllocationDTO.java

@ -41,7 +41,7 @@ public class CbamProductAllocationDTO implements Serializable {
private String salesVolume; private String salesVolume;
@Schema(description = "剩余消耗量") @Schema(description = "剩余消耗量")
private String remainConsume; private String remainConsume;
@Schema(description = "总产量")
@Schema(description = "总产量/输出总量/采购量")
private String totalOutput; private String totalOutput;
@Schema(description = "关联cbam_industry_info的主键id") @Schema(description = "关联cbam_industry_info的主键id")
private Long industryId; private Long industryId;

2
modules/cbam/src/main/java/com/thing/cbam/production/entity/CbamProductAllocationEntity.java

@ -78,7 +78,7 @@ public class CbamProductAllocationEntity implements Serializable {
*/ */
private String electricityEmissionFactor; private String electricityEmissionFactor;
/** /**
* 总产量
* d总产量/输出总量/E采购量
*/ */
private String totalOutput; private String totalOutput;
/** /**

Loading…
Cancel
Save