Beispiel #1
0
        /// <summary>
        /// 背景模式
        /// </summary>
        void BGW_DoWork(object sender, DoWorkEventArgs e)
        {
            //取得資料
            List <GraduateUDT> list = _AccessHelper.Select <GraduateUDT>(string.Format("UID='{0}'", this.PrimaryKey));

            if (list.Count == 1)
            {
                GraduateOBJ = list[0];
                //取得本UDT資料之照片UDT資料
                List <PhotoDataUDT> list2 = _AccessHelper.Select <PhotoDataUDT>(string.Format("RefUDT_ID='{0}'", GraduateOBJ.UID));
                if (list2.Count == 1)
                {
                    photoOBJ = list2[0];
                }
                else
                {
                    photoOBJ = null;
                }
            }
            else if (list.Count > 1) //UDT資料多餘
            {
                MsgBox.Show("UDT資料有誤!!");
            }
            else //無UDT資料
            {
            }
        }
Beispiel #2
0
        /// <summary>
        /// 更新照片封存資料
        /// </summary>
        private List <PhotoDataUDT> UpdateStudentPhoto(List <GraduateUDT> UpdateArchiveList)
        {
            List <PhotoDataUDT> ArchiveList = new List <PhotoDataUDT>();
            //取得照片資料(照片資料需取得後更新)

            List <string> list = new List <string>();

            foreach (GraduateUDT each in UpdateArchiveList)
            {
                list.Add(each.UID);
            }
            string test1 = UDT_S.PopOneCondition("RefUDT_ID", list);
            List <PhotoDataUDT> PhotoArchiveList       = _AccessHelper.Select <PhotoDataUDT>(test1);
            Dictionary <string, PhotoDataUDT> photoDic = new Dictionary <string, PhotoDataUDT>();

            foreach (PhotoDataUDT each in PhotoArchiveList)
            {
                if (!photoDic.ContainsKey(each.StudentID))
                {
                    photoDic.Add(each.StudentID, each);
                }
                else
                {
                    MsgBox.Show("一名學生有2筆照片資料!!\n" + each.StudentID);
                }
            }

            foreach (GraduateUDT udt in UpdateArchiveList)
            {
                if (photoDic.ContainsKey(udt.StudentID))
                {
                    photoDic[udt.StudentID].FreshmanPhoto = SetPhoto(udt.StudentID, true);  //入學照片
                    photoDic[udt.StudentID].GraduatePhoto = SetPhoto(udt.StudentID, false); //入學照片
                    ArchiveList.Add(photoDic[udt.StudentID]);
                }
                else //如果不存在,表示前次封存無照片
                {
                    //封存入學/畢業照片
                    PhotoDataUDT photo = new PhotoDataUDT();
                    photo.StudentID     = udt.StudentID;
                    photo.RefUDT_ID     = udt.UID;
                    photo.FreshmanPhoto = SetPhoto(udt.StudentID, true);  //入學照片
                    photo.GraduatePhoto = SetPhoto(udt.StudentID, false); //入學照片
                    ArchiveList.Add(photo);
                }
            }

            return(ArchiveList);
        }
Beispiel #3
0
        /// <summary>
        /// 新增照片封存資料
        /// </summary>
        private List <PhotoDataUDT> InsertStudentPhoto(List <GraduateUDT> GraUDTList)
        {
            List <PhotoDataUDT> ArchiveList = new List <PhotoDataUDT>();

            foreach (GraduateUDT udt in GraUDTList)
            {
                //封存入學/畢業照片
                PhotoDataUDT photo = new PhotoDataUDT();
                photo.StudentID     = udt.StudentID;
                photo.RefUDT_ID     = udt.UID;
                photo.FreshmanPhoto = SetPhoto(udt.StudentID, true);  //入學照片
                photo.GraduatePhoto = SetPhoto(udt.StudentID, false); //入學照片
                ArchiveList.Add(photo);
            }
            return(ArchiveList);
        }