|
|
@@ -332,6 +332,7 @@ func (s Service) Cancel(req accountModel.AccountMainCancelReq) error {
|
|
|
//1、上一个实验人未结束实验,未占用下一个预约开始时间,下一个实验取消预约,需要进行违约扣费
|
|
|
//2、上一个实验人未结束实验,占用了下一个预约开始时间,下一个实验取消预约,不需要进行违约扣费
|
|
|
//3、上一个实验人结束了实验,占用了下一个预约开始时间,下一个实验取消预约,不需要进行违约扣费
|
|
|
+ //4、管理员撤销,不需要进行违约扣费
|
|
|
userNumber, err = s.Dao.DB.Model("appointment").Where(fmt.Sprintf("RelevanceId='%v' AND ((SignInTime IS NOT NULL AND SignOutTime IS NULL AND '%v' > '%v') OR (SignOutTime > '%v'))", main.InstrumentId, nowStr, main.AppointStartDate.Format("Y-m-d H:i:s"), main.AppointStartDate.Format("Y-m-d H:i:s"))).Count()
|
|
|
if err != nil {
|
|
|
return err
|
|
|
@@ -377,6 +378,10 @@ func (s Service) Cancel(req accountModel.AccountMainCancelReq) error {
|
|
|
detail.Data4 = "机器被占用,取消不扣费"
|
|
|
per = 0
|
|
|
}
|
|
|
+ if req.IsAuto == "2" { // 管理员手动撤销
|
|
|
+ detail.Data4 = "管理员撤销,取消不扣费"
|
|
|
+ per = 0
|
|
|
+ }
|
|
|
|
|
|
main.ActualMachineHour = 0
|
|
|
for _, item := range details {
|