Exemplo n.º 1
0
        public ActionResult EditDetail(TongHopDetail model, string url)
        {
            var db = DB.Entities;

            // Add new
            db.AttachTo("TongHopDetail", model);
            db.ObjectStateManager.ChangeObjectState(model, System.Data.EntityState.Modified);
            db.SaveChanges();
            return(Redirect(url));
        }
Exemplo n.º 2
0
        public ActionResult TongHopLai(string fromDate, string endDate)
        {
            if (fromDate == null)
            {
                return(RedirectToAction("NewOrEdit", new { fromDate = fromDate, endDate = endDate }));
            }
            string[] arrFrom  = fromDate.Split(new char[] { '/' }, StringSplitOptions.RemoveEmptyEntries);
            DateTime start    = new DateTime(int.Parse(arrFrom[2]), int.Parse(arrFrom[1]), int.Parse(arrFrom[0]), 0, 0, 0);
            DateTime end      = start.AddDays(7).AddSeconds(-1);
            string   codedate = "" + start.Day + start.Month + start.Year;

            ViewBag.CodeDate = codedate;
            var db = DB.Entities;

            if (db.TongHop.FirstOrDefault(m => m.Code == codedate) != null)
            {
                var listJob = db.JobRegister.Where(m => !m.Added && m.DateFrom >= start && m.DateFrom <= end).ToList();
                if (listJob.Count > 0)
                {
                    var lsttonghop = db.TongHop.Where(m => m.Code == codedate);
                    foreach (var item in lsttonghop)
                    {
                        foreach (var job in listJob)
                        {
                            if (((int)job.DateFrom.DayOfWeek + 6) % 7 != item.DayOfWeek)
                            {
                                continue;
                            }
                            var tonghopdetail = new TongHopDetail();
                            tonghopdetail.Time          = job.DateFrom.TimeOfDay;
                            tonghopdetail.NoiDung       = job.Content;
                            tonghopdetail.NguoiThucHien = job.NguoiThucHien;
                            tonghopdetail.TongHopID     = item.ID;
                            tonghopdetail.Location      = job.Location;
                            tonghopdetail.Code          = codedate;
                            db.TongHopDetail.AddObject(tonghopdetail);

                            job.Added = true;
                            db.ObjectStateManager.ChangeObjectState(job, System.Data.EntityState.Modified);
                        }
                    }
                    db.SaveChanges();
                }
                var listTH = db.TongHop.Where(m => m.Code == codedate).ToList();
                ViewBag.ListTongHop = listTH;
                ViewBag.IsEdit      = true;
                return(RedirectToAction("NewOrEdit", new { fromDate = fromDate, endDate = endDate }));
            }
            return(RedirectToAction("NewOrEdit", new { fromDate = fromDate, endDate = endDate }));
        }
Exemplo n.º 3
0
        public ActionResult TongHop(string fromDate, string endDate)
        {
            if (fromDate == null)
            {
                return(RedirectToAction("NewOrEdit", new { fromDate = fromDate, endDate = endDate }));
            }
            //DateTime start = DateTime.ParseExact(fromDate + " 12:00:00 AM", "MM/dd/yyyy HH:mm:ss tt", CultureInfo.InvariantCulture);
            string[] arrFrom  = fromDate.Split(new char[] { '/' }, StringSplitOptions.RemoveEmptyEntries);
            DateTime start    = new DateTime(int.Parse(arrFrom[2]), int.Parse(arrFrom[1]), int.Parse(arrFrom[0]), 0, 0, 0);
            DateTime end      = start.AddDays(7).AddSeconds(-1);
            string   codedate = "" + start.Day + start.Month + start.Year;

            ViewBag.CodeDate = codedate;
            var db = DB.Entities;

            if (db.TongHop.FirstOrDefault(m => m.Code == codedate) == null)
            {
                var tieude = new TieuDe()
                {
                    Title = "LỊCH CÔNG TÁC TUẦN TỪ " + string.Format("{0:d/M}", start) + " ĐẾN " + string.Format("{0:d/M/yyyy}", end)
                };
                db.TieuDe.AddObject(tieude);
                db.SaveChanges();
                var listJob = db.JobRegister.Where(m => m.DateFrom >= start && m.DateFrom <= end).ToList();
                for (int i = 0; i < 7; i++)
                {
                    var tonghop = new TongHop()
                    {
                        FromDate = start, DayOfWeek = i, Code = codedate, TieuDeID = tieude.ID
                    };
                    db.TongHop.AddObject(tonghop);
                    db.SaveChanges();
                    foreach (var item in listJob)
                    {
                        if (((int)item.DateFrom.DayOfWeek + 6) % 7 != i)
                        {
                            continue;
                        }
                        var tonghopdetail = new TongHopDetail();
                        tonghopdetail.Time          = item.DateFrom.TimeOfDay;
                        tonghopdetail.NoiDung       = item.Content;
                        tonghopdetail.NguoiThucHien = item.NguoiThucHien;
                        tonghopdetail.TongHopID     = tonghop.ID;
                        tonghopdetail.Location      = item.Location;
                        tonghopdetail.Code          = codedate;
                        db.TongHopDetail.AddObject(tonghopdetail);

                        item.Added = true;
                        db.ObjectStateManager.ChangeObjectState(item, System.Data.EntityState.Modified);
                    }
                }

                db.SaveChanges();
                var listTH = db.TongHop.Where(m => m.Code == codedate).ToList();
                ViewBag.ListTongHop = listTH;
                return(RedirectToAction("NewOrEdit", new { fromDate = fromDate, endDate = endDate }));
            }
            else
            {
                ViewBag.IsEdit = true;
            }
            return(RedirectToAction("NewOrEdit", new { fromDate = fromDate, endDate = endDate }));
        }