Ejemplo n.º 1
0
        public void Insert(BankEntity t)
        {
            SqlConnection conn = null;
            SqlCommand    cmd  = null;

            try
            {
                conn            = DALHelper.CreateSqlDbConnection();
                cmd             = new SqlCommand("usp_InsertBank", conn);
                cmd.CommandType = System.Data.CommandType.StoredProcedure;

                cmd.Parameters.AddWithValue("@Title", t.Title);
                cmd.Parameters.AddWithValue("@Description", t.Description);

                t.Id = Convert.ToInt32(cmd.ExecuteScalar());
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                conn.Close();
                cmd.Dispose();
                conn.Dispose();
            }
        }
Ejemplo n.º 2
0
        public void Delete(BankEntity t)
        {
            SqlConnection conn = null;
            SqlCommand    cmd  = null;

            try
            {
                conn            = DALHelper.CreateSqlDbConnection();
                cmd             = new SqlCommand("usp_DeleteBank", conn);
                cmd.CommandType = System.Data.CommandType.StoredProcedure;

                cmd.Parameters.AddWithValue("@Id", t.Id);

                cmd.ExecuteNonQuery();
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                conn.Close();
                cmd.Dispose();
                conn.Dispose();
            }
        }
Ejemplo n.º 3
0
        public void Update(BankEntity t)
        {
            SqlConnection conn = null;
            SqlCommand    cmd  = null;

            try
            {
                conn            = DALHelper.CreateSqlDbConnection();
                cmd             = new SqlCommand("usp_UpdateBank", conn);
                cmd.CommandType = System.Data.CommandType.StoredProcedure;

                cmd.Parameters.AddWithValue("@Id", t.Id);
                cmd.Parameters.AddWithValue("@Title", t.Title);
                cmd.Parameters.AddWithValue("@Description", t.Description);
                cmd.Parameters.AddWithValue("@Status", Convert.ToInt32(t.Status));

                cmd.ExecuteNonQuery();
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                conn.Close();
                cmd.Dispose();
                conn.Dispose();
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 向数据表Bank更新一条记录。带事务
        /// </summary>
        /// <param name="sp">事务对象</param>
        /// <param name="_BankModel">_BankModel</param>
        /// <returns>影响的行数</returns>
        public int Update(SqlTransaction sp, BankEntity _BankModel)
        {
            string sqlStr = "update Bank set [uid]=@uid,[Type]=@Type,[RealName]=@RealName,[CardNumber]=@CardNumber,[Addr]=@Addr,[Isdefault]=@Isdefault,[Status]=@Status,[Addtime]=@Addtime,[Updatetime]=@Updatetime where BankId=@BankId";

            SqlParameter[] _param =
            {
                new SqlParameter("@BankId",     SqlDbType.Int),
                new SqlParameter("@uid",        SqlDbType.VarChar),
                new SqlParameter("@Type",       SqlDbType.Int),
                new SqlParameter("@RealName",   SqlDbType.VarChar),
                new SqlParameter("@CardNumber", SqlDbType.VarChar),
                new SqlParameter("@Addr",       SqlDbType.VarChar),
                new SqlParameter("@Isdefault",  SqlDbType.Int),
                new SqlParameter("@Status",     SqlDbType.Int),
                new SqlParameter("@Addtime",    SqlDbType.DateTime),
                new SqlParameter("@Updatetime", SqlDbType.DateTime)
            };
            _param[0].Value = _BankModel.BankId;
            _param[1].Value = _BankModel.uid;
            _param[2].Value = _BankModel.Type;
            _param[3].Value = _BankModel.RealName;
            _param[4].Value = _BankModel.CardNumber;
            _param[5].Value = _BankModel.Addr;
            _param[6].Value = _BankModel.Isdefault;
            _param[7].Value = _BankModel.Status;
            _param[8].Value = _BankModel.Addtime;
            _param[9].Value = _BankModel.Updatetime;
            return(SqlHelper.ExecuteNonQuery(sp, CommandType.Text, sqlStr, _param));
        }
Ejemplo n.º 5
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,Name,Initials")] BankEntity bankEntity)
        {
            if (id != bankEntity.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(bankEntity);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!BankEntityExists(bankEntity.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(bankEntity));
        }
Ejemplo n.º 6
0
        /// <summary>
        /// 向数据库中插入一条新记录。带事务
        /// </summary>
        /// <param name="sp">事务对象</param>
        /// <param name="_BankModel">Bank实体</param>
        /// <returns>新插入记录的编号</returns>
        public int Insert(SqlTransaction sp, BankEntity _BankModel)
        {
            string sqlStr = "insert into Bank([uid],[Type],[RealName],[CardNumber],[Addr],[Isdefault],[Status],[Addtime],[Updatetime]) values(@uid,@Type,@RealName,@CardNumber,@Addr,@Isdefault,@Status,@Addtime,@Updatetime) select @@identity";
            int    res;

            SqlParameter[] _param =
            {
                new SqlParameter("@uid",        SqlDbType.VarChar),
                new SqlParameter("@Type",       SqlDbType.Int),
                new SqlParameter("@RealName",   SqlDbType.VarChar),
                new SqlParameter("@CardNumber", SqlDbType.VarChar),
                new SqlParameter("@Addr",       SqlDbType.VarChar),
                new SqlParameter("@Isdefault",  SqlDbType.Int),
                new SqlParameter("@Status",     SqlDbType.Int),
                new SqlParameter("@Addtime",    SqlDbType.DateTime),
                new SqlParameter("@Updatetime", SqlDbType.DateTime)
            };
            _param[0].Value = _BankModel.uid;
            _param[1].Value = _BankModel.Type;
            _param[2].Value = _BankModel.RealName;
            _param[3].Value = _BankModel.CardNumber;
            _param[4].Value = _BankModel.Addr;
            _param[5].Value = _BankModel.Isdefault;
            _param[6].Value = _BankModel.Status;
            _param[7].Value = _BankModel.Addtime;
            _param[8].Value = _BankModel.Updatetime;
            res             = Convert.ToInt32(SqlHelper.ExecuteScalar(sp, CommandType.Text, sqlStr, _param));
            return(res);
        }
Ejemplo n.º 7
0
        /// <summary>
        /// Deletes the bank.
        /// </summary>
        /// <param name="bank">The bank.</param>
        /// <returns></returns>
        public string DeleteBank(BankEntity bank)
        {
            const string sql = @"uspDelete_Bank";

            object[] parms = { "@BankId", bank.BankId };
            return(Db.Delete(sql, true, parms));
        }
        public BankResponse UpdateBank(BankEntity bank)
        {
            var response = new BankResponse {
                Acknowledge = AcknowledgeType.Success
            };

            try
            {
                if (!bank.Validate())
                {
                    foreach (string error in bank.ValidationErrors)
                    {
                        response.Message += error + Environment.NewLine;
                    }
                    response.Acknowledge = AcknowledgeType.Failure;
                    return(response);
                }
                response.Message = BankDao.UpdateBank(bank);
                if (!string.IsNullOrEmpty(response.Message))
                {
                    response.Acknowledge = AcknowledgeType.Failure;
                    return(response);
                }
                response.BankId = bank.BankId;
                return(response);
            }
            catch (Exception ex)
            {
                response.Acknowledge = AcknowledgeType.Failure;
                response.Message     = ex.Message;
                return(response);
            }
        }
Ejemplo n.º 9
0
        public List <BankEntity> GetBank(string connectionString)
        {
            List <BankEntity> listAccount = new List <BankEntity>();

            using (var context = new MISAEntity(connectionString))
            {
                var categories = context.BankInfoes.ToList();
                foreach (var result in categories)
                {
                    var bank = new BankEntity();

                    bank.BankId       = result.BankInfoID.ToString();
                    bank.BankAccount  = result.BankAccount;
                    bank.BankName     = result.BankName;
                    bank.BankAddress  = result.BankAddress;
                    bank.Description  = result.Description;
                    bank.IsActive     = result.Inactive == true?false:true;
                    bank.IsOpenInBank = result.OpenInBudget == true?false:true;

                    listAccount.Add(bank);
                }
            }

            return(listAccount);
        }
Ejemplo n.º 10
0
        public async Task <TData <string> > SaveForm(BankEntity entity)
        {
            TData <string> obj = new TData <string>();
            await bankService.SaveForm(entity);

            obj.Data = entity.Id.ParseToString();
            obj.Tag  = 1;
            return(obj);
        }
Ejemplo n.º 11
0
        protected void ProceedButton_Click(object sender, EventArgs e)
        {
            BankEntity entity = new BankEntity();

            entity.Title       = TitleTextBox.Text;
            entity.Description = OtherInfoTextBox.Text;

            new BankMapper().Insert(entity);
            Response.Redirect("List.aspx");
        }
Ejemplo n.º 12
0
        public async Task <int> EditBankAsync(BankEntity bank)
        {
            string sql = Utility.AppConfiguration().GetSection("StmtDBQueries").GetSection("editbank").Value;
            int    rows;

            using (var connection = new SqlConnection(connstring))
            {
                rows = await connection.ExecuteAsync(sql, bank);
            }
            return(rows);
        }
Ejemplo n.º 13
0
    public void WriteBankData(List <AppDataManager.DataDesc> data)
    {
        LocalDb _BankDB = new LocalDb("BankHistory");

        foreach (BankDataManager.BankDataDesc d in data)
        {
            BankEntity bank = new BankEntity("", "", d.activitySummary, d.amount, d.balance);
            _BankDB.appendTableFromBottom("BankHistory", bank);
        }
        _BankDB.close();
    }
Ejemplo n.º 14
0
        public async Task <IActionResult> Create([Bind("Id,Name,Initials")] BankEntity bankEntity)
        {
            if (ModelState.IsValid)
            {
                _context.Add(bankEntity);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(bankEntity));
        }
Ejemplo n.º 15
0
 /// <summary>
 /// Takes the specified bank.
 /// </summary>
 /// <param name="bank">The bank.</param>
 /// <returns></returns>
 private static object[] Take(BankEntity bank)
 {
     return(new object[]
     {
         "@BankID", bank.BankId,
         "@BankAccount", bank.BankAccount,
         "@BankAddress", bank.BankAddress,
         "@BankName", bank.BankName,
         "@Description", bank.Description,
         "@IsActive", bank.IsActive
     });
 }
Ejemplo n.º 16
0
 public async Task SaveForm(BankEntity entity)
 {
     if (entity.Id.IsNullOrZero())
     {
         entity.Create();
         await this.BaseRepository().Insert(entity);
     }
     else
     {
         await this.BaseRepository().Update(entity);
     }
 }
Ejemplo n.º 17
0
        protected void ProceedButton_Click(object sender, EventArgs e)
        {
            BankEntity entity = new BankEntity();

            entity.Id          = Convert.ToInt32(Request.QueryString["BankId"]);
            entity.Title       = TitleTextBox.Text;
            entity.Description = OtherInfoTextBox.Text;
            entity.Status      = StatusEnum.Active;

            new BankMapper().Update(entity);

            Response.Redirect("List.aspx");
        }
Ejemplo n.º 18
0
 public BankEntity Update(BankEntity entity)
 {
     try
     {
         _bankRepository.Update(entity);
         return(entity);
     }
     catch (Exception e)
     {
         _log.Error(e, "数据库操作出错");
         return(null);
     }
 }
Ejemplo n.º 19
0
 public bool Delete(BankEntity entity)
 {
     try
     {
         _bankRepository.Delete(entity);
         return(true);
     }
     catch (Exception e)
     {
         _log.Error(e, "数据库操作出错");
         return(false);
     }
 }
Ejemplo n.º 20
0
        public async Task <BankEntity> GetBankAsync(string bankcode)
        {
            BankEntity bank = new BankEntity();
            string     sql  = Utility.AppConfiguration().GetSection("StmtDBQueries").GetSection("getbank").Value;

            using (var connection = new SqlConnection(connstring))
            {
                var resp = await connection.QueryAsync <BankEntity>(sql, new { bankcode });

                bank = resp.FirstOrDefault();
            }

            return(bank);
        }
Ejemplo n.º 21
0
        /// <summary>
        /// 获取实体
        /// </summary>
        /// <param name="strWhere">参数化查询条件(例如: and Name = @Name )</param>
        /// <param name="dict">参数的名/值集合</param>
        /// <returns></returns>
        public virtual BankEntity GetEntity(string strWhere, Dictionary <string, object> dict = null)
        {
            BankEntity obj    = null;
            string     strSQL = "select top 1 * from Bank where 1=1 " + strWhere;

            using (NullableDataReader reader = _DB.GetDataReader(strSQL, dict))
            {
                if (reader.Read())
                {
                    obj = GetEntityFromrdr(reader);
                }
            }
            return(obj);
        }
Ejemplo n.º 22
0
        /// <summary>
        /// 获取实体(异步方式)
        /// </summary>
        /// <param name="strWhere">参数化查询条件(例如: and Name = @Name )</param>
        /// <param name="dict">参数的名/值集合</param>
        /// <returns></returns>
        public virtual async Task <BankEntity> GetEntityAsync(string strWhere, Dictionary <string, object> dict = null)
        {
            BankEntity obj    = null;
            string     strSQL = "select top 1 * from Bank where 1=1 " + strWhere;

            using (NullableDataReader reader = await Task.Run(() => _DB.GetDataReader(strSQL, dict)))
            {
                if (reader.Read())
                {
                    obj = GetEntityFromrdr(reader);
                }
            }
            return(obj);
        }
Ejemplo n.º 23
0
 /// <summary>
 /// 把实体类转换成键/值对集合
 /// </summary>
 /// <param name="entity"></param>
 /// <param name="dict"></param>
 private static void GetParameters(BankEntity entity, Dictionary <string, object> dict)
 {
     dict.Add("BankID", entity.BankID);
     dict.Add("BankShortName", entity.BankShortName);
     dict.Add("BankName", entity.BankName);
     dict.Add("Accounts", entity.Accounts);
     dict.Add("CardNum", entity.CardNum);
     dict.Add("HolderName", entity.HolderName);
     dict.Add("BankIntro", entity.BankIntro);
     dict.Add("BankPic", entity.BankPic);
     dict.Add("OrderSort", entity.OrderSort);
     dict.Add("IsDefault", entity.IsDefault);
     dict.Add("IsDisabled", entity.IsDisabled);
 }
Ejemplo n.º 24
0
        /// <summary>
        /// The add.
        /// </summary>
        /// <param name="code">
        /// The code.
        /// </param>
        /// <param name="bank">
        /// The bank.
        /// </param>
        /// <returns>
        /// The <see cref="Task"/>.
        /// </returns>
        public async Task <int> Add(Guid code, BankIn bank)
        {
            var newBank = new BankEntity
            {
                Code    = code,
                Swift   = bank.Swift,
                Country = bank.Country,
                Name    = bank.Name,
                Url     = bank.Url
            };

            this.context.Entry(newBank).State = EntityState.Added;
            var myint = await this.context.SaveChangesAsync();

            return(myint);
        }
Ejemplo n.º 25
0
 /// <summary>
 /// Takes the specified bank.
 /// </summary>
 /// <param name="bank">The bank.</param>
 /// <returns></returns>
 private static object[] Take(BankEntity bank)
 {
     return(new object[]
     {
         "@BankID", bank.BankId,
         "@BankAccount", bank.BankAccount,
         "@BankAddress", bank.BankAddress,
         "@BankName", bank.BankName,
         "@BudgetCode", bank.BudgetCode,
         "@Description", bank.Description,
         "@IsActive", bank.IsActive,
         "@IsOpenInBank", bank.IsOpenInBank,
         "@ProjectId", bank.ProjectId,
         "@SortOrder", bank.SortBank,
     });
 }
Ejemplo n.º 26
0
        /// <summary>
        /// 通过数据读取器生成实体类
        /// </summary>
        /// <param name="rdr"></param>
        /// <returns></returns>
        private static BankEntity GetEntityFromrdr(NullableDataReader rdr)
        {
            BankEntity info = new BankEntity();

            info.BankID        = rdr.GetInt32("BankID");
            info.BankShortName = rdr.GetString("BankShortName");
            info.BankName      = rdr.GetString("BankName");
            info.Accounts      = rdr.GetString("Accounts");
            info.CardNum       = rdr.GetString("CardNum");
            info.HolderName    = rdr.GetString("HolderName");
            info.BankIntro     = rdr.GetString("BankIntro");
            info.BankPic       = rdr.GetString("BankPic");
            info.OrderSort     = rdr.GetInt32("OrderSort");
            info.IsDefault     = rdr.GetBoolean("IsDefault");
            info.IsDisabled    = rdr.GetBoolean("IsDisabled");
            return(info);
        }
Ejemplo n.º 27
0
        /// <summary>
        /// The edit.
        /// </summary>
        /// <param name="code">
        /// The code.
        /// </param>
        /// <param name="bank">
        /// The bank.
        /// </param>
        /// <returns>
        /// The <see cref="Task"/>.
        /// </returns>
        public async Task <int> Edit(Guid code, BankIn bank)
        {
            var newBank = new BankEntity
            {
                Code    = code,
                Swift   = bank.Swift,
                Country = bank.Country,
                Name    = bank.Name,
                Url     = bank.Url
            };

            this.context.SeedAddOrUpdate(p => p.Code, p => new { p.Name, p.Swift, p.Country, p.Url, p.ChangeAt }, newBank);

            var myint = await this.context.SaveChangesAsync();

            return(myint);
        }
Ejemplo n.º 28
0
        public BankDTO ToDTO(BankEntity ef)
        {
            BankDTO dto = new BankDTO();

            dto.Answer         = ef.Answer;
            dto.ClassId        = ef.ClassId;
            dto.ClassName      = ef.BankClass.Title;
            dto.CreateDateTime = ef.CreateDateTime;
            dto.Id             = ef.Id;
            dto.ItemA          = ef.ItemA;
            dto.ItemB          = ef.ItemB;
            dto.ItemC          = ef.ItemC;
            dto.ItemD          = ef.ItemD;
            dto.ItemE          = ef.ItemE;
            dto.Subject        = ef.Subject;
            return(dto);
        }
Ejemplo n.º 29
0
        /// <summary>
        /// 得到  bank 数据实体
        /// </summary>
        /// <param name="dr">dr</param>
        /// <returns>bank 数据实体</returns>
        public BankEntity Populate_BankEntity_FromDr(IDataReader dr)
        {
            BankEntity Obj = new BankEntity();

            Obj.BankId     = ((dr["BankId"]) == DBNull.Value)?0:Convert.ToInt32(dr["BankId"]);
            Obj.uid        = dr["uid"].ToString();
            Obj.Type       = ((dr["Type"]) == DBNull.Value)?0:Convert.ToInt32(dr["Type"]);
            Obj.RealName   = dr["RealName"].ToString();
            Obj.CardNumber = dr["CardNumber"].ToString();
            Obj.Addr       = dr["Addr"].ToString();
            Obj.Isdefault  = ((dr["Isdefault"]) == DBNull.Value)?0:Convert.ToInt32(dr["Isdefault"]);
            Obj.Status     = ((dr["Status"]) == DBNull.Value)?0:Convert.ToInt32(dr["Status"]);
            Obj.Addtime    = ((dr["Addtime"]) == DBNull.Value)?Convert.ToDateTime("1900-1-1"):Convert.ToDateTime(dr["Addtime"]);
            Obj.Updatetime = ((dr["Updatetime"]) == DBNull.Value)?Convert.ToDateTime("1900-1-1"):Convert.ToDateTime(dr["Updatetime"]);

            return(Obj);
        }
Ejemplo n.º 30
0
 public int Add(BankDTO dto)
 {
     using (MyDbContext ctx = new MyDbContext())
     {
         BankEntity ef = new BankEntity();
         ef.Answer  = dto.Answer;
         ef.ClassId = dto.ClassId;
         ef.ItemA   = dto.ItemA;
         ef.ItemB   = dto.ItemB;
         ef.ItemC   = dto.ItemC;
         ef.ItemD   = dto.ItemD;
         ef.ItemE   = dto.ItemE;
         ef.Subject = dto.Subject;
         ctx.Banks.Add(ef);
         ctx.SaveChanges();
         return(ef.Id);
     }
 }
Ejemplo n.º 31
0
        protected void Button3_Click(object sender, EventArgs e)
        {
            BankEntity entity = new BankEntity();
            entity.AccountName = "AccountName";
            entity.AccountNumber = "AccountNumber";
            entity.AccountStatus = 1;
            entity.AreaCode = "sssssssssss";
            entity.BankAddress = "BankAddress";
            entity.BankCode = "BankCode";
            entity.BankGuid = Guid.NewGuid();
            entity.BankName = "BankName";
            entity.BankNo = 5;
            entity.Branch = "Branch";
            entity.CanUsable = Logics.True;
            entity.Email = "Email"; ;
            entity.Fax = "Fax";
            entity.IsPrimary = Logics.True;
            entity.Telephone = "Telephone";
            entity.UserGuid = Guid.NewGuid();

            BankBLL.Instance.Create(entity);
        }
Ejemplo n.º 32
0
 private string ServiceURIFor(double longitude, double latitude, int maxRecords, BankEntity.Type type)
 {
     return (type == BankEntity.Type.Atm) ? string.Format (SERVICE_URI, longitude, latitude, maxRecords, @"ATM") : string.Format (SERVICE_URI, longitude, latitude, maxRecords, @"Branch");
 }
Ejemplo n.º 33
0
 private void SetBankCardEntityValue(BankEntity originalEntity, ref BankEntity targetEntity)
 {
     targetEntity.UserGuid = originalEntity.UserGuid;
     targetEntity.AccountName = originalEntity.AccountName;
     targetEntity.AccountNumber = originalEntity.AccountNumber;
     targetEntity.AccountStatus = originalEntity.AccountStatus;
     targetEntity.BankAddress = originalEntity.BankAddress;
     targetEntity.BankName = originalEntity.BankName;
     targetEntity.CanUsable = originalEntity.CanUsable;
     targetEntity.IsPrimary = originalEntity.IsPrimary;
 }
Ejemplo n.º 34
0
        public ActionResult BankCardItem(string itemKey, BankEntity originalEntity)
        {
            bool isSuccessful = false;
            string displayMessage = string.Empty;
            BankEntity targetEntity = null;
            if (GuidHelper.IsInvalidOrEmpty(itemKey) == true)
            {
                targetEntity = new BankEntity();
                SetBankCardEntityValue(originalEntity, ref  targetEntity);
                isSuccessful = BankBLL.Instance.Create(targetEntity);
            }
            else
            {
                targetEntity = BankBLL.Instance.Get(itemKey);
                SetBankCardEntityValue(originalEntity, ref  targetEntity);
                isSuccessful = BankBLL.Instance.Update(targetEntity);
            }

            if (isSuccessful == true)
            {
                displayMessage = "数据保存成功";
            }
            else
            {
                displayMessage = "数据保存失败";
            }

            return Json(new LogicStatusInfo(isSuccessful, displayMessage));
        }
Ejemplo n.º 35
0
 public static BankEntity CreateBankEntity(int bankId)
 {
     BankEntity bankEntity = new BankEntity();
     bankEntity.BankId = bankId;
     return bankEntity;
 }
Ejemplo n.º 36
0
 public void AddToBankEntitySet(BankEntity bankEntity)
 {
     base.AddObject("BankEntitySet", bankEntity);
 }
Ejemplo n.º 37
0
        public ActionResult BankCardBatch(bool isOnlyPlaceHolder = true)
        {
            List<SystemStatusInfo> infoList = new List<SystemStatusInfo>();
            string returnUrl = RequestHelper.CurrentFullUrl;

            string bankName = RequestHelper.GetValue("BankName");
            string bankBranch = RequestHelper.GetValue("Branch");

            int headerRowNumber = RequestHelper.GetValue<int>("headerRowNumber", 3);
            HttpPostedFile postedFile = RequestHelper.CurrentRequest.Files["fileSelector"];

            #region 条件判定(如果不满足基本条件直接跳出并提示)
            if (HttpPostedFileHelper.HasFile(postedFile) == false)
            {
                SystemStatusInfo itemError = new SystemStatusInfo();
                itemError.SystemStatus = SystemStatuses.Warnning;
                itemError.Message = "没有选择Excel文件,请先选择文件然后再进行导入!";
                infoList.Add(itemError);

                this.TempData.Add("OperationResultData", infoList);
                return RedirectToAction("OperationResults", "System", new { returnUrl = returnUrl });
            }
            #endregion

            try
            {
                #region 将数据读入内存
                int userCountSuccessful = 0;
                int userCountFailure = 0;
                string userListFailure = string.Empty;
                DataTable dataTable = ExcelHelper.ReadExcel(postedFile.InputStream, headerRowNumber);
                NameValueCollection bankCardItemMapData = (NameValueCollection)ConfigurationManager.GetSection("bankCardItemMap");

                List<string> columnNameList = new List<string>();
                for (int i = 0; i < dataTable.Columns.Count; i++)
                {
                    columnNameList.Add(dataTable.Columns[i].ColumnName);
                }
                #endregion

                #region 对Excel的每行信息进行解析
                for (int i = 0; i < dataTable.Rows.Count; i++)
                {
                    int dataRowNumberInExcel = headerRowNumber + i + 1;
                    try
                    {
                        DataRow row = dataTable.Rows[i];
                        if (row == null)
                        {
                            continue;
                        }

                        string laborUserNameCN = string.Empty;
                        string laborUserCardID = string.Empty;

                        Guid bankCardGuid = GuidHelper.NewGuid();
                        BankEntity bankEntity = new BankEntity();
                        bankEntity.BankGuid = bankCardGuid;
                        bankEntity.BankName = bankName;
                        bankEntity.Branch = bankBranch;

                        foreach (string columnName in columnNameList)
                        {
                            //1.根据Excel文件中的列名称映射银行卡实体的属性名称
                            string propertyName = bankCardItemMapData[columnName];
                            if (string.IsNullOrWhiteSpace(propertyName))
                            {
                                continue;
                            }

                            //2.给银行卡实体属性赋值
                            object cellValue = row[columnName];
                            if (cellValue != null)
                            {
                                switch (propertyName)
                                {
                                    case "UserNameCN":
                                        laborUserNameCN = cellValue.ToString();
                                        break;
                                    case "UserCardID":
                                        laborUserCardID = cellValue.ToString();
                                        break;
                                    case "AccountNumber":
                                        bankEntity.AccountNumber = cellValue.ToString();
                                        break;
                                    case "CompanyName":
                                        //Hack:xieran20121022 暂时使用BankAddress记录公司信息
                                        bankEntity.BankAddress = cellValue.ToString();
                                        break;
                                    default:
                                        //do nothing.
                                        break;
                                }
                            }
                        }

                        if (string.IsNullOrWhiteSpace(laborUserNameCN) || string.IsNullOrWhiteSpace(laborUserCardID))
                        {
                            userCountFailure++;
                            userListFailure += string.Format("{0}({1}({2})请确认此用户的用户名称和身份证号均不可以为空), <br />", dataRowNumberInExcel, laborUserNameCN, laborUserCardID);
                        }
                        else
                        {
                            //根据人员姓名和身份证号,确认劳务人员的UserGuid
                            BusinessUser labor = BusinessUserBLL.GetByUserIDCard(laborUserCardID);
                            if (labor != null && labor.IsEmpty == false)
                            {
                                if (labor.UserNameCN == laborUserNameCN)
                                {
                                    bankEntity.AccountName = laborUserNameCN;
                                    bankEntity.UserGuid = labor.UserGuid;
                                    bankEntity.IsPrimary = Logics.True;

                                    bool isSuccessful = BankBLL.Instance.Create(bankEntity);
                                    if (isSuccessful == true)
                                    {
                                        userCountSuccessful++;
                                    }
                                    else
                                    {
                                        userCountFailure++;
                                        userListFailure += string.Format("{0}({1}({2})错误未知), <br />", dataRowNumberInExcel, laborUserNameCN, laborUserCardID);
                                    }
                                }
                                else
                                {
                                    userCountFailure++;
                                    userListFailure += string.Format("{0}({1}({2})请确认此用户的用户名称和身份证号是否跟系统内的数据一致), <br />", dataRowNumberInExcel, laborUserNameCN, laborUserCardID);
                                }
                            }
                            else
                            {
                                userCountFailure++;
                                userListFailure += string.Format("{0}({1}({2})请确认此用户的用户名称和身份证号是否跟系统内的数据一致), <br />", dataRowNumberInExcel, laborUserNameCN, laborUserCardID);
                            }
                        }
                    }
                    catch (Exception)
                    {
                        userCountFailure++;
                        userListFailure += i + ", ";
                    }
                }
                #endregion

                #region 操作结果展示
                //A.1、操作结果(导入成功的人员信息)
                SystemStatusInfo itemSuccessful = new SystemStatusInfo();
                itemSuccessful.SystemStatus = SystemStatuses.Success;
                itemSuccessful.Message = string.Format("共有{0}人导入成功。", userCountSuccessful);
                infoList.Add(itemSuccessful);

                //A.2、操作结果(导入失败的人员信息)
                if (userCountFailure > 0)
                {
                    SystemStatusInfo itemError = new SystemStatusInfo();
                    itemError.SystemStatus = SystemStatuses.Failuer;
                    itemError.Message = string.Format("共有{0}人导入失败。", userCountFailure);
                    if (string.IsNullOrWhiteSpace(userListFailure) == false)
                    {
                        itemError.Message += string.Format("导入失败的人员分别位于{0}行, <br />", userListFailure);
                    }
                    infoList.Add(itemError);
                }
                #endregion
            }
            catch (OfficeXmlFileException)
            {
                SystemStatusInfo itemError = new SystemStatusInfo();
                itemError.SystemStatus = SystemStatuses.Failuer;
                itemError.Message = "请选择Excel2003格式的文件。你可以将本文件在Excel中另存的时候选择97/2003格式!";
                infoList.Add(itemError);
            }

            this.TempData.Add("OperationResultData", infoList);
            return RedirectToAction("OperationResults", "System", new { returnUrl = returnUrl });
        }
Ejemplo n.º 38
0
 public UIImage IconFor(BankEntity.Type entityType, IconType iconType)
 {
     return Icons[entityType][iconType];
 }
Ejemplo n.º 39
0
 public EntityMarker(BankEntity entity, IconType iconType, MarkerBundle markerBundle)
 {
     Entity = entity;
     IconType = iconType;
     MarkerBundle = markerBundle;
 }