Exemplo n.º 1
0
        public CommandResult Delete(TrainingInfo command)
        {
            try
            {
                string       result         = "";
                TrainingInfo teacherProfile = new TrainingInfo();
                Tools.CopyClass(teacherProfile, command);
                var IsExist = unitOfWork.GenericRepositories <TrainingInfo>().FindBy(x => x.RecordID == command.RecordID).FirstOrDefault();
                if (IsExist != null)
                {
                    var IsExistsTopic    = unitOfWork.GenericRepositories <TrainingInfoTopic>().FindBy(x => x.TrainingId == IsExist.TrainingId).ToList();
                    var IsExistsMaterial = unitOfWork.GenericRepositories <TrainingInfoMaterial>().FindBy(x => x.TrainingId == IsExist.TrainingId).ToList();

                    unitOfWork.GenericRepositories <TrainingInfoTopic>().DeleteAll(IsExistsTopic);
                    unitOfWork.GenericRepositories <TrainingInfoMaterial>().DeleteAll(IsExistsMaterial);
                    unitOfWork.GenericRepositories <TrainingInfo>().Delete(teacherProfile);
                    result = unitOfWork.SaveChange();
                    LogEventStore(teacherProfile.RecordID.ToString(), "TrainingInfo", "Delete");
                }
                return(new CommandResult()
                {
                    Success = result != "" ? false : true,
                    Status = result != "" ? 400 : 200,
                    Message = result != "" ? result : "Record Saved successfully.",
                    ServerRecordId = teacherProfile.RecordID,
                    RecordId = command.RecordID
                });
            }
            catch (Exception ex)
            {
                return(new CommandResult()
                {
                    Success = false,
                    Status = 400,
                    Message = ex.Message,
                    RecordId = command.RecordID
                });
            }
        }
Exemplo n.º 2
0
        public CommandResult Save(TrainingInfo command, List <TrainingInfoMaterial> materials, List <TrainingInfoTopic> topics)
        {
            try
            {
                string       result       = "";
                TrainingInfo trainingInfo = new TrainingInfo();
                Tools.CopyClass(trainingInfo, command);
                var IsExist = unitOfWork.GenericRepositories <TrainingInfo>().FindBy(x => x.RecordID == command.RecordID).FirstOrDefault();
                if (IsExist == null)
                {
                    trainingInfo.Status     = 1;
                    trainingInfo.TrainingId = "1";
                    unitOfWork.GenericRepositories <TrainingInfo>().Insert(trainingInfo);
                    result = unitOfWork.SaveChange();

                    var IsExists = unitOfWork.GenericRepositories <TrainingInfo>().FindBy(x => x.TrainingId == command.TrainingId).FirstOrDefault();

                    foreach (var item in topics)
                    {
                        string sql   = "SELECT * FROM TrainingTopic WHERE TopicId='" + item.TopicId + "'";
                        var    topic = unitOfWork.GetDataTable(sql);

                        TrainingInfoTopic topicinfo = new TrainingInfoTopic();
                        Tools.CopyClass(topicinfo, item);
                        topicinfo.TrainingId = trainingInfo.TrainingId;
                        topicinfo.TopicType  = topic.Rows[0]["TopicType"].ToString();

                        unitOfWork.GenericRepositories <TrainingInfoTopic>().Insert(topicinfo);
                    }


                    foreach (var item in materials)
                    {
                        string sql      = "SELECT * FROM TrainingMaterial WHERE MaterialId='" + item.MaterialId + "'";
                        var    material = unitOfWork.GetDataTable(sql);

                        TrainingInfoMaterial materialinfo = new TrainingInfoMaterial();
                        Tools.CopyClass(materialinfo, item);
                        materialinfo.TrainingId   = trainingInfo.TrainingId;
                        materialinfo.MaterialType = material.Rows[0]["MaterialType"].ToString();

                        unitOfWork.GenericRepositories <TrainingInfoMaterial>().Insert(materialinfo);
                    }

                    result = unitOfWork.SaveChange();

                    LogEventStore(trainingInfo.RecordID.ToString(), "TrainingInfo", "Save");
                }
                else
                {
                    trainingInfo.RecordID = IsExist.RecordID;
                    trainingInfo.Status   = 1;

                    unitOfWork.GenericRepositories <TrainingInfo>().Update(trainingInfo);

                    unitOfWork.GenericRepositories <TrainingInfoTopic>().Delete(trainingInfo.TrainingId);
                    unitOfWork.GenericRepositories <TrainingInfoMaterial>().Delete(trainingInfo.TrainingId);

                    foreach (var item in topics)
                    {
                        string sql   = "SELECT * FROM TrainingTopic WHERE TopicId='" + item.TopicId + "'";
                        var    topic = unitOfWork.GetDataTable(sql);

                        TrainingInfoTopic topicinfo = new TrainingInfoTopic();
                        Tools.CopyClass(topicinfo, item);
                        topicinfo.TrainingId = trainingInfo.TrainingId;
                        topicinfo.TopicType  = topic.Rows[0]["TopicType"].ToString();

                        unitOfWork.GenericRepositories <TrainingInfoTopic>().Insert(topicinfo);
                    }


                    foreach (var item in materials)
                    {
                        string sql      = "SELECT * FROM TrainingMaterial WHERE MaterialId='" + item.MaterialId + "'";
                        var    material = unitOfWork.GetDataTable(sql);

                        TrainingInfoMaterial materialinfo = new TrainingInfoMaterial();
                        Tools.CopyClass(materialinfo, item);
                        materialinfo.TrainingId   = trainingInfo.TrainingId;
                        materialinfo.MaterialType = material.Rows[0]["MaterialType"].ToString();

                        unitOfWork.GenericRepositories <TrainingInfoMaterial>().Insert(materialinfo);
                    }

                    result = unitOfWork.SaveChange();
                    LogEventStore(trainingInfo.RecordID.ToString(), "TrainingInfo", "Update");
                }
                return(new CommandResult()
                {
                    Success = result != "" ? false : true,
                    Status = result != "" ? 400 : 200,
                    Message = result != "" ? result : "Record Saved successfully.",
                    ServerRecordId = trainingInfo.RecordID,
                    RecordId = command.RecordID
                });
            }
            catch (Exception ex)
            {
                return(new CommandResult()
                {
                    Success = false,
                    Status = 400,
                    Message = ex.Message,
                    RecordId = command.RecordID
                });
            }
        }