static void Main()
 {
     Graduate Kim = new Graduate();
     Assistant Lee = new Assistant();
     Professor Park = new Professor();
     Suwi Choi = new Suwi();
     Register(Kim);
     Register(Lee);
     Register(Park);
     Register(Choi);
 }
Example #2
0
 /// <summary>
 /// 根据条件得到分页日志列表
 /// </summary>
 /// <param name="c"></param>
 /// <param name="from"></param>
 /// <param name="count"></param>
 /// <returns></returns>
 public List <Log> GetPagedLogs(Criteria c, int from, int count)
 {
     Order[] o = new Order[] { new Order("Created", OrderMode.Desc) };
     return(Assistant.List <Log>(c, o, from, count));
 }
Example #3
0
 /// <summary>
 /// 获取全部日志总数
 /// </summary>
 /// <returns></returns>
 public int QueryAllLogCount()
 {
     Order[] o = new Order[] { new Order("ID") };
     return(Assistant.List <Log>(null, o).Count);
 }
Example #4
0
 /// <summary>
 /// 添加日志
 /// </summary>
 /// <param name="l">日志</param>
 public void AddLog(Log l)
 {
     l.Created = DateTime.Now;
     l.ID      = We7Helper.CreateNewID();
     Assistant.Insert(l);
 }
Example #5
0
 /// <summary>
 /// 获取类型列表
 /// </summary>
 /// <returns></returns>
 public List <AdviceType> GetAdviceTypes()
 {
     return(Assistant.List <AdviceType>(null, null));
 }
Example #6
0
 public void UpdatePoint(Point fav)
 {
     fav.Created = DateTime.Now;
     Assistant.Update(fav);
 }
Example #7
0
 /// <summary>
 /// 更新一个回复
 /// </summary>
 /// <param name="adviceReply"></param>
 /// <param name="fields"></param>
 public void UpdateReplyByAdviceID(AdviceReply adviceReply, string[] fields)
 {
     Assistant.Update(adviceReply, fields);
 }
Example #8
0
        /// <summary>
        /// 获取回复数量
        /// </summary>
        /// <param name="adviceID"></param>
        /// <returns></returns>
        public int GetAdviceReplyCount(string adviceID)
        {
            Criteria c = new Criteria(CriteriaType.Equals, "AdviceID", adviceID);

            return(Assistant.Count <AdviceReply>(c));
        }
Example #9
0
 /// <summary>
 /// 更新用户
 /// </summary>
 /// <param name="act">用户对象</param>
 /// <param name="fields">需要更新的字段集合</param>
 public void UpdateAccount(Account act, string[] fields)
 {
     Assistant.Update(act, fields);
 }
 public IActionResult Put(Assistant assistant)
 {
     assistantDomain.Update(assistant);
     return(Ok());
 }
 public IActionResult Post(Assistant assistant)
 {
     assistantDomain.Add(assistant);
     return(Ok());
 }
Example #12
0
        /// <summary>
        /// 按键值获取统计数字列表
        /// </summary>
        /// <param name="keyName"></param>
        /// <param name="keyValue"></param>
        /// <param name="begin"></param>
        /// <param name="end"></param>
        /// <returns></returns>
        public List <PVKeyCountView> GetKeyCountList(string keyName, string keyValue, DateTime begin, DateTime end)
        {
            IDatabase    db  = Assistant.GetDatabases()["We7.CMS.Common"];
            SqlStatement sql = new SqlStatement();

            string sqlCommandTxt =
                @"SELECT  DISTINCT  [{1}],COUNT([{1}]) AS [pvcount] FROM [PageVisitorHistory]  {0} 
           GROUP BY [{1}] ORDER BY COUNT([{1}]) DESC ";
            string strWhere = " where 1=1  ";

            if (begin <= end)
            {
                if (begin != DateTime.MinValue)
                {
                    strWhere += "and  [VisitDate] > {0}BEGIN";
                    DataParameter dp = new DataParameter();
                    dp.ParameterName = db.DbDriver.Prefix + "BEGIN";
                    dp.DbType        = DbType.DateTime;
                    dp.SourceColumn  = "VisitDate";
                    dp.Value         = begin;

                    sql.Parameters.Add(dp);
                }
                if (end != DateTime.MaxValue)
                {
                    strWhere += " and [VisitDate] < {0}END";
                    DataParameter dp2 = new DataParameter();
                    dp2.ParameterName = db.DbDriver.Prefix + "END";
                    dp2.Value         = end.AddDays(1);
                    dp2.DbType        = DbType.DateTime;
                    dp2.SourceColumn  = "VisitDate";
                    sql.Parameters.Add(dp2);
                }
            }
            if (keyValue.Trim() != "")
            {
                strWhere += " and [{1}] like {0}KEY";
                DataParameter dp3 = new DataParameter();
                dp3.ParameterName = db.DbDriver.Prefix + "KEY";
                dp3.Value         = "%" + keyValue.Trim() + "%";
                dp3.DbType        = DbType.String;
                sql.Parameters.Add(dp3);
            }

            strWhere      = string.Format(strWhere, db.DbDriver.Prefix, keyName);
            sqlCommandTxt = string.Format(sqlCommandTxt, strWhere, keyName);
            sql.SqlClause = sqlCommandTxt;

            db.DbDriver.FormatSQL(sql);
            List <PVKeyCountView> list = new List <PVKeyCountView>();

            using (IConnection conn = db.CreateConnection())
            {
                DataTable dt    = conn.Query(sql);
                int       total = 0;
                if (dt != null && dt.Rows.Count > 0)
                {
                    foreach (DataRow dr in dt.Rows)
                    {
                        PVKeyCountView kv = new PVKeyCountView();
                        kv.KeyValue = dr[keyName].ToString();
                        kv.Count    = Int32.Parse(dr["pvcount"].ToString());
                        total      += kv.Count;
                        list.Add(kv);
                    }
                    foreach (PVKeyCountView v in list)
                    {
                        v.Percent = (double)v.Count / (double)total * 100;
                    }
                }
            }
            return(list);
        }
Example #13
0
        /// <summary>
        /// 获取月访问统计
        /// </summary>
        /// <param name="channelID"></param>
        /// <param name="begin"></param>
        /// <param name="end"></param>
        /// <param name="orderKey"></param>
        /// <param name="sort"></param>
        /// <returns></returns>
        public List <PVKeyCountView> GetStatisticsMonthsList
            (string channelID, DateTime begin, DateTime end, string orderKey, bool sort)
        {
            IDatabase    db  = Assistant.GetDatabases()["We7.CMS.Common"];
            SqlStatement sql = new SqlStatement();

            string sqlCommandTxt = @"SELECT DISTINCT MONTH([VisitDate]) AS MyMonth, COUNT( MONTH([VisitDate]) ) AS [pvcount] FROM [StatisticsHistory] {0} GROUP BY MONTH([VisitDate]) ORDER BY MONTH([VisitDate])";

            //根据条件组织追加相应的sql语句
            string strWhere = " where 1=1  ";

            if (begin > end)
            {
                begin = new DateTime(DateTime.Now.Year, 01, 01);
                end   = new DateTime(DateTime.Now.Year, 01, 31);
            }
            if (begin != DateTime.MinValue)
            {
                strWhere += "and  [VisitDate] >= {0}BEGIN";
                DataParameter dp = new DataParameter();
                dp.ParameterName = db.DbDriver.Prefix + "BEGIN";
                dp.DbType        = DbType.DateTime;
                dp.SourceColumn  = "VisitDate";
                dp.Value         = begin;
                sql.Parameters.Add(dp);
            }
            if (end != DateTime.MaxValue)
            {
                strWhere += " and [VisitDate] < {0}END";
                DataParameter dp2 = new DataParameter();
                dp2.ParameterName = db.DbDriver.Prefix + "END";
                dp2.Value         = end.AddDays(1);
                dp2.DbType        = DbType.DateTime;
                dp2.SourceColumn  = "VisitDate";
                sql.Parameters.Add(dp2);
            }
            if (channelID.Trim() != "")
            {
                HttpContext Context   = HttpContext.Current;
                string      chFullUrl = ChannelHelper.GetFullUrl(channelID);
                if (chFullUrl != "")
                {
                    strWhere += " and Url like {0}Url";
                    DataParameter dp3 = new DataParameter();
                    dp3.ParameterName = db.DbDriver.Prefix + "Url";
                    dp3.Value         = chFullUrl + '%';
                    dp3.DbType        = DbType.String;
                    dp3.Size          = 255;
                    sql.Parameters.Add(dp3);
                }
            }

            strWhere      = string.Format(strWhere, db.DbDriver.Prefix);
            sqlCommandTxt = string.Format(sqlCommandTxt, strWhere);
            sql.SqlClause = sqlCommandTxt;

            sql = db.DbDriver.FormatSQL(sql);
            List <PVKeyCountView> list = new List <PVKeyCountView>();

            using (IConnection conn = db.CreateConnection())
            {
                DataTable dt    = conn.Query(sql);
                int       total = 0;
                foreach (DataRow dr in dt.Rows)
                {
                    PVKeyCountView kv = new PVKeyCountView();
                    kv.KeyValue = dr["MyMonth"].ToString();
                    kv.Count    = Int32.Parse(dr["pvcount"].ToString());
                    total      += kv.Count;
                    list.Add(kv);
                }
                //判断月份是不是十二个月份
                if (list.Count != 12)
                {
                    int num = 1;
                    for (int i = 1; i <= 12; i++)
                    {
                        PVKeyCountView pv = list.Find(delegate(PVKeyCountView view)
                        {
                            if (view.KeyValue != "0" + i.ToString() && view.KeyValue.IndexOf("0") == 0)
                            {
                                num = 0;
                            }
                            return(view.KeyValue == i.ToString() || view.KeyValue == "0" + i.ToString());
                        });

                        //如果没有 i 这个月份,则进行追加
                        if (pv == null)
                        {
                            PVKeyCountView kv = new PVKeyCountView();
                            if (num == 0 && i.ToString().Length < 2)
                            {
                                kv.KeyValue = "0" + i.ToString();
                            }
                            else
                            {
                                kv.KeyValue = i.ToString();
                            }
                            kv.Count = 0;
                            total   += kv.Count;
                            list.Add(kv);
                        }
                    }
                }
                //合算比例
                foreach (PVKeyCountView v in list)
                {
                    if (v.Count != 0)
                    {
                        v.Percent = (double)v.Count / (double)total * 100;
                    }
                }
            }
            list.Sort(new DinoComparer(orderKey, sort));
            return(list);
        }
Example #14
0
 public ConversationController(Assistant please)
 {
     _please = please;
 }
 private async void ApplyColor(object sender, EventArgs e)
 {
     await Assistant.ChangeColor(SelectedLight.Id, SelectedLight.Color);
 }
Example #16
0
 public ActionResult DeleteAssistant(int assistantId, int learningId, int companyId, int userId)
 {
     return(Assistant.Delete(assistantId, learningId, companyId, userId));
 }
Example #17
0
        public RepositoryResponse LoadAllEvaluationData_Alltime(string _loggedInUserID, string dept, string fromDate = "", string toDate = "")
        {
            baseModel = new RepositoryResponse();
            try
            {
                string F_subMonth = string.Empty;
                string F_subYear  = string.Empty;

                string TO_subMonth = string.Empty;
                string TO_subYear  = string.Empty;

                if (!string.IsNullOrEmpty(toDate))
                {
                    string[] sDate = toDate.Split('-');
                    TO_subMonth = sDate[0];
                    TO_subYear  = sDate[1];
                }

                if (!string.IsNullOrEmpty(fromDate))
                {
                    string[] sDate = fromDate.Split('-');
                    F_subMonth = sDate[0];
                    F_subYear  = sDate[1];
                }

                List <EvaluationModel> lstEvaluation = new List <EvaluationModel>();
                using (objSOMEntities = new SOMEntities())
                    using (objIPEntities = new IntranetPortalEntities())
                    {
                        var _NomDetails = (from em in objIPEntities.EmpMasters.AsEnumerable()
                                           join eva in objSOMEntities.Evaluations.AsEnumerable() on em.EmployeeNumber equals eva.EmployeeNumber.ToString()
                                           join nom in objSOMEntities.Nominations.AsEnumerable() on eva.NominationID equals nom.NominationId
                                           where
                                           //eva.EvaluatorID == _loggedInUserID &&
                                           nom.IsActive == true
                                           //&& (eva.Status == (int)NominationStatus.TQC_Assign_Evaluator || eva.Status == (int)NominationStatus.Evaluators_Save
                                           //|| eva.Status == (int)NominationStatus.Evaluators_Assign_TQC || eva.Status == (int)NominationStatus.TQC_Declare_SOM
                                           //|| eva.Status == (int)NominationStatus || eva.Status == (int)NominationStatus.Evaluators_Save)
                                           select new { em, eva, nom }).OrderByDescending(r => r.nom.ID).ToList();
                        int i = 1;
                        foreach (var item in _NomDetails)
                        {
                            //Evaluation objEvaluation = objSOMEntities.Evaluations.Where(
                            //                r => r.CreatedBy == _loggedInUserID
                            //                && r.NominationID.Value == item.nom.ID
                            //                && r.IsActive == true).FirstOrDefault();

                            //Evaluation objEvaluation = objSOMEntities.Evaluations.Where(
                            //                r=> r.NominationID == item.nom.NominationId
                            //                && r.IsActive == true).FirstOrDefault();

                            lstEvaluation.Add(ConvertEvaluation_DB2Model(item.em, item.eva, item.nom, i));
                        }

                        if (!string.IsNullOrEmpty(dept) && dept != "--ALL--")
                        {
                            lstEvaluation = lstEvaluation.Where(r => r.Department == dept).ToList();
                        }
                        if (!string.IsNullOrEmpty(F_subMonth) && !string.IsNullOrEmpty(F_subYear) && !string.IsNullOrEmpty(TO_subMonth) && !string.IsNullOrEmpty(TO_subYear))
                        {
                            string sDate = "01" + F_subMonth + "" + F_subYear;
                            string eDate = "30" + TO_subMonth + "" + TO_subYear;

                            DateTime sdt = Assistant.SOMDbToDateTimeForFilter(sDate, true);
                            DateTime edt = Assistant.SOMDbToDateTimeForFilter(eDate, false);

                            lstEvaluation = lstEvaluation.Where(r => r.IsActive == true &&
                                                                (r.CreatedDateForFilterAsDateTime.Date >= sdt.Date &&
                                                                 r.CreatedDateForFilterAsDateTime.Date <= edt.Date)).ToList();
                        }

                        baseModel = new RepositoryResponse {
                            success = true, message = "Get Evaluation details Successfully", Data = lstEvaluation.OrderByDescending(r => r.TotalScore)
                        };
                    }
            }
            catch (Exception ex)
            {
                baseModel = new RepositoryResponse {
                    success = false, message = ex.ToString()
                };
            }

            return(baseModel);
        }
Example #18
0
 public List <Account> GetAccountList(Criteria c, Order[] o, int begin, int count)
 {
     return(Assistant.List <Account>(c, o, begin, count));
 }
Example #19
0
        /// <summary>
        /// 删除一个回复
        /// </summary>
        /// <param name="id"></param>
        public void DeleteAdviceReply(string id)
        {
            AdviceReply ar = GetAdviceReply(id);

            Assistant.Delete(ar);
        }
Example #20
0
 public int GetAccountCountByCriteria(Criteria c)
 {
     return(Assistant.Count <Account>(c));
 }
Example #21
0
        /// <summary>
        /// 根据用户查询用户拥有的积分信息条数
        /// </summary>
        /// <param name="accountID">用户的AccountID</param>
        /// <returns>记录条数</returns>
        public int GetCountByAccount(string accountID)
        {
            Criteria query = new Criteria(CriteriaType.Equals, "AccountID", accountID);

            return(Assistant.Count <Point>(query));
        }
Example #22
0
 public List <Account> GetAccounts(Criteria c, Order[] o)
 {
     return(Assistant.List <Account>(c, o));
 }
Example #23
0
        /// <summary>
        /// 标题是否存在,true:存在,false:不存在
        /// </summary>
        /// <param name="title"></param>
        /// <returns></returns>
        public bool IsExistTitle(string title)
        {
            Criteria c = new Criteria(CriteriaType.Equals, "Title", title);

            return((Assistant.Count <AdviceType>(c) > 0) ? true : false);
        }
Example #24
0
        /// <summary>
        /// 添加一个用户
        /// </summary>
        /// <param name="act">用户对象</param>
        /// <returns>用户对象</returns>
        public Account AddAccount(Account act)
        {
            if (act.LoginName.Length < 3)
            {
                throw new Exception("用户名不能小于3位。");
            }

            if (act.Password.Length < 6)
            {
                throw new Exception("密码不能小于6位。");
            }

            if (GetAccountByLoginName(act.LoginName) != null)
            {
                throw new Exception(string.Format("登录名 {0} 已存在。", act.LoginName));
            }

            if (GetAccountByEmail(act.Email) != null)
            {
                throw new Exception(string.Format("邮件地址 {0} 已被使用。", act.Email));
            }

            We7Helper.AssertNotNull(Assistant, "AccountHelper.Assistant");
            We7Helper.AssertNotNull(act, "AddAccount.act");

            //利用事务进行帐户的相关权限删除
            //IDatabase db = Assistant.GetDatabases()["We7.CMS.Common"];
            //IConnection ic = Assistant.GetConnections()[db];
            //ic.IsTransaction = true;
            IConnection ic = Assistant.CreateConnetion(typeof(Account), true);//上边连接无效,此方法为重构方法

            try
            {
                act.ID      = We7Helper.CreateNewID();
                act.Created = DateTime.Now;
                if (GeneralConfigs.GetConfig().UserRegisterMode == "none")
                {
                    act.State = 1;
                }

                AccountRole ar = new AccountRole();
                ar.AccountID = act.ID;
                ar.RoleID    = "1";
                ar.RoleTitle = "注册用户";
                ar.ID        = We7Helper.CreateNewID();

                OnUserAdded(act);
                UpdateUserPassword(act);

                Assistant.Insert(ic, act, null);
                Assistant.Insert(ic, ar, null);

                ic.Commit();
                ic.Dispose();
                return(act);
            }
            catch (Exception ex)
            {
                ic.Rollback();
                ic.Dispose();
                throw ex;
            }
        }
 public void Add(Assistant assistant) => context.Assistants.Add(assistant);
Example #26
0
        /// <summary>
        /// 根据查询类获得用户数量
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public int QueryAccountCountByQuery(AccountQuery query)
        {
            Criteria c = CreateCriteriaByQuey(query);

            return(Assistant.Count <Account>(c));
        }
Example #27
0
        /// <summary>
        /// 查询日志记录数
        /// </summary>
        /// <param name="Author">用户</param>
        /// <param name="BeginDate">开始时间</param>
        /// <param name="EndDate">结束时间</param>
        /// <param name="Page">什么页面</param>
        /// <returns></returns>
        public int QueryLogCountByAll(string Author, DateTime BeginDate, DateTime EndDate, string Page)
        {
            Criteria c = CreateCriteriaByAll(Author, BeginDate, EndDate, Page);

            return(Assistant.Count <Log>(c));
        }
Example #28
0
 public ManageController(ApplicationUserManager userManager, ApplicationSignInManager signInManager, Assistant please)
 {
     _userManager   = userManager;
     _signInManager = signInManager;
     _please        = please;
 }
Example #29
0
 /// <summary>
 /// 根据条件获取日志总数
 /// </summary>
 /// <param name="c">Criteria</param>
 /// <returns></returns>
 public int QueryLogCount(Criteria c)
 {
     return(Assistant.Count <Log>(c));
 }
Example #30
0
        private EvaluationModel ConvertEvaluation_DB2Model(EmpMaster a, Evaluation b, Nomination c, int i)
        {
            EvaluationModel model = new EvaluationModel();

            model.SlNo = i;
            if (a != null)
            {
                model.Name           = a.EmployeeName;
                model.EmployeeNumber = a.EmployeeNumber;
                model.Department     = a.Department;
            }
            if (b != null)
            {
                model.AheadOfPlan        = b.AheadOfPlan;
                model.AsPerPlan          = b.AsPerPlan;
                model.BasedOnInstruction = b.BasedOnInstruction;

                model.BreakthroughImprovement         = b.BreakthroughImprovement;
                model.CoordiantionWithInTheDept       = b.CoordiantionWithInTheDept;
                model.CoordinationWithAnotherFunction = b.CoordinationWithAnotherFunction;

                model.CoordinationWithMultipleFunctions = b.CoordinationWithMultipleFunctions;
                model.Delayed = b.Delayed;

                model.EvaluatorID = b.EvaluatorID;
                model.FollowedUp  = b.FollowedUp;
                model.ID          = b.ID;

                model.Implemented = b.Implemented;
                model.ImplementedInAllApplicableAreas = b.ImplementedInAllApplicableAreas;
                model.ImplementedPartially            = b.ImplementedPartially;
                model.ImprovementFromCurrentSituation = b.ImprovementFromCurrentSituation;

                model.IsActive             = (bool)b.IsActive;
                model.Participated         = b.Participated;
                model.PreventionOfaFailure = b.PreventionOfaFailure;

                model.ProactiveIdeaGeneratedBySelf  = b.ProactiveIdeaGeneratedBySelf;
                model.ReactiveIdeaDrivenBySituation = b.ReactiveIdeaDrivenBySituation;
                model.ScopeIdentified = b.ScopeIdentified;

                model.Status     = (NominationStatus)b.Status;
                model.TotalScore = b.TotalScore.ToString();
            }
            if (c != null)
            {
                model.NominationIdentity   = c.ID;
                model.NominationID         = c.NominationId;
                model.SummaryOfAchievement = c.Idea;
                model.SubmittedMonth       = c.SubmittedMonth;
                model.SubmittedYear        = c.SubmittedYear;

                model.Cost  = c.Cost;
                model.Time  = c.Time;
                model.Paper = c.Paper;
                if (!string.IsNullOrEmpty(c.CreatedDate))
                {
                    model.CreatedDateForFilterAsDateTime = Assistant.SOMDbToDateTimePicker(c.CreatedDate.Substring(0, 8));
                }
            }
            return(model);
        }
Example #31
0
        static void Main(string[] args)
        {
            Console.WriteLine("Choose from the list below to see the details");
            Console.Write("1. Teachers \n2. Lecturers \n3. ShcoolTeachers \n4. CollegeTeachers\n5. Professors \n6. Assistants \nChoose: ");
            byte choice = byte.Parse(Console.ReadLine());

            Console.WriteLine();
            switch (choice)
            {
                case 1:
                    Teacher first = new Teacher("Ivan", "Georgiev", 6, "Math");
                    first.HomeworksCheck();
                    first.GoodDay();
                    first.GoodBye();
                    Console.WriteLine();
                    Teacher second = new Teacher("Anton", "Ivanov", 9, "Literature");
                    first.HomeworksCheck();
                    first.GoodDay();
                    first.GoodBye();
                    break;
                case 2:
                    Lecturer lecturer1 = new Lecturer("Georgy", "Tonchev", 7, "University of Sofia");
                    lecturer1.Lectures();
                    lecturer1.HomeworksCheck();
                    lecturer1.GoodDay();
                    Console.WriteLine();
                    Lecturer lecturer2 = new Lecturer("Stoyan", "Iliev", 5, "University of Varna");
                    lecturer2.Lectures();
                    lecturer2.HomeworksCheck();
                    lecturer2.GoodDay();
                    break;
                case 3:
                    SchoolTeacher school1 = new SchoolTeacher("Stoimen", "Peshev", 10, "Biology");
                    school1.ListClasses();
                    school1.HomeworksCheck();
                    school1.Fun();
                    Console.WriteLine();
                    SchoolTeacher school2 = new SchoolTeacher("Iliana", "Arnaudova", 4, "Chemistry");
                    school2.ListClasses();
                    school2.HomeworksCheck();
                    school2.Fun();
                    Console.WriteLine();
                    SchoolTeacher school3 = new SchoolTeacher("Plamen", "Stoychev", 12, "Physics");
                    school3.ListClasses();
                    school3.HomeworksCheck();
                    school3.Fun();
                    break;
                case 4:
                    CollegeTeacher coll1 = new CollegeTeacher("Anelia", "Ivanova", 12, "Music", "122 SOU");
                    coll1.ScienceAtricle();
                    coll1.HomeworksCheck();
                    Console.WriteLine();
                    CollegeTeacher coll2 = new CollegeTeacher("Martin", "Krustev", 11, "Sports", "American College");
                    coll2.ScienceAtricle();
                    coll2.HomeworksCheck();
                    break;
                case 5:
                    Professor prof1 = new Professor("Kristian", "Rashev", 8, "University of Shumen", "PHD, St.n.s");
                    prof1.ExamsHold();
                    prof1.HomeworksCheck();
                    prof1.Lectures();
                    Console.WriteLine();
                    Professor prof2 = new Professor("Javor", "Aleksandrov", 14, "University of Sofia", "PHD, Prof.");
                    prof2.ExamsHold();
                    prof2.HomeworksCheck();
                    prof2.Lectures();
                    break;
                case 6:
                    Assistant assis1 = new Assistant("Todor", "Donev", 7, "University of Varna", true);
                    assis1.Lectures();
                    assis1.CheckExams();
                    assis1.HomeworksCheck();
                    Console.WriteLine();
                    Assistant assis2 = new Assistant("Lilia", "Tinkova", 4, "University of Varna", false);
                    assis2.Lectures();
                    assis2.CheckExams();
                    assis2.HomeworksCheck();
                    Console.WriteLine();
                    Assistant assis3 = new Assistant("Assen", "Bogdanov", 3, "University of Sofia", false);
                    assis3.Lectures();
                    assis3.CheckExams();
                    assis3.HomeworksCheck();
                    break;
                default:
                    Console.WriteLine("No such option!");
                    break;
            }
            Console.WriteLine();
            Console.WriteLine("Number of objects created in this class: {0}", Person.ObjectCount);
            Console.WriteLine();
        }
Example #32
0
        /// <summary>
        /// 根据回复邮件更新反馈回复
        /// 此方法仅用于反射环境
        /// </summary>
        /// <param name="subject">标题</param>
        /// <param name="sn">反馈信息流水号</param>
        /// <param name="body">回复内容</param>
        /// <param name="replyTime">回复时间</param>
        /// <returns></returns>
        public bool UpdateReplyByEmail(string subject, string sn, string body, string replyTime, string rawManage, string user, string stateText)
        {
            int           start = sn.IndexOf("#");
            HelperFactory hf    = (HelperFactory)HttpContext.Current.Application[HelperFactory.ApplicationID];

            Assistant = hf.Assistant;
            AdviceReplyHelper arh = new AdviceReplyHelper();

            arh.Assistant = hf.Assistant;
            string adviceSN = sn.Remove(start, 1);

            if (adviceSN != "")
            {
                int intAdviceSN = 0;
                if (!int.TryParse(adviceSN, out intAdviceSN))
                {
                    return(false);
                }
                Criteria c = new Criteria(CriteriaType.Equals, "SN", adviceSN);
                if (Assistant.Count <Advice>(c) < 0)
                {
                    return(false);
                }
                else
                {
                    List <Advice> advice = Assistant.List <Advice>(c, null);
                    for (int i = 0; i < advice.Count; i++)
                    {
                        if (advice != null)
                        {
                            //处理反馈回复信息
                            AdviceReply adviceReply = new AdviceReply();
                            adviceReply.AdviceID = advice[i].ID;
                            adviceReply.Title    = subject;
                            adviceReply.Content  = body;
                            Account account = AccountHelper.GetAccountByEmail(user);
                            if (account == null)
                            {
                                return(true);
                            }
                            adviceReply.UserID     = account.ID;
                            adviceReply.MailBody   = rawManage;
                            adviceReply.CreateDate = DateTime.Now;
                            adviceReply.Updated    = DateTime.Now;

                            //更新反馈信息
                            advice[i].ReplyCount         += 1;//增加回复数
                            advice[i].Updated             = DateTime.Now;
                            advice[i].ToHandleTime        = Convert.ToDateTime(replyTime);
                            advice[i].ToOtherHandleUserID = adviceReply.UserID;
                            if (stateText == "上报办理")
                            {
                                advice[i].State        = (int)AdviceState.Checking;
                                advice[i].ProcessState = ((int)AdviceState.Checking).ToString();
                            }
                            else
                            {
                                advice[i].State        = (int)AdviceState.Finished;
                                advice[i].ProcessState = ((int)ProcessStates.Finished).ToString();
                            }
                            advice[i].IsRead = 1;

                            //处理反馈进度
                            Processing ap = ProcessingHelper.GetAdviceProcess(advice[i]);
                            if (ap == null)
                            {
                                ap                  = new Processing();
                                ap.ObjectID         = advice[i].ID;
                                ap.CurLayerNO       = "1";
                                ap.ProcessAccountID = adviceReply.UserID;
                                ap.ProcessDirection = "1";
                                ap.Remark           = "";
                                ap.CreateDate       = DateTime.Now;
                            }
                            ap.UpdateDate       = DateTime.Now;
                            ap.ProcessAccountID = adviceReply.UserID;
                            ap.ProcessDirection = advice[i].ProcessDirection = "1";

                            #region 孟添加
                            AdviceType adviceType = AdviceTypeHelper.GetAdviceType(advice[i].TypeID);
                            switch (advice[i].State)
                            {
                            case (int)AdviceState.All:
                                break;

                            case (int)AdviceState.WaitAccept:
                            case (int)AdviceState.WaitHandle:
                            case (int)AdviceState.Finished:
                                break;

                            case (int)AdviceState.Checking:
                                int auditLevel = 0;
                                if (We7Helper.IsNumber(advice[i].ProcessState))
                                {
                                    auditLevel = int.Parse(advice[i].ProcessState);
                                }
                                if (auditLevel < 0)
                                {
                                    auditLevel = 0;
                                }
                                auditLevel += 1;
                                if (auditLevel > adviceType.FlowSeries)
                                {
                                    advice[i].ProcessState = ((int)AdviceState.Finished).ToString();
                                    advice[i].State        = (int)AdviceState.Finished;
                                    advice[i].MustHandle   = 0;
                                }
                                else
                                {
                                    advice[i].ProcessState = auditLevel.ToString();
                                }
                                break;

                            default:
                                break;
                            }
                            ap.CurLayerNO = advice[i].ProcessState;
                            #endregion

                            OperationAdviceInfo(adviceReply, advice[i], ap);
                            if (advice[i].State == (int)AdviceState.Finished)
                            {
                                AdviceEmailConfigs    adviceEmailConfigs = new AdviceEmailConfigs();
                                AdviceEmailConfigInfo info = adviceEmailConfigs["ReplyUser"];
                                SendResultMailToAdvicer(advice[i], adviceReply, null, info);
                            }
                            if (stateText == "上报办理")
                            {
                                advice[i].State = (int)AdviceState.Checking;
                                AdviceReplyHelper.UpdateReplyByAdviceID(adviceReply, null);
                            }
                            else
                            {
                                advice[i].State = (int)AdviceState.Finished;
                            }
                            UpdateAdvice(advice[i], new string[] { "IsRead", "State", "ProcessState" });
                        }
                    }
                    return(true);
                }
            }
            else
            {
                return(false);
            }
        }