public ResultModel Search(SearchLanguageModel model)
        {
            return(new ResultModel
            {
                Data = this._database.RunQuery(db =>
                {
                    var query = db.MultiLanguage
                                .Query()
                                .Where(
                        db.MultiLanguage.LangKey.like("%" + model.KeyWord + "%") ||
                        db.MultiLanguage.NameTH.like("%" + model.KeyWord + "%") ||
                        db.MultiLanguage.NameEng.like("%" + model.KeyWord + "%") ||
                        db.MultiLanguage.NameChs.like("%" + model.KeyWord + "%") ||
                        db.MultiLanguage.NameHK.like("%" + model.KeyWord + "%")       //add by liujc
                        );
                    if (model.LanguageId.HasValue)
                    {
                        query = query.Where(db.MultiLanguage.ID == model.LanguageId.Value);
                    }
                    if (model.DataType.HasValue)
                    {
                        query = query.Where(db.MultiLanguage.DataType == model.DataType.Value);
                    }

                    query = query.OrderByDescending(db.MultiLanguage.CreateDT);
                    return new SimpleDataPagedList <LanguageModel>(query, model.PagedIndex, model.PagedSize);
                })
            });
        }
Exemple #2
0
        public FileResult ExportCondition(SearchLanguageModel searchModel)
        {
            ResultModel resultModel = this._languageService.Export(searchModel);

            byte[] fileBytes = resultModel.Data;
            return(this.File(fileBytes, "text/xls", DateTime.Now.ToString("yyyyMMddhhmmss") + ".xlsx"));
        }
        /// <summary>
        /// 根据条件导出数据
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public ResultModel Export(SearchLanguageModel model)
        {
            SimpleExpression whereExpr = new SimpleExpression(1, 1, SimpleExpressionType.Equal);

            if (!string.IsNullOrEmpty(model.KeyWord))
            {
                whereExpr = new SimpleExpression(whereExpr, this._database.Db.MultiLanguage.LangKey.Like("%" + model.KeyWord + "%"), SimpleExpressionType.And);
            }
            if (model.DataType.HasValue)
            {
                whereExpr = new SimpleExpression(whereExpr, new SimpleExpression(this._database.Db.MultiLanguage.DataType, model.DataType.Value, SimpleExpressionType.Equal), SimpleExpressionType.And);
            }

            var result = new ResultModel
            {
                Data = this._database.RunQuery(db =>
                {
                    IList <LanguageModel> list = db.MultiLanguage
                                                 .Query()
                                                 .Where(whereExpr)
                                                 .ToList <LanguageModel>();


                    using (var stream = new MemoryStream())
                    {
                        using (var xlPackage = new ExcelPackage(stream))
                        {
                            var worksheet = xlPackage.Workbook.Worksheets.Add("sheet1");

                            var properties = new[]
                            {
                                "变量名称",
                                "zh-CN",
                                "zh_HK",//"th-TH",update by liujc
                                "en-US",
                                "remark",
                                "type"
                            };

                            //worksheet.Cells.Style.ShrinkToFit = true;
                            worksheet.Cells.Style.Font.Name = "宋体";
                            worksheet.Cells.Style.Font.Size = 11;

                            for (var i = 0; i < properties.Length; i++)
                            {
                                worksheet.Cells[1, i + 1].Value = properties[i];
                                //worksheet.View.FreezePanes(1, i + 1);
                                //worksheet.Cells[1, i + 1].Style.Locked = true;
                            }

                            var row = 2;

                            foreach (var languageModel in list)
                            {
                                var col = 1;

                                worksheet.Cells[row, col].Value = languageModel.LangKey;
                                col++;

                                worksheet.Cells[row, col].Value = languageModel.NameChs;

                                col++;
                                //worksheet.Cells[row, col].Value = languageModel.NameTH;
                                worksheet.Cells[row, col].Value = languageModel.NameHK;//update by liujc

                                col++;
                                worksheet.Cells[row, col].Value = languageModel.NameEng;

                                col++;
                                worksheet.Cells[row, col].Value = languageModel.NameOther;
                                col++;
                                worksheet.Cells[row, col].Value = languageModel.DataType;
                                row++;
                            }

                            xlPackage.Save();
                        }

                        return(stream.ToArray());
                    }
                })
            };

            return(result);
        }
Exemple #4
0
        public JsonResult Search(SearchLanguageModel model)
        {
            var result = this._languageService.Search(model);

            return(this.Json(new { rows = result.Data, total = result.Data.TotalCount }, JsonRequestBehavior.AllowGet));
        }