// GET: Work_schedule/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Work_schedule work_schedule = db.Work_schedule.Find(id); if (work_schedule == null) { return(HttpNotFound()); } return(View(work_schedule)); }
//取所有session //public SelectList GetAllSession() //{ // var result = new SelectList(context.Session, "Session_id", "Start_time"); // //var result = context.Session.Include(s => s.Session_id) // // .Select(x => new Designer_Schedule_ViewModel // // { // // AllSession = x.Session_id // // }).ToList(); // return result; //} //取所有designer_id //public SelectList GetAllDesigner() //{ // var result = new SelectList(context.Designer, "Designer_id", "Name"); // //var result = context.Designer.Include(x => x.Designer_id) // // .Select(x => new Designer_Schedule_ViewModel // // { // // AllDesignerId = x.Designer_id // // }).ToList(); // return result; //} //Create public OperationResult Create(Designer_Schedule_ViewModel input) { OperationResult result = new OperationResult(); try { //為了要叫用Repository這個類別的Create方法,所以要new一個Repository出來 // ,並且傳入<T>泛型參數,這裡用的參數為要新增內容的資料表名稱 AppleLaLaRepository <Work_schedule> repository = new AppleLaLaRepository <Work_schedule>(context); //為了要對Work_Schedule這個資料表塞資料,所以要new一個Work_Schedule資料表出來 Work_schedule entity = new Work_schedule() { //資料表欄位 = ViewModel欄位 Designer_id = input.AllDesignerId, Session_id = input.SessionId, On_work_flag = input.WorkFlag, Date = input.WorkDate }; //叫用repository裡的Create方法,並傳入整理好(符合Work_Schedule這個資料表欄位)的這包資料 repository.Create(entity); //叫dbContext幫我確定儲存好 context.SaveChanges(); //當走完以上的步驟都沒有出錯,就表示資料儲存完畢 //就可以塞個操作成功給result result.IsSuccessful = true; } //有try就一定會有catch去接住例外狀況發生時要做的事情 catch (Exception ex) { //進入例外狀況這裡,就代表操作失敗 //就要塞個操作失敗給result result.IsSuccessful = false; //將這個被抓到的例外狀況的原因塞給exception這個欄位記錄下來 result.exception = ex; } //將Create這個方法的操作結果回傳出去 return(result); }
public void _intoDB(string cartInfo, string Status, string OrderNo, int PayWay_id, int cus_id) { var result = Newtonsoft.Json.JsonConvert.DeserializeObject <List <CartDetail> >(cartInfo); AppleLaLaRepository <Order> repo_order = new AppleLaLaRepository <Order>(context); AppleLaLaRepository <Order_details> repo_Order_details = new AppleLaLaRepository <Order_details>(context); AppleLaLaRepository <Work_schedule> repo_Work_schedule = new AppleLaLaRepository <Work_schedule>(context); Order _order = new Order { Order_id = OrderNo, Payway_id = PayWay_id, Cust_id = cus_id, Order_date = DateTime.Now, Last_updata_date = DateTime.Now, }; repo_order.Create(_order); context.SaveChanges(); var SessionId = 0; var time = 1; foreach (var item in result) { switch (int.Parse(item.Session)) { case 11: SessionId = 1; break; case 12: SessionId = 2; break; case 13: SessionId = 3; break; case 14: SessionId = 4; break; case 15: SessionId = 5; break; case 16: SessionId = 6; break; case 17: SessionId = 7; break; case 18: SessionId = 8; break; case 19: SessionId = 9; break; case 20: SessionId = 10; break; case 21: SessionId = 11; break; default: SessionId = 0; break; } Order_details order_Details = new Order_details() { Order_detail_no = DateTimeOffset.Now.AddSeconds(time).ToUnixTimeSeconds().ToString(), Order_id = OrderNo, Service_details_Id = (from sd in context.Service_details where sd.Name == item.Services select sd.Service_details_Id).First(), Appointment_date = item.Date, Session_id = SessionId, Designer_id = (from d in context.Designer where d.Name == item.Designer select d.Designer_id).First(), Last_updata_date = DateTime.Now, }; repo_Order_details.Create(order_Details); var cnstr = ConfigurationManager.ConnectionStrings["AppleLaLaModel"].ConnectionString; using (var conn = new SqlConnection(cnstr)) { conn.Open(); string sql = "select ws.Schedule_id, ws.Designer_id,ws.Date,ws.Session_id,ws.On_work_flag from[Work_schedule] ws inner join[Designer] d on ws.Designer_id = d.Designer_id where d.Name = @Name and ws.Date = @Date and ws.Session_id = @Session_id "; var target = conn.Query <dynamic>(sql, new { Name = item.Designer, Date = item.Date, Session_id = SessionId }); foreach (var i in target) { Work_schedule Work_schedule = new Work_schedule() { Schedule_id = i.Schedule_id, Designer_id = i.Designer_id, Date = i.Date, Session_id = i.Session_id, On_work_flag = "N" }; repo_Work_schedule.Update(Work_schedule); } } context.SaveChanges(); time++; } }