コード例 #1
0
ファイル: AppController.cs プロジェクト: squallli/Attendance
        /// <summary>
        /// 出勤紀錄
        /// </summary>
        /// <param name="EmpNo"></param>
        /// <param name="SDATE"></param>
        /// <returns></returns>
        public JsonResult Attendance(string EmpNo, string SDATE, string EDATE)
        {
            List <AppAttendanceModel> AppAttendanceList = null;

            AttendanceModelFactory ModelFactory = new AttendanceModelFactory();

            SDATE = SDATE.Substring(0, 4) + "-" + SDATE.Substring(4, 2) + "-" + SDATE.Substring(6, 2);
            EDATE = EDATE.Substring(0, 4) + "-" + EDATE.Substring(4, 2) + "-" + EDATE.Substring(6, 2);

            DateTime cSDATE = DateTime.Parse(SDATE);
            DateTime cEDATE = DateTime.Parse(EDATE);

            AppAttendanceList = ModelFactory.GetAppAttendance(EmpNo, cSDATE, cEDATE);

            return(Json(AppAttendanceList, JsonRequestBehavior.AllowGet));
        }
コード例 #2
0
        public JsonResult GetRA01ToExcel(ReportFormModel ReportForm)
        {
            //初始****
            if (ReportForm.EmpNo == null)
            {
                ReportForm.EmpNo = "";
            }
            if (ReportForm.Company == null)
            {
                ReportForm.Company = "";
            }
            if (ReportForm.DepartMentNo == null)
            {
                ReportForm.DepartMentNo = "";
            }
            if (ReportForm.EndDate == null)
            {
                ReportForm.EndDate = "";
            }
            if (ReportForm.StartDate == null)
            {
                ReportForm.StartDate = "";
            }
            if (ReportForm.EmpStatus == null)
            {
                ReportForm.EmpStatus = "";
            }

            JsonresultModel ResultModel = new JsonresultModel();

            ResultModel.Result = "0";

            try
            {
                DataTable AttendanceDT = null;

                DateTime StartDate = DateTime.Parse(ReportForm.StartDate);
                DateTime EndDate   = DateTime.Parse(ReportForm.EndDate);

                //取得出勤資料用
                AttendanceModelFactory AttendanceModelFactory = new AttendanceModelFactory();
                AttendanceDT = AttendanceModelFactory.GetAttendanceDataTable(2, ReportForm.Company, ReportForm.DepartMentNo, ReportForm.EmpNo, "", StartDate, EndDate, ReportForm.EmpStatus, 100000, 0);

                string filename = DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".xlsx";

                //SavePath=儲存路徑
                string filenameStr = AppDomain.CurrentDomain.BaseDirectory.ToString() + "Download\\" + filename;

                using (MemoryStream msExcel = ReportAttendanceModelFactory.RA01ToExcel(AttendanceDT) as MemoryStream)// 新增試算表
                {
                    byte[] data = msExcel.ToArray();
                    using (FileStream fileStream = new FileStream(filenameStr, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None))
                    {
                        fileStream.Write(data, 0, data.Length);
                        fileStream.Flush();
                        fileStream.Close();
                    }
                }

                //賦予報表位址
                ExcelModel Excel = new ExcelModel();
                Excel.Url          = "../Download/" + filename;
                ResultModel.Result = "1";
                ResultModel.Query  = Excel;

                return(Json(ResultModel, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                return(Json(ResultModel, JsonRequestBehavior.AllowGet));
            }
        }