/// <summary>
        /// 更新存儲
        /// </summary>
        /// <param name="Model"></param>
        /// <param name="LoginUserID"></param>
        /// <param name="RID"></param>
        /// <returns></returns>
        public static string PlanEditSave(PlanModel PlanModel, List <PassengerModel> PassengerModel, List <stepModel> stepModel, string LoginUserID)
        {
            using (var db = new VehicleEntities())
            {
                DateTime LastUpdDate   = DateTime.Now;
                string   LocationID    = "";
                string   DestinationID = "";
                var      stepLen       = stepModel.Count - 1;
                var      RID           = "";
                foreach (var item in stepModel)
                {
                    if (item.sequence == 0)
                    {
                        LocationID = item.locationID;
                    }
                    if (item.sequence == stepLen)
                    {
                        DestinationID = item.locationID;
                    }
                }

                var PlanList = db.M_Plan.Where(t => t.planID == PlanModel.planID);
                if (PlanList.Count() > 1)
                {
                    foreach (var item in PlanList)
                    {
                        var itemRID = item.RID;
                        item.LastUpdDate   = LastUpdDate;
                        item.locationID    = LocationID;
                        item.destinationID = DestinationID;


                        var PassengerList = db.D_PassengerList.Where(t => t.PlanRID == item.RID);
                        if (PassengerList.Count() > 0)
                        {
                            item.carID         = PlanModel.carID;
                            item.driverTel     = PlanModel.driverTel;
                            item.driverID      = PlanModel.driverID;
                            item.locationID    = LocationID;
                            item.destinationID = DestinationID;
                            item.status        = Convert.ToInt32(PlanModel.status);
                            item.time          = Convert.ToDateTime(PlanModel.time);
                            item.LastUpdUser   = LoginUserID;

                            var PlanID = item.planID;
                            RID = item.RID;

                            //站點表
                            var RoadList = db.D_RoadList.Where(t => t.planID == PlanID);

                            foreach (var del in RoadList)
                            {
                                db.DeleteObject(del);
                            }


                            foreach (var setpitem in stepModel)
                            {
                                D_RoadList RoadListitem = new D_RoadList();
                                RoadListitem.RID        = Guid.NewGuid().ToString();
                                RoadListitem.PlanRID    = RID;
                                RoadListitem.planID     = PlanID;
                                RoadListitem.locationID = Convert.ToInt32(setpitem.locationID);
                                RoadListitem.sequence   = setpitem.sequence;
                                if (setpitem.atime != null)
                                {
                                    RoadListitem.atime = Convert.ToDateTime(setpitem.atime);
                                }
                                if (setpitem.ltime != null)
                                {
                                    RoadListitem.ltime = Convert.ToDateTime(setpitem.ltime);
                                }
                                db.AddToD_RoadList(RoadListitem);
                            }


                            //乘客表
                            var PassengerListModel = db.D_PassengerList.Where(t => t.PlanRID == RID);
                            foreach (var del in PassengerList)
                            {
                                db.DeleteObject(del);
                            }

                            foreach (var Passengeritem in PassengerModel)
                            {
                                D_PassengerList PassengerListitem = new D_PassengerList();
                                PassengerListitem.RID           = Guid.NewGuid().ToString();
                                PassengerListitem.PlanRID       = RID;
                                PassengerListitem.planID        = PlanID;
                                PassengerListitem.returnTime    = Passengeritem.returnTime;
                                PassengerListitem.passengerID   = Passengeritem.passengerID;
                                PassengerListitem.time          = Convert.ToDateTime(Passengeritem.time);
                                PassengerListitem.status        = Passengeritem.status;
                                PassengerListitem.remark        = Passengeritem.remark;
                                PassengerListitem.locationID    = Passengeritem.locationID;
                                PassengerListitem.destinationID = Passengeritem.destinationID;
                                if (Passengeritem.confirmTime != null)
                                {
                                    PassengerListitem.confirmTime = Convert.ToDateTime(Passengeritem.confirmTime);
                                }
                                db.AddToD_PassengerList(PassengerListitem);
                            }
                        }
                    }
                }
                else
                {
                    RID = db.M_Plan.Where(t => t.planID == PlanModel.planID).FirstOrDefault().RID;



                    //主檔
                    var Plan = db.M_Plan.Where(t => t.RID == RID).FirstOrDefault();
                    Plan.carID         = PlanModel.carID;
                    Plan.driverTel     = PlanModel.driverTel;
                    Plan.driverID      = PlanModel.driverID;
                    Plan.locationID    = LocationID;
                    Plan.destinationID = DestinationID;
                    Plan.status        = Convert.ToInt32(PlanModel.status);
                    Plan.time          = Convert.ToDateTime(PlanModel.time);
                    Plan.LastUpdDate   = LastUpdDate;
                    Plan.LastUpdUser   = LoginUserID;



                    //站點表
                    var RoadList = db.D_RoadList.Where(t => t.PlanRID == RID);
                    foreach (var del in RoadList)
                    {
                        db.DeleteObject(del);
                    }

                    foreach (var item in stepModel)
                    {
                        D_RoadList RoadListitem = new D_RoadList();
                        RoadListitem.RID        = Guid.NewGuid().ToString();
                        RoadListitem.PlanRID    = RID;
                        RoadListitem.planID     = Plan.planID;
                        RoadListitem.locationID = Convert.ToInt32(item.locationID);
                        RoadListitem.sequence   = item.sequence;
                        if (item.atime != null)
                        {
                            RoadListitem.atime = Convert.ToDateTime(item.atime);
                        }
                        if (item.ltime != null)
                        {
                            RoadListitem.ltime = Convert.ToDateTime(item.ltime);
                        }
                        db.AddToD_RoadList(RoadListitem);
                    }

                    //乘客表
                    var PassengerList = db.D_PassengerList.Where(t => t.PlanRID == RID);
                    foreach (var del in PassengerList)
                    {
                        db.DeleteObject(del);
                    }

                    foreach (var item in PassengerModel)
                    {
                        D_PassengerList PassengerListitem = new D_PassengerList();
                        PassengerListitem.RID           = Guid.NewGuid().ToString();
                        PassengerListitem.PlanRID       = RID;
                        PassengerListitem.planID        = Plan.planID;
                        PassengerListitem.passengerID   = item.passengerID;
                        PassengerListitem.time          = Convert.ToDateTime(item.time);
                        PassengerListitem.status        = item.status;
                        PassengerListitem.returnTime    = item.returnTime;
                        PassengerListitem.remark        = item.remark;
                        PassengerListitem.locationID    = item.locationID;
                        PassengerListitem.destinationID = item.destinationID;
                        if (item.confirmTime != null)
                        {
                            PassengerListitem.confirmTime = Convert.ToDateTime(item.confirmTime);
                        }
                        db.AddToD_PassengerList(PassengerListitem);
                    }
                }



                int success = db.SaveChanges();
                if (success > 0)
                {
                    var IsSend = "";
                    //在這寫
                    using (var plan = new VehicleEntities())
                    {
                        var SendPlan = plan.M_Plan.Where(t => t.RID == RID).FirstOrDefault();
                        IsSend = SendPlan.IsSend;

                        if (IsSend != "1")
                        {
                            WeChatWS.WeChatWSSoapClient ws = new WeChatWS.WeChatWSSoapClient();
                            ws.seedsmsToDriver(RID);
                            SendPlan.IsSend = "1";

                            plan.SaveChanges();
                        }
                        ;
                    }
                    ViewModel.Result result = new Result();
                    result.success = true;
                    result.message = "提交保存成功";
                    return(JsonConvert.SerializeObject(result));
                }
                else
                {
                    return(JsonConvert.SerializeObject(new ViewModel.Result()
                    {
                        success = true, message = "保存失败"
                    }));
                }
            }
        }
        /// <summary>
        /// 新增存儲
        /// </summary>
        /// <param name="Model"></param>
        /// <param name="LoginUserID"></param>
        /// <returns></returns>
        public static string PlanAddSave(PlanModel PlanModel, List <PassengerModel> PassengerModel, List <stepModel> stepModel, string LoginUserID)
        {
            var ToDay = DateTime.Now.ToString("yyyy-MM-dd");

            using (var db = new VehicleEntities())
            {
                var    Rid           = Guid.NewGuid().ToString();
                var    PlanID        = GetPlanNo();
                var    stepLen_b     = stepModel.Count;
                var    stepLen       = stepLen_b - 1;
                string LocationID    = "";
                string DestinationID = "";

                foreach (var item in stepModel)
                {
                    if (item.sequence == 0)
                    {
                        LocationID = item.locationID;
                    }
                    if (item.sequence == stepLen)
                    {
                        DestinationID = item.locationID;
                    }
                }

                //存儲主檔
                M_Plan Plan = new M_Plan();
                Plan.RID           = Rid;
                Plan.planID        = PlanID;
                Plan.carID         = PlanModel.carID;
                Plan.driverID      = PlanModel.driverID;
                Plan.driverTel     = PlanModel.driverTel;
                Plan.locationID    = LocationID;
                Plan.destinationID = DestinationID;
                Plan.time          = Convert.ToDateTime(PlanModel.time);
                Plan.status        = Convert.ToInt32(PlanModel.status);
                Plan.step          = 0;
                Plan.CreateDate    = Convert.ToDateTime(PlanModel.CreateDate);
                Plan.CreateUser    = LoginUserID;
                Plan.LastUpdDate   = Convert.ToDateTime(PlanModel.CreateDate);
                Plan.LastUpdUser   = LoginUserID;
                Plan.valid         = "1";
                Plan.IsSend        = "0";
                Plan.batch         = PlanID;
                db.AddToM_Plan(Plan);

                //存儲站點表
                foreach (var item in stepModel)
                {
                    D_RoadList RoadList = new D_RoadList();
                    RoadList.RID        = item.RID;
                    RoadList.PlanRID    = Rid;
                    RoadList.planID     = PlanID;
                    RoadList.locationID = Convert.ToInt32(item.locationID);
                    RoadList.sequence   = item.sequence;
                    db.AddToD_RoadList(RoadList);
                }

                //存儲乘客表
                foreach (var item in PassengerModel)
                {
                    D_PassengerList PassengerList = new D_PassengerList();
                    PassengerList.RID           = item.RID;
                    PassengerList.PlanRID       = Rid;
                    PassengerList.planID        = PlanID;
                    PassengerList.passengerID   = item.passengerID;
                    PassengerList.time          = Convert.ToDateTime(item.time);
                    PassengerList.status        = item.status;
                    PassengerList.remark        = item.remark;
                    PassengerList.returnTime    = "";
                    PassengerList.locationID    = item.locationID;
                    PassengerList.destinationID = item.destinationID;

                    db.AddToD_PassengerList(PassengerList);
                }

                var YearText = DateTime.Now.ToString("yyyyMMdd").Substring(2, 2);
                int?number   = null;
                var List     = db.T_SystemApply.Where(t => t.FunctionName == "PlanNo" && t.DateTime == YearText);
                if (List.Count() > 0)
                {
                    var num = List.Max(t => t.Number);
                    //number = List.OrderByDescending(t => t.Create_Date).First().Number;
                    number = num + 1;
                }
                else
                {
                    number = 1;
                }

                //存儲單號記錄
                T_SystemApply SystemApply = new T_SystemApply();
                SystemApply.Create_Date  = DateTime.Now;
                SystemApply.DateTime     = PlanModel.CreateDate.ToString("yyyy-MM-dd").Substring(2, 2);
                SystemApply.Number       = number;
                SystemApply.FunctionName = "PlanNo";
                SystemApply.RID          = Guid.NewGuid().ToString();
                db.AddToT_SystemApply(SystemApply);

                int success = db.SaveChanges();
                if (success > 0)
                {
                    //在這寫
                    ViewModel.Result result = new Result();
                    result.success = true;
                    result.message = "提交保存成功";
                    WeChatWS.WeChatWSSoapClient ws = new WeChatWS.WeChatWSSoapClient();
                    ws.seedsmsToDriver(Rid);
                    using (var plan = new VehicleEntities())
                    {
                        var rst = plan.M_Plan.Where(t => t.RID == Rid).FirstOrDefault();
                        rst.IsSend = "1";
                        plan.SaveChanges();
                    }
                    return(JsonConvert.SerializeObject(result));
                }
                else
                {
                    return(JsonConvert.SerializeObject(new ViewModel.Result()
                    {
                        success = true, message = "保存失败"
                    }));
                }
            }
        }