public HttpResponseMessage RemoveRaw(double raw_id) { try { using (var context = new SAPContext()) { afs_repair_raw v = new afs_repair_raw(); v = context.afs_repair_raw.Where(t => t.REPAIR_RAW_ID == raw_id).FirstOrDefault(); if (v != null) { context.Entry(v).State = EntityState.Deleted; context.SaveChanges(); } else { return(Request.CreateResponse(HttpStatusCode.NotFound, "Raw id is not found")); } } return(Request.CreateResponse(HttpStatusCode.OK)); } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.InnerException.Message)); } }
public HttpResponseMessage SaveAppointment(RepairForm postdata) { try { var b3gRepair = new b3gRepair(); using (var context = new SAPContext()) { afs_repair_header h = new afs_repair_header(); h = context.afs_repair_header.Where(t => t.REPAIR_CODE == postdata.header.repair_code).FirstOrDefault(); if (h != null) { context.Entry(h).State = EntityState.Modified; } else { return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Repair data not found")); } //set status h.STATUS = postdata.header.status; if (postdata.header.status != "COMPLETE") { if (postdata.raws.Where(w => w.status == "มีอะไหล่").Count() == postdata.raws.Count()) { h.STATUS = "PROCESS"; } else { h.STATUS = "PREPARE"; }; } ; h.UPDATE_BY = postdata.header.update_by; h.UPDATE_DATE = DateTime.Now; context.SaveChanges(); //Set return value postdata.header.update_by = h.UPDATE_BY; postdata.header.update_date = h.UPDATE_DATE; //นัดหมายลูกค้า if (postdata.appoint != null) { afs_repair_appointment p = new afs_repair_appointment(); p = context.afs_repair_appointment.Where(t => t.REPAIR_APPOINT_ID == postdata.appoint.repair_appoint_id).FirstOrDefault(); if (p != null) { context.Entry(p).State = EntityState.Modified; } else { p = new afs_repair_appointment(); } p.APPOINTMENT_DATE = postdata.appoint.appointment_date; //DateTime.ParseExact(postdata.appoint.appointment_date, "dd/MM/yyyy", null); p.APPOINTMENT_TIME = postdata.appoint.appointment_time; p.TARGET_DATE = postdata.appoint.target_date; // DateTime.ParseExact(postdata.appoint.target_date, "dd/MM/yyyy", null); p.TECHNICIAN_TEAM = postdata.appoint.technician_team; p.PRICE_AMOUNT = postdata.appoint.price_amount; p.PRICE_EXTRA = postdata.appoint.price_extra; p.REMARK_CUSTOMER = postdata.appoint.remark_customer; p.UPDATE_BY = postdata.header.update_by; p.UPDATE_DATE = DateTime.Now; if (p.REPAIR_APPOINT_ID == 0) { p.REPAIR_CODE = postdata.header.repair_code; p.CREATED_BY = postdata.header.created_by; p.CREATED_DATE = DateTime.Now; context.afs_repair_appointment.Add(p); } context.SaveChanges(); //Set return value postdata.appoint.repair_appoint_id = p.REPAIR_APPOINT_ID; postdata.appoint.repair_code = postdata.header.repair_code; } List <afs_repair_raw> i = new List <afs_repair_raw>(); foreach (var item in postdata.raws) { afs_repair_raw v = new afs_repair_raw(); v = context.afs_repair_raw.Where(t => t.REPAIR_RAW_ID == item.repair_raw_id).FirstOrDefault(); if (v != null) { context.Entry(v).State = EntityState.Modified; } else { v = new afs_repair_raw(); } v.RAW_NAME = item.raw_name; v.RAW_QTY = item.raw_qty; v.STATUS = item.status; if (item.raw_date.HasValue) { v.RAW_DATE = item.raw_date.Value; //DateTime.ParseExact(item.raw_date, "dd/MM/yyyy", null); } ; v.REMARK = item.remark; v.UPDATE_BY = postdata.header.update_by; v.UPDATE_DATE = DateTime.Now; if (item.repair_raw_id == 0) { v.REPAIR_CODE = postdata.header.repair_code; v.CREATED_BY = postdata.header.created_by; v.CREATED_DATE = DateTime.Now; context.afs_repair_raw.Add(v); } context.SaveChanges(); //Set return value item.repair_raw_id = v.REPAIR_RAW_ID; item.repair_code = postdata.header.repair_code; } ; } return(Request.CreateResponse(HttpStatusCode.OK, postdata)); } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.InnerException.Message)); } }