Esempio n. 1
0
        public void Insert(RepackModel model)
        {
            var sSql = @"
                INSERT INTO
                    Repack (
                        RepackID, Tgl, Jam, BPStokID, 
                        BrgIDMaterial, QtyMaterial, HppMaterial,
                        BrgIDHasil, SlotControl, QtyHasil, HppHasil)
                VALUES (
                        @RepackID, @Tgl, @Jam, @BPStokID,  
                        @BrgIDMaterial, @QtyMaterial, @HppMaterial,
                        @BrgIDHasil, @SlotControl, @QtyHasil, @HppHasil) ";

            using (var conn = new SqlConnection(_connString))
                using (var cmd = new SqlCommand(sSql, conn))
                {
                    cmd.AddParam("@RepackID", model.RepackID);
                    cmd.AddParam("@Tgl", model.Tgl.ToTglYMD());
                    cmd.AddParam("@Jam", model.Jam);
                    cmd.AddParam("@BPStokID", model.BPStokID);

                    cmd.AddParam("BrgIDMaterial", model.BrgIDMaterial);
                    cmd.AddParam("@QtyMaterial", model.QtyMaterial);
                    cmd.AddParam("@HppMaterial", model.HppMaterial);

                    cmd.AddParam("BrgIDHasil", model.BrgIDHasil);
                    cmd.AddParam("@QtyHasil", model.QtyHasil);
                    cmd.AddParam("@HppHasil", model.HppHasil);
                    cmd.AddParam("@SlotControl", model.SlotControl);

                    conn.Open();
                    cmd.ExecuteNonQuery();
                }
        }
Esempio n. 2
0
        public void Save()
        {
            var repack = new RepackModel
            {
                RepackID = _view.RepackID,
                Tgl      = _view.Tgl,
                Jam      = _view.Jam,
                BPStokID = _view.BPStokID,

                BrgIDMaterial   = _view.BrgIDMaterial,
                BrgNameMaterial = _view.BrgNameMaterial,
                QtyMaterial     = _view.QtyMaterial,
                HppMaterial     = _view.HppMaterial,

                BrgIDHasil   = _view.BrgIDHasil,
                BrgNameHasil = _view.BrgIDHasil,
                QtyHasil     = _view.QtyHasil,
                HppHasil     = _view.HppHasil,
                SlotControl  = _view.SlotControl
            };

            using (var trans = TransHelper.NewScope())
            {
                var result  = _repackBL.Save(repack);
                var result2 = _bpStokBL.Generate(result);
                trans.Complete();
            }
        }
Esempio n. 3
0
        public IEnumerable <RepackModel> ListData(string tgl1, string tgl2)
        {
            List <RepackModel> result = null;

            var sSql = @"
                SELECT
                    aa.RepackID, aa.Tgl, aa.Jam, aa.BPStokID, 
                    aa.BrgIDMaterial, aa.QtyMaterial, aa.HppMaterial,
                    aa.BrgIDHasil, aa.SlotControl, aa.QtyHasil, aa.HppHasil,
                    ISNULL(bb.BrgName, '') BrgNameMaterial,
                    ISNULL(cc.BrgName, '') BrgNameHasil
                FROM
                    Repack aa
                    LEFT JOIN Brg bb ON aa.BrgIDMaterial = bb.BrgID
                    LEFT JOIN Brg cc ON aa.BrgIDHasil = cc.BrgID
                WHERE
                    Tgl BETWEEN @Tgl1 AND @Tgl2 ";

            using (var conn = new SqlConnection(_connString))
                using (var cmd = new SqlCommand(sSql, conn))
                {
                    cmd.AddParam("@Tgl1", tgl1.ToTglYMD());
                    cmd.AddParam("@Tgl2", tgl2.ToTglYMD());
                    conn.Open();
                    using (var dr = cmd.ExecuteReader())
                    {
                        if (!dr.HasRows)
                        {
                            return(null);
                        }
                        result = new List <RepackModel>();
                        while (dr.Read())
                        {
                            var item = new RepackModel
                            {
                                RepackID = dr["RepackID"].ToString(),
                                Tgl      = dr["Tgl"].ToString().ToTglDMY(),
                                Jam      = dr["Jam"].ToString(),
                                BPStokID = dr["BPStokID"].ToString(),

                                BrgIDMaterial   = dr["BrgIDMaterial"].ToString(),
                                BrgNameMaterial = dr["BrgNameMaterial"].ToString(),
                                QtyMaterial     = Convert.ToInt64(dr["QtyMaterial"]),
                                HppMaterial     = Convert.ToDecimal(dr["HppMaterial"]),

                                BrgIDHasil   = dr["BrgIDHasil"].ToString(),
                                BrgNameHasil = dr["BrgNameHasil"].ToString(),
                                SlotControl  = dr["SlotControl"].ToString(),
                                QtyHasil     = Convert.ToInt64(dr["QtyHasil"]),
                                HppHasil     = Convert.ToDecimal(dr["HppHasil"])
                            };
                            result.Add(item);
                        }
                    }
                }
            return(result);
        }
Esempio n. 4
0
        private async Task OnSubmit()
        {
            try
            {
                IsBusy = true;

                RepackRequestModel context = new RepackRequestModel
                {
                    Account     = _packingSlip.Account.Key,
                    Note        = _note,
                    PackingSlip = _packingSlip.Key,
                    RecId       = _packingSlip.RecId.ToLong(),
                    SalesOrder  = _packingSlip.Order.Key,
                };

                var modelList = new List <RepackModel>();
                foreach (var packingSlipWithRePacking in _packingSlip.Lines.Where(p => p.PackingReasonList?.Any() ?? false))
                {
                    var rpackModel = new RepackModel
                    {
                        LineItem = packingSlipWithRePacking.Key,
                        Reasons  = packingSlipWithRePacking.PackingReasonList.Select(p => new PackReason
                        {
                            Action        = p.Action.Key,
                            InventTransId = (int)packingSlipWithRePacking.InventTransId.ToLong(),
                            Quantity      = p.Quantity,
                            Reason        = p.Reason.Key
                        }).ToList()
                    };
                    modelList.Add(rpackModel);
                }

                context.Data = modelList;
                var submitResponse = await Api.RepackPackingSlip(context);

                if (!submitResponse.Successful.GetValueOrDefault())
                {
                    await Alert.DisplayApiCallError(submitResponse.ExceptionMessage, submitResponse.ValidationErrors,
                                                    Translate.Get(nameof(AppResources.CouldNotSubmitRepacking)));

                    return;
                }

                await Nav.Nav.PopAsync();
            }
            catch (Exception e)
            {
                await AlertService.Instance.DisplayError(e);
            }
            finally
            {
                IsBusy = false;
            }
        }
Esempio n. 5
0
        public RepackModel GetData(string id)
        {
            RepackModel result = null;

            var sSql = @"
                SELECT
                    aa.RepackID, aa.Tgl, aa.Jam, aa.BPStokID, 
                    aa.BrgIDMaterial, aa.QtyMaterial, aa.HppMaterial,
                    aa.BrgIDHasil, aa.SlotControl, aa.QtyHasil, aa.HppHasil,
                    ISNULL(bb.BrgName, '') BrgNameMaterial,
                    ISNULL(cc.BrgName, '') BrgNameHasil
                FROM
                    Repack aa
                    LEFT JOIN Brg bb ON aa.BrgIDMaterial = bb.BrgID
                    LEFT JOIN Brg cc ON aa.BrgIDHasil = cc.BrgID
                WHERE
                    RepackID = @RepackID ";

            using (var conn = new SqlConnection(_connString))
                using (var cmd = new SqlCommand(sSql, conn))
                {
                    cmd.AddParam("@RepackID", id);
                    conn.Open();
                    using (var dr = cmd.ExecuteReader())
                    {
                        if (!dr.HasRows)
                        {
                            return(null);
                        }
                        dr.Read();
                        result = new RepackModel
                        {
                            RepackID = dr["RepackID"].ToString(),
                            Tgl      = dr["Tgl"].ToString().ToTglDMY(),
                            Jam      = dr["Jam"].ToString(),
                            BPStokID = dr["BPStokID"].ToString(),

                            BrgIDMaterial   = dr["BrgIDMaterial"].ToString(),
                            BrgNameMaterial = dr["BrgNameMaterial"].ToString(),
                            QtyMaterial     = Convert.ToInt64(dr["QtyMaterial"]),
                            HppMaterial     = Convert.ToDecimal(dr["HppMaterial"]),

                            BrgIDHasil   = dr["BrgIDHasil"].ToString(),
                            BrgNameHasil = dr["BrgNameHasil"].ToString(),
                            SlotControl  = dr["SlotCOntrol"].ToString(),
                            QtyHasil     = Convert.ToInt64(dr["QtyHasil"]),
                            HppHasil     = Convert.ToDecimal(dr["HppHasil"])
                        };
                    }
                    cmd.ExecuteNonQuery();
                }
            return(result);
        }
Esempio n. 6
0
        public IEnumerable <BPStokModel> Generate(RepackModel repack)
        {
            List <BPStokModel> result = null;

            if (repack == null)
            {
                throw new ArgumentNullException(nameof(repack));
            }

            //  ambil data data material untuk dikurangi stok-nya
            var stokMaterial = new StokItem
            {
                ReffID    = repack.RepackID,
                Tgl       = repack.Tgl,
                Jam       = repack.Jam,
                BrgID     = repack.BrgIDMaterial,
                BrgName   = repack.BrgNameMaterial,
                QtyIn     = 0,
                NilaiHpp  = 0,
                QtyOut    = repack.QtyMaterial,
                HargaJual = 0,
                BPStokID  = repack.BPStokID,
            };
            var bpStokMaterial = RemoveStok(stokMaterial);

            //  insert data hasil untuk ditambahkan stoknya
            var stokHasil = new StokItem
            {
                ReffID    = repack.RepackID,
                Tgl       = repack.Tgl,
                Jam       = repack.Jam,
                BrgID     = repack.BrgIDHasil,
                BrgName   = repack.BrgNameHasil,
                QtyIn     = repack.QtyHasil,
                NilaiHpp  = repack.HppHasil,
                QtyOut    = 0,
                HargaJual = 0,
                BPStokID  = repack.SlotControl,
            };
            var bpStokHasil = AddStok(stokHasil);

            //  update stok info
            _brgStokHargaBL.UpdateStok(repack.BrgIDMaterial);
            _brgStokHargaBL.UpdateStok(repack.BrgIDHasil);

            return(result);
        }
Esempio n. 7
0
        public void Update(RepackModel model)
        {
            var sSql = @"
                UPDATE
                    Repack 
                SET
                    Tgl = @Tgl, 
                    Jam = @Jam, 
                    BPStokID = @BPStokID, 
                    BrgIDMaterial = @BrgIDMaterial, 
                    QtyMaterial = @QtyMaterial, 
                    HppMaterial = @HppMaterial, 
                    BrgIDHasil = @BrgIDHasil, 
                    SlotControl = @SlotControl,
                    QtyHasil = @QtyHasil, 
                    HppHasil = @HppHasil, 
                WHERE
                    RepackID = @RepackID ";

            using (var conn = new SqlConnection(_connString))
                using (var cmd = new SqlCommand(sSql, conn))
                {
                    cmd.AddParam("@RepackID", model.RepackID);
                    cmd.AddParam("@Tgl", model.Tgl.ToTglYMD());
                    cmd.AddParam("@Jam", model.Jam);
                    cmd.AddParam("@BPStokID", model.BPStokID);
                    cmd.AddParam("BrgIDMaterial", model.BrgIDMaterial);
                    cmd.AddParam("@QtyMaterial", model.QtyMaterial);
                    cmd.AddParam("@HppMaterial", model.HppMaterial);
                    cmd.AddParam("BrgIDHasil", model.BrgIDHasil);
                    cmd.AddParam("SlotControl", model.SlotControl);
                    cmd.AddParam("@QtyHasil", model.QtyHasil);
                    cmd.AddParam("@HppHasil", model.HppHasil);
                    conn.Open();
                    cmd.ExecuteNonQuery();
                }
        }
Esempio n. 8
0
        public RepackModel Save(RepackModel model)
        {
            if (model == null)
            {
                throw new ArgumentNullException(nameof(model));
            }

            //  validasi tgl
            if (!model.Tgl.IsValidTgl("dd-MM-yyyy"))
            {
                throw new ArgumentException("Tgl invalid");
            }

            //  validasi jam
            if (!model.Jam.IsValidJam("HH:mm:ss"))
            {
                throw new ArgumentException("Jam invalid");
            }

            //  brg material
            var brg = dep.BrgDal.GetData(model.BrgIDMaterial);

            if (brg == null)
            {
                throw new ArgumentException("Brg Material invalid");
            }
            else
            {
                model.BrgNameMaterial = brg.BrgName;
            }

            //  brg hasil
            brg = dep.BrgDal.GetData(model.BrgIDHasil);
            if (brg == null)
            {
                throw new ArgumentException("Brg Hasil invalid");
            }
            else
            {
                model.BrgNameHasil = brg.BrgName;
            }

            //  validate qty nol
            if (model.QtyMaterial <= 0)
            {
                throw new ArgumentException("Qty Material nol or minus");
            }
            if (model.QtyHasil <= 0)
            {
                throw new ArgumentException("Qty Hasil nol or minus");
            }

            using (var trans = TransHelper.NewScope())
            {
                if (model.RepackID.Trim() == "")
                {
                    model.RepackID = GenNewID();
                }

                //  delete data lama
                dep.RepackDal.Delete(model.RepackID);
                //  simpan data baru
                dep.RepackDal.Insert(model);

                trans.Complete();
            }

            return(model);
        }