| | |
| | | using CommonHelper; |
| | | using GasolineBlend.BLL; |
| | | using GasolineBlend.Entity; |
| | | using SqlSugar; |
| | | using System; |
| | | using System.Collections.Generic; |
| | |
| | | using System.Web; |
| | | using System.Web.Mvc; |
| | | using System.Web.Razor.Tokenizer.Symbols; |
| | | using DocumentFormat.OpenXml.Packaging; |
| | | using DocumentFormat.OpenXml.Spreadsheet; |
| | | using DocumentFormat.OpenXml; |
| | | using System.Net.Http; |
| | | using OfficeOpenXml; |
| | | using WebGrease.Activities; |
| | | using ClosedXML.Excel; |
| | | |
| | | |
| | | namespace GasolineBlend.Controllers |
| | |
| | | try |
| | | { |
| | | var list = _acc.GetSubsidyDataList(PageNumber, PageSize, Keyword, CompanyName); |
| | | if (list == null) |
| | | { |
| | | return SuccessNoShow(data:"暂无此公司"); |
| | | } |
| | | var response = new |
| | | { |
| | | Data = list.Data, |
| | |
| | | /// <param name="CompanyName"></param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | public ActionResult GetMoonshot(string CompanyName) |
| | | public ActionResult GetPolicyApplied(string CompanyName) |
| | | { |
| | | try |
| | | { |
| | | var list = _acc.GetMoonshot(CompanyName); |
| | | return Json(list, JsonRequestBehavior.AllowGet); |
| | | var list = _acc.GetPolicyApplied(CompanyName); |
| | | if (list == null) { |
| | | return SuccessNoShow(data: null); |
| | | } |
| | | var response = new |
| | | { |
| | | Data = list.Data, |
| | | }; |
| | | return SuccessNoShow(data: response); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | LogHelper.Write(Level.Error, "访问Moonshot GetMoonshot", e, OperatorProvider.Instance.Current == null ? "GuestEx" : OperatorProvider.Instance.Current.LoginName); |
| | | LogHelper.Write(Level.Error, "访问Moonshot GetPolicyApplied", e, OperatorProvider.Instance.Current == null ? "GuestEx" : OperatorProvider.Instance.Current.LoginName); |
| | | return Error(); |
| | | } |
| | | } |
| | |
| | | /// <param name="CompanyName"></param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | public ActionResult GetMoonshotBlurry(string CompanyName) |
| | | public ActionResult GetPolicyAnswer(string CompanyName) |
| | | { |
| | | try |
| | | { |
| | | var list = _acc.GetMoonshotBlurry(CompanyName); |
| | | return Json(list, JsonRequestBehavior.AllowGet); |
| | | var id = OperatorProvider.Instance.Current.UserId; |
| | | if (id == 0) |
| | | { |
| | | return Error(message: "账户未登录!请登录后查询", data: "-1"); |
| | | } |
| | | string list = _acc.GetPolicyAnswer(id, CompanyName); |
| | | |
| | | if (list==null) { |
| | | return Error(); |
| | | } |
| | | if (list == "-1") { |
| | | return Error(message: "今日政策洞察额度已经用完,如有需要请联系管理员!", data: "-1"); |
| | | } |
| | | var response = new |
| | | { |
| | | Data = list, |
| | | }; |
| | | return SuccessNoShow(data: response); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | LogHelper.Write(Level.Error, "访问Moonshot GetMoonshotBlurry", e, OperatorProvider.Instance.Current == null ? "GuestEx" : OperatorProvider.Instance.Current.LoginName); |
| | | LogHelper.Write(Level.Error, "访问Moonshot GetPolicyAnswer", e, OperatorProvider.Instance.Current == null ? "GuestEx" : OperatorProvider.Instance.Current.LoginName); |
| | | return Error(); |
| | | } |
| | | } |
| | | [HttpPost] |
| | | public ActionResult GetSaveExcel(string data) |
| | | { |
| | | try |
| | | { |
| | | var filePath = SaveDataToExcel(data); |
| | | var fileBytes = System.IO.File.ReadAllBytes(filePath); |
| | | return File(fileBytes, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "评分标准.xlsx"); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | LogHelper.Write(Level.Error, "GetSaveExcel请求过程中发生错误", e, OperatorProvider.Instance.Current == null ? "GuestEx" : OperatorProvider.Instance.Current.LoginName); |
| | | return Error(); |
| | | } |
| | | } |
| | | |
| | | public static string SaveDataToExcel(string data) |
| | | { |
| | | // 解析传输的数据 |
| | | var dataDict = ParseData(data); |
| | | |
| | | // 创建或打开Excel文件 |
| | | //var filePath = "E:\\.NETproject\\RRkl\\RR_PolicyControl_MVC\\RR_PolicyControl_MVC\\GasolineBlend\\评分标准.xlsx"; |
| | | var filePath = "C:\\inetpub\\RRPolicy\\HaoshuRobot\\评分标准.xlsx"; |
| | | var workbook = new XLWorkbook(filePath); |
| | | var worksheet = workbook.Worksheet(1) ?? workbook.AddWorksheet("Sheet1"); |
| | | |
| | | // 将数据填入F列 |
| | | int rowIndex = 1; |
| | | foreach (var entry in dataDict) |
| | | { |
| | | worksheet.Cell(rowIndex, 6).Value = entry.Key; |
| | | worksheet.Cell(rowIndex, 7).Value = entry.Value; |
| | | rowIndex++; |
| | | } |
| | | |
| | | // 保存文件 |
| | | workbook.Save(); |
| | | |
| | | return filePath; |
| | | } |
| | | |
| | | private static Dictionary<string, int> ParseData(string data) |
| | | { |
| | | if (!string.IsNullOrEmpty(data) && data.EndsWith(":")) |
| | | { |
| | | data = data.Substring(0, data.Length - 1); |
| | | } |
| | | var dataDict = new Dictionary<string, int>(); |
| | | var entries = data.Split(','); |
| | | foreach (var entry in entries) |
| | | { |
| | | var parts = entry.Split(':'); |
| | | if (parts.Length == 2 && int.TryParse(parts[1], out int value)) |
| | | { |
| | | dataDict[parts[0].Trim()] = value; |
| | | } |
| | | } |
| | | |
| | | return dataDict; |
| | | } |
| | | } |
| | | } |