From d409ceda8d7259d53c2d05c49675e3bc3e2ac76a Mon Sep 17 00:00:00 2001 From: gaoxq <376340421@qq.com> Date: Sat, 13 Dec 2025 20:10:47 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E9=A2=84=E8=AD=A6=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/biz/dao/BizDataReportUserDao.java | 15 ++ .../modules/biz/entity/BizDataReport.java | 2 +- .../modules/biz/entity/BizDataReportUser.java | 98 ++++++++ .../biz/service/BizDataReportUserService.java | 134 +++++++++++ .../biz/web/BizDataReportUserController.java | 154 +++++++++++++ .../modules/biz/BizDataReportUserDao.xml | 15 ++ .../packages/biz/api/biz/dataReportUser.ts | 54 +++++ .../erp/components/ChartBarAccount.vue | 2 +- .../erp/components/ChartBarCycle.vue | 2 +- .../erp/components/ChartLineExp.vue | 2 +- .../erp/components/ChartLineInc.vue | 2 +- .../erp/components/ChartLineRatio.vue | 2 +- .../erp/components/ChartLineType.vue | 2 +- .../dataReport/erp/components/ChartPie.vue | 2 +- .../biz/views/biz/dataReport/index.vue | 6 +- .../biz/views/biz/dataReport/user/form.vue | 120 ++++++++++ .../views/biz/dataReport/user/formImport.vue | 103 +++++++++ .../biz/views/biz/dataReport/user/list.vue | 206 +++++++++++++++++ .../biz/views/biz/dataReportUser/form.vue | 113 +++++++++ .../views/biz/dataReportUser/formImport.vue | 103 +++++++++ .../biz/views/biz/dataReportUser/list.vue | 214 ++++++++++++++++++ .../biz/views/biz/dataReportUser/select.ts | 107 +++++++++ .../biz/views/biz/municipalities/form.vue | 2 +- .../workbench/components/MySchedule.vue | 16 +- 24 files changed, 1460 insertions(+), 16 deletions(-) create mode 100644 web-api/src/main/java/com/jeesite/modules/biz/dao/BizDataReportUserDao.java create mode 100644 web-api/src/main/java/com/jeesite/modules/biz/entity/BizDataReportUser.java create mode 100644 web-api/src/main/java/com/jeesite/modules/biz/service/BizDataReportUserService.java create mode 100644 web-api/src/main/java/com/jeesite/modules/biz/web/BizDataReportUserController.java create mode 100644 web-api/src/main/resources/mappings/modules/biz/BizDataReportUserDao.xml create mode 100644 web-vue/packages/biz/api/biz/dataReportUser.ts create mode 100644 web-vue/packages/biz/views/biz/dataReport/user/form.vue create mode 100644 web-vue/packages/biz/views/biz/dataReport/user/formImport.vue create mode 100644 web-vue/packages/biz/views/biz/dataReport/user/list.vue create mode 100644 web-vue/packages/biz/views/biz/dataReportUser/form.vue create mode 100644 web-vue/packages/biz/views/biz/dataReportUser/formImport.vue create mode 100644 web-vue/packages/biz/views/biz/dataReportUser/list.vue create mode 100644 web-vue/packages/biz/views/biz/dataReportUser/select.ts diff --git a/web-api/src/main/java/com/jeesite/modules/biz/dao/BizDataReportUserDao.java b/web-api/src/main/java/com/jeesite/modules/biz/dao/BizDataReportUserDao.java new file mode 100644 index 00000000..e3f0953a --- /dev/null +++ b/web-api/src/main/java/com/jeesite/modules/biz/dao/BizDataReportUserDao.java @@ -0,0 +1,15 @@ +package com.jeesite.modules.biz.dao; + +import com.jeesite.common.dao.CrudDao; +import com.jeesite.common.mybatis.annotation.MyBatisDao; +import com.jeesite.modules.biz.entity.BizDataReportUser; + +/** + * 指标用户DAO接口 + * @author gaoxq + * @version 2025-12-13 + */ +@MyBatisDao(dataSourceName="work") +public interface BizDataReportUserDao extends CrudDao { + +} \ No newline at end of file diff --git a/web-api/src/main/java/com/jeesite/modules/biz/entity/BizDataReport.java b/web-api/src/main/java/com/jeesite/modules/biz/entity/BizDataReport.java index bf6ae50d..62fae6c1 100644 --- a/web-api/src/main/java/com/jeesite/modules/biz/entity/BizDataReport.java +++ b/web-api/src/main/java/com/jeesite/modules/biz/entity/BizDataReport.java @@ -37,7 +37,7 @@ import java.io.Serial; @Column(name = "image", attrName = "image", label = "看板图标", isQuery = false), @Column(name = "sorting", attrName = "sorting", label = "排序", isQuery = false), @Column(name = "remark", attrName = "remark", label = "看板描述"), -}, orderBy = "a.id DESC" +}, orderBy = "a.create_time DESC" ) @Data public class BizDataReport extends DataEntity implements Serializable { diff --git a/web-api/src/main/java/com/jeesite/modules/biz/entity/BizDataReportUser.java b/web-api/src/main/java/com/jeesite/modules/biz/entity/BizDataReportUser.java new file mode 100644 index 00000000..e1a094da --- /dev/null +++ b/web-api/src/main/java/com/jeesite/modules/biz/entity/BizDataReportUser.java @@ -0,0 +1,98 @@ +package com.jeesite.modules.biz.entity; + +import java.io.Serializable; +import java.util.Date; + +import com.jeesite.common.mybatis.annotation.JoinTable; +import com.jeesite.common.mybatis.annotation.JoinTable.Type; +import com.fasterxml.jackson.annotation.JsonFormat; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.Size; + +import com.jeesite.common.entity.DataEntity; +import com.jeesite.common.mybatis.annotation.Column; +import com.jeesite.common.mybatis.annotation.Table; +import com.jeesite.common.mybatis.mapper.query.QueryType; +import com.jeesite.common.utils.excel.annotation.ExcelField; +import com.jeesite.common.utils.excel.annotation.ExcelField.Align; +import com.jeesite.common.utils.excel.annotation.ExcelFields; +import lombok.Data; + +import java.io.Serial; + +/** + * 指标用户Entity + * + * @author gaoxq + * @version 2025-12-13 + */ +@Table(name = "biz_data_report_user", alias = "a", label = "指标用户信息", columns = { + @Column(name = "create_time", attrName = "createTime", label = "记录时间", isUpdate = false, isUpdateForce = true), + @Column(name = "id", attrName = "id", label = "主键ID", isPK = true), + @Column(name = "data_report_id", attrName = "dataReportId", label = "data_report_id"), + @Column(name = "user_code", attrName = "userCode", label = "user_code"), + @Column(name = "user_name", attrName = "userName", label = "user_name", isQuery = false), + @Column(name = "ustatus", attrName = "ustatus", label = "ustatus"), +}, joinTable = { + @JoinTable(type = Type.LEFT_JOIN, entity = BizDataReport.class, attrName = "this", alias = "b", + on = "a.data_report_id = b.id", + columns = { + @Column(name = "route_path", attrName = "routePath", label = "路由地址"), + @Column(name = "name", attrName = "name", label = "看板名称"), + @Column(name = "image", attrName = "image", label = "看板图标"), + @Column(name = "sorting", attrName = "sorting", label = "排序"), + }), +}, orderBy = "a.create_time DESC" +) +@Data +public class BizDataReportUser extends DataEntity implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + private Date createTime; // 记录时间 + private String dataReportId; // data_report_id + private String userCode; // user_code + private String userName; // user_name + private String ustatus; // ustatus + + private String routePath; + + private String name; + + private String image; + + private String sorting; + + @ExcelFields({ + @ExcelField(title = "记录时间", attrName = "createTime", align = Align.CENTER, sort = 10, dataFormat = "yyyy-MM-dd hh:mm"), + @ExcelField(title = "主键ID", attrName = "id", align = Align.CENTER, sort = 20), + @ExcelField(title = "看板名称", attrName = "name", align = Align.CENTER, sort = 30), + @ExcelField(title = "看板路由", attrName = "routePath", align = Align.CENTER, sort = 40), + @ExcelField(title = "用户名称", attrName = "userName", align = Align.CENTER, sort = 50), + @ExcelField(title = "状态", attrName = "ustatus", dictType = "ustatus", align = Align.CENTER, sort = 60), + }) + public BizDataReportUser() { + this(null); + } + + public BizDataReportUser(String id) { + super(id); + } + + public Date getCreateTime_gte() { + return sqlMap.getWhere().getValue("create_time", QueryType.GTE); + } + + public void setCreateTime_gte(Date createTime) { + sqlMap.getWhere().and("create_time", QueryType.GTE, createTime); + } + + public Date getCreateTime_lte() { + return sqlMap.getWhere().getValue("create_time", QueryType.LTE); + } + + public void setCreateTime_lte(Date createTime) { + sqlMap.getWhere().and("create_time", QueryType.LTE, createTime); + } + +} \ No newline at end of file diff --git a/web-api/src/main/java/com/jeesite/modules/biz/service/BizDataReportUserService.java b/web-api/src/main/java/com/jeesite/modules/biz/service/BizDataReportUserService.java new file mode 100644 index 00000000..ff9e0df2 --- /dev/null +++ b/web-api/src/main/java/com/jeesite/modules/biz/service/BizDataReportUserService.java @@ -0,0 +1,134 @@ +package com.jeesite.modules.biz.service; + +import java.util.List; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import com.jeesite.common.entity.Page; +import com.jeesite.common.service.CrudService; +import com.jeesite.modules.biz.entity.BizDataReportUser; +import com.jeesite.modules.biz.dao.BizDataReportUserDao; +import com.jeesite.common.service.ServiceException; +import com.jeesite.common.config.Global; +import com.jeesite.common.validator.ValidatorUtils; +import com.jeesite.common.utils.excel.ExcelImport; +import org.springframework.web.multipart.MultipartFile; +import jakarta.validation.ConstraintViolation; +import jakarta.validation.ConstraintViolationException; + +/** + * 指标用户Service + * @author gaoxq + * @version 2025-12-13 + */ +@Service +public class BizDataReportUserService extends CrudService { + + /** + * 获取单条数据 + * @param bizDataReportUser 主键 + */ + @Override + public BizDataReportUser get(BizDataReportUser bizDataReportUser) { + return super.get(bizDataReportUser); + } + + /** + * 查询分页数据 + * @param bizDataReportUser 查询条件 + * @param bizDataReportUser page 分页对象 + */ + @Override + public Page findPage(BizDataReportUser bizDataReportUser) { + return super.findPage(bizDataReportUser); + } + + /** + * 查询列表数据 + * @param bizDataReportUser 查询条件 + */ + @Override + public List findList(BizDataReportUser bizDataReportUser) { + return super.findList(bizDataReportUser); + } + + /** + * 保存数据(插入或更新) + * @param bizDataReportUser 数据对象 + */ + @Override + @Transactional + public void save(BizDataReportUser bizDataReportUser) { + super.save(bizDataReportUser); + } + + /** + * 导入数据 + * @param file 导入的数据文件 + */ + @Transactional + public String importData(MultipartFile file) { + if (file == null){ + throw new ServiceException(text("请选择导入的数据文件!")); + } + int successNum = 0; int failureNum = 0; + StringBuilder successMsg = new StringBuilder(); + StringBuilder failureMsg = new StringBuilder(); + try(ExcelImport ei = new ExcelImport(file, 2, 0)){ + List list = ei.getDataList(BizDataReportUser.class); + for (BizDataReportUser bizDataReportUser : list) { + try{ + ValidatorUtils.validateWithException(bizDataReportUser); + this.save(bizDataReportUser); + successNum++; + successMsg.append("
" + successNum + "、编号 " + bizDataReportUser.getId() + " 导入成功"); + } catch (Exception e) { + failureNum++; + String msg = "
" + failureNum + "、编号 " + bizDataReportUser.getId() + " 导入失败:"; + if (e instanceof ConstraintViolationException){ + ConstraintViolationException cve = (ConstraintViolationException)e; + for (ConstraintViolation violation : cve.getConstraintViolations()) { + msg += Global.getText(violation.getMessage()) + " ("+violation.getPropertyPath()+")"; + } + }else{ + msg += e.getMessage(); + } + failureMsg.append(msg); + logger.error(msg, e); + } + } + } catch (Exception e) { + logger.error(e.getMessage(), e); + failureMsg.append(e.getMessage()); + return failureMsg.toString(); + } + if (failureNum > 0) { + failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:"); + throw new ServiceException(failureMsg.toString()); + }else{ + successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条,数据如下:"); + } + return successMsg.toString(); + } + + /** + * 更新状态 + * @param bizDataReportUser 数据对象 + */ + @Override + @Transactional + public void updateStatus(BizDataReportUser bizDataReportUser) { + super.updateStatus(bizDataReportUser); + } + + /** + * 删除数据 + * @param bizDataReportUser 数据对象 + */ + @Override + @Transactional + public void delete(BizDataReportUser bizDataReportUser) { + super.delete(bizDataReportUser); + } + +} \ No newline at end of file diff --git a/web-api/src/main/java/com/jeesite/modules/biz/web/BizDataReportUserController.java b/web-api/src/main/java/com/jeesite/modules/biz/web/BizDataReportUserController.java new file mode 100644 index 00000000..44a06768 --- /dev/null +++ b/web-api/src/main/java/com/jeesite/modules/biz/web/BizDataReportUserController.java @@ -0,0 +1,154 @@ +package com.jeesite.modules.biz.web; + +import java.util.List; + +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; + +import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; + +import com.jeesite.common.config.Global; +import com.jeesite.common.collect.ListUtils; +import com.jeesite.common.entity.Page; +import com.jeesite.common.lang.DateUtils; +import com.jeesite.common.utils.excel.ExcelExport; +import com.jeesite.common.utils.excel.annotation.ExcelField.Type; +import org.springframework.web.multipart.MultipartFile; +import com.jeesite.common.web.BaseController; +import com.jeesite.modules.biz.entity.BizDataReportUser; +import com.jeesite.modules.biz.service.BizDataReportUserService; + +/** + * 指标用户Controller + * + * @author gaoxq + * @version 2025-12-13 + */ +@Controller +@RequestMapping(value = "${adminPath}/biz/dataReportUser") +public class BizDataReportUserController extends BaseController { + + private final BizDataReportUserService bizDataReportUserService; + + public BizDataReportUserController(BizDataReportUserService bizDataReportUserService) { + this.bizDataReportUserService = bizDataReportUserService; + } + + /** + * 获取数据 + */ + @ModelAttribute + public BizDataReportUser get(String id, boolean isNewRecord) { + return bizDataReportUserService.get(id, isNewRecord); + } + + /** + * 查询列表 + */ + @RequiresPermissions("biz:dataReportUser:view") + @RequestMapping(value = {"list", ""}) + public String list(BizDataReportUser bizDataReportUser, Model model) { + model.addAttribute("bizDataReportUser", bizDataReportUser); + return "modules/biz/bizDataReportUserList"; + } + + /** + * 查询列表数据 + */ + @RequiresPermissions("biz:dataReportUser:view") + @RequestMapping(value = "listData") + @ResponseBody + public Page listData(BizDataReportUser bizDataReportUser, HttpServletRequest request, HttpServletResponse response) { + bizDataReportUser.setPage(new Page<>(request, response)); + Page page = bizDataReportUserService.findPage(bizDataReportUser); + return page; + } + + /** + * 查看编辑表单 + */ + @RequiresPermissions("biz:dataReportUser:view") + @RequestMapping(value = "form") + public String form(BizDataReportUser bizDataReportUser, Model model) { + model.addAttribute("bizDataReportUser", bizDataReportUser); + return "modules/biz/bizDataReportUserForm"; + } + + /** + * 保存数据 + */ + @RequiresPermissions("biz:dataReportUser:edit") + @PostMapping(value = "save") + @ResponseBody + public String save(@Validated BizDataReportUser bizDataReportUser) { + bizDataReportUserService.save(bizDataReportUser); + return renderResult(Global.TRUE, text("保存指标用户成功!")); + } + + /** + * 导出数据 + */ + @RequiresPermissions("biz:dataReportUser:view") + @RequestMapping(value = "exportData") + public void exportData(BizDataReportUser bizDataReportUser, HttpServletResponse response) { + List list = bizDataReportUserService.findList(bizDataReportUser); + String fileName = "指标用户" + DateUtils.getDate("yyyyMMddHHmmss") + ".xlsx"; + try (ExcelExport ee = new ExcelExport("指标用户", BizDataReportUser.class)) { + ee.setDataList(list).write(response, fileName); + } + } + + /** + * 下载模板 + */ + @RequiresPermissions("biz:dataReportUser:view") + @RequestMapping(value = "importTemplate") + public void importTemplate(HttpServletResponse response) { + BizDataReportUser bizDataReportUser = new BizDataReportUser(); + List list = ListUtils.newArrayList(bizDataReportUser); + String fileName = "指标用户模板.xlsx"; + try (ExcelExport ee = new ExcelExport("指标用户", BizDataReportUser.class, Type.IMPORT)) { + ee.setDataList(list).write(response, fileName); + } + } + + /** + * 导入数据 + */ + @ResponseBody + @RequiresPermissions("biz:dataReportUser:edit") + @PostMapping(value = "importData") + public String importData(MultipartFile file) { + try { + String message = bizDataReportUserService.importData(file); + return renderResult(Global.TRUE, "posfull:" + message); + } catch (Exception ex) { + return renderResult(Global.FALSE, "posfull:" + ex.getMessage()); + } + } + + /** + * 删除数据 + */ + @RequiresPermissions("biz:dataReportUser:edit") + @RequestMapping(value = "delete") + @ResponseBody + public String delete(BizDataReportUser bizDataReportUser) { + bizDataReportUserService.delete(bizDataReportUser); + return renderResult(Global.TRUE, text("删除指标用户成功!")); + } + + @RequestMapping(value = "listAll") + @ResponseBody + public List listAll(BizDataReportUser bizDataReportUser) { + return bizDataReportUserService.findList(bizDataReportUser); + } + +} \ No newline at end of file diff --git a/web-api/src/main/resources/mappings/modules/biz/BizDataReportUserDao.xml b/web-api/src/main/resources/mappings/modules/biz/BizDataReportUserDao.xml new file mode 100644 index 00000000..03b16bb4 --- /dev/null +++ b/web-api/src/main/resources/mappings/modules/biz/BizDataReportUserDao.xml @@ -0,0 +1,15 @@ + + + + + + + \ No newline at end of file diff --git a/web-vue/packages/biz/api/biz/dataReportUser.ts b/web-vue/packages/biz/api/biz/dataReportUser.ts new file mode 100644 index 00000000..ad8571d6 --- /dev/null +++ b/web-vue/packages/biz/api/biz/dataReportUser.ts @@ -0,0 +1,54 @@ +/** + * Copyright (c) 2013-Now http://jeesite.com All rights reserved. + * No deletion without permission, or be held responsible to law. + * @author gaoxq + */ +import { defHttp } from '@jeesite/core/utils/http/axios'; +import { useGlobSetting } from '@jeesite/core/hooks/setting'; +import { BasicModel, Page } from '@jeesite/core/api/model/baseModel'; +import { UploadApiResult } from '@jeesite/core/api/sys/upload'; +import { UploadFileParams } from '@jeesite/types/axios'; +import { AxiosProgressEvent } from 'axios'; + +const { ctxPath, adminPath } = useGlobSetting(); + +export interface BizDataReportUser extends BasicModel { + createTime?: string; // 记录时间 + dataReportId: string; // data_report_id + userCode: string; // user_code + userName?: string; // user_name + ustatus: string; // ustatus + routePath: string; + name: string; + image: string; +} + +export const bizDataReportUserList = (params?: BizDataReportUser | any) => + defHttp.get({ url: adminPath + '/biz/dataReportUser/list', params }); + +export const bizDataReportUserListAll = (params?: BizDataReportUser | any) => + defHttp.get({ url: adminPath + '/biz/dataReportUser/listAll', params }); + +export const bizDataReportUserListData = (params?: BizDataReportUser | any) => + defHttp.post>({ url: adminPath + '/biz/dataReportUser/listData', params }); + +export const bizDataReportUserForm = (params?: BizDataReportUser | any) => + defHttp.get({ url: adminPath + '/biz/dataReportUser/form', params }); + +export const bizDataReportUserSave = (params?: any, data?: BizDataReportUser | any) => + defHttp.postJson({ url: adminPath + '/biz/dataReportUser/save', params, data }); + +export const bizDataReportUserImportData = ( + params: UploadFileParams, + onUploadProgress: (progressEvent: AxiosProgressEvent) => void, +) => + defHttp.uploadFile( + { + url: ctxPath + adminPath + '/biz/dataReportUser/importData', + onUploadProgress, + }, + params, + ); + +export const bizDataReportUserDelete = (params?: BizDataReportUser | any) => + defHttp.get({ url: adminPath + '/biz/dataReportUser/delete', params }); diff --git a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartBarAccount.vue b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartBarAccount.vue index 8b3cee2e..ca146026 100644 --- a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartBarAccount.vue +++ b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartBarAccount.vue @@ -1,5 +1,5 @@ diff --git a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartBarCycle.vue b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartBarCycle.vue index 4ca59dba..6ac07283 100644 --- a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartBarCycle.vue +++ b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartBarCycle.vue @@ -1,5 +1,5 @@ diff --git a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineExp.vue b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineExp.vue index 997f2fd1..70ce73c5 100644 --- a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineExp.vue +++ b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineExp.vue @@ -1,5 +1,5 @@ diff --git a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineInc.vue b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineInc.vue index e1b1dad3..6535ef0d 100644 --- a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineInc.vue +++ b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineInc.vue @@ -1,5 +1,5 @@ diff --git a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineRatio.vue b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineRatio.vue index 5f7ca823..5e83e668 100644 --- a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineRatio.vue +++ b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineRatio.vue @@ -1,5 +1,5 @@ diff --git a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineType.vue b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineType.vue index 7901054c..753f2211 100644 --- a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineType.vue +++ b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartLineType.vue @@ -1,5 +1,5 @@ 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 index 8baba9f0..192dd8a5 100644 --- a/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartPie.vue +++ b/web-vue/packages/biz/views/biz/dataReport/erp/components/ChartPie.vue @@ -1,5 +1,5 @@ diff --git a/web-vue/packages/biz/views/biz/dataReport/index.vue b/web-vue/packages/biz/views/biz/dataReport/index.vue index 36036592..72fc2106 100644 --- a/web-vue/packages/biz/views/biz/dataReport/index.vue +++ b/web-vue/packages/biz/views/biz/dataReport/index.vue @@ -4,7 +4,10 @@ - + + + + @@ -15,6 +18,7 @@ import { Tag, Tabs ,TabPane } from 'ant-design-vue'; import DataReport from './list.vue'; import ErpReport from './erp/index.vue'; + import UserReport from './user/list.vue' const activeKey = ref('1'); diff --git a/web-vue/packages/biz/views/biz/dataReport/user/form.vue b/web-vue/packages/biz/views/biz/dataReport/user/form.vue new file mode 100644 index 00000000..149191d8 --- /dev/null +++ b/web-vue/packages/biz/views/biz/dataReport/user/form.vue @@ -0,0 +1,120 @@ + + + diff --git a/web-vue/packages/biz/views/biz/dataReport/user/formImport.vue b/web-vue/packages/biz/views/biz/dataReport/user/formImport.vue new file mode 100644 index 00000000..1cc043ab --- /dev/null +++ b/web-vue/packages/biz/views/biz/dataReport/user/formImport.vue @@ -0,0 +1,103 @@ + + + diff --git a/web-vue/packages/biz/views/biz/dataReport/user/list.vue b/web-vue/packages/biz/views/biz/dataReport/user/list.vue new file mode 100644 index 00000000..5807be01 --- /dev/null +++ b/web-vue/packages/biz/views/biz/dataReport/user/list.vue @@ -0,0 +1,206 @@ + + + diff --git a/web-vue/packages/biz/views/biz/dataReportUser/form.vue b/web-vue/packages/biz/views/biz/dataReportUser/form.vue new file mode 100644 index 00000000..a9e731e2 --- /dev/null +++ b/web-vue/packages/biz/views/biz/dataReportUser/form.vue @@ -0,0 +1,113 @@ + + + diff --git a/web-vue/packages/biz/views/biz/dataReportUser/formImport.vue b/web-vue/packages/biz/views/biz/dataReportUser/formImport.vue new file mode 100644 index 00000000..1cc043ab --- /dev/null +++ b/web-vue/packages/biz/views/biz/dataReportUser/formImport.vue @@ -0,0 +1,103 @@ + + + diff --git a/web-vue/packages/biz/views/biz/dataReportUser/list.vue b/web-vue/packages/biz/views/biz/dataReportUser/list.vue new file mode 100644 index 00000000..fbb7bd78 --- /dev/null +++ b/web-vue/packages/biz/views/biz/dataReportUser/list.vue @@ -0,0 +1,214 @@ + + + diff --git a/web-vue/packages/biz/views/biz/dataReportUser/select.ts b/web-vue/packages/biz/views/biz/dataReportUser/select.ts new file mode 100644 index 00000000..420d8d81 --- /dev/null +++ b/web-vue/packages/biz/views/biz/dataReportUser/select.ts @@ -0,0 +1,107 @@ +import { useI18n } from '@jeesite/core/hooks/web/useI18n'; +import { BasicColumn, BasicTableProps, FormProps } from '@jeesite/core/components/Table'; +import { bizDataReportUserListData } from '@jeesite/biz/api/biz/dataReportUser'; + +const { t } = useI18n('biz.dataReportUser'); + +const modalProps = { + title: t('指标用户选择'), +}; + +const searchForm: FormProps = { + baseColProps: { md: 8, lg: 6 }, + labelWidth: 90, + schemas: [ + { + label: t('记录时间起'), + field: 'createTime_gte', + component: 'DatePicker', + componentProps: { + format: 'YYYY-MM-DD HH:mm', + showTime: { format: 'HH:mm' }, + }, + }, + { + label: t('记录时间止'), + field: 'createTime_lte', + component: 'DatePicker', + componentProps: { + format: 'YYYY-MM-DD HH:mm', + showTime: { format: 'HH:mm' }, + }, + }, + { + label: t('ustatus'), + field: 'ustatus', + component: 'Select', + componentProps: { + dictType: 'ustatus', + allowClear: true, + }, + }, + ], +}; + +const tableColumns: BasicColumn[] = [ + { + title: t('记录时间'), + dataIndex: 'createTime', + key: 'a.create_time', + sorter: true, + width: 230, + align: 'left', + slot: 'firstColumn', + }, + { + title: t('data_report_id'), + dataIndex: 'dataReportId', + key: 'a.data_report_id', + sorter: true, + width: 130, + align: 'left', + }, + { + title: t('user_code'), + dataIndex: 'userCode', + key: 'a.user_code', + sorter: true, + width: 130, + align: 'left', + }, + { + title: t('user_name'), + dataIndex: 'userName', + key: 'a.user_name', + sorter: true, + width: 130, + align: 'left', + }, + { + title: t('ustatus'), + dataIndex: 'ustatus', + key: 'a.ustatus', + sorter: true, + width: 130, + align: 'center', + dictType: 'ustatus', + }, +]; + +const tableProps: BasicTableProps = { + api: bizDataReportUserListData, + beforeFetch: (params) => { + params['isAll'] = true; + return params; + }, + columns: tableColumns, + formConfig: searchForm, + rowKey: 'id', +}; + +export default { + modalProps, + tableProps, + itemCode: 'id', + itemName: 'id', + isShowCode: false, +}; diff --git a/web-vue/packages/biz/views/biz/municipalities/form.vue b/web-vue/packages/biz/views/biz/municipalities/form.vue index 4cdef882..0f2b09a3 100644 --- a/web-vue/packages/biz/views/biz/municipalities/form.vue +++ b/web-vue/packages/biz/views/biz/municipalities/form.vue @@ -59,8 +59,8 @@ onChange: (value: string) => { provListParams.value.provinceCode = value; }, - required: true, }, + required: true, colProps: { md: 24, lg: 24 }, }, { diff --git a/web-vue/packages/core/layouts/views/desktop/workbench/components/MySchedule.vue b/web-vue/packages/core/layouts/views/desktop/workbench/components/MySchedule.vue index 6b982b16..8138d194 100644 --- a/web-vue/packages/core/layouts/views/desktop/workbench/components/MySchedule.vue +++ b/web-vue/packages/core/layouts/views/desktop/workbench/components/MySchedule.vue @@ -36,12 +36,15 @@