public JsonResult LoginForAPI(string ObjectName,string Password)
        {
            if (string.IsNullOrEmpty(ObjectName))
            {
                return null;
            }

            LoginReturnContext loginReturnContext = new LoginReturnContext();
            MMSServer mmsServer=null;

            if (cacheManage.GetCache<IList<MMSServer>>("MMSServers") == null || cacheManage.GetCache<IList<MMSServer>>("MMSServers").Count<=0)
            {
                IList<MMSServer> mmsServers = appServerService.FindMMS();
                if (mmsServers != null && mmsServers.Count>0)
                {
                    cacheManage.AddCache<IList<MMSServer>>("MMSServers", mmsServers);
                }
                else
                {
                    loginReturnContext.Status = 2;
                    return Json(loginReturnContext, JsonRequestBehavior.AllowGet);
                }
            }

            ContactPerson contactPerson = contactPersonService.FindContactPerson(t=>t.ContactName==ObjectName);
            if (contactPerson == null)
            {
                loginReturnContext.Status = 3;
            }
            else
            {
                if (contactPerson.Password != Password)
                {
                    loginReturnContext.Status = 1;
                    
                }
                else
                {
                    loginReturnContext.ObjectID = contactPerson.ObjectID;
                    mmsServer = FindMMS(contactPerson.ObjectID);
                    loginReturnContext.Status = 0;
                }
            }

            if (mmsServer!=null)
            {
                loginReturnContext.IP = mmsServer.MMS_IP;
                loginReturnContext.Port = mmsServer.MMS_Port;
                loginReturnContext.Status = 0;
            }

            return Json(loginReturnContext, JsonRequestBehavior.AllowGet);
        }
        private string HandleMMSUAInfo(ContactData contactData, IContactPersonService contactPersonService)
        {
            try
            {
                int           temp          = 0;
                ContactPerson contactPerson = contactPersonService.FindContactPerson(contactData.ObjectID);

                if (contactPerson == null)
                {
                    CommonVariables.LogTool.Log("ContactPerson " + contactData.ObjectID + " can not find");
                    return(string.Empty);
                }

                if (contactData.DataType == 0)
                {
                    contactPerson.ContactName = contactData.ContactName;
                    contactPerson.ImageSrc    = contactData.ImageSrc;
                    contactPerson.LatestTime  = contactData.LatestTime;
                    if (contactData.UpdateTime.CompareTo(contactPerson.UpdateTime) > 0)
                    {
                        contactPerson.UpdateTime = contactData.UpdateTime;
                    }
                    contactPersonService.UpdateContactPerson(contactPerson);
                }


                if (contactData.DataType == 1)
                {
                    ContactPersonList contactPersonList = contactPersonService.FindContactPersonList(contactData.ObjectID, contactData.DestinationObjectID);
                    if (contactPersonList == null)
                    {
                        contactPersonList = new ContactPersonList();
                        contactPersonList.DestinationObjectID = contactData.DestinationObjectID;
                        contactPersonList.IsDelete            = contactData.IsDelete;
                        contactPersonList.ObjectID            = contactData.ObjectID;
                        contactPersonList.UpdateTime          = contactData.UpdateTime;
                        contactPersonService.InsertContactPersonList(contactPersonList);
                    }
                    else
                    {
                        contactPersonList.IsDelete   = contactData.IsDelete;
                        contactPersonList.UpdateTime = contactData.UpdateTime;
                        contactPersonService.UpdateContactPersonList(contactPersonList);
                    }

                    if (contactPersonList.UpdateTime.CompareTo(contactPerson.UpdateTime) > 0)
                    {
                        contactPerson.UpdateTime = contactPersonList.UpdateTime;
                        contactPersonService.UpdateContactPerson(contactPerson);
                    }
                }
                else if (contactData.DataType == 2)
                {
                    ContactGroup contactGroup = contactPersonService.FindContactGroup(contactData.GroupObjectID);
                    if (contactGroup == null)
                    {
                        contactGroup               = new ContactGroup();
                        contactGroup.GroupName     = contactData.GroupName;
                        contactGroup.GroupObjectID = contactData.GroupObjectID;
                        contactGroup.IsDelete      = contactData.IsDelete;
                        contactGroup.UpdateTime    = contactData.UpdateTime;
                        contactPersonService.InsertNewGroup(contactGroup);
                    }
                    else
                    {
                        contactGroup.GroupName  = contactData.GroupName;
                        contactGroup.IsDelete   = contactData.IsDelete;
                        contactGroup.UpdateTime = contactData.UpdateTime;
                        contactPersonService.UpdateContactGroup(contactGroup);
                    }

                    if (contactGroup.UpdateTime.CompareTo(contactPerson.UpdateTime) > 0)
                    {
                        contactPerson.UpdateTime = contactGroup.UpdateTime;
                        contactPersonService.UpdateContactPerson(contactPerson);
                    }
                }
                else if (contactData.DataType == 3)
                {
                    ContactGroupSub contactGroupSub = contactPersonService.FindContactGroupSub(contactData.ContactGroupID, contactData.ContactPersonObjectID);
                    if (contactGroupSub == null)
                    {
                        contactGroupSub = new ContactGroupSub();
                        contactGroupSub.ContactGroupID        = contactData.ContactGroupID;
                        contactGroupSub.ContactPersonObjectID = contactData.ContactPersonObjectID;
                        contactGroupSub.IsDelete   = contactData.IsDelete;
                        contactGroupSub.UpdateTime = contactData.UpdateTime;
                        contactPersonService.InsertContactGroupSub(contactGroupSub);
                    }
                    else
                    {
                        contactGroupSub.IsDelete   = contactData.IsDelete;
                        contactGroupSub.UpdateTime = contactData.UpdateTime;
                        contactPersonService.UpdateContactGroupSub(contactGroupSub);
                    }

                    if (contactGroupSub.UpdateTime.CompareTo(contactPerson.UpdateTime) > 0)
                    {
                        contactPerson.UpdateTime = contactGroupSub.UpdateTime;
                        contactPersonService.UpdateContactPerson(contactPerson);
                    }
                }
                return(contactData.ContactDataID);
            }
            catch (Exception ex)
            {
                CommonVariables.LogTool.Log("get UAInfo " + ex.Message + ex.StackTrace);
                return(string.Empty);
            }
        }
Beispiel #3
0
        public IList <ContactData> PreparContactData(string objectID, string updateTime)
        {
            IList <ContactData> tempContactDatas = null;
            ContactData         tempContactData;

            ContactPerson contactPerson = contactPersonService.FindContactPerson(objectID);

            if (contactPerson != null)
            {
                tempContactDatas = new List <ContactData>();
                tempContactData  = new ContactData();

                tempContactData.ContactName   = contactPerson.ContactName;
                tempContactData.ImageSrc      = contactPerson.ImageSrc;
                tempContactData.LatestTime    = contactPerson.LatestTime;
                tempContactData.ObjectID      = contactPerson.ObjectID;
                tempContactData.UpdateTime    = contactPerson.UpdateTime;
                tempContactData.ContactDataID = Guid.NewGuid().ToString();
                tempContactData.DataType      = 0;
                tempContactDatas.Add(tempContactData);

                IList <ContactPersonList> contactPersonLists = contactPersonService.GetLastestContactPersonList(objectID, updateTime);
                IList <ContactGroup>      contactGroups      = contactPersonService.GetLastestContactGroup(objectID, updateTime);
                IList <ContactGroupSub>   contactGroupSubs   = contactPersonService.GetLastestContactGroupSub(objectID, updateTime);
                if (contactPersonLists != null && contactPersonLists.Count > 0)
                {
                    foreach (ContactPersonList contactPersonList in contactPersonLists)
                    {
                        tempContactData = new ContactData();

                        tempContactData.DestinationObjectID = contactPersonList.DestinationObjectID;
                        tempContactData.ContactPersonName   = contactPersonList.ContactPersonName;
                        tempContactData.ObjectID            = contactPersonList.ObjectID;
                        tempContactData.IsDelete            = contactPersonList.IsDelete;
                        tempContactData.UpdateTime          = contactPersonList.UpdateTime;
                        tempContactData.ContactDataID       = Guid.NewGuid().ToString();
                        tempContactData.DataType            = 1;
                        tempContactDatas.Add(tempContactData);
                    }
                }
                if (contactGroups != null && contactGroups.Count > 0)
                {
                    foreach (ContactGroup contactGroup in contactGroups)
                    {
                        tempContactData = new ContactData();
                        tempContactData.GroupObjectID = contactGroup.GroupObjectID;
                        tempContactData.GroupName     = contactGroup.GroupName;
                        tempContactData.IsDelete      = contactGroup.IsDelete;
                        tempContactData.UpdateTime    = contactGroup.UpdateTime;
                        tempContactData.ContactDataID = Guid.NewGuid().ToString();
                        tempContactData.DataType      = 2;
                        tempContactData.ObjectID      = objectID;
                        tempContactDatas.Add(tempContactData);
                    }
                }
                if (contactGroupSubs != null && contactGroupSubs.Count > 0)
                {
                    foreach (ContactGroupSub contactGroupSub in contactGroupSubs)
                    {
                        tempContactData = new ContactData();
                        tempContactData.ContactGroupID        = contactGroupSub.ContactGroupID;
                        tempContactData.ContactPersonObjectID = contactGroupSub.ContactPersonObjectID;
                        tempContactData.IsDelete      = contactGroupSub.IsDelete;
                        tempContactData.UpdateTime    = contactGroupSub.UpdateTime;
                        tempContactData.ContactDataID = Guid.NewGuid().ToString();
                        tempContactData.DataType      = 3;
                        tempContactData.ObjectID      = objectID;
                        tempContactDatas.Add(tempContactData);
                    }
                }
                return(tempContactDatas);
            }
            return(null);
        }