Esempio n. 1
0
        public ActionResult ChangeDate(string date)
        {
            string[] d     = date.Split(' ');
            string   query = @"Camera.Get_List_Cam_Incident {0}, {1}";
            QuangHanhManufacturingEntities db = new QuangHanhManufacturingEntities();
            GetDashCam_Result dc = db.Database.SqlQuery <GetDashCam_Result>(query, d[1], d[2]).FirstOrDefault();

            dc.notdone = dc.sum - dc.done;
            return(Json(new { success = true, message = "", dc = dc }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 2
0
        public ActionResult Index(string type, string month, string year)
        {
            QuangHanhManufacturingEntities db = new QuangHanhManufacturingEntities();

            List <string> rights = (List <string>)Session["RightIDs"];
            List <GetDashEquip_Result> listhd  = new List <GetDashEquip_Result>();
            List <GetDashEquip_Result> listkhd = new List <GetDashEquip_Result>();
            List <GetDashEquip_Result> listcar = new List <GetDashEquip_Result>();

            DateTime date = DateTime.Now.Date;
            int      sess = 0;
            int      hour = DateTime.Now.Hour;

            if (hour >= 6 && hour < 14)
            {
                sess = 1;
            }
            else if (hour >= 14 && hour < 22)
            {
                sess = 2;
            }
            else if (hour >= 22 || hour < 6)
            {
                sess = 3;
            }
            // GPS car unavailable
            String date_string   = date.ToString("yyyy/MM/dd");
            var    gpsunavailble = db.Database.SqlQuery <GetGPSCarAvailable_Result>(@"[Equipment].[Get_GPS_Car_Available] {0}, {1}",
                                                                                    date_string, sess).ToList();

            ViewBag.gpsavail = gpsunavailble.Count;

            listcar = db.Database.SqlQuery <GetDashEquip_Result>("Equipment.Get_List_Car").ToList();
            if (rights.Contains("10"))
            {
                listhd  = db.Database.SqlQuery <GetDashEquip_Result>("Equipment.Get_List_Car_Active").ToList();
                listkhd = db.Database.SqlQuery <GetDashEquip_Result>("Equipment.Get_List_Car_Not_Active").ToList();
                string query   = @"Equipment.Get_Number_Of_Car_Active";
                var    tonghop = db.Database.SqlQuery <GetExportByGroup_Result>(query).ToList();
                ViewBag.hd = tonghop;
                //ViewBag.hd = listhd;
                ViewBag.khd = listkhd;
            }
            else
            {
                listhd  = db.Database.SqlQuery <GetDashEquip_Result>("Equipment.Get_List_Equipment_Active").ToList();
                listkhd = db.Database.SqlQuery <GetDashEquip_Result>("Equipment.Get_List_Equipment_Not_Active").ToList();
                string query   = @"Equipment.Get_List_Export_By_Group_Equipment";
                var    tonghop = db.Database.SqlQuery <GetExportByGroup_Result>(query).ToList();
                ViewBag.hd = tonghop;
                //ViewBag.hd = listhd.Except(listcar);
                ViewBag.khd = listkhd.Except(listcar);
            }

            GetStatisEquipment_Result etk = new GetStatisEquipment_Result();
            var equipList = db.Equipments.ToList <Equipment>();

            etk.total = equipList.Where(x => x.is_attach == false).Count().ToString();
            int total_repair = 0; int total_maintain = 0; int total_TL = 0; int total_TH = 0;
            var listKD = db.Database.SqlQuery <GetDashEquip_Result>("Equipment.Get_List_Equipment_Accreditation").ToList();

            ViewBag.listKD  = listKD;
            ViewBag.totalKD = listKD.Count();

            etk.total_HD  = db.Equipments.Where(x => x.current_status == 2 && x.is_attach == false).Count();
            etk.total_KHD = int.Parse(etk.total) - etk.total_HD;

            var listRepair = db.Equipments.Where(x => x.current_status == 3).Select(x => new GetDashEquip_Result {
                equipmentId = x.equipment_id, equipment_name = x.equipment_name
            }).ToList().Distinct();

            ViewBag.listRepair = listRepair;

            var listMain = db.Equipments.Where(x => x.current_status == 5).Select(x => new GetDashEquip_Result {
                equipmentId = x.equipment_id, equipment_name = x.equipment_name
            }).ToList().Distinct();

            ViewBag.listMain = listMain;

            var listTL = db.Equipments.Where(x => x.current_status == 8).Select(x => new GetDashEquip_Result {
                equipmentId = x.equipment_id, equipment_name = x.equipment_name
            }).ToList().Distinct();

            ViewBag.listTL = listTL;

            var listTH = db.Equipments.Where(x => x.current_status == 7).Select(x => new GetDashEquip_Result {
                equipmentId = x.equipment_id, equipment_name = x.equipment_name
            }).ToList().Distinct();

            total_repair       = listRepair.Count();
            total_maintain     = listMain.Count();
            total_TL           = listTL.Count();
            total_TH           = listTH.Count();
            ViewBag.listTH     = listTH;
            etk.total_repair   = total_repair + "";
            etk.total_maintain = total_maintain + "";
            etk.total_TL       = total_TL + "";
            etk.total_TH       = total_TH + "";
            ViewBag.Thongke    = etk;
            var testTime    = DateTime.Now.AddDays(10);
            var hanDangKiem = db.Equipments.Where(x => x.duration_of_inspection <= testTime && x.duration_of_inspection >= DateTime.Now && x.is_attach == false).OrderBy(x => x.duration_of_inspection).
                              Select(x => new GetListEquipNoAccreditation_Result
            {
                equipment_name = x.equipment_name,
                equipmentId    = x.equipment_id,
                ngay           = x.duration_of_inspection.Value.Day,
                thang          = x.duration_of_inspection.Value.Month,
                nam            = x.duration_of_inspection.Value.Year
            }).Take(10).ToList().Distinct();

            ViewBag.kiemdinhtag = hanDangKiem.Count();
            ViewBag.handangkiem = hanDangKiem;
            var hanBaoduong = db.Equipments.Where(x => x.duration_of_maintainance <= testTime && x.duration_of_maintainance >= DateTime.Now && x.is_attach == false).OrderBy(x => x.duration_of_maintainance).
                              Select(x => new GetListEquipNoAccreditation_Result
            {
                equipment_name = x.equipment_name,
                equipmentId    = x.equipment_id,
                ngay           = x.duration_of_maintainance.Value.Day,
                thang          = x.duration_of_maintainance.Value.Month,
                nam            = x.duration_of_maintainance.Value.Year
            }).Take(10).ToList().Distinct();

            ViewBag.baoduongtag = hanBaoduong.Count();
            ViewBag.hanbaoduong = hanBaoduong;

            var tongcogioi = (from equip in db.Equipments
                              join car in db.Cars
                              on equip.equipment_id equals car.equipment_id
                              select new GetDashEquip_Result
            {
                equipment_name = equip.equipment_name,
                equipmentId = equip.equipment_id
            }).GroupBy(x => x.equipment_name + x.equipmentId).Select(x => x.FirstOrDefault());

            ViewBag.tongcogioi = tongcogioi.Count();

            var cogioihd = (from equip in db.Equipments.Where(x => x.current_status == 2)
                            join car in db.Cars
                            on equip.equipment_id equals car.equipment_id
                            select new GetDashEquip_Result
            {
                equipment_name = equip.equipment_name,
                equipmentId = equip.equipment_id
            }).GroupBy(x => x.equipment_name + x.equipmentId).Select(x => x.FirstOrDefault());

            ViewBag.cogioikhd = tongcogioi.Count() - cogioihd.Count();
            ViewBag.cogioihd  = cogioihd.Count();
            var cogioiSC = (from equip in db.Equipments.Where(x => x.current_status == 3)
                            join car in db.Cars
                            on equip.equipment_id equals car.equipment_id
                            select new GetDashEquip_Result
            {
                equipment_name = equip.equipment_name,
                equipmentId = equip.equipment_id
            }).GroupBy(x => x.equipment_name + x.equipmentId).Select(x => x.FirstOrDefault());

            ViewBag.cogioiSC = cogioiSC;
            ViewBag.slSC     = cogioiSC.Count();

            var cogioiBD = (from equip in db.Equipments.Where(x => x.current_status == 5)
                            join car in db.Cars
                            on equip.equipment_id equals car.equipment_id
                            select new GetDashEquip_Result
            {
                equipment_name = equip.equipment_name,
                equipmentId = equip.equipment_id
            }).GroupBy(x => x.equipment_name + x.equipmentId).Select(x => x.FirstOrDefault());

            ViewBag.cogioiBD = cogioiBD;
            ViewBag.slBD     = cogioiBD.Count();

            var cogioiKD = (from equip in db.Equipments.Where(x => x.current_status == 10)
                            join car in db.Cars
                            on equip.equipment_id equals car.equipment_id
                            join Equipment_category in db.Categories
                            on equip.equipment_category_id equals Equipment_category.equipment_category_id
                            select new GetDashEquip_Result
            {
                equipment_name = equip.equipment_name,
                equipmentId = equip.equipment_id
            }).GroupBy(x => x.equipment_name + x.equipmentId).Select(x => x.FirstOrDefault());

            ViewBag.cogioiKD = cogioiKD;
            ViewBag.slKD     = cogioiKD.Count();

            var cogioiTL = (from equip in db.Equipments.Where(x => x.current_status == 8)
                            join car in db.Cars
                            on equip.equipment_id equals car.equipment_id
                            select new GetDashEquip_Result
            {
                equipment_name = equip.equipment_name,
                equipmentId = equip.equipment_id
            }).GroupBy(x => x.equipment_name + x.equipmentId).Select(x => x.FirstOrDefault());

            ViewBag.cogioiTL = cogioiTL;
            ViewBag.slTL     = cogioiTL.Count();

            var cogioiTH = (from equip in db.Equipments.Where(x => x.current_status == 7)
                            join car in db.Cars
                            on equip.equipment_id equals car.equipment_id
                            select new GetDashEquip_Result
            {
                equipment_name = equip.equipment_name,
                equipmentId = equip.equipment_id
            }).GroupBy(x => x.equipment_name + x.equipmentId).Select(x => x.FirstOrDefault());

            ViewBag.cogioiTH = cogioiTH;
            ViewBag.slTH     = cogioiTH.Count();

            var hanDangKiemcogioi = (from equip in db.Equipments.Where(x => x.duration_of_inspection <= testTime && x.duration_of_inspection >= DateTime.Now)
                                     join car in db.Cars
                                     on equip.equipment_id equals car.equipment_id
                                     select new GetListEquipNoAccreditationWithDate_Result
            {
                equipment_name = equip.equipment_name,
                equipmentId = equip.equipment_id,
                day = equip.duration_of_inspection.Value,
                ngay = equip.duration_of_inspection.Value.Day,
                thang = equip.duration_of_inspection.Value.Month,
                nam = equip.duration_of_inspection.Value.Year
            }).Take(10).GroupBy(x => x.equipment_name + x.equipmentId + x.ngay + x.thang + x.nam).Select(x => x.FirstOrDefault()).OrderBy(x => x.day);

            ViewBag.kiemdinhcogioitag = hanDangKiemcogioi.Count();
            ViewBag.hanDangKiemcogioi = hanDangKiemcogioi;

            var hanBaoduongcogioi = (from equip in db.Equipments.Where(x => x.duration_of_maintainance <= testTime && x.duration_of_maintainance >= DateTime.Now).OrderBy(x => x.duration_of_maintainance)
                                     join car in db.Cars
                                     on equip.equipment_id equals car.equipment_id
                                     select new GetListEquipNoAccreditation_Result
            {
                equipment_name = equip.equipment_name,
                equipmentId = equip.equipment_id,
                ngay = equip.duration_of_maintainance.Value.Day,
                thang = equip.duration_of_maintainance.Value.Month,
                nam = equip.duration_of_maintainance.Value.Year
            }).Take(10).GroupBy(x => x.equipment_name + x.equipmentId + x.ngay + x.thang + x.nam).Select(x => x.FirstOrDefault());

            ViewBag.baoduongcogioitag = hanBaoduongcogioi.Count();
            ViewBag.hanBaoduongcogioi = hanBaoduongcogioi;


            Wherecondition(type, month, year);

            if (rights.Contains("193"))
            {
                DateTime d = DateTime.Today;
                ViewBag.today = month == null?d.ToString("MM yyyy") : (month + " " + year);

                string            query = @"Camera.Get_List_Cam_Incident {0}, {1}";
                GetDashCam_Result dc    = db.Database.SqlQuery <GetDashCam_Result>(query, month ?? d.Month.ToString(), year ?? d.Year.ToString()).FirstOrDefault();
                dc.notdone = dc.sum - dc.done;
                ViewBag.dc = dc;

                string             query2 = @"Camera.Get_List_Cam_Room";
                GetDashRoom_Result dr     = db.Database.SqlQuery <GetDashRoom_Result>(query2).FirstOrDefault();
                ViewBag.dr = dr;
            }
            return(View("/Views/CDVT/Dashboard.cshtml"));
        }