diff --git a/src/Shentun.Peis.Application.Contracts/PatientRegisters/CheckRequestNoInputDto.cs b/src/Shentun.Peis.Application.Contracts/PatientRegisters/CheckRequestNoInputDto.cs
new file mode 100644
index 0000000..0a73be1
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/PatientRegisters/CheckRequestNoInputDto.cs
@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Shentun.Peis.PatientRegisters
+{
+    public class CheckRequestNoInputDto
+    {
+        /// 
+        /// 检查单号
+        /// 
+        public string CheckRequestNo { get; set; }
+    }
+}
diff --git a/src/Shentun.Peis.Application.Contracts/PatientRegisters/LisRequestNoInputDto.cs b/src/Shentun.Peis.Application.Contracts/PatientRegisters/LisRequestNoInputDto.cs
new file mode 100644
index 0000000..926c44f
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/PatientRegisters/LisRequestNoInputDto.cs
@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Shentun.Peis.PatientRegisters
+{
+    public class LisRequestNoInputDto
+    {
+        /// 
+        /// Lis申请单号
+        /// 
+        public string LisRequestNo { get; set; }
+    }
+}
diff --git a/src/Shentun.Peis.Application.Contracts/PatientRegisters/PatientRegisterSimpleDto.cs b/src/Shentun.Peis.Application.Contracts/PatientRegisters/PatientRegisterSimpleDto.cs
new file mode 100644
index 0000000..1f7a6e7
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/PatientRegisters/PatientRegisterSimpleDto.cs
@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Shentun.Peis.PatientRegisters
+{
+    public class PatientRegisterSimpleDto
+    {
+        public string PatientRegisterNo { get; set; }
+    }
+}
diff --git a/src/Shentun.Peis.Application/PatientRegisters/PatientRegisterAppService.cs b/src/Shentun.Peis.Application/PatientRegisters/PatientRegisterAppService.cs
index d4128d6..ebb7db0 100644
--- a/src/Shentun.Peis.Application/PatientRegisters/PatientRegisterAppService.cs
+++ b/src/Shentun.Peis.Application/PatientRegisters/PatientRegisterAppService.cs
@@ -12,6 +12,7 @@ using Shentun.Peis.CommonCharTypes;
 using Shentun.Peis.CustomerOrgRegisters;
 using Shentun.Peis.CustomerOrgs;
 using Shentun.Peis.Enums;
+using Shentun.Peis.LisRequests;
 using Shentun.Peis.Models;
 using Shentun.Peis.PatientRegisterExters;
 using Shentun.Peis.Patients;
@@ -104,6 +105,7 @@ namespace Shentun.Peis.PatientRegisters
         private readonly SysParmValueManager _sysParmValueManager;
         private readonly IRepository _patientRegisterExterRepository;
         private readonly PatientRegisterExterManager _patientRegisterExterManager;
+        private readonly IRepository _lisRequestRepository;
         public PatientRegisterAppService(
             IRepository repository,
             IRepository patientRepository,
@@ -149,7 +151,8 @@ namespace Shentun.Peis.PatientRegisters
             SumSuggestionContentManager sumSuggestionContentManager,
             SysParmValueManager sysParmValueManager,
             IRepository patientRegisterExterRepository,
-            PatientRegisterExterManager patientRegisterExterManager)
+            PatientRegisterExterManager patientRegisterExterManager,
+            IRepository lisRequestRepository)
             : base(repository)
         {
             this._repository = repository;
@@ -197,6 +200,7 @@ namespace Shentun.Peis.PatientRegisters
             _sysParmValueManager = sysParmValueManager;
             _patientRegisterExterRepository = patientRegisterExterRepository;
             _patientRegisterExterManager = patientRegisterExterManager;
+            _lisRequestRepository = lisRequestRepository;
         }
         /// 
         /// 获取通过主键
@@ -209,6 +213,72 @@ namespace Shentun.Peis.PatientRegisters
         }
 
 
+        /// 
+        /// 根据lis申请单号 获取人员条码号
+        /// 
+        /// 
+        /// 
+        /// 
+        [HttpPost("api/app/PatientRegister/GetPatientRegisterNoByLisRequestNo")]
+        public async Task GetPatientRegisterNoByLisRequestNoAsync(LisRequestNoInputDto input)
+        {
+            if (input == null)
+            {
+                throw new UserFriendlyException("请求参数有误");
+            }
+
+            var patientRegisterNo = (from lisRequest in await _lisRequestRepository.GetQueryableAsync()
+                                     join registerCheckAsbitem in await _registerCheckAsbitemRepository.GetQueryableAsync() on lisRequest.Id equals registerCheckAsbitem.LisRequestId
+                                     join registerCheck in await _registerCheckRepository.GetQueryableAsync() on registerCheckAsbitem.RegisterCheckId equals registerCheck.Id
+                                     join patientRegister in await Repository.GetQueryableAsync() on registerCheck.PatientRegisterId equals patientRegister.Id
+                                     where lisRequest.LisRequestNo == input.LisRequestNo
+                                     select patientRegister.PatientRegisterNo).FirstOrDefault();
+
+            if (!string.IsNullOrEmpty(patientRegisterNo))
+            {
+                return new PatientRegisterSimpleDto
+                {
+                    PatientRegisterNo = patientRegisterNo
+                };
+            }
+            else
+            {
+                throw new UserFriendlyException("Lis申请单有误");
+            }
+        }
+
+        /// 
+        /// 根据检查单号 获取人员条码号
+        /// 
+        /// 
+        /// 
+        /// 
+        [HttpPost("api/app/PatientRegister/GetPatientRegisterNoByCheckRequestNo")]
+        public async Task GetPatientRegisterNoByCheckRequestNoAsync(CheckRequestNoInputDto input)
+        {
+            if (input == null)
+            {
+                throw new UserFriendlyException("请求参数有误");
+            }
+
+            var patientRegisterNo = (from registerCheck in await _registerCheckRepository.GetQueryableAsync()
+                                     join patientRegister in await Repository.GetQueryableAsync() on registerCheck.PatientRegisterId equals patientRegister.Id
+                                     where registerCheck.CheckRequestNo == input.CheckRequestNo
+                                     select patientRegister.PatientRegisterNo).FirstOrDefault();
+
+            if (!string.IsNullOrEmpty(patientRegisterNo))
+            {
+                return new PatientRegisterSimpleDto
+                {
+                    PatientRegisterNo = patientRegisterNo
+                };
+            }
+            else
+            {
+                throw new UserFriendlyException("检查单有误");
+            }
+        }
+
 
         /// 
         /// 编辑反写接口,包含档案表跟登记表的信息
@@ -820,7 +890,7 @@ namespace Shentun.Peis.PatientRegisters
             }
             //创建人员登记信息
             createPatientRegisterArg.PatientId = patient.Id;
-            if(patient.BirthDate != null)
+            if (patient.BirthDate != null)
             {
                 createPatientRegisterArg.BirthDate = patient.BirthDate;
             }
@@ -1162,7 +1232,7 @@ namespace Shentun.Peis.PatientRegisters
             }
 
 
-           
+
 
             int totalCount = sumquery.Count();
 
@@ -2791,9 +2861,9 @@ namespace Shentun.Peis.PatientRegisters
                 }
 
 
-                patientRegisterList.ForEach(f => 
+                patientRegisterList.ForEach(f =>
                     {
-                        if(f.CompleteFlag == PatientRegisterCompleteFlag.PreRegistration 
+                        if (f.CompleteFlag == PatientRegisterCompleteFlag.PreRegistration
                         && input.CompleteFlag == PatientRegisterCompleteFlag.Registration)
                         {
                             f.MedicalStartDate = DateTime.Now;
@@ -2809,7 +2879,7 @@ namespace Shentun.Peis.PatientRegisters
                     patientRegisterList.ForEach(f => f.MedicalStartDate = PageHelper.ConvertDatetimeV(input.MedicalStartDate));
 
                 }
-               
+
 
                 await _repository.UpdateManyAsync(patientRegisterList);
 
diff --git a/src/Shentun.Peis.Domain/PatientRegisters/PatientRegisterManager.cs b/src/Shentun.Peis.Domain/PatientRegisters/PatientRegisterManager.cs
index fba9a12..fa03e37 100644
--- a/src/Shentun.Peis.Domain/PatientRegisters/PatientRegisterManager.cs
+++ b/src/Shentun.Peis.Domain/PatientRegisters/PatientRegisterManager.cs
@@ -672,6 +672,15 @@ namespace Shentun.Peis.PatientRegisters
                 throw new UserFriendlyException("人员信息姓名和性别和原来的信息都不一致,禁止修改");
             }
 
+            //预登记改正式登记  修改体检日期跟状态
+            if (targetEntity.CompleteFlag == PatientRegisterCompleteFlag.PreRegistration 
+                && sourceEntity.CompleteFlag == PatientRegisterCompleteFlag.Registration)
+            {
+                targetEntity.MedicalStartDate = DateTime.Now;
+                targetEntity.IsMedicalStart = 'Y';
+            }
+
+
             //targetEntity.AuditDate = sourceEntity.AuditDate;
             //targetEntity.AuditDoctor = sourceEntity.AuditDoctor;
             targetEntity.BirthDate = sourceEntity.BirthDate;