Merge branch 'master' of http://115.159.85.185:8098/r/HuaYiZhongHeng/BaiBuLiKu
| | |
| | | try |
| | | { |
| | | // æ´æ°è´§ä½ååºåä¿¡æ¯ |
| | | (DtStockInfo updateStock, DtLocationInfo locationInf) = UpdateStockLocation(stock, task.NextAddress); |
| | | (DtStockInfo updateStock, DtLocationInfo locationInForm, DtLocationInfo locationInfoTo) = UpdateStockLocation(stock, task); |
| | | var taskHty = CreateHistoricalTask(task); |
| | | LogFactory.GetLog("ä»»å¡å®æ").InfoFormat(true, "ç§»åºä»»å¡å®æ", $"è´§ä½å°åï¼{task.TargetAddress},ä¿®æ¹ååºåæ°æ®ï¼{JsonConvert.SerializeObject(updateStock)}ï¼åå
è´§ä½æ°æ®ï¼{locationInf}"); |
| | | LogFactory.GetLog("ä»»å¡å®æ").InfoFormat(true, "ç§»åºä»»å¡å®æ", $"è´§ä½å°åï¼{task.TargetAddress},ä¿®æ¹ååºåæ°æ®ï¼{JsonConvert.SerializeObject(updateStock)}ï¼åå
è´§ä½æ°æ®ï¼{locationInForm}"); |
| | | |
| | | // æ§è¡æ°æ®åºäºå¡ |
| | | bool isResult = await ExecuteTransaction(updateStock, taskHty, locationInf, task.TaskId); |
| | | bool isResult = await ExecuteTransaction(updateStock, taskHty, locationInForm, locationInfoTo, task.TaskId); |
| | | if (isResult) |
| | | content.OK("ç§»åºä»»å¡å®ææå"); |
| | | else |
| | |
| | | LogFactory.GetLog("ä»»å¡å®æ").InfoFormat(true, "åºåºä»»å¡", ""); |
| | | return await CompleteStackTaskAsync(task, stock); |
| | | |
| | | case (int)TaskRelocationTypeEnum.Relocation: |
| | | return await CompleteTransferTaskAsync(task, stock); |
| | | default: |
| | | return content.Error("ä»»å¡ç±»åä¸åå¨"); |
| | | } |
| | |
| | | /// <param name="stock">åºå对象</param> |
| | | /// <param name="toLocation">ç®æ ä½ç½®</param> |
| | | // æ´æ°åºååä½ç½®ä¿¡æ¯ |
| | | private (DtStockInfo, DtLocationInfo) UpdateStockLocation(DtStockInfo stock, string toLocation) |
| | | private (DtStockInfo, DtLocationInfo, DtLocationInfo) UpdateStockLocation(DtStockInfo stock, Dt_Task task) |
| | | { |
| | | // è·ååºåä¿¡æ¯ |
| | | var locationInfo = _locationRepository.QueryFirst(x => x.LocationCode == stock.LocationCode); |
| | | // å°åºåç¶æè®¾ç½®ä¸ºå¨åº |
| | | locationInfo.LocationStatus = LocationEnum.InStock.ObjToInt(); |
| | | //ä¿®æ¹æ¥æºåºä½å ç®æ åºä½ç¶æ |
| | | var fromLocation = _locationRepository.QueryFirst(x => x.LocationCode == task.SourceAddress && x.RoadwayNo == task.Roadway); |
| | | fromLocation.LocationStatus = LocationEnum.Free.ObjToInt(); |
| | | var toLocation = _locationRepository.QueryFirst(x => x.LocationCode == task.SourceAddress && x.RoadwayNo == task.Roadway); |
| | | toLocation.LocationStatus = LocationEnum.InStock.ObjToInt(); |
| | | |
| | | // å°åºåä½ç½®è®¾ç½®ä¸ºç®æ ä½ç½® |
| | | stock.LocationCode = toLocation; |
| | | // å°åºåç¶æè®¾ç½®ä¸ºå¨åº |
| | | stock.LocationInfo.LocationStatus = LocationEnum.InStock.ObjToInt(); |
| | | stock.LocationCode = task.TargetAddress; |
| | | |
| | | // è¿åæ´æ°åçåºååä½ç½®ä¿¡æ¯ |
| | | return (stock, locationInfo); |
| | | return (stock, fromLocation, toLocation); |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | |
| | | |
| | | #region MyRegion |
| | | //private async Task<bool> ExecuteTransaction(DtStockInfo stock, Dt_Task_Hty taskHty, DtLocationInfo locationInfo, int taskId) |
| | | //{ |
| | | // _unitOfWorkManage.BeginTran(); |
| | | // try |
| | | // { |
| | | // var isUpdateStock = true; |
| | | private async Task<bool> ExecuteTransaction(DtStockInfo stock, Dt_Task_Hty taskHty, DtLocationInfo fromLocation,DtLocationInfo toLocation, int taskId) |
| | | { |
| | | _unitOfWorkManage.BeginTran(); |
| | | try |
| | | { |
| | | var isUpdateStock = true; |
| | | |
| | | // // æ·»å åå²ä»»å¡ |
| | | // var isTaskHtyAdd = await _task_HtyRepository.AddDataAsync(taskHty) > 0; |
| | | // æ·»å åå²ä»»å¡ |
| | | var isTaskHtyAdd = await _task_HtyRepository.AddDataAsync(taskHty) > 0; |
| | | |
| | | // // ä¿®æ¹ç§»åºåè´§ä½ç¶æ |
| | | // var isUpdateLoc = _locationRepository.UpdateData(locationInfo); |
| | | // ä¿®æ¹ç§»åºåè´§ä½ç¶æ |
| | | var isUpdateLocF = _locationRepository.UpdateData(fromLocation); |
| | | var isUpdateLocT = _locationRepository.UpdateData(toLocation); |
| | | |
| | | // // å é¤ä»»å¡æ°æ® |
| | | // var isTaskDelete = await Delete(taskId); |
| | | // å é¤ä»»å¡æ°æ® |
| | | var isTaskDelete = await Delete(taskId); |
| | | |
| | | // // æäº¤æåæ»äºå¡ |
| | | // if (isUpdateStock && isTaskHtyAdd && isTaskDelete && isUpdateLoc) |
| | | // { |
| | | // LogFactory.GetLog("ä»»å¡å®æ").InfoFormat(true, "ä»»å¡å®æ", $"äºå¡å¤ç宿,æäº¤äºå¡ãæ·»å åå²ä»»å¡ï¼{isTaskHtyAdd},å é¤ä»»å¡æ°æ®ï¼{isTaskDelete},æ´æ°ææ·»å åºåï¼{isUpdateStock},ä¿®æ¹ç§»åºåè´§ä½ç¶æï¼{isUpdateLoc}"); |
| | | // _unitOfWorkManage.CommitTran(); |
| | | // return true; |
| | | // } |
| | | // else |
| | | // { |
| | | // LogFactory.GetLog("ä»»å¡å®æ").InfoFormat(true, "ä»»å¡å®æ", $"æ°æ®å¤ç失败,è¯·æ£æ¥æ°æ®æ¯å¦æ£ç¡®,æ°æ®åæ»ãæ·»å åå²ä»»å¡ï¼{isTaskHtyAdd},å é¤ä»»å¡æ°æ®ï¼{isTaskDelete},æ´æ°åºåï¼{isUpdateStock},ä¿®æ¹ç§»åºåè´§ä½ç¶æï¼{isUpdateLoc}"); |
| | | // _unitOfWorkManage.RollbackTran(); |
| | | // return false; |
| | | // } |
| | | // } |
| | | // catch (Exception err) |
| | | // { |
| | | // LogFactory.GetLog("ä»»å¡å®æ").InfoFormat(true, $"ä»»å¡å®æ,ç³»ç»å¼å¸¸ï¼å¼å¸¸ä¿¡æ¯ï¼{err.Message}", "æ åæ°"); |
| | | // _unitOfWorkManage.RollbackTran(); |
| | | // throw; // æåºå¼å¸¸ä»¥ä¾¿å¤é¨æè· |
| | | // } |
| | | //} |
| | | // æäº¤æåæ»äºå¡ |
| | | if (isUpdateStock && isTaskHtyAdd && isTaskDelete && isUpdateLocF && isUpdateLocT) |
| | | { |
| | | LogFactory.GetLog("ä»»å¡å®æ").InfoFormat(true, "ä»»å¡å®æ", $"äºå¡å¤ç宿,æäº¤äºå¡ãæ·»å åå²ä»»å¡ï¼{isTaskHtyAdd},å é¤ä»»å¡æ°æ®ï¼{isTaskDelete},æ´æ°ææ·»å åºåï¼{isUpdateStock},ä¿®æ¹ç§»åºåè´§ä½ç¶æï¼{isUpdateLocF}"); |
| | | _unitOfWorkManage.CommitTran(); |
| | | return true; |
| | | } |
| | | else |
| | | { |
| | | LogFactory.GetLog("ä»»å¡å®æ").InfoFormat(true, "ä»»å¡å®æ", $"æ°æ®å¤ç失败,è¯·æ£æ¥æ°æ®æ¯å¦æ£ç¡®,æ°æ®åæ»ãæ·»å åå²ä»»å¡ï¼{isTaskHtyAdd},å é¤ä»»å¡æ°æ®ï¼{isTaskDelete},æ´æ°åºåï¼{isUpdateStock},ä¿®æ¹ç§»åºåè´§ä½ç¶æï¼{isUpdateLocF}"); |
| | | _unitOfWorkManage.RollbackTran(); |
| | | return false; |
| | | } |
| | | } |
| | | catch (Exception err) |
| | | { |
| | | LogFactory.GetLog("ä»»å¡å®æ").InfoFormat(true, $"ä»»å¡å®æ,ç³»ç»å¼å¸¸ï¼å¼å¸¸ä¿¡æ¯ï¼{err.Message}", "æ åæ°"); |
| | | _unitOfWorkManage.RollbackTran(); |
| | | throw new Exception(err.Message); // æåºå¼å¸¸ä»¥ä¾¿å¤é¨æè· |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region æ£æµé«æ¸©åºæ¯å¦æå¯åºåºåºå |