|
|
- // Copyright (c) Shenyang Leading Edge Intelligent Technology Co., Ltd. All rights reserved.
- package models
-
- import (
- "leit.com/LAPP_GAAS_GFrame/db"
- "errors"
- "leit.com/LAPP_GAAS_GFrame/schedule"
- "xorm.io/core"
- "time"
- )
-
- type Workcalendar struct {
- Plantnr int `json:"PlantNr" xorm:"not null pk INT(4)"`
- Workcalendarnr int `json:"WorkCalendarNr" xorm:"not null pk INT(4)"`
- Descr string `json:"Descr" xorm:"not null NVARCHAR(200)"`
- Lastmodify time.Time `json:"LastModify" xorm:"DATETIME(8)"`
- Lastuser string `json:"LastUser" xorm:"not null NVARCHAR(40)"`
- Createtime time.Time `json:"CreateTime" xorm:"DATETIME(8)"`
- Itemlst []Workcalendarlst `json:"itemlst" xorm:"-"`
- }
-
- /******数据表名******/
- func (t *Workcalendar) TableName() string {
- return "Workcalendar"
- }
-
- /******************************************************************************
- *
- * @Function Name :
- *-----------------------------------------------------------------------------
- *
- * @Description : 数据添加
- *
- * @Function Parameters:
- *
- * @Return Value :
- *
- * @Author : Lou Wenzhi
- *
- * @Date : 2021/3/6 8:47
- *
- ******************************************************************************/
- func (t *Workcalendar) Add() error {
- e := db.Eloquent.Master()
- count := new(Workcalendar)
- affw, err := e.Table(t.TableName()).ID(core.PK{t.Plantnr, t.Workcalendarnr}).Count(count)
- if err != nil {
- return err
- }
- if affw > 0 {
- return errors.New("数据已经存在!")
- }
- _, err = e.Table(t.TableName()).Insert(t)
-
- if err != nil {
- return err
- }
- return nil
- }
-
- /******************************************************************************
- *
- * @Function Name :
- *-----------------------------------------------------------------------------
- *
- * @Description : 数据删除
- *
- * @Function Parameters:
- *
- * @Return Value :
- *
- * @Author : Lou Wenzhi
- *
- * @Date : 2021/3/6 8:47
- *
- ******************************************************************************/
- func (t *Workcalendar) Del() bool {
- e := db.Eloquent.Master()
- _, err := e.ID(core.PK{t.Plantnr, t.Workcalendarnr}).Delete(&Workcalendar{})
- if err != nil {
- return false
- }
- return true
- }
-
- /******************************************************************************
- *
- * @Function Name :
- *-----------------------------------------------------------------------------
- *
- * @Description : 数据修改
- *
- * @Function Parameters:
- *
- * @Return Value :
- *
- * @Author : Lou Wenzhi
- *
- * @Date : 2021/3/6 8:47
- *
- ******************************************************************************/
- func (t *Workcalendar) Update() error {
- e := db.Eloquent.Master()
- _, err := e.ID(core.PK{t.Plantnr, t.Workcalendarnr}).Update(t)
- if err != nil {
- return err
- }
- return nil
- }
-
- /******************************************************************************
- *
- * @Function Name :
- *-----------------------------------------------------------------------------
- *
- * @Description : 数据查找
- *
- * @Function Parameters:
- *
- * @Return Value :
- *
- * @Author : Lou Wenzhi
- *
- * @Date : 2021/3/6 8:47
- *
- ******************************************************************************/
- func (t *Workcalendar) SelectOne() (Workcalendar, error) {
- e := db.Eloquent.Master()
- var data Workcalendar
- _, err := e.ID(core.PK{t.Plantnr, t.Workcalendarnr}).Get(&data)
- if err != nil {
- return data, err
- }
- return data, nil
- }
-
- /******************************************************************************
- *
- * @Function Name :
- *-----------------------------------------------------------------------------
- *
- * @Description : 数据查找
- *
- * @Function Parameters:
- *
- * @Return Value :
- *
- * @Author : Lou Wenzhi
- *
- * @Date : 2021/3/6 8:47
- *
- ******************************************************************************/
- func (t *Workcalendar) SelectAll(startDate, endDate time.Time) (datalst []Workcalendar, err error) {
- var (
- i int
- startday, endday string
- )
-
- // 获取日历头信息
- e := db.Eloquent.Master()
- if err = e.Table(t.TableName()).Where("PlantNr = ?",t.Plantnr).OrderBy("WorkCalendarNr").Find(&datalst); err != nil {
- return
- }
- // 获取明细数据
- startday = schedule.GetYMDString(startDate)
- endday = schedule.GetYMDString(endDate)
- for i = 0; i < len(datalst); i++ {
- if err = e.Table("WorkCalendarLst").Where("PlantNr = ? and WorkCalendarNr = ? and WorkDate >= ? and WorkDate <= ?",
- datalst[i].Plantnr, datalst[i].Workcalendarnr, startday, endday).OrderBy("WorkDate").Find(&datalst[i].Itemlst); err != nil {
- return
- }
- }
- return
- }
|