Beispiel #1
0
        public List <object> SendEmail(string id)
        {
            admin              HeadOffice = new Admin().Search(d => d.admin_CompanyID == id && d.admin_IsDel == false)[0];
            List <company>     com        = new Companyhandling().SearchSonCompany(id);
            SendEmailOperation se         = new SendEmailOperation();
            List <object>      result     = new List <object>();

            foreach (company c in com)
            {
                List <staff> sf = base.Search(d => d.staff_OwnCompanyId == c.company_Id && d.staff_IsDel == false);
                testInfo     ti = new TestInfo().Search(d => d.testInfo_OwnComPanyId == c.company_Id && d.testInfo_IsDel == false)[0];
                foreach (staff s in sf)
                {
                    if (!se.SendEmail(s.staff_Email, HeadOffice.company.company_Name, HeadOffice.admin_PhoneNum, ti.testInfo_StartTime.ToString(), ti.testInfo_Deadline.ToString(), s.staff_Username, "123456", "staff"))
                    {
                        if (result.Count == 0)
                        {
                            result.Add(0);
                            result.Add("邮件发送结束,但有有员工发送失败,这可能是网络不通畅造成的,你可以在员工管理处重发邮件或在试一次!");
                        }
                        result.Add(s.staff_Id);
                        result.Add(s.staff_TrueName);
                        result.Add(s.company.company_Name);
                        result.Add(s.staff_Department);
                        result.Add(s.staff_Email);
                    }
                }
            }
            if (result.Count == 0)
            {
                result.Add(1);
                result.Add("邮件全部发送成功!");
            }
            return(result);
        }
        public string SendEmail(List <staff> staffs, string topComId)
        {
            SendEmailOperation seo         = new SendEmailOperation();
            string             email       = null;
            string             companyId   = topComId;
            string             companyName = null;
            string             phone       = null;
            string             startTime   = null;
            string             deadline    = null;
            string             username    = null;
            string             password    = null;
            TestInfo           ti          = new TestInfo();
            Admin        a      = new Admin();
            List <admin> admins = a.Search(u => u.admin_CompanyID == companyId && u.admin_IsDel == false);

            phone       = admins[0].admin_PhoneNum;
            companyName = admins[0].company.company_Name;
            List <testInfo> testinfos = ti.Search(u => u.testInfo_OwnComPanyId == companyId && u.testInfo_IsDel == false);

            if (testinfos.Count <= 0)
            {
                return("请先在问卷管理中设置问卷信息,再执行!");
            }
            startTime = testinfos[0].testInfo_StartTime.ToString();
            deadline  = testinfos[0].testInfo_Deadline.ToString();
            List <string> notSend = new List <string>();

            foreach (var s in staffs)
            {
                email    = s.staff_Email;
                username = s.staff_Username;
                password = s.staff_Password;
                if (!seo.SendEmail(email, companyName, phone, startTime, deadline, username, "123456", "staff"))
                {
                    notSend.Add(s.staff_TrueName);
                }
            }
            if (notSend.Count == 0)
            {
                return("ok");
            }
            else
            {
                return(notSend.ToString());
            }
        }