|
|
@@ -77,6 +77,48 @@ func (s Service) List(req model.ListReq) ([]accountModel.SettleAccountMain, int,
|
|
|
|
|
|
return list, total, nil
|
|
|
}
|
|
|
+// 新增
|
|
|
+func (s Service) Add(req accountModel.AccountMainAddReq, user request.UserInfo) error {
|
|
|
+ now := gtime.Now() // 获取当前时间
|
|
|
+
|
|
|
+ // 更新必要信息
|
|
|
+ req.Main.CreateUserId = int(user.Id)
|
|
|
+ req.Main.CreateBy = user.RealName
|
|
|
+ req.Main.CreateOn = now
|
|
|
+ req.Main.UpdateUserId = int(user.Id)
|
|
|
+ req.Main.UpdateBy = user.RealName
|
|
|
+ req.Main.UpdateOn = now
|
|
|
+
|
|
|
+ tx, err := s.Dao.DB.Begin()
|
|
|
+ if err != nil {
|
|
|
+ return err
|
|
|
+ }
|
|
|
+
|
|
|
+ result, err := tx.Insert("settle_account_main", req.Main)
|
|
|
+ if err != nil {
|
|
|
+ tx.Rollback()
|
|
|
+ return err
|
|
|
+ }
|
|
|
+
|
|
|
+ id , _ := result.LastInsertId()
|
|
|
+ for index := range req.Details { // 更新必要信息
|
|
|
+ req.Details[index].CreateUserId = int(user.Id)
|
|
|
+ req.Details[index].CreateBy = user.RealName
|
|
|
+ req.Details[index].CreateOn = now
|
|
|
+ req.Details[index].UpdateUserId = int(user.Id)
|
|
|
+ req.Details[index].UpdateBy = user.RealName
|
|
|
+ req.Details[index].UpdateOn = now
|
|
|
+ req.Details[index].Pid = int(id)
|
|
|
+ }
|
|
|
+ _, err = tx.Insert("settle_account_detail", req.Details)
|
|
|
+ if err != nil {
|
|
|
+ tx.Rollback()
|
|
|
+ return err
|
|
|
+ }
|
|
|
+
|
|
|
+ return tx.Commit()
|
|
|
+}
|
|
|
+
|
|
|
|
|
|
// 确认
|
|
|
func (s Service) Confirm(req accountModel.AccountMainConfirmReq, user request.UserInfo) error {
|