예제 #1
0
    public string deleteCompanyWithId(string id)
    {
        Companies  cm = mongoDbase.getCompanyById(ObjectId.Parse(id));
        CompaniesR c  = raven.getCompanyByEmail(cm.Email);

        if (c != null && cm != null)
        {
            if (c.Employees != null && cm.Employees != null)
            {
                for (int i = 0; i < c.Employees.Count; i++)
                {
                    var temp = raven.getWorkerById(c.Employees[i]);
                    temp.CompanyId   = null;
                    temp.CompanyName = null;
                    raven.updateWorker(temp);
                }

                //mongo
                for (int i = 0; i < cm.Employees.Count; i++)
                {
                    var temp = mongoDbase.getWorkerById(cm.Employees[i]);
                    temp.CompanyId   = null;
                    temp.CompanyName = null;
                    mongoDbase.updateWorker(temp);
                }
            }
        }

        var res  = raven.deleteCompany(c);
        var resm = mongoDbase.removeCompany(cm.Id);

        var resdb = raven.deleteDBprefEntry(c.Id.ToString(), c.Email, c.Password);

        Changes ch = new Changes()
        {
            Actor1           = c.Id,
            Actor1Name       = c.CompanyName,
            Actor1Collection = "CompaniesR",
            Type             = " has deleted profile from the network!",
            Time             = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
        };

        Changes changeFinal = raven.addFriendChange(ch);

        if (res != null && resm != null && changeFinal != null)
        {
            return("Company deleted!");
        }
        else
        {
            return("Company not found!");
        }
    }