other.go 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. package crontab
  2. import (
  3. "errors"
  4. "kpt-pasture/model"
  5. "kpt-pasture/module/backend"
  6. "time"
  7. "gitee.com/xuyiping_admin/pkg/logger/zaplog"
  8. "go.uber.org/zap"
  9. pasturePb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/cow"
  10. "gorm.io/gorm"
  11. )
  12. // CreateCrontabLog 生成日志记录
  13. func (e *Entry) CreateCrontabLog(name string) bool {
  14. currDateTime := time.Now().Format(model.LayoutDate2)
  15. newCronLog := &model.CronLog{}
  16. if err := e.DB.Where("name = ?", name).
  17. Where("date = ?", currDateTime).First(newCronLog).Error; err != nil {
  18. if errors.Is(err, gorm.ErrRecordNotFound) {
  19. e.DB.Create(model.NewCronLog(name))
  20. return true
  21. }
  22. }
  23. return false
  24. }
  25. // CreatedWorkOrderCalendar 创建当天工单日历记录
  26. func (e *Entry) CreatedWorkOrderCalendar(calendarType pasturePb.CalendarType_Kind, count int32) {
  27. calendarTypeName := backend.CalendarTypeMap()[calendarType]
  28. workOrderCalendar := model.NewWorkOrderCalendar(calendarTypeName, calendarType, count)
  29. if err := e.DB.Model(&model.WorkOrderCalendar{}).Create(workOrderCalendar).Error; err != nil {
  30. zaplog.Error("CreatedWorkOrderCalendar", zap.Any("err", err), zap.Any("workOrderCalendar", workOrderCalendar))
  31. }
  32. }