Exemplo n.º 1
0
 public storageDataModel GetStorageByClassID(QueryStorageListParameter parameter)
 {
     this.ExecuteSQL    = "SELECT * FROM dbo.storage WHERE classid=@classid";
     this.DataParameter = new IDbDataParameter[]
     {
         new SqlParameter("@classid", SqlDbType.VarChar)
         {
             Value = parameter.ParentId
         }
     };
     return(this.ExecuteReadSqlTostorageDataModel());
 }
Exemplo n.º 2
0
 public int UpdateChildNumberByClassId(IDbTransaction tran, QueryStorageListParameter parameter)
 {
     this.ExecuteSQL    = "UPDATE dbo.storage SET childnumber=childnumber+1 WHERE classid=@classid";
     this.DataParameter = new IDbDataParameter[]
     {
         new SqlParameter("@classid", SqlDbType.VarChar)
         {
             Value = parameter.ParentId
         }
     };
     return(this.ExecuteNonQuery(tran));
 }
Exemplo n.º 3
0
 public List <storageDataModel> GetStorageListByParentID(QueryStorageListParameter parameter)
 {
     this.ExecuteSQL    = "SELECT * FROM dbo.storage WHERE parentid=@parentid ORDER BY classid DESC";
     this.DataParameter = new IDbDataParameter[]
     {
         new SqlParameter("@parentid", SqlDbType.VarChar)
         {
             Value = parameter.ParentId
         }
     };
     return(this.ExecuteReadSqlTostorageDataModelList());
 }
Exemplo n.º 4
0
        public bool CheckStorageIsExist(QueryStorageListParameter parameter)
        {
            this.ExecuteSQL    = string.Format("SELECT * FROM dbo.storage WHERE name=@name AND serialnumber=@serialnumber{0}", parameter.StorageId == 0 ? string.Empty : string.Concat(" AND stoid<>", parameter.StorageId));
            this.DataParameter = new IDbDataParameter[]
            {
                new SqlParameter("@name", parameter.Name),
                new SqlParameter("@serialnumber", parameter.SerialNumber)
            };
            var storage = this.ExecuteReadSqlTostorageDataModel();

            return(storage != null);
        }
Exemplo n.º 5
0
        public PageData <storageDataModel> GetQueryStorageList(QueryStorageListParameter parameter)
        {
            var isSearch = !(string.IsNullOrEmpty(parameter.SerialNumber) && string.IsNullOrEmpty(parameter.Name) && string.IsNullOrEmpty(parameter.Spelling) && string.IsNullOrEmpty(parameter.Alias) &&
                             parameter.Status == 0 && parameter.Deleted == 0);

            this.ExecuteSQL = string.Format("SELECT * FROM dbo.storage WHERE {0} serialnumber LIKE '%{1}%' AND name LIKE '%{2}%' AND pinyin LIKE '%{3}%' AND alias LIKE '%{4}%' AND [status] IN({5}) AND deleted IN({6})",
                                            isSearch ? string.Empty : string.Format("parentid='{0}' AND", parameter.ParentId),
                                            parameter.SerialNumber,
                                            parameter.Name,
                                            parameter.Spelling,
                                            parameter.Alias,
                                            parameter.Status == (short)CommonStatus.Default ? string.Concat((short)CommonStatus.Used, ",", (short)CommonStatus.Stopped) : parameter.Status.ToString(),
                                            parameter.Deleted == (short)CommonDeleted.Default ? string.Concat((short)CommonDeleted.Deleted, ",", (short)CommonDeleted.NotDeleted) : parameter.Deleted.ToString()
                                            );
            return(this.ExecuteReadSqlTostorageDataModelPageData("stoid", parameter.PageIndex, parameter.PageSize, "classid ASC, sort DESC"));
        }
Exemplo n.º 6
0
        public RespondWebViewData <List <RespondQueryStorageViewModel> > GetQueryStorageList(RequestWebViewData <RequestQueryStorageViewModel> request)
        {
            if (request.data == null)
            {
                request.data = new RequestQueryStorageViewModel();
            }
            return(MemcacheHelper.Get(new RequestMemcacheParameter <RespondWebViewData <List <RespondQueryStorageViewModel> > >
            {
                CacheKey = string.Format(PRE_CACHE_KEY, "GetQueryStorageList"),

                #region =================
                CallBackFunc = () =>
                {
                    var parameter = new QueryStorageListParameter
                    {
                        Alias = request.data.Alias,
                        Deleted = request.data.Deleted,
                        Name = request.data.Name,
                        PageSize = request.rows,
                        PageIndex = request.page,
                        ParentId = request.data.ParentId,
                        SerialNumber = request.data.SerialNumber,
                        Spelling = request.data.Spelling,
                        Status = request.data.Status
                    };
                    var pageDataList = this.mStorageDataAccess.GetQueryStorageList(parameter);
                    var respond = new RespondWebViewData <List <RespondQueryStorageViewModel> >
                    {
                        total = pageDataList.DataCount,
                        rows = pageDataList.Datas.Select(item => new RespondQueryStorageViewModel
                        {
                            Alias = item.alias,
                            ParentId = item.parentid,
                            Spelling = item.PinYin,
                            ChildNumber = item.childnumber,
                            ClassId = item.classid,
                            Comment = item.comment,
                            Deleted = item.deleted,
                            Name = item.name,
                            SerialNumber = item.serialnumber,
                            Sort = item.sort,
                            StorageId = item.stoid,
                            Status = item.status
                        }).ToList()
                    };
                    return respond;
                },

                #endregion

                ExpiresAt = DateTime.Now.AddMinutes(30),
                ManageCacheKeyForKey = ServiceMemcachedKeyManageConst.BasicStorage,
                ParamsKeys = new object[]
                {
                    request.page,
                    request.rows,
                    request.data.Alias,
                    request.data.Deleted,
                    request.data.Name,
                    request.data.ParentId,
                    request.data.SerialNumber,
                    request.data.Spelling,
                    request.data.Status
                }
            }));
        }
Exemplo n.º 7
0
        public RespondWebViewData <RespondAddStorageViewModel> AddStorage(RequestWebViewData <RequestAddStorageViewModel> request)
        {
            var rData = request.data;

            if (this.mStorageDataAccess.CheckStorageIsExist(new QueryStorageListParameter {
                Name = rData.Name, SerialNumber = rData.SerialNumber
            }))
            {
                return(new RespondWebViewData <RespondAddStorageViewModel>(WebViewErrorCode.ExistsDataInfo.ErrorCode, string.Format("名称为[{0}]或编号为[{1}]的仓库已经存在", rData.Name, rData.SerialNumber)));
            }

            var respond = new RespondWebViewData <RespondAddStorageViewModel>(WebViewErrorCode.Success);

            try
            {
                var storage = this.mStorageDataAccess.GetStorageByClassID(new QueryStorageListParameter {
                    ParentId = rData.ParentId
                });
                if (storage == null)
                {
                    return(new RespondWebViewData <RespondAddStorageViewModel>(WebViewErrorCode.NotExistsDataInfo));
                }
                if (storage.deleted == (short)CommonDeleted.Deleted)
                {
                    return(new RespondWebViewData <RespondAddStorageViewModel>(WebViewErrorCode.NotExistsDataInfo));
                }

                this.mDbConnection.ExecuteTransaction(tran =>
                {
                    var parameter = new QueryStorageListParameter
                    {
                        ParentId = rData.ParentId
                    };
                    var classId    = string.Concat(rData.ParentId, "000001");
                    var clientList = this.mStorageDataAccess.GetStorageListByParentID(parameter);
                    if (clientList.Count > 0)
                    {
                        classId = BuildNewClassIdByLastClassId.GeneratedNewClassIdByLastClassId(clientList[0].classid);
                    }

                    var data = new storageDataModel
                    {
                        classid      = classId,
                        alias        = rData.Alias,
                        childnumber  = 0,
                        childcount   = 0,
                        comment      = rData.Comment,
                        deleted      = (short)CommonDeleted.NotDeleted,
                        name         = rData.Name,
                        parentid     = rData.ParentId,
                        PinYin       = rData.Spelling,
                        serialnumber = rData.SerialNumber,
                        status       = (short)CommonStatus.Used,
                        sort         = rData.Sort
                    };
                    var addResult = this.mStorageDataAccess.Add(data, tran);
                    if (addResult > 0)
                    {
                        this.mStorageDataAccess.UpdateChildNumberByClassId(tran, parameter);
                    }
                    MemcacheHelper.RemoveBy(ServiceMemcachedKeyManageConst.BasicStorage);

                    //由于电脑配置不上mongodb固暂时先屏蔽掉此段mongodb的数据操作
                    //this.SaveMongoDbData("新增往来客户资料", request, respond, this.GetType());
                });
            }
            catch (Exception exception)
            {
                respond = new RespondWebViewData <RespondAddStorageViewModel>(new ErrorCodeItem(WebViewErrorCode.Exception.ErrorCode, exception.Message));
            }
            return(respond);
        }