コード例 #1
0
        /// <summary>
        /// 添加医生信息
        /// </summary>
        public async Task <vwCHIS_Code_Doctor> CreateDoctorAsync(CHIS_Code_Doctor model)
        {
            if (model.CustomerId <= 0)
            {
                throw new Exception("该用户不存在,不能添加医生信息");
            }
            var docList = base._db.CHIS_Code_Doctor.Where(m => m.CustomerId == model.CustomerId);

            if (docList.Count() > 0)
            {
                throw new Exception("该医生已存在,不能重复添加");
            }
            model.OpTime = model.DoctorCreateTime = DateTime.Now;
            model.OpID   = controller.UserSelf.OpId;
            model.OpMan  = controller.UserSelf.OpManFullMsg;


            _db.BeginTransaction();

            try
            {
                var add = await _db.CHIS_Code_Doctor.AddAsync(model);

                await _db.SaveChangesAsync();

                //临时添加到工作站内
                var add0 = _db.CHIS_Sys_Rel_DoctorStations.AddAsync(new CHIS_Sys_Rel_DoctorStations
                {
                    DoctorId        = add.Entity.DoctorId,
                    StationId       = controller.UserSelf.StationId,
                    StationIsEnable = false
                });
                await _db.SaveChangesAsync();

                //添加到工作站内
                var add1 = _db.CHIS_Sys_Rel_DoctorStationRoles.AddAsync(new CHIS_Sys_Rel_DoctorStationRoles
                {
                    DoctorId          = add.Entity.DoctorId,
                    StationId         = controller.UserSelf.StationId,
                    RoleId            = 0,
                    MyRoleIsEnable    = false,
                    MyStationIsEnable = false
                });
                await _db.SaveChangesAsync();

                _db.CommitTran();
            }
            catch (Exception ex)
            {
                _db.RollbackTran();
                throw ex;
            }

            return(_db.vwCHIS_Code_Doctor.AsNoTracking().First(m => m.DoctorId == model.DoctorId));
        }
コード例 #2
0
        internal async Task <vwCHIS_Code_Doctor> ModifyDoctorAsync(CHIS_Code_Doctor model)
        {
            var doc = _db.CHIS_Code_Doctor.Find(model.DoctorId);

            doc.CustomerId            = model.CustomerId;
            doc.DoctorPhotoUrl        = model.DoctorPhotoUrl;
            doc.PostTitle             = model.PostTitle;
            doc.Principalship         = model.Principalship;
            doc.IsEnable              = model.IsEnable == true;
            doc.StopDate              = model.StopDate;
            doc.TreatFee              = model.TreatFee;
            doc.DoctorSkillRmk        = model.DoctorSkillRmk;
            doc.Remark                = model.Remark;
            doc.OpID                  = controller.UserSelf.OpId;
            doc.OpMan                 = controller.UserSelf.OpMan;
            doc.OpTime                = DateTime.Now;
            doc.IsChecking            = false;
            doc.DoctorIsAuthenticated = false;
            await _db.SaveChangesAsync();



            return(_db.vwCHIS_Code_Doctor.AsNoTracking().FirstOrDefault(m => m.DoctorId == model.DoctorId));
        }