Example #1
0
        private string HandleMMSVerifyUAAddGroup(string data, MMSListenerToken token)
        {
            ClientAddGroup model = CommonVariables.serializer.Deserialize <ClientAddGroup>(data.Remove(0, CommonFlag.F_MMSVerifyUAAddGroup.Length));


            if (model != null && !string.IsNullOrEmpty(model.ObjectID))
            {
                ContactData     contactData     = new ContactData();
                ContactGroupSub contactGroupSub = token.ContactPersonService.FindContactGroupSub(model.ObjectID, model.GroupObjectID);
                if (contactGroupSub == null)
                {
                    ContactPerson contactPerson = token.ContactPersonService.FindContactPerson(model.ObjectID);
                    if (contactPerson != null)
                    {
                        ContactGroup contactGroup = token.ContactPersonService.FindContactGroup(model.GroupObjectID);
                        if (contactGroup != null)
                        {
                            contactGroupSub = new ContactGroupSub();
                            contactGroupSub.ContactGroupID        = contactGroup.GroupObjectID;
                            contactGroupSub.ContactPersonObjectID = model.ObjectID;
                            contactGroupSub.UpdateTime            = DateTime.Now.ToString(CommonFlag.F_DateTimeFormat);

                            if (token.ContactPersonService.InsertContactGroupSub(contactGroupSub) == 1)
                            {
                                token.ContactPersonService.UpdateContactUpdateTimeByGroup(contactGroup.GroupObjectID, contactGroupSub.UpdateTime);

                                ClientModel clientStatusModel = new ClientModel();

                                clientStatusModel.MCS_IP   = model.MCS_IP;
                                clientStatusModel.MCS_Port = model.MCS_Port;
                                clientStatusModel.ObjectID = model.ObjectID;

                                string mcs_UpdateTime = CommonVariables.SyncSocketClientIntance.SendMsg(clientStatusModel.MCS_IP, clientStatusModel.MCS_Port,
                                                                                                        CommonFlag.F_MCSReceiveMMSUAUpdateTime + CommonVariables.serializer.Serialize(clientStatusModel));

                                if (string.IsNullOrEmpty(mcs_UpdateTime))
                                {
                                    return(string.Empty);
                                }

                                IList <ContactData> contactDatas = CommonVariables.UAInfoContorl.PreparContactData(clientStatusModel.ObjectID, mcs_UpdateTime);

                                foreach (ContactData _contactData in contactDatas)
                                {
                                    CommonVariables.SyncSocketClientIntance.SendMsg(clientStatusModel.MCS_IP, clientStatusModel.MCS_Port,
                                                                                    CommonFlag.F_MCSReceiveUAInfo + CommonVariables.serializer.Serialize(_contactData));
                                }

                                contactGroup              = token.ContactPersonService.FindContactGroup(model.GroupObjectID);
                                contactData.GroupName     = contactGroup.GroupName;
                                contactData.GroupObjectID = contactGroup.GroupObjectID;
                                contactData.IsDelete      = contactGroup.IsDelete;
                                contactData.UpdateTime    = contactGroup.UpdateTime;
                                contactData.DataType      = 2;
                            }
                            else
                            {
                                return(string.Empty);
                            }
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    else
                    {
                        return(string.Empty);
                    }
                }
                else
                {
                    ContactGroup contactGroup = token.ContactPersonService.FindContactGroup(contactGroupSub.ContactGroupID);
                    contactData.GroupName     = contactGroup.GroupName;
                    contactData.GroupObjectID = contactGroup.GroupObjectID;
                    contactData.IsDelete      = contactGroup.IsDelete;
                    contactData.DataType      = 2;
                }
                return(CommonVariables.serializer.Serialize(contactData));
            }

            return(string.Empty);
        }
        private string HandleMMSVerifyUAAddGroup(string data, MMSListenerUDPToken token)
        {
            ClientAddGroup model = JsonConvert.DeserializeObject <ClientAddGroup>(data.Remove(0, CommonFlag.F_MMSVerifyUAAddGroup.Length));


            if (model != null && !string.IsNullOrEmpty(model.ObjectID))
            {
                ContactData     contactData     = new ContactData();
                ContactGroupSub contactGroupSub = token.ContactPersonService.FindContactGroupSub(model.ObjectID, model.GroupObjectID);
                if (contactGroupSub == null)
                {
                    ContactPerson contactPerson = token.ContactPersonService.FindContactPerson(model.ObjectID);
                    if (contactPerson != null)
                    {
                        ContactGroup contactGroup = token.ContactPersonService.FindContactGroup(model.GroupObjectID);
                        if (contactGroup != null)
                        {
                            contactGroupSub = new ContactGroupSub();
                            contactGroupSub.ContactGroupID        = contactGroup.GroupObjectID;
                            contactGroupSub.ContactPersonObjectID = model.ObjectID;
                            contactGroupSub.UpdateTime            = DateTime.Now.ToString(CommonFlag.F_DateTimeFormat);

                            if (token.ContactPersonService.InsertContactGroupSub(contactGroupSub) == 1)
                            {
                                token.ContactPersonService.UpdateContactUpdateTimeByGroup(contactGroup.GroupObjectID, contactGroupSub.UpdateTime);

                                ContactData contactDataGroupSub = new ContactData();
                                contactDataGroupSub.ContactGroupID        = contactGroupSub.ContactGroupID;
                                contactDataGroupSub.ContactPersonObjectID = contactGroupSub.ContactPersonObjectID;
                                contactDataGroupSub.IsDelete   = contactGroupSub.IsDelete;
                                contactDataGroupSub.UpdateTime = contactGroupSub.UpdateTime;
                                contactDataGroupSub.DataType   = 3;

                                foreach (MCSServer server in CommonVariables.MCSServers)
                                {
                                    CommonVariables.UAInfoContorl.AddContactDataIntoBuffer(contactDataGroupSub, server.MCS_IP, server.MCS_Port, ServerType.MCS);
                                }

                                contactGroup              = token.ContactPersonService.FindContactGroup(model.GroupObjectID);
                                contactData.GroupName     = contactGroup.GroupName;
                                contactData.GroupObjectID = contactGroup.GroupObjectID;
                                contactData.IsDelete      = contactGroup.IsDelete;
                                contactData.UpdateTime    = contactGroup.UpdateTime;
                                contactData.DataType      = 2;
                            }
                            else
                            {
                                return(string.Empty);
                            }
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    else
                    {
                        return(string.Empty);
                    }
                }
                else
                {
                    ContactGroup contactGroup = token.ContactPersonService.FindContactGroup(contactGroupSub.ContactGroupID);
                    contactData.GroupName     = contactGroup.GroupName;
                    contactData.GroupObjectID = contactGroup.GroupObjectID;
                    contactData.IsDelete      = contactGroup.IsDelete;
                    contactData.DataType      = 2;
                }
                CommonVariables.UAInfoContorl.AddContactDataIntoBuffer(contactData, token.IP, token.Port, ServerType.UA);
            }
            return(string.Empty);
        }