public ServiceAccesssResp GetResp(ServiceAccesssReq req) { if (req != null) { ServiceAccesssReqBody body = null; ServiceAccesssReqHead head = null; foreach (var item in req.Items) { if (item != null && item is ServiceAccesssReqBody) body = item as ServiceAccesssReqBody; else if (item != null && item is ServiceAccesssReqHead) head = item as ServiceAccesssReqHead; } using (Aspirecn.Entities.Cssp.CsspEntitiesContainer entities = new CsspEntitiesContainer()) { ServiceAccessReqEntity reqEntity = AddRequestRecords(body, head, entities); Aspirecn.Entities.Cssp.ServiceAccessRespEntity resp = AddResponseRecords(body, head, entities, reqEntity); entities.ServiceAccessReqEntities.Add(reqEntity); entities.SaveChanges(); return this.ConvertToResponse(resp, req, head, body); } } return null; }
private Aspirecn.Entities.Cssp.ServiceAccessRespEntity AddResponseRecords( ServiceAccesssReqBody body, ServiceAccesssReqHead head, CsspEntitiesContainer entities, ServiceAccessReqEntity reqEntity) { int tranID = this.GenerateRandomNumber(); string orderpushid = this.GenerateOrderPushIDStr(tranID); Aspirecn.Entities.Cssp.ServiceAccessRespEntity resp = new ServiceAccessRespEntity() { Head = new RespHead() { Dest_Address = reqEntity.Head.Dest_Address, Send_Address = reqEntity.Head.Send_Address, Version = "1.0.0", TransactionID = tranID.ToString() }, Body = new ResponseType() { Price = "0.01", RetCode = "0", SPID = reqEntity.Body.Request.SPID, SPServiceID = reqEntity.Body.Request.SPServiceID, OrderID = orderpushid, PushID = orderpushid }, // ServiceAccessReqEntity = reqEntity }; //resp.ServiceAccessReqEntity = reqEntity; //reqEntity.ServiceAccessRespEntity = resp; //entities.ServiceAccessRespEntities.Add(resp); return resp; }