Forráskód Böngészése

feature(未出账单): 取消bug修复

likai 4 éve
szülő
commit
32d71a05a4
1 módosított fájl, 13 hozzáadás és 7 törlés
  1. 13 7
      service/settle_account_main/settle_account_main.go

+ 13 - 7
service/settle_account_main/settle_account_main.go

@@ -2,6 +2,7 @@ package settle_account_main
 
 import (
 	"dashoo.cn/micro_libary/request"
+	"database/sql"
 	"errors"
 	"fmt"
 	"github.com/gogf/gf/os/gtime"
@@ -242,6 +243,9 @@ func (s Service) Cancel(req accountModel.AccountMainCancelReq) error {
 	}
 	err = one.Struct(&main)
 	if err != nil {
+		if err == sql.ErrNoRows {
+			return nil
+		}
 		return err
 	}
 
@@ -288,6 +292,7 @@ func (s Service) Cancel(req accountModel.AccountMainCancelReq) error {
 	detail.Data1 = main.AppointStartDate.Format("Y-m-d H:m:s")
 	detail.Data2 = main.AppointEndDate.Format("Y-m-d H:m:s")
 	detail.Data3 = now.Format("Y-m-d H:m:s") // 取消时间
+	detail.Pid = main.Id
 
 	mins := now.Sub(main.AppointStartDate).Minutes()
 	if mins > 0 { // 正向超时,计算违约收费
@@ -295,7 +300,7 @@ func (s Service) Cancel(req accountModel.AccountMainCancelReq) error {
 		for _, rule := range rules {
 			value1, _ := strconv.ParseFloat(rule.Code, 64)
 			if mins < value1 {
-				per, _ := strconv.ParseFloat(rule.Value, 64)
+				per, _ = strconv.ParseFloat(rule.Value, 64)
 				per /= 100
 				r += rule.Code + "分钟内" + rule.Value + "%"
 			}
@@ -315,12 +320,13 @@ func (s Service) Cancel(req accountModel.AccountMainCancelReq) error {
 	main.ActualMachineHour = 0
 	for _, item := range details {
 		// 计算费用
-		discount := float64(1) // 计算折扣
-		if item.Data5 != "" {
-			d, _ := strconv.ParseFloat(item.Data5, 64)
-			discount = 1 - d / 100
-		}
-		detail.PaymentAccount += item.PaymentAccount * discount * per
+		//discount := float64(1) // 计算折扣
+		//if item.Data5 != "" {
+		//	d, _ := strconv.ParseFloat(item.Data5, 64)
+		//	discount = 1 - d / 100
+		//}
+		//detail.PaymentAccount += item.PaymentAccount * discount * per
+		detail.PaymentAccount += item.PaymentAccount * 1 * per // 取消不算折扣
 	}
 
 	oldAmount := main.TotalPrice