浏览代码

1.机器设备删除
2.非标设备公式调整

GouGengquan 6 月之前
父节点
当前提交
61e594eba4

+ 10 - 0
biz-base/src/main/java/com/dayou/controller/AssetsCalculateEqptDataController.java

@@ -142,4 +142,14 @@ public class AssetsCalculateEqptDataController {
         return Result.build(dataService.updateBatchNonSData(dataList));
     }
 
+    /**
+     * 根据机器设备信息id删除
+     * @param eqptId 设备信息id
+     * @return Boolean
+     */
+    @DeleteMapping("/deleteEqptDataById/{eqptId}")
+    public Result<Boolean> deleteEqptDataById(@PathVariable Long eqptId){
+        return Result.build(dataService.deleteDqptDataById(eqptId));
+    }
+
 }

+ 14 - 0
dao/src/main/java/com/dayou/mapper/AssetsCalculateEqptDataMapper.java

@@ -87,6 +87,13 @@ public interface AssetsCalculateEqptDataMapper extends BaseMapper<AssetsCalculat
     Boolean addImpData(@Param("data") AssetsCalculateEqptImpData assetsCalculateEqptImpData);
 
     /**
+     * 根据机器设备信息id删除进口设备信息
+     * @param eqptDataId 设备信息id
+     * @return Boolean
+     */
+    Boolean deleteImpSDataByEqptId(@Param("eqptDataId") Long eqptDataId);
+
+    /**
      * 分页查询非标设备信息
      * @param dto 查询dto
      * @return Page<AssetsCalculateEqptNonsDataVO>
@@ -114,4 +121,11 @@ public interface AssetsCalculateEqptDataMapper extends BaseMapper<AssetsCalculat
      */
     Boolean addNonSData(@Param("data") AssetsCalculateEqptNonsData data);
 
+    /**
+     * 根据机器设备信息id删除非标设备信息
+     * @param eqptDataId 设备信息id
+     * @return Boolean
+     */
+    Boolean deleteNonSDataByEqptId(@Param("eqptDataId") Long eqptDataId);
+
 }

+ 16 - 0
dao/src/main/resources/mapper/AssetsCalculateEqptDataMapper.xml

@@ -405,6 +405,14 @@
         VALUE (NULL,#{data.eqptDataId},#{data.ppi},#{data.pricingBasis},#{data.centralParityRate},#{data.tariffRate},#{data.importVATRate},#{data.bankChargesRate},#{data.foreignTransactionRate},#{data.productCode},#{data.currency},#{data.address},#{data.transactionMethod},#{data.contractAmount},#{data.contractSigningDate},#{data.destinationPort},#{data.originalPrice}, #{data.tariffRatePicture})
     </insert>
 
+    <!--根据机器设备信息id删除进口设备信息-->
+    <delete id="deleteImpSDataByEqptId">
+        UPDATE assets_calculate_eqpt_imp_data
+        SET delete_status = 0
+        WHERE delete_status = 0
+          AND eqpt_data_id = #{eqptDataId}
+    </delete>
+
     <!--分页查询非标设备信息-->
     <select id="getNonSDataPage" resultType="com.dayou.vo.AssetsCalculateEqptNonsDataVO">
         SELECT data.sort_id,
@@ -558,4 +566,12 @@
               #{data.material1},#{data.material2},#{data.material1Quantity},#{data.material2Quantity},#{data.material1UseRatio},#{data.material2UseRatio},#{data.material1Price},#{data.material2Price})
     </insert>
 
+    <!--根据机器设备信息id删除非标设备信息-->
+    <delete id="deleteNonSDataByEqptId">
+        UPDATE assets_calculate_eqpt_nons_data
+        SET delete_status = 0
+        WHERE delete_status = 0
+        AND eqpt_data_id = #{eqptDataId}
+    </delete>
+
 </mapper>

+ 1 - 1
domain/src/main/java/com/dayou/common/CalculateFormula.java

@@ -123,7 +123,7 @@ public class CalculateFormula {
      * 机器设备非标设备模板公式
      */
     public enum EquipmentNonStandardFormula {
-        主材费设备报价含税不含运费不含安装调试费("ROUND(O{0,number,#}/P{0,number,#}*Q{0,number,#}+S{0,number,#}/T{0,number,#}*U{0,number,#},0)", 22),
+        主材费设备报价含税不含运费不含安装调试费("ROUND(O{0,number,#}/P{0,number,#}*Q{0,number,#}+(IF(R{0,number,#}=\"无\",0,S{0,number,#}/T{0,number,#}*U{0,number,#})),0)", 22),
         非标设备估值("ROUND((V{0,number,#}/W{0,number,#}+X{0,number,#})*(1+Y{0,number,#})*(1+Z{0,number,#})*(1+AA{0,number,#})/(1+AB{0,number,#}),0)",29);
 
         /**

+ 7 - 0
service/src/main/java/com/dayou/service/AssetsCalculateEqptDataService.java

@@ -125,4 +125,11 @@ public interface AssetsCalculateEqptDataService extends IService<AssetsCalculate
      */
     Boolean updateBatchNonSData(List<AssetsCalculateEqptNonsData> dataList);
 
+    /**
+     * 根据机器设备信息id删除
+     * @param eqptId 设备信息id
+     * @return Boolean
+     */
+    Boolean deleteDqptDataById(Long eqptId);
+
 }

+ 13 - 0
service/src/main/java/com/dayou/service/impl/AssetsCalculateEqptDataServiceImpl.java

@@ -201,4 +201,17 @@ public class AssetsCalculateEqptDataServiceImpl extends ServiceImpl<AssetsCalcul
         }
         return Boolean.TRUE;
     }
+
+    /**
+     * 根据机器设备信息id删除
+     * @param eqptId 设备信息id
+     * @return Boolean
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Boolean deleteDqptDataById(Long eqptId) {
+        dataMapper.deleteImpSDataByEqptId(eqptId);
+        dataMapper.deleteNonSDataByEqptId(eqptId);
+        return this.removeById(eqptId);
+    }
 }

+ 2 - 1
service/src/main/java/com/dayou/service/impl/AssetsCalculateServiceImpl.java

@@ -28,6 +28,7 @@ import com.dayou.vo.EqptReportReferencesCalculateVO;
 import com.dayou.vo.calculate.AssetsCalculateProgressVO;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import org.apache.poi.ss.usermodel.*;
+import org.apache.poi.ss.util.CellRangeAddress;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -369,7 +370,7 @@ public class AssetsCalculateServiceImpl extends ServiceImpl<AssetsCalculateMappe
         // 设置表尾合计(这一步一定要最后做,如果在设置其他公式之前设置表尾合计,可能会导致表尾合计的公式被覆盖)
         TmplAssetCalculateSection mainBottomTotal = calculateSectionMapper.getByTmplCode(MAIN_BOTTOM_TOTAL.getCode());
         EasyExcelUtil.mergeExcel(fileNetConfig.getBaseDir() + mainBottomTotal.getSectionFileUrl() + mainBottomTotal.getSectionFileName(), workbook, 0, workbook.getSheetAt(0).getLastRowNum() + 1, 0, 0);
-
+        workbook.getSheetAt(0).addMergedRegion(new CellRangeAddress(workbook.getSheetAt(0).getLastRowNum(), workbook.getSheetAt(0).getLastRowNum(), 0, 3));
         OutputStream outputStream = Files.newOutputStream(Paths.get(mainMergePath));
         workbook.write(outputStream);
         // 关闭流