1 рік тому
батько
коміт
ee6b76af41

+ 7 - 1
platform-dao/src/main/java/com/platform/dao/dto/longyanpurchaseorder/LongYanPurchaseDetailDTO.java

@@ -23,15 +23,21 @@ import java.util.List;
 @Accessors(chain = true)
 @EqualsAndHashCode(callSuper = true)
 public class LongYanPurchaseDetailDTO extends BaseDTO implements Serializable {
+    private Double iexchrate;//汇率
+
+    private Double funitprice;//本币无税单价 = 本币不含税金额 /数量
+
+    private Double fmoney;//金额 = 本币不含税金额 本币价税合计
+
     private Double iorisum;//价税合计
 
+
     private Double ipertaxrate;//税率
 
     private String cbmemo;//物资描述
 
 
     private String cpersoncode;//请购人编码
-    private String ftaxprice;//单价
 
     private String yongYouRemark;
     private String projectNo; // 项目大类编码citem_class

+ 8 - 1
platform-dao/src/main/java/com/platform/dao/entity/longyanpurchaseorder/LongYanPurchaseDetail.java

@@ -22,13 +22,20 @@ import java.math.BigDecimal;
 @Accessors(chain = true)
 @Table(name = "t_long_yan_purchase_detail")
 public class LongYanPurchaseDetail implements Serializable{
+    private Double iexchrate;//汇率
+
+    private Double funitprice;//本币无税单价 = 本币不含税金额 /数量
+
+    private Double fmoney;//金额 = 本币不含税金额 本币价税合计
+
     private Double iorisum;//价税合计
 
+
+
     private Double ipertaxrate;//税率
 
     private String cbmemo;//物资描述
 
-    private String ftaxprice;//单价
 
 
     private String yongYouRemark;

+ 9 - 1
platform-dao/src/main/java/com/platform/dao/vo/query/longyanpurchaseorder/LongYanPurchaseDetailVO.java

@@ -11,6 +11,7 @@ import java.io.Serializable;
 import java.time.LocalDateTime;
 import java.time.LocalDate;
 import java.math.BigDecimal;
+import java.util.function.DoubleToLongFunction;
 
 /**
  * @Description 龙岩采购明细表VO结果类
@@ -22,13 +23,20 @@ import java.math.BigDecimal;
 @Accessors(chain = true)
 @EqualsAndHashCode(callSuper = true)
 public class LongYanPurchaseDetailVO extends BaseVO implements Serializable{
+    private Double iexchrate;//汇率
+
+    private Double funitprice;//本币无税单价 = 本币不含税金额 /数量
+
+    private Double fmoney;//金额 = 本币不含税金额 本币价税合计
+
     private Double iorisum;//价税合计
 
+
+
     private Double ipertaxrate;//税率
 
     private String cbmemo;//物资描述
 
-    private String ftaxprice;//单价
 
     private String yongYouId;
     private String yongYouRemark;

+ 13 - 12
platform-service/src/main/java/com/platform/service/longyanpurchaseorder/impl/LongYanPurchaseOrderServiceImpl.java

@@ -191,10 +191,10 @@ public class LongYanPurchaseOrderServiceImpl extends BaseServiceImpl<LongYanPurc
                     item.setUpdateUserId(userInfo.getUserId());
                     item.setUpdateUserName(userInfo.getRealName());
                     item.setUpdateTime(LocalDateTime.now());
-                    Double iorisum = (new Double(item.getFtaxprice())*(item.getNum().doubleValue()*(1+item.getIpertaxrate()*0.01)));
-                    BigDecimal   b   =   new   BigDecimal(iorisum);
-                    Double   f1   =   b.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();
-                    item.setIorisum(f1);
+//                    Double iorisum = (new Double(item.getFtaxprice())*(item.getNum().doubleValue()*(1+item.getIpertaxrate()*0.01)));
+//                    BigDecimal   b   =   new   BigDecimal(iorisum);
+//                    Double   f1   =   b.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();
+//                    item.setIorisum(f1);
                     totalNum = totalNum.add(item.getNum());
                 }
             longYanPurchaseDetailMapper.insertListforComplex(BeanConverterUtil.copyListProperties(detailDTOS,LongYanPurchaseDetail.class));
@@ -262,10 +262,11 @@ public class LongYanPurchaseOrderServiceImpl extends BaseServiceImpl<LongYanPurc
                 detailDTO.setProjectName(project.getParentName());
                 detailDTO.setProjectSecondNo(project.getNo());
                 detailDTO.setProjectSecondName(project.getName());
-                Double iorisum = (new Double(detailDTO.getFtaxprice())*(detailDTO.getNum().doubleValue()*(1+detailDTO.getIpertaxrate()*0.01)));
-                BigDecimal   b   =   new   BigDecimal(iorisum);
-                Double   f1   =   b.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();
-                detailDTO.setIorisum(f1);
+
+//                Double iorisum = (new Double(detailDTO.getFtaxprice())*(detailDTO.getNum().doubleValue()*(1+detailDTO.getIpertaxrate()*0.01)));
+//                BigDecimal   b   =   new   BigDecimal(iorisum);
+//                Double   f1   =   b.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();
+//                detailDTO.setIorisum(f1);
                 totalNum = totalNum.add(detailDTO.getNum());
             }
         }else{
@@ -274,10 +275,10 @@ public class LongYanPurchaseOrderServiceImpl extends BaseServiceImpl<LongYanPurc
                 detailDTO.setCreatedTime(LocalDateTime.now());
                 detailDTO.setCreatedUserId(userInfo.getUserId());
                 detailDTO.setCreatedUserName(userInfo.getUsername());
-                Double iorisum = (new Double(detailDTO.getFtaxprice())*(detailDTO.getNum().doubleValue()*(1+detailDTO.getIpertaxrate()*0.01)));
-                BigDecimal   b   =   new   BigDecimal(iorisum);
-                Double   f1   =   b.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();
-                detailDTO.setIorisum(f1);
+//                Double iorisum = (new Double(detailDTO.getFtaxprice())*(detailDTO.getNum().doubleValue()*(1+detailDTO.getIpertaxrate()*0.01)));
+//                BigDecimal   b   =   new   BigDecimal(iorisum);
+//                Double   f1   =   b.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();
+//                detailDTO.setIorisum(f1);
                 totalNum = totalNum.add(detailDTO.getNum());
             }
         }

+ 26 - 0
platform-service/src/main/java/com/platform/service/yongyou/impl/YongyouServiceImpl.java

@@ -725,6 +725,32 @@ public class YongyouServiceImpl implements YongyouService {
             detail.setCitem_name(orderVO.getProjectSecondName());
             detail.setCitemcode(orderVO.getProjectSecondNo());
 
+            detail.setFmoney(MathUtils.formatDouble1(orderVO.getFmoney(),4));//本币含税合计
+            detail.setFunitprice(MathUtils.formatDouble1(orderVO.getFunitprice(),4));//本币无税单价 = 本币不含税金额 /数量
+
+            Double iorisum = orderVO.getFmoney()*orderVO.getIexchrate();//原币价税合计
+            Double ioritaxprice = iorisum/(1+orderVO.getIpertaxrate())*orderVO.getIpertaxrate();//原币税额
+            Double iorimoney = iorisum-ioritaxprice;//原币不含税金额 = 原币价税合计 - 原币税额
+            Double ioricost = iorimoney/orderVO.getNum().doubleValue();//原币不含税单价 = 原币不含税金额 / 数量
+            Double ioritaxcost = iorisum/orderVO.getNum().doubleValue();//原币含税单价
+            Double ftaxprice = ioritaxcost*orderVO.getIexchrate();//本币含税单价
+            Double itaxprice = ftaxprice*orderVO.getNum().doubleValue()/(1+orderVO.getIpertaxrate());//本币税额
+            Double imoney = ftaxprice*orderVO.getNum().doubleValue()-itaxprice;///本币不含税金额 = 本币含税单价 * 数量 - 本币税额
+
+            detail.setIorisum(MathUtils.formatDouble1(iorisum,4));
+            detail.setIoritaxprice(MathUtils.formatDouble1(ioritaxprice,4));
+
+            detail.setIorimoney(MathUtils.formatDouble1(iorimoney,4));
+            detail.setIoricost(MathUtils.formatDouble1(ioricost,4));
+
+            detail.setIoritaxcost(MathUtils.formatDouble1(ioritaxcost,4));
+            detail.setFtaxprice(MathUtils.formatDouble1(ftaxprice,4));
+            detail.setItaxprice(MathUtils.formatDouble1(itaxprice,4));
+            detail.setImoney(MathUtils.formatDouble1(imoney,4));
+
+
+
+
             detail.setCbmemo(orderVO.getCbmemo());
             detail.setFtaxprice(MathUtils.formatDouble1(orderVO.getIpertaxrate(),4));
             detail.setIpertaxrate(MathUtils.formatDouble1(orderVO.getIpertaxrate(),2));

+ 23 - 1
platform-service/src/main/java/handler/yongyou/request/PuAppDetail.java

@@ -2,16 +2,38 @@ package handler.yongyou.request;
 
 import lombok.Data;
 
+import java.math.BigDecimal;
+
 /**
  * 现存量查询
  */
 @Data
 public class PuAppDetail {
+    private String ioricost;//原币不含税单价 = 原币不含税金额 / 数量
+
+    private String ioritaxcost;//原币含税单价
+
+    private String  iorimoney;//原币不含税金额 = 原币价税合计 - 原币税额
+
+    private String ioritaxprice;//原币税额 = 原币价税合计/(1 + 税率) * 税率
+
+    private String imoney;//本币不含税金额 = 本币含税单价 * 数量 - 本币税额
+
+    private String itaxprice;//本币税额 = 本币含税单价 * 数量 /(1 + 税率) * 税率
+
+    private String funitprice;//本币无税单价 = 本币不含税金额 /数量
+
+    private String ftaxprice;//本币含税单价 = 原币含税单价 * 汇率
+
+    private String fmoney;//金额 = 本币不含税金额
+
     private String iorisum;//价税合计
 
+
+
     private String cbmemo;//物资描述
 
-    private String ftaxprice;//单价
+//    private String ftaxprice;//单价
 //    private String cdefine12;//物料简述
 
     private String cinvcode;//存货编码