コード例 #1
0
        public StoreMaterialDto getStoreMaterial(StoreMaterialRequestDto dto)
        {
            StoreMaterial storeMaterial = db.StoreMaterial.Where(s => s.StoreId == dto.storeId &&
                                                                 s.MaterialId == dto.materialId && s.Amount > 0).FirstOrDefault();
            Material         m = db.Material.Where(s => s.Id == storeMaterial.MaterialId).FirstOrDefault();
            StoreMaterialDto storeMaterialDto = new StoreMaterialDto(storeRepository.getSimpleStoreDto(storeMaterial.StoreId),
                                                                     materialRepository.getMaterial(storeMaterial.MaterialId), storeMaterial.Amount, storeMaterial.Unit, m.Status.Name);

            return(storeMaterialDto);
        }
コード例 #2
0
        internal void addStoreMaterial(StoreMaterialRequestDto requestDto)
        {
            StoreMaterial storeMaterial = new StoreMaterial();

            storeMaterial.StoreId    = requestDto.storeId;
            storeMaterial.MaterialId = requestDto.materialId;
            storeMaterial.Amount     = requestDto.amount;
            storeMaterial.Unit       = requestDto.unit;

            db.StoreMaterial.Add(storeMaterial);
            db.SaveChanges();
        }
コード例 #3
0
        internal void updateStoreMaterial(string storeId, StoreMaterialRequestDto requestDto)
        {
            StoreMaterial storeMaterial = new StoreMaterial();

            storeMaterial.StoreId    = requestDto.storeId;
            storeMaterial.MaterialId = requestDto.materialId;
            storeMaterial.Amount     = requestDto.amount;
            storeMaterial.Unit       = requestDto.unit;

            db.Entry(storeMaterial).State = Microsoft.EntityFrameworkCore.EntityState.Modified;

            db.SaveChanges();
        }
コード例 #4
0
        public IHttpActionResult AddRemoveRawMaterials([FromBody] StoreMaterial sm)
        {
            var result       = (Object)null;
            var ReturnedData = (Object)null;

            if (sm.UserId > 0 && sm.BusinessId > 0)
            {
                rv     = st.AddRemove(sm);
                result = cuc.GetJsonObject(ReturnedData, rv);
            }
            else
            {
                rv.StatusCode = 6; rv.StatusMessage = "you did not supply businessid or userid";
                result        = cuc.GetJsonObject(ReturnedData, rv);
            }
            return(Ok(result));
        }
コード例 #5
0
ファイル: Store.cs プロジェクト: erickchidubem/ProbitymmAPI
        public ReturnValues AddRemove(StoreMaterial sm)
        {
            ReturnValues rv = new ReturnValues();

            using (SqlConnection conn = connect.getConnection())
            {
                using (SqlCommand cmd = new SqlCommand("AddRemoveSellRawMaterial", conn))//call Stored Procedure
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@rawMaterialID", sm.RawMaterialId);
                    cmd.Parameters.AddWithValue("@userid", sm.UserId);
                    cmd.Parameters.AddWithValue("@businessid", sm.BusinessId);
                    cmd.Parameters.AddWithValue("@addRemove", sm.AddRemove);
                    cmd.Parameters.AddWithValue("@Qty", sm.Qty);
                    cmd.Parameters.AddWithValue("@costPrice", sm.costPrice);
                    cmd.Parameters.AddWithValue("@sellingPrice", sm.sellingPrice);
                    cmd.Parameters.AddWithValue("@updatePrice", sm.updatePrice);

                    cmd.Parameters.Add("@returnvalue", SqlDbType.Int);
                    cmd.Parameters["@returnvalue"].Direction = ParameterDirection.Output;
                    cmd.Parameters.Add("@returnvalueString", System.Data.SqlDbType.VarChar, 200);
                    cmd.Parameters["@returnvalueString"].Direction = ParameterDirection.Output;
                    try
                    {
                        cmd.ExecuteNonQuery();
                        rv.StatusCode    = Convert.ToInt32(cmd.Parameters["@returnvalue"].Value);
                        rv.StatusMessage = Convert.ToString(cmd.Parameters["@returnvalueString"].Value);
                    }
                    catch (Exception ex)
                    {
                        CommonUtilityClass.ExceptionLog(ex);
                        rv.StatusCode    = 2000;
                        rv.StatusMessage = "An Error Occured";
                    }
                }
            }
            return(rv);
        }
コード例 #6
0
        internal void addtransaction(TransactionRequestDto dtos)
        {
            //for transaction table
            Transaction transaction = new Transaction();

            transaction.ExchangeStoreId   = dtos.exchangeStoreId;
            transaction.StoreId           = dtos.storeId;
            transaction.Time              = stampConvert.convertTimeStamp(dtos.time);
            transaction.StaffId           = dtos.staffId;
            transaction.TransactionTypeId = dtos.transactionTypeId;
            transaction.StatusId          = dtos.statusId;
            db.Transaction.Add(transaction);
            db.SaveChanges();
            if (dtos.transactionTypeId == "IM01")
            {
                Transaction transa = db.Transaction.FirstOrDefault(s => s.StoreId == transaction.ExchangeStoreId &&
                                                                   s.ExchangeStoreId == transaction.StoreId && s.StatusId == "ĐT");
                if (transa != null)
                {
                    transa.StatusId        = "HT";
                    db.Entry(transa).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
                    db.SaveChanges();
                }
            }

            //for transaction detail table

            Transaction tran = db.Transaction.Where(s => s.Time == transaction.Time).FirstOrDefault();

            foreach (var dto in dtos.detail)
            {
                //transaction detail
                TransactionDetail detail = new TransactionDetail();
                detail.TransId    = tran.Id;
                detail.MaterialId = int.Parse(dto.material.id);
                detail.Amount     = dto.materialAmount;
                detail.Unit       = dto.unit;
                db.TransactionDetail.Add(detail);
                db.SaveChanges();

                //store material
                String[] list = new string[] { "EC", "EX01", "EX02" };
                if (list.Contains(tran.TransactionTypeId))
                {
                    StoreMaterial storeMaterial = db.StoreMaterial.First(s => s.StoreId == tran.StoreId &&
                                                                         s.MaterialId == detail.MaterialId);
                    storeMaterial.Amount          = storeMaterial.Amount - detail.Amount;
                    db.Entry(storeMaterial).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
                    db.SaveChanges();
                }
                else if (dtos.transactionTypeId == "IM01")
                {
                    StoreMaterial storeMaterial = db.StoreMaterial.FirstOrDefault(s => s.StoreId == dtos.storeId &&
                                                                                  s.MaterialId == detail.MaterialId);
                    if (storeMaterial != null)
                    {
                        storeMaterial.Amount          = storeMaterial.Amount + detail.Amount;
                        db.Entry(storeMaterial).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
                        db.SaveChanges();
                    }
                    else
                    {
                        StoreMaterial storem = new StoreMaterial();
                        storem.MaterialId = detail.MaterialId;
                        storem.StoreId    = dtos.storeId;
                        storem.Amount     = detail.Amount;
                        storem.Unit       = detail.Unit;
                        db.StoreMaterial.Add(storem);
                        db.SaveChanges();
                    }
                }
                else if (dtos.transactionTypeId == "IM02")
                {
                    StoreMaterial storeMaterial = db.StoreMaterial.FirstOrDefault(s => s.StoreId == dtos.storeId &&
                                                                                  s.MaterialId == detail.MaterialId);
                    if (storeMaterial != null)
                    {
                        storeMaterial.Amount          = storeMaterial.Amount + detail.Amount;
                        db.Entry(storeMaterial).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
                        db.SaveChanges();
                    }
                    else
                    {
                        StoreMaterial storem = new StoreMaterial();
                        storem.MaterialId = detail.MaterialId;
                        storem.StoreId    = dtos.storeId;
                        storem.Amount     = detail.Amount;
                        storem.Unit       = detail.Unit;
                        db.StoreMaterial.Add(storem);
                        db.SaveChanges();
                    }
                }
                else if (dtos.transactionTypeId == "IMAF")
                {
                    StoreMaterial storeMaterial = db.StoreMaterial.First(s => s.StoreId == dtos.storeId &&
                                                                         s.MaterialId == detail.MaterialId);
                    storeMaterial.Amount          = storeMaterial.Amount + detail.Amount;
                    db.Entry(storeMaterial).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
                    db.SaveChanges();
                }
            }
            if (dtos.transactionTypeId == "EC")
            {
                Transaction    trans  = db.Transaction.Where(s => s.Time == transaction.Time).FirstOrDefault();
                TransactionDto dto    = GetTransactionDto(trans);
                Object         result = sendCloudMessageAsync(dtos.exchangeStoreId, dto, "Có giao dịch mới", "Có giao dịch mới từ kho " + storeRepository.getSimpleStoreDto(dto.store.id).name);
            }
            if (dtos.transactionTypeId == "IM01")
            {
                Transaction    trans  = db.Transaction.Where(s => s.Time == transaction.Time).FirstOrDefault();
                TransactionDto dto    = GetTransactionDto(trans);
                Object         result = sendCloudMessageAsync(dtos.exchangeStoreId, dto, "Hoàn thành đơn hàng", "hoàn thành đơn hàng tới kho " + storeRepository.getSimpleStoreDto(dto.store.id).name);
            }
        }