// Copyright (c) Shenyang Leading Edge Intelligent Technology Co., Ltd. All rights reserved. package models import ( "leit.com/LAPP_GAAS_GFrame/db" "time" "errors" "xorm.io/core" ) // 产线班次出勤表 type Worklineworkshiftlst struct { Plantnr int `json:"PlantNr" xorm:"not null pk INT(4)"` Worklineid string `json:"WorkLineId" xorm:"not null pk NVARCHAR(80)"` Workday string `json:"WorkDay" xorm:"not null pk NVARCHAR(16)"` Workshiftnr int `json:"WorkShiftNr" xorm:"not null pk INT(4)"` Personqty int `json:"PersonQty" xorm:"INT(4)"` 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)"` } /******数据表名******/ func (t *Worklineworkshiftlst) TableName() string { return "Worklineworkshiftlst" } /****************************************************************************** * * @Function Name : *----------------------------------------------------------------------------- * * @Description : 数据添加 * * @Function Parameters: * * @Return Value : * * @Author : Lou Wenzhi * * @Date : 2021/3/6 8:47 * ******************************************************************************/ func (t *Worklineworkshiftlst) Add() error { e := db.Eloquent.Master() count := new(Worklineworkshiftlst) affw, err := e.Table(t.TableName()).ID(core.PK{t.Plantnr, t.Worklineid, t.Workday, t.Workshiftnr}).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 *Worklineworkshiftlst) Del() bool { e := db.Eloquent.Master() _, err := e.ID(core.PK{t.Plantnr, t.Worklineid, t.Workday, t.Workshiftnr}).Delete(&Worklineworkshiftlst{}) 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 *Worklineworkshiftlst) Update() error { e := db.Eloquent.Master() _, err := e.ID(core.PK{t.Plantnr, t.Worklineid, t.Workday, t.Workshiftnr}).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 *Worklineworkshiftlst) SelectOne() (Worklineworkshiftlst, error) { e := db.Eloquent.Master() var data Worklineworkshiftlst _, err := e.ID(core.PK{t.Plantnr, t.Worklineid, t.Workday, t.Workshiftnr}).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 *Worklineworkshiftlst) GetWorkLineWorkShiftData(lineid, st, et string) (datalst []Worklineworkshiftlst, err error) { e := db.Eloquent.Master() if err := e.Table(t.TableName()).Where("PlantNr = ? and WorkLineId = ? and WorkDay >= ? and WorkDay <= ?",t.Plantnr, lineid, st, et).Asc("WorkDay", "WeekModelNr").Find(&datalst);err != nil { return } return }