Exemplo n.º 1
0
        public async Task <HandleResult> GetSeo([FromBody] JObject form)
        {
            string num       = form["num"].ToStr();
            string columnNum = form["columnNum"].ToStr();

            if (num.IsEmpty() || columnNum.IsEmpty())
            {
                return(HandleResult.Error("无效数据"));
            }

            var data = await _service.GetByNumAndColumn(columnNum, num);

            if (data == null)
            {
                return(HandleResult.Error("无效数据"));
            }

            var content = new ContentData(data);

            return(HandleResult.Success(new
            {
                content.SeoTitle,
                content.SeoKeyword,
                content.SeoDesc
            }));
        }
Exemplo n.º 2
0
        public async Task <HandleResult> Export([FromBody] JObject form)
        {
            string columnNum = form["columnNum"].ToStr();

            if (columnNum.IsEmpty())
            {
                return(HandleResult.Error());
            }


            var fields = await _columnFieldService.GetByColumnNum(columnNum);

            var dataResp = await _service.PageByColumn(columnNum, new SqlServerPageRequest
            {
                Current = 1,
                Size    = 1000
            });

            if (dataResp.Data.Count() <= 0)
            {
                return(HandleResult.Error("未能查询出数据"));
            }

            var fullPath     = Path.GetFullPath("wwwroot/Export.xls");
            var webPath      = $"/temp/数据导出_{DateTime.Now:yyyyMMddHHmmss}.xls";
            var saveFullPath = Path.GetFullPath($"wwwroot/{webPath}");

            using (var excel = new ExcelUtil(fullPath))
            {
                var column = new ExcelRowItem();

                var columnIndex = 0;
                foreach (var columnField in fields)
                {
                    column.Add(columnField.Explain, excel.GetColumnLetter(columnIndex));
                    columnIndex++;
                }
                excel.SetRowValue(0, column);

                var contentData = dataResp.Data.ToList();

                excel.CirculateLetterSetValue(1, (dataIndex, row) =>
                {
                    var item = contentData[dataIndex];
                    var contentDataColumnIndex = 0;

                    foreach (var columnField in fields)
                    {
                        row.Add(item[columnField.Name].ToStr(), excel.GetColumnLetter(contentDataColumnIndex));
                        contentDataColumnIndex++;
                    }

                    return(contentData.Count - 1 > dataIndex);
                });

                excel.Save(saveFullPath);
            }

            return(HandleResult.Success(webPath));
        }
Exemplo n.º 3
0
        public async Task <HandleResult> Edit(JObject form, string accountNum)
        {
            var num       = form["num"].ToStr();
            var columnNum = form["columnNum"].ToStr();

            if (columnNum.IsEmpty())
            {
                return(HandleResult.Error("无效的提交数据"));
            }

            var cm = await _columnService.GetModelByNum(columnNum);

            if (cm == null)
            {
                return(HandleResult.Error("无效的提交数据"));
            }

            var column = cm?.Column;
            var model  = cm?.ModelTable;

            var oldData = num.IsEmpty() ? null : await _dapper.GetByNum(model.SqlCategoryTableName, num);

            var id        = oldData?.Id ?? 0;
            var parentNum = form["parentNum"].ToStr();

            if (oldData != null && oldData.Num == parentNum)
            {
                return(HandleResult.Error("父类别不能是自身"));
            }

            var contentEdit = new DynamicTableSqlHelper(model.SqlCategoryTableName);

            contentEdit.AddFieldAndValue("Name", form["name"].ToStr());
            contentEdit.AddFieldAndValue("ParentNum", parentNum);

            if (id > 0)
            {
                contentEdit.AddFieldAndValue("UpdateAccountNum", accountNum);
                contentEdit.AddFieldAndValue("UpdateDate", DateTime.Now);
            }
            else
            {
                contentEdit.AddFieldAndValue("Num", RandomHelper.CreateNum());
                contentEdit.AddFieldAndValue("CreateDate", DateTime.Now);
                contentEdit.AddFieldAndValue("UpdateDate", DateTime.Now);
                contentEdit.AddFieldAndValue("CreateAccountNum", accountNum);
                contentEdit.AddFieldAndValue("UpdateAccountNum", accountNum);
                contentEdit.AddFieldAndValue("IsDel", false);
                contentEdit.AddFieldAndValue("Status", 0);
                contentEdit.AddFieldAndValue("SiteNum", column.SiteNum);
                contentEdit.AddFieldAndValue("ColumnNum", columnNum);
            }

            var sql = id > 0 ? contentEdit.GetUpdateSql(id) : contentEdit.GetAddSql();
            var res = await _dapper.Execute(sql, contentEdit.GetValue());

            return(res > 0 ? HandleResult.Success() : HandleResult.Error("操作失败"));
        }
Exemplo n.º 4
0
        public async Task <HandleResult> Add(DynamicTableSqlHelper form)
        {
            var sql = form.GetAddSql();

            if (sql.IsEmpty())
            {
                return(HandleResult.Error());
            }

            var res = await _dapper.Execute(sql, form.GetValue());

            return(res > 0 ? HandleResult.Success() : HandleResult.Error("操作失败"));
        }
Exemplo n.º 5
0
        /// <summary>
        ///     更新是否置顶
        /// </summary>
        /// <param name="columnNum"></param>
        /// <param name="num"></param>
        /// <param name="isTop"></param>
        /// <returns></returns>
        public async Task <HandleResult> UpdateIsTop(string columnNum, string num, bool isTop)
        {
            var cm = await _columnService.GetModelByNum(columnNum);

            if (cm == null || cm?.ModelTable == null)
            {
                return(HandleResult.Error());
            }

            var count = await _dapper.UpdateIsTop(cm?.ModelTable.SqlTableName, num, isTop);

            return(count > 0 ? HandleResult.Success() : HandleResult.Error(""));
        }
Exemplo n.º 6
0
        public async Task <HandleResult> Delete(string columnNum, string ids)
        {
            var cm = await _columnService.GetModelByNum(columnNum);

            if (cm == null)
            {
                return(HandleResult.Error());
            }

            var count = await _dapper.Delete(cm?.ModelTable.SqlCategoryTableName,
                                             ids.Split(new[] { "," }, StringSplitOptions.RemoveEmptyEntries));

            return(count > 0 ? HandleResult.Success() : HandleResult.Error(""));
        }
Exemplo n.º 7
0
        public async Task <HandleResult> Add(TModal modal)
        {
            var id = await GetDapper().Add(modal);

            if (id > 0)
            {
                var property = modal.GetType().GetProperty("Id");
                if (property != null)
                {
                    property.SetValue(modal, id);
                }
            }

            return(HandleResult.Success());
        }
Exemplo n.º 8
0
        public async Task <HandleResult> FormFields([FromBody] JObject form)
        {
            var id   = form["id"].ToInt();
            var role = id > 0 ? await _service.GetById(id) : new Role();

            if (role == null)
            {
                return(HandleResult.Error("无效数据"));
            }

            return(HandleResult.Success(new
            {
                EditData = role,
                Field = ReactForm.ToFormFields <Role>(role.Id > 0)
            }));
        }
Exemplo n.º 9
0
        public async Task <HandleResult> GetSeo([FromBody] JObject form)
        {
            string num = form["num"].ToStr();

            if (num.IsEmpty())
            {
                return(HandleResult.Error("无效数据"));
            }

            var site = await _service.GetByNum(num);

            if (site == null)
            {
                return(HandleResult.Error("无效数据"));
            }

            return(HandleResult.Success(new
            {
                site.SeoTitle,
                site.SeoKeyword,
                site.SeoDesc
            }));
        }
Exemplo n.º 10
0
        public HandleResult FuillImportRowData <T>(IEnumerable <T> data, int startRowIndex,
                                                   Func <T, string, int, string> getValueFunc)
        {
            if (_currentSheet == null)
            {
                return(HandleResult.Error("未能找到Sheet数据"));
            }
            if (data == null)
            {
                return(HandleResult.Error("没有要填充导入的数据"));
            }
            if (_currentSheet.LastRowNum < startRowIndex)
            {
                return(HandleResult.Error("起始行超过Sheet最大行数"));
            }

            var list = data.ToList();

            try
            {
                for (int dataIndex = 0, currentRowIndex = startRowIndex;
                     dataIndex < list.Count;
                     dataIndex++, currentRowIndex++)
                {
                    if (dataIndex < list.Count - 1)
                    {
                        _currentSheet.CreateRow(currentRowIndex + 1);
                        _currentSheet.CopyRow(currentRowIndex, currentRowIndex + 1);
                    }


                    T    item = list[dataIndex];
                    IRow row  = _currentSheet.GetRow(currentRowIndex);

                    foreach (var rowCell in row.Cells)
                    {
                        string cellValue = ExcelHelper.GetCellValue(rowCell).ToStr();

                        var macths = _placeholderRegex.Matches(cellValue);
                        if (macths.Count <= 0)
                        {
                            continue;
                        }

                        foreach (Match macth in macths)
                        {
                            string placeholder = macth.Groups[1].ToStr();

                            var newVal = "";
                            if (macth.Groups.Count == 2)
                            {
                                newVal = getValueFunc.Invoke(item, placeholder, dataIndex);
                            }

                            cellValue = cellValue.Replace(macth.ToString(), newVal);
                        }

                        rowCell.SetCellValue(cellValue);
                    }
                }
            }
            catch (Exception ex)
            {
            }

            return(HandleResult.Success());
        }
Exemplo n.º 11
0
 public async Task <HandleResult> CascaderData([FromBody] JObject form)
 {
     return(HandleResult.Success(await _service.GetCascaderData()));
 }
Exemplo n.º 12
0
        public async Task <HandleResult> Clear(string[] columnNums)
        {
            var count = await GetDapper().Clear(columnNums);

            return(count > 0 ? HandleResult.Success() : HandleResult.Error(""));
        }
Exemplo n.º 13
0
        public async Task <HandleResult> Add(List <TModal> modal)
        {
            var count = await GetDapper().Add(modal);

            return(count > 0 ? HandleResult.Success() : HandleResult.Error(""));
        }
Exemplo n.º 14
0
        public async Task <HandleResult> Removed(string tableName, List <int> ids)
        {
            var count = await _dapper.Recycle(tableName, ids, false);

            return(count > 0 ? HandleResult.Success() : HandleResult.Error(""));
        }
Exemplo n.º 15
0
        /// <summary>
        ///     删除数据
        /// </summary>
        /// <param name="tableName"></param>
        /// <param name="ids"></param>
        /// <returns></returns>
        public async Task <HandleResult> Delete(string tableName, List <int> ids)
        {
            var count = await _dapper.Delete(tableName, ids);

            return(count > 0 ? HandleResult.Success() : HandleResult.Error(""));
        }
Exemplo n.º 16
0
        public async Task <HandleResult> UpdateClickCount(string tableName, int id, int count)
        {
            var exCount = await _dapper.UpdateClickCount(tableName, id, count);

            return(exCount > 0 ? HandleResult.Success() : HandleResult.Error(""));
        }