コード例 #1
0
        public JsonResult UpdateSoQD(string id, string SoQD)
        {
            QuangHanhManufacturingEntities db = new QuangHanhManufacturingEntities();

            using (DbContextTransaction dbct = db.Database.BeginTransaction())
            {
                try
                {
                    if (!SoQD.Equals(""))
                    {
                        string          query  = @"select * from HumanResources.Decision where number = @SoQD";
                        List <Decision> qdList = db.Database.SqlQuery <Decision>(query, new SqlParameter("SoQD", SoQD)).ToList();

                        if (qdList.Count > 0)
                        {
                            return(Json(new { success = false, message = "Số quyết định trùng" }, JsonRequestBehavior.AllowGet));
                        }
                        else
                        {
                            int      MaQD = Convert.ToInt32(id);
                            Decision qd   = db.Decisions.Where(x => x.decision_id == MaQD).FirstOrDefault();
                            qd.number          = SoQD;
                            qd.date            = DateTime.Now.AddDays(2);
                            db.Entry(qd).State = EntityState.Modified;

                            List <string> maNV = db.Terminations.Where(x => x.decision_id == qd.decision_id).
                                                 Select(x => x.employee_id).ToList();
                            foreach (var item in maNV)
                            {
                                var Nv = db.Employees.Where(nv => nv.employee_id == item).FirstOrDefault();
                                Nv.current_status_id = 2;
                                db.Entry(Nv).State   = EntityState.Modified;
                            }

                            db.SaveChanges();
                            dbct.Commit();
                        }
                    }
                    else
                    {
                        return(Json(new { success = false, message = "Chưa nhập số quyết định" }, JsonRequestBehavior.AllowGet));
                    }
                    return(Json(new { success = true, message = "Thêm thành công" }, JsonRequestBehavior.AllowGet));
                }
                catch (Exception e)
                {
                    dbct.Rollback();
                    return(Json(new { success = false, message = "Có lỗi khi thêm" }, JsonRequestBehavior.AllowGet));
                }
            }
        }
コード例 #2
0
        public void EditSupply_duphong(String supplyid, int quantity)
        {
            QuangHanhManufacturingEntities db = new QuangHanhManufacturingEntities();
            RepairRegularly1 duphong          = db.RepairRegularly1.Where(x => x.supply_id == supplyid).FirstOrDefault();

            if (duphong != null)
            {
                duphong.quantity       -= quantity;
                db.Entry(duphong).State = EntityState.Modified;
            }
            db.SaveChanges();
        }
コード例 #3
0
        private void EditSupply_duphong(string oldEquipmentId, string oldSupplyid, int oldQuantity, string newEquipmentId, string newSupplyid, int newQuantity)
        {
            //find old supplies by device.
            QuangHanhManufacturingEntities db = new QuangHanhManufacturingEntities();

            using (DbContextTransaction transaction = db.Database.BeginTransaction())
            {
                try
                {
                    //if equipmentId and supplyId doesn't change after editing.
                    if (oldEquipmentId == newEquipmentId && oldSupplyid == newSupplyid)
                    {
                        RepairRegularly1 duphong = db.RepairRegularly1.Where(x => (x.supply_id == newSupplyid && x.equipment_id == newEquipmentId)).FirstOrDefault();
                        if (duphong != null)
                        {
                            duphong.quantity       += oldQuantity;
                            duphong.quantity       -= newQuantity;
                            db.Entry(duphong).State = EntityState.Modified;
                        }
                    }
                    else
                    {
                        //update quantity of old and new supplies remaining by each eqID.
                        RepairRegularly1 oldRecord = db.RepairRegularly1.Where(x => (x.supply_id == oldSupplyid && x.equipment_id == oldEquipmentId)).FirstOrDefault();
                        RepairRegularly1 newRecord = db.RepairRegularly1.Where(x => (x.supply_id == newSupplyid && x.equipment_id == newEquipmentId)).FirstOrDefault();
                        oldRecord.quantity += oldQuantity;

                        // if new doesn't exist => create new with quantity = -newQuantity
                        if (newRecord == null)
                        {
                            RepairRegularly1 sp = new RepairRegularly1()
                            {
                                supply_id    = newSupplyid,
                                equipment_id = newEquipmentId,
                                quantity     = -newQuantity
                            };
                            db.RepairRegularly1.Add(sp);
                        }
                        else
                        {
                            newRecord.quantity -= newQuantity;
                        }
                    }
                    db.SaveChanges();
                    transaction.Commit();
                }
                catch (Exception)
                {
                    transaction.Rollback();
                }
            }
        }
コード例 #4
0
 public JsonResult ResetPassword(string oldPass, string newPass, string rePass)
 {
     try
     {
         int    id      = Convert.ToInt32(Session["account_id"]);
         string passXc  = new XCryptEngine(XCryptEngine.AlgorithmType.MD5).Encrypt(oldPass, "pl");
         string rePasss = new XCryptEngine(XCryptEngine.AlgorithmType.MD5).Encrypt(rePass, "pl");
         var    user    = db.Accounts.Where(x => x.ID == id).FirstOrDefault();
         if (string.IsNullOrEmpty(oldPass) || string.IsNullOrEmpty(newPass) || string.IsNullOrEmpty(rePass))
         {
             return(Json(new Result()
             {
                 CodeError = 1,
                 Data = "Mật khẩu không được để trống"
             }, JsonRequestBehavior.AllowGet));
         }
         if (!newPass.Equals(rePass))
         {
             return(Json(new Result()
             {
                 CodeError = 1,
                 Data = "2 mật khẩu không trùng khớp"
             }, JsonRequestBehavior.AllowGet));
         }
         if (!user.Password.Equals(passXc))
         {
             return(Json(new Result()
             {
                 CodeError = 1,
                 Data = "Mật khẩu cũ không đúng"
             }, JsonRequestBehavior.AllowGet));
         }
         user.Password        = rePasss;
         db.Entry(user).State = EntityState.Modified;
         db.SaveChanges();
         return(Json(new Result()
         {
             CodeError = 2,
             Data = "Thay đổi mật khẩu thành công"
         }, JsonRequestBehavior.AllowGet));
     }
     catch (Exception e)
     {
         return(Json(new Result()
         {
             CodeError = 1,
             Data = "Có lỗi xảy ra. Vui lòng thử lại!"
         }, JsonRequestBehavior.AllowGet));
     }
 }
コード例 #5
0
 public JsonResult updateStatus(string id)
 {
     try
     {
         foreach (var r in id.Split(','))
         {
             int i  = int.Parse(r);
             var up = db.Notifications.Where(x => x.id_noti == i).SingleOrDefault();
             up.isread          = true;
             db.Entry(up).State = EntityState.Modified;
         }
         db.SaveChanges();
         return(Json("", JsonRequestBehavior.AllowGet));
     }
     catch (Exception)
     {
         return(Json("", JsonRequestBehavior.AllowGet));
     }
 }
コード例 #6
0
        private void AddSupply_duphong(string newEquipmentId, string newSupplyid, int newQuantity)
        {
            //find old supplies by device.
            QuangHanhManufacturingEntities db = new QuangHanhManufacturingEntities();

            using (DbContextTransaction transaction = db.Database.BeginTransaction())
            {
                try
                {
                    RepairRegularly1 duphong = db.RepairRegularly1.Where(x => (x.supply_id == newSupplyid && x.equipment_id == newEquipmentId)).FirstOrDefault();
                    //if existed
                    if (duphong != null)
                    {
                        duphong.quantity       -= newQuantity;
                        db.Entry(duphong).State = EntityState.Modified;
                    }
                    //if doesn't exist before
                    else
                    {
                        RepairRegularly1 sp = new RepairRegularly1()
                        {
                            supply_id    = newSupplyid,
                            equipment_id = newEquipmentId,
                            quantity     = -newQuantity
                        };
                        db.RepairRegularly1.Add(sp);
                    }
                    db.SaveChanges();
                    transaction.Commit();
                }
                catch (Exception)
                {
                    transaction.Rollback();
                }
            }
        }
コード例 #7
0
        public JsonResult AddNewUser(string Name, string Username, string Position, string Password, string RepeatPassword, string NVID,
                                     int module1, int module2, int module3, int module4, int module5, int module6, int module7,
                                     int module8, int module9, int module11, int module12, int module13, int module14,
                                     int module15, int module17, int module18, int module19, int module20, string rights)
        {
            if (db.Accounts.Where(x => x.Username == Username).Count() > 0)
            {
                return(Json(new Result()
                {
                    CodeError = 2,
                    Data = "Người dùng với tên đăng nhập <strong style='color:black; '>" + Username + "</strong> đã tồn tại!"
                }, JsonRequestBehavior.AllowGet));
            }
            string InvalidFields = "";

            if (!String.IsNullOrEmpty(NVID))
            {
                if (db.Employees.Where(x => x.employee_id == NVID).Count() == 0)
                {
                    return(Json(new Result()
                    {
                        CodeError = 2,
                        Data = "Mã nhân viên <strong style='color:black; '>" + NVID + "</strong> không tồn tại!"
                    }, JsonRequestBehavior.AllowGet));
                }
            }
            else
            {
                InvalidFields += " Mã nhân viên -";
            }
            if (String.IsNullOrEmpty(Name))
            {
                InvalidFields += " Họ Tên -";
            }
            if (String.IsNullOrEmpty(Username))
            {
                InvalidFields += " Tên đăng nhập -";
            }
            if (String.IsNullOrEmpty(Position))
            {
                InvalidFields += " Chức vụ -";
            }
            if (InvalidFields != "")
            {
                return(Json(new Result()
                {
                    CodeError = 1,
                    Data = InvalidFields.Substring(0, InvalidFields.Length) + " không được để trống !!!"
                }, JsonRequestBehavior.AllowGet));
            }
            if (String.IsNullOrEmpty(Password) || String.IsNullOrEmpty(RepeatPassword))
            {
                return(Json(new Result()
                {
                    CodeError = 1,
                    Data = "Mật khẩu không được để trống !!!"
                }, JsonRequestBehavior.AllowGet));
            }
            else
            {
                if (Password != RepeatPassword)
                {
                    return(Json(new Result()
                    {
                        CodeError = 1,
                        Data = "Mật khẩu nhập lại không khớp !!!"
                    }, JsonRequestBehavior.AllowGet));
                }
            }
            if (InvalidFields != "")
            {
                return(Json(new Result()
                {
                    CodeError = 1,
                    Data = InvalidFields
                }, JsonRequestBehavior.AllowGet));
            }
            else
            {
                string passXc = new XCryptEngine(XCryptEngine.AlgorithmType.MD5).Encrypt(Password, "pl");
                using (DbContextTransaction trans = db.Database.BeginTransaction())
                {
                    try
                    {
                        Account a = new Account()
                        {
                            Name     = Name,
                            Username = Username,
                            Password = passXc,
                            Position = Position,
                            NVID     = NVID,
                            Role     = 3,
                            CDVT     = Convert.ToBoolean(module1),
                            TCLD     = Convert.ToBoolean(module2),
                            KCS      = Convert.ToBoolean(module3),
                            DK       = Convert.ToBoolean(module4),
                            BGD      = Convert.ToBoolean(module5),
                            PXKT     = Convert.ToBoolean(module6),
                            PXDL     = Convert.ToBoolean(module8),
                            PXVT     = Convert.ToBoolean(module9),
                            PXPV     = Convert.ToBoolean(module11),
                            PXDS     = Convert.ToBoolean(module12),
                            PXCDM    = Convert.ToBoolean(module13),
                            PXTGQLM  = Convert.ToBoolean(module14),
                            PXXD     = Convert.ToBoolean(module15),
                            AT       = Convert.ToBoolean(module17),
                            PXCKSC   = Convert.ToBoolean(module19),
                            KCM      = Convert.ToBoolean(module18),
                            PXCBT    = Convert.ToBoolean(module20)
                        };
                        db.Accounts.Add(a);
                        db.SaveChanges();
                        var acc         = db.Accounts.Where(x => x.Username == Username).FirstOrDefault();
                        var rightsSplit = rights.Split(',');
                        foreach (var r in rightsSplit)
                        {
                            if (!String.IsNullOrEmpty(r))
                            {
                                Account_Right_Detail rd = new Account_Right_Detail()
                                {
                                    AccountID = acc.ID,
                                    RightID   = int.Parse(r)
                                };
                                db.Account_Right_Detail.Add(rd);
                            }
                        }
                        db.SaveChanges();
                        addModule(module1, acc.ID, 1);
                        addModule(module2, acc.ID, 2);
                        addModule(module3, acc.ID, 3);
                        addModule(module4, acc.ID, 4);
                        addModule(module5, acc.ID, 5);
                        addModule(module6, acc.ID, 6);
                        addModule(module8, acc.ID, 8);
                        addModule(module9, acc.ID, 9);
                        addModule(module11, acc.ID, 11);
                        addModule(module12, acc.ID, 12);
                        addModule(module13, acc.ID, 13);
                        addModule(module14, acc.ID, 14);
                        addModule(module15, acc.ID, 15);
                        addModule(module17, acc.ID, 17);
                        addModule(module18, acc.ID, 18);
                        addModule(module19, acc.ID, 19);
                        addModule(module20, acc.ID, 20);
                        if (module7 == 1)
                        {
                            var user = db.Accounts.SingleOrDefault(x => x.ID == acc.ID);
                            user.Name            = Name;
                            user.Username        = Username;
                            user.Password        = passXc;
                            user.Position        = Position;
                            user.Role            = 2;
                            user.NVID            = NVID;
                            user.CDVT            = false;
                            user.TCLD            = false;
                            user.KCS             = false;
                            user.DK              = false;
                            user.BGD             = false;
                            user.PXKT            = false;
                            user.ADMIN           = true;
                            user.PXDL            = false;
                            user.PXVT            = false;
                            user.PXPV            = false;
                            user.PXDS            = false;
                            user.PXCDM           = false;
                            user.PXTGQLM         = false;
                            user.PXXD            = false;
                            user.AT              = false;
                            user.KCM             = false;
                            user.PXCKSC          = false;
                            user.PXCBT           = false;
                            db.Entry(user).State = EntityState.Modified;
                            db.SaveChanges();
                        }
                        trans.Commit();
                        return(Json(new Result()
                        {
                            CodeError = 0,
                            Data = "Tài khoản <strong style='color:black;'>" + Username + " </strong> đã được thêm mới thành công cho <strong style='color:black;'>" + Name + "</strong>"
                        }, JsonRequestBehavior.AllowGet));
                    }
                    catch (Exception e)
                    {
                        trans.Rollback();
                        return(Json(new Result()
                        {
                            CodeError = 2,
                            Data = "Có lỗi vui lòng kiểm tra lại!"
                        }, JsonRequestBehavior.AllowGet));
                    }
                }
            }
        }
コード例 #8
0
        public ActionResult TLHD(string selectedList)
        {
            QuangHanhManufacturingEntities db = new QuangHanhManufacturingEntities();

            using (DbContextTransaction dbct = db.Database.BeginTransaction())
            {
                try
                {
                    Decision qd     = new Decision();
                    var      js     = new JavaScriptSerializer();
                    var      result = JsonConvert.DeserializeObject <List <GetListEmployees_Result> >(selectedList);
                    //string[] date = result[0].terminate_date.Split('/');
                    var emp = new Employee();
                    if (result[0].decision_number.Equals(""))
                    {
                        qd.number = "";
                        foreach (var item in result)
                        {
                            emp = db.Employees.Where(x => x.employee_id == item.employee_id).FirstOrDefault();
                            emp.current_status_id = 4;
                        }
                    }
                    else
                    {
                        string          decision_number = result[0].decision_number + "";
                        List <Decision> check_list      = db.Decisions.Where(x => x.number.Equals(decision_number)).ToList();
                        if (check_list.Count > 0)
                        {
                            return(Json(new { success = false, message = "Số quyết định trùng" }, JsonRequestBehavior.AllowGet));
                        }
                        else
                        {
                            qd.number = decision_number;
                            foreach (var item in result)
                            {
                                emp = db.Employees.Where(x => x.employee_id == item.employee_id).FirstOrDefault();
                                emp.current_status_id = 2;
                            }
                        }
                    }
                    qd.date             = DateTime.ParseExact(result[0].terminate_date + "", "dd/MM/yyyy", null);
                    db.Entry(emp).State = EntityState.Modified;
                    db.Decisions.Add(qd);
                    db.SaveChanges();

                    int maqd = db.Decisions.Select(n => n.decision_id).DefaultIfEmpty(0).Max();
                    foreach (var item in result)
                    {
                        Termination tlhd = new Termination();
                        tlhd.employee_id         = item.employee_id;
                        tlhd.decision_id         = maqd;
                        tlhd.terminate_date      = DateTime.ParseExact(result[0].terminate_date + "", "dd/MM/yyyy", null);
                        tlhd.termination_type_id = item.termination_type_id;
                        db.Terminations.Add(tlhd);
                    }
                    db.SaveChanges();
                    dbct.Commit();
                    return(Json(new { success = true, message = "Tạo quyết định thành công" }, JsonRequestBehavior.AllowGet));
                }
                catch (Exception e)
                {
                    dbct.Rollback();
                    return(Json(new { success = false, message = "Lỗi" }, JsonRequestBehavior.AllowGet));
                }
            }
        }
コード例 #9
0
        public ActionResult SaveEdit(Employee emp, string position, string hiddenSalary, string[] giaDinh,
                                     string[] ngaySinhGiaDinh, string[] hoTen, string[] moiQuanHe, string[] lyLich, string[] donVi,
                                     string[] chucDanh, string[] chucVu, string[] tuNgayDenNgay)
        {
            QuangHanhManufacturingEntities db = new QuangHanhManufacturingEntities();

            using (DbContextTransaction dbct = db.Database.BeginTransaction())
            {
                try
                {
                    List <Work> Jobdb = db.Works.ToList <Work>();
                    foreach (Work cv in Jobdb)
                    {
                        if (position.Trim().Equals(cv.name.Trim()))
                        {
                            emp.current_work_id = cv.work_id;
                            break;
                        }
                    }

                    if (giaDinh != null)
                    {
                        for (int i = 0; i < giaDinh.Length; i++)
                        {
                            if (giaDinh[i].Equals("") || moiQuanHe[i].Equals(""))
                            {
                                continue;
                            }
                            Family family = new Family();
                            family.full_name = hoTen[i];
                            if (ngaySinhGiaDinh[i] != "")
                            {
                                family.date_of_birth = DateTime.ParseExact(ngaySinhGiaDinh[i], "dd/MM/yyyy", null);
                            }
                            else
                            {
                                family.date_of_birth = null;
                            }
                            family.background             = lyLich[i];
                            family.family_relationship_id = Int32.Parse(moiQuanHe[i]);
                            family.family_type_id         = Int32.Parse(giaDinh[i]);
                            family.employee_id            = emp.employee_id;
                            db.Families.Add(family);
                        }
                        db.SaveChanges();
                    }

                    if (donVi != null)
                    {
                        List <WorkingProcess> list = db.WorkingProcesses.ToList();
                        for (int i = 0; i < donVi.Length; i++)
                        {
                            if (!donVi[i].Equals(""))
                            {
                                string[] ngay            = tuNgayDenNgay[i].Split('-');
                                string   DonViCongTacX   = donVi[i];
                                string[] ngayFix         = ngay[0].Trim().Split('/');
                                List <WorkingProcess> ct = db.WorkingProcesses.Where(qtct => (qtct.employee_id.Equals(emp.employee_id)) && (qtct.office.Equals(DonViCongTacX))).ToList();
                                if (ct.Count == 0)
                                {
                                    WorkingProcess qtct = new WorkingProcess();
                                    qtct.employee_id = emp.employee_id;
                                    qtct.office      = donVi[i];
                                    if (ngay[0] != "" && ngay[1] != "")
                                    {
                                        string[] dateStart = ngay[0].Split('/');
                                        qtct.date_start = Convert.ToDateTime(dateStart[1] + "/" + dateStart[0] + "/" + dateStart[2]);
                                        string[] dateEnd = ngay[1].Split('/');
                                        qtct.date_end = Convert.ToDateTime(dateEnd[1] + "/" + dateEnd[0] + "/" + dateEnd[2]);
                                    }
                                    qtct.position = chucVu[i];
                                    qtct.title    = chucDanh[i];
                                    db.WorkingProcesses.Add(qtct);
                                }
                                else
                                {
                                    WorkingProcess qtct = new WorkingProcess();
                                    qtct.employee_id = emp.employee_id;
                                    qtct.office      = donVi[i];

                                    var quaTrinh = db.WorkingProcesses.Where(congTac => (congTac.employee_id.Equals(emp.employee_id)) && (congTac.office.Equals(DonViCongTacX))).FirstOrDefault();
                                    if (ngay[0] != "" && ngay[1] != "")
                                    {
                                        string[] dateStart = ngay[0].Split('/');
                                        quaTrinh.date_start = Convert.ToDateTime(dateStart[1] + "/" + dateStart[0] + "/" + dateStart[2]);
                                        string[] dateEnd = ngay[1].Split('/');
                                        quaTrinh.date_end = Convert.ToDateTime(dateEnd[1] + "/" + dateEnd[0] + "/" + dateEnd[2]);
                                    }
                                    quaTrinh.position        = chucVu[i];
                                    quaTrinh.title           = chucDanh[i];
                                    db.Entry(quaTrinh).State = EntityState.Modified;
                                }
                            }
                        }
                        db.SaveChanges();
                    }
                }
                catch (Exception e)
                {
                    dbct.Rollback();
                }
                if (hiddenSalary != "")
                {
                    emp.current_salary_id = Convert.ToInt32(hiddenSalary);
                }
                else
                {
                    emp.current_salary_id = null;
                }
                db.Entry(emp).State = EntityState.Modified;
                db.SaveChanges();
                dbct.Commit();
            }
            return(RedirectToAction("Search"));
        }
コード例 #10
0
        public ActionResult Edit(Equipment emp, string import, string inspec, string Insua, string BuyInspec, string BuyInsua, string used, string main, string sk, string sm, CarDB cdb, string yearSX)
        {
            using (QuangHanhManufacturingEntities db = new QuangHanhManufacturingEntities())
            {
                using (DbContextTransaction dbc = db.Database.BeginTransaction())
                {
                    try
                    {
                        string[] date;
                        string   date_fix;
                        //import date
                        if (!import.Equals(""))
                        {
                            date            = import.Split('/');
                            date_fix        = date[1] + "/" + date[0] + "/" + date[2];
                            emp.date_import = Convert.ToDateTime(date_fix);
                        }
                        //durationOfInspection
                        if (!inspec.Equals(""))
                        {
                            date     = inspec.Split('/');
                            date_fix = date[1] + "/" + date[0] + "/" + date[2];

                            string     check     = "select * from Equipment.Inspection e where e.equipment_id = @eid order by inspect_id desc";
                            Inspection checkNull = db.Database.SqlQuery <Inspection>(check, new SqlParameter("eid", emp.equipment_id)).FirstOrDefault();
                            if (checkNull == null)
                            {
                                Inspection temp = new Inspection
                                {
                                    equipment_id = emp.equipment_id,
                                    inspect_date = Convert.ToDateTime(date_fix)
                                };
                                db.Inspections.Add(temp);
                                db.SaveChanges();
                            }
                            else
                            {
                                checkNull.inspect_date = Convert.ToDateTime(date_fix);
                                db.SaveChanges();
                            }

                            emp.duration_of_inspection = Convert.ToDateTime(date_fix);
                        }
                        //BuyOfInsurance
                        if (!BuyInsua.Equals(""))
                        {
                            date               = BuyInsua.Split('/');
                            date_fix           = date[1] + "/" + date[0] + "/" + date[2];
                            emp.insurance_date = Convert.ToDateTime(date_fix);
                        }
                        //BuyOfInspection
                        if (!BuyInspec.Equals(""))
                        {
                            date             = BuyInspec.Split('/');
                            date_fix         = date[1] + "/" + date[0] + "/" + date[2];
                            emp.inspect_date = Convert.ToDateTime(date_fix);
                        }
                        //durationOfInsurance
                        if (!Insua.Equals(""))
                        {
                            date     = Insua.Split('/');
                            date_fix = date[1] + "/" + date[0] + "/" + date[2];
                            DateTime buyDate;

                            string    check     = "select * from Equipment.Insurance e where e.equipment_id = @eid order by insurance_id desc";
                            Insurance checkNull = db.Database.SqlQuery <Insurance>(check, new SqlParameter("eid", emp.equipment_id)).FirstOrDefault();
                            if (checkNull == null)
                            {
                                if (emp.insurance_date != null)
                                {
                                    buyDate = emp.insurance_date.Value;
                                }
                                else
                                {
                                    int    yearBuy  = Convert.ToInt32(date[2]) - 1;
                                    String dateTemp = date[1] + "/" + date[0] + "/" + yearBuy;
                                    buyDate = Convert.ToDateTime(dateTemp);
                                }
                                Insurance temp = new Insurance
                                {
                                    equipment_id         = emp.equipment_id,
                                    insurance_start_date = buyDate,
                                    insurance_end_date   = Convert.ToDateTime(date_fix),
                                };
                                db.Insurances.Add(temp);
                                db.SaveChanges();
                            }
                            else
                            {
                                db.Database.ExecuteSqlCommand("Update Equipment.Insurance set insurance_end_date = @date where insurance_id = @id"
                                                              , new SqlParameter("date", Convert.ToDateTime(date_fix))
                                                              , new SqlParameter("id", checkNull.insurance_id));
                                //checkNull.insurance_end_date = Convert.ToDateTime(date_fix);
                                db.SaveChanges();
                            }

                            emp.duration_of_insurance = Convert.ToDateTime(date_fix);
                        }
                        //usedDay
                        if (!used.Equals(""))
                        {
                            date         = used.Split('/');
                            date_fix     = date[1] + "/" + date[0] + "/" + date[2];
                            emp.used_day = Convert.ToDateTime(date_fix);
                        }
                        //nearest_Maintenance_Day
                        if (!main.Equals(""))
                        {
                            date     = main.Split('/');
                            date_fix = date[1] + "/" + date[0] + "/" + date[2];
                            emp.duration_of_maintainance = Convert.ToDateTime(date_fix);
                        }



                        if (sk != "" && sm != "")
                        {
                            Car ca = db.Cars.Where(x => x.equipment_id == emp.equipment_id).FirstOrDefault();
                            ca.chassis_number = sk;
                            ca.engine_number  = sm;
                            ca.GPS            = cdb.GPS;
                            if (yearSX != "")
                            {
                                ca.manufacture_year = Convert.ToInt32(yearSX);
                            }
                            ca.fuel            = cdb.fuel;
                            db.Entry(ca).State = EntityState.Modified;
                        }

                        db.Entry(emp).State = EntityState.Modified;
                        db.SaveChanges();
                        dbc.Commit();
                        return(Search("", "", "", "", "", "", "", "", ""));
                    }
                    catch (Exception e)
                    {
                        e.Message.ToString();
                        dbc.Rollback();
                        return(Json(new { success = false, message = e.Message }, JsonRequestBehavior.AllowGet));
                    }
                }
            }
        }
コード例 #11
0
        public ActionResult Index(string username, string password, string rm)
        {
            if (password == null)
            {
                return(RedirectToAction("Index"));
            }
            string passXc    = new XCryptEngine(XCryptEngine.AlgorithmType.MD5).Encrypt(password, "pl");
            var    checkuser = db.Accounts.Where(x => x.Username == username).Where(y => y.Password == passXc).SingleOrDefault();

            if (checkuser != null)
            {
                if (checkuser.Username.Equals(username) && checkuser.Password.Equals(passXc))
                {
                    Session["UserID"] = checkuser.ID;
                    Session["time"]   = DateTime.Now;
                    int id   = checkuser.ID;
                    var Name = db.Database.SqlQuery <InfoAccount>(@"select a.ID, ep.BASIC_INFO_full_name, a.Username, a.Position, a.ADMIN, d.department_name, d.department_id, a.Role 
                                                                    from Account.Account a, HumanResources.Employee ep , General.Department d
                                                                    where a.NVID = ep.employee_id and d.department_id = ep.current_department_id and a.ID = @id", new SqlParameter("id", id)).FirstOrDefault();
                    Session["departName"] = Name.department_name.Trim();
                    Session["departID"]   = Name.department_id.Trim();
                    Session["account_id"] = Name.ID;
                    Session["Name"]       = Name.Ten;
                    Session["username"]   = Name.Username.Trim();
                    Session["Position"]   = Name.Position.Trim();
                    Session["isAdmin"]    = Name.ADMIN;
                    Session["Role"]       = Name.Role;
                    GetPermission(id);
                    //thư viện đang dùng cho hashpass không decrypt được nên phải dùng thư viện khác để set pass cookie
                    string hashtoken = Hash.Encrypt.EncryptString(password, "quanghanhcoals");
                    if (!String.IsNullOrEmpty(rm))
                    {
                        if (rm.Equals("on"))
                        {
                            HttpCookie remme = new HttpCookie("token");
                            remme["token"] = hashtoken;
                            remme["uid"]   = Name.ID.ToString();
                            remme.Expires  = DateTime.Now.AddDays(365);
                            remme.Secure   = true;
                            remme.HttpOnly = true;
                            HttpContext.Response.Cookies.Add(remme);
                            checkuser.token = hashtoken;
                            try
                            {
                                db.Entry(checkuser).State = EntityState.Modified;
                                db.SaveChanges();
                            }
                            catch (Exception e) { }
                        }
                    }
                    if (Name.ADMIN)
                    {
                        return(RedirectToAction("Index", "ManagementUser"));
                    }
                    string url = (string)Session["url"];
                    if (url == null)
                    {
                        ViewData["Notification"] = "Tài khoản chưa được kích hoạt";
                        Session.Abandon();
                        return(View());
                    }
                    return(Redirect(url));
                }
                else
                {
                    ViewData["Notification"] = "Tên đăng nhập/mật khẩu không đúng!";
                    return(View());
                }
            }
            else
            {
                ViewData["Notification"] = "Tên đăng nhập/mật khẩu không đúng!";
                return(View());
            }
        }
コード例 #12
0
        public ActionResult AddFuel(int consumption_value, string fuel_type, string date1, String equipmentId)
        {
            QuangHanhManufacturingEntities DBContext = new QuangHanhManufacturingEntities();

            //bug : depend on supply_tieuhao.
            using (DbContextTransaction transaction = DBContext.Database.BeginTransaction())
            {
                try
                {
                    // only taken by each department.
                    string department_id = Session["departID"].ToString();

                    Equipment e = DBContext.Equipments.Find(equipmentId);
                    //check vehicle eq exist in department
                    FuelDB check = DBContext.Database.SqlQuery <FuelDB>(@"select equipment_id , equipment_name from
                         (select distinct e.equipment_id, e.equipment_name ,e.department_id from Equipment.Equipment e inner join Equipment.CategoryAttribute ea 
                          on ea.Equipment_category_id = e.Equipment_category_id where 
                         ea.Equipment_category_attribute_name = N'Số khung' or ea.Equipment_category_attribute_name = N'Số máy') as t 
                         where department_id = @department_id
                         AND equipment_id = @equipmentId "
                                                                        , new SqlParameter("department_id", department_id)
                                                                        , new SqlParameter("equipmentId", equipmentId)
                                                                        ).First();

                    DateTime date = DateTime.ParseExact(date1, "dd/MM/yyyy", null);
                    Supply   s    = DBContext.Supplies.Where(x => x.supply_id == fuel_type).First();


                    EditSupply_duphong(fuel_type, consumption_value);


                    FuelActivitiesConsumption f = DBContext.Database.SqlQuery <FuelActivitiesConsumption>("select * from Equipment.FuelActivitiesConsumption " +
                                                                                                          "where fuel_type=@fueltype and equipment_id=@equipmentid and date=@date", new SqlParameter("fueltype", fuel_type), new SqlParameter("equipmentid", equipmentId), new SqlParameter("date", date)).FirstOrDefault();
                    if (f != null)
                    {
                        f.consumption_value      = f.consumption_value + consumption_value;
                        DBContext.Entry(f).State = EntityState.Modified;
                    }
                    else
                    {
                        FuelActivitiesConsumption fuel_Activities_Consumption = new FuelActivitiesConsumption()
                        {
                            department_id     = department_id,
                            consumption_value = consumption_value,
                            equipment_id      = equipmentId,
                            fuel_type         = fuel_type,
                            date = DateTime.ParseExact(date1, "dd/MM/yyyy", null)
                        };
                        DBContext.FuelActivitiesConsumptions.Add(fuel_Activities_Consumption);
                        DBContext.SaveChanges();
                    }

                    //Update :
                    //get new


                    DBContext.SaveChanges();
                    transaction.Commit();
                    return(Json("", JsonRequestBehavior.AllowGet));
                }
                catch (Exception)
                {
                    transaction.Rollback();
                    string output = "";
                    if (DBContext.Equipments.Where(x => x.equipment_id == equipmentId).Count() == 0)
                    {
                        output += "Mã thiết bị không tồn tại\n";
                    }

                    if (output == "")
                    {
                        output += "Có lỗi xảy ra, xin vui lòng nhập lại";
                    }
                    Response.Write(output);
                    return(new HttpStatusCodeResult(400));
                }
            }
        }
コード例 #13
0
        public ActionResult Edit(float quantity, string activity_name, int hours_per_day, string date1, String equipmentId, int activityid)
        {
            QuangHanhManufacturingEntities DBContext = new QuangHanhManufacturingEntities();

            using (DbContextTransaction transaction = DBContext.Database.BeginTransaction())
            {
                try
                {
                    // only taken by each department.
                    string    department_id = Session["departID"].ToString();
                    Equipment i             = DBContext.Equipments.Find(equipmentId);

                    //check vehicle eq exist in department
                    FuelDB f = DBContext.Database.SqlQuery <FuelDB>(@"select equipment_id , equipment_name from 
                         (select distinct e.equipment_id, e.equipment_name ,e.department_id from Equipment.Equipment e inner join Equipment.CategoryAttribute ea 
                          on ea.Equipment_category_id = e.Equipment_category_id where 
                         ea.Equipment_category_attribute_name = N'Số khung' or ea.Equipment_category_attribute_name = N'Số máy') as t 
                         where department_id = @department_id
                         AND equipment_id = @equipmentId "
                                                                    , new SqlParameter("department_id", department_id)
                                                                    , new SqlParameter("equipmentId", equipmentId)
                                                                    ).First();

                    //Activity q = DBContext.Activities.Where(x => x.activityid == activityid).SingleOrDefault();
                    Activity q      = DBContext.Activities.Find(activityid);
                    Activity fixBug = DBContext.Activities.Find(activityid);
                    string   oldEq  = fixBug.equipment_id;
                    q.equipment_id = i.equipment_id;
                    string date = DateTime.ParseExact(date1, "dd/MM/yyyy", null).ToString("MM-dd-yyyy");
                    q.date                   = DateTime.Parse(date);
                    q.hours_per_day          = hours_per_day;
                    q.quantity               = quantity;
                    q.activity_name          = activity_name;
                    q.activity_id            = activityid;
                    DBContext.Entry(q).State = EntityState.Modified;
                    DBContext.SaveChanges();

                    //after update activity.
                    //get old and new.
                    //string oldEq = q.equipmentid;
                    string newEq = equipmentId;

                    //update old:
                    double hoursOld = DBContext.Database.SqlQuery <double>(
                        @" select case when sum(hours_per_day) is null then 0 else sum(hours_per_day) end as total  from Equipment.Activity 
                        where equipment_id = @equipmentId"
                        , new SqlParameter("", oldEq)).First();
                    int totalHourOld = (int)hoursOld;
                    DBContext.Database.ExecuteSqlCommand("update Equipment.Equipment set total_operating_hours = @hour where equipment_id = @equipmentId",
                                                         new SqlParameter("hour", totalHourOld),
                                                         new SqlParameter("equipmentId", oldEq));

                    //update new:
                    double hoursNew = DBContext.Database.SqlQuery <double>("" +
                                                                           " select sum(hours_per_day) as total  from Equipment.Activity " +
                                                                           " where equipment_id = @equipmentId"
                                                                           , new SqlParameter("equipmentId", newEq)).First();
                    int totalHourNew = (int)hoursNew;
                    DBContext.Database.ExecuteSqlCommand("update Equipment.Equipment set total_operating_hours = @hour where equipment_id = @equipmentId",
                                                         new SqlParameter("hour", totalHourNew),
                                                         new SqlParameter("equipmentId", newEq));

                    transaction.Commit();
                    return(new HttpStatusCodeResult(201));
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    string output = "";
                    if (DBContext.Database.SqlQuery <Equipment>("SELECT * FROM Equipment.Equipment WHERE equipment_id = N'" + equipmentId + "'").Count() == 0)
                    {
                        output += "Mã thiết bị không tồn tại\n";
                    }

                    if (output == "")
                    {
                        output += "Có lỗi xảy ra, xin vui lòng nhập lại";
                    }
                    Response.Write(output);
                    return(new HttpStatusCodeResult(400));
                }
            }
        }
コード例 #14
0
        public ActionResult AddFuel(int consumption_value, string fuel_type, string date1, string equipmentId)
        {
            string output = "";

            // only taken by each department.
            string department_id = Session["departID"].ToString();

            QuangHanhManufacturingEntities DBContext = new QuangHanhManufacturingEntities();

            using (DbContextTransaction transaction = DBContext.Database.BeginTransaction())
            {
                try
                {
                    //check eq in department.
                    //Only add equipment in deparment of user.
                    Equipment e = DBContext.Equipments.Where(x => (x.department_id == department_id && x.equipment_id == equipmentId)).First();
                    Supply    s = DBContext.Database.SqlQuery <Supply>("select * from Supply.Supply where supply_id=@fueltype", new SqlParameter("fueltype", fuel_type)).First();

                    DateTime date = DateTime.ParseExact(date1, "dd/MM/yyyy", null);

                    FuelActivitiesConsumption f = DBContext.Database.SqlQuery <FuelActivitiesConsumption>("select * from Equipment.FuelActivitiesConsumption " +
                                                                                                          "where fuel_type=@fueltype and equipment_id=@equipmentid and date=@date", new SqlParameter("fueltype", fuel_type), new SqlParameter("equipmentid", equipmentId), new SqlParameter("date", date)).FirstOrDefault();

                    //Handling old equipment and supplies
                    if (f != null)
                    {
                        f.consumption_value      = f.consumption_value + consumption_value;
                        DBContext.Entry(f).State = EntityState.Modified;
                    }
                    else
                    {
                        FuelActivitiesConsumption fuel_Activities_Consumption = new FuelActivitiesConsumption()
                        {
                            department_id     = department_id,
                            consumption_value = consumption_value,
                            equipment_id      = equipmentId,
                            fuel_type         = fuel_type,
                            date = DateTime.ParseExact(date1, "dd/MM/yyyy", null)
                        };
                        DBContext.FuelActivitiesConsumptions.Add(fuel_Activities_Consumption);
                    }

                    AddSupply_duphong(equipmentId, fuel_type, consumption_value);

                    DBContext.SaveChanges();
                    transaction.Commit();
                    return(Json("", JsonRequestBehavior.AllowGet));
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    if (DBContext.Equipments.Where(x => x.equipment_id == equipmentId).Count() == 0)
                    {
                        output += "Mã thiết bị không tồn tại\n";
                    }

                    if (output == "")
                    {
                        output += "Có lỗi xảy ra, xin vui lòng nhập lại";
                    }
                    Response.Write(output);
                    return(new HttpStatusCodeResult(400));
                }
            }
        }
コード例 #15
0
        public ActionResult Edit(float quantity, string activity_name, int hours_per_day, string date1, String equipmentId, int activityid)
        {
            QuangHanhManufacturingEntities DBContext = new QuangHanhManufacturingEntities();

            using (DbContextTransaction transaction = DBContext.Database.BeginTransaction())
            {
                try
                {
                    //check
                    //need to check equipment of each department.
                    string department_id = Session["departID"].ToString();

                    Equipment i = DBContext.Equipments.Where(x => (x.department_id == department_id && x.equipment_id == equipmentId)).First();

                    Activity actiOldEq = DBContext.Activities.Find(activityid);
                    string   oldEq     = actiOldEq.equipment_id;
                    double   oldHour   = actiOldEq.hours_per_day;
                    int      newHour   = hours_per_day;

                    Activity q = DBContext.Activities.Find(activityid);
                    q.equipment_id           = i.equipment_id;
                    q.date                   = DateTime.ParseExact(date1, "dd/MM/yyyy", null);
                    q.hours_per_day          = hours_per_day;
                    q.quantity               = quantity;
                    q.activity_name          = activity_name;
                    q.activity_id            = activityid;
                    DBContext.Entry(q).State = EntityState.Modified;
                    DBContext.SaveChanges();

                    //after update activity.
                    //get old and new.
                    string newEq = equipmentId;

                    if (newEq.Equals(oldEq))
                    {
                        i.total_operating_hours += (newHour - (int)oldHour);

                        DBContext.Entry(i).State = EntityState.Modified;
                    }
                    else
                    {
                        Equipment olds = DBContext.Equipments.Where(x => (x.department_id == department_id && x.equipment_id == oldEq)).First();
                        Equipment news = DBContext.Equipments.Where(x => (x.department_id == department_id && x.equipment_id == newEq)).First();
                        olds.total_operating_hours -= (int)oldHour;
                        news.total_operating_hours += newHour;

                        DBContext.Entry(news).State = EntityState.Modified;
                    }

                    DBContext.SaveChanges();
                    transaction.Commit();
                    return(new HttpStatusCodeResult(201));
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    string output = "";
                    if (DBContext.Database.SqlQuery <Equipment>("SELECT * FROM Equipment.Equipment WHERE equipment_id = N'" + equipmentId + "'").Count() == 0)
                    {
                        output += "Mã thiết bị không tồn tại\n";
                    }

                    if (output == "")
                    {
                        output += "Có lỗi xảy ra";
                    }
                    Response.Write(output);
                    return(new HttpStatusCodeResult(400));
                }
            }
        }