lanjianrong 4 years ago
parent
commit
a6a740daec

+ 110 - 42
dao/approver_dao.go

@@ -151,7 +151,7 @@ func (d *ApproverDao) GetLastAuditor(bid int, dataType int, dataId int) (*models
 }
 }
 
 
 // 初始化审批流程状态
 // 初始化审批流程状态
-func (d *ApproverDao) InitStatus(bid int, dataType int, dataId int, auditId int, times int, progress int, opinion string) error {
+func (d *ApproverDao) InitStatus(auditType string, bid int, dataType int, dataId int, auditId int, times int, progress int, opinion string) error {
 	session := d.engine.NewSession()
 	session := d.engine.NewSession()
 	defer session.Close()
 	defer session.Close()
 	err := session.Begin()
 	err := session.Begin()
@@ -165,23 +165,42 @@ func (d *ApproverDao) InitStatus(bid int, dataType int, dataId int, auditId int,
 		session.Rollback()
 		session.Rollback()
 		return err
 		return err
 	}
 	}
-	_, err = session.Exec("update cm_safe set status = ?, times = ? where id = ?", 0, times+1, dataId)
-	if err != nil {
-		session.Rollback()
-		return err
-	}
-	// 增加审批日志
-	safeAudit := &models.CmSafeAudit{BidsectionId: bid, SafeId: dataId, Times: times, AuditId: auditId, Status: 1, Progress: 0, CreateTime: time.Now(), Opinion: opinion}
-	_, err = session.Insert(safeAudit)
-	if err != nil {
-		session.Rollback()
-		return err
+	if auditType == "safe" {
+		_, err = session.Exec("update cm_safe set status = ?, times = ? where id = ?", 0, times+1, dataId)
+		if err != nil {
+			session.Rollback()
+			return err
+		}
+		// 增加审批日志
+		safeAudit := &models.CmSafeAudit{BidsectionId: bid, SafeId: dataId, Times: times, AuditId: auditId, Status: 1, Progress: progress, CreateTime: time.Now(), Opinion: opinion}
+		_, err = session.Insert(safeAudit)
+		if err != nil {
+			session.Rollback()
+			return err
+		}
+		// 说明本身除于整改人流程,退回原报,要将整改总数-1,未整改总数+1
+		if progress-1 != 0 {
+			_, err = session.Exec("update cm_tree set safe_rectification = safe_rectification + 1, safe_rectification_in = if(safe_rectification_in >= 1, safe_rectification_in - 1, 0) where bidsection_id = ?", bid)
+		}
+	} else {
+		_, err = session.Exec("update cm_quality set status = ?, times = ? where id = ?", 0, times+1, dataId)
+		if err != nil {
+			session.Rollback()
+			return err
+		}
+		// 增加审批日志
+		qualityAudit := &models.CmQualityAudit{BidsectionId: bid, QualityId: dataId, Times: times, AuditId: auditId, Status: 1, Progress: progress, CreateTime: time.Now(), Opinion: opinion}
+		_, err = session.Insert(qualityAudit)
+		if err != nil {
+			session.Rollback()
+			return err
+		}
+		if progress-1 != 0 {
+			_, err = session.Exec("update cm_tree set quality_rectification = quality_rectification + 1, quality_rectification_in = if(quality_rectification_in >= 1, quality_rectification_in - 1, 0) where bidsection_id = ?", bid)
+		}
 	}
 	}
 	err = session.Commit()
 	err = session.Commit()
-	if err != nil {
-		return err
-	}
-	return nil
+	return err
 }
 }
 
 
 // 审批通过
 // 审批通过
@@ -272,7 +291,7 @@ func (d *ApproverDao) PassHandler(auditType string, id int, uid int, auditId int
 						return err
 						return err
 					}
 					}
 					// 将cm_tree的safe_rectification_finish待整改+1
 					// 将cm_tree的safe_rectification_finish待整改+1
-					_, err := session.Exec("update cm_tree set safe_rectification_finish = safe_rectification_finish + 1,  safe_rectification_finish = if(safe_rectification_finish >= 1, safe_rectification_finish - 1, 0)where bidsection_id = ?", auditor.BidsectionId)
+					_, err := session.Exec("update cm_tree set safe_rectification_finish = safe_rectification_finish + 1,  safe_rectification_in = if(safe_rectification_in >= 1, safe_rectification_in - 1, 0)where bidsection_id = ?", auditor.BidsectionId)
 					if err != nil {
 					if err != nil {
 						session.Rollback()
 						session.Rollback()
 						return err
 						return err
@@ -355,7 +374,7 @@ func (d *ApproverDao) PassHandler(auditType string, id int, uid int, auditId int
 						return err
 						return err
 					}
 					}
 					// 将cm_tree的quality_rectification_finish待整改+1
 					// 将cm_tree的quality_rectification_finish待整改+1
-					_, err := session.Exec("update cm_tree set quality_rectification_finish = quality_rectification_finish + 1, quality_rectification_finish = if(quality_rectification_finish >= 1, quality_rectification_finish - 1, 0) where bidsection_id = ?", auditor.BidsectionId)
+					_, err := session.Exec("update cm_tree set quality_rectification_finish = quality_rectification_finish + 1, quality_rectification_in = if(quality_rectification_in >= 1, quality_rectification_in - 1, 0) where bidsection_id = ?", auditor.BidsectionId)
 					if err != nil {
 					if err != nil {
 						session.Rollback()
 						session.Rollback()
 						return err
 						return err
@@ -370,12 +389,10 @@ func (d *ApproverDao) PassHandler(auditType string, id int, uid int, auditId int
 }
 }
 
 
 // 审批流程-退回
 // 审批流程-退回
-func (d *ApproverDao) BackHandlerWithId(id int, uid int, times int, progress int, opinion string) error {
+func (d *ApproverDao) BackHandlerWithId(auditType string, id int, uid int, times int, progress int, opinion string) error {
 	session := d.engine.NewSession()
 	session := d.engine.NewSession()
 	defer session.Close()
 	defer session.Close()
-	// add Begin() before any action
 	err := session.Begin()
 	err := session.Begin()
-	// auditor, err := d.FindApproverById(id)
 	auditor := &models.CmApprover{}
 	auditor := &models.CmApprover{}
 	_, err = session.ID(id).Get(auditor)
 	_, err = session.ID(id).Get(auditor)
 	data := &models.CmApprover{Status: 0}
 	data := &models.CmApprover{Status: 0}
@@ -393,17 +410,46 @@ func (d *ApproverDao) BackHandlerWithId(id int, uid int, times int, progress int
 		return err
 		return err
 	}
 	}
 	// 增加审批日志
 	// 增加审批日志
-	safeAudit := &models.CmSafeAudit{BidsectionId: auditor.BidsectionId, SafeId: auditor.DataId, Times: times, AuditId: uid, Status: 1, Progress: progress, CreateTime: time.Now(), Opinion: opinion}
-	_, err = session.Insert(safeAudit)
+	if auditType == "safe" {
+		safeAudit := &models.CmSafeAudit{BidsectionId: auditor.BidsectionId, SafeId: auditor.DataId, Times: times, AuditId: uid, Status: 1, Progress: progress, CreateTime: time.Now(), Opinion: opinion}
+		_, err = session.Insert(safeAudit)
+		if err != nil {
+			session.Rollback()
+			return err
+		}
+	} else {
+		qualityAudit := &models.CmQualityAudit{BidsectionId: auditor.BidsectionId, QualityId: auditor.DataId, Times: times, AuditId: uid, Status: 1, Progress: progress, CreateTime: time.Now(), Opinion: opinion}
+		_, err = session.Insert(qualityAudit)
+		if err != nil {
+			session.Rollback()
+			return err
+		}
+	}
+	curAuditor := &models.CmApprover{}
+	_, err = session.ID(uid).Get(curAuditor)
 	if err != nil {
 	if err != nil {
 		session.Rollback()
 		session.Rollback()
 		return err
 		return err
 	}
 	}
+	// 当前审批人是整改或者复查流程的并且退回的是审批流程的
+	if curAuditor.Progress >= 1 && auditor.Progress == 0 {
+		var sql string
+		if auditType == "safe" {
+			sql = "update cm_tree set safe_rectification = safe_rectification_in + 1 and safe_rectification_in = if(safe_rectification_in >= 1, safe_rectification_in - 1, 0) where bidseciont_id = ?"
+		} else {
+			sql = "update cm_tree set quality_rectification = quality_rectification_in + 1 and quality_rectification_in = if(quality_rectification_in >= 1, quality_rectification_in - 1, 0) where bidseciont_id = ?"
+		}
+		_, err = session.Exec(sql, auditor.BidsectionId)
+		if err != nil {
+			session.Rollback()
+			return err
+		}
+	}
 	err = session.Commit()
 	err = session.Commit()
 	return err
 	return err
 }
 }
 
 
-func (d *ApproverDao) CloseHandler(id int, opinion string, curUid int, saveId int) error {
+func (d *ApproverDao) CloseHandler(auditType string, id int, opinion string, curUid int, saveId int) error {
 	session := d.engine.NewSession()
 	session := d.engine.NewSession()
 	defer session.Close()
 	defer session.Close()
 	// add Begin() before any action
 	// add Begin() before any action
@@ -412,24 +458,46 @@ func (d *ApproverDao) CloseHandler(id int, opinion string, curUid int, saveId in
 	if auditor.AuditId != curUid {
 	if auditor.AuditId != curUid {
 		return errors.New("该用户没有审批权限!")
 		return errors.New("该用户没有审批权限!")
 	}
 	}
-	safe := &models.CmSafe{}
-	_, err = session.ID(saveId).Get(safe)
-	if err != nil {
-		session.Rollback()
-		return err
-	}
-	// 增加审批日志
-	safeAudit := &models.CmSafeAudit{BidsectionId: auditor.BidsectionId, SafeId: auditor.DataId, Times: safe.Times, AuditId: auditor.AuditId, Status: 2, Progress: auditor.Progress, CreateTime: time.Now(), Opinion: opinion}
-	_, err = session.Insert(safeAudit)
-	if err != nil {
-		session.Rollback()
-		return err
-	}
-	// 更改cm_safe的记录
-	_, err = session.Exec("update `cm_safe` set status = ? where id = ? ", 5, saveId)
-	if err != nil {
-		session.Rollback()
-		return err
+	if auditType == "safe" {
+		safe := &models.CmSafe{}
+		_, err = session.ID(saveId).Get(safe)
+		if err != nil {
+			session.Rollback()
+			return err
+		}
+		// 增加审批日志
+		safeAudit := &models.CmSafeAudit{BidsectionId: auditor.BidsectionId, SafeId: auditor.DataId, Times: safe.Times, AuditId: auditor.AuditId, Status: 2, Progress: auditor.Progress, CreateTime: time.Now(), Opinion: opinion}
+		_, err = session.Insert(safeAudit)
+		if err != nil {
+			session.Rollback()
+			return err
+		}
+		// 更改cm_safe的记录
+		_, err = session.Exec("update `cm_safe` set status = ? where id = ? ", 5, saveId)
+		if err != nil {
+			session.Rollback()
+			return err
+		}
+	} else {
+		quality := &models.CmQuality{}
+		_, err = session.ID(saveId).Get(quality)
+		if err != nil {
+			session.Rollback()
+			return err
+		}
+		// 增加审批日志
+		qualityAudit := &models.CmQualityAudit{BidsectionId: auditor.BidsectionId, QualityId: auditor.DataId, Times: quality.Times, AuditId: auditor.AuditId, Status: 2, Progress: auditor.Progress, CreateTime: time.Now(), Opinion: opinion}
+		_, err = session.Insert(qualityAudit)
+		if err != nil {
+			session.Rollback()
+			return err
+		}
+		// 更改cm_quality的记录
+		_, err = session.Exec("update `cm_quality` set status = ? where id = ? ", 5, saveId)
+		if err != nil {
+			session.Rollback()
+			return err
+		}
 	}
 	}
 	// 更改cm_approver的记录
 	// 更改cm_approver的记录
 	_, err = session.Exec("update `cm_approver` set status = ? where id = ? ", 3, id)
 	_, err = session.Exec("update `cm_approver` set status = ? where id = ? ", 3, id)

+ 71 - 7
dao/quality_dao.go

@@ -8,7 +8,9 @@
 package dao
 package dao
 
 
 import (
 import (
+	"errors"
 	"fmt"
 	"fmt"
+	"time"
 
 
 	"github.com/go-xorm/xorm"
 	"github.com/go-xorm/xorm"
 	"go.mod/models"
 	"go.mod/models"
@@ -60,10 +62,35 @@ func (d *QualityDao) InsertRecord(data models.CmQuality) (bool, error) {
 }
 }
 
 
 // 删除记录
 // 删除记录
-func (d *QualityDao) DeleteRecord(id int) (bool, error) {
-	Quality := models.CmQuality{}
-	affected, err := d.engine.Id(id).Delete(Quality)
-	return affected > 0, err
+func (d *QualityDao) DeleteRecord(id int) error {
+	session := d.engine.NewSession()
+	defer session.Close()
+	err := session.Begin()
+	if err != nil {
+		session.Rollback()
+		return err
+	}
+
+	quality := &models.CmQuality{Id: id}
+	_, err = session.Get(quality)
+	if err != nil {
+		session.Rollback()
+		return err
+	}
+	bidsectionId := quality.BidsectionId
+	_, err = session.ID(id).Delete(quality)
+	if err != nil {
+		session.Rollback()
+		return err
+	}
+	// 计算当前安全巡检总数
+	_, err = session.Exec("update `cm_tree` set `quality_total` = if(`quality_total` >= 1, `quality_total` - 1, 0),  `quality_rectification` = if(`quality_rectification` >= 1, `quality_rectification` - 1, 0) where `bidsection_id` = ?", bidsectionId)
+	if err != nil {
+		session.Rollback()
+		return err
+	}
+	err = session.Commit()
+	return err
 }
 }
 
 
 // 根据code获取记录
 // 根据code获取记录
@@ -84,9 +111,9 @@ func (d *QualityDao) CountRuleCode(bid int) (int64, error) {
 }
 }
 
 
 // 更改status
 // 更改status
-func (d *QualityDao) ChangeStatus(id int, status int) error {
-	data := &models.CmQuality{Status: status}
-	_, err := d.engine.ID(id).Update(data)
+func (d *QualityDao) ChangeStatus(id int, status int, inspection string, inspectionDetail string, demand string, createTime time.Time) error {
+	data := &models.CmQuality{Status: status, Inspection: inspection, InspectionDetail: inspectionDetail, Demand: demand, CreateTime: createTime}
+	_, err := d.engine.ID(id).Cols("status", " inspection", "inspection_detail", "demand", "create_time").Update(data)
 	return err
 	return err
 }
 }
 
 
@@ -129,3 +156,40 @@ func (d *QualityDao) GetStatusByProjectAndAccount(projectId int, projectAccountI
 		Find(&datalist)
 		Find(&datalist)
 	return datalist
 	return datalist
 }
 }
+
+// 事务-创建新的安全巡检记录
+func (d *QualityDao) CreateQuality(data models.CmQuality) error {
+	session := d.engine.NewSession()
+	defer session.Close()
+	err := session.Begin()
+	if err != nil {
+		session.Rollback()
+		return err
+	}
+	has, err := session.Where("code = ?", data.Code).Get(&data)
+	// err或者code存在都回滚
+	if err != nil {
+		session.Rollback()
+		return err
+	}
+	if has == true {
+		session.Rollback()
+		return errors.New("该编号已存在!")
+	}
+	_, err = session.Insert(data)
+	if err != nil {
+		session.Rollback()
+		return err
+	}
+	// 更新cm_tree中的quality_total、quality_rectification
+	_, err = session.Exec("update `cm_tree` set `quality_total` = `quality_total` + 1 , `quality_rectification` = `quality_rectification` + 1 where `bidsection_id` = ?", data.BidsectionId)
+	if err != nil {
+		session.Rollback()
+		return err
+	}
+	err = session.Commit()
+	if err != nil {
+		return err
+	}
+	return nil
+}

+ 1 - 1
dao/safe_dao.go

@@ -84,7 +84,7 @@ func (d *SafeDao) DeleteRecord(id int) error {
 		return err
 		return err
 	}
 	}
 	// 计算当前安全巡检总数
 	// 计算当前安全巡检总数
-	_, err = session.Exec("update `cm_tree` set `safe_total` = if(`safe_total` >= 1, `safe_total` - 1, 0) where `bidsection_id` = ?", bidsectionId)
+	_, err = session.Exec("update `cm_tree` set `safe_total` = if(`safe_total` >= 1, `safe_total` - 1, 0), `safe_rectification` = if(`safe_rectification` >= 1, `safe_rectification` - 1, 0) where `bidsection_id` = ?", bidsectionId)
 	if err != nil {
 	if err != nil {
 		session.Rollback()
 		session.Rollback()
 		return err
 		return err

+ 24 - 11
services/quality_audit.service.go

@@ -9,6 +9,7 @@ package services
 import (
 import (
 	"errors"
 	"errors"
 	"log"
 	"log"
+	"time"
 
 
 	"github.com/kataras/iris/v12"
 	"github.com/kataras/iris/v12"
 	"go.mod/dao"
 	"go.mod/dao"
@@ -23,7 +24,7 @@ type QualityAuditService interface {
 	CloseAudit(id int, opinion string, curUid int, saveId int) error
 	CloseAudit(id int, opinion string, curUid int, saveId int) error
 	BackAudit(id int, opinion string, curUid int, saveId int, auditId int) error
 	BackAudit(id int, opinion string, curUid int, saveId int, auditId int) error
 	PassAudit(id int, uid int, auditId int, opinion string, rectifiedInfo string) error
 	PassAudit(id int, uid int, auditId int, opinion string, rectifiedInfo string) error
-	StartAudit(safeId int, bidsectionId int, auditors []int, reAuditors []int, uid int, pid int) error
+	StartAudit(safeId int, bidsectionId int, auditors []int, reAuditors []int, uid int, pid int, inspection string, inspectionDetail string, demand string, createTime time.Time) error
 }
 }
 
 
 type qualityAuditService struct {
 type qualityAuditService struct {
@@ -51,7 +52,7 @@ func NewQualityAuditService() QualityAuditService {
 
 
 // 关闭审批流程
 // 关闭审批流程
 func (s *qualityAuditService) CloseAudit(id int, opinion string, curUid int, saveId int) error {
 func (s *qualityAuditService) CloseAudit(id int, opinion string, curUid int, saveId int) error {
-	err := s.daoApprover.CloseHandler(id, opinion, curUid, saveId)
+	err := s.daoApprover.CloseHandler("quality", id, opinion, curUid, saveId)
 	return err
 	return err
 }
 }
 
 
@@ -66,10 +67,10 @@ func (s *qualityAuditService) BackAudit(id int, opinion string, curUid int, save
 	// 退回到了检查人
 	// 退回到了检查人
 	if auditId == 0 {
 	if auditId == 0 {
 		// 初始化审批流程
 		// 初始化审批流程
-		err = s.daoApprover.InitStatus(auditor.BidsectionId, auditor.DataType, auditor.DataId, auditor.AuditId, safe.Times, auditor.Progress+1, opinion)
+		err = s.daoApprover.InitStatus("quality", auditor.BidsectionId, auditor.DataType, auditor.DataId, auditor.AuditId, safe.Times, auditor.Progress+1, opinion)
 	} else {
 	} else {
 		// 退回到审批流程中的某一个人
 		// 退回到审批流程中的某一个人
-		err = s.daoApprover.BackHandlerWithId(auditId, auditor.AuditId, safe.Times, auditor.Progress+1, opinion)
+		err = s.daoApprover.BackHandlerWithId("quality", auditId, auditor.AuditId, safe.Times, auditor.Progress+1, opinion)
 	}
 	}
 	return err
 	return err
 
 
@@ -81,19 +82,31 @@ func (s *qualityAuditService) PassAudit(id int, uid int, auditId int, opinion st
 	return err
 	return err
 }
 }
 
 
-func (s *qualityAuditService) StartAudit(safeId int, bidsectionId int, auditors []int, reAuditors []int, uid int, pid int) error {
-	safe := s.daoQuality.FindById(safeId)
-	if safe.Uid != uid {
+func (s *qualityAuditService) StartAudit(qualityId int, bidsectionId int, auditors []int, reAuditors []int, uid int, pid int, inspection string, inspectionDetail string, demand string, createTime time.Time) error {
+	quality := s.daoQuality.FindById(qualityId)
+	if quality.Uid != uid {
 		return errors.New("该用户没有操作权限!")
 		return errors.New("该用户没有操作权限!")
 	}
 	}
 	// 清除可能有的旧的审批流程
 	// 清除可能有的旧的审批流程
-	err := s.daoApprover.DeleteOldAuditors(bidsectionId, 1, safeId)
+	err := s.daoApprover.DeleteOldAuditors(bidsectionId, 1, qualityId)
+	if err != nil {
+		return err
+	}
 	// 增加审批日志
 	// 增加审批日志
-	err = s.daoQualityAudit.AddAuditRecord(safeId, bidsectionId, uid, safe.Times, 0, 0, "", "")
+	err = s.daoQualityAudit.AddAuditRecord(qualityId, bidsectionId, uid, quality.Times, 0, 0, "", "")
+	if err != nil {
+		return err
+	}
 	// 改变安全巡检表的状态
 	// 改变安全巡检表的状态
-	err = s.daoQuality.ChangeStatus(safeId, 1)
+	err = s.daoQuality.ChangeStatus(qualityId, 1, inspection, inspectionDetail, demand, createTime)
+	if err != nil {
+		return err
+	}
 	// 创建审批流程
 	// 创建审批流程
-	err = s.daoApprover.InsertData(bidsectionId, pid, 1, safeId, auditors, reAuditors)
+	err = s.daoApprover.InsertData(bidsectionId, pid, 1, qualityId, auditors, reAuditors)
+	if err != nil {
+		return err
+	}
 	return err
 	return err
 }
 }
 
 

+ 10 - 13
services/quality_service.go

@@ -1,7 +1,6 @@
 package services
 package services
 
 
 import (
 import (
-	"errors"
 	"fmt"
 	"fmt"
 	"log"
 	"log"
 	"strconv"
 	"strconv"
@@ -74,23 +73,21 @@ func (s *qualityService) Get(id int, pid int, pageNo int, pageSize int) ([]viewm
 
 
 // post请求,插入单条数据
 // post请求,插入单条数据
 func (s *qualityService) Post(data models.CmQuality) error {
 func (s *qualityService) Post(data models.CmQuality) error {
-	has := s.daoQuality.FindByCode(data.Code)
-	if has {
-		return errors.New("该编号已存在!")
-	}
-	Inserted, err := s.daoQuality.InsertRecord(data)
-	if Inserted == true {
-		return nil
-	}
+	// has := s.daoQuality.FindByCode(data.Code)
+	// if has {
+	// 	return errors.New("该编号已存在!")
+	// }
+	// Inserted, err := s.daoQuality.InsertRecord(data)
+	// if Inserted == true {
+	// 	return nil
+	// }
+	err := s.daoQuality.CreateQuality(data)
 	return err
 	return err
 }
 }
 
 
 // delete请求,删除数据
 // delete请求,删除数据
 func (s *qualityService) Del(id int) error {
 func (s *qualityService) Del(id int) error {
-	Deleted, err := s.daoQuality.DeleteRecord(id)
-	if Deleted == true {
-		return nil
-	}
+	err := s.daoQuality.DeleteRecord(id)
 	return err
 	return err
 }
 }
 
 

+ 3 - 3
services/safe_audit.service.go

@@ -54,7 +54,7 @@ func NewSafeAuditService() SafeAuditService {
 
 
 // 关闭审批流程
 // 关闭审批流程
 func (s *safeAuditService) CloseAudit(id int, opinion string, curUid int, saveId int) error {
 func (s *safeAuditService) CloseAudit(id int, opinion string, curUid int, saveId int) error {
-	err := s.daoApprover.CloseHandler(id, opinion, curUid, saveId)
+	err := s.daoApprover.CloseHandler("safe", id, opinion, curUid, saveId)
 	return err
 	return err
 }
 }
 
 
@@ -69,10 +69,10 @@ func (s *safeAuditService) BackAudit(id int, opinion string, curUid int, saveId
 	// 退回到了检查人
 	// 退回到了检查人
 	if auditId == 0 {
 	if auditId == 0 {
 		// 初始化审批流程
 		// 初始化审批流程
-		err = s.daoApprover.InitStatus(auditor.BidsectionId, auditor.DataType, auditor.DataId, auditor.AuditId, safe.Times, auditor.Progress+1, opinion)
+		err = s.daoApprover.InitStatus("safe", auditor.BidsectionId, auditor.DataType, auditor.DataId, auditor.AuditId, safe.Times, auditor.Progress+1, opinion)
 	} else {
 	} else {
 		// 退回到审批流程中的某一个人
 		// 退回到审批流程中的某一个人
-		err = s.daoApprover.BackHandlerWithId(auditId, auditor.AuditId, safe.Times, auditor.Progress+1, opinion)
+		err = s.daoApprover.BackHandlerWithId("safe", auditId, auditor.AuditId, safe.Times, auditor.Progress+1, opinion)
 	}
 	}
 	return err
 	return err
 
 

+ 1 - 1
web/api/quality_audit_api.go

@@ -78,7 +78,7 @@ func (c *QualityAuditApi) PostStart() {
 		return
 		return
 	}
 	}
 	// 7.执行sql
 	// 7.执行sql
-	err = c.QualityAuditService.StartAudit(qualityId, bidsectionId, auditors, reAuditors, uid, pid)
+	err = c.QualityAuditService.StartAudit(qualityId, bidsectionId, auditors, reAuditors, uid, pid, qualityAuditData.Inspection, qualityAuditData.InspectionDetail, qualityAuditData.Demand, qualityAuditData.CreateTime)
 	if err != nil {
 	if err != nil {
 		c.Ctx.JSON(iris.Map{"code": -1, "msg": fmt.Sprintf("%s", err)})
 		c.Ctx.JSON(iris.Map{"code": -1, "msg": fmt.Sprintf("%s", err)})
 		return
 		return

+ 13 - 5
web/viewmodels/quality_audit.go

@@ -67,11 +67,15 @@ func (l QualityAudit) ValidateQualityPass() error {
 }
 }
 
 
 type QualityAuditStart struct {
 type QualityAuditStart struct {
-	QualityId    string   `form:"quality_id" json:"quality_id"`
-	BidsectionId string   `form:"bidsection_id" json:"bidsection_id"`
-	Times        int      `form:"times" json:"times"`
-	Auditors     []string `form:"auditors" json:"auditors"`
-	ReAuditors   []string `form:"reAuditors" json:"reAuditors"`
+	QualityId        string    `form:"quality_id" json:"quality_id"`
+	BidsectionId     string    `form:"bidsection_id" json:"bidsection_id"`
+	Times            int       `form:"times" json:"times"`
+	Auditors         []string  `form:"auditors" json:"auditors"`
+	ReAuditors       []string  `form:"reAuditors" json:"reAuditors"`
+	Inspection       string    `from:"inspection" json:"inspection"`
+	InspectionDetail string    `from:"inspectionDetail" json:"inspectionDetail"`
+	Demand           string    `from:"demand" json:"demand"`
+	CreateTime       time.Time `from:"createTime" json:"createTime"`
 }
 }
 
 
 func (l QualityAuditStart) ValidateQualityStart() error {
 func (l QualityAuditStart) ValidateQualityStart() error {
@@ -81,5 +85,9 @@ func (l QualityAuditStart) ValidateQualityStart() error {
 		validation.Field(&l.Times, validation.Required.Error("审批次数不能为空")),
 		validation.Field(&l.Times, validation.Required.Error("审批次数不能为空")),
 		validation.Field(&l.Auditors, validation.Required.Error("审批组不能为空")),
 		validation.Field(&l.Auditors, validation.Required.Error("审批组不能为空")),
 		validation.Field(&l.ReAuditors, validation.Required.Error("复查组不能为空")),
 		validation.Field(&l.ReAuditors, validation.Required.Error("复查组不能为空")),
+		validation.Field(&l.Inspection, validation.Required.Error("检查项目不能为空")),
+		validation.Field(&l.InspectionDetail, validation.Required.Error("现场检查不能为空")),
+		validation.Field(&l.Demand, validation.Required.Error("处理措施不能为空")),
+		validation.Field(&l.CreateTime, validation.Required.Error("检查日期不能为空")),
 	)
 	)
 }
 }