Exemplo n.º 1
0
        void BGW_DoWork(object sender, DoWorkEventArgs e)
        {
            //取得社團資料
            List <CLUBRecord> ClubPrimaryList = _AccessHelper.Select <CLUBRecord>(string.Format("UID = '{0}'", this.PrimaryKey));

            if (ClubPrimaryList.Count != 1)
            {
                //如果取得2門以上 或 沒取得社團時
                e.Cancel = true;
                return;
            }

            ClubPrimary     = ClubPrimaryList[0];
            Log_ClubPrimary = ClubPrimary.CopyExtension();

            //取得科別資料
            deptList = tool.GetQueryDeptList();
        }
Exemplo n.º 2
0
        public override string Import(List <Campus.DocumentValidator.IRowStream> Rows)
        {
            if (mOption.Action == ImportAction.InsertOrUpdate)
            {
                List <CLUBRecord> ClubInsertList = new List <CLUBRecord>();
                List <CLUBRecord> ClubUpdateList = new List <CLUBRecord>();

                foreach (IRowStream Row in Rows)
                { //教師名稱
                    string SchoolYear = Row.GetValue("學年度");
                    string Semester   = Row.GetValue("學期");
                    string CLUBName   = Row.GetValue("社團名稱");
                    string name       = SchoolYear + "," + Semester + "," + CLUBName;

                    if (Importbot.ClubDic.ContainsKey(name)) //更新
                    {
                        CLUBRecord club = Importbot.ClubDic[name];
                        if (!Log_Dic.ContainsKey(club.UID))
                        {
                            ImputLog i_n = new ImputLog();
                            i_n.lo_CLUB = club.CopyExtension();
                            Log_Dic.Add(club.UID, i_n);
                        }

                        Importbot.SetClub(Row, club);
                        ClubUpdateList.Add(club);
                    }
                    else
                    {
                        //新增
                        CLUBRecord club = new CLUBRecord();
                        club.SchoolYear = int.Parse(SchoolYear);
                        club.Semester   = int.Parse(Semester);
                        club.ClubName   = CLUBName;

                        Importbot.SetClub(Row, club);
                        ClubInsertList.Add(club);
                    }
                }

                if (ClubInsertList.Count > 0)
                {
                    StringBuilder mstrLog1 = new StringBuilder();
                    mstrLog1.AppendLine("新增匯入社團:");
                    foreach (CLUBRecord each in ClubInsertList)
                    {
                        mstrLog1.AppendLine(Importbot.GetLogString(each));
                    }
                    tool._A.InsertValues(ClubInsertList);
                    FISCA.LogAgent.ApplicationLog.Log("社團", "新增匯入", mstrLog1.ToString());
                }

                if (ClubUpdateList.Count > 0)
                {
                    StringBuilder mstrLog2 = new StringBuilder();
                    mstrLog2.AppendLine("更新匯入社團:");
                    foreach (CLUBRecord each in ClubUpdateList)
                    {
                        if (Log_Dic.ContainsKey(each.UID))
                        {
                            Log_Dic[each.UID].New_club = each.CopyExtension();
                            mstrLog2.AppendLine(Importbot.SetLog(Log_Dic[each.UID]));
                        }
                    }
                    tool._A.UpdateValues(ClubUpdateList);
                    FISCA.LogAgent.ApplicationLog.Log("社團", "更新匯入", mstrLog2.ToString());
                }
                ClubEvents.RaiseAssnChanged();
            }

            return("");
        }
Exemplo n.º 3
0
        void BGW_DoWork(object sender, DoWorkEventArgs e)
        {
            //StudentNameDic.Clear();

            //取得社團資料
            List <CLUBRecord> ClubPrimaryList = _AccessHelper.Select <CLUBRecord>(string.Format("UID = '{0}'", this.PrimaryKey));

            if (ClubPrimaryList.Count != 1)
            {
                //如果取得2門以上 或 沒取得社團時
                e.Cancel = true;
                return;
            }

            ClubPrimary = ClubPrimaryList[0];

            Log_ClubPrimary = ClubPrimary.CopyExtension();

            //取得場地[GROUP BY]
            string    TableName = Tn._CLUBRecordUDT;
            DataTable dt        = _QueryHelper.Select("select location from " + TableName.ToLower() + " group by location ORDER by location");

            ClubLocation.Clear();
            foreach (DataRow row in dt.Rows)
            {
                string loc = "" + row[0];
                ClubLocation.Add(loc);
            }
            ClubLocation.Sort();

            //取得社團類型[Group By]
            TableName = Tn._CLUBRecordUDT;
            dt        = _QueryHelper.Select("select club_category from " + TableName.ToLower() + " group by club_category ORDER by club_category");
            ClubCategory.Clear();
            foreach (DataRow row in dt.Rows)
            {
                string loc = "" + row[0];
                if (string.IsNullOrEmpty(loc))
                {
                    continue;
                }
                ClubCategory.Add(loc);
            }
            ClubCategory.Sort();

            //取得老師資料
            TeacherList.Clear();
            TeacherDic.Clear();
            TeacherNameDic.Clear();
            dt = _QueryHelper.Select(@"
SELECT 
    id
    , teacher_name
    , nickname 
FROM 
    teacher 
WHERE
    status = 1
ORDER by 
    teacher_name");
            foreach (DataRow row in dt.Rows)
            {
                TeacherObj obj = new TeacherObj();
                obj.TeacherID       = "" + row[0];
                obj.TeacherName     = ("" + row[1]).Trim();
                obj.TeacherNickName = ("" + row[2]).Trim();
                TeacherList.Add(obj);

                if (!TeacherDic.ContainsKey(obj.TeacherID))
                {
                    TeacherDic.Add(obj.TeacherID, obj);
                }

                if (!TeacherNameDic.ContainsKey(obj.TeacherFullName))
                {
                    TeacherNameDic.Add(obj.TeacherFullName, obj);
                }
            }
        }