| | |
| | | "apsClient/model" |
| | | "apsClient/model/common" |
| | | "apsClient/model/response" |
| | | "apsClient/nsq" |
| | | "apsClient/pkg/ecode" |
| | | "apsClient/pkg/logx" |
| | | "apsClient/pkg/structx" |
| | | "fmt" |
| | | "github.com/jinzhu/gorm" |
| | | "time" |
| | |
| | | } |
| | | if err == nil { |
| | | return data, nil |
| | | } |
| | | |
| | | if err == gorm.ErrRecordNotFound { //如果数据库没有从云端获取 |
| | | caller := nsq.NewCaller(fmt.Sprintf(constvar.NsqTopicProcessParamsRequest, conf.Conf.NsqConf.NodeId), fmt.Sprintf(constvar.NsqTopicProcessParamsResponse, conf.Conf.NsqConf.NodeId)) |
| | | var result common.ResponseProcessParams |
| | | err = caller.Call(common.RequestProcessParams{ |
| | | WorkOrder: procedure.WorkOrderID, |
| | | OrderId: procedure.OrderID, |
| | | Product: order.ProductName, |
| | | Procedure: procedure.ProceduresInfo.ProcedureName, |
| | | Device: procedure.ProceduresInfo.DeviceName, |
| | | DeviceId: conf.Conf.System.DeviceId, |
| | | }, &result, time.Second*3) |
| | | if err != nil { |
| | | logx.Errorf("TaskStart GetProcessModel error:%v", err.Error()) |
| | | return |
| | | } |
| | | if result.ParamsMap == nil { |
| | | logx.Errorf("TaskStart GetProcessModel response miss process params:%v", result) |
| | | return |
| | | } |
| | | processModel = new(model.ProcessModel) |
| | | err = structx.AssignTo(result, &processModel) |
| | | return processModel, err |
| | | } |
| | | return |
| | | } |