コード例 #1
0
 public dynamic LoadForm(string formName)
 {
     formName = PublicFunc.GetConfigByKey_AppSettings("TemplatePrefix") + formName;
     return
         (stAnswerRepo.Entities.Select(n => new { n.TemplateName, n.TemplateData, n.TemplateDesc })
          .FirstOrDefault(m => m.TemplateName == formName));
 }
コード例 #2
0
ファイル: UserService.cs プロジェクト: youkaisteve/ExamEngine
        public void ImportTeamUser(TramUserImportListModel data)
        {
            if (data == null)
            {
                throw new BusinessException("无数据");
            }

            string sqlStr = @" DELETE FROM dbo.Team;
                                DELETE A FROM dbo.RoleUser A INNER JOIN dbo.[User] B ON A.UserID = B.UserID WHERE B.UserType = 0;
                                    DELETE FROM dbo.[User] WHERE UserType = 0;
                                    DELETE FROM dbo.UserTeam;";

            adonetWrapper.ExecuteSqlCommand(sqlStr);
            string pwd = PublicFunc.GetConfigByKey_AppSettings("DefaultPWD");

            DateTime now = DateTime.Now;
            int      studentRoleSysNo = int.Parse(PublicFunc.GetConfigByKey_AppSettings("StudentRoleSysNo"));
            IEnumerable <IGrouping <string, TeamUserImportModel> > groupList = data.Lists.GroupBy(m => m.TeamName);

            foreach (var group in groupList)
            {
                teamRepo.Insert(new Team {
                    TeamName = group.Key, InDate = now, InUser = data.User.UserID
                });
                foreach (TeamUserImportModel user in group.ToList())
                {
                    userRepo.Insert(new User
                    {
                        UserID   = user.UserID,
                        UserName = user.UserName,
                        Password = pwd,
                        Status   = 1,
                        InUser   = data.User.UserID,
                        InDate   = now
                    });
                    userTeamRepo.Insert(new UserTeam
                    {
                        TeamName = user.TeamName,
                        UserID   = user.UserID,
                        InDate   = now,
                        InUser   = data.User.UserID
                    });

                    roleUserRepo.Insert(new RoleUser()
                    {
                        InDate    = now,
                        InUser    = data.User.UserID,
                        Status    = 1,
                        UserID    = user.UserID,
                        RoleSysNo = studentRoleSysNo
                    });
                }
            }
        }
コード例 #3
0
        public ApiResponse LoadFormList()
        {
            var returnFiles = new List <string>();
            var formDir     = Path.Combine(PublicFunc.GetDeployDirectory(), PublicFunc.GetConfigByKey_AppSettings("Form_Path"));

            if (!string.IsNullOrEmpty(formDir) && Directory.Exists(formDir))
            {
                var files = Directory.GetFiles(formDir, "*.html", SearchOption.AllDirectories);
                files.ForEach(m => returnFiles.Add(PublicFunc.GetConfigByKey_AppSettings("TemplatePrefix") + Path.GetFileName(m)));
            }
            return(ApiOk(returnFiles));
        }
コード例 #4
0
        public ApiResponse ImportUser()
        {
            string uploadPath = Path.Combine(
                PublicFunc.GetDeployDirectory(),
                PublicFunc.GetConfigByKey_AppSettings("Upload_Path"));
            HttpPostedFile file    = HttpContext.Current.Request.Files[0];
            string         strPath = Path.Combine(uploadPath, file.FileName);

            if (!Directory.Exists(uploadPath))
            {
                Directory.CreateDirectory(uploadPath);
            }
            file.SaveAs(strPath);

            var model = new TramUserImportListModel()
            {
                Lists = new List <TeamUserImportModel>(),
                User  = new UserInfo()
                {
                    //上传文件时,body为空,在ApiJsonMediaTypeFormatter中ReadFromStreamAsync时要出错
                    //在解决该问题之前,现在这里设置一下登录用户的UserID
                    UserID = "0"//ActionContext.Request.Content.Headers.GetValues("UserID").FirstOrDefault()
                }
            };
            var list = model.Lists;

            var ds = Utility.ExcelToDataSet(strPath, "select * from [Sheet1$]");

            if (ds != null && ds.Tables[0] != null)
            {
                foreach (DataRow row in ds.Tables[0].Rows)
                {
                    list.Add(new TeamUserImportModel
                    {
                        TeamName = row[0].ToString(),
                        UserID   = row[1].ToString(),
                        UserName = row[2].ToString()
                    });
                }
            }

            if (list.Count > 0)
            {
                userService.ImportTeamUser(model);
            }
            if (File.Exists(strPath))
            {
                File.Delete(strPath);
            }
            return(ApiOk(list));
        }
コード例 #5
0
        public ApiResponse ImportTiKu()
        {
            string uploadPath = Path.Combine(
                PublicFunc.GetDeployDirectory(),
                PublicFunc.GetConfigByKey_AppSettings("Upload_Path"));
            HttpPostedFile file = HttpContext.Current.Request.Files[0];
            //var file = new { FileName = "题库.xls" };
            string strPath = Path.Combine(uploadPath, file.FileName);

            if (!Directory.Exists(uploadPath))
            {
                Directory.CreateDirectory(uploadPath);
            }
            file.SaveAs(strPath);

            var baseModel = GetModelBase();

            var ds    = Utility.ExcelToDataSet(strPath, "select * from [Sheet0$]");
            var model = new TiKuMasterModel();

            model.User = baseModel.User;
            if (ds != null && ds.Tables[0] != null)
            {
                model.TiKuName     = file.FileName.Substring(0, file.FileName.LastIndexOf('.'));
                model.InDate       = DateTime.Now;
                model.InUser       = baseModel.User.UserID;
                model.LastEditDate = DateTime.Now;
                model.LastEditUser = baseModel.User.UserID;
                model.Status       = (int)TiKuStatus.WaitForActive;
                model.Details      = new List <TiKuDetailModel>();
                foreach (DataRow row in ds.Tables[0].Rows)
                {
                    model.Details.Add(new TiKuDetailModel
                    {
                        TeamName    = row["TeamName"].ToString(),
                        ProcessName = row["ProcessName"].ToString(),
                        NodeName    = row["NodeName"].ToString()
                    });
                }
            }

            tiKuService.CreateTiKu(model);

            if (File.Exists(strPath))
            {
                File.Delete(strPath);
            }
            return(ApiOk());
        }
コード例 #6
0
        public ApiResponse UploadForm()
        {
            string uploadPath = Path.Combine(
                PublicFunc.GetDeployDirectory(),
                PublicFunc.GetConfigByKey_AppSettings("Form_Path"));
            HttpFileCollection files = HttpContext.Current.Request.Files;

            if (!Directory.Exists(uploadPath))
            {
                Directory.CreateDirectory(uploadPath);
            }

            foreach (string fileName in files)
            {
                HttpPostedFile file = files[fileName];
                if (file != null)
                {
                    string strPath = Path.Combine(uploadPath, file.FileName);
                    file.SaveAs(strPath);
                }
            }

            return(ApiOk());
        }