Пример #1
0
        public ActionResult Update(Merchant_Info item, HttpPostedFileBase file)
        {
            if (accessDetail != null && (accessDetail.access["all"] || accessDetail.access["update"]))
            {
                string rs = new Merchant_Info_DAO().Update(item, currentUser.name, AppConfigs.MCCConnectionString);
                if (rs == "true")
                {
                    using (var dbConn = MCC.Helpers.OrmliteConnection.openConn())
                    {
                        if (file != null)
                        {
                            item.logo_gian_hang = new Helpers.ProcessImage().UploadImageToFolder(string.Empty, file, item.ma_gian_hang, currentUser.name);
                            dbConn.UpdateOnly(item,
                                              onlyFields: p =>
                                              new
                            {
                                p.logo_gian_hang,
                            },
                                              where : p => p.id == item.id);
                        }


                        var data = dbConn.FirstOrDefault <Merchant_Info>("ma_gian_hang={0}".Params(item.ma_gian_hang));
                        return(Json(new { success = true, data = data }));
                    }
                }
                return(Json(new { success = false, message = rs, JsonRequestBehavior.AllowGet }));
            }
            return(RedirectToAction("NoAccess", "Error"));
        }
Пример #2
0
 public string Authentication(Merchant_Info row, string UserName, string connectionString)
 {
     using (var db = new OrmliteConnection().openConn(connectionString))
     {
         using (var dbTrans = db.OpenTransaction(IsolationLevel.ReadCommitted))
         {
             try
             {
                 var checkID = db.FirstOrDefault <Merchant_Info>(s => s.id == row.id && s.ma_gian_hang == row.ma_gian_hang && s.trang_thai_xac_thuc == "A");
                 if (checkID == null)
                 {
                     dbTrans.Rollback();
                     return("Không xác định được gian hàng!");
                 }
                 var           newData = Newtonsoft.Json.JsonConvert.SerializeObject(checkID);
                 Merchant_Info data    = Newtonsoft.Json.JsonConvert.DeserializeObject <Merchant_Info>(new Merchant_History_DAO().getValueHistory("Merchant_Info", row.ma_gian_hang, db));
                 data.trang_thai_xac_thuc = AllConstant.trang_thai_xac_thuc.DA_XAC_THUC;
                 db.Update(data);
                 var rs = new Merchant_History_DAO().createHistory("Merchant_Info", checkID.ma_gian_hang, newData, UserName, db);
                 if (rs != "true")
                 {
                     dbTrans.Rollback();
                     return(rs);
                 }
                 dbTrans.Commit();
                 return("true");
             }
             catch (Exception e)
             {
                 dbTrans.Rollback();
                 return(e.Message.ToString());
             }
         }
     }
 }
Пример #3
0
        public string CreateMerchant(Merchant_Info row, string UserName, string connectionString)
        {
            using (var db = new OrmliteConnection().openConn(connectionString))
            {
                //using (var dbTrans = db.OpenTransaction(IsolationLevel.ReadCommitted))
                {
                    try
                    {
                        var checkID = db.SingleOrDefault <Merchant_Info>("id={0}", row.id);
                        if (checkID == null)
                        {
                            string ma_gian_hang = String.Empty;

                            var lastId = db.FirstOrDefault <Merchant_Info>("SELECT TOP 1 * FROM Merchant_Info ORDER BY id DESC");
                            if (lastId != null)
                            {
                                if (lastId.ma_gian_hang.Contains("GH"))
                                {
                                    var nextNo = Int32.Parse(lastId.ma_gian_hang.Substring(7, 2)) + 1;
                                    ma_gian_hang = "GH" + String.Format("{0:0000000}", nextNo);
                                }
                            }
                            else
                            {
                                ma_gian_hang = "GH0000001";
                            }
                            row.ma_gian_hang        = ma_gian_hang;
                            row.slug                = StringHelper.convertToUnSign3(row.ten_gian_hang);
                            row.ngay_tao            = DateTime.Now;
                            row.nguoi_tao           = UserName;
                            row.ngay_tiep_xuc       = !string.IsNullOrEmpty(row.ngay_tiep_xuc.ToString()) ? row.ngay_tiep_xuc : DateTime.Parse("1900-01-01");
                            row.ngay_ky_hop_dong    = !string.IsNullOrEmpty(row.ngay_tiep_xuc.ToString()) ? row.ngay_tiep_xuc : DateTime.Parse("1900-01-01");
                            row.ngay_duyet          = !string.IsNullOrEmpty(row.ngay_duyet.ToString()) ? row.ngay_duyet : DateTime.Parse("1900-01-01");
                            row.ngay_hoat_dong      = !string.IsNullOrEmpty(row.ngay_hoat_dong.ToString()) ? row.ngay_hoat_dong : DateTime.Parse("1900-01-01");
                            row.trang_thai_duyet    = AllConstant.trang_thai_duyet.CHUA_DUYET;
                            row.trang_thai_xuat_ban = AllConstant.trang_thai_xuat_ban.CHUA_XUAT_BAN;
                            row.trang_thai_xac_thuc = AllConstant.trang_thai_xac_thuc.CHUA_XAC_THUC;
                            row.ngay_tao            = DateTime.Now;
                            row.nguoi_tao           = "System";
                            row.ngay_cap_nhat       = DateTime.Now;
                            row.nguoi_cap_nhat      = "System";
                            db.Insert(row);
                            new SqlHelper().ExecuteNoneQuery("update tw_User set ma_gian_hang='" + ma_gian_hang + "' where name='" + UserName + "'", new List <SqlParameter>(), CommandType.Text);
                        }
                        //dbTrans.Commit();
                        return("true");
                    }
                    catch (Exception e)
                    {
                        //dbTrans.Rollback();
                        return(e.Message.ToString());
                    }
                }
            }
        }
Пример #4
0
 public Merchant_Info ReadByMerchantID(string ma_gian_hang, string connectionString)
 {
     using (var db = new OrmliteConnection().openConn(connectionString))
     {
         Merchant_Info data = db.SingleOrDefault <Merchant_Info>("ma_gian_hang = {0}", ma_gian_hang);
         if (data == null)
         {
             return(new Merchant_Info());
         }
         return(data);
     }
 }
Пример #5
0
 public ActionResult Create(Merchant_Info item, HttpPostedFileBase file)
 {
     if (asset.Create || asset.Update)
     {
         string result = "";
         try
         {
             if (file != null && file.ContentLength > 0)
             {
                 var fileName = Path.GetFileName(file.FileName);
                 var refix    = "Merchant_Info_" + currentUser.UserName + "_" + DateTime.Now.ToString("yyyyMMddHHmmss");
                 Helpers.UploadFile.CreateFolder(Server.MapPath("~/Images/Merchant_Info/"));
                 var path = Path.Combine(Server.MapPath("~/Images/Merchant_Info/"), refix + Path.GetExtension(fileName));
                 file.SaveAs(path);
                 item.logo_gian_hang = refix + Path.GetExtension(fileName);
             }
             List <Merchant_Info> lstMerchantInfo = new List <Merchant_Info>();
             lstMerchantInfo.Add(item);
             result = new Merchant_Info_DAO().UpSert(lstMerchantInfo, currentUser.UserName, "Insert");
             if (result == "true")
             {
                 if (item.id == 0)// 0 insert, 1 update
                 {
                     return(Json(new { success = true, type = 0 }));
                 }
                 else
                 {
                     return(Json(new { success = true, type = 1 }));
                 }
             }
             else
             {
                 return(Json(new { success = false, message = result }));
             }
         }
         catch (Exception e)
         {
             return(Json(new { success = false, message = "Có lỗi file upload" + e.Message }));
         }
     }
     else
     {
         return(Json(new { success = false, message = "Bạn không có quyền." }));
     }
 }
Пример #6
0
        public ActionResult Register(Merchant_Info model)
        {
            ModelState.Clear();
            if (currentUser != null)
            {
                if (!String.IsNullOrEmpty(currentUser.ma_gian_hang))
                {
                    return(Json(new { success = true, JsonRequestBehavior.AllowGet }));
                }
            }

            using (var dbConn = Helpers.OrmliteConnection.openConn(AppConfigs.MCCConnectionString))
            {
                //dbConn.ChangeDatabase(AllConstant.ERPDBName);
                var data = dbConn.SingleOrDefault <Merchant_Info>("email={0}", model.email);
                if (data == null)
                {
                    List <Merchant_Info> listMerchant = new List <Merchant_Info>();
                    listMerchant.Add(model);
                    var result = new Merchant_Info_DAO().UpSert(listMerchant, currentUser.name, AppConfigs.MCCConnectionString);
                    if (result == "true")
                    {
                        data = dbConn.SingleOrDefault <Merchant_Info>("email={0}", model.email);
                        currentUser.ma_gian_hang = data.ma_gian_hang;
                        //dbConn.ChangeDatabase(AllConstant.MCCDBName);
                        dbConn.UpdateOnly(currentUser,
                                          onlyFields: p =>
                                          new
                        {
                            p.ma_gian_hang
                        },
                                          where : p => p.id == currentUser.id);
                        return(Json(new { success = true, JsonRequestBehavior.AllowGet }));
                    }
                    else
                    {
                        return(Json(new { success = false, message = "Tạo gian hàng thất bại", data, JsonRequestBehavior.AllowGet }));
                    }
                }
                else
                {
                    return(Json(new { success = false, email = Resources.Global._email_exist, data, JsonRequestBehavior.AllowGet }));
                }
            }
        }
Пример #7
0
        public async Task <ActionResult> Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                using (var dbConn = Helpers.OrmliteConnection.openConn())
                {
                    int count         = 0;
                    var existEmail    = dbConn.SingleOrDefault <tw_User>("email={0}", model.Email);
                    var existShopName = dbConn.SingleOrDefault <Merchant_Info>("ten_gian_hang={0}", model.ten_gian_hang);
                    var existUrl      = dbConn.SingleOrDefault <Merchant_Info>("website={0}", model.website);
                    if (existEmail != null)
                    {
                        ModelState.AddModelError("", Resources.Global._email_exited);
                        count++;
                    }
                    if (existShopName != null)
                    {
                        ModelState.AddModelError("", Resources.Global._shop_name_exsited);
                        count++;
                    }
                    if (existUrl != null)
                    {
                        ModelState.AddModelError("", Resources.Global._url_is_exsited);
                        count++;
                    }
                    if (count == 0)
                    {
                        var user = new ApplicationUser()
                        {
                            UserName = model.UserName, PhoneNumber = model.PhoneNumber, Email = model.Email
                        };
                        var result = await UserManager.CreateAsync(user, model.Password);

                        if (result.Succeeded)
                        {
                            // ADD USER
                            var newUser = new tw_User();
                            newUser.name       = model.UserName;
                            newUser.email      = model.Email;
                            newUser.phone      = model.PhoneNumber;
                            newUser.fullName   = model.FullName;
                            newUser.registerAt = DateTime.Now;
                            newUser.homePage   = "Home";
                            newUser.active     = false;
                            newUser.vendorAuth = "";
                            newUser.userKey    = user.Id;
                            //newUser.ma_gian_hang= dbConn.QueryScalar<string>("select MAX(ma_gian_hang) from Merchant_Info");
                            newUser.createdAt = DateTime.Now;
                            newUser.createdBy = "system";
                            dbConn.Insert(newUser);

                            // ADD MERCHANT_INFO
                            Merchant_Info merchantinfo = new Merchant_Info();
                            merchantinfo.ten_gian_hang = model.ten_gian_hang;
                            merchantinfo.website       = model.website;
                            //List<Merchant_Info> lstMerchant = new List<Merchant_Info>();
                            //lstMerchant.Add(merchantinfo);
                            Merchant_Info_DAO merchantDao = new Merchant_Info_DAO();
                            merchantDao.CreateMerchant(merchantinfo, model.UserName, AppConfigs.MCCConnectionString);



                            // ADD USERGROUP
                            Int64 userId  = (Int64)dbConn.GetLastInsertId();
                            var   groupId = dbConn.Scalar <Int64>("select id from tw_UserGroup where name = 'MerchantAdmin'");
                            if (groupId > 0)
                            {
                                var userInGroup = new tw_UserInGroup();
                                userInGroup.userId    = userId;
                                userInGroup.groupId   = groupId;
                                userInGroup.createdAt = DateTime.Now;
                                userInGroup.createdBy = "system";
                                dbConn.Insert(userInGroup);
                            }

                            // ADD USERACTIVATION
                            string         code      = Guid.NewGuid().ToString();;
                            UserActivation userActiv = new UserActivation();
                            userActiv.UserName       = model.UserName;
                            userActiv.Email          = model.Email;
                            userActiv.MerchantName   = model.ten_gian_hang;
                            userActiv.FullName       = model.FullName;
                            userActiv.Phone          = model.PhoneNumber;
                            userActiv.ActivationCode = code;
                            userActiv.Date           = DateTime.Now;
                            userActiv.DeadTime       = DateTime.Now.AddDays(3);// sau 3 ngay link active vo hieu luc
                            userActiv.ngay_tao       = DateTime.Now;
                            userActiv.nguoi_tao      = "system";
                            userActiv.ngay_cap_nhat  = DateTime.Now;
                            userActiv.nguoi_cap_nhat = "system";
                            dbConn.Insert(userActiv);

                            //SEND MAIL
                            string body = string.Empty;
                            using (StreamReader reader = new StreamReader(System.Web.Hosting.HostingEnvironment.MapPath("~/EmailTemplate/newUserTemplate.html")))
                            {
                                body = reader.ReadToEnd();
                            }
                            body = body.Replace("{username}", model.UserName);
                            body = body.Replace("{fullname}", model.FullName);
                            body = body.Replace("{phone}", model.PhoneNumber);
                            body = body.Replace("{email}", model.Email);

                            //xác thực bằng web
                            body = body.Replace("{activation}", AppConfigs.Url + "/Account/Activation?key=" + code + "&email=" + model.Email + "&username="******"&ten_gian_hang=" + model.ten_gian_hang);
                            //xác thực thông qua API
                            //body = body.Replace("{activation}", AllConstant.UrlAPI + "api/ActivationAccount/Activation?key=" + code + "&email=" + model.Email + "&username="******"&ten_gian_hang=" + model.ten_gian_hang);
                            BackgroundJob.Enqueue(() => new Helpers.SendMail().Send(model.Email, "", "Xin hoàn thành thủ tục đăng ký trên Thietbinhanh.com!", body, ""));
                            // new Helpers.SendMail().Send(model.Email, "", "Xin hoàn thành thủ tục đăng ký trên Thietbinhanh.com!", body, "");
                            //await SignInAsync(user, isPersistent: false);
                            return(View("~/Views/Account/Success.cshtml"));
                        }
                        else
                        {
                            AddErrors(result);
                        }
                    }
                }
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
Пример #8
0
        public string Update(Merchant_Info row, string UserName, string connectionString)
        {
            using (var db = new OrmliteConnection().openConn(connectionString))
            {
                try
                {
                    var checkID = db.SingleOrDefault <Merchant_Info>("ma_gian_hang = {0}", row.ma_gian_hang);
                    if (checkID != null)
                    {
                        bool changeFlag = false;
                        if (!String.IsNullOrEmpty(row.ten_viet_tat) && checkID.ten_viet_tat != row.ten_viet_tat)
                        {
                            checkID.ten_viet_tat = row.ten_viet_tat;
                            changeFlag           = true;
                        }
                        if (!String.IsNullOrEmpty(row.ten_tieng_anh) && checkID.ten_tieng_anh != row.ten_tieng_anh)
                        {
                            checkID.ten_tieng_anh = row.ten_tieng_anh;
                            changeFlag            = true;
                        }
                        if (!String.IsNullOrEmpty(row.website) && checkID.website != row.website)
                        {
                            checkID.website = row.website;
                            changeFlag      = true;
                        }
                        if (!String.IsNullOrEmpty(row.dien_thoai) && checkID.dien_thoai != row.dien_thoai)
                        {
                            checkID.dien_thoai = row.dien_thoai;
                            changeFlag         = true;
                        }
                        if (!String.IsNullOrEmpty(row.fax) && checkID.fax != row.fax)
                        {
                            checkID.fax = row.fax;
                            changeFlag  = true;
                        }
                        if (!String.IsNullOrEmpty(row.dia_chi_tru_so) && checkID.dia_chi_tru_so != row.dia_chi_tru_so)
                        {
                            checkID.dia_chi_tru_so = row.dia_chi_tru_so;
                            changeFlag             = true;
                        }

                        if (!String.IsNullOrEmpty(row.mo_ta) && checkID.mo_ta != row.mo_ta)
                        {
                            checkID.mo_ta = row.mo_ta;
                            changeFlag    = true;
                        }
                        if (!String.IsNullOrEmpty(row.email) && checkID.email != row.email)
                        {
                            var checkEmail = db.FirstOrDefault <Merchant_Info>("email = {0} and ma_gian_hang!={1}", row.email, row.ma_gian_hang);
                            if (checkEmail != null)
                            {
                                return("Email đã tồn tại!");
                            }
                            checkID.email = row.email;
                            changeFlag    = true;
                        }
                        if (!String.IsNullOrEmpty(row.tai_khoan_thanh_toan) && checkID.tai_khoan_thanh_toan != row.tai_khoan_thanh_toan)
                        {
                            checkID.tai_khoan_thanh_toan = row.tai_khoan_thanh_toan;
                            changeFlag = true;
                        }
                        checkID.logo_gian_hang = string.IsNullOrEmpty(row.logo_gian_hang) ? checkID.logo_gian_hang : row.logo_gian_hang;
                        checkID.ma_tinh_tp     = string.IsNullOrEmpty(row.ma_tinh_tp) ? checkID.ma_tinh_tp : row.ma_tinh_tp;
                        checkID.ten_tinh_tp    = string.IsNullOrEmpty(row.ten_tinh_tp) ? checkID.ten_tinh_tp : row.ten_tinh_tp;
                        checkID.ma_quan_huyen  = string.IsNullOrEmpty(row.ma_quan_huyen) ? checkID.ma_quan_huyen : row.ma_quan_huyen;
                        checkID.ten_quan_huyen = string.IsNullOrEmpty(row.ten_quan_huyen) ? checkID.ten_quan_huyen : row.ten_quan_huyen;
                        if (changeFlag)
                        {
                            checkID.ngay_cap_nhat       = DateTime.Now;
                            checkID.nguoi_cap_nhat      = UserName;
                            checkID.trang_thai_xac_thuc = AllConstant.trang_thai_xac_thuc.CHUA_XAC_THUC;
                            var newData = Newtonsoft.Json.JsonConvert.SerializeObject(checkID);
                            //var rs = new Merchant_History_DAO().createHistory("Merchant_Info", checkID.ma_gian_hang, newData, UserName, db);
                            //if (rs != "true")
                            //{
                            //    return "Ghi lịch sử thất bại!";
                            //}
                            if (db.ExecuteNonQuery("update Merchant_Info set trang_thai_xac_thuc = '" + AllConstant.trang_thai_xac_thuc.CHUA_XAC_THUC + "' where id = {0} and ma_gian_hang = {1}".Params(checkID.id, checkID.ma_gian_hang)) > 0)
                            {
                                checkID.ngay_cap_nhat  = DateTime.Now;
                                checkID.nguoi_cap_nhat = UserName;
                                db.Update(checkID);
                                return("true");
                            }
                            else
                            {
                                return("Xác thực không thành công!");
                            }
                        }
                        else
                        {
                            checkID.ngay_cap_nhat  = DateTime.Now;
                            checkID.nguoi_cap_nhat = UserName;
                            db.Update(checkID);
                            return("true");
                        }
                    }
                    return("Thông tin không xác định!");
                }
                catch (Exception)
                {
                    return("Error");
                }
            }
        }