SJA APS后端代码
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.

62 lines
1.6 KiB

package service
import (
"github.com/go-xorm/xorm"
"leit.com/leit_seat_aps/common"
"leit.com/leit_seat_aps/db"
"strings"
"time"
)
type BL_Batchorder struct {
Partid string
DDT string // 交货期
PlanQty int
Type string
batordtab db.Pln_batchorder
}
func (bl_bo *BL_Batchorder) Create(materialtab db.Pln_material, session *xorm.Session) (err error) {
var (
batordsn string
batordnr string
)
// 获取批次流水号
if batordsn, err = GetSysStringParameter(2, "*", "JIS_BATCHORDER_SN"); err != nil {
return
}
// 基于设置获取客户订单号
if strings.TrimSpace(batordsn) != "" {
if batordnr, err = SN_GetNextSnrBySession(strings.TrimSpace(batordsn), session); err != nil {
return
}
} else {
if batordnr, err = SN_GetNextSnrBySession("BATCHORDER", session); err != nil {
return
}
}
// 创建客户订单头
bl_bo.batordtab = db.Pln_batchorder{}
bl_bo.batordtab.Finr = db.G_FINR
bl_bo.batordtab.Batchordernr = batordnr
bl_bo.batordtab.Partid = materialtab.Cust_materialid
bl_bo.batordtab.Orderinfo = materialtab.Descr2
bl_bo.batordtab.Ordertype = bl_bo.Type
bl_bo.batordtab.Worklineid = materialtab.Worklineid
bl_bo.batordtab.Jph = materialtab.Jph
bl_bo.batordtab.Status = common.WO_STATUS_UNPLANED
bl_bo.batordtab.Planqty = bl_bo.PlanQty
bl_bo.batordtab.Duedate = bl_bo.DDT
bl_bo.batordtab.Startoemseq = 0
bl_bo.batordtab.Endoemseq = 0
bl_bo.batordtab.Lastuser = "demand_service"
bl_bo.batordtab.Credatuz = common.Date(time.Now().Unix(), "YYYYMMDDHHmmss")
if err = bl_bo.batordtab.Insert(session); err != nil {
return
}
return
}