/// <summary>
 /// 返回仓库物流公司账号关联实体对象(根据仓库编号  物流账号编号)
 /// </summary>
 /// <param name="entity">仓库物流公司账号关联 实体</param>
 /// <returns></returns>
 /// <remarks>2015-10-12 王江 创建</remarks>
 public override LgStoreLogisticsCompany IsExistRecord(LgStoreLogisticsCompany entity)
 {
     return(Context.Sql("select * from LgStoreLogisticsCompany m where m.warehousesysno=:WarehouseSysNo and m.accountsysno=@AccountSysNo")
            .Parameter("WarehouseSysNo", entity.WarehouseSysNo)
            .Parameter("AccountSysNo", entity.AccountSysNo)
            .QuerySingle <LgStoreLogisticsCompany>());
 }
 /// <summary>
 /// 更新(仓库物流公司账号关联表)
 ///</summary>
 /// <param name="entity">仓库物流公司账号关联表</param>
 /// <returns>影响的行</returns>
 /// <remarks> 2015-10-10 朱成果 创建</remarks>
 public override int Update(LgStoreLogisticsCompany entity)
 {
     return(Context.Update("LGSTORELOGISTICSCOMPANY", entity)
            .AutoMap(o => o.SysNo)
            .Where("SysNo", entity.SysNo)
            .Execute());
 }
 /// <summary>
 /// 插入(仓库物流公司账号关联表)
 ///</summary>
 /// <param name="entity">仓库物流公司账号关联表</param>
 /// <returns>新增记录编号</returns>
 /// <remarks> 2015-10-10 朱成果 创建</remarks>
 public override int Insert(LgStoreLogisticsCompany entity)
 {
     entity.SysNo = Context.Insert("LGSTORELOGISTICSCOMPANY", entity)
                    .AutoMap(o => o.SysNo)
                    .ExecuteReturnLastId <int>("SysNo");
     return(entity.SysNo);
 }
        /// <summary>
        /// 电子面单账号关联仓库-添加或移除
        /// </summary>
        /// <param name="AccountSysNo"></param>
        /// <param name="WarehouseSysNo"></param>
        /// <param name="result"></param>
        /// <param name="CurrentUserSysNo"></param>
        /// <returns></returns>
        /// <remarks>2015-10-12 王江 创建</remarks>
        public Result AddOrDeleteConnect(int AccountSysNo, int WarehouseSysNo, ref Result result, int CurrentUserSysNo)
        {
            LgStoreLogisticsCompany model = new LgStoreLogisticsCompany()
            {
                AccountSysNo   = AccountSysNo,
                WarehouseSysNo = WarehouseSysNo,
                CreateBy       = CurrentUserSysNo,
                CreateDate     = DateTime.Now
            };

            var entity = ILgStoreLogisticsCompanyDao.Instance.IsExistRecord(model);

            if (entity == null)
            {
                //一个仓库只能关联一个配送方式,一个配送方式只能关联一个仓库

                //根据仓库编号返回已关联的配送方式
                var _entity = this.GetEntityByWarehouseSysNo(WarehouseSysNo);
                if (_entity != null)
                {
                    result.Status     = false;
                    result.StatusCode = 3;   //该仓库已关联其他配送方式
                    result.Message    = "该仓库已关联:" + _entity.AccountName;
                    return(result);
                }
                else
                {
                    //执行添加操作
                    result.Status     = ILgStoreLogisticsCompanyDao.Instance.Insert(model) > 0;
                    result.StatusCode = 1;   //添加操作
                    return(result);
                }
            }
            else
            {
                //执行删除操作
                int result_count = ILgStoreLogisticsCompanyDao.Instance.Delete(entity.SysNo);
                result.Status = result_count > 0;
                if (result.Status)
                {
                    BLL.Log.SysLog.Instance.Info(LogStatus.系统日志来源.后台, string.Format("删除电子面单仓库关联-WarehouseSysNo:{0},AccountSysNo:{1}", entity.WarehouseSysNo, entity.AccountSysNo), LogStatus.系统日志目标类型.电子面单账号关联仓库, CurrentUserSysNo, result_count);
                }
                result.StatusCode = 2;   //删除操作

                return(result);
            }
        }
 /// <summary>
 /// 返回仓库物流公司账号关联实体对象(根据仓库编号  物流账号编号)
 /// </summary>
 /// <param name="entity">仓库物流公司账号关联 实体</param>
 /// <returns>仓库物流公司账号关联实体</returns>
 /// <remarks>2015-10-12 王江 创建</remarks>
 public abstract LgStoreLogisticsCompany IsExistRecord(LgStoreLogisticsCompany entity);
 /// <summary>
 /// 更新(仓库物流公司账号关联表)
 /// </summary>
 /// <param name="entity">仓库物流公司账号关联表</param>
 /// <returns>影响的行</returns>
 /// <remarks> 2015-10-10 朱成果 创建</remarks>
 public abstract int Update(LgStoreLogisticsCompany entity);
 /// <summary>
 /// 插入(仓库物流公司账号关联表)
 ///</summary>
 /// <param name="entity">仓库物流公司账号关联表</param>
 /// <returns>新增记录编号</returns>
 /// <remarks> 2015-10-10 朱成果 创建</remarks>
 public abstract int Insert(LgStoreLogisticsCompany entity);