public JsonResult InsertOutgoingManage(string OutMan, string OutgoingFormJson, string OutgoingJson) { List <OutgoingEventModel> OutgoingList = null; OutgoingFormModel OutgoingForm = null; try { OutgoingList = JsonConvert.DeserializeObject <List <OutgoingEventModel> >(OutgoingJson); OutgoingForm = JsonConvert.DeserializeObject <OutgoingFormModel>(OutgoingFormJson); //CheckOutDatetime(OutgoingForm.SDate, OutgoingForm.STime,true); //檢查預約日期合不合法 , 若不合法 報錯! for (int i = 0; i < OutgoingList.Count; i++) { CheckOutDatetime(OutgoingForm.SDate, OutgoingList[i].OutTime, true);//驗證時間是否 OutgoingList[i].OutTime = OutgoingList[i].OutTime.Replace(":", ""); CheckOutDatetime(OutgoingForm.SDate, OutgoingList[i].GoOutTime, true);//驗證時間是否 OutgoingList[i].GoOutTime = OutgoingList[i].GoOutTime.Replace(":", ""); } EmpModel EMP = ModelFactory.GetOutMan(OutMan); OutgoingForm.OutMan = EMP.EmployeeNo; OutgoingForm.OutManCompany = EMP.Company; OutgoingForm.RecordMan = LoginUserInfo.UserId; OutgoingForm.SDate = OutgoingForm.SDate.Replace("-", ""); //OutgoingForm.STime = OutgoingForm.STime.Replace(":", ""); if (ModelFactory.InsertOutgoing(OutgoingForm, OutgoingList, "AM")) { return(Json("1"));//代表已經處裡完 } else { return(Json("失敗!"));//失敗 } } catch (Exception ex) { return(Json(ex.Message)); } catch { return(Json("系統發生錯誤")); } }
public JsonResult InsertOutgoing(AppOutgoingModel AppOutgoing) { JsonresultModel ResultModel = new JsonresultModel(); try { //檢查時間格式 是否正確 CheckOutDatetime(AppOutgoing.SDate, AppOutgoing.STime); CheckOutDatetime(AppOutgoing.SDate, AppOutgoing.GoOutTime); OutgoingFormModel OutgoingForm = new OutgoingFormModel(); List <OutgoingEventModel> OutgoingList = new List <OutgoingEventModel>(); //************************************ OutgoingForm.OutMan = AppOutgoing.OutMan; OutgoingForm.OutManCompany = AppOutgoing.OutManCompany; OutgoingForm.RecordMan = AppOutgoing.OutMan;//記錄人 等於 申請人 OutgoingForm.SDate = AppOutgoing.SDate; OutgoingForm.STime = AppOutgoing.STime; OutgoingForm.OutDescription = ""; OutgoingList.Add(new OutgoingEventModel() { Location = System.Web.HttpUtility.UrlDecode(AppOutgoing.Location), CustomerName = System.Web.HttpUtility.UrlDecode(AppOutgoing.CustomerName), OutDescription = System.Web.HttpUtility.UrlDecode(AppOutgoing.OutDescription), OutTime = OutgoingForm.STime.Replace(":", ""), GoOutTime = AppOutgoing.GoOutTime.Replace(":", ""), Equipment = "1", //App }); OutgoingForm.SDate = OutgoingForm.SDate.Replace("-", ""); OutgoingModelFactory ModelFactory = new OutgoingModelFactory(); if (ModelFactory.InsertOutgoing(OutgoingForm, OutgoingList, "A")) { ResultModel.Result = "1"; return(Json(ResultModel, JsonRequestBehavior.AllowGet));//代表已經處裡完 } else { ResultModel.Result = "0"; ResultModel.ErrorMsg = "新增外出失敗"; return(Json(ResultModel, JsonRequestBehavior.AllowGet)); } } catch (Exception ex) { ResultModel.Result = "0"; ResultModel.ErrorMsg = ex.Message; return(Json(ResultModel, JsonRequestBehavior.AllowGet)); } catch { ResultModel.Result = "0"; ResultModel.ErrorMsg = "系統發生錯誤"; return(Json(ResultModel, JsonRequestBehavior.AllowGet)); } }
/// <summary> /// 新增出勤紀錄 /// </summary> /// <param name="OutgoingForm"></param> /// <param name="OutgoingList"></param> /// <param name="OutgoingStatus">A或AM(補登)</param> /// <returns></returns> public bool InsertOutgoing(OutgoingFormModel OutgoingForm, List <OutgoingEventModel> OutgoingList, string OutgoingStatus) { //OutgoingList DbTransaction objTrans = DbAccess.CreateDbTransaction(); try { DataTable dt = DbAccess.ExecuteDataTable("SELECT ISNULL(MAX(OutId),@NewId) as NewOutId FROM Outgoing WHERE OutMan=@OutMan AND OutId LIKE @OutId", new DbParameter[] { DataAccess.CreateParameter("NewId", DbType.String, DateTime.Now.ToString("yyyyMMdd000")), DataAccess.CreateParameter("OutId", DbType.String, DateTime.Now.ToString("yyyyMMdd") + "%"), DataAccess.CreateParameter("OutMan", DbType.String, OutgoingForm.OutMan), } ); decimal NewId = decimal.Parse(dt.Rows[0]["NewOutId"].ToString()); NewId++; //賦予更新時間 string UpdateDate = DateTime.Now.ToString("yyyyMMdd"); string UpdateTime = DateTime.Now.ToString("HHmmss"); string CheckUpdateDateTime = DateTime.Now.AddMinutes(-10).ToString("yyyyMMddHHmm"); for (int i = 0; i < OutgoingList.Count(); i++) { if (OutgoingList[i].Equipment == null || OutgoingList[i].Equipment == "") { OutgoingList[i].Equipment = ""; } DbAccess.ExecuteNonQuery("INSERT INTO Outgoing (OutId,OutDate,OutTime,RecordMan,OutMan,Location,CustomerName,Status,UpdateDate,UpdateTime,Company,OutDescription,GoOutTime,Equipment,CheckUpdateDateTime) VALUES (@OutId,@OutDate,@OutTime,@RecordMan,@OutMan,@Location,@CustomerName,@Status,@UpdateDate,@UpdateTime,@Company,@OutDescription,@GoOutTime,@Equipment,@CheckUpdateDateTime) ", objTrans, new DbParameter[] { DataAccess.CreateParameter("OutId", DbType.String, NewId.ToString()), DataAccess.CreateParameter("OutDate", DbType.String, OutgoingForm.SDate.ToString()), DataAccess.CreateParameter("OutTime", DbType.String, OutgoingList[i].OutTime.ToString()), //更改外出時間 DataAccess.CreateParameter("RecordMan", DbType.String, OutgoingForm.RecordMan.ToString()), DataAccess.CreateParameter("OutMan", DbType.String, OutgoingForm.OutMan.ToString()), DataAccess.CreateParameter("Location", DbType.String, OutgoingList[i].Location.ToString()), DataAccess.CreateParameter("CustomerName", DbType.String, OutgoingList[i].CustomerName.ToString()), DataAccess.CreateParameter("Status", DbType.String, OutgoingStatus.ToString()),//A或AM DataAccess.CreateParameter("UpdateDate", DbType.String, UpdateDate), DataAccess.CreateParameter("UpdateTime", DbType.String, UpdateTime), DataAccess.CreateParameter("Company", DbType.String, OutgoingForm.OutManCompany.ToString()), DataAccess.CreateParameter("OutDescription", DbType.String, OutgoingForm.OutDescription.ToString()), DataAccess.CreateParameter("GoOutTime", DbType.String, OutgoingList[i].GoOutTime.ToString()), DataAccess.CreateParameter("Equipment", DbType.String, OutgoingList[i].Equipment.ToString()), DataAccess.CreateParameter("CheckUpdateDateTime", DbType.String, CheckUpdateDateTime), }); NewId++; } objTrans.Commit(); return(true); } catch { objTrans.Rollback(); return(false); } finally { if (objTrans != null) { objTrans.Dispose(); } } }