示例#1
0
 //public string SyncToMySQL(string id, string UserName)
 //{
 //    Merchant_Product SyncProduct;
 //    Merchant_Product_Hierarchy SyncHierarchy;
 //    List<Merchant_Product_Image> SyncListImage;
 //    List<Merchant_Product_Property> SyncListProperty;
 //    string ProductID, MerchantID;
 //    using (var db = new OrmliteConnection().openConn(AppConfigs.MCCConnectionString))
 //    {
 //        try
 //        {
 //            SyncProduct = db.FirstOrDefault<Merchant_Product>("id = {0}", id);
 //            if (SyncProduct == null)
 //                return "Không tìm thấy sản phẩm";
 //            ProductID = SyncProduct.ma_san_pham;
 //            MerchantID = SyncProduct.ma_gian_hang;
 //            SyncHierarchy = db.FirstOrDefault<Merchant_Product_Hierarchy>("ma_san_pham = {0} and ma_gian_hang = {1}", ProductID, MerchantID);
 //            SyncListImage = db.Select<Merchant_Product_Image>("ma_san_pham = {0} and ma_gian_hang = {1}", ProductID, MerchantID);
 //            SyncListProperty = db.Select<Merchant_Product_Property>("ma_san_pham = {0} and ma_gian_hang = {1}", ProductID, MerchantID);
 //        }
 //        catch (Exception e)
 //        {
 //            return e.Message.ToString();
 //        }
 //    }
 //    string sqlProduct, sqlHierarchy, whereImage = "";
 //    List<string> sqlListImage = new List<string>();
 //    //List<string> sqlListProperty = new List<string>();
 //    using (MySqlConnection con = new MySqlConnection(AppConfigs.FEConnectionString))
 //    {
 //        con.Open();
 //        string sql = @"select * from Merchant_Product where ma_san_pham = {0} and ma_gian_hang = {1}".Params(ProductID, MerchantID);
 //        using (MySqlCommand cmd = new MySqlCommand(sql, con))
 //        {
 //            var rs = cmd.ExecuteReader();
 //            if (!rs.Read())
 //                sqlProduct = @"insert into Merchant_Product(ma_loai_san_pham,ten_san_pham,part_no,mo_ta,noi_dung,trong_so,khoi_luong,don_gia,gia_si,tu_khoa,tag,slug,url,catalog,xuat_xu,thuong_hieu,model,minimum_order,trang_thai_xuat_ban,trang_thai_duyet,trang_thai,ma_san_pham,ma_gian_hang)
 //                                values({0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17},{18},{19},{20},{21},{22})".Params(SyncProduct.ma_loai_san_pham, SyncProduct.ten_san_pham, SyncProduct.part_no, SyncProduct.mo_ta, SyncProduct.noi_dung,
 //                SyncProduct.trong_so, SyncProduct.khoi_luong, SyncProduct.don_gia, SyncProduct.gia_si, SyncProduct.tu_khoa, SyncProduct.tag, SyncProduct.slug, SyncProduct.url, SyncProduct.catalog,
 //                SyncProduct.xuat_xu, SyncProduct.thuong_hieu, SyncProduct.model, SyncProduct.minimum_order, SyncProduct.trang_thai_xuat_ban,
 //                SyncProduct.trang_thai_duyet, SyncProduct.trang_thai, SyncProduct.ma_san_pham, SyncProduct.ma_gian_hang);
 //            else
 //                sqlProduct = @"update Merchant_Product
 //                                set ma_loai_san_pham = {0}, ten_san_pham = {1}, part_no = {2}, mo_ta = {3},
 //                                noi_dung = {4},trong_so = {5},don_gia = {6},gia_si = {7},tu_khoa = {8},tag = {9},
 //                                slug  = {10},url  = {11},xuat_xu = {12},thuong_hieu = {13},model = {14},minimum_order = {15},
 //                                trang_thai_xuat_ban  = {16},trang_thai_duyet = {17},trang_thai = {18}, khoi_luong = {21}, catalog = {22}
 //                                where ma_san_pham  = {19} and ma_gian_hang = {20}".Params(SyncProduct.ma_loai_san_pham, Utility.ConvertUTF(SyncProduct.ten_san_pham), SyncProduct.part_no, SyncProduct.mo_ta, SyncProduct.noi_dung,
 //                SyncProduct.trong_so, SyncProduct.don_gia, SyncProduct.gia_si, SyncProduct.tu_khoa, SyncProduct.tag, SyncProduct.slug, SyncProduct.url,
 //                SyncProduct.xuat_xu, SyncProduct.thuong_hieu, SyncProduct.model, SyncProduct.minimum_order, SyncProduct.trang_thai_xuat_ban,
 //                SyncProduct.trang_thai_duyet, SyncProduct.trang_thai, SyncProduct.ma_san_pham, SyncProduct.ma_gian_hang, SyncProduct.khoi_luong, SyncProduct.catalog);
 //            rs.Close();
 //        }
 //        sql = @"select * from Merchant_Product_Hierarchy where ma_san_pham = {0} and ma_gian_hang = {1}".Params(ProductID, MerchantID);
 //        using (MySqlCommand cmd = new MySqlCommand(sql, con))
 //        {
 //            var rs = cmd.ExecuteReader();
 //            if (!rs.Read())
 //                sqlHierarchy = @"insert into Merchant_Product_Hierarchy(ma_cay_phan_cap_1,ma_cay_phan_cap_2,ma_cay_phan_cap_3, trang_thai, ma_san_pham, ma_gian_hang)
 //                                values({0},{1},{2},{3},{4},{5})".Params(SyncHierarchy.ma_cay_phan_cap_1, SyncHierarchy.ma_cay_phan_cap_2,
 //                                SyncHierarchy.ma_cay_phan_cap_3, SyncHierarchy.trang_thai, SyncHierarchy.ma_san_pham, SyncHierarchy.ma_gian_hang);
 //            else
 //                sqlHierarchy = @"update Merchant_Product_Hierarchy
 //                                set ma_cay_phan_cap_1 = {0}, ma_cay_phan_cap_2 = {1}, ma_cay_phan_cap_3 = {2}, trang_thai = {3}
 //                                where ma_san_pham  = {4} and ma_gian_hang = {5}".Params(SyncHierarchy.ma_cay_phan_cap_1, SyncHierarchy.ma_cay_phan_cap_2,
 //                                SyncHierarchy.ma_cay_phan_cap_3, SyncHierarchy.trang_thai, SyncHierarchy.ma_san_pham, SyncHierarchy.ma_gian_hang);
 //            rs.Close();
 //        }
 //        if (SyncListImage.Count > 0)
 //            foreach (var Index in SyncListImage)
 //            {
 //                sql = @"select * from Merchant_Product_Image where ma_san_pham = {0} and ma_gian_hang = {1} and ma_anh_goc = {2}".Params(ProductID, MerchantID, Index.ma_anh_goc);
 //                using (MySqlCommand cmd = new MySqlCommand(sql, con))
 //                {
 //                    var rs = cmd.ExecuteReader();
 //                    if (!rs.Read())
 //                        sqlListImage.Add(@"insert into Merchant_Product_Image(url,ma_anh_goc,ma_san_pham,ma_gian_hang)
 //                                    values({0},{1},{2},{3});".Params(Utility.ConvertUTF(Index.url), Index.ma_anh_goc, Index.ma_san_pham, Index.ma_gian_hang));
 //                    else
 //                        sqlListImage.Add(@"update Merchant_Product_Image
 //                                    set url = {0}
 //                                    where ma_anh_goc = {1} and ma_san_pham  = {2} and ma_gian_hang = {3};".Params(Utility.ConvertUTF(Index.url), Index.ma_anh_goc, Index.ma_san_pham, Index.ma_gian_hang));
 //                    rs.Close();
 //                }
 //                whereImage += "{0},".Params(Index.ma_anh_goc);
 //            }
 //        /*if (SyncListProperty.Count > 0)
 //            foreach (var Index in SyncListProperty)
 //            {
 //                sql = @"select * from Merchant_Product_Property where ma_san_pham = {0} and ma_gian_hang = {1} and ma_anh_goc = {2}".Params(ProductID, MerchantID, Index.ma_thong_so);
 //                using (MySqlCommand cmd = new MySqlCommand(sql, con))
 //                {
 //                    var rs = cmd.ExecuteReader();
 //                    if (!rs.Read())
 //                        sqlListProperty.Add(@"insert into Merchant_Product_Image(ma_thong_so,ma_thuoc_tinh,gia_tri,ma_san_pham,ma_gian_hang)
 //                                    values({0},{1},{2},{3},{4});".Params(Index.ma_thong_so, Index.ma_thuoc_tinh, Index.gia_tri, Index.ma_san_pham, Index.ma_gian_hang));
 //                    else
 //                        sqlListProperty.Add(@"update Merchant_Product_Image
 //                                    set ma_thong_so = {0}, ma_thuoc_tinh = {1}, gia_tri = {2}
 //                                    where ma_san_pham  = {3} and ma_gian_hang = {4};".Params(Index.ma_thong_so, Index.ma_thuoc_tinh, Index.gia_tri, Index.ma_san_pham, Index.ma_gian_hang));
 //                    rs.Close();
 //                }
 //            }*/
 //        using (MySql.Data.MySqlClient.MySqlTransaction trans = con.BeginTransaction())
 //        {
 //            try
 //            {
 //                using (MySqlCommand cmd = new MySqlCommand(Utility.ConvertUTF(sqlProduct), con, trans))
 //                {
 //                    cmd.ExecuteNonQuery();
 //                    cmd.CommandText = sqlHierarchy;
 //                    cmd.ExecuteNonQuery();
 //                    if (sqlListImage.Count > 0)
 //                    {
 //                        foreach (string sqlString in sqlListImage)
 //                        {
 //                            cmd.CommandText = sqlString;
 //                            cmd.ExecuteNonQuery();
 //                        }
 //                        cmd.CommandText = "delete from Merchant_Product_Image where ma_san_pham = {0} and ma_gian_hang = {1}".Params(ProductID, MerchantID) +
 //                                            "and ma_anh_goc not in (" + whereImage.Substring(0, whereImage.Length - 1) + ")";
 //                        cmd.ExecuteNonQuery();
 //                    }
 //                }
 //                //using (MySqlCommand cmd = new MySqlCommand("", con, trans))
 //                //{
 //                //    if (sqlListProperty.Count > 0)
 //                //        foreach (string sqlString in sqlListProperty)
 //                //        {
 //                //            cmd.CommandText = sqlString;
 //                //            cmd.ExecuteNonQuery();
 //                //        }
 //                //}
 //                trans.Commit();
 //            }
 //            catch (Exception e)
 //            {
 //                trans.Rollback();
 //                return e.Message.ToString();
 //            }
 //        }
 //    }
 //    return "true";
 //}
 private Merchant_Product EmptyIfNull(Merchant_Product p1)
 {
     p1.ma_san_pham      = (p1.ma_san_pham == null) ? "" : p1.ma_san_pham;
     p1.ma_loai_san_pham = (p1.ma_loai_san_pham == null) ? "" : p1.ma_loai_san_pham;
     p1.ten_san_pham     = (p1.ten_san_pham == null) ? "" : p1.ten_san_pham;
     p1.ma_gian_hang     = (p1.ma_gian_hang == null) ? "" : p1.ma_gian_hang;
     p1.mo_ta            = (p1.mo_ta == null) ? "" : p1.mo_ta;
     p1.nguoi_duyet      = (p1.nguoi_duyet == null) ? "" : p1.nguoi_duyet;
     p1.nguoi_duyet      = (p1.nguoi_duyet == null) ? "" : p1.nguoi_duyet;
     p1.trang_thai_duyet = (p1.trang_thai_duyet == null) ? "" : p1.trang_thai_duyet;
     p1.trang_thai       = (p1.trang_thai == null) ? "" : p1.trang_thai;
     return(p1);
 }
 public ActionResult GetProductInfo(string ma_san_pham)
 {
     using (IDbConnection dbConn = Helpers.OrmliteConnection.openConn())
     {
         var data = new Merchant_Product();
         if (isAdmin)
         {
             data = dbConn.FirstOrDefault <Merchant_Product>("ma_san_pham = {0}", ma_san_pham);
         }
         else
         {
             data = dbConn.FirstOrDefault <Merchant_Product>("ma_gian_hang ={0} and ma_san_pham = {1}", currentUser.ma_gian_hang, ma_san_pham);
         }
         if (data != null)
         {
             return(Json(new { success = true, data = data, JsonRequestBehavior.AllowGet }));
         }
         return(Json(new { success = false, error = "Sản phẩm không tồn tại!", JsonRequestBehavior.AllowGet }));
     }
 }
        public ActionResult CreateUpdate(Merchant_OrderHeader data, List <Merchant_OrderDetail> details)
        {
            using (var dbConn = MCC.Helpers.OrmliteConnection.openConn())
            {
                try
                {
                    if (accessDetail != null && (accessDetail.access["all"] || (accessDetail.access["create"] && accessDetail.access["update"])))
                    {
                        if (details == null)
                        {
                            return(Json(new { success = false, error = "Vui lòng chọn sản phẩm!" }));
                        }
                        Customer custom = dbConn.FirstOrDefault <Customer>("ma_khach_hang={0}".Params(data.ma_khach_hang));
                        if (data.id > 0 || !String.IsNullOrEmpty(data.ma_don_hang))
                        {
                            Merchant_OrderHeader exist = dbConn.FirstOrDefault <Merchant_OrderHeader>("ma_don_hang={0}".Params(data.ma_don_hang));

                            if (exist != null)
                            {
                                if (exist.trang_thai_don_hang != AllConstant.trang_thai_don_hang.NEW)
                                {
                                    return(Json(new { success = false, error = "Đơn hàng này đã được xác nhận, không được phép chình sửa!" }));
                                }

                                exist.hinh_thuc_thanh_toan = data.hinh_thuc_thanh_toan;
                                exist.ngay_cap_nhat        = DateTime.Now;
                                exist.nguoi_cap_nhat       = currentUser.name;
                                exist.quan_huyen_giao      = data.quan_huyen_giao;
                                exist.tinh_thanh_giao      = data.tinh_thanh_giao;
                                exist.so_dien_thoai_giao   = data.so_dien_thoai_giao;
                                exist.dia_chi_giao_hang    = data.dia_chi_giao_hang;
                                dbConn.UpdateOnly(exist,
                                                  onlyFields: p =>
                                                  new
                                {
                                    p.hinh_thuc_thanh_toan,
                                    p.ngay_cap_nhat,
                                    p.nguoi_cap_nhat,
                                    p.quan_huyen_giao,
                                    p.tinh_thanh_giao,
                                    p.so_dien_thoai_giao,
                                    p.dia_chi_giao_hang,
                                },
                                                  where : p => p.ma_don_hang == exist.ma_don_hang);
                            }
                            data = exist;
                        }
                        else
                        {
                            //Tạo OrderHeader
                            var chars       = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
                            var beginString = new char[3];
                            var lastString  = new char[3];
                            var random      = new Random();

                            for (int i = 0; i < beginString.Length; i++)
                            {
                                beginString[i] = chars[random.Next(chars.Length)];
                            }
                            for (int i = 0; i < lastString.Length; i++)
                            {
                                lastString[i] = chars[random.Next(chars.Length)];
                            }
                            data.ma_don_hang         = string.Join("", beginString) + DateTime.Now.ToString("yyyyMMddHHmm") + string.Join("", lastString);
                            data.quan_huyen_giao     = data.quan_huyen_giao;
                            data.tinh_thanh_giao     = data.tinh_thanh_giao;
                            data.ma_gian_hang        = currentUser.ma_gian_hang;
                            data.hoten               = custom.hoten;
                            data.trang_thai_don_hang = AllConstant.trang_thai_don_hang.NEW;
                            data.ngay_tao            = DateTime.Now;
                            data.ngay_cap_nhat       = DateTime.Now;
                            data.ngay_lay_hang       = DateTime.Now;
                            data.ngay_giao_hang      = DateTime.Now;
                            data.ngay_xac_nhan       = DateTime.Now;
                            data.ngay_hen_giao_hang  = DateTime.Now;
                            data.nguoi_tao           = User.Identity.Name;
                            dbConn.Insert(data);
                            int Id = (int)dbConn.GetLastInsertId();
                            data.id = Id;
                        }

                        //Xóa tất các các OrderDetail đã có của đơn hàng này
                        dbConn.Delete <Merchant_OrderDetail>("ma_don_hang={0}".Params(data.ma_don_hang));
                        //Tạo OrderDetail mới
                        Merchant_Product     productinfo = new Merchant_Product();
                        Merchant_OrderDetail existdetail = new Merchant_OrderDetail();
                        foreach (Merchant_OrderDetail item in details)
                        {
                            if (item.ma_san_pham != null)
                            {
                                productinfo = dbConn.FirstOrDefault <Merchant_Product>("ma_san_pham={0} and ma_gian_hang={1}", item.ma_san_pham, data.ma_gian_hang);
                                existdetail = dbConn.FirstOrDefault <Merchant_OrderDetail>("ma_don_hang={0} and ma_san_pham={1}".Params(data.ma_don_hang, item.ma_san_pham));
                                if (existdetail != null)
                                {
                                    existdetail.so_luong = existdetail.so_luong + item.so_luong;
                                    dbConn.UpdateOnly(existdetail,
                                                      onlyFields: p =>
                                                      new
                                    {
                                        p.so_luong,
                                    },
                                                      where : p => p.ma_don_hang == existdetail.ma_don_hang && p.ma_san_pham == existdetail.ma_san_pham);
                                }
                                else
                                {
                                    item.ma_don_hang   = data.ma_don_hang;
                                    item.ma_gian_hang  = data.ma_gian_hang;
                                    item.ten_san_pham  = productinfo.ten_san_pham;
                                    item.don_gia       = productinfo.don_gia;
                                    item.thanh_tien    = item.so_luong * productinfo.don_gia;
                                    item.ngay_tao      = DateTime.Now;
                                    item.ngay_cap_nhat = DateTime.Now;
                                    item.nguoi_tao     = User.Identity.Name;
                                    dbConn.Insert(item);
                                }
                            }
                        }
                        return(Json(new { success = true, data = data }));
                    }
                    else
                    {
                        return(Json(new { success = false, error = "Không có quyền tạo" }));
                    }
                }
                catch (Exception e)
                {
                    return(Json(new { success = false, error = "Lỗi" }));
                }
            }
        }
示例#4
0
 public string UpdateProduct(Merchant_Product product, Merchant_Product_Hierarchy hierarchy, List <Merchant_Product_Image> listimage, List <Merchant_Product_Property> listproperty, string connectstring)
 {
     using (var db = new OrmliteConnection().openConn(connectstring))
     {
         try
         {
             Merchant_Product checkProduct;
             if (product.ma_gian_hang == "All")
             {
                 checkProduct = db.FirstOrDefault <Merchant_Product>("ma_san_pham = {0}", product.ma_san_pham);
             }
             else
             {
                 checkProduct = db.FirstOrDefault <Merchant_Product>("ma_san_pham = {0} and ma_gian_hang = {1}", product.ma_san_pham, product.ma_gian_hang);
             }
             if (checkProduct == null)
             {
                 return("Thông tin không hợp lệ");
             }
             checkProduct.url                 = (!string.IsNullOrEmpty(product.url) && checkProduct.url != product.url) ? product.url : checkProduct.url;
             checkProduct.catalog             = (!string.IsNullOrEmpty(product.catalog) && checkProduct.catalog != product.catalog) ? product.catalog : checkProduct.catalog;
             checkProduct.ma_loai_san_pham    = !string.IsNullOrEmpty(product.ma_loai_san_pham) ? product.ma_loai_san_pham : checkProduct.ma_loai_san_pham;
             checkProduct.part_no             = !string.IsNullOrEmpty(product.part_no) ? product.part_no : checkProduct.part_no;
             checkProduct.ten_san_pham        = !string.IsNullOrEmpty(product.ten_san_pham) ? product.ten_san_pham : checkProduct.ten_san_pham;
             checkProduct.mo_ta               = !string.IsNullOrEmpty(product.mo_ta) ? product.mo_ta : "";
             checkProduct.noi_dung            = !string.IsNullOrEmpty(product.noi_dung) ? product.noi_dung : "";
             checkProduct.tu_khoa             = !string.IsNullOrEmpty(product.tu_khoa) ? product.tu_khoa : "";
             checkProduct.tag                 = !string.IsNullOrEmpty(product.tag) ? product.tag : "";
             checkProduct.slug                = !string.IsNullOrEmpty(product.slug) ? product.slug : "";
             checkProduct.xuat_xu             = !string.IsNullOrEmpty(product.xuat_xu) ? product.xuat_xu : "";
             checkProduct.thuong_hieu         = !string.IsNullOrEmpty(product.thuong_hieu) ? product.thuong_hieu : "";
             checkProduct.model               = !string.IsNullOrEmpty(product.model) ? product.model : "";
             checkProduct.khoi_luong          = product.khoi_luong;
             checkProduct.gia_si              = product.gia_si;
             checkProduct.don_gia             = product.don_gia;
             checkProduct.trang_thai          = product.trang_thai;
             checkProduct.trang_thai_xuat_ban = AllConstant.trang_thai_xuat_ban.CHUA_XUAT_BAN;
             checkProduct.trang_thai_duyet    = AllConstant.trang_thai_duyet.CHUA_DUYET;
             checkProduct.nguoi_cap_nhat      = product.nguoi_cap_nhat;
             checkProduct.ngay_cap_nhat       = DateTime.Now;
             db.Update(checkProduct);
             //List<SqlParameter> param = new List<SqlParameter>();
             //param.Add(new SqlParameter("@id", checkProduct.id));
             //new SqlHelper().ExecuteQuery("p_UpdateSlugForMerchantProduct", param);
             // Update Hierarchy
             var checkHierarchy = db.FirstOrDefault <Merchant_Product_Hierarchy>(@"ma_san_pham = {0} and ma_gian_hang = {1} and 
                                                                                     ma_cay_phan_cap_1 = {2} and ma_cay_phan_cap_2 = {3} 
                                                                                     and ma_cay_phan_cap_3 = {4} ",
                                                                                 checkProduct.ma_san_pham,
                                                                                 checkProduct.ma_gian_hang,
                                                                                 hierarchy.ma_cay_phan_cap_1,
                                                                                 hierarchy.ma_cay_phan_cap_2,
                                                                                 hierarchy.ma_cay_phan_cap_3);
             if (checkHierarchy != null)
             {
                 db.ExecuteNonQuery(@"update Merchant_Product_Hierarchy set
                                 ma_cay_phan_cap_1 = {0},
                                 ma_cay_phan_cap_2 = {1},
                                 ma_cay_phan_cap_3 = {2},
                                 nguoi_cap_nhat = {3},
                                 ngay_cap_nhat = {4}
                                 where ma_san_pham = {5} and ma_gian_hang = {6}".Params(hierarchy.ma_cay_phan_cap_1,
                                                                                        hierarchy.ma_cay_phan_cap_2,
                                                                                        hierarchy.ma_cay_phan_cap_3,
                                                                                        product.nguoi_cap_nhat,
                                                                                        DateTime.Now,
                                                                                        checkProduct.ma_san_pham,
                                                                                        checkProduct.ma_gian_hang));
             }
             else
             {
                 hierarchy.ma_san_pham   = checkProduct.ma_san_pham;
                 hierarchy.ma_gian_hang  = checkProduct.ma_gian_hang;
                 hierarchy.ngay_tao      = DateTime.Now;
                 hierarchy.nguoi_tao     = checkProduct.nguoi_tao;
                 hierarchy.ngay_cap_nhat = DateTime.Parse("1900-01-01");
                 hierarchy.trang_thai    = AllConstant.trang_thai.DANG_SU_DUNG; // Giá trị đang hoạt động
                 db.Insert(hierarchy);
             }
             // Update Thumbnail
             if (listimage != null)
             {
                 db.Delete <Merchant_Product_Image>("ma_san_pham = {0} and ma_gian_hang = {1}", checkProduct.ma_san_pham, checkProduct.ma_gian_hang);
                 foreach (Merchant_Product_Image item in listimage)
                 {
                     if (item.id == 0)
                     {
                         item.ma_san_pham    = checkProduct.ma_san_pham;
                         item.ma_gian_hang   = checkProduct.ma_gian_hang;
                         item.ngay_tao       = DateTime.Now;
                         item.nguoi_tao      = product.nguoi_tao;
                         item.ngay_cap_nhat  = DateTime.Now;
                         item.nguoi_cap_nhat = product.nguoi_cap_nhat;
                         db.Insert(item);
                     }
                     else
                     {
                         return("Lỗi khi tạo thumbnail hình ảnh");
                     }
                 }
             }
             // Update Property
             if (listproperty != null)
             {
                 db.Delete <Merchant_Product_Property>("ma_san_pham = {0} and ma_gian_hang = {1}", checkProduct.ma_san_pham, checkProduct.ma_gian_hang);
                 foreach (Merchant_Product_Property item in listproperty)
                 {
                     if (item.id == 0)
                     {
                         item.ma_gian_hang   = checkProduct.ma_gian_hang;
                         item.ma_san_pham    = checkProduct.ma_san_pham;
                         item.ngay_tao       = DateTime.Now;
                         item.ngay_cap_nhat  = DateTime.Parse("1900-01-01");
                         item.nguoi_cap_nhat = product.nguoi_cap_nhat;
                         item.ngay_cap_nhat  = DateTime.Now;
                         db.Insert(item);
                     }
                     else
                     {
                         return("Lỗi khi cập nhật thuộc tính");
                     }
                 }
             }
             //SyncToMySQL(checkProduct.id.ToString(), product.nguoi_cap_nhat);
             SyncToMySQL(checkProduct.id.ToString(), connectstring);
             return("true");
         }
         catch (Exception ex)
         {
             return("Lỗi thao tác dữ liệu");
         }
     }
 }
示例#5
0
        public string CreateProduct(Merchant_Product product, Merchant_Product_Hierarchy hierarchy, List <Merchant_Product_Image> listimage, List <Merchant_Product_Property> listproperty, string connectstring)
        {
            using (var db = new OrmliteConnection().openConn(connectstring))
            {
                //using (var dbTrans = db.OpenTransaction(IsolationLevel.ReadCommitted))
                {
                    try
                    {
                        if (!string.IsNullOrEmpty(product.ma_san_pham))
                        {
                            var Checkproduct = db.FirstOrDefault <Merchant_Product>(s => s.ma_san_pham == product.ma_san_pham);
                            if (Checkproduct != null)
                            {
                                return(UpdateProduct(product, hierarchy, listimage, listproperty, connectstring));
                            }
                        }
                        if (product.id == 0 && !String.IsNullOrEmpty(product.nguoi_tao) && !String.IsNullOrEmpty(product.ma_gian_hang))
                        {
                            var lastId = db.FirstOrDefault <Merchant_Product>("SELECT TOP 1 * FROM Merchant_Product ORDER BY ma_san_pham DESC");
                            if (lastId != null && lastId.ma_san_pham.Contains("SP"))
                            {
                                var nextNo = Int32.Parse(lastId.ma_san_pham.Substring(2, 7)) + 1;
                                product.ma_san_pham = "SP" + String.Format("{0:0000000}", nextNo);
                            }
                            else
                            {
                                product.ma_san_pham = "SP" + "0000001";
                            }
                            product.ma_loai_san_pham = !string.IsNullOrEmpty(product.ma_loai_san_pham) ? product.ma_loai_san_pham : "";
                            product.part_no          = !string.IsNullOrEmpty(product.part_no) ? product.part_no : "";
                            product.mo_ta            = !string.IsNullOrEmpty(product.mo_ta) ? product.mo_ta : "";
                            product.noi_dung         = !string.IsNullOrEmpty(product.noi_dung) ? product.noi_dung : "";
                            product.tu_khoa          = !string.IsNullOrEmpty(product.tu_khoa) ? product.tu_khoa : "";
                            product.tag                 = !string.IsNullOrEmpty(product.tag) ? product.tag : "";
                            product.slug                = !string.IsNullOrEmpty(product.slug) ? product.slug : "";
                            product.xuat_xu             = !string.IsNullOrEmpty(product.xuat_xu) ? product.xuat_xu : "";
                            product.model               = !string.IsNullOrEmpty(product.model) ? product.model : "";
                            product.trang_thai          = AllConstant.trang_thai.DANG_SU_DUNG;           //giá trị đang hoạt động
                            product.trang_thai_duyet    = AllConstant.trang_thai_duyet.CHUA_DUYET;       //giá trị chờ duyệt
                            product.trang_thai_xuat_ban = AllConstant.trang_thai_xuat_ban.CHUA_XUAT_BAN; //giá trị chờ xuất bản
                            product.nguoi_xuat_ban      = product.nguoi_duyet = "";
                            product.ngay_xuat_ban       = product.ngay_duyet = product.ngay_cap_nhat = DateTime.Parse("1900-01-01");
                            product.ngay_tao            = DateTime.Now;
                            db.Insert(product);
                            Int64 productId = (Int64)db.GetLastInsertId();

                            //List<SqlParameter> param = new List<SqlParameter>();
                            //param.Add(new SqlParameter("@id", productId));
                            //new SqlHelper().ExecuteNoneQuery("p_UpdateSlugForMerchantProduct", param);


                            if (hierarchy.id == 0)
                            {
                                hierarchy.ma_san_pham   = product.ma_san_pham;
                                hierarchy.ma_gian_hang  = product.ma_gian_hang;
                                hierarchy.ngay_tao      = DateTime.Now;
                                hierarchy.nguoi_tao     = product.nguoi_tao;
                                hierarchy.ngay_cap_nhat = DateTime.Parse("1900-01-01");
                                hierarchy.trang_thai    = AllConstant.trang_thai.DANG_SU_DUNG; // Giá trị đang hoạt động
                                db.Insert(hierarchy);
                                if (listimage != null)
                                {
                                    foreach (Merchant_Product_Image item in listimage)
                                    {
                                        if (item.id == 0)
                                        {
                                            item.ma_san_pham  = product.ma_san_pham;
                                            item.ma_gian_hang = product.ma_gian_hang;
                                            item.ngay_tao     = DateTime.Now;
                                            item.nguoi_tao    = product.nguoi_tao;
                                            db.Insert(item);
                                        }
                                        else
                                        {
                                            //dbTrans.Rollback();
                                            return("Lỗi khi tạo thumbnail hình ảnh");
                                        }
                                    }
                                }
                                if (listproperty != null)
                                {
                                    foreach (Merchant_Product_Property item in listproperty)
                                    {
                                        if (item.id == 0)
                                        {
                                            item.ma_gian_hang  = product.ma_gian_hang;
                                            item.ma_san_pham   = product.ma_san_pham;
                                            item.ngay_tao      = DateTime.Now;
                                            item.nguoi_tao     = product.nguoi_tao;
                                            item.ngay_cap_nhat = DateTime.Parse("1900-01-01");
                                            db.Insert(item);
                                        }
                                        else
                                        {
                                            //dbTrans.Rollback();
                                            return("Lỗi khi tạo thuộc tính");
                                        }
                                    }
                                }
                                //dbTrans.Commit();
                                new Merchant_Product_Warehouse_DAO().CreateUpdate(product.ma_san_pham, product.ma_gian_hang, product.nguoi_tao, connectstring);
                                return("true@@" + product.ma_san_pham);
                            }
                            else
                            {
                                // dbTrans.Rollback();
                                return("Lỗi khi tạo ngành hàng");
                            }
                        }
                        else
                        {
                            // dbTrans.Rollback();
                            return("Lỗi khi tạo sản phẩm");
                        }
                    }
                    catch (Exception ex)
                    {
                        //dbTrans.Rollback();
                        return("Lỗi thao tác dữ liệu");
                    }
                }
            }
        }