Ejemplo n.º 1
0
        public ActionResult Edit(int id)
        {
            Context.DaftarHargaKontrak dbitem = RepoDHK.FindByPK(id);
            DaftarHargaKontrak         model  = new DaftarHargaKontrak(dbitem);

            ViewBag.name = model.NamaCustomer;
            return(View("Form", model));
        }
Ejemplo n.º 2
0
        public ActionResult Edit(DaftarHargaKontrak model)
        {
            //validasi kondisi
            int idx = 0;

            foreach (DaftarHargaKondisi item in model.listKondisi.Where(d => d.IsDelete == false))
            {
                if (item.kondisi != "Biaya Multidrop" && item.IsDefault == true && item.IsInclude == true && item.IsBill == false && item.value == null)
                {
                    ModelState.AddModelError("listKondisi[" + idx + "].value", "Nilai harus diisi.");
                }
                if (item.kondisi == "Biaya Multidrop" && item.IsKota == true && item.ValKota == null)
                {
                    ModelState.AddModelError("listKondisi[" + idx + "].ValKota", "Nilai harus diisi.");
                }
                if (item.kondisi == "Biaya Multidrop" && item.IsTitik == true && item.ValTitik == null)
                {
                    ModelState.AddModelError("listKondisi[" + idx + "].ValTitik", "Nilai harus diisi.");
                }
                if (item.IsDefault == false)
                {
                    if (item.kondisi == "" || item.kondisi == null)
                    {
                        ModelState.AddModelError("listKondisi[" + idx + "].kondisi", "Nama kondisi harus diisi.");
                    }
                    if (item.IsInclude == true && item.IsBill == false && item.value == null)
                    {
                        ModelState.AddModelError("listKondisi[" + idx + "].value", "Nilai harus diisi.");
                    }
                }

                idx++;
            }

            if (RepoDHK.IsPeriodValid(model.PeriodStart.Value, model.PeriodEnd.Value, model.IdCust.Value, model.Id))
            {
                ModelState.AddModelError("PeriodStart", "Periode awal tidak boleh overlaping.");
                ModelState.AddModelError("PeriodEnd", "Periode akhir tidak boleh overlaping.");
            }

            if (ModelState.IsValid)
            {
                Context.DaftarHargaKontrak dbitem = RepoDHK.FindByPK(model.Id);
                model.setDb(dbitem);
                RepoDHK.save(dbitem);

                return(RedirectToAction("Index"));
            }
            ViewBag.name = model.NamaCustomer;

            DaftarHargaKontrakItem[] result = JsonConvert.DeserializeObject <DaftarHargaKontrakItem[]>(model.StrItem);
            model.listItem = result.ToList();

            DaftarHargaKontrakAttachment[] resultAtt = JsonConvert.DeserializeObject <DaftarHargaKontrakAttachment[]>(model.StrAttachment);
            model.listAtt = resultAtt.ToList();

            return(View("Form", model));
        }
Ejemplo n.º 3
0
        public JsonResult Delete(int id)
        {
            ResponeModel response = new ResponeModel(true);

            Context.DaftarHargaKontrak dbItem = RepoDHK.FindByPK(id);

            RepoDHK.delete(dbItem);

            return(Json(response));
        }
Ejemplo n.º 4
0
        public DaftarHargaKontrak(Context.DaftarHargaKontrak dbitem)
        {
            Context.CustomerPic     custPIC  = dbitem.Customer.CustomerPic.FirstOrDefault();
            Context.CustomerAddress custAddr = dbitem.Customer.CustomerAddress.Where(
                a => a.LookUpCodesOffice.Nama.ToLower() == "head office" || a.LookUpCodesOffice.Nama.ToLower() == "kantor pusat").FirstOrDefault();

            listKondisi = new List <DaftarHargaKondisi>();
            DaftarHargaKondisi.GenerateKondisi(listKondisi);

            Id            = dbitem.Id;
            IdCust        = dbitem.IdCust;
            KodeCustomer  = dbitem.Customer.CustomerCode;
            KodeNama      = dbitem.Customer.CustomerCodeOld;
            NamaCustomer  = dbitem.Customer.CustomerNama;
            PeriodStart   = dbitem.PeriodStart;
            PeriodEnd     = dbitem.PeriodEnd;
            IdTypeKontrak = dbitem.IdTypeKontrak;

            if (custAddr != null)
            {
                AlamatCustomer = custAddr.Alamat;
                TelpCustomer   = custAddr.Telp;
                FaxCustomer    = custAddr.Fax;
            }

            if (custPIC != null)
            {
                ContactCustomer = custPIC.Name;
                HpCustomer      = custPIC.Mobile;
            }

            //item
            listItem = new List <DaftarHargaKontrakItem>();
            foreach (Context.DaftarHargaKontrakItem item in dbitem.DaftarHargaKontrakItem.ToList())
            {
                listItem.Add(new DaftarHargaKontrakItem(item));
            }
            //kondisi
            listKondisi = new List <DaftarHargaKondisi>();
            foreach (Context.DaftarHargaKontrakKondisi item in dbitem.DaftarHargaKontrakKondisi.ToList())
            {
                listKondisi.Add(new DaftarHargaKondisi(item));
            }
            //attachment
            listAtt = new List <DaftarHargaKontrakAttachment>();
            foreach (Context.DaftarHargaKontrakAttachment item in dbitem.DaftarHargaKontrakAttachment.ToList())
            {
                listAtt.Add(new DaftarHargaKontrakAttachment(item));
            }
        }
Ejemplo n.º 5
0
        public String GetItem(int id, string date)
        {
            DateTime dtrDate  = DateTime.Parse(date.Split(new string[] { " - " }, StringSplitOptions.None)[0]);
            DateTime dtrDate2 = DateTime.Parse(date.Split(new string[] { " - " }, StringSplitOptions.None)[1]);

            List <DaftarHargaKontrakItem> listItem = new List <DaftarHargaKontrakItem>();

            Context.DaftarHargaKontrak DHK = RepoDHK.FindAll().Where(d => d.Id == id && d.PeriodStart == dtrDate && d.PeriodEnd == dtrDate2).FirstOrDefault();
            if (DHK != null)
            {
                foreach (Context.DaftarHargaKontrakItem item in DHK.DaftarHargaKontrakItem)
                {
                    listItem.Add(new DaftarHargaKontrakItem(item));
                }
            }

            return(new JavaScriptSerializer().Serialize(
                       listItem.Select(i => new
            {
                Id = i.Id,
                NamaRuteDaftarHarga = i.NamaRuteDaftarHarga,
                ListIdRute = i.ListIdRute,
                ListNamaRute = i.ListNamaRute,
                IdJenisTruck = i.IdJenisTruck,
                NamaJenisTruck = i.NamaJenisTruck,
                BeratMinimum = i.BeratMinimum,
                Harga = i.Harga,
                IdSatuanHarga = i.IdSatuanHarga,
                SatuanHarga = i.SatuanHarga,
                HargaRit2 = i.HargaRit2,
                Overtime = i.Overtime,
                RitaseBulan = i.RitaseBulan,
                IsAsuransi = i.IsAsuransi,
                PihakPenanggung = i.PihakPenanggung,
                TipeNilaiPenanggung = i.TipeNilaiTanggungan,
                Premi = i.Premi,
                NilaiTanggungan = i.NilaiTanggungan,
                Keterangan = i.Keterangan
            })));
        }
Ejemplo n.º 6
0
        public void setDb(Context.DaftarHargaKontrak dbitem)
        {
            dbitem.IdCust        = IdCust;
            dbitem.PeriodStart   = PeriodStart.Value;
            dbitem.PeriodEnd     = PeriodEnd.Value;
            dbitem.IdTypeKontrak = IdTypeKontrak;

            // items
            //dbitem.DaftarHargaKontrakItem.Clear();
            DaftarHargaKontrakItem[] result = JsonConvert.DeserializeObject <DaftarHargaKontrakItem[]>(StrItem);
            List <Context.DaftarHargaKontrakItem> DummyItems = dbitem.DaftarHargaKontrakItem.ToList();
            List <int> ListAnuTeuDiHapus = new List <int>();

            foreach (DaftarHargaKontrakItem item in result)
            {
                Context.DaftarHargaKontrakItem dhkItem = dbitem.DaftarHargaKontrakItem.Where(i => i.IdDaftarHargaKontrak == dbitem.Id && i.Id == item.Id).FirstOrDefault();
                if (item.Id != 0)
                {
                    dhkItem.Id = item.Id;
                    dhkItem.NamaRuteDaftarHarga = item.NamaRuteDaftarHarga;
                    dhkItem.ListIdRute          = item.ListIdRute;
                    dhkItem.ListNamaRute        = item.ListNamaRute;
                    dhkItem.IdJenisTruck        = item.IdJenisTruck;
                    dhkItem.BeratMinimum        = item.BeratMinimum;
                    dhkItem.Harga               = item.Harga;
                    dhkItem.IdSatuanHarga       = item.IdSatuanHarga;
                    dhkItem.HargaRit2           = item.HargaRit2;
                    dhkItem.Overtime            = item.Overtime;
                    dhkItem.RitaseBulan         = item.RitaseBulan;
                    dhkItem.IsAsuransi          = item.IsAsuransi;
                    dhkItem.PihakPenanggung     = item.PihakPenanggung;
                    dhkItem.TipeNilaiTanggungan = item.TipeNilaiTanggungan;
                    dhkItem.NilaiTanggungan     = item.NilaiTanggungan;
                    dhkItem.Premi               = item.Premi;
                    dhkItem.Keterangan          = item.Keterangan;
                    ListAnuTeuDiHapus.Add(item.Id);
                }
                else
                {
                    dbitem.DaftarHargaKontrakItem.Add(new Context.DaftarHargaKontrakItem()
                    {
                        //Id = item.Id,
                        NamaRuteDaftarHarga = item.NamaRuteDaftarHarga,
                        ListIdRute          = item.ListIdRute,
                        ListNamaRute        = item.ListNamaRute,
                        IdJenisTruck        = item.IdJenisTruck,
                        BeratMinimum        = item.BeratMinimum,
                        Harga               = item.Harga,
                        IdSatuanHarga       = item.IdSatuanHarga,
                        HargaRit2           = item.HargaRit2,
                        Overtime            = item.Overtime,
                        RitaseBulan         = item.RitaseBulan,
                        IsAsuransi          = item.IsAsuransi,
                        PihakPenanggung     = item.PihakPenanggung,
                        TipeNilaiTanggungan = item.TipeNilaiTanggungan,
                        NilaiTanggungan     = item.NilaiTanggungan,
                        Premi               = item.Premi,
                        Keterangan          = item.Keterangan
                    });
                }
            }

            foreach (Context.DaftarHargaKontrakItem dbhapus in DummyItems)
            {
                if (!ListAnuTeuDiHapus.Any(d => d == dbhapus.Id))
                {
                    dbitem.DaftarHargaKontrakItem.Remove(dbhapus);
                }
            }

            //kondisi
            dbitem.DaftarHargaKontrakKondisi.Clear();
            foreach (DaftarHargaKondisi item in listKondisi.Where(d => d.IsDelete == false))
            {
                dbitem.DaftarHargaKontrakKondisi.Add(new Context.DaftarHargaKontrakKondisi()
                {
                    kondisi   = item.kondisi,
                    IsInclude = item.IsInclude,
                    IsBill    = item.IsBill,
                    value     = item.value,
                    IsDefault = item.IsDefault,
                    IsKota    = item.IsKota,
                    IsTitik   = item.IsTitik,
                    ValKota   = item.ValKota,
                    ValTitik  = item.ValTitik,
                    IsDelete  = item.IsDelete,
                });
            }
            //Attachment
            dbitem.DaftarHargaKontrakAttachment.Clear();
            DaftarHargaKontrakAttachment[] resultAtt = JsonConvert.DeserializeObject <DaftarHargaKontrakAttachment[]>(StrAttachment);
            foreach (DaftarHargaKontrakAttachment item in resultAtt)
            {
                dbitem.DaftarHargaKontrakAttachment.Add(new Context.DaftarHargaKontrakAttachment()
                {
                    FileName  = item.FileName,
                    RFileName = item.RFileName,
                });
            }
        }