You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

154 lines
4.4 KiB

// Copyright (c) Shenyang Leading Edge Intelligent Technology Co., Ltd. All rights reserved.
package models
import (
"errors"
"leit.com/LAPP_GAAS_GFrame/db"
"time"
"xorm.io/core"
)
type OmWorkorderqty struct {
Plantnr int `json:"PlantNr" xorm:"not null pk INT(4)"`
Workorderid string `json:"WorkOrderId" xorm:"not null pk NVARCHAR(40)"`
Planqty float32 `json:"PlanQty" xorm:"not null FLOAT(8)"`
Releasedqty float32 `json:"ReleasedQty" xorm:"not null FLOAT(8)"`
Actqty float32 `json:"ActQty" xorm:"not null FLOAT(8)"`
Actgoodqty float32 `json:"ActGoodQty" xorm:"not null FLOAT(8)"`
Actscrapqty float32 `json:"ActScrapQty" xorm:"not null FLOAT(8)"`
Actreworkqty float32 `json:"ActReworkQty" xorm:"not null FLOAT(8)"`
Actqty1 float32 `json:"ActQty1" xorm:"not null FLOAT(8)"`
Actqty2 float32 `json:"ActQty2" xorm:"not null FLOAT(8)"`
Actqty3 float32 `json:"ActQty3" xorm:"not null FLOAT(8)"`
Actqty4 float32 `json:"ActQty4" xorm:"not null FLOAT(8)"`
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 []OMWorkorderqtyreclst `json:"itemlst" xorm:"-"`
}
/******数据表名******/
func (t *OmWorkorderqty) TableName() string {
return "OmWorkOrderQty"
}
/******************************************************************************
*
* @Function Name :
*-----------------------------------------------------------------------------
*
* @Description : 数据添加
*
* @Function Parameters:
*
* @Return Value :
*
* @Author : Lou Wenzhi
*
* @Date : 2021/3/6 8:47
*
******************************************************************************/
func (t *OmWorkorderqty) Add() error {
e := db.Eloquent.Master()
woqtytab := new(OmWorkorderqty)
/**主键:****/
affw, err := e.Table(t.TableName()).ID(core.PK{t.Plantnr, t.Workorderid}).Count(woqtytab)
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 *OmWorkorderqty) Del() error {
e := db.Eloquent.Master()
/**主键:****/
_, err := e.ID(core.PK{t.Plantnr, t.Workorderid}).Delete(&OmWorkorderqty{})
if err != nil {
return errors.New("删除失败!")
}
// 删除该订单所有的状态记录
return nil
}
/******************************************************************************
*
* @Function Name :
*-----------------------------------------------------------------------------
*
* @Description : 数据修改
*
* @Function Parameters:
*
* @Return Value :
*
* @Author : Lou Wenzhi
*
* @Date : 2021/3/6 8:47
*
******************************************************************************/
func (t *OmWorkorderqty) Update() error {
e := db.Eloquent.Master()
/**主键:****/
_, err := e.ID(core.PK{t.Plantnr, t.Workorderid}).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 *OmWorkorderqty) SelectOne() (data OmWorkorderqty, err error) {
e := db.Eloquent.Master()
/**主键:****/
_, err = e.ID(core.PK{t.Plantnr, t.Workorderid}).Get(&data)
if err != nil {
return
}
// 获取值列表
if err = e.Where("Plantnr = ? and ProdOrderId = ? ",
t.Plantnr, t.Workorderid).OrderBy("pos").Find(&data.Itemlst); err != nil {
return
}
return
}