分配医生
							parent
							
								
									c1f9ca9f44
								
							
						
					
					
						commit
						4a132852b1
					
				| 
						 | 
				
			
			@ -93,7 +93,7 @@
 | 
			
		|||
        <member name="M:IRaCIS.Core.Application.Service.VisitTaskService.AssignSubjectTaskToDoctor(IRaCIS.Core.Application.ViewModel.AssignSubjectTaskToDoctorCommand)">
 | 
			
		||||
            <summary>
 | 
			
		||||
            任务  手动分配  重新分配  确认  取消分配
 | 
			
		||||
            </summary>
 | 
			
		||||
            </summary>分配
 | 
			
		||||
            <param name="assignSubjectTaskToDoctorCommand"></param>
 | 
			
		||||
            <returns></returns>
 | 
			
		||||
        </member>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -180,7 +180,7 @@ namespace IRaCIS.Core.Application.ViewModel
 | 
			
		|||
 | 
			
		||||
        public Guid SubjectId { get; set; }
 | 
			
		||||
 | 
			
		||||
        public Guid DoctorUserId { get; set; }
 | 
			
		||||
        public Guid? DoctorUserId { get; set; }
 | 
			
		||||
 | 
			
		||||
        public TaskOptType TaskOptType { get; set; }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -194,7 +194,7 @@ namespace IRaCIS.Core.Application.ViewModel
 | 
			
		|||
 | 
			
		||||
        Confirm = 3,
 | 
			
		||||
 | 
			
		||||
        CancelConfirm = 4,
 | 
			
		||||
        CancelAssign = 4,
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -10,6 +10,7 @@ using IRaCIS.Core.Application.Interfaces;
 | 
			
		|||
using IRaCIS.Core.Application.ViewModel;
 | 
			
		||||
using IRaCIS.Core.Domain.Share;
 | 
			
		||||
using IRaCIS.Core.Infrastructure;
 | 
			
		||||
using IRaCIS.Core.Application.Contracts;
 | 
			
		||||
 | 
			
		||||
namespace IRaCIS.Core.Application.Service
 | 
			
		||||
{
 | 
			
		||||
| 
						 | 
				
			
			@ -42,7 +43,7 @@ namespace IRaCIS.Core.Application.Service
 | 
			
		|||
        }
 | 
			
		||||
 | 
			
		||||
        [HttpPost]
 | 
			
		||||
        public async Task<PageOutput<VisitTaskView>> GetVisitTaskList(VisitTaskQuery queryVisitTask, [FromServices] IVisitTaskHelpeService _visitTaskCommonService)
 | 
			
		||||
        public async Task<(PageOutput<VisitTaskView>,object)> GetVisitTaskList(VisitTaskQuery queryVisitTask, [FromServices] IVisitTaskHelpeService _visitTaskCommonService)
 | 
			
		||||
        {
 | 
			
		||||
            //以前访视未产生任务的,在查询这里要产生 
 | 
			
		||||
            var svIdList = await _subjectVisitRepository.Where(t => t.TrialId == queryVisitTask.TrialId && t.CheckState == CheckStateEnum.CVPassed && t.IsVisitTaskGenerated == false).Select(t => t.Id).ToListAsync();
 | 
			
		||||
| 
						 | 
				
			
			@ -67,7 +68,8 @@ namespace IRaCIS.Core.Application.Service
 | 
			
		|||
 | 
			
		||||
            var pageList = await visitTaskQueryable.ToPagedListAsync(queryVisitTask.PageIndex, queryVisitTask.PageSize, queryVisitTask.SortField, queryVisitTask.Asc, string.IsNullOrWhiteSpace(queryVisitTask.SortField), defalutSortArray);
 | 
			
		||||
 | 
			
		||||
            return pageList;
 | 
			
		||||
            var trialTaskConfig = _trialRepository.Where(t => t.Id == queryVisitTask.TrialId).ProjectTo<TrialTaskConfig>(_mapper.ConfigurationProvider).FirstOrDefault();
 | 
			
		||||
            return (pageList,trialTaskConfig);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -406,7 +408,7 @@ namespace IRaCIS.Core.Application.Service
 | 
			
		|||
        [UnitOfWork]
 | 
			
		||||
        public async Task<IResponseOutput> AssignSubjectTaskToDoctor(AssignSubjectTaskToDoctorCommand assignSubjectTaskToDoctorCommand)
 | 
			
		||||
        {
 | 
			
		||||
          var visitTask=  await _visitTaskRepository.FirstAsync(t => t.Id == assignSubjectTaskToDoctorCommand.Id);
 | 
			
		||||
            var visitTask=  await _visitTaskRepository.FirstAsync(t => t.Id == assignSubjectTaskToDoctorCommand.Id);
 | 
			
		||||
 | 
			
		||||
            if (assignSubjectTaskToDoctorCommand.TaskOptType == TaskOptType.Assign || assignSubjectTaskToDoctorCommand.TaskOptType == TaskOptType.ReAssign)
 | 
			
		||||
            {
 | 
			
		||||
| 
						 | 
				
			
			@ -415,12 +417,25 @@ namespace IRaCIS.Core.Application.Service
 | 
			
		|||
                visitTask.TaskState = TaskState.Allocated;
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
           
 | 
			
		||||
 | 
			
		||||
            else if (assignSubjectTaskToDoctorCommand.TaskOptType == TaskOptType.ReAssign)
 | 
			
		||||
            {
 | 
			
		||||
                //验证 是不是两个任务都给了同一个医生
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                //是否删除配置规则表里的  Subject  医生绑定关系    重新添加绑定关系
 | 
			
		||||
 | 
			
		||||
                //是否其该Subject  其他访视 绑定的医生  也同时变更?
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            else if (assignSubjectTaskToDoctorCommand.TaskOptType == TaskOptType.Confirm)
 | 
			
		||||
            {
 | 
			
		||||
                visitTask.TaskState = TaskState.Allocated;
 | 
			
		||||
            }
 | 
			
		||||
            else if (assignSubjectTaskToDoctorCommand.TaskOptType == TaskOptType.CancelConfirm)
 | 
			
		||||
            else if (assignSubjectTaskToDoctorCommand.TaskOptType == TaskOptType.CancelAssign)
 | 
			
		||||
            {
 | 
			
		||||
                visitTask.AllocateTime = null;
 | 
			
		||||
                visitTask.DoctorUserId = null;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue