// Copyright (c) Shenyang Leading Edge Intelligent Technology Co., Ltd. All rights reserved.
|
|
package models
|
|
|
|
import (
|
|
"errors"
|
|
"leit.com/aps_engine/db"
|
|
"time"
|
|
"xorm.io/core"
|
|
)
|
|
|
|
type WmsArtstock struct {
|
|
Plantnr int `json:"PlantNr" xorm:"not null pk INT(4)"`
|
|
Artid string `json:"ArtId" xorm:"not null pk NVARCHAR(80)"`
|
|
Warehousenr int `json:"WarehouseNr" xorm:"not null INT(4)"`
|
|
Status int `json:"Status" xorm:"not null INT(4)"`
|
|
Actstock float32 `json:"ActStock" xorm:"FLOAT(8)"`
|
|
Planstock float32 `json:"PlanStock" xorm:"FLOAT(8)"`
|
|
Reservedstock float32 `json:"ReservedStock" xorm:"FLOAT(8)"`
|
|
Availablestock float32 `json:"AvailableStock" xorm:"FLOAT(8)"`
|
|
Calculatedreorderpoint float32 `json:"CalculatedReorderPoint" xorm:"FLOAT(8)"`
|
|
Manualorderpoint float32 `json:"ManualOrderPoint" xorm:"FLOAT(8)"`
|
|
Calculatedoptimumbatchsize float32 `json:"CalculatedOptimumBatchSize" xorm:"FLOAT(8)"`
|
|
Manualoptimumlotsize float32 `json:"ManualOptimumLotSize" xorm:"FLOAT(8)"`
|
|
Manualorderdate time.Time `json:"ManualOrderDate" xorm:"DATETIME(8)"`
|
|
Maincontroller string `json:"MainController" xorm:"not null NVARCHAR(40)"`
|
|
Prodartid string `json:"ProdArtId" xorm:"not null NVARCHAR(80)"`
|
|
Abcclass string `json:"ABCClass" xorm:"not null NVARCHAR(2)"`
|
|
Qtyuomid string `json:"QtyUomId" xorm:"not null NVARCHAR(80)"`
|
|
Procurementkeynr int `json:"ProcurementKeyNr" xorm:"not null INT(4)"`
|
|
Purchasegroupid string `json:"PurchaseGroupId" xorm:"not null NVARCHAR(80)"`
|
|
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 *WmsArtstock) TableName() string {
|
|
return "WmsArtstock"
|
|
}
|
|
|
|
/******************************************************************************
|
|
*
|
|
* @Function Name :
|
|
*-----------------------------------------------------------------------------
|
|
*
|
|
* @Description : 数据添加
|
|
*
|
|
* @Function Parameters:
|
|
*
|
|
* @Return Value :
|
|
*
|
|
* @Author : Lou Wenzhi
|
|
*
|
|
* @Date : 2021/3/6 8:47
|
|
*
|
|
******************************************************************************/
|
|
func (t *WmsArtstock) Add() error {
|
|
e := db.Eloquent.Master()
|
|
count := new(WmsArtstock)
|
|
/**主键:****/
|
|
|
|
/******/
|
|
affw, err := e.Table(t.TableName()).ID(core.PK{t.Plantnr, t.Artid}).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 *WmsArtstock) Del() (err error) {
|
|
e := db.Eloquent.Master()
|
|
/**主键:****/
|
|
|
|
/******/
|
|
_, err = e.ID(core.PK{t.Plantnr, t.Artid}).Delete(&WmsArtstock{})
|
|
if err != nil {
|
|
return
|
|
}
|
|
return nil
|
|
}
|
|
|
|
/******************************************************************************
|
|
*
|
|
* @Function Name :
|
|
*-----------------------------------------------------------------------------
|
|
*
|
|
* @Description : 数据修改
|
|
*
|
|
* @Function Parameters:
|
|
*
|
|
* @Return Value :
|
|
*
|
|
* @Author : Lou Wenzhi
|
|
*
|
|
* @Date : 2021/3/6 8:47
|
|
*
|
|
******************************************************************************/
|
|
func (t *WmsArtstock) Update() error {
|
|
e := db.Eloquent.Master()
|
|
/**主键:****/
|
|
|
|
/******/
|
|
_, err := e.ID(core.PK{t.Plantnr, t.Artid}).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 *WmsArtstock) SelectOne() (WmsArtstock, error) {
|
|
e := db.Eloquent.Master()
|
|
var data WmsArtstock
|
|
/**主键:****/
|
|
|
|
/******/
|
|
_, err := e.ID(core.PK{t.Plantnr, t.Artid}).Get(&data)
|
|
if err != nil {
|
|
return data, err
|
|
}
|
|
return data, nil
|
|
}
|
|
|
|
/******************************************************************************
|
|
*
|
|
* @Function Name :
|
|
*-----------------------------------------------------------------------------
|
|
*
|
|
* @Description : 查找所有的物料库存
|
|
*
|
|
* @Function Parameters:
|
|
*
|
|
* @Return Value :
|
|
*
|
|
* @Author : LEO XUE
|
|
*
|
|
* @Date : 2021/5/10 8:47
|
|
*
|
|
******************************************************************************/
|
|
func (t *WmsArtstock) SelectAll() (datalst []WmsArtstock, err error) {
|
|
e := db.Eloquent.Master()
|
|
if err = e.Table(t.TableName()).Where("PlantNr = ?",t.Plantnr).OrderBy("ArtId").Find(&datalst); err != nil{
|
|
return
|
|
}
|
|
return
|
|
}
|