| | |
| | | using WIDESEAWCS_Core; |
| | | using WIDESEAWCS_Core.BaseRepository; |
| | | using WIDESEAWCS_Core.BaseServices; |
| | | using WIDESEAWCS_Core.Helper; |
| | | using WIDESEAWCS_Core.HttpContextUser; |
| | | using WIDESEAWCS_ITaskInfoRepository; |
| | | using WIDESEAWCS_ITaskInfoService; |
| | | using WIDESEAWCS_Model.Models; |
| | | |
| | | namespace WIDESEAWCS_TaskInfoService |
| | | { |
| | | public class Putake : ServiceBase<Dt_Putake, IPutakeRepository>, IPutakeServer |
| | | public class PutakeServer : ServiceBase<Dt_Putake, IPutakeRepository>, IPutakeServer |
| | | { |
| | | private IUnitOfWorkManage _uniUnitOfWorkManage; |
| | | private INjTaskRepository _iNjTaskRepository; |
| | | |
| | | |
| | | public Putake(IPutakeRepository BaseDal, IUnitOfWorkManage uniUnitOfWorkManage, INjTaskRepository iNjTaskRepository) : base(BaseDal) |
| | | public PutakeServer(IPutakeRepository BaseDal, IUnitOfWorkManage uniUnitOfWorkManage, INjTaskRepository iNjTaskRepository ) : base(BaseDal) |
| | | { |
| | | _uniUnitOfWorkManage = uniUnitOfWorkManage;//æ°æ®åºäºå¡ |
| | | _iNjTaskRepository= iNjTaskRepository; |
| | | |
| | | |
| | | } |
| | | public override PageGridData<Dt_Putake> GetPageData(PageDataOptions options) |
| | | { |
| | | OrderByParameters = new Dictionary<string, SqlSugar.OrderByType> |
| | | { |
| | | { nameof(Dt_Putake.Pustatus),SqlSugar.OrderByType.Asc }, |
| | | // { nameof(Dt_Putake.CreateDate),SqlSugar.OrderByType.Asc }//æç¶æåå建æ¶é´ååºæåº |
| | | }; |
| | | return base.GetPageData(options); |
| | | } |
| | | |
| | | private enum cond |
| | | { |
| | | å¾
é¢ç=1, |
| | | å¾
ä½ä¸=2, |
| | | å¾
å½ç=3, |
| | | å¾
è´¨æ£=4, |
| | | 已宿=5 |
| | | å¾
é¢ç=0, |
| | | å¾
ä½ä¸=1, |
| | | å¾
å½ç=2, |
| | | å¾
è´¨æ£=3, |
| | | 已宿=4 |
| | | } |
| | | |
| | | |
| | | //ä¿®æ¹ä¸åä»»å¡è¡¨çä»»å¡ç¶æ |
| | | public WebResponseContent ChangeStatus(int id) |
| | | public WebResponseContent ChangeStatus(string id,string gruops) |
| | | { |
| | | try |
| | | { |
| | | var putake = BaseDal.QueryData(i => i.ID == id).FirstOrDefault(); |
| | | var putakeList = BaseDal.QueryData(i => i.Grouptype == gruops && i.Pustatus != (int)cond.已宿).ToList(); |
| | | var putake = putakeList.Where(i => i.Njtakeid == id).FirstOrDefault(); |
| | | var nj = _iNjTaskRepository.QueryData(i => i.NJtaskID == id).FirstOrDefault(); |
| | | if (putake == null) |
| | | { |
| | | return new WebResponseContent { Status = false, Message = "æªæ¾å°è¯¥ä»»å¡" }; |
| | | } |
| | | |
| | | //putake.Pustatusæ¯å符串,éè¦å
è½¬æ¢æ cond æä¸¾ï¼ |
| | | if (!Enum.TryParse(putake.Pustatus, out cond currentStatus)) |
| | | //ææ°æ®åºä¸ç int å¼è½¬æ¢ä¸º `cond` æä¸¾ï¼ |
| | | if (!Enum.IsDefined(typeof(cond), putake.Pustatus)) |
| | | { |
| | | return new WebResponseContent { Status = false, Message = "å½åç¶æä¸åæ³ï¼æ æ³æ´æ°" }; |
| | | } |
| | | |
| | | cond currentStatus = (cond)putake.Pustatus; // int -> æä¸¾è½¬æ¢ |
| | | |
| | | switch (currentStatus) |
| | | { |
| | | case cond.å¾
é¢ç: |
| | | putake.Pustatus = cond.å¾
ä½ä¸.ToString(); |
| | | |
| | | //_iNjTaskRepository |
| | | |
| | | case cond.å¾
é¢ç: // |
| | | if(putakeList.Where(a=>a.Pustatus== (int)cond.å¾
ä½ä¸).Count() > 0) |
| | | { |
| | | return new WebResponseContent { Status = false, Message = "å½åæä½ä¸æªå®æï¼è¯·å
宿æ£å¨æ§è¡çä½ä¸" }; |
| | | } |
| | | putake.Pustatus = (int)cond.å¾
ä½ä¸; // æä¸¾è½¬ int |
| | | if (gruops=="æºæ¢°") |
| | | { |
| | | |
| | | } |
| | | if (gruops == "çµæ°") |
| | | { |
| | | |
| | | } |
| | | if (gruops == "å°æ²") |
| | | { |
| | | |
| | | } |
| | | break; |
| | | case cond.å¾
ä½ä¸: |
| | | putake.Pustatus = cond.å¾
å½ç.ToString(); |
| | | // _iNjTaskRepository.QueryData(x=>x.) |
| | | case cond.å¾
ä½ä¸://å¼å§ä½ä¸ï¼å¼å§æ¶é´ |
| | | putake.Pustatus = (int)cond.å¾
å½ç; |
| | | if (gruops == "æºæ¢°") |
| | | { |
| | | nj.startTime_LC = DateTime.Now;//å¼å§æ¶é´ |
| | | nj.createTime = DateTime.Now; |
| | | } |
| | | if (gruops == "çµæ°") |
| | | { |
| | | nj!.startTime_DQ = DateTime.Now; |
| | | nj.createTime = DateTime.Now; |
| | | } |
| | | if (gruops == "å°æ²") |
| | | { |
| | | nj!.startTime_DG = DateTime.Now; |
| | | nj.createTime = DateTime.Now; |
| | | } |
| | | break; |
| | | case cond.å¾
å½ç: |
| | | putake.Pustatus = cond.å¾
è´¨æ£.ToString(); |
| | | case cond.å¾
å½ç://确认å½è¿ï¼å®ææ¶é´ |
| | | putake.Pustatus = (int)cond.å¾
è´¨æ£; |
| | | if (gruops == "æºæ¢°") |
| | | { |
| | | nj.endTime_LC = DateTime.Now; |
| | | nj.createTime = DateTime.Now; |
| | | } |
| | | if (gruops == "çµæ°") |
| | | { |
| | | nj.endTime_DQ = DateTime.Now; |
| | | nj.createTime = DateTime.Now; |
| | | } |
| | | if (gruops == "å°æ²") |
| | | { |
| | | nj.endTime_DG = DateTime.Now; |
| | | nj.createTime = DateTime.Now; |
| | | } |
| | | break; |
| | | case cond.å¾
è´¨æ£: |
| | | putake.Pustatus=cond.已宿.ToString(); |
| | | case cond.å¾
è´¨æ£: // å®æè´¨æ£æ¶é´ |
| | | putake.Pustatus = (int)cond.已宿; |
| | | |
| | | //DateTime latestTime = new DateTime(1900, 1, 1, 0, 0, 0); |
| | | |
| | | if (gruops == "æºæ¢°") |
| | | { |
| | | nj!.confirmTime_LC = DateTime.Now; |
| | | nj.createTime = DateTime.Now; |
| | | } |
| | | if (gruops == "çµæ°") |
| | | { |
| | | nj!.confirmTime_DQ = DateTime.Now; |
| | | nj.createTime = DateTime.Now; |
| | | } |
| | | if (gruops == "å°æ²") |
| | | { |
| | | nj!.confirmTime_DG = DateTime.Now; |
| | | nj.createTime = DateTime.Now; |
| | | } |
| | | |
| | | // è·åæå䏿¬¡å®æçæ¶é´ |
| | | // latestTime = (DateTime)new[] { nj.confirmTime_LC, nj.confirmTime_DQ, nj.confirmTime_DG }.Max(); // åææ°çæ¶é´ |
| | | |
| | | DateTime? latestTime = new[] { nj.confirmTime_LC, nj.confirmTime_DQ, nj.confirmTime_DG } |
| | | .Where(t => t.HasValue) // è¿æ»¤æ null |
| | | .Select(t => t.Value) // ååºé空çå¼ |
| | | .DefaultIfEmpty(DateTime.Now) // è¥æ°ç»ä¸ºç©ºï¼ä½¿ç¨å½åæ¶é´ |
| | | .Max(); // åæå¤§æ¶é´ |
| | | nj.endTime = latestTime; // èµå¼ææ°æ¶é´ |
| | | putake.Finishedtime = DateTime.Now; |
| | | break; |
| | | case cond.已宿: |
| | |
| | | default: |
| | | return new WebResponseContent { Status = false, Message = "æªç¥ç¶æï¼æ æ³æ´æ°" }; |
| | | } |
| | | //å¼å¯äºå¡ |
| | | _uniUnitOfWorkManage.BeginTran(); |
| | | |
| | | // æ´æ°æ°æ®åº |
| | | |
| | | _iNjTaskRepository.UpdateData(nj); |
| | | BaseDal.UpdateData(putake); |
| | | |
| | | //æäº¤äºå¡ |
| | | _uniUnitOfWorkManage.CommitTran(); |
| | | return new WebResponseContent { Status = true,Data= putake }; |
| | | return new WebResponseContent { Status = true, Data = putake }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | //åæ»äºå¡ |
| | | _uniUnitOfWorkManage.RollbackTran(); |
| | | return new WebResponseContent { Status = false, Message = "æ´æ°å¤±è´¥ï¼" + ex.Message }; |
| | | } |
| | | } |
| | |
| | | { |
| | | try |
| | | { |
| | | //å¼å¯äºå¡ |
| | | _uniUnitOfWorkManage.BeginTran(); |
| | | |
| | | var dg = BaseDal.QueryData(i=>i.Grouptype== group); |
| | | |
| | | //æäº¤äºå¡ |
| | | _uniUnitOfWorkManage.CommitTran(); |
| | | return new WebResponseContent { Status = true, Data = dg }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | // åæ»äºå¡ |
| | | _uniUnitOfWorkManage.RollbackTran(); |
| | | return new WebResponseContent { Status = false, Message = $"æ¥ç失败:{ex}" }; |
| | | } |
| | | } |
| | | |
| | | |
| | | //æ¥çè¿ä¸ªä¸åä»»å¡çä¸ä»»å¡è¡¨ä¸ç详æ
æ°æ®ï¼ånjtaskServeä¸ä¸æ ·ï¼ |
| | | public WebResponseContent GetNjtake(string njid) |
| | | { |
| | | try |
| | | { |
| | | //å¼å¯äºå¡ |
| | | _uniUnitOfWorkManage.BeginTran(); |
| | | |
| | | var Nj = _iNjTaskRepository.QueryData(i => i.NJtaskID == njid).FirstOrDefault(); |
| | | |
| | | if (Nj != null) |
| | | { |
| | | //æäº¤äºå¡ |
| | | _uniUnitOfWorkManage.CommitTran(); |
| | | |
| | | return new WebResponseContent { Status = true, Data = Nj }; |
| | | } |
| | | else { |
| | |
| | | catch (Exception ex) |
| | | { |
| | | |
| | | //åæ»äºå¡ |
| | | _uniUnitOfWorkManage.RollbackTran(); |
| | | |
| | | return new WebResponseContent { Status = false, Message = "æ´æ°å¤±è´¥ï¼" + ex.Message }; |
| | | } |
| | | } |
| | | |
| | | //æ´å
·ä»»å¡ç¶ææ¥è¯¢ |
| | | public WebResponseContent seletTaskeStatus(string status) |
| | | { |
| | | try |
| | | { |
| | | //å¼å¯äºå¡ |
| | | _uniUnitOfWorkManage.BeginTran(); |
| | | |
| | | var Nj = BaseDal.QueryData(i => i.Pustatus == status); |
| | | |
| | | |
| | | if (Nj != null) |
| | | { |
| | | //æäº¤äºå¡ |
| | | _uniUnitOfWorkManage.CommitTran(); |
| | | return new WebResponseContent { Status = true, Data = Nj }; |
| | | } |
| | | else |
| | | { |
| | | return new WebResponseContent { Status = false, Message = "æ²¡ææ¾å°" }; |
| | | } |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | |
| | | //åæ»äºå¡ |
| | | _uniUnitOfWorkManage.RollbackTran(); |
| | | return new WebResponseContent { Status = false, Message = "æ´æ°å¤±è´¥ï¼" + ex.Message }; |
| | | } |
| | | } |
| | | |
| | | public WebResponseContent GetNJandPu() |
| | | { |
| | | try |
| | | { |
| | | var nj = _iNjTaskRepository.QueryData(); // è·å NJ ä»»å¡å表 |
| | | //var pu = BaseDal.QueryData(); // è·å PU ä»»å¡å表 |
| | | //var result = nj.Join( |
| | | // pu, |
| | | // n => n.NJtaskID, // å¤é® (主表) |
| | | // p => p.ID.ToString(), // å
é® (ä»è¡¨) |
| | | // (n, p) => new // è¿æ¥åçç»æ |
| | | // { |
| | | // n.NJtaskID, |
| | | // n.trainKind, |
| | | // n.trainNum, |
| | | // n.track, |
| | | // n.coachNum, |
| | | // n.bogie, |
| | | // n.processDept, |
| | | // n.createTime, |
| | | // p.Pustatus, |
| | | |
| | | // }).ToList(); |
| | | |
| | | |
| | | return new WebResponseContent { Status = true, Data = nj }; |
| | | |
| | | } |
| | | |
| | | catch (Exception) |
| | | { |
| | | |
| | | throw; |
| | | } |
| | | } |
| | | } |
| | | } |