public void ReceiveData() { _isReceiving = true; try { IPHostEntry host = Dns.GetHostEntry(Dns.GetHostName()); IPAddress[] addressList = host.AddressList; IPEndPoint hostEndPoint = new IPEndPoint(IPAddress.Any, _localPort); Socket clientSocket = new Socket(hostEndPoint.AddressFamily, SocketType.Dgram, ProtocolType.Udp); IPEndPoint sender = new IPEndPoint(IPAddress.Any, 0); EndPoint senderRemote = (EndPoint)sender; clientSocket.Bind(hostEndPoint); while (_isReceiving) { Byte[] msg = new byte[256]; clientSocket.ReceiveFrom(msg, ref senderRemote); string strRec = Encoding.ASCII.GetString(msg); if (DataReceived != null) { DataReceived(strRec); } } clientSocket.Close(); } catch (Exception ex) { LogTool.Error(ex.Message); } }
/// <summary> /// run sql in object by get /// </summary> /// <param name="sqlFileName">sql file name</param> /// <param name="sqlId">sql id</param> /// <param name="pms">query parameters</param> /// <returns>object</returns> public object GetObj(string sqlFileName, string sqlId, Dictionary <string, object> pms) { try { using (HttpClient client = new HttpClient()) { //clear http request header client.DefaultRequestHeaders.Clear(); //add http request header media type client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); //add http request text type client.DefaultRequestHeaders.AcceptCharset.Add(new StringWithQualityHeaderValue("utf-8")); string tmp = JsonConvert.SerializeObject(pms); //create http request url string url = string.Format("http://{0}:{1}/api/ado/getobj/{2}/{3}?pmsStr={4}", WebApiHost, WebApiPort, sqlFileName, sqlId, tmp);//api/{sqlFileName}/{sqlId}/obj/{pmsStr} //send request HttpResponseMessage response = client.GetAsync(url).Result; //get response int statusCode = (int)response.StatusCode; //result analysis if (response.IsSuccessStatusCode) { return(response.Content.ReadAsAsync <object>().Result); } return(null); } } catch (Exception ex) { LogTool.Error(ex); return(null); } }
/// <summary> /// get cookie /// </summary> /// <typeparam name="T">value type</typeparam> /// <param name="key">cookie key</param> /// <returns>cookie value</returns> public static T GetCookie <T>(string key) { if (System.Web.HttpContext.Current.Request.Cookies.AllKeys.Contains(key)) { string val = System.Web.HttpContext.Current.Request.Cookies[key].Value; if (string.IsNullOrWhiteSpace(val)) { return(default(T)); } else { try { val = EncryptTool.Base64Decode(val); return(JsonConvert.DeserializeObject <T>(val)); } catch (Exception ex) { LogTool.Error(ex); return(default(T)); } } } else { System.Web.HttpContext.Current.Response.Redirect("/"); System.Web.HttpContext.Current.Response.End(); return(default(T)); } }
/// <summary> /// delete records /// </summary> /// <typeparam name="T">model type</typeparam> /// <param name="pmsList">query parameter list</param> /// <returns>delete result</returns> public bool Delete <T>(List <Dictionary <string, object> > pmsList) where T : class { try { using (HttpClient client = new HttpClient()) { //clear http request header client.DefaultRequestHeaders.Clear(); //add http request header media type client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); //add http request text type client.DefaultRequestHeaders.AcceptCharset.Add(new StringWithQualityHeaderValue("utf-8")); //create http request url string url = string.Format("http://{0}:{1}/api/{2}", WebApiHost, WebApiPort, typeof(T).Name.ToLower());//api/{controller} //create content ObjectContent <List <Dictionary <string, object> > > content = new ObjectContent <List <Dictionary <string, object> > >(pmsList, new JsonMediaTypeFormatter()); //send request HttpResponseMessage response = client.SendAsync(new HttpRequestMessage(HttpMethod.Delete, url) { Content = content }, CancellationToken.None).Result; //get response int statusCode = (int)response.StatusCode; return(response.IsSuccessStatusCode); } } catch (Exception ex) { LogTool.Error(ex); return(false); } }
/// <summary> /// update model List /// </summary> /// <typeparam name="T">model type</typeparam> /// <param name="modelList">model list data</param> /// <returns>update result</returns> public bool Put <T>(List <T> modelList) where T : class { try { using (HttpClient client = new HttpClient()) { //clear http request header client.DefaultRequestHeaders.Clear(); //add http request header media type client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); //add http request text type client.DefaultRequestHeaders.AcceptCharset.Add(new StringWithQualityHeaderValue("utf-8")); //create http request url string url = string.Format("http://{0}:{1}/api/{2}", WebApiHost, WebApiPort, typeof(T).Name.ToLower());//api/{controller} //send request HttpResponseMessage response = client.PutAsJsonAsync(url, modelList).Result; //get response int statusCode = (int)response.StatusCode; return(response.IsSuccessStatusCode); } } catch (Exception ex) { LogTool.Error(ex); return(false); } }
/// <summary> /// post worker selected order data /// </summary> /// <param name="worker_no">worker_no</param> /// <param name="wkaOrders">order which match to the order</param> /// <returns>worker selected order data</returns> public bool PostWorkerSelectedOrderData(string worker_no, List <Dictionary <string, string> > wkaOrders) { IMainDal dal = new MainDal(); if (string.IsNullOrWhiteSpace(worker_no)) { return(false); } if (wkaOrders == null || wkaOrders.Count == 0) { return(false); } try { wkaOrders.ForEach(a => { Dictionary <string, object> pms = new Dictionary <string, object>(); pms.Add("wka_no", a.Keys.Contains("wka_no") ? a["wka_no"] : string.Empty); pms.Add("mo_no", a.Keys.Contains("mo_no") ? a["mo_no"] : string.Empty); pms.Add("worker_no", worker_no); dal.CUDByPms("Operator", "PostWorkerSelectedOrderData", pms); }); return(true); } catch (Exception ex) { LogTool.Error(ex); return(false); } }
/// <summary> /// execute scalar query sql /// </summary> /// <param name="sqlFileName">sql file name</param> /// <param name="sqlId">sql id</param> /// <param name="pmsDict">parameters</param> /// <returns>result string</returns> public object QueryObj(string sqlFileName, string sqlId, Dictionary <string, object> pmsDict) { string sql = FetchSqlById(sqlFileName, sqlId); if (string.IsNullOrWhiteSpace(sql)) { return(null); } IDbConnection con = DbConnectionFactory.Con; if (con == null) { return(null); } try { object obj = SqlMapper.ExecuteScalar(con, sql, pmsDict, null, null, null); return(obj); } catch (Exception ex) { LogTool.Error(ex); return(null); } }
/// <summary> /// read data /// </summary> /// <typeparam name="T">entity type</typeparam> /// <param name="sqlFileName">sql file name</param> /// <param name="sqlId">sql id</param> /// <param name="pmsDict">parameters</param> /// <returns>data</returns> public T ReadSingle <T>(string sqlFileName, string sqlId, Dictionary <string, object> pmsDict) where T : class { string sql = FetchSqlById(sqlFileName, sqlId); if (string.IsNullOrWhiteSpace(sql)) { return(null); } IDbConnection con = DbConnectionFactory.Con; if (con == null) { return(null); } try { IEnumerable <T> tmp = SqlMapper.Query <T>(con, sql, pmsDict).ToList(); if (tmp == null || tmp.Count() != 1) { return(null); } return(tmp.ToList()[0]); } catch (Exception ex) { LogTool.Error(ex); return(null); } }
/// <summary> /// read data /// </summary> /// <typeparam name="T">entity type</typeparam> /// <param name="sqlId">sql id</param> /// <param name="entity">entity to complete</param> /// <returns>data</returns> public List <T> Read <T>(string sqlId, T entity) where T : class { string sql = FetchSqlById <T>(sqlId); if (string.IsNullOrWhiteSpace(sql)) { return(null); } IDbConnection con = DbConnectionFactory.Con; if (con == null) { return(null); } try { IEnumerable <T> tmp = SqlMapper.Query <T>(con, sql, entity); if (tmp == null || tmp.Count <T>() <= 0) { return(null); } return(tmp.ToList()); } catch (Exception ex) { LogTool.Error(ex); return(null); } }
/// <summary> /// read data /// </summary> /// <param name="sqlFileName">sql file name</param> /// <param name="sqlId">sql id</param> /// <param name="pmsDict">parameters</param> /// <returns>data</returns> public Dictionary <string, object> ReadSingle(string sqlFileName, string sqlId, Dictionary <string, object> pmsDict) { string sql = FetchSqlById(sqlFileName, sqlId); if (string.IsNullOrWhiteSpace(sql)) { return(null); } IDbConnection con = DbConnectionFactory.Con; if (con == null) { return(null); } try { IEnumerable obj = SqlMapper.Query <dynamic>(con, sql, pmsDict).ToList(); string tmpObj = JsonConvert.SerializeObject(obj); List <Dictionary <string, object> > res = JsonConvert.DeserializeObject <List <Dictionary <string, object> > >(tmpObj); if (res == null || res.Count != 1) { return(null); } return(res[0]); } catch (Exception ex) { LogTool.Error(ex); return(null); } }
/// <summary> /// run sql to get int by post /// </summary> /// <param name="sqlFileName">sql file name</param> /// <param name="sqlId">sql id</param> /// <param name="pmsList">qurey parameter list</param> /// <returns>int result</returns> public int Post(string sqlFileName, string sqlId, List <Dictionary <string, object> > pmsList) { try { using (HttpClient client = new HttpClient()) { //clear http request header client.DefaultRequestHeaders.Clear(); //add http request header media type client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); //add http request text type client.DefaultRequestHeaders.AcceptCharset.Add(new StringWithQualityHeaderValue("utf-8")); //create http request url string url = string.Format("http://{0}:{1}/api/ado/post/{2}/{3}", WebApiHost, WebApiPort, sqlFileName, sqlId);//api/{sqlFileName}/{sqlId} //send request HttpResponseMessage response = client.PostAsJsonAsync(url, pmsList).Result; //get response int statusCode = (int)response.StatusCode; //result analysis if (response.IsSuccessStatusCode) { return(response.Content.ReadAsAsync <int>().Result); } return(0); } } catch (Exception ex) { LogTool.Error(ex); return(0); } }
/// <summary> /// remove the old data from mes /// </summary> /// <param name="dataToRemove">data need to remove</param> /// <returns>remove result</returns> private bool RemoveDataFromMes(List <Mes_ua_submit> dataToRemove) { try { if (dataToRemove == null || dataToRemove.Count <= 0) { return(false); } List <Dictionary <string, object> > pmsList = new List <Dictionary <string, object> >(); dataToRemove.ForEach(a => { Dictionary <string, object> tmp = new Dictionary <string, object>(); tmp.Add("Id", a.id); pmsList.Add(tmp); }); IApiUtility utility = new ApiUtility(); return(utility.Delete <Mes_ua_submit>(pmsList)); //utility.Post("Ado","RemoveOldDataFromMesUaSubmit", pmsList); //return true; } catch (Exception ex) { LogTool.Error(ex); return(false); } }
/// <summary> /// add data into mes /// </summary> /// <param name="dataToAdd">data need to add</param> /// <returns>add result</returns> private bool AddDataIntoMes(List <Mes_ua_submit> dataToAdd) { try { if (dataToAdd == null || dataToAdd.Count <= 0) { return(false); } List <Mes_ua_submit_auto> pmsList = new List <Mes_ua_submit_auto>(); dataToAdd.ForEach(a => { pmsList.Add(new Mes_ua_submit_auto() { fingerprint = a.fingerprint, id = a.id, m_id = a.m_id, p_id = a.p_id, prod_id = a.prod_id, prod_weight = a.prod_weight, sub_time = a.sub_time, ws_no = a.ws_no }); }); IApiUtility utility = new ApiUtility(); utility.Post(dataToAdd); utility.Post(pmsList); return(true); } catch (Exception ex) { LogTool.Error(ex); return(false); } }
/// <summary> /// is web api exist /// </summary> /// <returns>web api exist result</returns> public bool GetExist() { try { using (HttpClient client = new HttpClient()) { //clear http request header client.DefaultRequestHeaders.Clear(); //add http request header media type client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); //add http request text type client.DefaultRequestHeaders.AcceptCharset.Add(new StringWithQualityHeaderValue("utf-8")); //create http request url string url = string.Format("http://{0}:{1}/api/basic", WebApiHost, WebApiPort); //send request HttpResponseMessage response = client.GetAsync(url).Result; //get response int statusCode = (int)response.StatusCode; //result analysis if (response.IsSuccessStatusCode) { return(response.Content.ReadAsAsync <bool>().Result); } else { return(false); } } } catch (Exception ex) { LogTool.Error(ex); return(false); } }
/// <summary> /// page /// </summary> /// <typeparam name="T">model type</typeparam> /// <param name="pageIndex">page index</param> /// <param name="pageSize">page size</param> /// <returns>page result</returns> public Tuple <int, List <T> > Page <T>(int pageIndex, int pageSize) where T : class { try { using (HttpClient client = new HttpClient()) { //clear http request header client.DefaultRequestHeaders.Clear(); //add http request header media type client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); //add http request text type client.DefaultRequestHeaders.AcceptCharset.Add(new StringWithQualityHeaderValue("utf-8")); //create http request url string url = string.Format("http://{0}:{1}/api/{2}?pageindex={3}&pagesize={4}", WebApiHost, WebApiPort, typeof(T).Name.ToLower(), pageIndex.ToString(), pageSize.ToString()); //send request HttpResponseMessage response = client.GetAsync(url).Result; //get response int statusCode = (int)response.StatusCode; //result analysis if (response.IsSuccessStatusCode) { return(response.Content.ReadAsAsync <Tuple <int, List <T> > >().Result); } else { return(null); } } } catch (Exception ex) { LogTool.Error(ex); return(null); } }
/// <summary> /// read model list /// </summary> /// <typeparam name="T">model type</typeparam> /// <param name="pms">query parameter</param> /// <returns>model list</returns> public List <T> GetAny <T>(Dictionary <string, object> pms = null) where T : class { try { using (HttpClient client = new HttpClient()) { //clear http request header client.DefaultRequestHeaders.Clear(); //add http request header media type client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); //add http request text type client.DefaultRequestHeaders.AcceptCharset.Add(new StringWithQualityHeaderValue("utf-8")); //create http request url string url = string.Empty; if (pms == null || pms.Count <= 0) { url = string.Format("http://{0}:{1}/api/{2}", WebApiHost, WebApiPort, typeof(T).Name.ToLower());//api/{controller} } else { string tmp = JsonConvert.SerializeObject(pms); url = string.Format("http://{0}:{1}/api/{2}/getlist?pmsStr={3}", WebApiHost, WebApiPort, typeof(T).Name.ToLower(), tmp);//api/{controller}/getlist/{pmsStr} } //send request HttpResponseMessage response = client.GetAsync(url).Result; //get response int statusCode = (int)response.StatusCode; //result analysis if (response.IsSuccessStatusCode) { return(response.Content.ReadAsAsync <List <T> >().Result); } else { return(null); } } } catch (Exception ex) { LogTool.Error(ex); return(null); } }
/// <summary> /// sync data /// </summary> /// <returns>sync result</returns> public bool SyncData() { try { List <Mes_ua_submit> listFromScada = GetSubmitSourceDataFromScada(); List <Mes_ua_submit> listFromMes = GetSubmitSourceDataFromMes(); List <Mes_ua_submit> listSame = ModelTool.GetJoin(listFromScada, listFromMes); List <Mes_ua_submit> listAdd = ModelTool.GetMinus(listFromScada, listSame); List <Mes_ua_submit> listDelete = ModelTool.GetMinus(listFromMes, listSame); AddDataIntoMes(listAdd); RemoveDataFromMes(listDelete); return(true); } catch (Exception ex) { LogTool.Error(ex); return(false); } }
/// <summary> /// create,update,delete records /// </summary> /// <param name="sqlFileName">sql file name</param> /// <param name="sqlId">sql id</param> /// <param name="pmsDictList">parameters list</param> /// <returns>create,update,delete quantity</returns> public int CUD(string sqlFileName, string sqlId, List <Dictionary <string, object> > pmsDictList = null) { string sql = FetchSqlById(sqlFileName, sqlId); if (string.IsNullOrWhiteSpace(sql)) { return(-10); } IDbConnection con = DbConnectionFactory.Con; if (con == null) { return(-11); } try { return(SqlMapper.Execute(con, sql, pmsDictList)); } catch (Exception ex) { LogTool.Error(ex); return(-12); } }
/// <summary> /// create,update,delete records /// </summary> /// <typeparam name="T">entity type</typeparam> /// <param name="sqlId">sql id</param> /// <param name="entity">entity data</param> /// /// <returns>create,update,delete quantity</returns> public int CUD <T>(string sqlId, T entity) where T : class { string sql = FetchSqlById <T>(sqlId); if (string.IsNullOrWhiteSpace(sql)) { return(-10); } IDbConnection con = DbConnectionFactory.Con; if (con == null) { return(-11); } try { return(SqlMapper.Execute(con, sql, entity)); } catch (Exception ex) { LogTool.Error(ex); return(-12); } }
/// <summary> /// 取得測試結果 /// ex.http://localhost:4803/data/getTestResult?LineID=testWeb /// </summary> /// <param name="LineID"></param> /// <returns></returns> public JsonResult getTestResult(string LineID = "") { RESPONSE_MSG rm = new RESPONSE_MSG(); string actionName = "getTestResult"; LogTool.Info(LineID, actionName, this.csName); //紀錄log EGG_TEST_INFO test_info = new EGG_TEST_INFO(); DBLink link = new DBLink(); try { #region 取得測試資料 string sql = test_info.getSelectList_KEY_USER_ID(); DynamicParameters dp = new DynamicParameters(); dp.Add("USER_ID", LineID); List <EGG_TEST_INFO> test_List = new List <EGG_TEST_INFO>(); #endregion test_List = link.DBA.getSqlDataTable <EGG_TEST_INFO>(sql, dp); if (test_List.Count > 0) { if (test_List.Exists(x => x.DATASTATUS == "0")) { test_info = test_List.Find(x => x.DATASTATUS == "0"); if (test_info.tempList.Count == 4) { #region 測試完畢,計算成績 rm.message = "您這一次測試結果如下所示"; test_info.DATASTATUS = "1"; this.getEggScore(ref test_info); test_info.MODIFY_DATE = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); test_info.MODIFY_ID = LineID; test_info.MODIFY_NAME = LineID; link.DBA.DBExecute <EGG_TEST_INFO>(test_info.getUpdateSQL_KEY_USER_ID_CREATE_DATE(), new List <EGG_TEST_INFO>() { test_info }); if (link.DBA.hasLastError) { rm.status = RESPONSE_STATUS.ERROR; rm.message = "SQL 發生錯誤,請洽資訊人員!"; LogTool.Error(link.DBA.lastError, actionName, this.csName); } else { rm.status = RESPONSE_STATUS.SUCCESS; rm.attachment = test_info; } #endregion } else { rm.status = RESPONSE_STATUS.ERROR; rm.message = "上有測驗尚未完成,請選擇功能清單點選測試區,繼續完成!"; } rm.attachment = test_info; } else { rm.message = "您最後一次測試結果如下所示"; test_info = test_List.FindAll(x => x.DATASTATUS == "1").OrderByDescending(x => DateTime.Parse(x.CREATE_DATE)).First(); rm.attachment = test_info; } } else { rm.message = "查無測試結果資料,請選擇功能清單點選測試區!"; } } catch (Exception ex) { LogTool.Fatal(ex, actionName, this.csName); rm.status = RESPONSE_STATUS.ERROR; rm.message = "程式發生錯誤,請洽資訊人員!"; } return(Json(rm, JsonRequestBehavior.AllowGet)); }
public FreqDataCollectViewModel() { #region try { #endregion WinCloseCommand = new RelayCommand(() => { //if (_TestStatus != FreqTestStatus.pause && _TestStatus != FreqTestStatus.testing) // Messenger.Default.Send<GenericMessage<string>>(new GenericMessage<string>(this, "showmainwindow")); }); #region 打开或关闭 接收机 OpenReciverCommand = new RelayCommand(() => { if (pingEquipment(RoadTestInfor.ReciverIp)) { if (!AgilentDll.Sensor.Connect(RoadTestInfor.ReciverIp)) { Sensor.IsUseSensor = false; Messenger.Default.Send <GenericMessage <string> >(new GenericMessage <string>(this, "ErrorConnectReciver")); return; } else { Sensor.IsUseSensor = true; ImgConectEable = System.Windows.Visibility.Visible; ImgDisConectEable = System.Windows.Visibility.Collapsed; TextColor = Brushes.Green; TextStatus = "连接状态:设备准备就绪Sensor"; } } }, () => { return(!Sensor.IsUseSensor && _TestStatus != FreqTestStatus.testing && _TestStatus != FreqTestStatus.pause); }); CloseReciverCommand = new RelayCommand(() => { ImgConectEable = System.Windows.Visibility.Collapsed; ImgDisConectEable = System.Windows.Visibility.Visible; TextColor = Brushes.Red; TextStatus = "连接状态:设备未连接"; Sensor.Close(); Sensor.IsUseSensor = false; }, () => { return(Sensor.IsUseSensor && _TestStatus != FreqTestStatus.testing && _TestStatus != FreqTestStatus.pause);; }); #endregion #region 频谱测量命令 StopMeasurCommand = new RelayCommand(() => { BtnPauseText = "暂停"; Sensor.SendStopWbqexCmd(); _TestStatus = FreqTestStatus.stop; _CollectionDataSave.closeSQLiteConnection(); _CollectionDataSave.Flag = 0; UpdateTextBlockEnable(); }, () => { return(_TestStatus == FreqTestStatus.pause || _TestStatus == FreqTestStatus.testing); }); StopRealTimeMonitorCommand = new RelayCommand(() => { BtnPauseText = "暂停"; Sensor.SendStopWbqexCmd(); _dTimer.Stop(); _dTimer = null; _TestStatus = FreqTestStatus.stop; UpdateTextBlockEnable(); dTimer.Stop(); }, () => { return(_TestStatus == FreqTestStatus.pause || _TestStatus == FreqTestStatus.testing); }); PauseMeasurCommand = new RelayCommand(ExecutePauseMeasurCommand, CanExecutePauseMeasurCommand); StartMeasurCommand = new RelayCommand(ExecuteStartMeasurCommand, CanExecuteStartMeasurCommand); StartRealTimeMonitorCommand = new RelayCommand(ExecuteStartRealTimeMonitorCommand, CanExecuteStartRealTimeMonitorCommand); #endregion WinLoadedCommand = new RelayCommand( () => { } ); _LineChartViewModel = new ChartViewModel(this); _RtFreqDataModel = new RtFreqDataViewModel(); _RtGpsDataModel = new RtGpsDataViewModel(); _RtCdma2G_DataModel = new RtCdma2G_DataViewModel(); _CarRunInfor = new CarRunInforViewModel(); _RoadTestInfor = new RoadTestViewModel(); _RoadTestInfor.AnalysisList = new System.Collections.ObjectModel.ObservableCollection <Data.Collection.AnalysisResult>(); _CollectionDataSave = new Collection.CollectionDataSave(); _CollectionDataSave.openSQLiteConnection(); _CollectionDataSave.createTable(); //ThreadDbOperator = new Thread(new ThreadStart(() => //{ //})) { IsBackground = true }; //ThreadDbOperator.Start(); } catch (Exception ex) { LogTool.Debug(ex.StackTrace); LogTool.Error("", ex); } }
private void updateRowData(ref EGG_TEST_INFO test_info, ref bool hasUpdate, ref RESPONSE_MSG rm, ref DBLink link, string LineID, string msg) { #region 更新欄位 LogTool.Info(Newtonsoft.Json.JsonConvert.SerializeObject(this.AnserList), "updateRowData", "updateRowData"); //in Key List if (this.AnserList.Contains(msg)) { if (msg == this.AnserList[1]) { test_info.WASH_EGG = "我買的是洗選蛋"; //"我買的是洗選蛋" } if (msg == this.AnserList[2]) { test_info.WASH_EGG = "我買的不是洗選蛋"; //" "我買的不是洗選蛋" } if (msg == this.AnserList[3]) { test_info.STORE = "我把雞蛋放在室溫"; // "我把雞蛋放在室溫" } if (msg == this.AnserList[4]) { test_info.STORE = "我把雞蛋放在冰箱"; // "我把雞蛋放在冰箱" } if (msg == this.AnserList[5]) { test_info.BUY_PLACE = "我在北部"; // "我在北部" } if (msg == this.AnserList[6]) { test_info.BUY_PLACE = "我在中部"; // "我在中部" } if (msg == this.AnserList[7]) { test_info.BUY_PLACE = "我在南部"; // "我在南部" } if (this.AnserList.Skip(5).Take(3).Contains(msg)) { test_info.TEMP = this.getNowTemp(test_info.BUY_PLACE); } hasUpdate = true; } //是否是數值 if (NumberHelper.isInt(msg)) { hasUpdate = true; int _days = int.Parse(msg); if (Math.Abs(_days) >= 0) { test_info.DAYS = msg; rm.attachment = test_info.tempList; } else { rm.status = RESPONSE_STATUS.WARN; rm.message = "請輸入1-30任何一個數值!"; LogTool.Error(Newtonsoft.Json.JsonConvert.SerializeObject(test_info), "updateRowData", this.csName); } } #endregion if (rm.status == RESPONSE_STATUS.SUCCESS) { if (hasUpdate) { test_info.MODIFY_DATE = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); test_info.MODIFY_ID = LineID; test_info.MODIFY_NAME = LineID; link.DBA.DBExecute <EGG_TEST_INFO>(test_info.getUpdateSQL_KEY_USER_ID_CREATE_DATE(), new List <EGG_TEST_INFO>() { test_info }); } if (link.DBA.hasLastError) { rm.status = RESPONSE_STATUS.ERROR; rm.message = "SQL 發生錯誤,請洽資訊人員!"; LogTool.Error(link.DBA.lastError, "updateRowData", this.csName); } else { rm.status = RESPONSE_STATUS.SUCCESS; rm.attachment = test_info.tempList; } } }