1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- package service
- import (
- "errors"
- "gas-cylinder-api/app/admin/model"
- "gas-cylinder-api/app/admin/service/dto"
- "gas-cylinder-api/common/actions"
- cDto "gas-cylinder-api/common/dto"
- "gas-cylinder-api/common/global"
- "github.com/alibaba/sentinel-golang/util"
- "gogs.baozhida.cn/zoie/OAuth-core/service"
- "gorm.io/gorm"
- )
- type FillCheck struct {
- service.Service
- }
- // GetPage 获取FillCheck列表
- func (e *FillCheck) GetPage(c *dto.FillCheckGetPageReq, list *[]model.FillCheck, count *int64, p *actions.DataPermission) error {
- var err error
- var data model.FillCheck
- err = e.Orm.Model(&data).
- Scopes(
- cDto.MakeCondition(c.GetNeedSearch()),
- cDto.Paginate(c.GetPageSize(), c.GetPageIndex()),
- actions.Permission(data.TableName(), p),
- ).
- Preload("User").
- Find(list).Limit(-1).Offset(-1).
- Count(count).Error
- if err != nil {
- e.Log.Errorf("db error: %s", err)
- return global.GetFailedErr
- }
- return nil
- }
- // Get 获取FillCheck对象
- func (e *FillCheck) Get(d *dto.FillCheckGetReq, carInfoModel *model.FillCheck, p *actions.DataPermission) error {
- err := e.Orm.
- Scopes(actions.Permission(carInfoModel.TableName(), p)).
- First(carInfoModel, d.GetId()).Error
- if err != nil {
- e.Log.Errorf("db error: %s", err)
- if errors.Is(err, gorm.ErrRecordNotFound) {
- return global.GetNotFoundOrNoPermissionErr
- }
- return global.GetFailedErr
- }
- return nil
- }
- // Insert 创建FillCheck对象
- func (e *FillCheck) Insert(c *dto.FillCheckInsertReq) error {
- var err error
- var data model.FillCheck
- tx := e.Orm.Begin()
- defer func() {
- if err != nil {
- tx.Rollback()
- } else {
- tx.Commit()
- }
- }()
- // 1、通过高频ID查询气瓶内编码
- //var gasCylinder model.GasCylinder
- //err = tx.Where("uid = ?", c.ChipUid).First(&gasCylinder).Error
- //if err != nil {
- // log.Errorf("db error: %s", err)
- // return global.CreateFailedErr
- //}
- // 添加充气前后检查
- c.Generate(&data)
- // TODO 同步省平台 1.1.1.19 充气前后检查
- //ipr := data.GenProvFillCheck()
- data.OperationLogId = util.NewUuid()
- data.InnerCode = c.InnerCode
- err = tx.Create(&data).Error
- if err != nil {
- e.Log.Errorf("db error: %s", err)
- return global.CreateFailedErr
- }
- c.Id = data.Id
- return nil
- }
|