//航次基本信息绑定
        private void bindVoyageInfo(string voyageid)
        {
            VoyageInfo vi = new VoyageInfo();
            Voyage v = new Voyage();

            vi = v.GetByID(voyageid);

            string voyageName = vi.Name;
            string beginDate = vi.BeginDate.ToString();
            string endDate = vi.EndDate.ToString();
            string routeId = vi.RouteID.ToString();

            Route r = new Route();
            RouteInfo ri = new RouteInfo();

            ri = r.GetByID(routeId);
            float distance = ri.Distance;

            Ship ship = new Ship();
            ShipInfo si = new ShipInfo();
            si = ship.GetByID(vi.ShipID.ToString());

            string shipName = si.Name;
            string chiefEngineer = si.ChiefEngineer;
            string captain = si.Captain;
            string generalManager = si.GeneralManager;

            Relation_RoutePort rrp = new Relation_RoutePort();
            Relation_RoutePortInfo rrpi = new Relation_RoutePortInfo();

            int startPortId = 0;
            int endPortId = 0;
            rrpi = rrp.GetListByRouteID(routeId)[0];
            int portType = rrpi.PortTypeID;

            //出发港
            if (portType == 2)
            {
                startPortId = rrpi.PortID;
            }
            //到达港
            if (portType == 4)
            {
                endPortId = rrpi.PortID;
            }

            rrpi = rrp.GetListByRouteID(routeId)[1];
            portType = rrpi.PortTypeID;

            //出发港
            if (portType == 2)
            {
                startPortId = rrpi.PortID;
            }
            //到达港
            if (portType == 4)
            {
                endPortId = rrpi.PortID;
            }

            Port p = new Port();
            PortInfo pi = new PortInfo();

            pi = p.GetByID(startPortId.ToString());
            string startPortName = pi.Name;
            pi = p.GetByID(endPortId.ToString());
            string endPortName = pi.Name;

            lblShipName.Text = shipName;
            lblDistance.Text = distance.ToString();

            if (beginDate.Split(' ')[0].ToString().Equals("1900/1/1"))
            {
                lblStartTime.Text = "";
            }
            else
            {
                lblStartTime.Text = beginDate;
            }

            if (endDate.Split(' ')[0].ToString().Equals("1900/1/1"))
            {
                lblStartTime.Text = "";
            }
            else
            {
                lblEndTime.Text = endDate;
            }

            lblStartPort.Text = startPortName;
            lblEndPort.Text = endPortName;
            lblChiefEngineer.Text = chiefEngineer;
            lblCaptain.Text = captain;
            lblGeneralManager.Text = generalManager;
        }
Beispiel #2
0
        /// <summary>
        /// 路线增改事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnSaveRoute_Click(object sender, EventArgs e)
        {
            try
            {
                RouteInfo ri = new RouteInfo();
                ri.Distance = float.Parse(tbDistance.Text);
                ri.Name = tbRouteName.Text;

                Relation_RoutePortInfo rrpis = new Relation_RoutePortInfo();
                rrpis.PortID = Convert.ToInt32(ddlStartPort.SelectedValue);
                rrpis.PortTypeID = 2;
                rrpis.OrderNum = "0";
                Relation_RoutePortInfo rrpie = new Relation_RoutePortInfo();
                rrpie.PortID = Convert.ToInt32(ddlEndPort.SelectedValue);
                rrpie.PortTypeID = 4;
                rrpie.OrderNum = "0";
                //新增
                if (string.IsNullOrEmpty(lbID.Value))
                {
                    int routeId = Convert.ToInt32(new Route().Add(ri));
                    //始发港
                    rrpis.RouteID = routeId;
                    new Relation_RoutePort().Add(rrpis);
                    //目的港
                    rrpie.RouteID = routeId;
                    new Relation_RoutePort().Add(rrpie);
                }
                //编辑
                else
                {
                    int routeId = Convert.ToInt32(lbID.Value);
                    ri.ID = routeId.ToString();
                    new Route().Update(ri);
                    //始发港
                    rrpis.RouteID = routeId;
                    IList<PortInfo> pList = new Port().GetList(routeId.ToString(), "2");

                    rrpis.ID = new Port().GetPortListByRoute(routeId.ToString(), "2").Tables[0].Rows[0]["relateId"].ToString();
                    new Relation_RoutePort().Update(rrpis);
                    //目的港
                    rrpie.RouteID = routeId;
                    rrpie.ID = new Port().GetPortListByRoute(routeId.ToString(), "4").Tables[0].Rows[0]["relateId"].ToString();
                    new Relation_RoutePort().Update(rrpie);

                    string id = lbID.Value;
                    RouteInfo rInfo = new Route().GetByID(id);
                    lbTotalRoute.Text = rInfo.TotalRoute;
                }

                BindRoute(0, pGrid.PageSize);
                BindPassPortList(lbID.Value);
                ShowMsg("操作成功!");
            }
            catch (ArgumentNullException aex)
            {
                ShowMsg(aex.Message);
            }
            catch (Exception ex)
            {
                ShowMsg(ex.Message);
                Log(ex);
            }
        }