示例#1
0
        public AgentObject Put(AgentObjectDTO obj)
        {
            AgentObject agentObject = new AgentObject();

            agentObject = obj.Map <AgentObject>();
            SessionManager.DoWork(session =>
            {
                if (obj.Id == Guid.Empty)
                {
                    agentObject.Id = Guid.NewGuid();

                    agentObject.AgentObjectType    = new AgentObjectType();
                    agentObject.AgentObjectType.Id = obj.AgentObjectTypeId;

                    agentObject.AgentObjectDetail    = new AgentObjectDetail();
                    agentObject.AgentObjectDetail.Id = agentObject.Id;
                    agentObject.AgentObjectDetail.NumberOfSection = obj.NumberOfSection;
                    agentObject.AgentObjectDetail.ScienceResearch = obj.ScienceResearch;
                }
                else
                {
                    if (agentObject != null)
                    {
                        agentObject = agentObject = obj.Map <AgentObject>();
                        agentObject.AgentObjectType      = new AgentObjectType();
                        agentObject.AgentObjectType.Id   = obj.AgentObjectTypeId;
                        agentObject.TargetGroupDetails   = new List <TargetGroupDetail>();
                        agentObject.AgentObjectDetail    = new AgentObjectDetail();
                        agentObject.AgentObjectDetail.Id = obj.Id;
                        agentObject.AgentObjectDetail.NumberOfSection = obj.NumberOfSection;
                        agentObject.AgentObjectDetail.ScienceResearch = obj.ScienceResearch;
                    }
                }
                foreach (var id in obj.TargetGroupDetailIds)
                {
                    agentObject.TargetGroupDetails.Add(new TargetGroupDetail()
                    {
                        Id = id
                    });
                }
                session.SaveOrUpdate(agentObject);
                session.SaveOrUpdate(agentObject.AgentObjectDetail);
            });
            //SessionManager.DoWork(session => session.SaveOrUpdate(obj));
            return(agentObject);
        }
示例#2
0
        public AgentObjectDTO GetClass(Guid id)
        {
            AgentObjectDTO result = new AgentObjectDTO();

            SessionManager.DoWork(session =>
            {
                AgentObject agentObject = session.Query <AgentObject>().SingleOrDefault(a => a.Id == id);
                if (agentObject != null)
                {
                    result = agentObject.Map <AgentObjectDTO>();
                    foreach (TargetGroupDetail tg in agentObject.TargetGroupDetails)
                    {
                        result.TargetGroupDetailIds.Add(tg.Id);
                    }
                    AgentObjectDetail AgentObjectDetail = session.Query <AgentObjectDetail>().SingleOrDefault(d => d.Id == id);
                    if (AgentObjectDetail != null)
                    {
                        result.NumberOfSection = AgentObjectDetail.NumberOfSection;
                        result.ScienceResearch = AgentObjectDetail.ScienceResearch;
                    }
                }
            });
            return(result);
        }