示例#1
0
        /// <summary>
        /// 盘点
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <DetailGoodsDto> Check(InOutGoodsDto input)
        {
            GoodsRecord record = input.MapTo <GoodsRecord>();
            Goods       result = await _goodsManager.CheckGoods(record);

            return(result.MapTo <DetailGoodsDto>());
        }
        public void TestMethod2()
        {
            List <GoodsRecord> goodsRecordList = goodsRecordDal.GetAll();

            goodsRecord        = goodsRecordList[0];
            goodsRecord.remark = "价格太高";
            bool result = goodsRecordDal.Update(goodsRecord);

            Assert.AreEqual(true, result);
        }
示例#3
0
        /// <summary>
        /// 建立物品交易距离model
        /// </summary>
        /// <param name="dataRow"></param>
        /// <returns></returns>
        private GoodsRecord ToModel(DataRow dataRow)
        {
            GoodsRecord goodRecord = new GoodsRecord();

            goodRecord.auctionTime = (int)dataRow["AuctionTime"];
            goodRecord.id          = (Guid)dataRow["Id"];
            goodRecord.goodsId     = (Guid)dataRow["GoodsId"];
            goodRecord.startTime   = (DateTime)dataRow["StartTime"];
            goodRecord.isTrade     = (bool)dataRow["IsTrade"];
            goodRecord.startPrice  = (decimal)dataRow["StartPrice"];
            goodRecord.rangePrice  = (decimal)dataRow["RangePrice"];
            goodRecord.endprice    = (decimal?)Services.FromDBValue(dataRow["Endprice"]);
            goodRecord.isOnline    = (bool)dataRow["IsOnline"];
            goodRecord.remark      = Convert.ToString(Services.FromDBValue(dataRow["Remark"]));
            goodRecord.getNameId   = (Guid?)Services.FromDBValue(dataRow["GetNameId"]);
            goodRecord.isHandle    = (bool)dataRow["IsHandle"];
            return(goodRecord);
        }
示例#4
0
        /// <summary>
        /// 出库
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <DetailGoodsDto> Out(InOutGoodsDto input)
        {
            Goods entity = Repository.FirstOrDefault(input.Id);

            if (entity != null)
            {
                entity.GoodsNum = entity.GoodsNum - input.GoodsNum;
            }
            GoodsRecord record = input.MapTo <GoodsRecord>();

            record.OperateType = GoodsOperateType.Out;
            string recordId = await _goodsRecordManager.OutRecord(record);

            entity = await Repository.UpdateAsync(entity);

            if (entity.GoodsNum <= MinNum)
            {
                EventBus.Trigger(new GoodsNumChangedEventData
                {
                    Id        = entity.Id,
                    GoodsName = entity.GoodsName,
                    GoodsNum  = entity.GoodsNum,
                    MinNum    = MinNum
                });

                ////注册事件
                //var goodsChangedEvent = EventBus.Register<GoodsNumChangedEventData>(data =>
                //{
                //    /*
                //     * To do
                //     **/
                //});
                ////取消注册事件
                //goodsChangedEvent.Dispose();


                //string message = string.Format("货品{0}当前库存为{1},低于最低允许库存{2},请及时采购补充!", entity.GoodsName, entity.GoodsNum, MinNum);
                //await _messageManager.BoradcastMessage(message);
            }

            DetailGoodsDto result = entity.MapTo <DetailGoodsDto>();

            return(await Task.FromResult(result));
        }
示例#5
0
        /// <summary>
        /// 入库
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <DetailGoodsDto> In(InOutGoodsDto input)
        {
            Goods entity = Repository.FirstOrDefault(input.Id);

            if (entity != null)
            {
                entity.GoodsNum = entity.GoodsNum + input.GoodsNum;
            }
            GoodsRecord record = input.MapTo <GoodsRecord>();

            record.OperateType = GoodsOperateType.In;
            string recordId = await _goodsRecordManager.InRecord(record);

            entity = await Repository.UpdateAsync(entity);

            DetailGoodsDto result = entity.MapTo <DetailGoodsDto>();

            return(await Task.FromResult(result));
        }
示例#6
0
        /// <summary>
        /// 更新物品交易记录
        /// </summary>
        /// <param name="goodsRecord">交易记录</param>
        /// <returns>返回是否更新成功</returns>
        public bool Update(GoodsRecord goodsRecord)
        {
            int i = SqlHelper.ExecuteNonQuery(@"update GoodsRecord set StartTime=@startTime,AuctionTime=@auctionTime,IsTrade=@isTrade,
                StartPrice=@startPrice,RangePrice=@rangePrice,Endprice=@endprice,IsOnline=@isOnline,Remark=@remark,GetNameId=@getNameId,IsHandle=@isHandle
                where Id=@id", new SqlParameter("@Id", goodsRecord.id), new SqlParameter("@startTime", goodsRecord.startTime),
                                              new SqlParameter("@auctionTime", goodsRecord.auctionTime), new SqlParameter("@isTrade", (goodsRecord.isTrade == true ? 1 : 0)),
                                              new SqlParameter("@startPrice", goodsRecord.startPrice), new SqlParameter("@rangePrice", goodsRecord.rangePrice),
                                              new SqlParameter("@endprice", Services.ToDBValue(goodsRecord.endprice)), new SqlParameter("@isOnline", (goodsRecord.isOnline == true ? 1 : 0)),
                                              new SqlParameter("@remark", Services.ToDBValue(goodsRecord.remark)), new SqlParameter("@getNameId", Services.ToDBValue(goodsRecord.getNameId)),
                                              new SqlParameter("@isHandle", (goodsRecord.isHandle == true ? 1 : 0)));

            if (i == 1)
            {
                return(true);
            }
            else
            {
                throw new Exception("更新物品交易记录失败!");
            }
        }
示例#7
0
        /// <summary>
        /// 添加物品交易记录
        /// </summary>
        /// <param name="goodsRecord">物品记录</param>
        /// <returns>返回是否添加成功</returns>
        public bool Add(GoodsRecord goodsRecord)
        {
            int i = SqlHelper.ExecuteNonQuery(@"insert into 
                GoodsRecord(GoodsId,StartTime,AuctionTime,IsTrade,StartPrice,RangePrice,Endprice,IsOnline,Remark,GetNameId,IsHandle)
                values(@goodsId,@startTime,@auctionTime,@isTrade,@startPrice,@rangePrice,@endprice,@isOnline,@remark,@getNameId,@isHandle)",
                                              new SqlParameter("@goodsId", goodsRecord.goodsId), new SqlParameter("@startTime", goodsRecord.startTime),
                                              new SqlParameter("@auctionTime", goodsRecord.auctionTime), new SqlParameter("@isTrade", (goodsRecord.isTrade == true ? 1 : 0)),
                                              new SqlParameter("@startPrice", goodsRecord.startPrice), new SqlParameter("@rangePrice", goodsRecord.rangePrice),
                                              new SqlParameter("@endprice", Services.ToDBValue(goodsRecord.endprice)), new SqlParameter("@isOnline", (goodsRecord.isOnline == true ? 1 : 0)),
                                              new SqlParameter("@remark", Services.ToDBValue(goodsRecord.remark)), new SqlParameter("@getNameId", Services.ToDBValue(goodsRecord.getNameId)),
                                              new SqlParameter("@isHandle", (goodsRecord.isHandle == true ? 1 : 0)));

            if (i == 1)
            {
                return(true);
            }
            else
            {
                throw new Exception("添加物品交易记录失败!");
            }
        }