Exemple #1
0
        /// <summary>
        /// 同步患者联系人(新增或修改)
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <OutputBase> AddOrUpdate(AddPatientContactSync sync)
        {
            var patient = await _patientRepository.Get(sync.DialysisPatientId, sync.HospitalId);

            if (patient == null)
            {
                return(OutputBase.Fail("不存在该患者"));
            }

            var patientContact = await _repository.Get(sync.DialysisContactId, sync.HospitalId);

            if (patientContact == null)
            {
                var entity = Mapper.Map <AddPatientContactSync, PatientContact>(sync);
                entity.PatientId = patient.Id;
                _repository.Add(entity);
            }
            else
            {
                patientContact.PatientId  = patient.Id;
                patientContact.UpdateTime = DateTime.Now;
                Mapper.Map(sync, patientContact);
            }

            return(_unitWork.Commit() ? OutputBase.Success("保存成功") : OutputBase.Fail("保存失败"));
        }
Exemple #2
0
        /// <summary>
        /// 新增患者
        /// </summary>
        /// <param name="input">患者信息</param>
        /// <returns>是否成功</returns>
        public async Task <OutputBase> Add(AdminPatientDto input)
        {
            if (await _repository.GetPatientCotactByPhone(input.Phone) != null)
            {
                return(OutputBase.Fail("该手机号已经注册"));
            }

            var patient = new Patient
            {
                Brithdate         = input.Brithdate,
                DialysisPatientId = 0,//默认
                DoctorId          = input.DoctorId == -1 ? null : input.DoctorId,
                HospitalId        = input.HospitalId,
                PatientName       = input.PatientName,
                PinyinCode        = Utility.GetFirstPY(input.PatientName),
                Remark            = input.Remark,
                Sex        = input.Sex,
                UserStatus = input.UserStatus
            };
            var patientId = _repository.Add(patient);
            var contact   = new PatientContact
            {
                MobilePhone       = input.Phone,
                Relationship      = CommConstant.OneselfRelationship,
                ContatctName      = input.PatientName,
                DialysisContactId = 0,//默认
                HospitalId        = input.HospitalId,
                PatientId         = patientId
            };

            _patientContactRepository.Add(contact);

            return(_unitWork.Commit() ? OutputBase.Success("新增成功") : OutputBase.Fail("新增失败"));
        }