Пример #1
0
 public ActionResult EditStorePartial(int id, FormCollection form)
 {
     if (ModelState.IsValid)
     {
         var item = new Off_Store();
         if (TryUpdateModel(item))
         {
             item.UploadTime = DateTime.Now;
             item.UploadUser = User.Identity.Name;
             _offlineDB.Entry(item).State = System.Data.Entity.EntityState.Modified;
             _offlineDB.SaveChanges();
             return(Content("SUCCESS"));
         }
         else
         {
             ModelState.AddModelError("", "错误");
             var user       = UserManager.FindById(User.Identity.GetUserId());
             var regionlist = _offlineDB.Off_System_Setting.SingleOrDefault(m => m.Off_System_Id == user.DefaultSystemId && m.SettingName == "AreaList");
             if (regionlist != null)
             {
                 string[]      regionarray = regionlist.SettingValue.Split(',');
                 List <Object> attendance  = new List <Object>();
                 foreach (var i in regionarray)
                 {
                     attendance.Add(new { Key = i, Value = i });
                 }
                 ViewBag.Regionlist = new SelectList(attendance, "Key", "Value", item.Region);
                 return(PartialView(item));
             }
             else
             {
                 return(PartialView("ErrorPartial"));
             }
         }
     }
     else
     {
         return(PartialView("ErrorPartial"));
     }
 }
Пример #2
0
        // Origin Off_CreateStore
        public ActionResult CreateStorePartial()
        {
            var store      = new Off_Store();
            var user       = UserManager.FindById(User.Identity.GetUserId());
            var regionlist = _offlineDB.Off_System_Setting.SingleOrDefault(m => m.Off_System_Id == user.DefaultSystemId && m.SettingName == "AreaList");

            if (regionlist != null)
            {
                string[]      regionarray = regionlist.SettingValue.Split(',');
                List <Object> attendance  = new List <Object>();
                foreach (var i in regionarray)
                {
                    attendance.Add(new { Key = i, Value = i });
                }
                ViewBag.Regionlist = new SelectList(attendance, "Key", "Value");
                return(PartialView(store));
            }
            else
            {
                return(PartialView("ErrorPartial"));
            }
        }
Пример #3
0
        // Origin: analyseExcel_StoreTable
        private async Task <List <Excel_DataMessage> > UploadStoreByExcelAsync(string filename, List <Excel_DataMessage> messageList)
        {
            try
            {
                var             user    = UserManager.FindById(User.Identity.GetUserId());
                string          folder  = HttpContext.Server.MapPath("~/Content/xlsx/");
                string          strConn = "Provider=Microsoft.Ace.OleDb.12.0;" + "data source=" + folder + filename + ";Extended Properties='Excel 12.0; HDR=1; IMEX=1'"; //此连接可以操作.xls与.xlsx文件
                OleDbConnection conn    = new OleDbConnection(strConn);
                conn.Open();
                DataSet          ds   = new DataSet();
                OleDbDataAdapter odda = new OleDbDataAdapter(string.Format("SELECT * FROM [{0}]", "Sheet1$"), conn);                    //("select * from [Sheet1$]", conn);
                odda.Fill(ds, "[Sheet1$]");
                conn.Close();
                DataTable dt          = ds.Tables[0];
                int       i           = 0;
                bool      result_flag = true;
                foreach (DataRow dr in dt.Rows)
                {
                    i++;
                    try
                    {
                        // 判断是否含有数据
                        string storename  = dr["店铺名称"].ToString();
                        var    exist_item = _offlineDB.Off_Store.SingleOrDefault(m => m.StoreName == storename && m.Off_System_Id == user.DefaultSystemId);
                        if (exist_item != null)
                        {
                            // 更新数据
                            exist_item.StoreSystem = dr["渠道"].ToString();
                            exist_item.StoreName   = dr["店铺名称"].ToString();
                            exist_item.Distributor = dr["经销商"].ToString();
                            exist_item.Region      = dr["区域"].ToString();
                            exist_item.Address     = dr["详细地址"].ToString();
                            exist_item.Longitude   = dr["经度"].ToString();
                            exist_item.Latitude    = dr["纬度"].ToString();
                            exist_item.UploadTime  = DateTime.Now;
                            exist_item.UploadUser  = User.Identity.Name;
                            messageList.Add(new Excel_DataMessage(i, "数据修改成功", false));
                        }
                        else
                        {
                            // 添加数据
                            Off_Store store = new Off_Store()
                            {
                                StoreSystem   = dr["渠道"].ToString(),
                                StoreName     = dr["店铺名称"].ToString(),
                                Distributor   = dr["经销商"].ToString(),
                                Region        = dr["区域"].ToString(),
                                Address       = dr["详细地址"].ToString(),
                                Longitude     = dr["经度"].ToString(),
                                Latitude      = dr["纬度"].ToString(),
                                UploadTime    = DateTime.Now,
                                UploadUser    = User.Identity.Name,
                                Off_System_Id = user.DefaultSystemId
                            };
                            _offlineDB.Off_Store.Add(store);
                            messageList.Add(new Excel_DataMessage(i, "数据添加成功", false));
                        }
                    }
                    catch (Exception e)
                    {
                        result_flag = false;
                        messageList.Add(new Excel_DataMessage(i, "格式错误或列名不存在," + e.InnerException, true));
                    }
                }
                if (result_flag)
                {
                    await _offlineDB.SaveChangesAsync();

                    messageList.Add(new Excel_DataMessage(0, "数据存储成功", false));
                }
                else
                {
                    messageList.Add(new Excel_DataMessage(0, "数据行发生错误,未保存", true));
                }
            }
            catch (Exception e)
            {
                messageList.Add(new Excel_DataMessage(-1, "表格格式错误" + e.ToString(), true));
            }
            return(messageList);
        }