Browse Source

Merge branch 'master' of http://git.ds-bay.com/project/kmall-pt-general

zcb 4 years ago
parent
commit
1ad5545a71

+ 35 - 0
kmall-admin/src/main/java/com/kmall/admin/controller/OrderController.java

@@ -1307,6 +1307,41 @@ public class OrderController {
             for (SystemFormatDto systemFormat : systemFormatList) {
                 LinkedHashMap<String, Object> map = new LinkedHashMap<>();
 
+
+                if (Objects.nonNull(systemFormat.getTaxRate()) && Objects.nonNull(systemFormat.getTotalSalesInclTax())){
+                    // 设置综合税额
+                    systemFormat.setTaxAmount(new BigDecimal(systemFormat.getTotalSalesInclTax()).multiply(new BigDecimal(systemFormat.getTaxRate())).setScale(2,BigDecimal.ROUND_HALF_UP).toString());
+                    // 设置商品销售额(税前)
+                    systemFormat.setSales(new BigDecimal(systemFormat.getTotalSalesInclTax()).subtract(new BigDecimal(systemFormat.getTaxAmount())).setScale(2,BigDecimal.ROUND_HALF_UP).toString());
+                    // 设置实际销售额
+                    systemFormat.setCurrentPrice(new BigDecimal(systemFormat.getTotalSalesInclTax()).divide(new BigDecimal(systemFormat.getUnitSold()),2,BigDecimal.ROUND_HALF_UP).setScale(2,BigDecimal.ROUND_HALF_UP).toEngineeringString());
+                    if (Dict.orderStatus.item_401.equals(systemFormat.getOrderStatus())){
+                        systemFormat.setUnitSold("-"+systemFormat.getUnitSold());
+                        systemFormat.setSales("-"+systemFormat.getSales());
+                        systemFormat.setTaxAmount("-"+systemFormat.getTaxAmount());
+                        systemFormat.setTotalSalesInclTax("-"+systemFormat.getTotalSalesInclTax());
+                    }
+                }
+
+                if (Objects.nonNull(systemFormat.getCurrentPrice()) && Objects.nonNull(systemFormat.getEdlp())){
+                    // 设置扣率
+                    systemFormat.setDeductionRate(new BigDecimal(systemFormat.getCurrentPrice()).divide(new BigDecimal(systemFormat.getEdlp()),2,BigDecimal.ROUND_HALF_UP).setScale(2,BigDecimal.ROUND_HALF_UP).toEngineeringString());
+                    if (Objects.nonNull(systemFormat.getCostPrice())){
+                        // 设置GP ¥
+                        systemFormat.setGp1(new BigDecimal(systemFormat.getCurrentPrice()).subtract(new BigDecimal(systemFormat.getCostPrice())).setScale(4,BigDecimal.ROUND_HALF_UP).toEngineeringString());
+                        // 设置GP %
+                        systemFormat.setGp2(new BigDecimal(systemFormat.getGp1()).divide(new BigDecimal(systemFormat.getCurrentPrice()),8,BigDecimal.ROUND_HALF_UP).setScale(8,BigDecimal.ROUND_HALF_UP).toString());
+                    }
+                }
+                // 如果是退货
+                if (Dict.orderStatus.item_401.equals(systemFormat.getOrderStatus())){
+                    systemFormat.setSaleReturnType("整单退货");
+                    systemFormat.setTransactionType("退货");
+                }else{
+                    systemFormat.setTransactionType("销售");
+                }
+
+
                 map.put("ReceiptNo",systemFormat.getReceiptNo());
                 map.put("CashRegisterNo",systemFormat.getCashRegisterNo());
                 map.put("TimeStampDetails",systemFormat.getTimeStampDetails());

+ 10 - 0
kmall-admin/src/main/java/com/kmall/admin/dto/SystemFormatDto.java

@@ -43,6 +43,16 @@ public class SystemFormatDto implements Serializable {
     private String saleReturnType;// 退货类型
     private String remark;// 备注
 
+    private String orderStatus;//订单状态
+
+
+    public String getOrderStatus() {
+        return orderStatus;
+    }
+
+    public void setOrderStatus(String orderStatus) {
+        this.orderStatus = orderStatus;
+    }
 
     public String getReceiptNo() {
         return receiptNo;

+ 5 - 3
kmall-admin/src/main/resources/mybatis/mapper/OrderDao.xml

@@ -2050,11 +2050,13 @@
         uc.name as productSpecification,
         b.name as brand,
         gs.daily_price as edlp,
+        sr.bottom_line_price as costPrice,
         g.number as unitSold,
-        g.actual_payment_amount as sales,
-        o.order_price as totalSalesInclTax,
+        g.actual_payment_amount as totalSalesInclTax,
         gs.goods_rate as taxRate,
-        sup.child_supplier_name as supplierName
+        '专柜单品' as productCategory,
+        sup.child_supplier_name as supplierName,
+        o.order_status as orderStatus
         FROM
         mall_order o
         LEFT JOIN mall_order_goods g ON o.id = g.order_id