feat:完善项目
This commit is contained in:
@ -130,12 +130,31 @@ func (c *Instance) Workbench(materialID uint64, kind, page, pageSize int) (*basi
|
||||
mSysUserRole := model.NewSysUserRole()
|
||||
roleIDs := make([]string, 0)
|
||||
|
||||
err := model2.Pluck(mSysUserRole.SysUserRole, "id", &roleIDs, model2.NewWhere("uid", c.UID))
|
||||
err := model2.Pluck(mSysUserRole.SysUserRole, "role_id", &roleIDs, model2.NewWhere("uid", c.UID))
|
||||
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return nil, nil
|
||||
mWorkInstance := model.NewWorkInstance()
|
||||
|
||||
where := make([]*model2.ModelWhere, 0)
|
||||
|
||||
if materialID > 0 {
|
||||
where = append(where, model2.NewWhere("w.material_id", materialID))
|
||||
}
|
||||
if kind > 0 {
|
||||
where = append(where, model2.NewWhere("w.kind", kind))
|
||||
}
|
||||
var count int64
|
||||
|
||||
out := make([]*model.WorkInstanceInfo, 0)
|
||||
|
||||
if out, err = mWorkInstance.Workbench(&model.WorkbenchCondition{
|
||||
UID: c.UIDToString(), RoleIDs: roleIDs,
|
||||
}, page, pageSize, &count, where...); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &basic.PageDataResponse{Data: out, Count: count}, nil
|
||||
}
|
||||
|
||||
func (c *Instance) Detail(id uint64) (interface{}, error) {
|
||||
@ -187,14 +206,16 @@ func (c *Instance) Launch(params *InstanceLaunchParams) error {
|
||||
return errors.New("操作错误,无工单流程信息,请先核实数据")
|
||||
}
|
||||
mWorkInstance.Schedule = mWorkSchedule.ID
|
||||
mWorkInstance.Status = model2.WorkInstanceStatusForComplete
|
||||
// 下一流程
|
||||
nextWorkSchedule := new(model.WorkScheduleInfo)
|
||||
|
||||
if nextWorkSchedule, err = mWorkSchedule.NextSchedule(mWorkInstance.IsAssist == model2.WorkInstanceAssistForYes); err != nil {
|
||||
return err
|
||||
}
|
||||
if nextWorkSchedule == nil {
|
||||
mWorkInstance.Status = model2.WorkInstanceStatusForComplete
|
||||
if nextWorkSchedule != nil {
|
||||
mWorkInstance.Status = model2.WorkInstanceStatusForOngoing
|
||||
mWorkInstance.Schedule = nextWorkSchedule.ID
|
||||
}
|
||||
return orm.GetDB().Transaction(func(tx *gorm.DB) error {
|
||||
if err = model2.Create(mWorkInstance.WorkInstance, tx); err != nil {
|
||||
@ -240,7 +261,7 @@ func (c *Instance) Examine(id uint64, status int, remark string, isAssist int) e
|
||||
mWorkSchedule := model.NewWorkSchedule()
|
||||
mWorkSchedule.ID = mWorkInstance.Schedule
|
||||
|
||||
if isExist, err = model2.First(mWorkSchedule); err != nil {
|
||||
if isExist, err = model2.First(mWorkSchedule.WorkSchedule); err != nil {
|
||||
return err
|
||||
} else if !isExist {
|
||||
return errors.New("操作错误,未知的工单流程")
|
||||
|
Reference in New Issue
Block a user