|
@ -16,6 +16,7 @@ import ( |
|
|
meModel "LAPP_ACURA_MOM_BACKEND/models/me" |
|
|
meModel "LAPP_ACURA_MOM_BACKEND/models/me" |
|
|
omModel "LAPP_ACURA_MOM_BACKEND/models/om" |
|
|
omModel "LAPP_ACURA_MOM_BACKEND/models/om" |
|
|
model "LAPP_ACURA_MOM_BACKEND/models/pln" |
|
|
model "LAPP_ACURA_MOM_BACKEND/models/pln" |
|
|
|
|
|
baseSvr "LAPP_ACURA_MOM_BACKEND/services/base" |
|
|
omSvr "LAPP_ACURA_MOM_BACKEND/services/om" |
|
|
omSvr "LAPP_ACURA_MOM_BACKEND/services/om" |
|
|
"github.com/go-xorm/xorm" |
|
|
"github.com/go-xorm/xorm" |
|
|
"strconv" |
|
|
"strconv" |
|
@ -506,15 +507,15 @@ func (impl *CustOrderServiceImplement) LockCustOrder(user *global.User, custOrde |
|
|
if err := session.Begin(); err != nil { |
|
|
if err := session.Begin(); err != nil { |
|
|
return err |
|
|
return err |
|
|
} |
|
|
} |
|
|
now := time.Now() |
|
|
|
|
|
|
|
|
//now := time.Now()
|
|
|
today := time.Now().Format("060102") |
|
|
today := time.Now().Format("060102") |
|
|
todayInt, _ := strconv.Atoi(today) |
|
|
todayInt, _ := strconv.Atoi(today) |
|
|
year := now.Year() |
|
|
|
|
|
month := int(now.Month()) |
|
|
|
|
|
day := now.Day() |
|
|
|
|
|
yearStr := baseModel.YEAR_MAP[year] |
|
|
|
|
|
monthStr := baseModel.MONTH_MAP[month] |
|
|
|
|
|
dayStr := baseModel.DAY_MAP[day] |
|
|
|
|
|
|
|
|
//year := now.Year()
|
|
|
|
|
|
//month := int(now.Month())
|
|
|
|
|
|
//day := now.Day()
|
|
|
|
|
|
//yearStr := baseModel.YEAR_MAP[year]
|
|
|
|
|
|
//monthStr := baseModel.MONTH_MAP[month]
|
|
|
|
|
|
//dayStr := baseModel.DAY_MAP[day]
|
|
|
custOrderDao := dal.NewCustOrderDAO(session, user.PlantNr, user.UserId) |
|
|
custOrderDao := dal.NewCustOrderDAO(session, user.PlantNr, user.UserId) |
|
|
projectDao := meDal.NewProjectDAO(session, user.PlantNr, user.UserId) |
|
|
projectDao := meDal.NewProjectDAO(session, user.PlantNr, user.UserId) |
|
|
snrDao := baseDal.NewSnrDAO(session, user.PlantNr, user.UserId) |
|
|
snrDao := baseDal.NewSnrDAO(session, user.PlantNr, user.UserId) |
|
@ -575,24 +576,30 @@ func (impl *CustOrderServiceImplement) LockCustOrder(user *global.User, custOrde |
|
|
// 创建序列工单和工单状态
|
|
|
// 创建序列工单和工单状态
|
|
|
for i := 0; i < orderData.CustOrder.PlanQty; i++ { |
|
|
for i := 0; i < orderData.CustOrder.PlanQty; i++ { |
|
|
syncKey = custOrderId + "-" + strconv.Itoa(i) |
|
|
syncKey = custOrderId + "-" + strconv.Itoa(i) |
|
|
serialNumberStr, err := snrDao.GetNextSnr(project.SerialOrderSnr) |
|
|
|
|
|
|
|
|
//serialNumberStr, err := snrDao.GetNextSnr(project.SerialOrderSnr)
|
|
|
|
|
|
//if err != nil {
|
|
|
|
|
|
// _ = session.Rollback()
|
|
|
|
|
|
// return grmi.NewBusinessError("生成工单流水号失败, error:" + err.Error())
|
|
|
|
|
|
//}
|
|
|
|
|
|
//serialNumber, err := strconv.Atoi(serialNumberStr)
|
|
|
|
|
|
//if err != nil {
|
|
|
|
|
|
// _ = session.Rollback()
|
|
|
|
|
|
// return grmi.NewBusinessError("流水号规则错误, error:" + err.Error())
|
|
|
|
|
|
//}
|
|
|
|
|
|
//first := serialNumber / 34
|
|
|
|
|
|
//if first > 34 {
|
|
|
|
|
|
// _ = session.Rollback()
|
|
|
|
|
|
// return grmi.NewBusinessError("超过流水号支持的范围")
|
|
|
|
|
|
//}
|
|
|
|
|
|
//second := serialNumber % 34
|
|
|
|
|
|
//firstStr := baseModel.NUMBER_MAP[first]
|
|
|
|
|
|
//secondStr := baseModel.NUMBER_MAP[second]
|
|
|
|
|
|
snrSvr := baseSvr.NewSnrService() |
|
|
|
|
|
serialNumber, err := snrSvr.GetNextSnr(user, session, project.SerialOrderSnr) |
|
|
if err != nil { |
|
|
if err != nil { |
|
|
_ = session.Rollback() |
|
|
_ = session.Rollback() |
|
|
return grmi.NewBusinessError("生成工单流水号失败, error:" + err.Error()) |
|
|
return grmi.NewBusinessError("生成工单流水号失败, error:" + err.Error()) |
|
|
} |
|
|
} |
|
|
serialNumber, err := strconv.Atoi(serialNumberStr) |
|
|
|
|
|
if err != nil { |
|
|
|
|
|
_ = session.Rollback() |
|
|
|
|
|
return grmi.NewBusinessError("流水号规则错误, error:" + err.Error()) |
|
|
|
|
|
} |
|
|
|
|
|
first := serialNumber / 34 |
|
|
|
|
|
if first > 34 { |
|
|
|
|
|
_ = session.Rollback() |
|
|
|
|
|
return grmi.NewBusinessError("超过流水号支持的范围") |
|
|
|
|
|
} |
|
|
|
|
|
second := serialNumber % 34 |
|
|
|
|
|
firstStr := baseModel.NUMBER_MAP[first] |
|
|
|
|
|
secondStr := baseModel.NUMBER_MAP[second] |
|
|
|
|
|
for _, product := range productLi { |
|
|
for _, product := range productLi { |
|
|
workLine, exist := workLineMap[product.DefaultWorkLineId] |
|
|
workLine, exist := workLineMap[product.DefaultWorkLineId] |
|
|
if !exist { |
|
|
if !exist { |
|
@ -607,8 +614,9 @@ func (impl *CustOrderServiceImplement) LockCustOrder(user *global.User, custOrde |
|
|
} |
|
|
} |
|
|
workLineMap[product.DefaultWorkLineId] = workLine |
|
|
workLineMap[product.DefaultWorkLineId] = workLine |
|
|
} |
|
|
} |
|
|
machineCode := product.MachineCode |
|
|
|
|
|
serialOrderId := machineCode + yearStr + monthStr + dayStr + firstStr + secondStr + "0" + product.ColorValue |
|
|
|
|
|
|
|
|
//machineCode := product.MachineCode
|
|
|
|
|
|
//serialOrderId := machineCode + yearStr + monthStr + dayStr + firstStr + secondStr + "0" + product.ColorValue
|
|
|
|
|
|
serialOrderId := product.MachineCode + serialNumber + product.ColorValue |
|
|
schedKeyStr, err := snrDao.GetNextSnr(workLine.SchedKeySnr) |
|
|
schedKeyStr, err := snrDao.GetNextSnr(workLine.SchedKeySnr) |
|
|
if err != nil { |
|
|
if err != nil { |
|
|
_ = session.Rollback() |
|
|
_ = session.Rollback() |
|
@ -744,15 +752,15 @@ func (impl *CustOrderServiceImplement) LockCustOrderForGantt(user *global.User, |
|
|
if err := session.Begin(); err != nil { |
|
|
if err := session.Begin(); err != nil { |
|
|
return err |
|
|
return err |
|
|
} |
|
|
} |
|
|
now := time.Now() |
|
|
|
|
|
|
|
|
//now := time.Now()
|
|
|
today := time.Now().Format("060102") |
|
|
today := time.Now().Format("060102") |
|
|
todayInt, _ := strconv.Atoi(today) |
|
|
todayInt, _ := strconv.Atoi(today) |
|
|
year := now.Year() |
|
|
|
|
|
month := int(now.Month()) |
|
|
|
|
|
day := now.Day() |
|
|
|
|
|
yearStr := baseModel.YEAR_MAP[year] |
|
|
|
|
|
monthStr := baseModel.MONTH_MAP[month] |
|
|
|
|
|
dayStr := baseModel.DAY_MAP[day] |
|
|
|
|
|
|
|
|
//year := now.Year()
|
|
|
|
|
|
//month := int(now.Month())
|
|
|
|
|
|
//day := now.Day()
|
|
|
|
|
|
//yearStr := baseModel.YEAR_MAP[year]
|
|
|
|
|
|
//monthStr := baseModel.MONTH_MAP[month]
|
|
|
|
|
|
//dayStr := baseModel.DAY_MAP[day]
|
|
|
custOrderDao := dal.NewCustOrderDAO(session, user.PlantNr, user.UserId) |
|
|
custOrderDao := dal.NewCustOrderDAO(session, user.PlantNr, user.UserId) |
|
|
projectDao := meDal.NewProjectDAO(session, user.PlantNr, user.UserId) |
|
|
projectDao := meDal.NewProjectDAO(session, user.PlantNr, user.UserId) |
|
|
snrDao := baseDal.NewSnrDAO(session, user.PlantNr, user.UserId) |
|
|
snrDao := baseDal.NewSnrDAO(session, user.PlantNr, user.UserId) |
|
@ -813,24 +821,30 @@ func (impl *CustOrderServiceImplement) LockCustOrderForGantt(user *global.User, |
|
|
// 创建序列工单和工单状态
|
|
|
// 创建序列工单和工单状态
|
|
|
for i := 0; i < orderData.CustOrder.PlanQty; i++ { |
|
|
for i := 0; i < orderData.CustOrder.PlanQty; i++ { |
|
|
syncKey = custOrderId + "-" + strconv.Itoa(i+1) |
|
|
syncKey = custOrderId + "-" + strconv.Itoa(i+1) |
|
|
serialNumberStr, err := snrDao.GetNextSnr(project.SerialOrderSnr) |
|
|
|
|
|
|
|
|
//serialNumberStr, err := snrDao.GetNextSnr(project.SerialOrderSnr)
|
|
|
|
|
|
//if err != nil {
|
|
|
|
|
|
// _ = session.Rollback()
|
|
|
|
|
|
// return grmi.NewBusinessError("生成工单流水号失败, error:" + err.Error())
|
|
|
|
|
|
//}
|
|
|
|
|
|
//serialNumber, err := strconv.Atoi(serialNumberStr)
|
|
|
|
|
|
//if err != nil {
|
|
|
|
|
|
// _ = session.Rollback()
|
|
|
|
|
|
// return grmi.NewBusinessError("流水号规则错误, error:" + err.Error())
|
|
|
|
|
|
//}
|
|
|
|
|
|
//first := serialNumber / 34
|
|
|
|
|
|
//if first > 34 {
|
|
|
|
|
|
// _ = session.Rollback()
|
|
|
|
|
|
// return grmi.NewBusinessError("超过流水号支持的范围")
|
|
|
|
|
|
//}
|
|
|
|
|
|
//second := serialNumber % 34
|
|
|
|
|
|
//firstStr := baseModel.NUMBER_MAP[first]
|
|
|
|
|
|
//secondStr := baseModel.NUMBER_MAP[second]
|
|
|
|
|
|
snrSvr := baseSvr.NewSnrService() |
|
|
|
|
|
serialNumber, err := snrSvr.GetNextSnr(user, session, project.SerialOrderSnr) |
|
|
if err != nil { |
|
|
if err != nil { |
|
|
_ = session.Rollback() |
|
|
_ = session.Rollback() |
|
|
return grmi.NewBusinessError("生成工单流水号失败, error:" + err.Error()) |
|
|
return grmi.NewBusinessError("生成工单流水号失败, error:" + err.Error()) |
|
|
} |
|
|
} |
|
|
serialNumber, err := strconv.Atoi(serialNumberStr) |
|
|
|
|
|
if err != nil { |
|
|
|
|
|
_ = session.Rollback() |
|
|
|
|
|
return grmi.NewBusinessError("流水号规则错误, error:" + err.Error()) |
|
|
|
|
|
} |
|
|
|
|
|
first := serialNumber / 34 |
|
|
|
|
|
if first > 34 { |
|
|
|
|
|
_ = session.Rollback() |
|
|
|
|
|
return grmi.NewBusinessError("超过流水号支持的范围") |
|
|
|
|
|
} |
|
|
|
|
|
second := serialNumber % 34 |
|
|
|
|
|
firstStr := baseModel.NUMBER_MAP[first] |
|
|
|
|
|
secondStr := baseModel.NUMBER_MAP[second] |
|
|
|
|
|
for _, product := range productLi { |
|
|
for _, product := range productLi { |
|
|
workLine, exist := workLineMap[product.DefaultWorkLineId] |
|
|
workLine, exist := workLineMap[product.DefaultWorkLineId] |
|
|
if !exist { |
|
|
if !exist { |
|
@ -845,8 +859,9 @@ func (impl *CustOrderServiceImplement) LockCustOrderForGantt(user *global.User, |
|
|
} |
|
|
} |
|
|
workLineMap[product.DefaultWorkLineId] = workLine |
|
|
workLineMap[product.DefaultWorkLineId] = workLine |
|
|
} |
|
|
} |
|
|
machineCode := product.MachineCode |
|
|
|
|
|
serialOrderId := machineCode + yearStr + monthStr + dayStr + firstStr + secondStr + "0" + product.ColorValue |
|
|
|
|
|
|
|
|
//machineCode := product.MachineCode
|
|
|
|
|
|
//serialOrderId := machineCode + yearStr + monthStr + dayStr + firstStr + secondStr + "0" + product.ColorValue
|
|
|
|
|
|
serialOrderId := product.MachineCode + serialNumber + product.ColorValue |
|
|
schedKeyStr, err := snrDao.GetNextSnr(workLine.SchedKeySnr) |
|
|
schedKeyStr, err := snrDao.GetNextSnr(workLine.SchedKeySnr) |
|
|
if err != nil { |
|
|
if err != nil { |
|
|
_ = session.Rollback() |
|
|
_ = session.Rollback() |
|
|