Beispiel #1
0
        public ActionResult Create(KT_CPUE t)
        {
            if (ModelState.IsValid)
            {
                var cpue = db.KT_CPUE.Where(c => c.MA_TINHTP == t.MA_TINHTP &&
                                            c.DM_NhomNgheID == t.DM_NhomNgheID &&
                                            c.DNHOM_TAUID == t.DNHOM_TAUID &&
                                            c.SO_DK.ToLower().Equals(t.SO_DK.ToLower()) &&
                                            c.NGAY_CAP_BEN.Value.Month == t.NGAY_CAP_BEN.Value.Month &&
                                            c.NGAY_CAP_BEN.Value.Year == t.NGAY_CAP_BEN.Value.Year
                                            );

                // validate server code
                string msgErrs = string.Empty;
                if (t.NGAY_THU_PHIEU.HasValue && t.NGAY_THU_PHIEU.Value > DateTime.Today)
                {
                    msgErrs += string.Format("Ngày thu phiếu [{0}] không được lớn hơn ngày hiện tại", t.NGAY_THU_PHIEU.Value.ToShortDateString()) + "<br />";
                }

                if (t.NGAY_XUAT_BEN.Value > DateTime.Today)
                {
                    msgErrs += string.Format("Ngày xuất bến [{0}] không được lớn hơn ngày hiện tại", t.NGAY_XUAT_BEN.Value.ToShortDateString()) + "<br />";
                }

                if (t.NGAY_CAP_BEN.Value > DateTime.Today)
                {
                    msgErrs += string.Format("Ngày cập bến [{0}] không được lớn hơn ngày hiện tại", t.NGAY_CAP_BEN.Value.ToShortDateString()) + "<br />";
                }

                if (cpue.Count() > 0)
                {
                    KT_CPUE cp = cpue.FirstOrDefault();

                    msgErrs += String.Format("Đã tồn tại thông tin phỏng vấn sản lượng của tàu có số đăng ký [{0}]", cp.SO_DK) + "<br />";
                    //Inline_Danger(String.Format("Đã tồn tại thông tin phỏng vấn sản lượng của tàu có số đăng ký [{0}]",cp.SO_DK), true);
                }

                if (string.IsNullOrEmpty(msgErrs))
                {
                    t.NGAY_NM  = DateTime.Today;
                    t.NGUOI_NM = User.Identity.Name;

                    db.KT_CPUE.Add(t);
                    db.SaveChanges();

                    this.Information(string.Format(FDB.Common.Constants.NOTIFY_ADD_SUCCESS, "Phỏng vấn sản lượng"));

                    return(RedirectToAction("Index"));
                }
                else
                {
                    Inline_Danger(msgErrs, true);
                }
            }
            initialCategoryCreateAction();

            return(View(t));
        }
Beispiel #2
0
        public ActionResult Create()
        {
            KT_CPUE n = new KT_CPUE();

            n.NGAY_NM  = DateTime.Today;
            n.NGUOI_NM = User.Identity.Name;

            initialCategoryCreateAction();

            return(View(n));
        }
Beispiel #3
0
        public ActionResult Edit(int ID)
        {
            KT_CPUE t = db.KT_CPUE.Find(ID);

            if (t == null)
            {
                return(HttpNotFound());
            }
            initialCategoryEditAction();

            return(View(t));
        }
Beispiel #4
0
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            KT_CPUE t = await db.KT_CPUE.FindAsync(id);


            db.KT_CPUE.Remove(t);

            await db.SaveChangesAsync();

            this.Information(string.Format(FDB.Common.Constants.NOTIFY_DELETE_SUCCESS, "Phỏng vấn sản lượng"));

            return(Json(new { success = true }));
        }
Beispiel #5
0
        public ActionResult Edit(KT_CPUE t)
        {
            if (ModelState.IsValid)
            {
                t.NGAY_NM  = DateTime.Today;
                t.NGUOI_NM = User.Identity.Name;

                db.Entry(t).State = System.Data.Entity.EntityState.Modified;
                db.SaveChanges();

                this.Information(string.Format(FDB.Common.Constants.NOTIFY_UPDATE_SUCCESS, "Phỏng vấn sản lượng"));


                return(RedirectToAction("Index"));
            }
            initialCategoryEditAction();



            return(View(t));
        }
Beispiel #6
0
        public ActionResult ImportExcel(HttpPostedFileBase fileUpload)
        {
            StringBuilder strValidationError = new StringBuilder(string.Empty);
            string        strValiteDataTable = "";

            if (fileUpload != null && fileUpload.ContentLength > 0)
            {
                string extension = Path.GetExtension(fileUpload.FileName);
                if (extension.StartsWith(".xls") || extension.StartsWith(".xlsx"))
                {
                    string _filePath = System.Web.Hosting.HostingEnvironment.MapPath(@"~/Templates/" + Path.GetFileNameWithoutExtension(fileUpload.FileName) + DateTime.Now.ToString("ddMMyyyyhhMMss") + extension);
                    fileUpload.SaveAs(_filePath);
                    DataTable dt = FDB.Common.Helpers.ConvertExcelToDataTable(_filePath);

                    if (dt != null && dt.Rows.Count > 0)
                    {
                        //step1 : đang kiểm tra dữ liệu

                        DataTable dtData = this.CreateNewDataTableSecondRowIsColumnName(FDB.Common.Helpers.ConvertExcelToDataTable(_filePath));
                        strValiteDataTable = this.ValidateDataTable(dtData);
                        //if (dtData.Columns.Contains("SO_DK"))
                        if (string.IsNullOrEmpty(strValiteDataTable))
                        {
                            FDB.Common.Helpers.RenameDataColumn(ref dtData, FDB.Common.Helpers.MapPropertyNameToText, this._KT_CPUEmapPropertyNameToText);

                            this.InitDictDanhMuc();
                            DateTimeFormatInfo dateFormat = new CultureInfo("vi-VN", false).DateTimeFormat;

                            for (int rowIndex = 0; rowIndex < dtData.Rows.Count; rowIndex++)
                            {
                                DataRow r = dtData.Rows[rowIndex];
                                for (int i = 0; i < dtData.Columns.Count; i++)
                                {
                                    switch (dtData.Columns[i].ColumnName)
                                    {
                                    case "MA_TINHTP":
                                        if (r[i].Equals(DBNull.Value))
                                        {
                                            strValidationError.Append("<span style=\"color:red\">Cột Mã tỉnh tại dòng " + (rowIndex + 4).ToString() + " không được để trống!</span> <br/>");
                                            goto ExitForRow;
                                        }
                                        else
                                        {
                                            if (this._dictTThanhPho.ContainsKey(r[i].ToString()))
                                            {
                                                r[i] = this._dictTThanhPho[r[i].ToString()];
                                            }
                                            else
                                            {
                                                strValidationError.Append("<span style=\"color:red\">Cột tỉnh/TP tại dòng " + (rowIndex + 4).ToString() + " không đúng danh mục quy định!</span> <br/>");
                                                goto ExitForRow;
                                            }
                                        }
                                        break;

                                    case "DNHOM_TAUID":
                                        if (r[i].Equals(DBNull.Value))
                                        {
                                            strValidationError.Append("<span style=\"color:red\">Cột Nhóm tàu tại dòng " + (rowIndex + 4).ToString() + " không được để trống!</span> <br/>");
                                            goto ExitForRow;
                                        }
                                        else
                                        {
                                            if (this._dictNhomTau.ContainsKey(r[i].ToString()))
                                            {
                                                r[i] = this._dictNhomTau[r[i].ToString()];
                                            }
                                            else
                                            {
                                                strValidationError.Append("<span style=\"color:red\">Cột nhóm tàu tại dòng " + (rowIndex + 4).ToString() + " không đúng danh mục quy định!</span> <br/>");
                                                goto ExitForRow;
                                            }
                                        }
                                        break;


                                    //Validate Nghề :
                                    case "DM_NhomNgheID":
                                        if (r[i].Equals(DBNull.Value))
                                        {
                                            strValidationError.Append("<span style=\"color:red\">Cột Nghề khai thác tại dòng " + (rowIndex + 4).ToString() + " không được để trống!</span> <br/>");
                                            goto ExitForRow;
                                        }
                                        else
                                        {
                                            if (this._dictNghe.ContainsKey(r[i].ToString()))
                                            {
                                                r[i] = this._dictNghe[r[i].ToString()];
                                            }
                                            else
                                            {
                                                strValidationError.Append("<span style=\"color:red\">Cột Nghề chính tại dòng " + (rowIndex + 4).ToString() + " không đúng danh mục quy định!</span> <br/>");
                                                goto ExitForRow;
                                            }
                                        }
                                        break;

                                    case "SO_DK":
                                        if (r[i].Equals(DBNull.Value))
                                        {
                                            strValidationError.Append("<span style=\"color:red\">Cột Số ĐK tại dòng " + (rowIndex + 4).ToString() + " không được để trống!</span> <br/>");
                                            goto ExitForRow;
                                        }
                                        break;

                                    case "KT_TONG_CONG_SUAT":
                                        if (r[i].Equals(DBNull.Value))
                                        {
                                            strValidationError.Append("<span style=\"color:red\">Cột Tổng công suất tại dòng " + (rowIndex + 4).ToString() + " không được để trống!</span> <br/>");
                                            goto ExitForRow;
                                        }
                                        break;

                                    case "NGAY_XUAT_BEN":
                                        if (r[i].Equals(DBNull.Value))
                                        {
                                            strValidationError.Append("<span style=\"color:red\">Cột Ngày xuất bến tại dòng " + (rowIndex + 4).ToString() + " không được để trống!</span> <br/>");
                                            goto ExitForRow;
                                        }
                                        else
                                        {
                                            r[i] = Convert.ToDateTime(r[i].ToString(), dateFormat);
                                        }
                                        break;

                                    case "NGAY_CAP_BEN":
                                        if (r[i].Equals(DBNull.Value))
                                        {
                                            strValidationError.Append("<span style=\"color:red\">Cột Ngày cập bến tại dòng " + (rowIndex + 4).ToString() + " không được để trống!</span> <br/>");
                                            goto ExitForRow;
                                        }
                                        else
                                        {
                                            // r[i] = DateTime.Parse(r[i].ToString(), new CultureInfo("vi-VN"));
                                            r[i] = Convert.ToDateTime(r[i].ToString(), dateFormat);
                                        }
                                        break;

                                    case "NOI_CAP_BEN":
                                        if (r[i].Equals(DBNull.Value))
                                        {
                                            strValidationError.Append("<span style=\"color:red\">Cột Nơi cập bến tại dòng " + (rowIndex + 4).ToString() + " không được để trống!</span> <br/>");
                                            goto ExitForRow;
                                        }
                                        break;

                                    case "SO_NGAY_DANH_CA":
                                        if (r[i].Equals(DBNull.Value))
                                        {
                                            strValidationError.Append("<span style=\"color:red\">Cột Số ngày đánh cá tại dòng " + (rowIndex + 3).ToString() + " không được để trống!</span> <br/>");
                                            goto ExitForRow;
                                        }
                                        break;

                                    case "TONG_SAN_LUONG":
                                        if (r[i].Equals(DBNull.Value))
                                        {
                                            strValidationError.Append("<span style=\"color:red\">Cột Tổng sản lượng tại dòng " + (rowIndex + 4).ToString() + " không được để trống!</span> <br/>");
                                            goto ExitForRow;
                                        }
                                        break;

                                    case "NGAY_THU_PHIEU":
                                        if (r[i].Equals(DBNull.Value))
                                        {
                                        }
                                        else
                                        {
                                            r[i] = Convert.ToDateTime(r[i].ToString(), dateFormat);
                                        }
                                        break;
                                    }
                                }
                            }
                            ExitForRow :;
                            //đây là Nhãn: khi validate dữ liệu phát hiện lỗi sẽ nhảy ngay đến nhãn này, thoát khỏi vòng for ngay, tránh việc check tất cả các row của table, gây chậm hệ thống.

                            if (strValidationError != null && strValidationError.Length > 0 && !strValidationError.Equals(string.Empty))
                            {
                                ViewBag.ThongBao = strValidationError.ToString();
                                ViewBag.success  = "0";
                            }
                            else
                            {
                                //Remove row duplicate SO_DK :
                                DataTable dtDataDistinct = dtData; //FDB.Common.Helpers.RemoveDuplicateRows(dtData, "SO_DK");

                                //Insert row by row:
                                string _count = (dtDataDistinct.Rows.Count).ToString();
                                int    i      = 0;
                                using (db.Database.Connection)
                                {
                                    try
                                    {
                                        using (var txt = new TransactionScope())
                                        {
                                            try
                                            {
                                                foreach (DataRow r in dtDataDistinct.Rows)
                                                {
                                                    //string _SO_DK = r["SO_DK"].ToString();
                                                    bool isExists = false; //db.KT_CPUE.Any(o => o.SO_DK == _SO_DK);
                                                    if (!isExists)
                                                    {
                                                        KT_CPUE _ktCPUE = FDB.Common.Helpers.MapDataRowToObject <KT_CPUE>(r);
                                                        _ktCPUE.NGAY_NM          = DateTime.Now;
                                                        _ktCPUE.NGUOI_NHAP_PHIEU = User.Identity.Name;
                                                        db.KT_CPUE.Add(_ktCPUE);
                                                        db.SaveChanges();
                                                        i++;
                                                    }
                                                }

                                                txt.Complete();
                                            }
                                            catch (Exception ex)
                                            {
                                                strValidationError.Append("<span style=\"color:red\">Có lỗi xảy ra trong quá trình insert data! <br/>" + ex.ToString() + "</span> <br/>");
                                                txt.Dispose();
                                            }
                                            finally
                                            {
                                                txt.Dispose();
                                            }
                                        }
                                    }
                                    catch (Exception ex)
                                    {
                                        strValidationError.Append("<span style=\"color:red\">Có lỗi xảy ra trong quá trình mở Connection! <br/>" + ex.ToString() + "</span> <br/>");
                                        if (db.Database.Connection.State != ConnectionState.Closed)
                                        {
                                            db.Database.Connection.Close();
                                        }
                                    }
                                }

                                if (strValidationError != null && strValidationError.Length > 0 && !strValidationError.Equals(string.Empty))
                                {
                                    TempData["_SUCCESS"] = "";
                                    ViewBag.success      = "0";
                                    ViewBag.ThongBao     = strValidationError.ToString();
                                }
                                else
                                {
                                    strValidationError.Clear();
                                    strValidationError.Append("<span style=\"color:blue\">Import file thành công !</span><br/>");
                                    ViewBag.ThongBao     = strValidationError.ToString();
                                    ViewBag.success      = "1";
                                    TempData["_SUCCESS"] = "Import Excel điều tra sản lượng thành công " + dtData.Rows.Count.ToString() + " bản ghi!";
                                    return(RedirectToAction("Index"));
                                }
                            }
                        }
                        else
                        {
                            TempData["_SUCCESS"] = "";
                            strValidationError.Clear();
                            strValidationError.Append("<span style=\"color:red\">Mẫu file không đúng, vui lòng tải file mẫu excel!</span><br/>" + strValiteDataTable);
                            ViewBag.ThongBao = strValidationError.ToString();
                        }
                    }
                    else
                    {
                        TempData["_SUCCESS"] = "";
                        strValidationError.Clear();
                        strValidationError.Append("<span style=\"color:red\">File không có dữ liệu!</span><br/>");
                        ViewBag.ThongBao = strValidationError.ToString();
                    }
                    if (System.IO.File.Exists(_filePath))
                    {
                        System.IO.File.Delete(_filePath);
                    }
                }
            }

            return(View());
        }