From ec2622743ac6dd9704c05d2575bd9e5a12a642a3 Mon Sep 17 00:00:00 2001 From: gaoxq <376340421@qq.com> Date: Tue, 9 Dec 2025 18:02:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=89=8D=E7=AB=AFvue?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/erp/web/ErpAccountController.java | 216 +++++++------ .../dataReport/erp/components/ChartGauge.vue | 295 ++++++++++++++++++ .../dataReport/erp/components/ChartLine.vue | 168 ++++++++++ .../dataReport/erp/components/ChartPie.vue | 215 +++++++++++++ .../components/chartBar.vue} | 2 +- .../biz/views/biz/dataReport/erp/index.vue | 29 ++ .../layouts/views/desktop/analysis/index.vue | 4 +- web-vue/packages/erp/api/erp/account.ts | 3 + 8 files changed, 825 insertions(+), 107 deletions(-) create mode 100644 web-vue/packages/biz/views/biz/dataReport/erp/components/ChartGauge.vue create mode 100644 web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLine.vue create mode 100644 web-vue/packages/biz/views/biz/dataReport/erp/components/ChartPie.vue rename web-vue/packages/biz/views/biz/dataReport/{index.vue => erp/components/chartBar.vue} (99%) create mode 100644 web-vue/packages/biz/views/biz/dataReport/erp/index.vue diff --git a/web-api/src/main/java/com/jeesite/modules/erp/web/ErpAccountController.java b/web-api/src/main/java/com/jeesite/modules/erp/web/ErpAccountController.java index f0d9fc25..31ce1ff5 100644 --- a/web-api/src/main/java/com/jeesite/modules/erp/web/ErpAccountController.java +++ b/web-api/src/main/java/com/jeesite/modules/erp/web/ErpAccountController.java @@ -1,6 +1,7 @@ package com.jeesite.modules.erp.web; import java.util.List; + import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; @@ -26,6 +27,7 @@ import com.jeesite.modules.erp.service.ErpAccountService; /** * 账户信息Controller + * * @author gaoxq * @version 2025-11-29 */ @@ -33,114 +35,120 @@ import com.jeesite.modules.erp.service.ErpAccountService; @RequestMapping(value = "${adminPath}/erp/account") public class ErpAccountController extends BaseController { - private final ErpAccountService erpAccountService; + private final ErpAccountService erpAccountService; - public ErpAccountController(ErpAccountService erpAccountService) { - this.erpAccountService = erpAccountService; - } - - /** - * 获取数据 - */ - @ModelAttribute - public ErpAccount get(String accountId, boolean isNewRecord) { - return erpAccountService.get(accountId, isNewRecord); - } - - /** - * 查询列表 - */ - @RequiresPermissions("erp:account:view") - @RequestMapping(value = {"list", ""}) - public String list(ErpAccount erpAccount, Model model) { - model.addAttribute("erpAccount", erpAccount); - return "modules/erp/erpAccountList"; - } - - /** - * 查询列表数据 - */ - @RequiresPermissions("erp:account:view") - @RequestMapping(value = "listData") - @ResponseBody - public Page listData(ErpAccount erpAccount, HttpServletRequest request, HttpServletResponse response) { - erpAccount.setPage(new Page<>(request, response)); - Page page = erpAccountService.findPage(erpAccount); - return page; - } + public ErpAccountController(ErpAccountService erpAccountService) { + this.erpAccountService = erpAccountService; + } - /** - * 查看编辑表单 - */ - @RequiresPermissions("erp:account:view") - @RequestMapping(value = "form") - public String form(ErpAccount erpAccount, Model model) { - model.addAttribute("erpAccount", erpAccount); - return "modules/erp/erpAccountForm"; - } + /** + * 获取数据 + */ + @ModelAttribute + public ErpAccount get(String accountId, boolean isNewRecord) { + return erpAccountService.get(accountId, isNewRecord); + } - /** - * 保存数据 - */ - @RequiresPermissions("erp:account:edit") - @PostMapping(value = "save") - @ResponseBody - public String save(@Validated ErpAccount erpAccount) { - erpAccountService.save(erpAccount); - return renderResult(Global.TRUE, text("保存账户信息成功!")); - } + /** + * 查询列表 + */ + @RequiresPermissions("erp:account:view") + @RequestMapping(value = {"list", ""}) + public String list(ErpAccount erpAccount, Model model) { + model.addAttribute("erpAccount", erpAccount); + return "modules/erp/erpAccountList"; + } - /** - * 导出数据 - */ - @RequiresPermissions("erp:account:view") - @RequestMapping(value = "exportData") - public void exportData(ErpAccount erpAccount, HttpServletResponse response) { - List list = erpAccountService.findList(erpAccount); - String fileName = "账户信息" + DateUtils.getDate("yyyyMMddHHmmss") + ".xlsx"; - try(ExcelExport ee = new ExcelExport("账户信息", ErpAccount.class)){ - ee.setDataList(list).write(response, fileName); - } - } + /** + * 查询列表数据 + */ + @RequiresPermissions("erp:account:view") + @RequestMapping(value = "listData") + @ResponseBody + public Page listData(ErpAccount erpAccount, HttpServletRequest request, HttpServletResponse response) { + erpAccount.setPage(new Page<>(request, response)); + Page page = erpAccountService.findPage(erpAccount); + return page; + } - /** - * 下载模板 - */ - @RequiresPermissions("erp:account:view") - @RequestMapping(value = "importTemplate") - public void importTemplate(HttpServletResponse response) { - ErpAccount erpAccount = new ErpAccount(); - List list = ListUtils.newArrayList(erpAccount); - String fileName = "账户信息模板.xlsx"; - try(ExcelExport ee = new ExcelExport("账户信息", ErpAccount.class, Type.IMPORT)){ - ee.setDataList(list).write(response, fileName); - } - } + /** + * 查看编辑表单 + */ + @RequiresPermissions("erp:account:view") + @RequestMapping(value = "form") + public String form(ErpAccount erpAccount, Model model) { + model.addAttribute("erpAccount", erpAccount); + return "modules/erp/erpAccountForm"; + } + + /** + * 保存数据 + */ + @RequiresPermissions("erp:account:edit") + @PostMapping(value = "save") + @ResponseBody + public String save(@Validated ErpAccount erpAccount) { + erpAccountService.save(erpAccount); + return renderResult(Global.TRUE, text("保存账户信息成功!")); + } + + /** + * 导出数据 + */ + @RequiresPermissions("erp:account:view") + @RequestMapping(value = "exportData") + public void exportData(ErpAccount erpAccount, HttpServletResponse response) { + List list = erpAccountService.findList(erpAccount); + String fileName = "账户信息" + DateUtils.getDate("yyyyMMddHHmmss") + ".xlsx"; + try (ExcelExport ee = new ExcelExport("账户信息", ErpAccount.class)) { + ee.setDataList(list).write(response, fileName); + } + } + + /** + * 下载模板 + */ + @RequiresPermissions("erp:account:view") + @RequestMapping(value = "importTemplate") + public void importTemplate(HttpServletResponse response) { + ErpAccount erpAccount = new ErpAccount(); + List list = ListUtils.newArrayList(erpAccount); + String fileName = "账户信息模板.xlsx"; + try (ExcelExport ee = new ExcelExport("账户信息", ErpAccount.class, Type.IMPORT)) { + ee.setDataList(list).write(response, fileName); + } + } + + /** + * 导入数据 + */ + @ResponseBody + @RequiresPermissions("erp:account:edit") + @PostMapping(value = "importData") + public String importData(MultipartFile file) { + try { + String message = erpAccountService.importData(file); + return renderResult(Global.TRUE, "posfull:" + message); + } catch (Exception ex) { + return renderResult(Global.FALSE, "posfull:" + ex.getMessage()); + } + } + + /** + * 删除数据 + */ + @RequiresPermissions("erp:account:edit") + @RequestMapping(value = "delete") + @ResponseBody + public String delete(ErpAccount erpAccount) { + erpAccountService.delete(erpAccount); + return renderResult(Global.TRUE, text("删除账户信息成功!")); + } + + @RequestMapping(value = "listAll") + @ResponseBody + public List listAll(ErpAccount erpAccount) { + return erpAccountService.findList(erpAccount); + } - /** - * 导入数据 - */ - @ResponseBody - @RequiresPermissions("erp:account:edit") - @PostMapping(value = "importData") - public String importData(MultipartFile file) { - try { - String message = erpAccountService.importData(file); - return renderResult(Global.TRUE, "posfull:"+message); - } catch (Exception ex) { - return renderResult(Global.FALSE, "posfull:"+ex.getMessage()); - } - } - - /** - * 删除数据 - */ - @RequiresPermissions("erp:account:edit") - @RequestMapping(value = "delete") - @ResponseBody - public String delete(ErpAccount erpAccount) { - erpAccountService.delete(erpAccount); - return renderResult(Global.TRUE, text("删除账户信息成功!")); - } - } \ No newline at end of file diff --git a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartGauge.vue b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartGauge.vue new file mode 100644 index 00000000..8ae41f94 --- /dev/null +++ b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartGauge.vue @@ -0,0 +1,295 @@ + + + + + diff --git a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLine.vue b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLine.vue new file mode 100644 index 00000000..d75c3a17 --- /dev/null +++ b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLine.vue @@ -0,0 +1,168 @@ + + + + + diff --git a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartPie.vue b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartPie.vue new file mode 100644 index 00000000..cf4dc9f5 --- /dev/null +++ b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartPie.vue @@ -0,0 +1,215 @@ + + + + + diff --git a/web-vue/packages/biz/views/biz/dataReport/index.vue b/web-vue/packages/biz/views/biz/dataReport/erp/components/chartBar.vue similarity index 99% rename from web-vue/packages/biz/views/biz/dataReport/index.vue rename to web-vue/packages/biz/views/biz/dataReport/erp/components/chartBar.vue index 9509b139..ff368447 100644 --- a/web-vue/packages/biz/views/biz/dataReport/index.vue +++ b/web-vue/packages/biz/views/biz/dataReport/erp/components/chartBar.vue @@ -121,4 +121,4 @@ onUnmounted(() => { :deep(.echarts-label) { font-family: 'Microsoft YaHei', sans-serif; } - \ No newline at end of file + diff --git a/web-vue/packages/biz/views/biz/dataReport/erp/index.vue b/web-vue/packages/biz/views/biz/dataReport/erp/index.vue new file mode 100644 index 00000000..494d25cb --- /dev/null +++ b/web-vue/packages/biz/views/biz/dataReport/erp/index.vue @@ -0,0 +1,29 @@ + + + + + diff --git a/web-vue/packages/core/layouts/views/desktop/analysis/index.vue b/web-vue/packages/core/layouts/views/desktop/analysis/index.vue index 07538556..76e1ac37 100644 --- a/web-vue/packages/core/layouts/views/desktop/analysis/index.vue +++ b/web-vue/packages/core/layouts/views/desktop/analysis/index.vue @@ -10,7 +10,7 @@
- +
@@ -121,4 +121,4 @@ onMounted(() => { flex-direction: column; height: 100%; } - \ No newline at end of file + diff --git a/web-vue/packages/erp/api/erp/account.ts b/web-vue/packages/erp/api/erp/account.ts index f778311a..29843be7 100644 --- a/web-vue/packages/erp/api/erp/account.ts +++ b/web-vue/packages/erp/api/erp/account.ts @@ -30,6 +30,9 @@ export interface ErpAccount extends BasicModel { export const erpAccountList = (params?: ErpAccount | any) => defHttp.get({ url: adminPath + '/erp/account/list', params }); + +export const erpAccountListAll = (params?: ErpAccount | any) => + defHttp.get({ url: adminPath + '/erp/account/listAll', params }); export const erpAccountListData = (params?: ErpAccount | any) => defHttp.post>({ url: adminPath + '/erp/account/listData', params });