コード例 #1
0
        public async Task <ApiResponse> VesselDestinationPort(TblVesselMaster tblvessel)
        {
            var vesselnameList = await _context.TblVesselName.ToListAsync();

            var portlist = await _context.TblPortMaster.ToListAsync();

            var vesselroutlist = await _context.TblVesselRoute.ToListAsync();

            var vesselmasterList = await _context.TblVesselMaster.ToListAsync();

            var items = (from vm in vesselmasterList
                         join vr in vesselroutlist on vm.Id equals vr.VesselMasterId
                         join pl in portlist on vr.PortId equals pl.Id
                         join vn in vesselnameList on vm.VesselNameId equals vn.Id
                         where vm.Id == tblvessel.Id && vr.Type == "Destination"
                         select new
            {
                vesselname = vn.VesselName,
                portname = pl.PortName,
                lastputtingdate = vr.LastPuttingdate,
            }).ToList();
            var ApiResponse = await response.ApiResult("OK", items, "Record Found");

            return(ApiResponse);
        }
コード例 #2
0
        public async Task <ApiResponse> GetVesselMasterById(TblVesselMaster objVessel)
        {
            var listvesselroute = await _context.TblVesselRoute.ToListAsync();

            var listVesselMaster = await _context.TblVesselMaster.ToListAsync();

            var items = (from lvm in listVesselMaster


                         select new
            {
                id = lvm.Id,
                vesselNameId = lvm.VesselNameId,
                voyageNo = lvm.VoyageNo,
                vesselType = lvm.VesselType,
                isPackageDeal = lvm.IsPackageDeal,
                noOfContainer = lvm.NoOfContainer,
                yardId = lvm.YardId,
                shippingAgentid = lvm.ShippingAgentid,
                sourceCountryId = lvm.SourceCountryId,
                destinationCountryId = lvm.DestinationCountryId,
                eTDDate = lvm.Etddate,
                lastConsigneDate = lvm.LastConsigneDate,
                lastCFSDate = lvm.LastCfsdate,
                recordDate = lvm.RecordDate,
                updateDate = lvm.UpdateDate,
                deleteDate = lvm.DeleteDate
                ,
                vesselRoute = listvesselroute.Where(i => i.VesselMasterId == objVessel.Id)
            }).Where(i => i.id == objVessel.Id).ToList();

            var ApiResponse = await response.ApiResult("OK", items, "Record Found");

            return(ApiResponse);
        }
コード例 #3
0
        public async Task <ApiResponse> AddVesselMaster(TblVesselMaster tblVesselMaster)
        {
            _context.TblVesselMaster.Add(tblVesselMaster);
            await _context.SaveChangesAsync();

            List <TblVesselRoute> vesselRouteDetail = JsonConvert.DeserializeObject <List <TblVesselRoute> >(tblVesselMaster.VesselRouteDetail.ToString());

            for (int i = 0; i < vesselRouteDetail.Count; i++)
            {
                TblVesselRoute objVesselRoute = new TblVesselRoute();
                objVesselRoute.PortId          = vesselRouteDetail[i].PortId;
                objVesselRoute.VesselMasterId  = tblVesselMaster.Id;
                objVesselRoute.Type            = vesselRouteDetail[i].Type;
                objVesselRoute.LastPuttingdate = vesselRouteDetail[i].LastPuttingdate;
                _context.TblVesselRoute.Add(objVesselRoute);
                await _context.SaveChangesAsync();
            }
            var ApiResponse = await response.ApiResult("OK", new { id = tblVesselMaster.Id }, "Record Add ");

            return(ApiResponse);
        }
コード例 #4
0
        public async Task <ApiResponse> updateVesselMaster(TblVesselMaster tblVesselMaster)
        {
            _context.Entry(tblVesselMaster).State = EntityState.Modified;
            _context.Entry(tblVesselMaster).Property(i => i.RecordDate).IsModified = false;
            try
            {
                await _context.SaveChangesAsync();

                //remove vessel Route
                var listVesselRoute = await _context.TblVesselRoute.Where(i => i.VesselMasterId == tblVesselMaster.Id).ToListAsync();

                _context.TblVesselRoute.RemoveRange(listVesselRoute);
                await _context.SaveChangesAsync();

                List <TblVesselRoute> vesselRouteDetail = JsonConvert.DeserializeObject <List <TblVesselRoute> >(tblVesselMaster.VesselRouteDetail.ToString());
                for (int i = 0; i < vesselRouteDetail.Count; i++)
                {
                    TblVesselRoute objVesselRoute = new TblVesselRoute();
                    objVesselRoute.PortId          = vesselRouteDetail[i].PortId;
                    objVesselRoute.VesselMasterId  = tblVesselMaster.Id;
                    objVesselRoute.Type            = vesselRouteDetail[i].Type;
                    objVesselRoute.LastPuttingdate = vesselRouteDetail[i].LastPuttingdate;
                    _context.TblVesselRoute.Add(objVesselRoute);
                    await _context.SaveChangesAsync();
                }
                var ApiResponse = await response.ApiResult("OK", "", "Record Update");

                return(ApiResponse);
            }
            catch (DbUpdateConcurrencyException ex)
            {
                var ApiResponseEX = await response.ApiResult("OK", ex, "Record Found");

                return(ApiResponseEX);
            }
        }