|
|
@ -11,6 +11,7 @@ import ( |
|
|
|
//logDal "LAPP_ACURA_MOM_BACKEND/dao/log"
|
|
|
|
dal "LAPP_ACURA_MOM_BACKEND/dao/om" |
|
|
|
"LAPP_ACURA_MOM_BACKEND/db" |
|
|
|
"LAPP_ACURA_MOM_BACKEND/global" |
|
|
|
"LAPP_ACURA_MOM_BACKEND/grmi" |
|
|
|
"LAPP_ACURA_MOM_BACKEND/infra/logger" |
|
|
|
meMeta "LAPP_ACURA_MOM_BACKEND/meta/me" |
|
|
@ -20,7 +21,6 @@ import ( |
|
|
|
//logModel "LAPP_ACURA_MOM_BACKEND/models/log"
|
|
|
|
model "LAPP_ACURA_MOM_BACKEND/models/om" |
|
|
|
"LAPP_ACURA_MOM_BACKEND/utils" |
|
|
|
"LAPP_ACURA_MOM_BACKEND/global" |
|
|
|
"strconv" |
|
|
|
"time" |
|
|
|
) |
|
|
@ -150,6 +150,7 @@ func (impl *WorkOrderServiceImplement) InsertOne(user *global.User, entity *mode |
|
|
|
dao := dal.NewWorkOrderDAO(session, user.PlantNr, user.UserId) |
|
|
|
statusDao := dal.NewWorkOrderStatusDAO(session, user.PlantNr, user.UserId) |
|
|
|
qtyDao := dal.NewWorkOrderQtyDAO(session, user.PlantNr, user.UserId) |
|
|
|
snrDao := baseDal.NewSnrDAO(session, user.PlantNr, user.UserId) |
|
|
|
//artDemandHeadDao := logDal.NewArtDemandHeadDAO(session, user.PlantNr, user.UserId)
|
|
|
|
//artDemandLstDao := logDal.NewArtDemandLstDAO(session, user.PlantNr, user.UserId)
|
|
|
|
workOrder := entity.WorkOrder |
|
|
@ -169,9 +170,7 @@ func (impl *WorkOrderServiceImplement) InsertOne(user *global.User, entity *mode |
|
|
|
return grmi.NewBusinessError("创建的订单状态计划时间不合规") |
|
|
|
} |
|
|
|
if workOrder.WorkOrderId == "" { |
|
|
|
snr := new(models.Snrtab) |
|
|
|
snr.Finr = user.PlantNr |
|
|
|
workOrderId, err := snr.GetNextSnrWithSession(session, "WorkOrder") |
|
|
|
workOrderId, err := snrDao.GetNextSnr("WorkOrder") |
|
|
|
if err != nil { |
|
|
|
_ = session.Rollback() |
|
|
|
log.Error("workOrder InsertOne get work order id failed, error: " + err.Error()) |
|
|
@ -1631,6 +1630,7 @@ func (impl *WorkOrderServiceImplement) CreateLockWorkOrder(user *global.User, en |
|
|
|
bomHeadDao := meDal.NewBomHeadDAO(session, user.PlantNr, user.UserId) |
|
|
|
bomLstDao := meDal.NewBomLstDAO(session, user.PlantNr, user.UserId) |
|
|
|
artWorkLineDao := baseDal.NewArtWorkLineLstDAO(session, user.PlantNr, user.UserId) |
|
|
|
snrDao := baseDal.NewSnrDAO(session, user.PlantNr, user.UserId) |
|
|
|
// 校验物料属性
|
|
|
|
now := time.Now() |
|
|
|
year := now.Year() |
|
|
@ -1803,19 +1803,13 @@ func (impl *WorkOrderServiceImplement) CreateLockWorkOrder(user *global.User, en |
|
|
|
guideRuleMap[guideRule.OperationId] = guideRule |
|
|
|
} |
|
|
|
// TODO 临时修改
|
|
|
|
s := new(models.Snrtab) |
|
|
|
s.Finr = user.PlantNr |
|
|
|
s.Snrid = project.WorkOrderSnr |
|
|
|
snrData, err := s.SelectOne() |
|
|
|
snr, err := snrDao.SelectOne(project.WorkOrderSnr) |
|
|
|
if err != nil { |
|
|
|
_ = session.Rollback() |
|
|
|
return grmi.NewBusinessError("获取流水号数据失败, error:" + err.Error()) |
|
|
|
} |
|
|
|
length := snrData.Length |
|
|
|
|
|
|
|
snr := new(models.Snrtab) |
|
|
|
snr.Finr = user.PlantNr |
|
|
|
workOrderId, err := snr.GetNextSnrWithSession(session, project.WorkOrderSnr) |
|
|
|
length := snr.Length |
|
|
|
workOrderId, err := snrDao.GetNextSnr(project.WorkOrderSnr) |
|
|
|
if err != nil { |
|
|
|
_ = session.Rollback() |
|
|
|
return grmi.NewBusinessError("生成工单流水号失败") |
|
|
@ -1947,18 +1941,14 @@ func (impl *WorkOrderServiceImplement) CreateLockWorkOrder(user *global.User, en |
|
|
|
} |
|
|
|
if entity.WorkLineId == "X243X247" { |
|
|
|
if i%2 == 0 { |
|
|
|
snr := new(models.Snrtab) |
|
|
|
snr.Finr = user.PlantNr |
|
|
|
serialNum, err = snr.GetNextSnrWithSession(session, project.SerialOrderSnr) |
|
|
|
serialNum, err = snrDao.GetNextSnr(project.SerialOrderSnr) |
|
|
|
if err != nil { |
|
|
|
_ = session.Rollback() |
|
|
|
return grmi.NewBusinessError("获取序列工单流水号失败, error:" + err.Error()) |
|
|
|
} |
|
|
|
} |
|
|
|
} else { |
|
|
|
snr := new(models.Snrtab) |
|
|
|
snr.Finr = user.PlantNr |
|
|
|
serialNum, err = snr.GetNextSnrWithSession(session, project.SerialOrderSnr) |
|
|
|
serialNum, err = snrDao.GetNextSnr(project.SerialOrderSnr) |
|
|
|
if err != nil { |
|
|
|
_ = session.Rollback() |
|
|
|
return grmi.NewBusinessError("获取序列工单流水号失败, error:" + err.Error()) |
|
|
@ -2197,6 +2187,7 @@ func (impl *WorkOrderServiceImplement) SplitWorkOrder(user *global.User, workOrd |
|
|
|
bomHeadDao := meDal.NewBomHeadDAO(session, user.PlantNr, user.UserId) |
|
|
|
bomLstDao := meDal.NewBomLstDAO(session, user.PlantNr, user.UserId) |
|
|
|
opDetailDao := dal.NewSerialOrderOPDetailDAO(session, user.PlantNr, user.UserId) |
|
|
|
snrDao := baseDal.NewSnrDAO(session, user.PlantNr, user.UserId) |
|
|
|
workOrder, err := dao.SelectOneJoin(workOrderId) |
|
|
|
if err != nil { |
|
|
|
_ = session.Rollback() |
|
|
@ -2355,15 +2346,12 @@ func (impl *WorkOrderServiceImplement) SplitWorkOrder(user *global.User, workOrd |
|
|
|
_ = session.Rollback() |
|
|
|
return grmi.NewBusinessError("项目数据不存在, projectId:" + workOrder.WorkOrder.ProjectId) |
|
|
|
} |
|
|
|
snr := models.Snrtab{} |
|
|
|
snr.Finr = user.PlantNr |
|
|
|
snr.Snrid = project.WorkOrderSnr |
|
|
|
snrData, err := snr.SelectOne() |
|
|
|
snr, err := snrDao.SelectOne(project.WorkOrderSnr) |
|
|
|
if err != nil { |
|
|
|
_ = session.Rollback() |
|
|
|
return grmi.NewBusinessError("查询流水号数据失败, error:" + err.Error()) |
|
|
|
} |
|
|
|
length := snrData.Length + 4 |
|
|
|
length := snr.Length + 4 |
|
|
|
sortStr := strconv.Itoa(sortInt + 1) |
|
|
|
sub := length - len(sortStr) |
|
|
|
for i := 0; i < sub; i++ { |
|
|
@ -2401,6 +2389,7 @@ func (impl *WorkOrderServiceImplement) CreateSplitWorkOrder(session *xorm.Sessio |
|
|
|
bomHeadDao := meDal.NewBomHeadDAO(session, user.PlantNr, user.UserId) |
|
|
|
bomLstDao := meDal.NewBomLstDAO(session, user.PlantNr, user.UserId) |
|
|
|
artWorkLineDao := baseDal.NewArtWorkLineLstDAO(session, user.PlantNr, user.UserId) |
|
|
|
snrDao := baseDal.NewSnrDAO(session, user.PlantNr, user.UserId) |
|
|
|
// 校验物料属性
|
|
|
|
now := time.Now() |
|
|
|
year := now.Year() |
|
|
@ -2551,9 +2540,7 @@ func (impl *WorkOrderServiceImplement) CreateSplitWorkOrder(session *xorm.Sessio |
|
|
|
for _, guideRule := range guideRuleLi { |
|
|
|
guideRuleMap[guideRule.OperationId] = guideRule |
|
|
|
} |
|
|
|
snr := new(models.Snrtab) |
|
|
|
snr.Finr = user.PlantNr |
|
|
|
workOrderId, err := snr.GetNextSnrWithSession(session, project.WorkOrderSnr) |
|
|
|
workOrderId, err := snrDao.GetNextSnr(project.WorkOrderSnr) |
|
|
|
if err != nil { |
|
|
|
return grmi.NewBusinessError("生成工单流水号失败") |
|
|
|
} |
|
|
@ -2676,19 +2663,15 @@ func (impl *WorkOrderServiceImplement) CreateSplitWorkOrder(session *xorm.Sessio |
|
|
|
} |
|
|
|
if workLineId == "X243X247" { |
|
|
|
if i%2 == 0 { |
|
|
|
snr := new(models.Snrtab) |
|
|
|
snr.Finr = user.PlantNr |
|
|
|
serialNum, err = snr.GetNextSnrWithSession(session, project.SerialOrderSnr) |
|
|
|
serialNum, err = snrDao.GetNextSnr(project.SerialOrderSnr) |
|
|
|
if err != nil { |
|
|
|
_ = session.Rollback() |
|
|
|
return grmi.NewBusinessError("获取序列工单流水号失败, error:" + err.Error()) |
|
|
|
} |
|
|
|
} |
|
|
|
} else { |
|
|
|
snr := new(models.Snrtab) |
|
|
|
snr.Finr = user.PlantNr |
|
|
|
serialNum, err = snr.GetNextSnrWithSession(session, project.SerialOrderSnr) |
|
|
|
if err != nil { |
|
|
|
serialNum, err = snrDao.GetNextSnr(project.SerialOrderSnr) |
|
|
|
_ = session.Rollback() |
|
|
|
return grmi.NewBusinessError("获取序列工单流水号失败, error:" + err.Error()) |
|
|
|
} |
|
|
@ -2900,6 +2883,7 @@ func (impl *WorkOrderServiceImplement) SortWorkOrder(user *global.User, workOrde |
|
|
|
workOrderDao := dal.NewWorkOrderDAO(session, user.PlantNr, user.UserId) |
|
|
|
serialOrderDao := dal.NewSerialOrderDAO(session, user.PlantNr, user.UserId) |
|
|
|
projectDao := meDal.NewProjectDAO(session, user.PlantNr, user.UserId) |
|
|
|
snrDao := baseDal.NewSnrDAO(session, user.PlantNr, user.UserId) |
|
|
|
snrLengthMap := make(map[string]int) |
|
|
|
var firstSort string |
|
|
|
var sortInt int |
|
|
@ -2930,16 +2914,13 @@ func (impl *WorkOrderServiceImplement) SortWorkOrder(user *global.User, workOrde |
|
|
|
_ = session.Rollback() |
|
|
|
return grmi.NewBusinessError("项目数据不存在, projectID:" + workOrder.WorkOrder.ProjectId) |
|
|
|
} |
|
|
|
snr := new(models.Snrtab) |
|
|
|
snr.Finr = user.PlantNr |
|
|
|
snr.Snrid = project.WorkOrderSnr |
|
|
|
snrData, err := snr.SelectOne() |
|
|
|
snr, err := snrDao.SelectOne(project.WorkOrderSnr) |
|
|
|
if err != nil { |
|
|
|
_ = session.Rollback() |
|
|
|
return grmi.NewBusinessError("获取流水号数据失败, error:" + err.Error()) |
|
|
|
} |
|
|
|
snrLengthMap[workOrder.WorkOrder.ProjectId] = snrData.Length |
|
|
|
length = snrData.Length |
|
|
|
length = snr.Length |
|
|
|
snrLengthMap[workOrder.WorkOrder.ProjectId] = snr.Length |
|
|
|
} |
|
|
|
|
|
|
|
if index == 0 { |
|
|
|