Exemple #1
0
        public async Task <IActionResult> GetForm(BaseInput input)
        {
            var visitEntity = await _patVisitApp.GetForm(input.KeyValue);

            if (visitEntity == null)
            {
                return(BadRequest("透析记录主键有误"));
            }
            var entity = _machineProcessApp.GetFormByVid(input.KeyValue);

            if (entity == null)
            {
                //生成数据
                var bedInfo = await _dialysisMachineApp.GetForm(visitEntity.F_GroupName, visitEntity.F_DialysisBedNo);

                entity = new MachineProcessEntity
                {
                    F_Id            = Common.GuId(),
                    F_Mid           = bedInfo.F_Id,
                    F_Pid           = visitEntity.F_Pid,
                    F_DialylisNo    = visitEntity.F_DialysisNo,
                    F_PName         = visitEntity.F_Name,
                    F_PGender       = visitEntity.F_Gender,
                    F_Vid           = visitEntity.F_Id,
                    F_VisitDate     = visitEntity.F_VisitDate,
                    F_VisitNo       = visitEntity.F_VisitNo,
                    F_GroupName     = bedInfo.F_GroupName,
                    F_ShowOrder     = bedInfo.F_ShowOrder,
                    F_DialylisBedNo = bedInfo.F_DialylisBedNo,
                    F_MachineName   = bedInfo.F_MachineName,
                    F_MachineNo     = bedInfo.F_MachineNo,
                    F_EnabledMark   = true,
                    F_CreatorTime   = DateTime.Now,
                    F_CreatorUserId = _usersService.GetCurrentUserId()
                };
                _machineProcessApp.InsertForm(entity);
            }
            var data = new
            {
                id            = entity.F_Id,
                operatePerson = entity.F_OperatePerson == null ? "" : (await _usersService.FindUserAsync(entity.F_OperatePerson))?.F_RealName,
                operateTime   = entity.F_OperateTime,
                option1       = entity.F_Option1,
                option2       = entity.F_Option2,
                option3       = entity.F_Option3,
                option4       = entity.F_Option4,
                option5       = entity.F_Option5,
                option6       = entity.F_Option6,
                memo          = entity.F_Memo
            };

            return(Ok(data));
        }
Exemple #2
0
 public Task <int> SubmitForm <TDto>(MachineProcessEntity entity, TDto dto) where TDto : class
 {
     if (!string.IsNullOrEmpty(entity.F_Id))
     {
         entity.Modify(entity.F_Id);
         return(_service.UpdateAsync(entity, dto));
     }
     else
     {
         entity.Create();
         return(_service.InsertAsync(entity));
     }
 }
Exemple #3
0
        public IActionResult SubmitData([FromBody] SubmitDataInput input)
        {
            var entity = new MachineProcessEntity
            {
                F_Id            = input.id,
                F_Option1       = input.option1,
                F_Option2       = input.option2,
                F_Option3       = input.option3,
                F_Option4       = input.option4,
                F_Option5       = input.option5,
                F_Option6       = input.option6,
                F_Memo          = input.memo,
                F_OperatePerson = _usersService.GetCurrentUserId(),
                F_OperateTime   = DateTime.Now
            };

            _machineProcessApp.UpdateForm(entity);
            return(Ok("操作成功"));
        }
Exemple #4
0
 public Task <int> UpdateForm(MachineProcessEntity entity)
 {
     return(_service.UpdatePartialAsync(entity));
 }
Exemple #5
0
 public void InsertForm(MachineProcessEntity entity)
 {
     _service.Insert(entity);
 }
Exemple #6
0
        /// <summary>
        /// 根据治疗单 生成数据
        /// </summary>
        /// <param name="visitDate"></param>
        /// <param name="visitNo"></param>
        private void CreateData(DateTime visitDate, int visitNo)
        {
            //QualityResultApp resultApp = new QualityResultApp();
            var listSourse = _patVisitApp.GetList().Where(t => t.F_VisitDate == visitDate && (visitNo == 0 || t.F_VisitNo == visitNo) && t.F_DialysisStartTime != null && t.F_DialysisEndTime != null);
            var listTarget = GetList(visitDate, visitNo);
            //查询不包含的数据
            var c = (from r in listSourse
                     where !listTarget.Any(t => t.F_Vid == r.F_Id)
                     select r).ToList();

            //没有 返回
            if (c.Count == 0)
            {
                return;
            }
            //患者列表
            var patientList = from r in _patientApp.GetQueryable()
                              where c.Any(t => t.F_Pid == r.F_Id)
                              select new
            {
                r.F_Id,
                r.F_Name,
                r.F_Gender,
                r.F_DialysisNo
            };

            var bedList = from b in _dialysisMachineApp.GetQueryable()
                          select new
            {
                b.F_Id,
                b.F_GroupName,
                b.F_DialylisBedNo,
                b.F_MachineName,
                b.F_MachineNo,
                b.F_ShowOrder
            };
            //生成记录
            var addEntityList = new List <MachineProcessEntity>();

            foreach (var item in c)
            {
                var entity = new MachineProcessEntity
                {
                    F_Pid       = item.F_Pid,
                    F_Vid       = item.F_Id,
                    F_VisitDate = item.F_VisitDate,
                    F_VisitNo   = item.F_VisitNo,
                    F_Option1   = false,
                    F_Option2   = false,
                    F_Option3   = false,
                    F_Option4   = false,
                    //F_Option5 = false,
                    F_GroupName     = item.F_GroupName,
                    F_DialylisBedNo = item.F_DialysisBedNo
                };
                var p = patientList.FirstOrDefault(t => t.F_Id == item.F_Pid);
                if (p != null)
                {
                    entity.F_PName      = p.F_Name;
                    entity.F_PGender    = p.F_Gender;
                    entity.F_DialylisNo = p.F_DialysisNo;
                }
                else
                {
                    continue;
                }
                var b = bedList.FirstOrDefault(t => t.F_GroupName == item.F_GroupName && t.F_DialylisBedNo == item.F_DialysisBedNo);
                if (b != null)
                {
                    entity.F_MachineName = b.F_MachineName;
                    entity.F_MachineNo   = b.F_MachineNo;
                    entity.F_ShowOrder   = b.F_ShowOrder;
                    entity.F_Mid         = b.F_Id;
                }
                else
                {
                    continue;
                }
                entity.Create();
                entity.F_EnabledMark = true;
                addEntityList.Add(entity);
            }
            if (addEntityList.Count > 0)
            {
                //保存记录
                _service.Insert(addEntityList);
            }
            //更新记录
        }