From 93bb094566744cb3374b514be25884122678daca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E6=96=87=E6=98=8A?= <15984991+wwh2328692301@user.noreply.gitee.com> Date: Mon, 6 Jul 2026 17:19:49 +0800 Subject: [PATCH 01/14] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=E5=90=88?= =?UTF-8?q?=E5=90=8C=E3=80=81=E8=AE=A2=E5=8D=95=E6=98=8E=E7=BB=86=E5=AF=BC?= =?UTF-8?q?=E5=87=BA=E5=8A=9F=E8=83=BD=EF=BC=8C=E8=A1=A5=E5=85=85=E4=B8=9A?= =?UTF-8?q?=E5=8A=A1=E5=91=98=E5=AD=97=E6=AE=B5=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. 新增crm订单主、订单明细的导出接口,支持业务精简字段导出 2. 为订单明细VO新增业务员字段,关联查询订单表填充数据 3. 在订单列表页新增业务员表格列展示 4. 为合同编辑页、订单明细页添加导出按钮并实现导出逻辑 5. 新增导出专用的VO类,处理日期格式化和状态转文本 --- .../crm/controller/CrmOrderController.java | 33 +++++ .../controller/CrmOrderItemController.java | 29 ++++ .../klp/crm/domain/vo/CrmOrderExportVo.java | 76 +++++++++++ .../crm/domain/vo/CrmOrderItemExportVo.java | 127 ++++++++++++++++++ .../com/klp/crm/domain/vo/CrmOrderItemVo.java | 6 + .../service/impl/CrmOrderItemServiceImpl.java | 6 +- .../resources/mapper/CrmOrderItemMapper.xml | 4 +- klp-ui/src/api/crm/order.js | 10 ++ klp-ui/src/api/crm/orderItem.js | 10 ++ .../src/views/crm/contract/detail/index.vue | 47 ++++++- klp-ui/src/views/crm/orderItem/all.vue | 39 +++++- klp-ui/src/views/crm/orderItem/index.vue | 38 +++++- 12 files changed, 418 insertions(+), 7 deletions(-) create mode 100644 klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderExportVo.java create mode 100644 klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderItemExportVo.java diff --git a/klp-crm/src/main/java/com/klp/crm/controller/CrmOrderController.java b/klp-crm/src/main/java/com/klp/crm/controller/CrmOrderController.java index 0630ab031..002a2e3ec 100644 --- a/klp-crm/src/main/java/com/klp/crm/controller/CrmOrderController.java +++ b/klp-crm/src/main/java/com/klp/crm/controller/CrmOrderController.java @@ -1,10 +1,13 @@ package com.klp.crm.controller; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.List; import java.util.Arrays; import java.util.Date; +import java.util.stream.Collectors; +import cn.hutool.core.bean.BeanUtil; import com.klp.aps.domain.bo.ApsPlanDetailBo; import com.klp.aps.domain.bo.ApsPlanSheetBo; import lombok.RequiredArgsConstructor; @@ -23,6 +26,7 @@ import com.klp.common.core.validate.EditGroup; import com.klp.common.enums.BusinessType; import com.klp.common.utils.poi.ExcelUtil; import com.klp.crm.domain.vo.CrmOrderVo; +import com.klp.crm.domain.vo.CrmOrderExportVo; import com.klp.crm.domain.bo.CrmOrderBo; import com.klp.crm.service.ICrmOrderService; import com.klp.common.core.page.TableDataInfo; @@ -65,6 +69,35 @@ public class CrmOrderController extends BaseController { ExcelUtil.exportExcel(list, "正式订单主", CrmOrderVo.class, response); } + /** + * 导出正式订单主列表(业务精简字段,用于合同编辑详情页导出) + */ + @Log(title = "正式订单主", businessType = BusinessType.EXPORT) + @PostMapping("/exportDetail") + public void exportDetail(@RequestBody CrmOrderBo bo, HttpServletResponse response) { + List list = iCrmOrderService.queryList(bo); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + List exportList = list.stream().map(vo -> { + CrmOrderExportVo export = new CrmOrderExportVo(); + BeanUtil.copyProperties(vo, export); + // 日期格式化 + export.setSignTime(vo.getSignTime() != null ? sdf.format(vo.getSignTime()) : null); + export.setDeliveryDate(vo.getDeliveryDate() != null ? sdf.format(vo.getDeliveryDate()) : null); + // 状态转文本 + if (vo.getStatus() != null) { + switch (vo.getStatus().intValue()) { + case 0: export.setStatus("草稿"); break; + case 1: export.setStatus("已生效"); break; + case 2: export.setStatus("已作废"); break; + case 3: export.setStatus("已完成"); break; + default: export.setStatus(String.valueOf(vo.getStatus())); break; + } + } + return export; + }).collect(Collectors.toList()); + ExcelUtil.exportExcel(exportList, "合同编辑详情", CrmOrderExportVo.class, response); + } + /** * 获取正式订单主详细信息 * diff --git a/klp-crm/src/main/java/com/klp/crm/controller/CrmOrderItemController.java b/klp-crm/src/main/java/com/klp/crm/controller/CrmOrderItemController.java index e18d2f75b..610aaedbd 100644 --- a/klp-crm/src/main/java/com/klp/crm/controller/CrmOrderItemController.java +++ b/klp-crm/src/main/java/com/klp/crm/controller/CrmOrderItemController.java @@ -1,7 +1,11 @@ package com.klp.crm.controller; +import java.text.SimpleDateFormat; import java.util.List; import java.util.Arrays; +import java.util.stream.Collectors; + +import cn.hutool.core.bean.BeanUtil; import lombok.RequiredArgsConstructor; import javax.servlet.http.HttpServletResponse; @@ -18,6 +22,7 @@ import com.klp.common.core.validate.EditGroup; import com.klp.common.enums.BusinessType; import com.klp.common.utils.poi.ExcelUtil; import com.klp.crm.domain.vo.CrmOrderItemVo; +import com.klp.crm.domain.vo.CrmOrderItemExportVo; import com.klp.crm.domain.vo.CrmContractOrderFinanceVo; import com.klp.crm.domain.bo.CrmOrderItemBo; import com.klp.crm.service.ICrmOrderItemService; @@ -56,6 +61,30 @@ public class CrmOrderItemController extends BaseController { ExcelUtil.exportExcel(list, "正式订单明细", CrmOrderItemVo.class, response); } + /** + * 导出正式订单明细列表(业务精简字段,用于订单明细列表页导出) + */ + @Log(title = "正式订单明细", businessType = BusinessType.EXPORT) + @PostMapping("/exportDetail") + public void exportDetail(@RequestBody CrmOrderItemBo bo, HttpServletResponse response) { + List list = iCrmOrderItemService.queryList(bo); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + List exportList = list.stream().map(vo -> { + CrmOrderItemExportVo export = new CrmOrderItemExportVo(); + BeanUtil.copyProperties(vo, export); + // 日期格式化 + export.setSignTime(vo.getSignTime() != null ? sdf.format(vo.getSignTime()) : null); + // 展平 orderInfo 中的 salesman、orderCode、contractName + if (vo.getOrderInfo() != null) { + export.setSalesman(vo.getOrderInfo().getSalesman()); + export.setOrderCode(vo.getOrderInfo().getOrderCode()); + export.setContractName(vo.getOrderInfo().getContractName()); + } + return export; + }).collect(Collectors.toList()); + ExcelUtil.exportExcel(exportList, "订单明细列表", CrmOrderItemExportVo.class, response); + } + /** * 获取正式订单明细详细信息 * diff --git a/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderExportVo.java b/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderExportVo.java new file mode 100644 index 000000000..5fe801d0d --- /dev/null +++ b/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderExportVo.java @@ -0,0 +1,76 @@ +package com.klp.crm.domain.vo; + +import java.math.BigDecimal; + +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; + +/** + * 合同编辑详情导出视图对象 + * 仅包含页面表格展示的业务字段(19列) + * + * @author klp + * @date 2026-07-06 + */ +@Data +@ExcelIgnoreUnannotated +public class CrmOrderExportVo { + + @ExcelProperty(value = "合同号") + private String contractCode; + + @ExcelProperty(value = "供方") + private String supplier; + + @ExcelProperty(value = "需方") + private String customer; + + @ExcelProperty(value = "业务员") + private String salesman; + + @ExcelProperty(value = "签订日期") + private String signTime; + + @ExcelProperty(value = "交货日期") + private String deliveryDate; + + @ExcelProperty(value = "签订地点") + private String signLocation; + + @ExcelProperty(value = "供方地址") + private String supplierAddress; + + @ExcelProperty(value = "供方电话") + private String supplierPhone; + + @ExcelProperty(value = "供方开户行") + private String supplierBank; + + @ExcelProperty(value = "供方账号") + private String supplierAccount; + + @ExcelProperty(value = "需方地址") + private String customerAddress; + + @ExcelProperty(value = "需方电话") + private String customerPhone; + + @ExcelProperty(value = "需方开户行") + private String customerBank; + + @ExcelProperty(value = "需方账号") + private String customerAccount; + + @ExcelProperty(value = "订单金额") + private BigDecimal orderAmount; + + @ExcelProperty(value = "已收款") + private BigDecimal receivedAmount; + + @ExcelProperty(value = "状态") + private String status; + + @ExcelProperty(value = "备注") + private String remark; +} diff --git a/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderItemExportVo.java b/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderItemExportVo.java new file mode 100644 index 000000000..82c1248c3 --- /dev/null +++ b/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderItemExportVo.java @@ -0,0 +1,127 @@ +package com.klp.crm.domain.vo; + +import java.math.BigDecimal; + +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; + +/** + * 订单明细列表导出视图对象 + * 仅包含页面表格展示的业务字段(32列) + * + * @author klp + * @date 2026-07-06 + */ +@Data +@ExcelIgnoreUnannotated +public class CrmOrderItemExportVo { + + // ========== 合同信息(联表) ========== + + @ExcelProperty(value = "合同号") + private String contractCode; + + @ExcelProperty(value = "合同名称") + private String contractName; + + @ExcelProperty(value = "需方") + private String customer; + + @ExcelProperty(value = "供方") + private String supplier; + + @ExcelProperty(value = "业务员") + private String salesman; + + @ExcelProperty(value = "签订时间") + private String signTime; + + @ExcelProperty(value = "订单编号") + private String orderCode; + + // ========== 明细标识 ========== + + @ExcelProperty(value = "明细ID") + private Long itemId; + + @ExcelProperty(value = "订单ID") + private Long orderId; + + // ========== 产品规格 ========== + + @ExcelProperty(value = "产品类型") + private String productType; + + @ExcelProperty(value = "原料规格") + private String rawMaterialSpec; + + @ExcelProperty(value = "成品规格") + private String finishedProductSpec; + + @ExcelProperty(value = "数量") + private Long productNum; + + @ExcelProperty(value = "材质") + private String material; + + @ExcelProperty(value = "等级") + private String grade; + + @ExcelProperty(value = "宽度") + private String width; + + @ExcelProperty(value = "厚度") + private String thickness; + + @ExcelProperty(value = "宽度公差") + private String widthTolerance; + + @ExcelProperty(value = "厚度公差") + private String thicknessTolerance; + + @ExcelProperty(value = "重量") + private BigDecimal weight; + + // ========== 价格 ========== + + @ExcelProperty(value = "合同定价") + private BigDecimal contractPrice; + + @ExcelProperty(value = "明细金额") + private BigDecimal itemAmount; + + // ========== 加工要求 ========== + + @ExcelProperty(value = "表面处理") + private String surfaceTreatment; + + @ExcelProperty(value = "包装要求") + private String packagingReq; + + @ExcelProperty(value = "切边要求") + private String edgeCuttingReq; + + @ExcelProperty(value = "表面质量") + private String surfaceQuality; + + // ========== 其他 ========== + + @ExcelProperty(value = "特殊要求") + private String specialRequire; + + @ExcelProperty(value = "用途") + private String purpose; + + @ExcelProperty(value = "备注") + private String remark; + + @ExcelProperty(value = "定制人") + private String customizer; + + @ExcelProperty(value = "发货人") + private String shipper; + + @ExcelProperty(value = "排产批次") + private String productionBatch; +} diff --git a/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderItemVo.java b/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderItemVo.java index d0a5da630..06900d0e9 100644 --- a/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderItemVo.java +++ b/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderItemVo.java @@ -234,6 +234,12 @@ public class CrmOrderItemVo { @ExcelProperty(value = "交货日期") private Date deliveryDate; + /** + * 销售员(联表查询直接映射) + */ + @ExcelProperty(value = "销售员") + private String salesman; + /** * 订单信息 */ diff --git a/klp-crm/src/main/java/com/klp/crm/service/impl/CrmOrderItemServiceImpl.java b/klp-crm/src/main/java/com/klp/crm/service/impl/CrmOrderItemServiceImpl.java index 9a493a3d2..d6a6d6346 100644 --- a/klp-crm/src/main/java/com/klp/crm/service/impl/CrmOrderItemServiceImpl.java +++ b/klp-crm/src/main/java/com/klp/crm/service/impl/CrmOrderItemServiceImpl.java @@ -168,7 +168,11 @@ public class CrmOrderItemServiceImpl implements ICrmOrderItemService { Map orderMap = orderList.stream() .collect(Collectors.toMap(CrmOrderVo::getOrderId, o -> o, (a, b) -> a)); for (CrmOrderItemVo item : records) { - item.setOrderInfo(orderMap.get(item.getOrderId())); + CrmOrderVo order = orderMap.get(item.getOrderId()); + item.setOrderInfo(order); + if (order != null) { + item.setSalesman(order.getSalesman()); + } } } diff --git a/klp-crm/src/main/resources/mapper/CrmOrderItemMapper.xml b/klp-crm/src/main/resources/mapper/CrmOrderItemMapper.xml index 040882f6a..0c8e425d4 100644 --- a/klp-crm/src/main/resources/mapper/CrmOrderItemMapper.xml +++ b/klp-crm/src/main/resources/mapper/CrmOrderItemMapper.xml @@ -74,6 +74,7 @@ + @@ -155,7 +156,8 @@ o.supplier, o.customer, o.sign_time, - o.delivery_date + o.delivery_date, + o.salesman FROM crm_order_item i LEFT JOIN crm_order o ON i.order_id = o.order_id AND o.del_flag = 0 diff --git a/klp-ui/src/api/crm/order.js b/klp-ui/src/api/crm/order.js index 6f151bae5..428fb2cc8 100644 --- a/klp-ui/src/api/crm/order.js +++ b/klp-ui/src/api/crm/order.js @@ -64,3 +64,13 @@ export function listTodayOrder(query) { params: query }) } + +// 导出正式订单主列表(业务精简字段) +export function exportOrder(query) { + return request({ + url: '/crm/order/exportDetail', + method: 'post', + data: query, + responseType: 'blob' + }) +} diff --git a/klp-ui/src/api/crm/orderItem.js b/klp-ui/src/api/crm/orderItem.js index 3ae03d026..d938634db 100644 --- a/klp-ui/src/api/crm/orderItem.js +++ b/klp-ui/src/api/crm/orderItem.js @@ -42,3 +42,13 @@ export function delOrderItem(itemId) { method: 'delete' }) } + +// 导出正式订单明细列表(业务精简字段) +export function exportOrderItem(query) { + return request({ + url: '/crm/orderItem/exportDetail', + method: 'post', + data: query, + responseType: 'blob' + }) +} diff --git a/klp-ui/src/views/crm/contract/detail/index.vue b/klp-ui/src/views/crm/contract/detail/index.vue index 3f8d7cc94..dd52894ea 100644 --- a/klp-ui/src/views/crm/contract/detail/index.vue +++ b/klp-ui/src/views/crm/contract/detail/index.vue @@ -66,6 +66,7 @@ /> 筛选 重置 + 导出 共 {{ total }} 条记录 @@ -130,6 +131,14 @@ + + + + diff --git a/klp-ui/src/views/crm/orderItem/all.vue b/klp-ui/src/views/crm/orderItem/all.vue index 877da9dd0..820517a74 100644 --- a/klp-ui/src/views/crm/orderItem/all.vue +++ b/klp-ui/src/views/crm/orderItem/all.vue @@ -21,6 +21,7 @@
批量删除 + 导出 合同列为只读;明细列失焦自动保存(需有修改权限)
@@ -50,6 +51,9 @@ + + + @@ -201,7 +205,9 @@ diff --git a/klp-ui/src/views/crm/orderItem/index.vue b/klp-ui/src/views/crm/orderItem/index.vue index 94e314553..cc7340f51 100644 --- a/klp-ui/src/views/crm/orderItem/index.vue +++ b/klp-ui/src/views/crm/orderItem/index.vue @@ -52,6 +52,7 @@ /> 筛选 重置 + 导出 已按合同签订日期默认当月,结果按交货日期倒序排列 @@ -96,6 +97,11 @@ {{ row.customer }}
+ + + \ No newline at end of file + + + diff --git a/klp-ui/src/views/crm/contract/index.vue b/klp-ui/src/views/crm/contract/index.vue index 4981333c6..32334aaf0 100644 --- a/klp-ui/src/views/crm/contract/index.vue +++ b/klp-ui/src/views/crm/contract/index.vue @@ -11,24 +11,11 @@
- -
- -
- - -
-
-
- - -
+
+ :other-attachment="form.productionSchedule" :currentOrder="form" + @updateStatus="handleStatusChange" />
@@ -234,7 +221,6 @@ import { addCustomer } from "@/api/crm/customer"; import { listDeliveryWaybill } from "@/api/wms/deliveryWaybill"; import dayjs from "dayjs"; import ContractList from "./components/ContractList.vue"; -import ContractPreview from "./components/ContractPreview.vue"; import ContractTabs from "./components/ContractTabs.vue"; import ContractExportDialog from "./components/ContractExportDialog.vue"; import ProductContent from "./components/ProductContent.vue"; @@ -246,7 +232,6 @@ export default { name: "Contract", components: { ContractList, - ContractPreview, ContractTabs, ContractExportDialog, ProductContent, @@ -706,34 +691,6 @@ export default { this.customerOpen = false; this.customerForm = {}; }, - /** 开始拖拽调整 */ - startResize(e) { - e.preventDefault(); - const previewPanel = this.$refs.previewPanel; - const tabPanel = this.$refs.tabPanel; - const startY = e.clientY; - const startPreviewHeight = previewPanel.offsetHeight; - const parentHeight = previewPanel.parentElement.offsetHeight; - - const handleMouseMove = (event) => { - const deltaY = event.clientY - startY; - const newPreviewHeight = startPreviewHeight + deltaY; - const newTabHeight = parentHeight - newPreviewHeight - 8; // 8是拖拽条的高度 - - if (newPreviewHeight > 100 && newTabHeight > 100) { // 最小高度限制 - previewPanel.style.flex = `0 0 ${newPreviewHeight}px`; - tabPanel.style.flex = `0 0 ${newTabHeight}px`; - } - }; - - const handleMouseUp = () => { - document.removeEventListener('mousemove', handleMouseMove); - document.removeEventListener('mouseup', handleMouseUp); - }; - - document.addEventListener('mousemove', handleMouseMove); - document.addEventListener('mouseup', handleMouseUp); - } } }; @@ -756,11 +713,7 @@ export default { overflow: hidden; } -.preview-panel { - overflow-y: auto; -} - .tab-panel { - overflow-y: auto; + overflow: hidden; } \ No newline at end of file From 16533ae66418610055f43972e9001f18dcfbbfb2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A0=82=E7=B3=96?= Date: Tue, 7 Jul 2026 11:22:43 +0800 Subject: [PATCH 07/14] =?UTF-8?q?fix(wms/move):=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E8=B0=83=E6=8B=A8=E5=8D=95=E6=90=9C=E7=B4=A2=E5=92=8C=E6=89=B9?= =?UTF-8?q?=E9=87=8F=E6=89=A7=E8=A1=8C=E7=9A=84=E5=8F=82=E6=95=B0=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. 将调拨单号搜索的绑定值从transferNo改为transferId,匹配后端接口参数 2. 给批量执行按钮添加加载状态防止重复提交 3. 新增批量执行完成后的回调刷新列表并关闭加载状态 --- klp-ui/src/views/wms/move/do.vue | 26 +++++++++++++++++++------- klp-ui/src/views/wms/move/record.vue | 8 ++++---- 2 files changed, 23 insertions(+), 11 deletions(-) diff --git a/klp-ui/src/views/wms/move/do.vue b/klp-ui/src/views/wms/move/do.vue index 0f4254a93..453b57d71 100644 --- a/klp-ui/src/views/wms/move/do.vue +++ b/klp-ui/src/views/wms/move/do.vue @@ -17,11 +17,11 @@ - + :value="item.orderId" /> @@ -32,7 +32,7 @@ 查询 - 批量执行 + 批量执行 清空 @@ -46,7 +46,7 @@ + @refreshData="handleBatchConfirmDone"> @@ -103,7 +103,7 @@ export default { currentCoilNo: '', warehouseIdBefore: '', warehouseIdAfter: '', - transferNo: '', + transferId: '', isTransferred: '0', pageSize: 20, pageNum: 1, @@ -114,6 +114,7 @@ export default { transferOrderOptions: [], transferOrderLoading: false, loading: false, + batchConfirmLoading: false, total: 0, dialogVisible: false, }; @@ -171,7 +172,7 @@ export default { currentCoilNo: '', warehouseIdBefore: '', warehouseIdAfter: '', - transferNo: '', + transferId: '', isTransferred: '0', pageSize: 20, pageNum: 1, @@ -192,7 +193,18 @@ export default { } }, handleConfirmBatch() { - this.$refs.transferItemTable.handleBatchConfirm(); + this.$confirm('确定要批量执行调拨吗?', '确认操作', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning' + }).then(() => { + this.batchConfirmLoading = true; + this.$refs.transferItemTable.handleBatchConfirm(); + }).catch(() => {}); + }, + handleBatchConfirmDone() { + this.batchConfirmLoading = false; + this.handleRegularSearch(); }, }, mounted() { diff --git a/klp-ui/src/views/wms/move/record.vue b/klp-ui/src/views/wms/move/record.vue index 5de416f7d..c6c56b37c 100644 --- a/klp-ui/src/views/wms/move/record.vue +++ b/klp-ui/src/views/wms/move/record.vue @@ -30,11 +30,11 @@ - + :label="item.transferNo" :value="item.orderId" /> @@ -105,7 +105,7 @@ export default { currentCoilNo: '', warehouseIdBefore: '', warehouseIdAfter: '', - transferNo: '', + transferId: '', isTransferred: '', pageSize: 20, pageNum: 1, @@ -173,7 +173,7 @@ export default { currentCoilNo: '', warehouseIdBefore: '', warehouseIdAfter: '', - transferNo: '', + transferId: '', isTransferred: '', pageSize: 20, pageNum: 1, From 52be3be1f27f177513b3d612017d5c2892a5b31e Mon Sep 17 00:00:00 2001 From: jhd <1684074631@qq.com> Date: Tue, 7 Jul 2026 12:59:43 +0800 Subject: [PATCH 08/14] =?UTF-8?q?refactor(file):=20=E9=87=8D=E6=9E=84?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E7=AE=A1=E7=90=86=E9=A1=B5=E9=9D=A2=E5=B8=83?= =?UTF-8?q?=E5=B1=80=E5=92=8C=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将左右分栏布局改为侧边栏+主区域布局 - 移除拖拽调节宽度功能和相关代码 - 重构文件类型筛选为垂直列表形式 - 移除顶部标签页切换功能 - 合并文件预览和详情功能到单一详情弹窗 - 详情弹窗中集成文件预览和元数据展示 - 优化表格列显示,增加文件大小、所属部门、订单编号等字段 - 调整操作按钮位置和样式 - 优化评论功能的显示和交互 - 简化文件上传和编辑流程 - 移除不再使用的变量和方法 --- .../KLPService/UserSelect/index.vue | 102 +- klp-ui/src/views/system/file/all.vue | 919 +++++++-------- klp-ui/src/views/system/file/index.vue | 1032 ++++++----------- 3 files changed, 855 insertions(+), 1198 deletions(-) diff --git a/klp-ui/src/components/KLPService/UserSelect/index.vue b/klp-ui/src/components/KLPService/UserSelect/index.vue index 8a39408fa..633009e1c 100644 --- a/klp-ui/src/components/KLPService/UserSelect/index.vue +++ b/klp-ui/src/components/KLPService/UserSelect/index.vue @@ -1,26 +1,28 @@ diff --git a/klp-ui/src/views/system/file/all.vue b/klp-ui/src/views/system/file/all.vue index aabbde30e..dac9f1592 100644 --- a/klp-ui/src/views/system/file/all.vue +++ b/klp-ui/src/views/system/file/all.vue @@ -1,224 +1,171 @@ @@ -336,8 +316,6 @@ export default { }, data() { return { - // 当前激活tab - activeTab: 'all', // 遮罩层 loading: false, // 选中数组 @@ -346,8 +324,6 @@ export default { single: true, // 非多个禁用 multiple: true, - // 显示搜索条件 - showSearch: true, // 显示高级搜索 showQuery: false, // 总条数 @@ -410,8 +386,6 @@ export default { Authorization: 'Bearer ' + getToken() }, uploadFileList: [], - // 选中的文件(右侧预览) - selectedFile: null, // 文件详情弹窗 infoVisible: false, infoTitle: '', @@ -420,12 +394,7 @@ export default { comments: [], commentExpanded: false, commentInput: '', - commentLoading: false, - // 拖拽调节宽度 - leftPanelWidth: '40%', - isDragging: false, - startX: 0, - startLeftWidth: 60 + commentLoading: false } }, computed: { @@ -434,11 +403,10 @@ export default { const dict = this.dict.type.sys_file_type || [] return [{ value: '', label: '全部' }, ...dict] }, - /** 根据文件后缀分类,决定右侧用哪个预览组件 */ - fileTypeCategory() { - if (!this.selectedFile) return null - // 优先使用 suffix 字段,其次从 fileName 提取 - const raw = this.selectedFile.suffix || this.selectedFile.fileName || '' + /** 详情弹窗中根据文件后缀决定预览组件 */ + infoFileCategory() { + if (!this.infoFile) return null + const raw = this.infoFile.suffix || this.infoFile.fileName || '' const ext = (raw.includes('.') ? raw.split('.').pop() : raw).toLowerCase() if (['png', 'jpg', 'jpeg', 'bmp', 'webp'].includes(ext)) return 'image' if (ext === 'pdf') return 'pdf' @@ -452,7 +420,7 @@ export default { this.getList() }, watch: { - selectedFile(val) { + infoFile(val) { if (val) { this.loadComments() } else { @@ -462,50 +430,24 @@ export default { } }, methods: { - /** 切换tab */ - handleTabClick(tab) { - this.resetQuery() - }, /** 查询文件列表 */ getList() { this.loading = true const params = this.addDateRange(this.queryParams, this.dateRange) - // 根据tab设置额外参数 - if (this.activeTab === 'my') { - params.createBy = this.$store.getters.name - } else if (this.activeTab === 'share') { - params.scopeType = 1 - } - - // 根据tab选择不同的API - let request - if (this.activeTab === 'related') { - request = listRelatedToMe(params) - } else { - request = listFile(params) - } - - request.then(response => { + listFile(params).then(response => { this.fileList = response.rows this.total = response.total this.loading = false - // 加载统计数据 - if (this.activeTab === 'all') { - this.loadStats() - } + this.loadStats() }).catch(() => { this.loading = false }) }, /** 加载统计数据 */ loadStats() { - // 获取所有公开文件数量 listFile({ pageNum: 1, pageSize: 1, scopeType: 1 }).then(r => { this.stats.publicFiles = r.total }) - // 获取所有私有文件数量 listFile({ pageNum: 1, pageSize: 1, scopeType: 2 }).then(r => { this.stats.privateFiles = r.total }) - // 我上传的 listFile({ pageNum: 1, pageSize: 1, createBy: this.$store.getters.name }).then(r => { this.stats.myFiles = r.total }) - // 总计 listFile({ pageNum: 1, pageSize: 1 }).then(r => { this.stats.totalFiles = r.total }) }, /** 格式化文件大小 */ @@ -517,9 +459,6 @@ export default { }, /** 是否可编辑 */ canEdit(row) { - if (this.activeTab === 'related') return false - if (this.activeTab === 'share') return false - // 我的文件tab 或 所有文件tab中属于当前用户的 return row.createBy === this.$store.getters.name }, /** 取消按钮 */ @@ -575,7 +514,6 @@ export default { /** 重置按钮 */ resetQuery() { this.dateRange = [] - this.selectedFile = null this.queryParams = { pageNum: 1, pageSize: 20, @@ -620,7 +558,6 @@ export default { visibleUsers: [], remark: data.remark } - // 如果是私有文件,加载可见用户 if (data.scopeType === 2) { listVisibleUserByFileId(fileId).then(res => { const rows = res.rows || [] @@ -634,7 +571,6 @@ export default { }, /** 上传前校验 */ handleBeforeUpload(file) { - // 自动设置文件名 if (!this.form.fileName) { this.form.fileName = file.name } @@ -648,7 +584,6 @@ export default { this.form.filePath = response.data.url this.form.fileName = this.form.fileName || response.data.fileName this.$modal.msgSuccess('文件上传成功') - // 自动提交表单 this.doSubmit() } else { this.$modal.msgError(response.msg || '上传失败') @@ -663,10 +598,8 @@ export default { this.$refs['form'].validate(valid => { if (valid) { if (this.isEdit) { - // 编辑模式直接提交 this.doSubmit() } else { - // 新增模式,先上传文件 if (this.$refs.upload && this.$refs.upload.uploadFiles.length > 0) { this.$refs.upload.submit() } else { @@ -683,7 +616,6 @@ export default { delete data.visibleUsers if (data.fileId) { - // 编辑模式 updateFile(data).then(response => { this.saveVisibleUsers(data.fileId, visibleUsers) this.$modal.msgSuccess('修改成功') @@ -691,7 +623,6 @@ export default { this.getList() }).catch(() => {}) } else { - // 新增模式 addFile(data).then(response => { const newFileId = response.data if (newFileId && visibleUsers && visibleUsers.length > 0) { @@ -706,20 +637,15 @@ export default { /** 保存可见用户 */ saveVisibleUsers(fileId, visibleUsers) { if (!visibleUsers || visibleUsers.length === 0) { - // 删除所有可见用户 if (this.originalVisibleUsers.length > 0) { delVisibleUser(this.originalVisibleUsers.join(',')) } return } - // 新增的 const toAdd = visibleUsers.filter(u => !this.originalVisibleUsers.includes(u)) - // 删除的 const toDel = this.originalVisibleUsers.filter(u => !visibleUsers.includes(u)) - // 删除 if (toDel.length > 0) { - // 需要先查出visibleId listVisibleUserByFileId(fileId).then(res => { const rows = res.rows || [] const delIds = rows.filter(r => toDel.includes(r.userId)).map(r => r.visibleId) @@ -728,14 +654,13 @@ export default { } }) } - // 新增 toAdd.forEach(userId => { addVisibleUser({ fileId, userId }) }) }, /** 删除 */ handleDelete(row) { - const fileIds = row.fileId || this.ids.join(',') + const fileIds = row && row.fileId ? row.fileId : this.ids.join(',') this.$modal.confirm('是否确认删除所选文件?').then(() => { return delFile(fileIds) }).then(() => { @@ -743,37 +668,25 @@ export default { this.$modal.msgSuccess('删除成功') }).catch(() => {}) }, - /** 导出 */ - handleExport() { - this.download('system/file/export', { - ...this.queryParams - }, `file_${new Date().getTime()}.xlsx`) + /** 详情弹窗关闭 */ + handleInfoClose() { + this.infoFile = null }, - /** 点击文件名查看预览 */ - handlePreview(row) { - this.selectedFile = row - incrementView(row.fileId) - }, - /** 点击查看按钮弹出详情 */ + /** 打开详情弹窗 */ handleShowInfo(row) { this.infoFile = row this.infoTitle = '文件详情 - ' + row.fileName this.infoVisible = true + incrementView(row.fileId) }, - /** 点击行选中预览 */ + /** 点击行选中 */ handleRowClick(row) { - this.selectedFile = row - }, - /** 下载文件 */ - downloadFile(row) { - if (row.filePath) { - window.open(row.filePath, '_blank') - } + // 行点击不做跳转,仅高亮 }, /** 加载评论列表 */ loadComments() { this.commentLoading = true - listFileComment(this.selectedFile.fileId).then(res => { + listFileComment(this.infoFile.fileId).then(res => { this.comments = res.data || [] this.commentLoading = false }).catch(() => { @@ -784,130 +697,113 @@ export default { handleAddComment() { const content = this.commentInput.trim() if (!content) return - addFileComment({ fileId: this.selectedFile.fileId, content }).then(() => { + addFileComment({ fileId: this.infoFile.fileId, content }).then(() => { this.commentInput = '' this.loadComments() }) }, - /** 开始拖拽 */ - startResize(e) { - this.isDragging = true - this.startX = e.clientX - this.startLeftWidth = parseFloat(this.leftPanelWidth) - document.addEventListener('mousemove', this.doResize) - document.addEventListener('mouseup', this.stopResize) - document.body.style.cursor = 'col-resize' - document.body.style.userSelect = 'none' + /** 导出(详情弹窗中) */ + handleExportInfo() { + this.download('system/file/export', { + ...this.queryParams + }, `file_${new Date().getTime()}.xlsx`) }, - /** 拖拽中 */ - doResize(e) { - if (!this.isDragging) return - const container = this.$refs.layoutContainer - const rect = container.getBoundingClientRect() - const deltaX = e.clientX - this.startX - let percent = this.startLeftWidth + (deltaX / rect.width) * 100 - percent = Math.max(30, Math.min(80, percent)) - this.leftPanelWidth = percent + '%' - }, - /** 结束拖拽 */ - stopResize() { - if (!this.isDragging) return - this.isDragging = false - document.removeEventListener('mousemove', this.doResize) - document.removeEventListener('mouseup', this.stopResize) - document.body.style.cursor = '' - document.body.style.userSelect = '' + /** 下载文件 */ + downloadFile(row) { + if (row.filePath) { + window.open(row.filePath, '_blank') + } } } } - + diff --git a/klp-ui/src/views/system/file/index.vue b/klp-ui/src/views/system/file/index.vue index 543c70aaa..30bcebfcd 100644 --- a/klp-ui/src/views/system/file/index.vue +++ b/klp-ui/src/views/system/file/index.vue @@ -1,33 +1,5 @@ - + @@ -253,7 +253,7 @@ {{ infoFile.scopeType === 1 ? '公开' : '私有' }} - {{ infoFile.createBy }} + {{ infoFile.createByName || infoFile.createBy }} {{ parseTime(infoFile.createTime) }} {{ infoFile.remark || '-' }} diff --git a/klp-ui/src/views/system/file/index.vue b/klp-ui/src/views/system/file/index.vue index 30bcebfcd..45469eef7 100644 --- a/klp-ui/src/views/system/file/index.vue +++ b/klp-ui/src/views/system/file/index.vue @@ -95,7 +95,7 @@ {{ scope.row.fileName }} - + @@ -229,7 +229,7 @@ {{ infoFile.scopeType === 1 ? '公开' : '私有' }} - {{ infoFile.createBy }} + {{ infoFile.createByName || infoFile.createBy }} {{ parseTime(infoFile.createTime) }} {{ infoFile.remark || '-' }} From 93816d54068c54ffba3a5135ce0c8c3ed3b4016c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A0=82=E7=B3=96?= Date: Tue, 7 Jul 2026 15:09:14 +0800 Subject: [PATCH 10/14] =?UTF-8?q?feat(CoilSelector,base):=20=E5=B0=86?= =?UTF-8?q?=E4=B8=9A=E5=8A=A1=E5=91=98=E8=BE=93=E5=85=A5=E6=A1=86=E6=94=B9?= =?UTF-8?q?=E4=B8=BA=E5=8F=AF=E5=88=9B=E5=BB=BA=E9=80=89=E6=8B=A9=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 将两处页面的业务员输入组件替换为带筛选和自定义创建的下拉选择器,并新增对应的业务员字典配置 --- klp-ui/src/components/CoilSelector/index.vue | 7 +++++-- klp-ui/src/views/wms/coil/panels/base.vue | 7 +++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/klp-ui/src/components/CoilSelector/index.vue b/klp-ui/src/components/CoilSelector/index.vue index 6b9045388..7b5482e83 100644 --- a/klp-ui/src/components/CoilSelector/index.vue +++ b/klp-ui/src/components/CoilSelector/index.vue @@ -84,7 +84,10 @@ - + + + @@ -303,7 +306,7 @@ export default { DragResizePanel, OrderDetail }, - dicts: ['coil_itemname', 'coil_material', 'coil_manufacturer', 'coil_quality_status'], + dicts: ['coil_itemname', 'coil_material', 'coil_manufacturer', 'coil_quality_status', 'wip_pack_saleman'], props: { // 非触发器模式下,外部控制显隐(触发器模式下无效) visible: { diff --git a/klp-ui/src/views/wms/coil/panels/base.vue b/klp-ui/src/views/wms/coil/panels/base.vue index d9e6f7f06..4a9f4d876 100644 --- a/klp-ui/src/views/wms/coil/panels/base.vue +++ b/klp-ui/src/views/wms/coil/panels/base.vue @@ -83,7 +83,10 @@ - + + + @@ -997,7 +1000,7 @@ export default { ContractSelect, ExceptionManager, }, - dicts: ['product_coil_status', 'coil_material', 'coil_itemname', 'coil_manufacturer', 'coil_quality_status', 'wms_next_warehouse', 'coil_business_purpose'], + dicts: ['product_coil_status', 'coil_material', 'coil_itemname', 'coil_manufacturer', 'coil_quality_status', 'wms_next_warehouse', 'coil_business_purpose', 'wip_pack_saleman'], props: { qrcode: { type: Boolean, From 9b3c39f28f4596e6c0c3a3700833696b9e5c2551 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Tue, 7 Jul 2026 15:24:11 +0800 Subject: [PATCH 11/14] =?UTF-8?q?feat(perf):=20=E6=B7=BB=E5=8A=A0=E7=BB=A9?= =?UTF-8?q?=E6=95=88=E8=80=83=E6=A0=B8=E7=9B=B8=E5=85=B3=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E5=92=8C=E5=AE=9E=E4=BD=93=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 创建了考核维度评分明细服务接口及实现类 - 添加了月度绩效考核记录服务接口及实现类 - 实现了绩效系数换算、车间考核参数配置等相关服务 - 定义了绩效考核相关的实体类和业务对象 - 创建了绩效考核控制器提供CRUD操作接口 - 配置了数据库映射文件和结果集映射 - 实现了数据校验和分页查询功能 --- klp-admin/pom.xml | 6 + klp-perf/pom.xml | 28 +++ .../controller/PerfAppraisalController.java | 99 ++++++++ .../PerfAppraisalDetailController.java | 99 ++++++++ .../controller/PerfCoeffRangeController.java | 99 ++++++++ .../controller/PerfDeptConfigController.java | 99 ++++++++ .../PerfDeptItemConfigController.java | 99 ++++++++ .../controller/PerfDeptSummaryController.java | 99 ++++++++ .../PerfEmployeeInfoController.java | 99 ++++++++ .../PerfPositionTemplateController.java | 99 ++++++++ .../perf/controller/PerfSalaryController.java | 99 ++++++++ .../PerfTemplateDimensionController.java | 99 ++++++++ .../com/klp/perf/domain/PerfAppraisal.java | 92 ++++++++ .../klp/perf/domain/PerfAppraisalDetail.java | 86 +++++++ .../com/klp/perf/domain/PerfCoeffRange.java | 66 ++++++ .../com/klp/perf/domain/PerfDeptConfig.java | 83 +++++++ .../klp/perf/domain/PerfDeptItemConfig.java | 63 ++++++ .../com/klp/perf/domain/PerfDeptSummary.java | 102 +++++++++ .../com/klp/perf/domain/PerfEmployeeInfo.java | 66 ++++++ .../klp/perf/domain/PerfPositionTemplate.java | 53 +++++ .../java/com/klp/perf/domain/PerfSalary.java | 156 +++++++++++++ .../perf/domain/PerfTemplateDimension.java | 73 ++++++ .../klp/perf/domain/bo/PerfAppraisalBo.java | 99 ++++++++ .../perf/domain/bo/PerfAppraisalDetailBo.java | 92 ++++++++ .../klp/perf/domain/bo/PerfCoeffRangeBo.java | 67 ++++++ .../klp/perf/domain/bo/PerfDeptConfigBo.java | 94 ++++++++ .../perf/domain/bo/PerfDeptItemConfigBo.java | 63 ++++++ .../klp/perf/domain/bo/PerfDeptSummaryBo.java | 112 +++++++++ .../perf/domain/bo/PerfEmployeeInfoBo.java | 67 ++++++ .../domain/bo/PerfPositionTemplateBo.java | 51 +++++ .../com/klp/perf/domain/bo/PerfSalaryBo.java | 179 +++++++++++++++ .../domain/bo/PerfTemplateDimensionBo.java | 76 +++++++ .../perf/domain/vo/PerfAppraisalDetailVo.java | 108 +++++++++ .../klp/perf/domain/vo/PerfAppraisalVo.java | 116 ++++++++++ .../klp/perf/domain/vo/PerfCoeffRangeVo.java | 78 +++++++ .../klp/perf/domain/vo/PerfDeptConfigVo.java | 110 +++++++++ .../perf/domain/vo/PerfDeptItemConfigVo.java | 73 ++++++ .../klp/perf/domain/vo/PerfDeptSummaryVo.java | 132 +++++++++++ .../perf/domain/vo/PerfEmployeeInfoVo.java | 78 +++++++ .../domain/vo/PerfPositionTemplateVo.java | 59 +++++ .../com/klp/perf/domain/vo/PerfSalaryVo.java | 212 ++++++++++++++++++ .../domain/vo/PerfTemplateDimensionVo.java | 89 ++++++++ .../mapper/PerfAppraisalDetailMapper.java | 15 ++ .../klp/perf/mapper/PerfAppraisalMapper.java | 15 ++ .../klp/perf/mapper/PerfCoeffRangeMapper.java | 15 ++ .../klp/perf/mapper/PerfDeptConfigMapper.java | 15 ++ .../perf/mapper/PerfDeptItemConfigMapper.java | 15 ++ .../perf/mapper/PerfDeptSummaryMapper.java | 15 ++ .../perf/mapper/PerfEmployeeInfoMapper.java | 15 ++ .../mapper/PerfPositionTemplateMapper.java | 15 ++ .../com/klp/perf/mapper/PerfSalaryMapper.java | 15 ++ .../mapper/PerfTemplateDimensionMapper.java | 15 ++ .../service/IPerfAppraisalDetailService.java | 49 ++++ .../perf/service/IPerfAppraisalService.java | 49 ++++ .../perf/service/IPerfCoeffRangeService.java | 49 ++++ .../perf/service/IPerfDeptConfigService.java | 49 ++++ .../service/IPerfDeptItemConfigService.java | 49 ++++ .../perf/service/IPerfDeptSummaryService.java | 49 ++++ .../service/IPerfEmployeeInfoService.java | 49 ++++ .../service/IPerfPositionTemplateService.java | 49 ++++ .../klp/perf/service/IPerfSalaryService.java | 49 ++++ .../IPerfTemplateDimensionService.java | 49 ++++ .../impl/PerfAppraisalDetailServiceImpl.java | 120 ++++++++++ .../impl/PerfAppraisalServiceImpl.java | 121 ++++++++++ .../impl/PerfCoeffRangeServiceImpl.java | 115 ++++++++++ .../impl/PerfDeptConfigServiceImpl.java | 120 ++++++++++ .../impl/PerfDeptItemConfigServiceImpl.java | 114 ++++++++++ .../impl/PerfDeptSummaryServiceImpl.java | 124 ++++++++++ .../impl/PerfEmployeeInfoServiceImpl.java | 115 ++++++++++ .../impl/PerfPositionTemplateServiceImpl.java | 112 +++++++++ .../service/impl/PerfSalaryServiceImpl.java | 137 +++++++++++ .../PerfTemplateDimensionServiceImpl.java | 117 ++++++++++ .../mapper/perf/PerfAppraisalDetailMapper.xml | 30 +++ .../mapper/perf/PerfAppraisalMapper.xml | 31 +++ .../mapper/perf/PerfCoeffRangeMapper.xml | 25 +++ .../mapper/perf/PerfDeptConfigMapper.xml | 25 +++ .../mapper/perf/PerfDeptItemConfigMapper.xml | 24 ++ .../mapper/perf/PerfDeptSummaryMapper.xml | 34 +++ .../mapper/perf/PerfEmployeeInfoMapper.xml | 25 +++ .../perf/PerfPositionTemplateMapper.xml | 22 ++ .../mapper/perf/PerfSalaryMapper.xml | 47 ++++ .../perf/PerfTemplateDimensionMapper.xml | 27 +++ pom.xml | 8 + 83 files changed, 5952 insertions(+) create mode 100644 klp-perf/pom.xml create mode 100644 klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalController.java create mode 100644 klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalDetailController.java create mode 100644 klp-perf/src/main/java/com/klp/perf/controller/PerfCoeffRangeController.java create mode 100644 klp-perf/src/main/java/com/klp/perf/controller/PerfDeptConfigController.java create mode 100644 klp-perf/src/main/java/com/klp/perf/controller/PerfDeptItemConfigController.java create mode 100644 klp-perf/src/main/java/com/klp/perf/controller/PerfDeptSummaryController.java create mode 100644 klp-perf/src/main/java/com/klp/perf/controller/PerfEmployeeInfoController.java create mode 100644 klp-perf/src/main/java/com/klp/perf/controller/PerfPositionTemplateController.java create mode 100644 klp-perf/src/main/java/com/klp/perf/controller/PerfSalaryController.java create mode 100644 klp-perf/src/main/java/com/klp/perf/controller/PerfTemplateDimensionController.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisal.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisalDetail.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/PerfCoeffRange.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/PerfDeptConfig.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/PerfDeptItemConfig.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/PerfDeptSummary.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/PerfEmployeeInfo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/PerfPositionTemplate.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/PerfSalary.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/PerfTemplateDimension.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalBo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalDetailBo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/bo/PerfCoeffRangeBo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptConfigBo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptItemConfigBo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptSummaryBo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/bo/PerfEmployeeInfoBo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/bo/PerfPositionTemplateBo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/bo/PerfSalaryBo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/bo/PerfTemplateDimensionBo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalDetailVo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalVo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/vo/PerfCoeffRangeVo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptConfigVo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptItemConfigVo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptSummaryVo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/vo/PerfEmployeeInfoVo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/vo/PerfPositionTemplateVo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/vo/PerfSalaryVo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/vo/PerfTemplateDimensionVo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/mapper/PerfAppraisalDetailMapper.java create mode 100644 klp-perf/src/main/java/com/klp/perf/mapper/PerfAppraisalMapper.java create mode 100644 klp-perf/src/main/java/com/klp/perf/mapper/PerfCoeffRangeMapper.java create mode 100644 klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptConfigMapper.java create mode 100644 klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptItemConfigMapper.java create mode 100644 klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptSummaryMapper.java create mode 100644 klp-perf/src/main/java/com/klp/perf/mapper/PerfEmployeeInfoMapper.java create mode 100644 klp-perf/src/main/java/com/klp/perf/mapper/PerfPositionTemplateMapper.java create mode 100644 klp-perf/src/main/java/com/klp/perf/mapper/PerfSalaryMapper.java create mode 100644 klp-perf/src/main/java/com/klp/perf/mapper/PerfTemplateDimensionMapper.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalDetailService.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalService.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/IPerfCoeffRangeService.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/IPerfDeptConfigService.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/IPerfDeptItemConfigService.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/IPerfDeptSummaryService.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/IPerfEmployeeInfoService.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/IPerfPositionTemplateService.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/IPerfSalaryService.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/IPerfTemplateDimensionService.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalDetailServiceImpl.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalServiceImpl.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/impl/PerfCoeffRangeServiceImpl.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptConfigServiceImpl.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptItemConfigServiceImpl.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptSummaryServiceImpl.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/impl/PerfEmployeeInfoServiceImpl.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/impl/PerfPositionTemplateServiceImpl.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/impl/PerfSalaryServiceImpl.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/impl/PerfTemplateDimensionServiceImpl.java create mode 100644 klp-perf/src/main/resources/mapper/perf/PerfAppraisalDetailMapper.xml create mode 100644 klp-perf/src/main/resources/mapper/perf/PerfAppraisalMapper.xml create mode 100644 klp-perf/src/main/resources/mapper/perf/PerfCoeffRangeMapper.xml create mode 100644 klp-perf/src/main/resources/mapper/perf/PerfDeptConfigMapper.xml create mode 100644 klp-perf/src/main/resources/mapper/perf/PerfDeptItemConfigMapper.xml create mode 100644 klp-perf/src/main/resources/mapper/perf/PerfDeptSummaryMapper.xml create mode 100644 klp-perf/src/main/resources/mapper/perf/PerfEmployeeInfoMapper.xml create mode 100644 klp-perf/src/main/resources/mapper/perf/PerfPositionTemplateMapper.xml create mode 100644 klp-perf/src/main/resources/mapper/perf/PerfSalaryMapper.xml create mode 100644 klp-perf/src/main/resources/mapper/perf/PerfTemplateDimensionMapper.xml diff --git a/klp-admin/pom.xml b/klp-admin/pom.xml index 08c5aa7c2..676b77b58 100644 --- a/klp-admin/pom.xml +++ b/klp-admin/pom.xml @@ -146,6 +146,12 @@ klp-pltcm + + + com.klp + klp-perf + + org.springframework.boot spring-boot-starter-test diff --git a/klp-perf/pom.xml b/klp-perf/pom.xml new file mode 100644 index 000000000..383f73a92 --- /dev/null +++ b/klp-perf/pom.xml @@ -0,0 +1,28 @@ + + + + klp-oa + com.klp + 0.8.3 + + 4.0.0 + + klp-perf + + + 性能管理模块 + + + + + + + com.klp + klp-common + + + + + diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalController.java new file mode 100644 index 000000000..a613230b6 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalController.java @@ -0,0 +1,99 @@ +package com.klp.perf.controller; + +import java.util.List; +import java.util.Arrays; + +import lombok.RequiredArgsConstructor; +import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.*; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.klp.common.annotation.RepeatSubmit; +import com.klp.common.annotation.Log; +import com.klp.common.core.controller.BaseController; +import com.klp.common.core.domain.PageQuery; +import com.klp.common.core.domain.R; +import com.klp.common.core.validate.AddGroup; +import com.klp.common.core.validate.EditGroup; +import com.klp.common.enums.BusinessType; +import com.klp.common.utils.poi.ExcelUtil; +import com.klp.perf.domain.vo.PerfAppraisalVo; +import com.klp.perf.domain.bo.PerfAppraisalBo; +import com.klp.perf.service.IPerfAppraisalService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 月度绩效考核记录 + * + * @author klp + * @date 2026-07-07 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/perf/appraisal") +public class PerfAppraisalController extends BaseController { + + private final IPerfAppraisalService iPerfAppraisalService; + + /** + * 查询月度绩效考核记录列表 + */ + @GetMapping("/list") + public TableDataInfo list(PerfAppraisalBo bo, PageQuery pageQuery) { + return iPerfAppraisalService.queryPageList(bo, pageQuery); + } + + /** + * 导出月度绩效考核记录列表 + */ + @Log(title = "月度绩效考核记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(PerfAppraisalBo bo, HttpServletResponse response) { + List list = iPerfAppraisalService.queryList(bo); + ExcelUtil.exportExcel(list, "月度绩效考核记录", PerfAppraisalVo.class, response); + } + + /** + * 获取月度绩效考核记录详细信息 + * + * @param id 主键 + */ + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable String id) { + return R.ok(iPerfAppraisalService.queryById(id)); + } + + /** + * 新增月度绩效考核记录 + */ + @Log(title = "月度绩效考核记录", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody PerfAppraisalBo bo) { + return toAjax(iPerfAppraisalService.insertByBo(bo)); + } + + /** + * 修改月度绩效考核记录 + */ + @Log(title = "月度绩效考核记录", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody PerfAppraisalBo bo) { + return toAjax(iPerfAppraisalService.updateByBo(bo)); + } + + /** + * 删除月度绩效考核记录 + * + * @param ids 主键串 + */ + @Log(title = "月度绩效考核记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable String[] ids) { + return toAjax(iPerfAppraisalService.deleteWithValidByIds(Arrays.asList(ids), true)); + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalDetailController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalDetailController.java new file mode 100644 index 000000000..8d227187e --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalDetailController.java @@ -0,0 +1,99 @@ +package com.klp.perf.controller; + +import java.util.List; +import java.util.Arrays; + +import lombok.RequiredArgsConstructor; +import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.*; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.klp.common.annotation.RepeatSubmit; +import com.klp.common.annotation.Log; +import com.klp.common.core.controller.BaseController; +import com.klp.common.core.domain.PageQuery; +import com.klp.common.core.domain.R; +import com.klp.common.core.validate.AddGroup; +import com.klp.common.core.validate.EditGroup; +import com.klp.common.enums.BusinessType; +import com.klp.common.utils.poi.ExcelUtil; +import com.klp.perf.domain.vo.PerfAppraisalDetailVo; +import com.klp.perf.domain.bo.PerfAppraisalDetailBo; +import com.klp.perf.service.IPerfAppraisalDetailService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 考核维度评分明细 + * + * @author klp + * @date 2026-07-07 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/perf/appraisalDetail") +public class PerfAppraisalDetailController extends BaseController { + + private final IPerfAppraisalDetailService iPerfAppraisalDetailService; + + /** + * 查询考核维度评分明细列表 + */ + @GetMapping("/list") + public TableDataInfo list(PerfAppraisalDetailBo bo, PageQuery pageQuery) { + return iPerfAppraisalDetailService.queryPageList(bo, pageQuery); + } + + /** + * 导出考核维度评分明细列表 + */ + @Log(title = "考核维度评分明细", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(PerfAppraisalDetailBo bo, HttpServletResponse response) { + List list = iPerfAppraisalDetailService.queryList(bo); + ExcelUtil.exportExcel(list, "考核维度评分明细", PerfAppraisalDetailVo.class, response); + } + + /** + * 获取考核维度评分明细详细信息 + * + * @param id 主键 + */ + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable String id) { + return R.ok(iPerfAppraisalDetailService.queryById(id)); + } + + /** + * 新增考核维度评分明细 + */ + @Log(title = "考核维度评分明细", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody PerfAppraisalDetailBo bo) { + return toAjax(iPerfAppraisalDetailService.insertByBo(bo)); + } + + /** + * 修改考核维度评分明细 + */ + @Log(title = "考核维度评分明细", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody PerfAppraisalDetailBo bo) { + return toAjax(iPerfAppraisalDetailService.updateByBo(bo)); + } + + /** + * 删除考核维度评分明细 + * + * @param ids 主键串 + */ + @Log(title = "考核维度评分明细", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable String[] ids) { + return toAjax(iPerfAppraisalDetailService.deleteWithValidByIds(Arrays.asList(ids), true)); + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfCoeffRangeController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfCoeffRangeController.java new file mode 100644 index 000000000..6459736a2 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfCoeffRangeController.java @@ -0,0 +1,99 @@ +package com.klp.perf.controller; + +import java.util.List; +import java.util.Arrays; + +import lombok.RequiredArgsConstructor; +import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.*; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.klp.common.annotation.RepeatSubmit; +import com.klp.common.annotation.Log; +import com.klp.common.core.controller.BaseController; +import com.klp.common.core.domain.PageQuery; +import com.klp.common.core.domain.R; +import com.klp.common.core.validate.AddGroup; +import com.klp.common.core.validate.EditGroup; +import com.klp.common.enums.BusinessType; +import com.klp.common.utils.poi.ExcelUtil; +import com.klp.perf.domain.vo.PerfCoeffRangeVo; +import com.klp.perf.domain.bo.PerfCoeffRangeBo; +import com.klp.perf.service.IPerfCoeffRangeService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 绩效系数换算 + * + * @author klp + * @date 2026-07-07 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/perf/coeffRange") +public class PerfCoeffRangeController extends BaseController { + + private final IPerfCoeffRangeService iPerfCoeffRangeService; + + /** + * 查询绩效系数换算列表 + */ + @GetMapping("/list") + public TableDataInfo list(PerfCoeffRangeBo bo, PageQuery pageQuery) { + return iPerfCoeffRangeService.queryPageList(bo, pageQuery); + } + + /** + * 导出绩效系数换算列表 + */ + @Log(title = "绩效系数换算", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(PerfCoeffRangeBo bo, HttpServletResponse response) { + List list = iPerfCoeffRangeService.queryList(bo); + ExcelUtil.exportExcel(list, "绩效系数换算", PerfCoeffRangeVo.class, response); + } + + /** + * 获取绩效系数换算详细信息 + * + * @param id 主键 + */ + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable String id) { + return R.ok(iPerfCoeffRangeService.queryById(id)); + } + + /** + * 新增绩效系数换算 + */ + @Log(title = "绩效系数换算", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody PerfCoeffRangeBo bo) { + return toAjax(iPerfCoeffRangeService.insertByBo(bo)); + } + + /** + * 修改绩效系数换算 + */ + @Log(title = "绩效系数换算", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody PerfCoeffRangeBo bo) { + return toAjax(iPerfCoeffRangeService.updateByBo(bo)); + } + + /** + * 删除绩效系数换算 + * + * @param ids 主键串 + */ + @Log(title = "绩效系数换算", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable String[] ids) { + return toAjax(iPerfCoeffRangeService.deleteWithValidByIds(Arrays.asList(ids), true)); + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptConfigController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptConfigController.java new file mode 100644 index 000000000..36171783a --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptConfigController.java @@ -0,0 +1,99 @@ +package com.klp.perf.controller; + +import java.util.List; +import java.util.Arrays; + +import lombok.RequiredArgsConstructor; +import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.*; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.klp.common.annotation.RepeatSubmit; +import com.klp.common.annotation.Log; +import com.klp.common.core.controller.BaseController; +import com.klp.common.core.domain.PageQuery; +import com.klp.common.core.domain.R; +import com.klp.common.core.validate.AddGroup; +import com.klp.common.core.validate.EditGroup; +import com.klp.common.enums.BusinessType; +import com.klp.common.utils.poi.ExcelUtil; +import com.klp.perf.domain.vo.PerfDeptConfigVo; +import com.klp.perf.domain.bo.PerfDeptConfigBo; +import com.klp.perf.service.IPerfDeptConfigService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 车间考核参数配置 + * + * @author klp + * @date 2026-07-07 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/perf/deptConfig") +public class PerfDeptConfigController extends BaseController { + + private final IPerfDeptConfigService iPerfDeptConfigService; + + /** + * 查询车间考核参数配置列表 + */ + @GetMapping("/list") + public TableDataInfo list(PerfDeptConfigBo bo, PageQuery pageQuery) { + return iPerfDeptConfigService.queryPageList(bo, pageQuery); + } + + /** + * 导出车间考核参数配置列表 + */ + @Log(title = "车间考核参数配置", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(PerfDeptConfigBo bo, HttpServletResponse response) { + List list = iPerfDeptConfigService.queryList(bo); + ExcelUtil.exportExcel(list, "车间考核参数配置", PerfDeptConfigVo.class, response); + } + + /** + * 获取车间考核参数配置详细信息 + * + * @param id 主键 + */ + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable String id) { + return R.ok(iPerfDeptConfigService.queryById(id)); + } + + /** + * 新增车间考核参数配置 + */ + @Log(title = "车间考核参数配置", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody PerfDeptConfigBo bo) { + return toAjax(iPerfDeptConfigService.insertByBo(bo)); + } + + /** + * 修改车间考核参数配置 + */ + @Log(title = "车间考核参数配置", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody PerfDeptConfigBo bo) { + return toAjax(iPerfDeptConfigService.updateByBo(bo)); + } + + /** + * 删除车间考核参数配置 + * + * @param ids 主键串 + */ + @Log(title = "车间考核参数配置", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable String[] ids) { + return toAjax(iPerfDeptConfigService.deleteWithValidByIds(Arrays.asList(ids), true)); + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptItemConfigController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptItemConfigController.java new file mode 100644 index 000000000..7096cea61 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptItemConfigController.java @@ -0,0 +1,99 @@ +package com.klp.perf.controller; + +import java.util.List; +import java.util.Arrays; + +import lombok.RequiredArgsConstructor; +import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.*; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.klp.common.annotation.RepeatSubmit; +import com.klp.common.annotation.Log; +import com.klp.common.core.controller.BaseController; +import com.klp.common.core.domain.PageQuery; +import com.klp.common.core.domain.R; +import com.klp.common.core.validate.AddGroup; +import com.klp.common.core.validate.EditGroup; +import com.klp.common.enums.BusinessType; +import com.klp.common.utils.poi.ExcelUtil; +import com.klp.perf.domain.vo.PerfDeptItemConfigVo; +import com.klp.perf.domain.bo.PerfDeptItemConfigBo; +import com.klp.perf.service.IPerfDeptItemConfigService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 车间扣款/奖励项目配置 + * + * @author klp + * @date 2026-07-07 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/perf/deptItemConfig") +public class PerfDeptItemConfigController extends BaseController { + + private final IPerfDeptItemConfigService iPerfDeptItemConfigService; + + /** + * 查询车间扣款/奖励项目配置列表 + */ + @GetMapping("/list") + public TableDataInfo list(PerfDeptItemConfigBo bo, PageQuery pageQuery) { + return iPerfDeptItemConfigService.queryPageList(bo, pageQuery); + } + + /** + * 导出车间扣款/奖励项目配置列表 + */ + @Log(title = "车间扣款/奖励项目配置", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(PerfDeptItemConfigBo bo, HttpServletResponse response) { + List list = iPerfDeptItemConfigService.queryList(bo); + ExcelUtil.exportExcel(list, "车间扣款/奖励项目配置", PerfDeptItemConfigVo.class, response); + } + + /** + * 获取车间扣款/奖励项目配置详细信息 + * + * @param id 主键 + */ + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable String id) { + return R.ok(iPerfDeptItemConfigService.queryById(id)); + } + + /** + * 新增车间扣款/奖励项目配置 + */ + @Log(title = "车间扣款/奖励项目配置", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody PerfDeptItemConfigBo bo) { + return toAjax(iPerfDeptItemConfigService.insertByBo(bo)); + } + + /** + * 修改车间扣款/奖励项目配置 + */ + @Log(title = "车间扣款/奖励项目配置", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody PerfDeptItemConfigBo bo) { + return toAjax(iPerfDeptItemConfigService.updateByBo(bo)); + } + + /** + * 删除车间扣款/奖励项目配置 + * + * @param ids 主键串 + */ + @Log(title = "车间扣款/奖励项目配置", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable String[] ids) { + return toAjax(iPerfDeptItemConfigService.deleteWithValidByIds(Arrays.asList(ids), true)); + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptSummaryController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptSummaryController.java new file mode 100644 index 000000000..75a89445e --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptSummaryController.java @@ -0,0 +1,99 @@ +package com.klp.perf.controller; + +import java.util.List; +import java.util.Arrays; + +import lombok.RequiredArgsConstructor; +import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.*; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.klp.common.annotation.RepeatSubmit; +import com.klp.common.annotation.Log; +import com.klp.common.core.controller.BaseController; +import com.klp.common.core.domain.PageQuery; +import com.klp.common.core.domain.R; +import com.klp.common.core.validate.AddGroup; +import com.klp.common.core.validate.EditGroup; +import com.klp.common.enums.BusinessType; +import com.klp.common.utils.poi.ExcelUtil; +import com.klp.perf.domain.vo.PerfDeptSummaryVo; +import com.klp.perf.domain.bo.PerfDeptSummaryBo; +import com.klp.perf.service.IPerfDeptSummaryService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 车间月度汇总 + * + * @author klp + * @date 2026-07-07 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/perf/deptSummary") +public class PerfDeptSummaryController extends BaseController { + + private final IPerfDeptSummaryService iPerfDeptSummaryService; + + /** + * 查询车间月度汇总列表 + */ + @GetMapping("/list") + public TableDataInfo list(PerfDeptSummaryBo bo, PageQuery pageQuery) { + return iPerfDeptSummaryService.queryPageList(bo, pageQuery); + } + + /** + * 导出车间月度汇总列表 + */ + @Log(title = "车间月度汇总", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(PerfDeptSummaryBo bo, HttpServletResponse response) { + List list = iPerfDeptSummaryService.queryList(bo); + ExcelUtil.exportExcel(list, "车间月度汇总", PerfDeptSummaryVo.class, response); + } + + /** + * 获取车间月度汇总详细信息 + * + * @param id 主键 + */ + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable String id) { + return R.ok(iPerfDeptSummaryService.queryById(id)); + } + + /** + * 新增车间月度汇总 + */ + @Log(title = "车间月度汇总", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody PerfDeptSummaryBo bo) { + return toAjax(iPerfDeptSummaryService.insertByBo(bo)); + } + + /** + * 修改车间月度汇总 + */ + @Log(title = "车间月度汇总", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody PerfDeptSummaryBo bo) { + return toAjax(iPerfDeptSummaryService.updateByBo(bo)); + } + + /** + * 删除车间月度汇总 + * + * @param ids 主键串 + */ + @Log(title = "车间月度汇总", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable String[] ids) { + return toAjax(iPerfDeptSummaryService.deleteWithValidByIds(Arrays.asList(ids), true)); + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfEmployeeInfoController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfEmployeeInfoController.java new file mode 100644 index 000000000..c627f99fe --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfEmployeeInfoController.java @@ -0,0 +1,99 @@ +package com.klp.perf.controller; + +import java.util.List; +import java.util.Arrays; + +import lombok.RequiredArgsConstructor; +import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.*; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.klp.common.annotation.RepeatSubmit; +import com.klp.common.annotation.Log; +import com.klp.common.core.controller.BaseController; +import com.klp.common.core.domain.PageQuery; +import com.klp.common.core.domain.R; +import com.klp.common.core.validate.AddGroup; +import com.klp.common.core.validate.EditGroup; +import com.klp.common.enums.BusinessType; +import com.klp.common.utils.poi.ExcelUtil; +import com.klp.perf.domain.vo.PerfEmployeeInfoVo; +import com.klp.perf.domain.bo.PerfEmployeeInfoBo; +import com.klp.perf.service.IPerfEmployeeInfoService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 员工绩效薪资基本信息 + * + * @author klp + * @date 2026-07-07 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/perf/employeeInfo") +public class PerfEmployeeInfoController extends BaseController { + + private final IPerfEmployeeInfoService iPerfEmployeeInfoService; + + /** + * 查询员工绩效薪资基本信息列表 + */ + @GetMapping("/list") + public TableDataInfo list(PerfEmployeeInfoBo bo, PageQuery pageQuery) { + return iPerfEmployeeInfoService.queryPageList(bo, pageQuery); + } + + /** + * 导出员工绩效薪资基本信息列表 + */ + @Log(title = "员工绩效薪资基本信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(PerfEmployeeInfoBo bo, HttpServletResponse response) { + List list = iPerfEmployeeInfoService.queryList(bo); + ExcelUtil.exportExcel(list, "员工绩效薪资基本信息", PerfEmployeeInfoVo.class, response); + } + + /** + * 获取员工绩效薪资基本信息详细信息 + * + * @param id 主键 + */ + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable String id) { + return R.ok(iPerfEmployeeInfoService.queryById(id)); + } + + /** + * 新增员工绩效薪资基本信息 + */ + @Log(title = "员工绩效薪资基本信息", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody PerfEmployeeInfoBo bo) { + return toAjax(iPerfEmployeeInfoService.insertByBo(bo)); + } + + /** + * 修改员工绩效薪资基本信息 + */ + @Log(title = "员工绩效薪资基本信息", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody PerfEmployeeInfoBo bo) { + return toAjax(iPerfEmployeeInfoService.updateByBo(bo)); + } + + /** + * 删除员工绩效薪资基本信息 + * + * @param ids 主键串 + */ + @Log(title = "员工绩效薪资基本信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable String[] ids) { + return toAjax(iPerfEmployeeInfoService.deleteWithValidByIds(Arrays.asList(ids), true)); + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfPositionTemplateController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfPositionTemplateController.java new file mode 100644 index 000000000..604ce080a --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfPositionTemplateController.java @@ -0,0 +1,99 @@ +package com.klp.perf.controller; + +import java.util.List; +import java.util.Arrays; + +import lombok.RequiredArgsConstructor; +import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.*; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.klp.common.annotation.RepeatSubmit; +import com.klp.common.annotation.Log; +import com.klp.common.core.controller.BaseController; +import com.klp.common.core.domain.PageQuery; +import com.klp.common.core.domain.R; +import com.klp.common.core.validate.AddGroup; +import com.klp.common.core.validate.EditGroup; +import com.klp.common.enums.BusinessType; +import com.klp.common.utils.poi.ExcelUtil; +import com.klp.perf.domain.vo.PerfPositionTemplateVo; +import com.klp.perf.domain.bo.PerfPositionTemplateBo; +import com.klp.perf.service.IPerfPositionTemplateService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 岗位绩效考核模板 + * + * @author klp + * @date 2026-07-07 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/perf/positionTemplate") +public class PerfPositionTemplateController extends BaseController { + + private final IPerfPositionTemplateService iPerfPositionTemplateService; + + /** + * 查询岗位绩效考核模板列表 + */ + @GetMapping("/list") + public TableDataInfo list(PerfPositionTemplateBo bo, PageQuery pageQuery) { + return iPerfPositionTemplateService.queryPageList(bo, pageQuery); + } + + /** + * 导出岗位绩效考核模板列表 + */ + @Log(title = "岗位绩效考核模板", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(PerfPositionTemplateBo bo, HttpServletResponse response) { + List list = iPerfPositionTemplateService.queryList(bo); + ExcelUtil.exportExcel(list, "岗位绩效考核模板", PerfPositionTemplateVo.class, response); + } + + /** + * 获取岗位绩效考核模板详细信息 + * + * @param id 主键 + */ + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable String id) { + return R.ok(iPerfPositionTemplateService.queryById(id)); + } + + /** + * 新增岗位绩效考核模板 + */ + @Log(title = "岗位绩效考核模板", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody PerfPositionTemplateBo bo) { + return toAjax(iPerfPositionTemplateService.insertByBo(bo)); + } + + /** + * 修改岗位绩效考核模板 + */ + @Log(title = "岗位绩效考核模板", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody PerfPositionTemplateBo bo) { + return toAjax(iPerfPositionTemplateService.updateByBo(bo)); + } + + /** + * 删除岗位绩效考核模板 + * + * @param ids 主键串 + */ + @Log(title = "岗位绩效考核模板", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable String[] ids) { + return toAjax(iPerfPositionTemplateService.deleteWithValidByIds(Arrays.asList(ids), true)); + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfSalaryController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfSalaryController.java new file mode 100644 index 000000000..63cf97931 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfSalaryController.java @@ -0,0 +1,99 @@ +package com.klp.perf.controller; + +import java.util.List; +import java.util.Arrays; + +import lombok.RequiredArgsConstructor; +import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.*; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.klp.common.annotation.RepeatSubmit; +import com.klp.common.annotation.Log; +import com.klp.common.core.controller.BaseController; +import com.klp.common.core.domain.PageQuery; +import com.klp.common.core.domain.R; +import com.klp.common.core.validate.AddGroup; +import com.klp.common.core.validate.EditGroup; +import com.klp.common.enums.BusinessType; +import com.klp.common.utils.poi.ExcelUtil; +import com.klp.perf.domain.vo.PerfSalaryVo; +import com.klp.perf.domain.bo.PerfSalaryBo; +import com.klp.perf.service.IPerfSalaryService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 月度薪资计算记录 + * + * @author klp + * @date 2026-07-07 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/perf/salary") +public class PerfSalaryController extends BaseController { + + private final IPerfSalaryService iPerfSalaryService; + + /** + * 查询月度薪资计算记录列表 + */ + @GetMapping("/list") + public TableDataInfo list(PerfSalaryBo bo, PageQuery pageQuery) { + return iPerfSalaryService.queryPageList(bo, pageQuery); + } + + /** + * 导出月度薪资计算记录列表 + */ + @Log(title = "月度薪资计算记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(PerfSalaryBo bo, HttpServletResponse response) { + List list = iPerfSalaryService.queryList(bo); + ExcelUtil.exportExcel(list, "月度薪资计算记录", PerfSalaryVo.class, response); + } + + /** + * 获取月度薪资计算记录详细信息 + * + * @param id 主键 + */ + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable String id) { + return R.ok(iPerfSalaryService.queryById(id)); + } + + /** + * 新增月度薪资计算记录 + */ + @Log(title = "月度薪资计算记录", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody PerfSalaryBo bo) { + return toAjax(iPerfSalaryService.insertByBo(bo)); + } + + /** + * 修改月度薪资计算记录 + */ + @Log(title = "月度薪资计算记录", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody PerfSalaryBo bo) { + return toAjax(iPerfSalaryService.updateByBo(bo)); + } + + /** + * 删除月度薪资计算记录 + * + * @param ids 主键串 + */ + @Log(title = "月度薪资计算记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable String[] ids) { + return toAjax(iPerfSalaryService.deleteWithValidByIds(Arrays.asList(ids), true)); + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfTemplateDimensionController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfTemplateDimensionController.java new file mode 100644 index 000000000..ef243af19 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfTemplateDimensionController.java @@ -0,0 +1,99 @@ +package com.klp.perf.controller; + +import java.util.List; +import java.util.Arrays; + +import lombok.RequiredArgsConstructor; +import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.*; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.klp.common.annotation.RepeatSubmit; +import com.klp.common.annotation.Log; +import com.klp.common.core.controller.BaseController; +import com.klp.common.core.domain.PageQuery; +import com.klp.common.core.domain.R; +import com.klp.common.core.validate.AddGroup; +import com.klp.common.core.validate.EditGroup; +import com.klp.common.enums.BusinessType; +import com.klp.common.utils.poi.ExcelUtil; +import com.klp.perf.domain.vo.PerfTemplateDimensionVo; +import com.klp.perf.domain.bo.PerfTemplateDimensionBo; +import com.klp.perf.service.IPerfTemplateDimensionService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 考核维度明细 + * + * @author klp + * @date 2026-07-07 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/perf/templateDimension") +public class PerfTemplateDimensionController extends BaseController { + + private final IPerfTemplateDimensionService iPerfTemplateDimensionService; + + /** + * 查询考核维度明细列表 + */ + @GetMapping("/list") + public TableDataInfo list(PerfTemplateDimensionBo bo, PageQuery pageQuery) { + return iPerfTemplateDimensionService.queryPageList(bo, pageQuery); + } + + /** + * 导出考核维度明细列表 + */ + @Log(title = "考核维度明细", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(PerfTemplateDimensionBo bo, HttpServletResponse response) { + List list = iPerfTemplateDimensionService.queryList(bo); + ExcelUtil.exportExcel(list, "考核维度明细", PerfTemplateDimensionVo.class, response); + } + + /** + * 获取考核维度明细详细信息 + * + * @param id 主键 + */ + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable String id) { + return R.ok(iPerfTemplateDimensionService.queryById(id)); + } + + /** + * 新增考核维度明细 + */ + @Log(title = "考核维度明细", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody PerfTemplateDimensionBo bo) { + return toAjax(iPerfTemplateDimensionService.insertByBo(bo)); + } + + /** + * 修改考核维度明细 + */ + @Log(title = "考核维度明细", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody PerfTemplateDimensionBo bo) { + return toAjax(iPerfTemplateDimensionService.updateByBo(bo)); + } + + /** + * 删除考核维度明细 + * + * @param ids 主键串 + */ + @Log(title = "考核维度明细", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable String[] ids) { + return toAjax(iPerfTemplateDimensionService.deleteWithValidByIds(Arrays.asList(ids), true)); + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisal.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisal.java new file mode 100644 index 000000000..6315adb6e --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisal.java @@ -0,0 +1,92 @@ +package com.klp.perf.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 月度绩效考核记录对象 perf_appraisal + * + * @author klp + * @date 2026-07-07 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("perf_appraisal") +public class PerfAppraisal extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * + */ + @TableId(value = "id") + private String id; + /** + * 关联现有员工表主键 + */ + private String employeeId; + /** + * 关联 wms_dept.id + */ + private String deptId; + /** + * 关联 perf_position_template.id (当月使用的模板) + */ + private String templateId; + /** + * 考核周期 YYYY-MM + */ + private String period; + /** + * 加权得分 = SUM(维度得分) + */ + private BigDecimal weightedScore; + /** + * 总加分 + */ + private BigDecimal bonusScore; + /** + * 总扣分 + */ + private BigDecimal penaltyScore; + /** + * 最终得分 = MIN(120, 加权得分+加分-扣分) + */ + private BigDecimal finalScore; + /** + * 评级 S/A/B/C/D + */ + private String grade; + /** + * 绩效系数(线性插值换算,自动同步到岗位系数) + */ + private BigDecimal perfCoeff; + /** + * 0=草稿 1=已确认 2=已归档 + */ + private Long status; + /** + * + */ + private Date confirmedAt; + /** + * 确认人 + */ + private String confirmedBy; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisalDetail.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisalDetail.java new file mode 100644 index 000000000..d1e57b7c4 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisalDetail.java @@ -0,0 +1,86 @@ +package com.klp.perf.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; + +/** + * 考核维度评分明细对象 perf_appraisal_detail + * + * @author klp + * @date 2026-07-07 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("perf_appraisal_detail") +public class PerfAppraisalDetail extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * + */ + @TableId(value = "id") + private String id; + /** + * 关联 perf_appraisal.id + */ + private String appraisalId; + /** + * 关联 perf_template_dimension.id + */ + private String dimensionId; + /** + * 序号(从模板快照) + */ + private String seq; + /** + * 维度名称(从模板快照) + */ + private String dimName; + /** + * 权重(从模板快照) + */ + private String weight; + /** + * 目标值(可覆盖模板默认值) + */ + private String targetValue; + /** + * 实际值(考核人填写) + */ + private String actualValue; + /** + * 维度得分(公式计算) + */ + private BigDecimal dimScore; + /** + * 本维度额外加分 + */ + private BigDecimal bonus; + /** + * 本维度额外扣分 + */ + private BigDecimal penalty; + /** + * 评分公式(从模板快照) + */ + private String scoreFormula; + /** + * 评分规则(从模板快照) + */ + private String scoreRule; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfCoeffRange.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfCoeffRange.java new file mode 100644 index 000000000..f9e29d531 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfCoeffRange.java @@ -0,0 +1,66 @@ +package com.klp.perf.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; + +/** + * 绩效系数换算对象 perf_coeff_range + * + * @author klp + * @date 2026-07-07 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("perf_coeff_range") +public class PerfCoeffRange extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * 主键 + */ + @TableId(value = "id") + private String id; + /** + * 等级标识 S/A/B/C/D + */ + private String grade; + /** + * 等级名称 卓越/优秀/合格/待改进/不合格 + */ + private String gradeLabel; + /** + * 得分下限(含) + */ + private BigDecimal scoreMin; + /** + * 得分上限(含) + */ + private BigDecimal scoreMax; + /** + * 最低绩效系数 + */ + private BigDecimal coeffMin; + /** + * 最高绩效系数 + */ + private BigDecimal coeffMax; + /** + * 排序(高→低) + */ + private Long sortOrder; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptConfig.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptConfig.java new file mode 100644 index 000000000..4f63b60ac --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptConfig.java @@ -0,0 +1,83 @@ +package com.klp.perf.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 车间考核参数配置对象 perf_dept_config + * + * @author klp + * @date 2026-07-07 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("perf_dept_config") +public class PerfDeptConfig extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * + */ + @TableId(value = "id") + private String id; + /** + * 关联 wms_dept.id + */ + private String deptId; + /** + * 月产量目标(吨) 或 月产长度目标(m) + */ + private BigDecimal monthlyProductionTarget; + /** + * 产量单位: 吨 / m + */ + private String productionUnit; + /** + * 绩效吨钢(元) 或 绩效米钢(元) + */ + private BigDecimal perfUnitPrice; + /** + * 生产班数 + */ + private Long productionShifts; + /** + * 停机保底班数 + */ + private Long guaranteedShifts; + /** + * 车间系数(默认1.0) + */ + private BigDecimal deptCoeff; + /** + * 薪资模式: 0=普通模式 1=保底模式(hasBaoSalary) + */ + private Long salaryMode; + /** + * 保底薪资除数(底薪÷60=保底每班金额) + */ + private Long baseDivisor; + /** + * 月份 + */ + private Date month; + /** + * + */ + private String remark; + /** + * + */ + private Date createdAt; + /** + * + */ + private Date updatedAt; + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptItemConfig.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptItemConfig.java new file mode 100644 index 000000000..85309d310 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptItemConfig.java @@ -0,0 +1,63 @@ +package com.klp.perf.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 车间扣款/奖励项目配置对象 perf_dept_item_config + * + * @author klp + * @date 2026-07-07 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("perf_dept_item_config") +public class PerfDeptItemConfig extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * + */ + @TableId(value = "id") + private String id; + /** + * 关联 wms_dept.id + */ + private String deptId; + /** + * 类型: 1=扣款项目 2=奖励项目 + */ + private Long itemType; + /** + * 项目名称 如:质量扣款/节能奖励 + */ + private String itemName; + /** + * + */ + private Long sortOrder; + /** + * 月份 + */ + private Date month; + /** + * + */ + private Long isEnabled; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptSummary.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptSummary.java new file mode 100644 index 000000000..9d1b2b39e --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptSummary.java @@ -0,0 +1,102 @@ +package com.klp.perf.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; + +/** + * 车间月度汇总对象 perf_dept_summary + * + * @author klp + * @date 2026-07-07 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("perf_dept_summary") +public class PerfDeptSummary extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * + */ + @TableId(value = "id") + private String id; + /** + * 关联 wms_dept.id + */ + private String deptId; + /** + * 周期 YYYY-MM + */ + private String period; + /** + * 总人数 + */ + private Long totalEmployees; + /** + * 系数总计(所有人员总系数之和) + */ + private BigDecimal totalCoeffSum; + /** + * 平均考核得分 + */ + private BigDecimal avgPerfScore; + /** + * 平均绩效系数 + */ + private BigDecimal avgPerfCoeff; + /** + * 底薪合计 + */ + private BigDecimal totalBaseSalary; + /** + * 月度绩效工资合计 + */ + private BigDecimal totalPerfWage; + /** + * 扣款合计 + */ + private BigDecimal totalDeductions; + /** + * 奖励合计 + */ + private BigDecimal totalBonuses; + /** + * 其他合计 + */ + private BigDecimal totalOther; + /** + * 实领薪资合计 + */ + private BigDecimal totalActualSalary; + /** + * 人均实领薪资 + */ + private BigDecimal avgActualSalary; + /** + * 当月实际产量 + */ + private BigDecimal monthlyProduction; + /** + * 系数单价(自动计算) = 月产量×绩效吨钢/系数总计 + */ + private BigDecimal unitPrice; + /** + * 0=草稿 1=已确认 + */ + private Long status; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfEmployeeInfo.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfEmployeeInfo.java new file mode 100644 index 000000000..63a16aa36 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfEmployeeInfo.java @@ -0,0 +1,66 @@ +package com.klp.perf.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; + +/** + * 员工绩效薪资基本信息对象 perf_employee_info + * + * @author klp + * @date 2026-07-07 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("perf_employee_info") +public class PerfEmployeeInfo extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * + */ + @TableId(value = "id") + private String id; + /** + * 关联现有员工表主键 + */ + private String employeeId; + /** + * 关联 wms_dept.id (冗余,便于按部门查询) + */ + private String deptId; + /** + * 岗位/工种 + */ + private String positionName; + /** + * 底薪(元) + */ + private BigDecimal baseSalary; + /** + * 岗位绩效基数(元), 默认≈底薪×20% + */ + private BigDecimal perfBase; + /** + * 默认岗位系数(初始值,后续月度由绩效自动覆盖) + */ + private BigDecimal posCoeffDefault; + /** + * 是否在职 1=在职 0=离职 + */ + private Long isActive; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfPositionTemplate.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfPositionTemplate.java new file mode 100644 index 000000000..d2f8c6c62 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfPositionTemplate.java @@ -0,0 +1,53 @@ +package com.klp.perf.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + + +/** + * 岗位绩效考核模板对象 perf_position_template + * + * @author klp + * @date 2026-07-07 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("perf_position_template") +public class PerfPositionTemplate extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * + */ + @TableId(value = "id") + private String id; + /** + * 关联 wms_dept.id + */ + private String deptId; + /** + * 岗位名称 (与员工表岗位字段匹配) + */ + private String positionName; + /** + * 模板标题 如:轧机主操绩效考核评分表 + */ + private String title; + /** + * + */ + private Long isEnabled; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfSalary.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfSalary.java new file mode 100644 index 000000000..d448bf9f1 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfSalary.java @@ -0,0 +1,156 @@ +package com.klp.perf.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 月度薪资计算记录对象 perf_salary + * + * @author klp + * @date 2026-07-07 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("perf_salary") +public class PerfSalary extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * + */ + @TableId(value = "id") + private String id; + /** + * 关联现有员工表主键 + */ + private String employeeId; + /** + * 关联 wms_dept.id + */ + private String deptId; + /** + * 关联 perf_appraisal.id (可为空=未考核) + */ + private String appraisalId; + /** + * 薪资周期 YYYY-MM + */ + private String period; + /** + * 底薪 + */ + private BigDecimal baseSalary; + /** + * 岗位绩效基数 + */ + private BigDecimal perfBase; + /** + * 考核得分(关联 perf_appraisal.final_score) + */ + private BigDecimal perfScore; + /** + * 绩效系数(得分换算,关联 perf_appraisal.perf_coeff) + */ + private BigDecimal perfCoeff; + /** + * 车间系数(来自 perf_dept_config.dept_coeff) + */ + private BigDecimal deptCoeff; + /** + * 月度绩效工资 = perf_base × perf_coeff × dept_coeff + */ + private BigDecimal perfWage; + /** + * 岗位系数 (=绩效系数,自动同步) + */ + private BigDecimal posCoeff; + /** + * 固定系数 = pos_coeff × 0.7 + */ + private BigDecimal fixedCoeff; + /** + * 可调系数(手动覆盖,默认=pos_coeff×0.3) + */ + private BigDecimal adjCoeff; + /** + * 可调系数是否手动覆盖: 0=自动 1=手动 + */ + private Long adjCoeffManual; + /** + * 总系数 = fixed_coeff + adj_coeff + */ + private BigDecimal totalCoeff; + /** + * 扣款明细 {"质量扣款":0,"倒卷扣款":0,"客诉扣款":0,...} + */ + private String deductionsJson; + /** + * 扣款合计 + */ + private BigDecimal deductionsTotal; + /** + * 奖励明细 {"节能奖励":0,...} + */ + private String bonusesJson; + /** + * 奖励合计 + */ + private BigDecimal bonusesTotal; + /** + * 其他金额 + */ + private BigDecimal otherAmount; + /** + * 实领薪资 = 底薪+月度绩效工资-扣款合计+奖励合计+其他 + */ + private BigDecimal actualSalary; + /** + * 固定系数薪资(参考) = fixed_coeff × 系数单价 + */ + private BigDecimal fixedSalaryRef; + /** + * 可调系数薪资(参考) = adj_coeff × 系数单价 + */ + private BigDecimal adjSalaryRef; + /** + * 保底每班(参考) = base_salary / 60 + */ + private BigDecimal baoPerShiftRef; + /** + * 保底薪资(参考) = bao_per_shift × 保底班数 + */ + private BigDecimal baoSalaryRef; + /** + * 合计薪资(参考) = fixed_salary_ref+adj_salary_ref+bao_salary_ref + */ + private BigDecimal totalSalaryRef; + /** + * 0=草稿 1=已确认 2=已归档 + */ + private Long status; + /** + * + */ + private Date confirmedAt; + /** + * + */ + private String confirmedBy; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfTemplateDimension.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfTemplateDimension.java new file mode 100644 index 000000000..4478ba48b --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfTemplateDimension.java @@ -0,0 +1,73 @@ +package com.klp.perf.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + + +/** + * 考核维度明细对象 perf_template_dimension + * + * @author klp + * @date 2026-07-07 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("perf_template_dimension") +public class PerfTemplateDimension extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * + */ + @TableId(value = "id") + private String id; + /** + * 关联 perf_position_template.id + */ + private String templateId; + /** + * 序号 + */ + private String seq; + /** + * 考核维度 如:产量/质量/安全/检测准确性 + */ + private String dimName; + /** + * 权重 如:40% 或 0.4 + */ + private String weight; + /** + * 量化指标 如:月产量达标率/产品合格率 + */ + private String indicator; + /** + * 目标值 如:≥98% / 100% / 0次 / 达标 + */ + private String targetValue; + /** + * 评分公式 如:=IF(E4>0,25*(F4/E4),0) + */ + private String scoreFormula; + /** + * 评分规则文字描述 + */ + private String scoreRule; + /** + * + */ + private Long isEnabled; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalBo.java new file mode 100644 index 000000000..fa1a2e2f0 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalBo.java @@ -0,0 +1,99 @@ +package com.klp.perf.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import javax.validation.constraints.*; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 月度绩效考核记录业务对象 perf_appraisal + * + * @author klp + * @date 2026-07-07 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class PerfAppraisalBo extends BaseEntity { + + /** + * + */ + private String id; + + /** + * 关联现有员工表主键 + */ + private String employeeId; + + /** + * 关联 wms_dept.id + */ + private String deptId; + + /** + * 关联 perf_position_template.id (当月使用的模板) + */ + private String templateId; + + /** + * 考核周期 YYYY-MM + */ + private String period; + + /** + * 加权得分 = SUM(维度得分) + */ + private BigDecimal weightedScore; + + /** + * 总加分 + */ + private BigDecimal bonusScore; + + /** + * 总扣分 + */ + private BigDecimal penaltyScore; + + /** + * 最终得分 = MIN(120, 加权得分+加分-扣分) + */ + private BigDecimal finalScore; + + /** + * 评级 S/A/B/C/D + */ + private String grade; + + /** + * 绩效系数(线性插值换算,自动同步到岗位系数) + */ + private BigDecimal perfCoeff; + + /** + * 0=草稿 1=已确认 2=已归档 + */ + private Long status; + + /** + * + */ + private Date confirmedAt; + + /** + * 确认人 + */ + private String confirmedBy; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalDetailBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalDetailBo.java new file mode 100644 index 000000000..210f4d2fe --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalDetailBo.java @@ -0,0 +1,92 @@ +package com.klp.perf.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import javax.validation.constraints.*; + +import java.math.BigDecimal; + +/** + * 考核维度评分明细业务对象 perf_appraisal_detail + * + * @author klp + * @date 2026-07-07 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class PerfAppraisalDetailBo extends BaseEntity { + + /** + * + */ + private String id; + + /** + * 关联 perf_appraisal.id + */ + private String appraisalId; + + /** + * 关联 perf_template_dimension.id + */ + private String dimensionId; + + /** + * 序号(从模板快照) + */ + private String seq; + + /** + * 维度名称(从模板快照) + */ + private String dimName; + + /** + * 权重(从模板快照) + */ + private String weight; + + /** + * 目标值(可覆盖模板默认值) + */ + private String targetValue; + + /** + * 实际值(考核人填写) + */ + private String actualValue; + + /** + * 维度得分(公式计算) + */ + private BigDecimal dimScore; + + /** + * 本维度额外加分 + */ + private BigDecimal bonus; + + /** + * 本维度额外扣分 + */ + private BigDecimal penalty; + + /** + * 评分公式(从模板快照) + */ + private String scoreFormula; + + /** + * 评分规则(从模板快照) + */ + private String scoreRule; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfCoeffRangeBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfCoeffRangeBo.java new file mode 100644 index 000000000..8fb23d2aa --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfCoeffRangeBo.java @@ -0,0 +1,67 @@ +package com.klp.perf.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import javax.validation.constraints.*; + +import java.math.BigDecimal; + +/** + * 绩效系数换算业务对象 perf_coeff_range + * + * @author klp + * @date 2026-07-07 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class PerfCoeffRangeBo extends BaseEntity { + + /** + * 主键 + */ + private String id; + + /** + * 等级标识 S/A/B/C/D + */ + private String grade; + + /** + * 等级名称 卓越/优秀/合格/待改进/不合格 + */ + private String gradeLabel; + + /** + * 得分下限(含) + */ + private BigDecimal scoreMin; + + /** + * 得分上限(含) + */ + private BigDecimal scoreMax; + + /** + * 最低绩效系数 + */ + private BigDecimal coeffMin; + + /** + * 最高绩效系数 + */ + private BigDecimal coeffMax; + + /** + * 排序(高→低) + */ + private Long sortOrder; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptConfigBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptConfigBo.java new file mode 100644 index 000000000..f05387667 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptConfigBo.java @@ -0,0 +1,94 @@ +package com.klp.perf.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import javax.validation.constraints.*; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 车间考核参数配置业务对象 perf_dept_config + * + * @author klp + * @date 2026-07-07 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class PerfDeptConfigBo extends BaseEntity { + + /** + * + */ + private String id; + + /** + * 关联 wms_dept.id + */ + private String deptId; + + /** + * 月产量目标(吨) 或 月产长度目标(m) + */ + private BigDecimal monthlyProductionTarget; + + /** + * 产量单位: 吨 / m + */ + private String productionUnit; + + /** + * 绩效吨钢(元) 或 绩效米钢(元) + */ + private BigDecimal perfUnitPrice; + + /** + * 生产班数 + */ + private Long productionShifts; + + /** + * 停机保底班数 + */ + private Long guaranteedShifts; + + /** + * 车间系数(默认1.0) + */ + private BigDecimal deptCoeff; + + /** + * 薪资模式: 0=普通模式 1=保底模式(hasBaoSalary) + */ + private Long salaryMode; + + /** + * 保底薪资除数(底薪÷60=保底每班金额) + */ + private Long baseDivisor; + + /** + * 月份 + */ + private Date month; + + /** + * + */ + private String remark; + + /** + * + */ + private Date createdAt; + + /** + * + */ + private Date updatedAt; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptItemConfigBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptItemConfigBo.java new file mode 100644 index 000000000..b0c5f6b6c --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptItemConfigBo.java @@ -0,0 +1,63 @@ +package com.klp.perf.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import javax.validation.constraints.*; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 车间扣款/奖励项目配置业务对象 perf_dept_item_config + * + * @author klp + * @date 2026-07-07 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class PerfDeptItemConfigBo extends BaseEntity { + + /** + * + */ + private String id; + + /** + * 关联 wms_dept.id + */ + private String deptId; + + /** + * 类型: 1=扣款项目 2=奖励项目 + */ + private Long itemType; + + /** + * 项目名称 如:质量扣款/节能奖励 + */ + private String itemName; + + /** + * + */ + private Long sortOrder; + + /** + * 月份 + */ + private Date month; + + /** + * + */ + private Long isEnabled; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptSummaryBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptSummaryBo.java new file mode 100644 index 000000000..99e61b024 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptSummaryBo.java @@ -0,0 +1,112 @@ +package com.klp.perf.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import javax.validation.constraints.*; + +import java.math.BigDecimal; + +/** + * 车间月度汇总业务对象 perf_dept_summary + * + * @author klp + * @date 2026-07-07 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class PerfDeptSummaryBo extends BaseEntity { + + /** + * + */ + private String id; + + /** + * 关联 wms_dept.id + */ + private String deptId; + + /** + * 周期 YYYY-MM + */ + private String period; + + /** + * 总人数 + */ + private Long totalEmployees; + + /** + * 系数总计(所有人员总系数之和) + */ + private BigDecimal totalCoeffSum; + + /** + * 平均考核得分 + */ + private BigDecimal avgPerfScore; + + /** + * 平均绩效系数 + */ + private BigDecimal avgPerfCoeff; + + /** + * 底薪合计 + */ + private BigDecimal totalBaseSalary; + + /** + * 月度绩效工资合计 + */ + private BigDecimal totalPerfWage; + + /** + * 扣款合计 + */ + private BigDecimal totalDeductions; + + /** + * 奖励合计 + */ + private BigDecimal totalBonuses; + + /** + * 其他合计 + */ + private BigDecimal totalOther; + + /** + * 实领薪资合计 + */ + private BigDecimal totalActualSalary; + + /** + * 人均实领薪资 + */ + private BigDecimal avgActualSalary; + + /** + * 当月实际产量 + */ + private BigDecimal monthlyProduction; + + /** + * 系数单价(自动计算) = 月产量×绩效吨钢/系数总计 + */ + private BigDecimal unitPrice; + + /** + * 0=草稿 1=已确认 + */ + private Long status; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfEmployeeInfoBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfEmployeeInfoBo.java new file mode 100644 index 000000000..b997d73bc --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfEmployeeInfoBo.java @@ -0,0 +1,67 @@ +package com.klp.perf.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import javax.validation.constraints.*; + +import java.math.BigDecimal; + +/** + * 员工绩效薪资基本信息业务对象 perf_employee_info + * + * @author klp + * @date 2026-07-07 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class PerfEmployeeInfoBo extends BaseEntity { + + /** + * + */ + private String id; + + /** + * 关联现有员工表主键 + */ + private String employeeId; + + /** + * 关联 wms_dept.id (冗余,便于按部门查询) + */ + private String deptId; + + /** + * 岗位/工种 + */ + private String positionName; + + /** + * 底薪(元) + */ + private BigDecimal baseSalary; + + /** + * 岗位绩效基数(元), 默认≈底薪×20% + */ + private BigDecimal perfBase; + + /** + * 默认岗位系数(初始值,后续月度由绩效自动覆盖) + */ + private BigDecimal posCoeffDefault; + + /** + * 是否在职 1=在职 0=离职 + */ + private Long isActive; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfPositionTemplateBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfPositionTemplateBo.java new file mode 100644 index 000000000..e1813c232 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfPositionTemplateBo.java @@ -0,0 +1,51 @@ +package com.klp.perf.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import javax.validation.constraints.*; + + +/** + * 岗位绩效考核模板业务对象 perf_position_template + * + * @author klp + * @date 2026-07-07 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class PerfPositionTemplateBo extends BaseEntity { + + /** + * + */ + private String id; + + /** + * 关联 wms_dept.id + */ + private String deptId; + + /** + * 岗位名称 (与员工表岗位字段匹配) + */ + private String positionName; + + /** + * 模板标题 如:轧机主操绩效考核评分表 + */ + private String title; + + /** + * + */ + private Long isEnabled; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfSalaryBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfSalaryBo.java new file mode 100644 index 000000000..6da57e97e --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfSalaryBo.java @@ -0,0 +1,179 @@ +package com.klp.perf.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import javax.validation.constraints.*; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 月度薪资计算记录业务对象 perf_salary + * + * @author klp + * @date 2026-07-07 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class PerfSalaryBo extends BaseEntity { + + /** + * + */ + private String id; + + /** + * 关联现有员工表主键 + */ + private String employeeId; + + /** + * 关联 wms_dept.id + */ + private String deptId; + + /** + * 关联 perf_appraisal.id (可为空=未考核) + */ + private String appraisalId; + + /** + * 薪资周期 YYYY-MM + */ + private String period; + + /** + * 底薪 + */ + private BigDecimal baseSalary; + + /** + * 岗位绩效基数 + */ + private BigDecimal perfBase; + + /** + * 考核得分(关联 perf_appraisal.final_score) + */ + private BigDecimal perfScore; + + /** + * 绩效系数(得分换算,关联 perf_appraisal.perf_coeff) + */ + private BigDecimal perfCoeff; + + /** + * 车间系数(来自 perf_dept_config.dept_coeff) + */ + private BigDecimal deptCoeff; + + /** + * 月度绩效工资 = perf_base × perf_coeff × dept_coeff + */ + private BigDecimal perfWage; + + /** + * 岗位系数 (=绩效系数,自动同步) + */ + private BigDecimal posCoeff; + + /** + * 固定系数 = pos_coeff × 0.7 + */ + private BigDecimal fixedCoeff; + + /** + * 可调系数(手动覆盖,默认=pos_coeff×0.3) + */ + private BigDecimal adjCoeff; + + /** + * 可调系数是否手动覆盖: 0=自动 1=手动 + */ + private Long adjCoeffManual; + + /** + * 总系数 = fixed_coeff + adj_coeff + */ + private BigDecimal totalCoeff; + + /** + * 扣款明细 {"质量扣款":0,"倒卷扣款":0,"客诉扣款":0,...} + */ + private String deductionsJson; + + /** + * 扣款合计 + */ + private BigDecimal deductionsTotal; + + /** + * 奖励明细 {"节能奖励":0,...} + */ + private String bonusesJson; + + /** + * 奖励合计 + */ + private BigDecimal bonusesTotal; + + /** + * 其他金额 + */ + private BigDecimal otherAmount; + + /** + * 实领薪资 = 底薪+月度绩效工资-扣款合计+奖励合计+其他 + */ + private BigDecimal actualSalary; + + /** + * 固定系数薪资(参考) = fixed_coeff × 系数单价 + */ + private BigDecimal fixedSalaryRef; + + /** + * 可调系数薪资(参考) = adj_coeff × 系数单价 + */ + private BigDecimal adjSalaryRef; + + /** + * 保底每班(参考) = base_salary / 60 + */ + private BigDecimal baoPerShiftRef; + + /** + * 保底薪资(参考) = bao_per_shift × 保底班数 + */ + private BigDecimal baoSalaryRef; + + /** + * 合计薪资(参考) = fixed_salary_ref+adj_salary_ref+bao_salary_ref + */ + private BigDecimal totalSalaryRef; + + /** + * 0=草稿 1=已确认 2=已归档 + */ + private Long status; + + /** + * + */ + private Date confirmedAt; + + /** + * + */ + private String confirmedBy; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfTemplateDimensionBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfTemplateDimensionBo.java new file mode 100644 index 000000000..a926a64ee --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfTemplateDimensionBo.java @@ -0,0 +1,76 @@ +package com.klp.perf.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import javax.validation.constraints.*; + + +/** + * 考核维度明细业务对象 perf_template_dimension + * + * @author klp + * @date 2026-07-07 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class PerfTemplateDimensionBo extends BaseEntity { + + /** + * + */ + private String id; + + /** + * 关联 perf_position_template.id + */ + private String templateId; + + /** + * 序号 + */ + private String seq; + + /** + * 考核维度 如:产量/质量/安全/检测准确性 + */ + private String dimName; + + /** + * 权重 如:40% 或 0.4 + */ + private String weight; + + /** + * 量化指标 如:月产量达标率/产品合格率 + */ + private String indicator; + + /** + * 目标值 如:≥98% / 100% / 0次 / 达标 + */ + private String targetValue; + + /** + * 评分公式 如:=IF(E4>0,25*(F4/E4),0) + */ + private String scoreFormula; + + /** + * 评分规则文字描述 + */ + private String scoreRule; + + /** + * + */ + private Long isEnabled; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalDetailVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalDetailVo.java new file mode 100644 index 000000000..861c93b2b --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalDetailVo.java @@ -0,0 +1,108 @@ +package com.klp.perf.domain.vo; + +import java.math.BigDecimal; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 考核维度评分明细视图对象 perf_appraisal_detail + * + * @author klp + * @date 2026-07-07 + */ +@Data +@ExcelIgnoreUnannotated +public class PerfAppraisalDetailVo { + + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + private String id; + + /** + * 关联 perf_appraisal.id + */ + @ExcelProperty(value = "关联 perf_appraisal.id") + private String appraisalId; + + /** + * 关联 perf_template_dimension.id + */ + @ExcelProperty(value = "关联 perf_template_dimension.id") + private String dimensionId; + + /** + * 序号(从模板快照) + */ + @ExcelProperty(value = "序号(从模板快照)") + private String seq; + + /** + * 维度名称(从模板快照) + */ + @ExcelProperty(value = "维度名称(从模板快照)") + private String dimName; + + /** + * 权重(从模板快照) + */ + @ExcelProperty(value = "权重(从模板快照)") + private String weight; + + /** + * 目标值(可覆盖模板默认值) + */ + @ExcelProperty(value = "目标值(可覆盖模板默认值)") + private String targetValue; + + /** + * 实际值(考核人填写) + */ + @ExcelProperty(value = "实际值(考核人填写)") + private String actualValue; + + /** + * 维度得分(公式计算) + */ + @ExcelProperty(value = "维度得分(公式计算)") + private BigDecimal dimScore; + + /** + * 本维度额外加分 + */ + @ExcelProperty(value = "本维度额外加分") + private BigDecimal bonus; + + /** + * 本维度额外扣分 + */ + @ExcelProperty(value = "本维度额外扣分") + private BigDecimal penalty; + + /** + * 评分公式(从模板快照) + */ + @ExcelProperty(value = "评分公式(从模板快照)") + private String scoreFormula; + + /** + * 评分规则(从模板快照) + */ + @ExcelProperty(value = "评分规则(从模板快照)") + private String scoreRule; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalVo.java new file mode 100644 index 000000000..63d7ab9ce --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalVo.java @@ -0,0 +1,116 @@ +package com.klp.perf.domain.vo; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 月度绩效考核记录视图对象 perf_appraisal + * + * @author klp + * @date 2026-07-07 + */ +@Data +@ExcelIgnoreUnannotated +public class PerfAppraisalVo { + + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + private String id; + + /** + * 关联现有员工表主键 + */ + @ExcelProperty(value = "关联现有员工表主键") + private String employeeId; + + /** + * 关联 wms_dept.id + */ + @ExcelProperty(value = "关联 wms_dept.id") + private String deptId; + + /** + * 关联 perf_position_template.id (当月使用的模板) + */ + @ExcelProperty(value = "关联 perf_position_template.id (当月使用的模板)") + private String templateId; + + /** + * 考核周期 YYYY-MM + */ + @ExcelProperty(value = "考核周期 YYYY-MM") + private String period; + + /** + * 加权得分 = SUM(维度得分) + */ + @ExcelProperty(value = "加权得分 = SUM(维度得分)") + private BigDecimal weightedScore; + + /** + * 总加分 + */ + @ExcelProperty(value = "总加分") + private BigDecimal bonusScore; + + /** + * 总扣分 + */ + @ExcelProperty(value = "总扣分") + private BigDecimal penaltyScore; + + /** + * 最终得分 = MIN(120, 加权得分+加分-扣分) + */ + @ExcelProperty(value = "最终得分 = MIN(120, 加权得分+加分-扣分)") + private BigDecimal finalScore; + + /** + * 评级 S/A/B/C/D + */ + @ExcelProperty(value = "评级 S/A/B/C/D") + private String grade; + + /** + * 绩效系数(线性插值换算,自动同步到岗位系数) + */ + @ExcelProperty(value = "绩效系数(线性插值换算,自动同步到岗位系数)") + private BigDecimal perfCoeff; + + /** + * 0=草稿 1=已确认 2=已归档 + */ + @ExcelProperty(value = "0=草稿 1=已确认 2=已归档") + private Long status; + + /** + * + */ + @ExcelProperty(value = "") + private Date confirmedAt; + + /** + * 确认人 + */ + @ExcelProperty(value = "确认人") + private String confirmedBy; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfCoeffRangeVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfCoeffRangeVo.java new file mode 100644 index 000000000..d6754127e --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfCoeffRangeVo.java @@ -0,0 +1,78 @@ +package com.klp.perf.domain.vo; + +import java.math.BigDecimal; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 绩效系数换算视图对象 perf_coeff_range + * + * @author klp + * @date 2026-07-07 + */ +@Data +@ExcelIgnoreUnannotated +public class PerfCoeffRangeVo { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @ExcelProperty(value = "主键") + private String id; + + /** + * 等级标识 S/A/B/C/D + */ + @ExcelProperty(value = "等级标识 S/A/B/C/D") + private String grade; + + /** + * 等级名称 卓越/优秀/合格/待改进/不合格 + */ + @ExcelProperty(value = "等级名称 卓越/优秀/合格/待改进/不合格") + private String gradeLabel; + + /** + * 得分下限(含) + */ + @ExcelProperty(value = "得分下限(含)") + private BigDecimal scoreMin; + + /** + * 得分上限(含) + */ + @ExcelProperty(value = "得分上限(含)") + private BigDecimal scoreMax; + + /** + * 最低绩效系数 + */ + @ExcelProperty(value = "最低绩效系数") + private BigDecimal coeffMin; + + /** + * 最高绩效系数 + */ + @ExcelProperty(value = "最高绩效系数") + private BigDecimal coeffMax; + + /** + * 排序(高→低) + */ + @ExcelProperty(value = "排序(高→低)") + private Long sortOrder; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptConfigVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptConfigVo.java new file mode 100644 index 000000000..ff5202fc5 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptConfigVo.java @@ -0,0 +1,110 @@ +package com.klp.perf.domain.vo; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 车间考核参数配置视图对象 perf_dept_config + * + * @author klp + * @date 2026-07-07 + */ +@Data +@ExcelIgnoreUnannotated +public class PerfDeptConfigVo { + + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + private String id; + + /** + * 关联 wms_dept.id + */ + @ExcelProperty(value = "关联 wms_dept.id") + private String deptId; + + /** + * 月产量目标(吨) 或 月产长度目标(m) + */ + @ExcelProperty(value = "月产量目标(吨) 或 月产长度目标(m)") + private BigDecimal monthlyProductionTarget; + + /** + * 产量单位: 吨 / m + */ + @ExcelProperty(value = "产量单位: 吨 / m") + private String productionUnit; + + /** + * 绩效吨钢(元) 或 绩效米钢(元) + */ + @ExcelProperty(value = "绩效吨钢(元) 或 绩效米钢(元)") + private BigDecimal perfUnitPrice; + + /** + * 生产班数 + */ + @ExcelProperty(value = "生产班数") + private Long productionShifts; + + /** + * 停机保底班数 + */ + @ExcelProperty(value = "停机保底班数") + private Long guaranteedShifts; + + /** + * 车间系数(默认1.0) + */ + @ExcelProperty(value = "车间系数(默认1.0)") + private BigDecimal deptCoeff; + + /** + * 薪资模式: 0=普通模式 1=保底模式(hasBaoSalary) + */ + @ExcelProperty(value = "薪资模式: 0=普通模式 1=保底模式(hasBaoSalary)") + private Long salaryMode; + + /** + * 保底薪资除数(底薪÷60=保底每班金额) + */ + @ExcelProperty(value = "保底薪资除数(底薪÷60=保底每班金额)") + private Long baseDivisor; + + /** + * 月份 + */ + @ExcelProperty(value = "月份") + private Date month; + + /** + * + */ + @ExcelProperty(value = "") + private String remark; + + /** + * + */ + @ExcelProperty(value = "") + private Date createdAt; + + /** + * + */ + @ExcelProperty(value = "") + private Date updatedAt; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptItemConfigVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptItemConfigVo.java new file mode 100644 index 000000000..5760320fc --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptItemConfigVo.java @@ -0,0 +1,73 @@ +package com.klp.perf.domain.vo; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 车间扣款/奖励项目配置视图对象 perf_dept_item_config + * + * @author klp + * @date 2026-07-07 + */ +@Data +@ExcelIgnoreUnannotated +public class PerfDeptItemConfigVo { + + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + private String id; + + /** + * 关联 wms_dept.id + */ + @ExcelProperty(value = "关联 wms_dept.id") + private String deptId; + + /** + * 类型: 1=扣款项目 2=奖励项目 + */ + @ExcelProperty(value = "类型: 1=扣款项目 2=奖励项目") + private Long itemType; + + /** + * 项目名称 如:质量扣款/节能奖励 + */ + @ExcelProperty(value = "项目名称 如:质量扣款/节能奖励") + private String itemName; + + /** + * + */ + @ExcelProperty(value = "") + private Long sortOrder; + + /** + * 月份 + */ + @ExcelProperty(value = "月份") + private Date month; + + /** + * + */ + @ExcelProperty(value = "") + private Long isEnabled; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptSummaryVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptSummaryVo.java new file mode 100644 index 000000000..488cbaffd --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptSummaryVo.java @@ -0,0 +1,132 @@ +package com.klp.perf.domain.vo; + +import java.math.BigDecimal; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 车间月度汇总视图对象 perf_dept_summary + * + * @author klp + * @date 2026-07-07 + */ +@Data +@ExcelIgnoreUnannotated +public class PerfDeptSummaryVo { + + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + private String id; + + /** + * 关联 wms_dept.id + */ + @ExcelProperty(value = "关联 wms_dept.id") + private String deptId; + + /** + * 周期 YYYY-MM + */ + @ExcelProperty(value = "周期 YYYY-MM") + private String period; + + /** + * 总人数 + */ + @ExcelProperty(value = "总人数") + private Long totalEmployees; + + /** + * 系数总计(所有人员总系数之和) + */ + @ExcelProperty(value = "系数总计(所有人员总系数之和)") + private BigDecimal totalCoeffSum; + + /** + * 平均考核得分 + */ + @ExcelProperty(value = "平均考核得分") + private BigDecimal avgPerfScore; + + /** + * 平均绩效系数 + */ + @ExcelProperty(value = "平均绩效系数") + private BigDecimal avgPerfCoeff; + + /** + * 底薪合计 + */ + @ExcelProperty(value = "底薪合计") + private BigDecimal totalBaseSalary; + + /** + * 月度绩效工资合计 + */ + @ExcelProperty(value = "月度绩效工资合计") + private BigDecimal totalPerfWage; + + /** + * 扣款合计 + */ + @ExcelProperty(value = "扣款合计") + private BigDecimal totalDeductions; + + /** + * 奖励合计 + */ + @ExcelProperty(value = "奖励合计") + private BigDecimal totalBonuses; + + /** + * 其他合计 + */ + @ExcelProperty(value = "其他合计") + private BigDecimal totalOther; + + /** + * 实领薪资合计 + */ + @ExcelProperty(value = "实领薪资合计") + private BigDecimal totalActualSalary; + + /** + * 人均实领薪资 + */ + @ExcelProperty(value = "人均实领薪资") + private BigDecimal avgActualSalary; + + /** + * 当月实际产量 + */ + @ExcelProperty(value = "当月实际产量") + private BigDecimal monthlyProduction; + + /** + * 系数单价(自动计算) = 月产量×绩效吨钢/系数总计 + */ + @ExcelProperty(value = "系数单价(自动计算) = 月产量×绩效吨钢/系数总计") + private BigDecimal unitPrice; + + /** + * 0=草稿 1=已确认 + */ + @ExcelProperty(value = "0=草稿 1=已确认") + private Long status; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfEmployeeInfoVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfEmployeeInfoVo.java new file mode 100644 index 000000000..3c1cd0987 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfEmployeeInfoVo.java @@ -0,0 +1,78 @@ +package com.klp.perf.domain.vo; + +import java.math.BigDecimal; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 员工绩效薪资基本信息视图对象 perf_employee_info + * + * @author klp + * @date 2026-07-07 + */ +@Data +@ExcelIgnoreUnannotated +public class PerfEmployeeInfoVo { + + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + private String id; + + /** + * 关联现有员工表主键 + */ + @ExcelProperty(value = "关联现有员工表主键") + private String employeeId; + + /** + * 关联 wms_dept.id (冗余,便于按部门查询) + */ + @ExcelProperty(value = "关联 wms_dept.id (冗余,便于按部门查询)") + private String deptId; + + /** + * 岗位/工种 + */ + @ExcelProperty(value = "岗位/工种") + private String positionName; + + /** + * 底薪(元) + */ + @ExcelProperty(value = "底薪(元)") + private BigDecimal baseSalary; + + /** + * 岗位绩效基数(元), 默认≈底薪×20% + */ + @ExcelProperty(value = "岗位绩效基数(元), 默认≈底薪×20%") + private BigDecimal perfBase; + + /** + * 默认岗位系数(初始值,后续月度由绩效自动覆盖) + */ + @ExcelProperty(value = "默认岗位系数(初始值,后续月度由绩效自动覆盖)") + private BigDecimal posCoeffDefault; + + /** + * 是否在职 1=在职 0=离职 + */ + @ExcelProperty(value = "是否在职 1=在职 0=离职") + private Long isActive; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfPositionTemplateVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfPositionTemplateVo.java new file mode 100644 index 000000000..d02818209 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfPositionTemplateVo.java @@ -0,0 +1,59 @@ +package com.klp.perf.domain.vo; + +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 岗位绩效考核模板视图对象 perf_position_template + * + * @author klp + * @date 2026-07-07 + */ +@Data +@ExcelIgnoreUnannotated +public class PerfPositionTemplateVo { + + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + private String id; + + /** + * 关联 wms_dept.id + */ + @ExcelProperty(value = "关联 wms_dept.id") + private String deptId; + + /** + * 岗位名称 (与员工表岗位字段匹配) + */ + @ExcelProperty(value = "岗位名称 (与员工表岗位字段匹配)") + private String positionName; + + /** + * 模板标题 如:轧机主操绩效考核评分表 + */ + @ExcelProperty(value = "模板标题 如:轧机主操绩效考核评分表") + private String title; + + /** + * + */ + @ExcelProperty(value = "") + private Long isEnabled; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfSalaryVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfSalaryVo.java new file mode 100644 index 000000000..0bf762895 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfSalaryVo.java @@ -0,0 +1,212 @@ +package com.klp.perf.domain.vo; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 月度薪资计算记录视图对象 perf_salary + * + * @author klp + * @date 2026-07-07 + */ +@Data +@ExcelIgnoreUnannotated +public class PerfSalaryVo { + + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + private String id; + + /** + * 关联现有员工表主键 + */ + @ExcelProperty(value = "关联现有员工表主键") + private String employeeId; + + /** + * 关联 wms_dept.id + */ + @ExcelProperty(value = "关联 wms_dept.id") + private String deptId; + + /** + * 关联 perf_appraisal.id (可为空=未考核) + */ + @ExcelProperty(value = "关联 perf_appraisal.id (可为空=未考核)") + private String appraisalId; + + /** + * 薪资周期 YYYY-MM + */ + @ExcelProperty(value = "薪资周期 YYYY-MM") + private String period; + + /** + * 底薪 + */ + @ExcelProperty(value = "底薪") + private BigDecimal baseSalary; + + /** + * 岗位绩效基数 + */ + @ExcelProperty(value = "岗位绩效基数") + private BigDecimal perfBase; + + /** + * 考核得分(关联 perf_appraisal.final_score) + */ + @ExcelProperty(value = "考核得分(关联 perf_appraisal.final_score)") + private BigDecimal perfScore; + + /** + * 绩效系数(得分换算,关联 perf_appraisal.perf_coeff) + */ + @ExcelProperty(value = "绩效系数(得分换算,关联 perf_appraisal.perf_coeff)") + private BigDecimal perfCoeff; + + /** + * 车间系数(来自 perf_dept_config.dept_coeff) + */ + @ExcelProperty(value = "车间系数(来自 perf_dept_config.dept_coeff)") + private BigDecimal deptCoeff; + + /** + * 月度绩效工资 = perf_base × perf_coeff × dept_coeff + */ + @ExcelProperty(value = "月度绩效工资 = perf_base × perf_coeff × dept_coeff") + private BigDecimal perfWage; + + /** + * 岗位系数 (=绩效系数,自动同步) + */ + @ExcelProperty(value = "岗位系数 (=绩效系数,自动同步)") + private BigDecimal posCoeff; + + /** + * 固定系数 = pos_coeff × 0.7 + */ + @ExcelProperty(value = "固定系数 = pos_coeff × 0.7") + private BigDecimal fixedCoeff; + + /** + * 可调系数(手动覆盖,默认=pos_coeff×0.3) + */ + @ExcelProperty(value = "可调系数(手动覆盖,默认=pos_coeff×0.3)") + private BigDecimal adjCoeff; + + /** + * 可调系数是否手动覆盖: 0=自动 1=手动 + */ + @ExcelProperty(value = "可调系数是否手动覆盖: 0=自动 1=手动") + private Long adjCoeffManual; + + /** + * 总系数 = fixed_coeff + adj_coeff + */ + @ExcelProperty(value = "总系数 = fixed_coeff + adj_coeff") + private BigDecimal totalCoeff; + + /** + * 扣款明细 {"质量扣款":0,"倒卷扣款":0,"客诉扣款":0,...} + */ + @ExcelProperty(value = "扣款明细") + private String deductionsJson; + + /** + * 扣款合计 + */ + @ExcelProperty(value = "扣款合计") + private BigDecimal deductionsTotal; + + /** + * 奖励明细 {"节能奖励":0,...} + */ + @ExcelProperty(value = "奖励明细 ") + private String bonusesJson; + + /** + * 奖励合计 + */ + @ExcelProperty(value = "奖励合计") + private BigDecimal bonusesTotal; + + /** + * 其他金额 + */ + @ExcelProperty(value = "其他金额") + private BigDecimal otherAmount; + + /** + * 实领薪资 = 底薪+月度绩效工资-扣款合计+奖励合计+其他 + */ + @ExcelProperty(value = "实领薪资 = 底薪+月度绩效工资-扣款合计+奖励合计+其他") + private BigDecimal actualSalary; + + /** + * 固定系数薪资(参考) = fixed_coeff × 系数单价 + */ + @ExcelProperty(value = "固定系数薪资(参考) = fixed_coeff × 系数单价") + private BigDecimal fixedSalaryRef; + + /** + * 可调系数薪资(参考) = adj_coeff × 系数单价 + */ + @ExcelProperty(value = "可调系数薪资(参考) = adj_coeff × 系数单价") + private BigDecimal adjSalaryRef; + + /** + * 保底每班(参考) = base_salary / 60 + */ + @ExcelProperty(value = "保底每班(参考) = base_salary / 60") + private BigDecimal baoPerShiftRef; + + /** + * 保底薪资(参考) = bao_per_shift × 保底班数 + */ + @ExcelProperty(value = "保底薪资(参考) = bao_per_shift × 保底班数") + private BigDecimal baoSalaryRef; + + /** + * 合计薪资(参考) = fixed_salary_ref+adj_salary_ref+bao_salary_ref + */ + @ExcelProperty(value = "合计薪资(参考) = fixed_salary_ref+adj_salary_ref+bao_salary_ref") + private BigDecimal totalSalaryRef; + + /** + * 0=草稿 1=已确认 2=已归档 + */ + @ExcelProperty(value = "0=草稿 1=已确认 2=已归档") + private Long status; + + /** + * + */ + @ExcelProperty(value = "") + private Date confirmedAt; + + /** + * + */ + @ExcelProperty(value = "") + private String confirmedBy; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfTemplateDimensionVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfTemplateDimensionVo.java new file mode 100644 index 000000000..47d1d0425 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfTemplateDimensionVo.java @@ -0,0 +1,89 @@ +package com.klp.perf.domain.vo; + +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 考核维度明细视图对象 perf_template_dimension + * + * @author klp + * @date 2026-07-07 + */ +@Data +@ExcelIgnoreUnannotated +public class PerfTemplateDimensionVo { + + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + private String id; + + /** + * 关联 perf_position_template.id + */ + @ExcelProperty(value = "关联 perf_position_template.id") + private String templateId; + + /** + * 序号 + */ + @ExcelProperty(value = "序号") + private String seq; + + /** + * 考核维度 如:产量/质量/安全/检测准确性 + */ + @ExcelProperty(value = "考核维度 如:产量/质量/安全/检测准确性") + private String dimName; + + /** + * 权重 如:40% 或 0.4 + */ + @ExcelProperty(value = "权重 如:40% 或 0.4") + private String weight; + + /** + * 量化指标 如:月产量达标率/产品合格率 + */ + @ExcelProperty(value = "量化指标 如:月产量达标率/产品合格率") + private String indicator; + + /** + * 目标值 如:≥98% / 100% / 0次 / 达标 + */ + @ExcelProperty(value = "目标值 如:≥98% / 100% / 0次 / 达标") + private String targetValue; + + /** + * 评分公式 如:=IF(E4>0,25*(F4/E4),0) + */ + @ExcelProperty(value = "评分公式 如:=IF(E4>0,25*(F4/E4),0)") + private String scoreFormula; + + /** + * 评分规则文字描述 + */ + @ExcelProperty(value = "评分规则文字描述") + private String scoreRule; + + /** + * + */ + @ExcelProperty(value = "") + private Long isEnabled; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/mapper/PerfAppraisalDetailMapper.java b/klp-perf/src/main/java/com/klp/perf/mapper/PerfAppraisalDetailMapper.java new file mode 100644 index 000000000..f8fb00e28 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/mapper/PerfAppraisalDetailMapper.java @@ -0,0 +1,15 @@ +package com.klp.perf.mapper; + +import com.klp.perf.domain.PerfAppraisalDetail; +import com.klp.perf.domain.vo.PerfAppraisalDetailVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 考核维度评分明细Mapper接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface PerfAppraisalDetailMapper extends BaseMapperPlus { + +} diff --git a/klp-perf/src/main/java/com/klp/perf/mapper/PerfAppraisalMapper.java b/klp-perf/src/main/java/com/klp/perf/mapper/PerfAppraisalMapper.java new file mode 100644 index 000000000..51b6ba693 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/mapper/PerfAppraisalMapper.java @@ -0,0 +1,15 @@ +package com.klp.perf.mapper; + +import com.klp.perf.domain.PerfAppraisal; +import com.klp.perf.domain.vo.PerfAppraisalVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 月度绩效考核记录Mapper接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface PerfAppraisalMapper extends BaseMapperPlus { + +} diff --git a/klp-perf/src/main/java/com/klp/perf/mapper/PerfCoeffRangeMapper.java b/klp-perf/src/main/java/com/klp/perf/mapper/PerfCoeffRangeMapper.java new file mode 100644 index 000000000..a2e7682f8 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/mapper/PerfCoeffRangeMapper.java @@ -0,0 +1,15 @@ +package com.klp.perf.mapper; + +import com.klp.perf.domain.PerfCoeffRange; +import com.klp.perf.domain.vo.PerfCoeffRangeVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 绩效系数换算Mapper接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface PerfCoeffRangeMapper extends BaseMapperPlus { + +} diff --git a/klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptConfigMapper.java b/klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptConfigMapper.java new file mode 100644 index 000000000..d983e3110 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptConfigMapper.java @@ -0,0 +1,15 @@ +package com.klp.perf.mapper; + +import com.klp.perf.domain.PerfDeptConfig; +import com.klp.perf.domain.vo.PerfDeptConfigVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 车间考核参数配置Mapper接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface PerfDeptConfigMapper extends BaseMapperPlus { + +} diff --git a/klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptItemConfigMapper.java b/klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptItemConfigMapper.java new file mode 100644 index 000000000..4d7960b17 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptItemConfigMapper.java @@ -0,0 +1,15 @@ +package com.klp.perf.mapper; + +import com.klp.perf.domain.PerfDeptItemConfig; +import com.klp.perf.domain.vo.PerfDeptItemConfigVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 车间扣款/奖励项目配置Mapper接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface PerfDeptItemConfigMapper extends BaseMapperPlus { + +} diff --git a/klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptSummaryMapper.java b/klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptSummaryMapper.java new file mode 100644 index 000000000..5d35c958e --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptSummaryMapper.java @@ -0,0 +1,15 @@ +package com.klp.perf.mapper; + +import com.klp.perf.domain.PerfDeptSummary; +import com.klp.perf.domain.vo.PerfDeptSummaryVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 车间月度汇总Mapper接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface PerfDeptSummaryMapper extends BaseMapperPlus { + +} diff --git a/klp-perf/src/main/java/com/klp/perf/mapper/PerfEmployeeInfoMapper.java b/klp-perf/src/main/java/com/klp/perf/mapper/PerfEmployeeInfoMapper.java new file mode 100644 index 000000000..df9a2467e --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/mapper/PerfEmployeeInfoMapper.java @@ -0,0 +1,15 @@ +package com.klp.perf.mapper; + +import com.klp.perf.domain.PerfEmployeeInfo; +import com.klp.perf.domain.vo.PerfEmployeeInfoVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 员工绩效薪资基本信息Mapper接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface PerfEmployeeInfoMapper extends BaseMapperPlus { + +} diff --git a/klp-perf/src/main/java/com/klp/perf/mapper/PerfPositionTemplateMapper.java b/klp-perf/src/main/java/com/klp/perf/mapper/PerfPositionTemplateMapper.java new file mode 100644 index 000000000..e658c94ef --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/mapper/PerfPositionTemplateMapper.java @@ -0,0 +1,15 @@ +package com.klp.perf.mapper; + +import com.klp.perf.domain.PerfPositionTemplate; +import com.klp.perf.domain.vo.PerfPositionTemplateVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 岗位绩效考核模板Mapper接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface PerfPositionTemplateMapper extends BaseMapperPlus { + +} diff --git a/klp-perf/src/main/java/com/klp/perf/mapper/PerfSalaryMapper.java b/klp-perf/src/main/java/com/klp/perf/mapper/PerfSalaryMapper.java new file mode 100644 index 000000000..6bc780ceb --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/mapper/PerfSalaryMapper.java @@ -0,0 +1,15 @@ +package com.klp.perf.mapper; + +import com.klp.perf.domain.PerfSalary; +import com.klp.perf.domain.vo.PerfSalaryVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 月度薪资计算记录Mapper接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface PerfSalaryMapper extends BaseMapperPlus { + +} diff --git a/klp-perf/src/main/java/com/klp/perf/mapper/PerfTemplateDimensionMapper.java b/klp-perf/src/main/java/com/klp/perf/mapper/PerfTemplateDimensionMapper.java new file mode 100644 index 000000000..5b076c159 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/mapper/PerfTemplateDimensionMapper.java @@ -0,0 +1,15 @@ +package com.klp.perf.mapper; + +import com.klp.perf.domain.PerfTemplateDimension; +import com.klp.perf.domain.vo.PerfTemplateDimensionVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 考核维度明细Mapper接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface PerfTemplateDimensionMapper extends BaseMapperPlus { + +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalDetailService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalDetailService.java new file mode 100644 index 000000000..250edc600 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalDetailService.java @@ -0,0 +1,49 @@ +package com.klp.perf.service; + +import com.klp.perf.domain.PerfAppraisalDetail; +import com.klp.perf.domain.vo.PerfAppraisalDetailVo; +import com.klp.perf.domain.bo.PerfAppraisalDetailBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 考核维度评分明细Service接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface IPerfAppraisalDetailService { + + /** + * 查询考核维度评分明细 + */ + PerfAppraisalDetailVo queryById(String id); + + /** + * 查询考核维度评分明细列表 + */ + TableDataInfo queryPageList(PerfAppraisalDetailBo bo, PageQuery pageQuery); + + /** + * 查询考核维度评分明细列表 + */ + List queryList(PerfAppraisalDetailBo bo); + + /** + * 新增考核维度评分明细 + */ + Boolean insertByBo(PerfAppraisalDetailBo bo); + + /** + * 修改考核维度评分明细 + */ + Boolean updateByBo(PerfAppraisalDetailBo bo); + + /** + * 校验并批量删除考核维度评分明细信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalService.java new file mode 100644 index 000000000..3eb027634 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalService.java @@ -0,0 +1,49 @@ +package com.klp.perf.service; + +import com.klp.perf.domain.PerfAppraisal; +import com.klp.perf.domain.vo.PerfAppraisalVo; +import com.klp.perf.domain.bo.PerfAppraisalBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 月度绩效考核记录Service接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface IPerfAppraisalService { + + /** + * 查询月度绩效考核记录 + */ + PerfAppraisalVo queryById(String id); + + /** + * 查询月度绩效考核记录列表 + */ + TableDataInfo queryPageList(PerfAppraisalBo bo, PageQuery pageQuery); + + /** + * 查询月度绩效考核记录列表 + */ + List queryList(PerfAppraisalBo bo); + + /** + * 新增月度绩效考核记录 + */ + Boolean insertByBo(PerfAppraisalBo bo); + + /** + * 修改月度绩效考核记录 + */ + Boolean updateByBo(PerfAppraisalBo bo); + + /** + * 校验并批量删除月度绩效考核记录信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfCoeffRangeService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfCoeffRangeService.java new file mode 100644 index 000000000..df9646da2 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfCoeffRangeService.java @@ -0,0 +1,49 @@ +package com.klp.perf.service; + +import com.klp.perf.domain.PerfCoeffRange; +import com.klp.perf.domain.vo.PerfCoeffRangeVo; +import com.klp.perf.domain.bo.PerfCoeffRangeBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 绩效系数换算Service接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface IPerfCoeffRangeService { + + /** + * 查询绩效系数换算 + */ + PerfCoeffRangeVo queryById(String id); + + /** + * 查询绩效系数换算列表 + */ + TableDataInfo queryPageList(PerfCoeffRangeBo bo, PageQuery pageQuery); + + /** + * 查询绩效系数换算列表 + */ + List queryList(PerfCoeffRangeBo bo); + + /** + * 新增绩效系数换算 + */ + Boolean insertByBo(PerfCoeffRangeBo bo); + + /** + * 修改绩效系数换算 + */ + Boolean updateByBo(PerfCoeffRangeBo bo); + + /** + * 校验并批量删除绩效系数换算信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptConfigService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptConfigService.java new file mode 100644 index 000000000..e3123e34b --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptConfigService.java @@ -0,0 +1,49 @@ +package com.klp.perf.service; + +import com.klp.perf.domain.PerfDeptConfig; +import com.klp.perf.domain.vo.PerfDeptConfigVo; +import com.klp.perf.domain.bo.PerfDeptConfigBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 车间考核参数配置Service接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface IPerfDeptConfigService { + + /** + * 查询车间考核参数配置 + */ + PerfDeptConfigVo queryById(String id); + + /** + * 查询车间考核参数配置列表 + */ + TableDataInfo queryPageList(PerfDeptConfigBo bo, PageQuery pageQuery); + + /** + * 查询车间考核参数配置列表 + */ + List queryList(PerfDeptConfigBo bo); + + /** + * 新增车间考核参数配置 + */ + Boolean insertByBo(PerfDeptConfigBo bo); + + /** + * 修改车间考核参数配置 + */ + Boolean updateByBo(PerfDeptConfigBo bo); + + /** + * 校验并批量删除车间考核参数配置信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptItemConfigService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptItemConfigService.java new file mode 100644 index 000000000..ab590509a --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptItemConfigService.java @@ -0,0 +1,49 @@ +package com.klp.perf.service; + +import com.klp.perf.domain.PerfDeptItemConfig; +import com.klp.perf.domain.vo.PerfDeptItemConfigVo; +import com.klp.perf.domain.bo.PerfDeptItemConfigBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 车间扣款/奖励项目配置Service接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface IPerfDeptItemConfigService { + + /** + * 查询车间扣款/奖励项目配置 + */ + PerfDeptItemConfigVo queryById(String id); + + /** + * 查询车间扣款/奖励项目配置列表 + */ + TableDataInfo queryPageList(PerfDeptItemConfigBo bo, PageQuery pageQuery); + + /** + * 查询车间扣款/奖励项目配置列表 + */ + List queryList(PerfDeptItemConfigBo bo); + + /** + * 新增车间扣款/奖励项目配置 + */ + Boolean insertByBo(PerfDeptItemConfigBo bo); + + /** + * 修改车间扣款/奖励项目配置 + */ + Boolean updateByBo(PerfDeptItemConfigBo bo); + + /** + * 校验并批量删除车间扣款/奖励项目配置信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptSummaryService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptSummaryService.java new file mode 100644 index 000000000..956abdee8 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptSummaryService.java @@ -0,0 +1,49 @@ +package com.klp.perf.service; + +import com.klp.perf.domain.PerfDeptSummary; +import com.klp.perf.domain.vo.PerfDeptSummaryVo; +import com.klp.perf.domain.bo.PerfDeptSummaryBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 车间月度汇总Service接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface IPerfDeptSummaryService { + + /** + * 查询车间月度汇总 + */ + PerfDeptSummaryVo queryById(String id); + + /** + * 查询车间月度汇总列表 + */ + TableDataInfo queryPageList(PerfDeptSummaryBo bo, PageQuery pageQuery); + + /** + * 查询车间月度汇总列表 + */ + List queryList(PerfDeptSummaryBo bo); + + /** + * 新增车间月度汇总 + */ + Boolean insertByBo(PerfDeptSummaryBo bo); + + /** + * 修改车间月度汇总 + */ + Boolean updateByBo(PerfDeptSummaryBo bo); + + /** + * 校验并批量删除车间月度汇总信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfEmployeeInfoService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfEmployeeInfoService.java new file mode 100644 index 000000000..fde95e435 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfEmployeeInfoService.java @@ -0,0 +1,49 @@ +package com.klp.perf.service; + +import com.klp.perf.domain.PerfEmployeeInfo; +import com.klp.perf.domain.vo.PerfEmployeeInfoVo; +import com.klp.perf.domain.bo.PerfEmployeeInfoBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 员工绩效薪资基本信息Service接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface IPerfEmployeeInfoService { + + /** + * 查询员工绩效薪资基本信息 + */ + PerfEmployeeInfoVo queryById(String id); + + /** + * 查询员工绩效薪资基本信息列表 + */ + TableDataInfo queryPageList(PerfEmployeeInfoBo bo, PageQuery pageQuery); + + /** + * 查询员工绩效薪资基本信息列表 + */ + List queryList(PerfEmployeeInfoBo bo); + + /** + * 新增员工绩效薪资基本信息 + */ + Boolean insertByBo(PerfEmployeeInfoBo bo); + + /** + * 修改员工绩效薪资基本信息 + */ + Boolean updateByBo(PerfEmployeeInfoBo bo); + + /** + * 校验并批量删除员工绩效薪资基本信息信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfPositionTemplateService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfPositionTemplateService.java new file mode 100644 index 000000000..f3cec7de6 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfPositionTemplateService.java @@ -0,0 +1,49 @@ +package com.klp.perf.service; + +import com.klp.perf.domain.PerfPositionTemplate; +import com.klp.perf.domain.vo.PerfPositionTemplateVo; +import com.klp.perf.domain.bo.PerfPositionTemplateBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 岗位绩效考核模板Service接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface IPerfPositionTemplateService { + + /** + * 查询岗位绩效考核模板 + */ + PerfPositionTemplateVo queryById(String id); + + /** + * 查询岗位绩效考核模板列表 + */ + TableDataInfo queryPageList(PerfPositionTemplateBo bo, PageQuery pageQuery); + + /** + * 查询岗位绩效考核模板列表 + */ + List queryList(PerfPositionTemplateBo bo); + + /** + * 新增岗位绩效考核模板 + */ + Boolean insertByBo(PerfPositionTemplateBo bo); + + /** + * 修改岗位绩效考核模板 + */ + Boolean updateByBo(PerfPositionTemplateBo bo); + + /** + * 校验并批量删除岗位绩效考核模板信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfSalaryService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfSalaryService.java new file mode 100644 index 000000000..a936dc01e --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfSalaryService.java @@ -0,0 +1,49 @@ +package com.klp.perf.service; + +import com.klp.perf.domain.PerfSalary; +import com.klp.perf.domain.vo.PerfSalaryVo; +import com.klp.perf.domain.bo.PerfSalaryBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 月度薪资计算记录Service接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface IPerfSalaryService { + + /** + * 查询月度薪资计算记录 + */ + PerfSalaryVo queryById(String id); + + /** + * 查询月度薪资计算记录列表 + */ + TableDataInfo queryPageList(PerfSalaryBo bo, PageQuery pageQuery); + + /** + * 查询月度薪资计算记录列表 + */ + List queryList(PerfSalaryBo bo); + + /** + * 新增月度薪资计算记录 + */ + Boolean insertByBo(PerfSalaryBo bo); + + /** + * 修改月度薪资计算记录 + */ + Boolean updateByBo(PerfSalaryBo bo); + + /** + * 校验并批量删除月度薪资计算记录信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfTemplateDimensionService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfTemplateDimensionService.java new file mode 100644 index 000000000..3b2df0bc4 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfTemplateDimensionService.java @@ -0,0 +1,49 @@ +package com.klp.perf.service; + +import com.klp.perf.domain.PerfTemplateDimension; +import com.klp.perf.domain.vo.PerfTemplateDimensionVo; +import com.klp.perf.domain.bo.PerfTemplateDimensionBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 考核维度明细Service接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface IPerfTemplateDimensionService { + + /** + * 查询考核维度明细 + */ + PerfTemplateDimensionVo queryById(String id); + + /** + * 查询考核维度明细列表 + */ + TableDataInfo queryPageList(PerfTemplateDimensionBo bo, PageQuery pageQuery); + + /** + * 查询考核维度明细列表 + */ + List queryList(PerfTemplateDimensionBo bo); + + /** + * 新增考核维度明细 + */ + Boolean insertByBo(PerfTemplateDimensionBo bo); + + /** + * 修改考核维度明细 + */ + Boolean updateByBo(PerfTemplateDimensionBo bo); + + /** + * 校验并批量删除考核维度明细信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalDetailServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalDetailServiceImpl.java new file mode 100644 index 000000000..eba26d299 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalDetailServiceImpl.java @@ -0,0 +1,120 @@ +package com.klp.perf.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.perf.domain.bo.PerfAppraisalDetailBo; +import com.klp.perf.domain.vo.PerfAppraisalDetailVo; +import com.klp.perf.domain.PerfAppraisalDetail; +import com.klp.perf.mapper.PerfAppraisalDetailMapper; +import com.klp.perf.service.IPerfAppraisalDetailService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 考核维度评分明细Service业务层处理 + * + * @author klp + * @date 2026-07-07 + */ +@RequiredArgsConstructor +@Service +public class PerfAppraisalDetailServiceImpl implements IPerfAppraisalDetailService { + + private final PerfAppraisalDetailMapper baseMapper; + + /** + * 查询考核维度评分明细 + */ + @Override + public PerfAppraisalDetailVo queryById(String id){ + return baseMapper.selectVoById(id); + } + + /** + * 查询考核维度评分明细列表 + */ + @Override + public TableDataInfo queryPageList(PerfAppraisalDetailBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询考核维度评分明细列表 + */ + @Override + public List queryList(PerfAppraisalDetailBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(PerfAppraisalDetailBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StringUtils.isNotBlank(bo.getAppraisalId()), PerfAppraisalDetail::getAppraisalId, bo.getAppraisalId()); + lqw.eq(StringUtils.isNotBlank(bo.getDimensionId()), PerfAppraisalDetail::getDimensionId, bo.getDimensionId()); + lqw.eq(StringUtils.isNotBlank(bo.getSeq()), PerfAppraisalDetail::getSeq, bo.getSeq()); + lqw.like(StringUtils.isNotBlank(bo.getDimName()), PerfAppraisalDetail::getDimName, bo.getDimName()); + lqw.eq(StringUtils.isNotBlank(bo.getWeight()), PerfAppraisalDetail::getWeight, bo.getWeight()); + lqw.eq(StringUtils.isNotBlank(bo.getTargetValue()), PerfAppraisalDetail::getTargetValue, bo.getTargetValue()); + lqw.eq(StringUtils.isNotBlank(bo.getActualValue()), PerfAppraisalDetail::getActualValue, bo.getActualValue()); + lqw.eq(bo.getDimScore() != null, PerfAppraisalDetail::getDimScore, bo.getDimScore()); + lqw.eq(bo.getBonus() != null, PerfAppraisalDetail::getBonus, bo.getBonus()); + lqw.eq(bo.getPenalty() != null, PerfAppraisalDetail::getPenalty, bo.getPenalty()); + lqw.eq(StringUtils.isNotBlank(bo.getScoreFormula()), PerfAppraisalDetail::getScoreFormula, bo.getScoreFormula()); + lqw.eq(StringUtils.isNotBlank(bo.getScoreRule()), PerfAppraisalDetail::getScoreRule, bo.getScoreRule()); + return lqw; + } + + /** + * 新增考核维度评分明细 + */ + @Override + public Boolean insertByBo(PerfAppraisalDetailBo bo) { + PerfAppraisalDetail add = BeanUtil.toBean(bo, PerfAppraisalDetail.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改考核维度评分明细 + */ + @Override + public Boolean updateByBo(PerfAppraisalDetailBo bo) { + PerfAppraisalDetail update = BeanUtil.toBean(bo, PerfAppraisalDetail.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(PerfAppraisalDetail entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除考核维度评分明细 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalServiceImpl.java new file mode 100644 index 000000000..126ba9e39 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalServiceImpl.java @@ -0,0 +1,121 @@ +package com.klp.perf.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.perf.domain.bo.PerfAppraisalBo; +import com.klp.perf.domain.vo.PerfAppraisalVo; +import com.klp.perf.domain.PerfAppraisal; +import com.klp.perf.mapper.PerfAppraisalMapper; +import com.klp.perf.service.IPerfAppraisalService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 月度绩效考核记录Service业务层处理 + * + * @author klp + * @date 2026-07-07 + */ +@RequiredArgsConstructor +@Service +public class PerfAppraisalServiceImpl implements IPerfAppraisalService { + + private final PerfAppraisalMapper baseMapper; + + /** + * 查询月度绩效考核记录 + */ + @Override + public PerfAppraisalVo queryById(String id){ + return baseMapper.selectVoById(id); + } + + /** + * 查询月度绩效考核记录列表 + */ + @Override + public TableDataInfo queryPageList(PerfAppraisalBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询月度绩效考核记录列表 + */ + @Override + public List queryList(PerfAppraisalBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(PerfAppraisalBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StringUtils.isNotBlank(bo.getEmployeeId()), PerfAppraisal::getEmployeeId, bo.getEmployeeId()); + lqw.eq(StringUtils.isNotBlank(bo.getDeptId()), PerfAppraisal::getDeptId, bo.getDeptId()); + lqw.eq(StringUtils.isNotBlank(bo.getTemplateId()), PerfAppraisal::getTemplateId, bo.getTemplateId()); + lqw.eq(StringUtils.isNotBlank(bo.getPeriod()), PerfAppraisal::getPeriod, bo.getPeriod()); + lqw.eq(bo.getWeightedScore() != null, PerfAppraisal::getWeightedScore, bo.getWeightedScore()); + lqw.eq(bo.getBonusScore() != null, PerfAppraisal::getBonusScore, bo.getBonusScore()); + lqw.eq(bo.getPenaltyScore() != null, PerfAppraisal::getPenaltyScore, bo.getPenaltyScore()); + lqw.eq(bo.getFinalScore() != null, PerfAppraisal::getFinalScore, bo.getFinalScore()); + lqw.eq(StringUtils.isNotBlank(bo.getGrade()), PerfAppraisal::getGrade, bo.getGrade()); + lqw.eq(bo.getPerfCoeff() != null, PerfAppraisal::getPerfCoeff, bo.getPerfCoeff()); + lqw.eq(bo.getStatus() != null, PerfAppraisal::getStatus, bo.getStatus()); + lqw.eq(bo.getConfirmedAt() != null, PerfAppraisal::getConfirmedAt, bo.getConfirmedAt()); + lqw.eq(StringUtils.isNotBlank(bo.getConfirmedBy()), PerfAppraisal::getConfirmedBy, bo.getConfirmedBy()); + return lqw; + } + + /** + * 新增月度绩效考核记录 + */ + @Override + public Boolean insertByBo(PerfAppraisalBo bo) { + PerfAppraisal add = BeanUtil.toBean(bo, PerfAppraisal.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改月度绩效考核记录 + */ + @Override + public Boolean updateByBo(PerfAppraisalBo bo) { + PerfAppraisal update = BeanUtil.toBean(bo, PerfAppraisal.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(PerfAppraisal entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除月度绩效考核记录 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfCoeffRangeServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfCoeffRangeServiceImpl.java new file mode 100644 index 000000000..e88d1a4fe --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfCoeffRangeServiceImpl.java @@ -0,0 +1,115 @@ +package com.klp.perf.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.perf.domain.bo.PerfCoeffRangeBo; +import com.klp.perf.domain.vo.PerfCoeffRangeVo; +import com.klp.perf.domain.PerfCoeffRange; +import com.klp.perf.mapper.PerfCoeffRangeMapper; +import com.klp.perf.service.IPerfCoeffRangeService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 绩效系数换算Service业务层处理 + * + * @author klp + * @date 2026-07-07 + */ +@RequiredArgsConstructor +@Service +public class PerfCoeffRangeServiceImpl implements IPerfCoeffRangeService { + + private final PerfCoeffRangeMapper baseMapper; + + /** + * 查询绩效系数换算 + */ + @Override + public PerfCoeffRangeVo queryById(String id){ + return baseMapper.selectVoById(id); + } + + /** + * 查询绩效系数换算列表 + */ + @Override + public TableDataInfo queryPageList(PerfCoeffRangeBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询绩效系数换算列表 + */ + @Override + public List queryList(PerfCoeffRangeBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(PerfCoeffRangeBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StringUtils.isNotBlank(bo.getGrade()), PerfCoeffRange::getGrade, bo.getGrade()); + lqw.eq(StringUtils.isNotBlank(bo.getGradeLabel()), PerfCoeffRange::getGradeLabel, bo.getGradeLabel()); + lqw.eq(bo.getScoreMin() != null, PerfCoeffRange::getScoreMin, bo.getScoreMin()); + lqw.eq(bo.getScoreMax() != null, PerfCoeffRange::getScoreMax, bo.getScoreMax()); + lqw.eq(bo.getCoeffMin() != null, PerfCoeffRange::getCoeffMin, bo.getCoeffMin()); + lqw.eq(bo.getCoeffMax() != null, PerfCoeffRange::getCoeffMax, bo.getCoeffMax()); + lqw.eq(bo.getSortOrder() != null, PerfCoeffRange::getSortOrder, bo.getSortOrder()); + return lqw; + } + + /** + * 新增绩效系数换算 + */ + @Override + public Boolean insertByBo(PerfCoeffRangeBo bo) { + PerfCoeffRange add = BeanUtil.toBean(bo, PerfCoeffRange.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改绩效系数换算 + */ + @Override + public Boolean updateByBo(PerfCoeffRangeBo bo) { + PerfCoeffRange update = BeanUtil.toBean(bo, PerfCoeffRange.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(PerfCoeffRange entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除绩效系数换算 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptConfigServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptConfigServiceImpl.java new file mode 100644 index 000000000..f31d98c97 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptConfigServiceImpl.java @@ -0,0 +1,120 @@ +package com.klp.perf.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.perf.domain.bo.PerfDeptConfigBo; +import com.klp.perf.domain.vo.PerfDeptConfigVo; +import com.klp.perf.domain.PerfDeptConfig; +import com.klp.perf.mapper.PerfDeptConfigMapper; +import com.klp.perf.service.IPerfDeptConfigService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 车间考核参数配置Service业务层处理 + * + * @author klp + * @date 2026-07-07 + */ +@RequiredArgsConstructor +@Service +public class PerfDeptConfigServiceImpl implements IPerfDeptConfigService { + + private final PerfDeptConfigMapper baseMapper; + + /** + * 查询车间考核参数配置 + */ + @Override + public PerfDeptConfigVo queryById(String id){ + return baseMapper.selectVoById(id); + } + + /** + * 查询车间考核参数配置列表 + */ + @Override + public TableDataInfo queryPageList(PerfDeptConfigBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询车间考核参数配置列表 + */ + @Override + public List queryList(PerfDeptConfigBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(PerfDeptConfigBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StringUtils.isNotBlank(bo.getDeptId()), PerfDeptConfig::getDeptId, bo.getDeptId()); + lqw.eq(bo.getMonthlyProductionTarget() != null, PerfDeptConfig::getMonthlyProductionTarget, bo.getMonthlyProductionTarget()); + lqw.eq(StringUtils.isNotBlank(bo.getProductionUnit()), PerfDeptConfig::getProductionUnit, bo.getProductionUnit()); + lqw.eq(bo.getPerfUnitPrice() != null, PerfDeptConfig::getPerfUnitPrice, bo.getPerfUnitPrice()); + lqw.eq(bo.getProductionShifts() != null, PerfDeptConfig::getProductionShifts, bo.getProductionShifts()); + lqw.eq(bo.getGuaranteedShifts() != null, PerfDeptConfig::getGuaranteedShifts, bo.getGuaranteedShifts()); + lqw.eq(bo.getDeptCoeff() != null, PerfDeptConfig::getDeptCoeff, bo.getDeptCoeff()); + lqw.eq(bo.getSalaryMode() != null, PerfDeptConfig::getSalaryMode, bo.getSalaryMode()); + lqw.eq(bo.getBaseDivisor() != null, PerfDeptConfig::getBaseDivisor, bo.getBaseDivisor()); + lqw.eq(bo.getMonth() != null, PerfDeptConfig::getMonth, bo.getMonth()); + lqw.eq(bo.getCreatedAt() != null, PerfDeptConfig::getCreatedAt, bo.getCreatedAt()); + lqw.eq(bo.getUpdatedAt() != null, PerfDeptConfig::getUpdatedAt, bo.getUpdatedAt()); + return lqw; + } + + /** + * 新增车间考核参数配置 + */ + @Override + public Boolean insertByBo(PerfDeptConfigBo bo) { + PerfDeptConfig add = BeanUtil.toBean(bo, PerfDeptConfig.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改车间考核参数配置 + */ + @Override + public Boolean updateByBo(PerfDeptConfigBo bo) { + PerfDeptConfig update = BeanUtil.toBean(bo, PerfDeptConfig.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(PerfDeptConfig entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除车间考核参数配置 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptItemConfigServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptItemConfigServiceImpl.java new file mode 100644 index 000000000..b434b7592 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptItemConfigServiceImpl.java @@ -0,0 +1,114 @@ +package com.klp.perf.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.perf.domain.bo.PerfDeptItemConfigBo; +import com.klp.perf.domain.vo.PerfDeptItemConfigVo; +import com.klp.perf.domain.PerfDeptItemConfig; +import com.klp.perf.mapper.PerfDeptItemConfigMapper; +import com.klp.perf.service.IPerfDeptItemConfigService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 车间扣款/奖励项目配置Service业务层处理 + * + * @author klp + * @date 2026-07-07 + */ +@RequiredArgsConstructor +@Service +public class PerfDeptItemConfigServiceImpl implements IPerfDeptItemConfigService { + + private final PerfDeptItemConfigMapper baseMapper; + + /** + * 查询车间扣款/奖励项目配置 + */ + @Override + public PerfDeptItemConfigVo queryById(String id){ + return baseMapper.selectVoById(id); + } + + /** + * 查询车间扣款/奖励项目配置列表 + */ + @Override + public TableDataInfo queryPageList(PerfDeptItemConfigBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询车间扣款/奖励项目配置列表 + */ + @Override + public List queryList(PerfDeptItemConfigBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(PerfDeptItemConfigBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StringUtils.isNotBlank(bo.getDeptId()), PerfDeptItemConfig::getDeptId, bo.getDeptId()); + lqw.eq(bo.getItemType() != null, PerfDeptItemConfig::getItemType, bo.getItemType()); + lqw.like(StringUtils.isNotBlank(bo.getItemName()), PerfDeptItemConfig::getItemName, bo.getItemName()); + lqw.eq(bo.getSortOrder() != null, PerfDeptItemConfig::getSortOrder, bo.getSortOrder()); + lqw.eq(bo.getMonth() != null, PerfDeptItemConfig::getMonth, bo.getMonth()); + lqw.eq(bo.getIsEnabled() != null, PerfDeptItemConfig::getIsEnabled, bo.getIsEnabled()); + return lqw; + } + + /** + * 新增车间扣款/奖励项目配置 + */ + @Override + public Boolean insertByBo(PerfDeptItemConfigBo bo) { + PerfDeptItemConfig add = BeanUtil.toBean(bo, PerfDeptItemConfig.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改车间扣款/奖励项目配置 + */ + @Override + public Boolean updateByBo(PerfDeptItemConfigBo bo) { + PerfDeptItemConfig update = BeanUtil.toBean(bo, PerfDeptItemConfig.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(PerfDeptItemConfig entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除车间扣款/奖励项目配置 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptSummaryServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptSummaryServiceImpl.java new file mode 100644 index 000000000..8dc60ce99 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptSummaryServiceImpl.java @@ -0,0 +1,124 @@ +package com.klp.perf.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.perf.domain.bo.PerfDeptSummaryBo; +import com.klp.perf.domain.vo.PerfDeptSummaryVo; +import com.klp.perf.domain.PerfDeptSummary; +import com.klp.perf.mapper.PerfDeptSummaryMapper; +import com.klp.perf.service.IPerfDeptSummaryService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 车间月度汇总Service业务层处理 + * + * @author klp + * @date 2026-07-07 + */ +@RequiredArgsConstructor +@Service +public class PerfDeptSummaryServiceImpl implements IPerfDeptSummaryService { + + private final PerfDeptSummaryMapper baseMapper; + + /** + * 查询车间月度汇总 + */ + @Override + public PerfDeptSummaryVo queryById(String id){ + return baseMapper.selectVoById(id); + } + + /** + * 查询车间月度汇总列表 + */ + @Override + public TableDataInfo queryPageList(PerfDeptSummaryBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询车间月度汇总列表 + */ + @Override + public List queryList(PerfDeptSummaryBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(PerfDeptSummaryBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StringUtils.isNotBlank(bo.getDeptId()), PerfDeptSummary::getDeptId, bo.getDeptId()); + lqw.eq(StringUtils.isNotBlank(bo.getPeriod()), PerfDeptSummary::getPeriod, bo.getPeriod()); + lqw.eq(bo.getTotalEmployees() != null, PerfDeptSummary::getTotalEmployees, bo.getTotalEmployees()); + lqw.eq(bo.getTotalCoeffSum() != null, PerfDeptSummary::getTotalCoeffSum, bo.getTotalCoeffSum()); + lqw.eq(bo.getAvgPerfScore() != null, PerfDeptSummary::getAvgPerfScore, bo.getAvgPerfScore()); + lqw.eq(bo.getAvgPerfCoeff() != null, PerfDeptSummary::getAvgPerfCoeff, bo.getAvgPerfCoeff()); + lqw.eq(bo.getTotalBaseSalary() != null, PerfDeptSummary::getTotalBaseSalary, bo.getTotalBaseSalary()); + lqw.eq(bo.getTotalPerfWage() != null, PerfDeptSummary::getTotalPerfWage, bo.getTotalPerfWage()); + lqw.eq(bo.getTotalDeductions() != null, PerfDeptSummary::getTotalDeductions, bo.getTotalDeductions()); + lqw.eq(bo.getTotalBonuses() != null, PerfDeptSummary::getTotalBonuses, bo.getTotalBonuses()); + lqw.eq(bo.getTotalOther() != null, PerfDeptSummary::getTotalOther, bo.getTotalOther()); + lqw.eq(bo.getTotalActualSalary() != null, PerfDeptSummary::getTotalActualSalary, bo.getTotalActualSalary()); + lqw.eq(bo.getAvgActualSalary() != null, PerfDeptSummary::getAvgActualSalary, bo.getAvgActualSalary()); + lqw.eq(bo.getMonthlyProduction() != null, PerfDeptSummary::getMonthlyProduction, bo.getMonthlyProduction()); + lqw.eq(bo.getUnitPrice() != null, PerfDeptSummary::getUnitPrice, bo.getUnitPrice()); + lqw.eq(bo.getStatus() != null, PerfDeptSummary::getStatus, bo.getStatus()); + return lqw; + } + + /** + * 新增车间月度汇总 + */ + @Override + public Boolean insertByBo(PerfDeptSummaryBo bo) { + PerfDeptSummary add = BeanUtil.toBean(bo, PerfDeptSummary.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改车间月度汇总 + */ + @Override + public Boolean updateByBo(PerfDeptSummaryBo bo) { + PerfDeptSummary update = BeanUtil.toBean(bo, PerfDeptSummary.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(PerfDeptSummary entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除车间月度汇总 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfEmployeeInfoServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfEmployeeInfoServiceImpl.java new file mode 100644 index 000000000..51e2628a7 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfEmployeeInfoServiceImpl.java @@ -0,0 +1,115 @@ +package com.klp.perf.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.perf.domain.bo.PerfEmployeeInfoBo; +import com.klp.perf.domain.vo.PerfEmployeeInfoVo; +import com.klp.perf.domain.PerfEmployeeInfo; +import com.klp.perf.mapper.PerfEmployeeInfoMapper; +import com.klp.perf.service.IPerfEmployeeInfoService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 员工绩效薪资基本信息Service业务层处理 + * + * @author klp + * @date 2026-07-07 + */ +@RequiredArgsConstructor +@Service +public class PerfEmployeeInfoServiceImpl implements IPerfEmployeeInfoService { + + private final PerfEmployeeInfoMapper baseMapper; + + /** + * 查询员工绩效薪资基本信息 + */ + @Override + public PerfEmployeeInfoVo queryById(String id){ + return baseMapper.selectVoById(id); + } + + /** + * 查询员工绩效薪资基本信息列表 + */ + @Override + public TableDataInfo queryPageList(PerfEmployeeInfoBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询员工绩效薪资基本信息列表 + */ + @Override + public List queryList(PerfEmployeeInfoBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(PerfEmployeeInfoBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StringUtils.isNotBlank(bo.getEmployeeId()), PerfEmployeeInfo::getEmployeeId, bo.getEmployeeId()); + lqw.eq(StringUtils.isNotBlank(bo.getDeptId()), PerfEmployeeInfo::getDeptId, bo.getDeptId()); + lqw.like(StringUtils.isNotBlank(bo.getPositionName()), PerfEmployeeInfo::getPositionName, bo.getPositionName()); + lqw.eq(bo.getBaseSalary() != null, PerfEmployeeInfo::getBaseSalary, bo.getBaseSalary()); + lqw.eq(bo.getPerfBase() != null, PerfEmployeeInfo::getPerfBase, bo.getPerfBase()); + lqw.eq(bo.getPosCoeffDefault() != null, PerfEmployeeInfo::getPosCoeffDefault, bo.getPosCoeffDefault()); + lqw.eq(bo.getIsActive() != null, PerfEmployeeInfo::getIsActive, bo.getIsActive()); + return lqw; + } + + /** + * 新增员工绩效薪资基本信息 + */ + @Override + public Boolean insertByBo(PerfEmployeeInfoBo bo) { + PerfEmployeeInfo add = BeanUtil.toBean(bo, PerfEmployeeInfo.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改员工绩效薪资基本信息 + */ + @Override + public Boolean updateByBo(PerfEmployeeInfoBo bo) { + PerfEmployeeInfo update = BeanUtil.toBean(bo, PerfEmployeeInfo.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(PerfEmployeeInfo entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除员工绩效薪资基本信息 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfPositionTemplateServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfPositionTemplateServiceImpl.java new file mode 100644 index 000000000..b385d1126 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfPositionTemplateServiceImpl.java @@ -0,0 +1,112 @@ +package com.klp.perf.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.perf.domain.bo.PerfPositionTemplateBo; +import com.klp.perf.domain.vo.PerfPositionTemplateVo; +import com.klp.perf.domain.PerfPositionTemplate; +import com.klp.perf.mapper.PerfPositionTemplateMapper; +import com.klp.perf.service.IPerfPositionTemplateService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 岗位绩效考核模板Service业务层处理 + * + * @author klp + * @date 2026-07-07 + */ +@RequiredArgsConstructor +@Service +public class PerfPositionTemplateServiceImpl implements IPerfPositionTemplateService { + + private final PerfPositionTemplateMapper baseMapper; + + /** + * 查询岗位绩效考核模板 + */ + @Override + public PerfPositionTemplateVo queryById(String id){ + return baseMapper.selectVoById(id); + } + + /** + * 查询岗位绩效考核模板列表 + */ + @Override + public TableDataInfo queryPageList(PerfPositionTemplateBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询岗位绩效考核模板列表 + */ + @Override + public List queryList(PerfPositionTemplateBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(PerfPositionTemplateBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StringUtils.isNotBlank(bo.getDeptId()), PerfPositionTemplate::getDeptId, bo.getDeptId()); + lqw.like(StringUtils.isNotBlank(bo.getPositionName()), PerfPositionTemplate::getPositionName, bo.getPositionName()); + lqw.eq(StringUtils.isNotBlank(bo.getTitle()), PerfPositionTemplate::getTitle, bo.getTitle()); + lqw.eq(bo.getIsEnabled() != null, PerfPositionTemplate::getIsEnabled, bo.getIsEnabled()); + return lqw; + } + + /** + * 新增岗位绩效考核模板 + */ + @Override + public Boolean insertByBo(PerfPositionTemplateBo bo) { + PerfPositionTemplate add = BeanUtil.toBean(bo, PerfPositionTemplate.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改岗位绩效考核模板 + */ + @Override + public Boolean updateByBo(PerfPositionTemplateBo bo) { + PerfPositionTemplate update = BeanUtil.toBean(bo, PerfPositionTemplate.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(PerfPositionTemplate entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除岗位绩效考核模板 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfSalaryServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfSalaryServiceImpl.java new file mode 100644 index 000000000..a2ce47ab0 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfSalaryServiceImpl.java @@ -0,0 +1,137 @@ +package com.klp.perf.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.perf.domain.bo.PerfSalaryBo; +import com.klp.perf.domain.vo.PerfSalaryVo; +import com.klp.perf.domain.PerfSalary; +import com.klp.perf.mapper.PerfSalaryMapper; +import com.klp.perf.service.IPerfSalaryService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 月度薪资计算记录Service业务层处理 + * + * @author klp + * @date 2026-07-07 + */ +@RequiredArgsConstructor +@Service +public class PerfSalaryServiceImpl implements IPerfSalaryService { + + private final PerfSalaryMapper baseMapper; + + /** + * 查询月度薪资计算记录 + */ + @Override + public PerfSalaryVo queryById(String id){ + return baseMapper.selectVoById(id); + } + + /** + * 查询月度薪资计算记录列表 + */ + @Override + public TableDataInfo queryPageList(PerfSalaryBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询月度薪资计算记录列表 + */ + @Override + public List queryList(PerfSalaryBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(PerfSalaryBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StringUtils.isNotBlank(bo.getEmployeeId()), PerfSalary::getEmployeeId, bo.getEmployeeId()); + lqw.eq(StringUtils.isNotBlank(bo.getDeptId()), PerfSalary::getDeptId, bo.getDeptId()); + lqw.eq(StringUtils.isNotBlank(bo.getAppraisalId()), PerfSalary::getAppraisalId, bo.getAppraisalId()); + lqw.eq(StringUtils.isNotBlank(bo.getPeriod()), PerfSalary::getPeriod, bo.getPeriod()); + lqw.eq(bo.getBaseSalary() != null, PerfSalary::getBaseSalary, bo.getBaseSalary()); + lqw.eq(bo.getPerfBase() != null, PerfSalary::getPerfBase, bo.getPerfBase()); + lqw.eq(bo.getPerfScore() != null, PerfSalary::getPerfScore, bo.getPerfScore()); + lqw.eq(bo.getPerfCoeff() != null, PerfSalary::getPerfCoeff, bo.getPerfCoeff()); + lqw.eq(bo.getDeptCoeff() != null, PerfSalary::getDeptCoeff, bo.getDeptCoeff()); + lqw.eq(bo.getPerfWage() != null, PerfSalary::getPerfWage, bo.getPerfWage()); + lqw.eq(bo.getPosCoeff() != null, PerfSalary::getPosCoeff, bo.getPosCoeff()); + lqw.eq(bo.getFixedCoeff() != null, PerfSalary::getFixedCoeff, bo.getFixedCoeff()); + lqw.eq(bo.getAdjCoeff() != null, PerfSalary::getAdjCoeff, bo.getAdjCoeff()); + lqw.eq(bo.getAdjCoeffManual() != null, PerfSalary::getAdjCoeffManual, bo.getAdjCoeffManual()); + lqw.eq(bo.getTotalCoeff() != null, PerfSalary::getTotalCoeff, bo.getTotalCoeff()); + lqw.eq(StringUtils.isNotBlank(bo.getDeductionsJson()), PerfSalary::getDeductionsJson, bo.getDeductionsJson()); + lqw.eq(bo.getDeductionsTotal() != null, PerfSalary::getDeductionsTotal, bo.getDeductionsTotal()); + lqw.eq(StringUtils.isNotBlank(bo.getBonusesJson()), PerfSalary::getBonusesJson, bo.getBonusesJson()); + lqw.eq(bo.getBonusesTotal() != null, PerfSalary::getBonusesTotal, bo.getBonusesTotal()); + lqw.eq(bo.getOtherAmount() != null, PerfSalary::getOtherAmount, bo.getOtherAmount()); + lqw.eq(bo.getActualSalary() != null, PerfSalary::getActualSalary, bo.getActualSalary()); + lqw.eq(bo.getFixedSalaryRef() != null, PerfSalary::getFixedSalaryRef, bo.getFixedSalaryRef()); + lqw.eq(bo.getAdjSalaryRef() != null, PerfSalary::getAdjSalaryRef, bo.getAdjSalaryRef()); + lqw.eq(bo.getBaoPerShiftRef() != null, PerfSalary::getBaoPerShiftRef, bo.getBaoPerShiftRef()); + lqw.eq(bo.getBaoSalaryRef() != null, PerfSalary::getBaoSalaryRef, bo.getBaoSalaryRef()); + lqw.eq(bo.getTotalSalaryRef() != null, PerfSalary::getTotalSalaryRef, bo.getTotalSalaryRef()); + lqw.eq(bo.getStatus() != null, PerfSalary::getStatus, bo.getStatus()); + lqw.eq(bo.getConfirmedAt() != null, PerfSalary::getConfirmedAt, bo.getConfirmedAt()); + lqw.eq(StringUtils.isNotBlank(bo.getConfirmedBy()), PerfSalary::getConfirmedBy, bo.getConfirmedBy()); + return lqw; + } + + /** + * 新增月度薪资计算记录 + */ + @Override + public Boolean insertByBo(PerfSalaryBo bo) { + PerfSalary add = BeanUtil.toBean(bo, PerfSalary.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改月度薪资计算记录 + */ + @Override + public Boolean updateByBo(PerfSalaryBo bo) { + PerfSalary update = BeanUtil.toBean(bo, PerfSalary.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(PerfSalary entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除月度薪资计算记录 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfTemplateDimensionServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfTemplateDimensionServiceImpl.java new file mode 100644 index 000000000..4fd81b947 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfTemplateDimensionServiceImpl.java @@ -0,0 +1,117 @@ +package com.klp.perf.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.perf.domain.bo.PerfTemplateDimensionBo; +import com.klp.perf.domain.vo.PerfTemplateDimensionVo; +import com.klp.perf.domain.PerfTemplateDimension; +import com.klp.perf.mapper.PerfTemplateDimensionMapper; +import com.klp.perf.service.IPerfTemplateDimensionService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 考核维度明细Service业务层处理 + * + * @author klp + * @date 2026-07-07 + */ +@RequiredArgsConstructor +@Service +public class PerfTemplateDimensionServiceImpl implements IPerfTemplateDimensionService { + + private final PerfTemplateDimensionMapper baseMapper; + + /** + * 查询考核维度明细 + */ + @Override + public PerfTemplateDimensionVo queryById(String id){ + return baseMapper.selectVoById(id); + } + + /** + * 查询考核维度明细列表 + */ + @Override + public TableDataInfo queryPageList(PerfTemplateDimensionBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询考核维度明细列表 + */ + @Override + public List queryList(PerfTemplateDimensionBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(PerfTemplateDimensionBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StringUtils.isNotBlank(bo.getTemplateId()), PerfTemplateDimension::getTemplateId, bo.getTemplateId()); + lqw.eq(StringUtils.isNotBlank(bo.getSeq()), PerfTemplateDimension::getSeq, bo.getSeq()); + lqw.like(StringUtils.isNotBlank(bo.getDimName()), PerfTemplateDimension::getDimName, bo.getDimName()); + lqw.eq(StringUtils.isNotBlank(bo.getWeight()), PerfTemplateDimension::getWeight, bo.getWeight()); + lqw.eq(StringUtils.isNotBlank(bo.getIndicator()), PerfTemplateDimension::getIndicator, bo.getIndicator()); + lqw.eq(StringUtils.isNotBlank(bo.getTargetValue()), PerfTemplateDimension::getTargetValue, bo.getTargetValue()); + lqw.eq(StringUtils.isNotBlank(bo.getScoreFormula()), PerfTemplateDimension::getScoreFormula, bo.getScoreFormula()); + lqw.eq(StringUtils.isNotBlank(bo.getScoreRule()), PerfTemplateDimension::getScoreRule, bo.getScoreRule()); + lqw.eq(bo.getIsEnabled() != null, PerfTemplateDimension::getIsEnabled, bo.getIsEnabled()); + return lqw; + } + + /** + * 新增考核维度明细 + */ + @Override + public Boolean insertByBo(PerfTemplateDimensionBo bo) { + PerfTemplateDimension add = BeanUtil.toBean(bo, PerfTemplateDimension.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改考核维度明细 + */ + @Override + public Boolean updateByBo(PerfTemplateDimensionBo bo) { + PerfTemplateDimension update = BeanUtil.toBean(bo, PerfTemplateDimension.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(PerfTemplateDimension entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除考核维度明细 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-perf/src/main/resources/mapper/perf/PerfAppraisalDetailMapper.xml b/klp-perf/src/main/resources/mapper/perf/PerfAppraisalDetailMapper.xml new file mode 100644 index 000000000..bfefc06c8 --- /dev/null +++ b/klp-perf/src/main/resources/mapper/perf/PerfAppraisalDetailMapper.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/klp-perf/src/main/resources/mapper/perf/PerfAppraisalMapper.xml b/klp-perf/src/main/resources/mapper/perf/PerfAppraisalMapper.xml new file mode 100644 index 000000000..bdcffde34 --- /dev/null +++ b/klp-perf/src/main/resources/mapper/perf/PerfAppraisalMapper.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/klp-perf/src/main/resources/mapper/perf/PerfCoeffRangeMapper.xml b/klp-perf/src/main/resources/mapper/perf/PerfCoeffRangeMapper.xml new file mode 100644 index 000000000..7614df6bd --- /dev/null +++ b/klp-perf/src/main/resources/mapper/perf/PerfCoeffRangeMapper.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/klp-perf/src/main/resources/mapper/perf/PerfDeptConfigMapper.xml b/klp-perf/src/main/resources/mapper/perf/PerfDeptConfigMapper.xml new file mode 100644 index 000000000..0c96822b8 --- /dev/null +++ b/klp-perf/src/main/resources/mapper/perf/PerfDeptConfigMapper.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/klp-perf/src/main/resources/mapper/perf/PerfDeptItemConfigMapper.xml b/klp-perf/src/main/resources/mapper/perf/PerfDeptItemConfigMapper.xml new file mode 100644 index 000000000..6e8e16306 --- /dev/null +++ b/klp-perf/src/main/resources/mapper/perf/PerfDeptItemConfigMapper.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/klp-perf/src/main/resources/mapper/perf/PerfDeptSummaryMapper.xml b/klp-perf/src/main/resources/mapper/perf/PerfDeptSummaryMapper.xml new file mode 100644 index 000000000..bf29d200a --- /dev/null +++ b/klp-perf/src/main/resources/mapper/perf/PerfDeptSummaryMapper.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/klp-perf/src/main/resources/mapper/perf/PerfEmployeeInfoMapper.xml b/klp-perf/src/main/resources/mapper/perf/PerfEmployeeInfoMapper.xml new file mode 100644 index 000000000..17bb24965 --- /dev/null +++ b/klp-perf/src/main/resources/mapper/perf/PerfEmployeeInfoMapper.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/klp-perf/src/main/resources/mapper/perf/PerfPositionTemplateMapper.xml b/klp-perf/src/main/resources/mapper/perf/PerfPositionTemplateMapper.xml new file mode 100644 index 000000000..d2b27d489 --- /dev/null +++ b/klp-perf/src/main/resources/mapper/perf/PerfPositionTemplateMapper.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/klp-perf/src/main/resources/mapper/perf/PerfSalaryMapper.xml b/klp-perf/src/main/resources/mapper/perf/PerfSalaryMapper.xml new file mode 100644 index 000000000..778538fd1 --- /dev/null +++ b/klp-perf/src/main/resources/mapper/perf/PerfSalaryMapper.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/klp-perf/src/main/resources/mapper/perf/PerfTemplateDimensionMapper.xml b/klp-perf/src/main/resources/mapper/perf/PerfTemplateDimensionMapper.xml new file mode 100644 index 000000000..75dd0838c --- /dev/null +++ b/klp-perf/src/main/resources/mapper/perf/PerfTemplateDimensionMapper.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/pom.xml b/pom.xml index 5702e179e..ccddf4446 100644 --- a/pom.xml +++ b/pom.xml @@ -428,6 +428,13 @@ klp-pltcm ${klp-flowable-plus.version} + + + + com.klp + klp-perf + ${klp-flowable-plus.version} + @@ -457,6 +464,7 @@ klp-flow klp-pt klp-pltcm + klp-perf pom From e4d0422c407290e9dadc7898b85f9d126745e7cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A0=82=E7=B3=96?= Date: Tue, 7 Jul 2026 15:31:01 +0800 Subject: [PATCH 12/14] =?UTF-8?q?refactor(wms/transfer):=20=E7=AE=80?= =?UTF-8?q?=E5=8C=96=E8=B0=83=E6=8B=A8=E5=AD=90=E8=A1=A8=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=A2=84=E5=A4=84=E7=90=86=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 移除冗余的isEmpty判断分支,改用空值合并运算符统一处理前后字段赋值,优化代码可读性和维护性 --- .../wms/move/components/tranferItemTable.vue | 66 +++++++------------ 1 file changed, 23 insertions(+), 43 deletions(-) diff --git a/klp-ui/src/views/wms/move/components/tranferItemTable.vue b/klp-ui/src/views/wms/move/components/tranferItemTable.vue index 8dc600904..b04a4b425 100644 --- a/klp-ui/src/views/wms/move/components/tranferItemTable.vue +++ b/klp-ui/src/views/wms/move/components/tranferItemTable.vue @@ -167,45 +167,29 @@ export default { if (newVal !== oldVal) { // 预处理数据 this.tableData = newVal.map(item => { - const isEmpty = this.isEmpty(item); - if (isEmpty) { - return { - ...item, - oBefore: { - manufacturer: item.manufacturerBefore, - specification: item.specificationBefore, - material: item.materialBefore, - itemName: item.materialNameBefore, - surfaceTreatmentDesc: item.surfaceTreatmentBefore, - zincLayer: item.zincLayerBefore - }, - oAfter: { - manufacturer: item.manufacturerAfter, - specification: item.specificationAfter, - material: item.materialAfter, - itemName: item.materialNameAfter, - surfaceTreatmentDesc: item.surfaceTreatmentAfter, - zincLayer: item.zincLayerAfter - }, - isConfirmed: this.isConfirmed(item) - } - } else { - return { - ...item, - oBefore: { - manufacturer: item.manufacturerBefore, - specification: item.specificationBefore, - material: item.materialBefore, - itemName: item.materialNameBefore, - surfaceTreatmentDesc: item.surfaceTreatmentBefore, - zincLayer: item.zincLayerBefore - }, - // 将三个after字段设置为与before相同 - itemIdAfter: item.itemIdBefore, - warehouseIdAfter: item.warehouseIdBefore, - materialTypeAfter: item.materialTypeBefore, - isConfirmed: this.isConfirmed(item) - } + return { + ...item, + oBefore: { + manufacturer: item.manufacturerBefore, + specification: item.specificationBefore, + material: item.materialBefore, + itemName: item.materialNameBefore, + surfaceTreatmentDesc: item.surfaceTreatmentBefore, + zincLayer: item.zincLayerBefore + }, + oAfter: { + manufacturer: item.manufacturerAfter ?? item.manufacturerBefore, + specification: item.specificationAfter ?? item.specificationBefore, + material: item.materialAfter ?? item.materialBefore, + itemName: item.materialNameAfter ?? item.materialNameBefore, + surfaceTreatmentDesc: item.surfaceTreatmentAfter ?? item.surfaceTreatmentBefore, + zincLayer: item.zincLayerAfter ?? item.zincLayerBefore + }, + // 每个字段独立判断:如果after有值则用after,否则回退到before + itemIdAfter: item.itemIdAfter ?? item.itemIdBefore, + warehouseIdAfter: item.warehouseIdAfter ?? item.warehouseIdBefore, + materialTypeAfter: item.materialTypeAfter ?? item.materialTypeBefore, + isConfirmed: this.isConfirmed(item) } }); } @@ -226,10 +210,6 @@ export default { // return item && item.itemIdAfter && item.warehouseIdAfter && item.materialTypeAfter return item.isTransferred == 1 }, - // isEmpty 是否为空 - isEmpty(item) { - return item && item.itemIdAfter && item.warehouseIdAfter && item.materialTypeAfter - }, handleUpdate(row) { updateTransferOrderItem(row).then(res => { this.$message({ From 50a62bc20152fbb7e953d05ba5e85faa648f3716 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Tue, 7 Jul 2026 15:58:06 +0800 Subject: [PATCH 13/14] =?UTF-8?q?feat(perf):=20=E6=B7=BB=E5=8A=A0=E7=BB=A9?= =?UTF-8?q?=E6=95=88=E7=B3=BB=E7=BB=9F=E9=83=A8=E9=97=A8=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 创建 PerfDept 实体类定义部门基本信息字段 - 实现 IPerfDeptService 接口提供部门增删改查方法 - 开发 PerfDeptController 控制器支持 RESTful API 操作 - 集成 MyBatis Plus 完成数据库映射与分页查询 - 添加部门信息的导入导出 Excel 功能 - 实现部门状态校验与批量删除验证逻辑 - 配置部门 VO 视图对象支持 Excel 数据转换 --- .../perf/controller/PerfDeptController.java | 99 ++++++++++++++++ .../java/com/klp/perf/domain/PerfDept.java | 53 +++++++++ .../com/klp/perf/domain/bo/PerfDeptBo.java | 51 ++++++++ .../com/klp/perf/domain/vo/PerfDeptVo.java | 60 ++++++++++ .../com/klp/perf/mapper/PerfDeptMapper.java | 15 +++ .../klp/perf/service/IPerfDeptService.java | 49 ++++++++ .../service/impl/PerfDeptServiceImpl.java | 112 ++++++++++++++++++ .../resources/mapper/perf/PerfDeptMapper.xml | 22 ++++ 8 files changed, 461 insertions(+) create mode 100644 klp-perf/src/main/java/com/klp/perf/controller/PerfDeptController.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/PerfDept.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptBo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptVo.java create mode 100644 klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptMapper.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/IPerfDeptService.java create mode 100644 klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptServiceImpl.java create mode 100644 klp-perf/src/main/resources/mapper/perf/PerfDeptMapper.xml diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptController.java new file mode 100644 index 000000000..6a0f14147 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptController.java @@ -0,0 +1,99 @@ +package com.klp.perf.controller; + +import java.util.List; +import java.util.Arrays; + +import lombok.RequiredArgsConstructor; +import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.*; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.klp.common.annotation.RepeatSubmit; +import com.klp.common.annotation.Log; +import com.klp.common.core.controller.BaseController; +import com.klp.common.core.domain.PageQuery; +import com.klp.common.core.domain.R; +import com.klp.common.core.validate.AddGroup; +import com.klp.common.core.validate.EditGroup; +import com.klp.common.enums.BusinessType; +import com.klp.common.utils.poi.ExcelUtil; +import com.klp.perf.domain.vo.PerfDeptVo; +import com.klp.perf.domain.bo.PerfDeptBo; +import com.klp.perf.service.IPerfDeptService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 绩效系统部门 + * + * @author klp + * @date 2026-07-07 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/perf/dept") +public class PerfDeptController extends BaseController { + + private final IPerfDeptService iPerfDeptService; + + /** + * 查询绩效系统部门列表 + */ + @GetMapping("/list") + public TableDataInfo list(PerfDeptBo bo, PageQuery pageQuery) { + return iPerfDeptService.queryPageList(bo, pageQuery); + } + + /** + * 导出绩效系统部门列表 + */ + @Log(title = "绩效系统部门", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(PerfDeptBo bo, HttpServletResponse response) { + List list = iPerfDeptService.queryList(bo); + ExcelUtil.exportExcel(list, "绩效系统部门", PerfDeptVo.class, response); + } + + /** + * 获取绩效系统部门详细信息 + * + * @param id 主键 + */ + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable String id) { + return R.ok(iPerfDeptService.queryById(id)); + } + + /** + * 新增绩效系统部门 + */ + @Log(title = "绩效系统部门", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody PerfDeptBo bo) { + return toAjax(iPerfDeptService.insertByBo(bo)); + } + + /** + * 修改绩效系统部门 + */ + @Log(title = "绩效系统部门", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody PerfDeptBo bo) { + return toAjax(iPerfDeptService.updateByBo(bo)); + } + + /** + * 删除绩效系统部门 + * + * @param ids 主键串 + */ + @Log(title = "绩效系统部门", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable String[] ids) { + return toAjax(iPerfDeptService.deleteWithValidByIds(Arrays.asList(ids), true)); + } +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfDept.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfDept.java new file mode 100644 index 000000000..da4b6c0c6 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfDept.java @@ -0,0 +1,53 @@ +package com.klp.perf.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + + +/** + * 绩效系统部门对象 perf_dept + * + * @author klp + * @date 2026-07-07 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("perf_dept") +public class PerfDept extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * 主键(UUID) + */ + @TableId(value = "id") + private String id; + /** + * 部门/车间名称 如:酸轧车间/技术部 + */ + private String deptName; + /** + * 排序 + */ + private Long orderNum; + /** + * 是否有保底薪资模式 0=否 1=是 + */ + private Integer hasBaoSalary; + /** + * 状态(0正常 1停用) + */ + private String status; + /** + * 删除标志(0=正常 1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptBo.java new file mode 100644 index 000000000..b95d43b93 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptBo.java @@ -0,0 +1,51 @@ +package com.klp.perf.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import javax.validation.constraints.*; + + +/** + * 绩效系统部门业务对象 perf_dept + * + * @author klp + * @date 2026-07-07 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class PerfDeptBo extends BaseEntity { + + /** + * 主键(UUID) + */ + private String id; + + /** + * 部门/车间名称 如:酸轧车间/技术部 + */ + private String deptName; + + /** + * 排序 + */ + private Long orderNum; + + /** + * 是否有保底薪资模式 0=否 1=是 + */ + private Integer hasBaoSalary; + + /** + * 状态(0正常 1停用) + */ + private String status; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptVo.java new file mode 100644 index 000000000..7cbd8acf3 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptVo.java @@ -0,0 +1,60 @@ +package com.klp.perf.domain.vo; + +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 绩效系统部门视图对象 perf_dept + * + * @author klp + * @date 2026-07-07 + */ +@Data +@ExcelIgnoreUnannotated +public class PerfDeptVo { + + private static final long serialVersionUID = 1L; + + /** + * 主键(UUID) + */ + @ExcelProperty(value = "主键(UUID)") + private String id; + + /** + * 部门/车间名称 如:酸轧车间/技术部 + */ + @ExcelProperty(value = "部门/车间名称 如:酸轧车间/技术部") + private String deptName; + + /** + * 排序 + */ + @ExcelProperty(value = "排序") + private Long orderNum; + + /** + * 是否有保底薪资模式 0=否 1=是 + */ + @ExcelProperty(value = "是否有保底薪资模式 0=否 1=是") + private Integer hasBaoSalary; + + /** + * 状态(0正常 1停用) + */ + @ExcelProperty(value = "状态", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "0=正常,1=停用") + private String status; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptMapper.java b/klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptMapper.java new file mode 100644 index 000000000..4a313e77b --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/mapper/PerfDeptMapper.java @@ -0,0 +1,15 @@ +package com.klp.perf.mapper; + +import com.klp.perf.domain.PerfDept; +import com.klp.perf.domain.vo.PerfDeptVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 绩效系统部门Mapper接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface PerfDeptMapper extends BaseMapperPlus { + +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptService.java new file mode 100644 index 000000000..f0f24ae40 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptService.java @@ -0,0 +1,49 @@ +package com.klp.perf.service; + +import com.klp.perf.domain.PerfDept; +import com.klp.perf.domain.vo.PerfDeptVo; +import com.klp.perf.domain.bo.PerfDeptBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 绩效系统部门Service接口 + * + * @author klp + * @date 2026-07-07 + */ +public interface IPerfDeptService { + + /** + * 查询绩效系统部门 + */ + PerfDeptVo queryById(String id); + + /** + * 查询绩效系统部门列表 + */ + TableDataInfo queryPageList(PerfDeptBo bo, PageQuery pageQuery); + + /** + * 查询绩效系统部门列表 + */ + List queryList(PerfDeptBo bo); + + /** + * 新增绩效系统部门 + */ + Boolean insertByBo(PerfDeptBo bo); + + /** + * 修改绩效系统部门 + */ + Boolean updateByBo(PerfDeptBo bo); + + /** + * 校验并批量删除绩效系统部门信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptServiceImpl.java new file mode 100644 index 000000000..c09f76110 --- /dev/null +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptServiceImpl.java @@ -0,0 +1,112 @@ +package com.klp.perf.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.perf.domain.bo.PerfDeptBo; +import com.klp.perf.domain.vo.PerfDeptVo; +import com.klp.perf.domain.PerfDept; +import com.klp.perf.mapper.PerfDeptMapper; +import com.klp.perf.service.IPerfDeptService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 绩效系统部门Service业务层处理 + * + * @author klp + * @date 2026-07-07 + */ +@RequiredArgsConstructor +@Service +public class PerfDeptServiceImpl implements IPerfDeptService { + + private final PerfDeptMapper baseMapper; + + /** + * 查询绩效系统部门 + */ + @Override + public PerfDeptVo queryById(String id){ + return baseMapper.selectVoById(id); + } + + /** + * 查询绩效系统部门列表 + */ + @Override + public TableDataInfo queryPageList(PerfDeptBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询绩效系统部门列表 + */ + @Override + public List queryList(PerfDeptBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(PerfDeptBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.like(StringUtils.isNotBlank(bo.getDeptName()), PerfDept::getDeptName, bo.getDeptName()); + lqw.eq(bo.getOrderNum() != null, PerfDept::getOrderNum, bo.getOrderNum()); + lqw.eq(bo.getHasBaoSalary() != null, PerfDept::getHasBaoSalary, bo.getHasBaoSalary()); + lqw.eq(StringUtils.isNotBlank(bo.getStatus()), PerfDept::getStatus, bo.getStatus()); + return lqw; + } + + /** + * 新增绩效系统部门 + */ + @Override + public Boolean insertByBo(PerfDeptBo bo) { + PerfDept add = BeanUtil.toBean(bo, PerfDept.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改绩效系统部门 + */ + @Override + public Boolean updateByBo(PerfDeptBo bo) { + PerfDept update = BeanUtil.toBean(bo, PerfDept.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(PerfDept entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除绩效系统部门 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-perf/src/main/resources/mapper/perf/PerfDeptMapper.xml b/klp-perf/src/main/resources/mapper/perf/PerfDeptMapper.xml new file mode 100644 index 000000000..a359fc9f4 --- /dev/null +++ b/klp-perf/src/main/resources/mapper/perf/PerfDeptMapper.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + From a56a0008b94476ecd33fa02f98190edc36bdd8ea Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Tue, 7 Jul 2026 16:39:37 +0800 Subject: [PATCH 14/14] =?UTF-8?q?refactor(perf):=20=E5=B0=86ID=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=E4=BB=8EString=E7=B1=BB=E5=9E=8B=E6=94=B9=E4=B8=BALon?= =?UTF-8?q?g=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 修改所有实体类中的ID字段类型从String改为Long - 更新所有服务接口和实现类的方法参数类型 - 调整控制器中的路径变量类型以匹配新的ID类型 - 修正查询条件判断逻辑,从字符串非空检查改为数值非空检查 - 更新数据传输对象中的ID字段类型保持一致性 --- .../perf/controller/PerfAppraisalController.java | 4 ++-- .../PerfAppraisalDetailController.java | 4 ++-- .../controller/PerfCoeffRangeController.java | 4 ++-- .../controller/PerfDeptConfigController.java | 4 ++-- .../klp/perf/controller/PerfDeptController.java | 4 ++-- .../controller/PerfDeptItemConfigController.java | 4 ++-- .../controller/PerfDeptSummaryController.java | 4 ++-- .../controller/PerfEmployeeInfoController.java | 4 ++-- .../PerfPositionTemplateController.java | 4 ++-- .../perf/controller/PerfSalaryController.java | 4 ++-- .../PerfTemplateDimensionController.java | 4 ++-- .../java/com/klp/perf/domain/PerfAppraisal.java | 12 ++++++------ .../com/klp/perf/domain/PerfAppraisalDetail.java | 6 +++--- .../java/com/klp/perf/domain/PerfCoeffRange.java | 2 +- .../main/java/com/klp/perf/domain/PerfDept.java | 4 ++-- .../java/com/klp/perf/domain/PerfDeptConfig.java | 6 +++--- .../com/klp/perf/domain/PerfDeptItemConfig.java | 6 +++--- .../com/klp/perf/domain/PerfDeptSummary.java | 6 +++--- .../com/klp/perf/domain/PerfEmployeeInfo.java | 8 ++++---- .../klp/perf/domain/PerfPositionTemplate.java | 6 +++--- .../java/com/klp/perf/domain/PerfSalary.java | 12 ++++++------ .../klp/perf/domain/PerfTemplateDimension.java | 4 ++-- .../com/klp/perf/domain/bo/PerfAppraisalBo.java | 12 ++++++------ .../perf/domain/bo/PerfAppraisalDetailBo.java | 6 +++--- .../com/klp/perf/domain/bo/PerfCoeffRangeBo.java | 2 +- .../java/com/klp/perf/domain/bo/PerfDeptBo.java | 4 ++-- .../com/klp/perf/domain/bo/PerfDeptConfigBo.java | 6 +++--- .../klp/perf/domain/bo/PerfDeptItemConfigBo.java | 6 +++--- .../klp/perf/domain/bo/PerfDeptSummaryBo.java | 6 +++--- .../klp/perf/domain/bo/PerfEmployeeInfoBo.java | 8 ++++---- .../perf/domain/bo/PerfPositionTemplateBo.java | 6 +++--- .../com/klp/perf/domain/bo/PerfSalaryBo.java | 12 ++++++------ .../perf/domain/bo/PerfTemplateDimensionBo.java | 4 ++-- .../perf/domain/vo/PerfAppraisalDetailVo.java | 6 +++--- .../com/klp/perf/domain/vo/PerfAppraisalVo.java | 14 +++++++------- .../com/klp/perf/domain/vo/PerfCoeffRangeVo.java | 2 +- .../com/klp/perf/domain/vo/PerfDeptConfigVo.java | 8 ++++---- .../klp/perf/domain/vo/PerfDeptItemConfigVo.java | 8 ++++---- .../klp/perf/domain/vo/PerfDeptSummaryVo.java | 8 ++++---- .../java/com/klp/perf/domain/vo/PerfDeptVo.java | 6 +++--- .../klp/perf/domain/vo/PerfEmployeeInfoVo.java | 10 +++++----- .../perf/domain/vo/PerfPositionTemplateVo.java | 8 ++++---- .../com/klp/perf/domain/vo/PerfSalaryVo.java | 16 ++++++++-------- .../perf/domain/vo/PerfTemplateDimensionVo.java | 4 ++-- .../service/IPerfAppraisalDetailService.java | 4 ++-- .../klp/perf/service/IPerfAppraisalService.java | 4 ++-- .../klp/perf/service/IPerfCoeffRangeService.java | 4 ++-- .../klp/perf/service/IPerfDeptConfigService.java | 4 ++-- .../perf/service/IPerfDeptItemConfigService.java | 4 ++-- .../com/klp/perf/service/IPerfDeptService.java | 4 ++-- .../perf/service/IPerfDeptSummaryService.java | 4 ++-- .../perf/service/IPerfEmployeeInfoService.java | 4 ++-- .../service/IPerfPositionTemplateService.java | 4 ++-- .../com/klp/perf/service/IPerfSalaryService.java | 4 ++-- .../service/IPerfTemplateDimensionService.java | 4 ++-- .../impl/PerfAppraisalDetailServiceImpl.java | 8 ++++---- .../service/impl/PerfAppraisalServiceImpl.java | 12 ++++++------ .../service/impl/PerfCoeffRangeServiceImpl.java | 4 ++-- .../service/impl/PerfDeptConfigServiceImpl.java | 6 +++--- .../impl/PerfDeptItemConfigServiceImpl.java | 6 +++--- .../perf/service/impl/PerfDeptServiceImpl.java | 4 ++-- .../service/impl/PerfDeptSummaryServiceImpl.java | 6 +++--- .../impl/PerfEmployeeInfoServiceImpl.java | 8 ++++---- .../impl/PerfPositionTemplateServiceImpl.java | 6 +++--- .../perf/service/impl/PerfSalaryServiceImpl.java | 12 ++++++------ .../impl/PerfTemplateDimensionServiceImpl.java | 6 +++--- 66 files changed, 200 insertions(+), 200 deletions(-) diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalController.java index a613230b6..6904fc9e3 100644 --- a/klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalController.java +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalController.java @@ -61,7 +61,7 @@ public class PerfAppraisalController extends BaseController { */ @GetMapping("/{id}") public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable String id) { + @PathVariable Long id) { return R.ok(iPerfAppraisalService.queryById(id)); } @@ -93,7 +93,7 @@ public class PerfAppraisalController extends BaseController { @Log(title = "月度绩效考核记录", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable String[] ids) { + @PathVariable Long[] ids) { return toAjax(iPerfAppraisalService.deleteWithValidByIds(Arrays.asList(ids), true)); } } diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalDetailController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalDetailController.java index 8d227187e..d35b90601 100644 --- a/klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalDetailController.java +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfAppraisalDetailController.java @@ -61,7 +61,7 @@ public class PerfAppraisalDetailController extends BaseController { */ @GetMapping("/{id}") public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable String id) { + @PathVariable Long id) { return R.ok(iPerfAppraisalDetailService.queryById(id)); } @@ -93,7 +93,7 @@ public class PerfAppraisalDetailController extends BaseController { @Log(title = "考核维度评分明细", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable String[] ids) { + @PathVariable Long[] ids) { return toAjax(iPerfAppraisalDetailService.deleteWithValidByIds(Arrays.asList(ids), true)); } } diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfCoeffRangeController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfCoeffRangeController.java index 6459736a2..1cc520bc8 100644 --- a/klp-perf/src/main/java/com/klp/perf/controller/PerfCoeffRangeController.java +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfCoeffRangeController.java @@ -61,7 +61,7 @@ public class PerfCoeffRangeController extends BaseController { */ @GetMapping("/{id}") public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable String id) { + @PathVariable Long id) { return R.ok(iPerfCoeffRangeService.queryById(id)); } @@ -93,7 +93,7 @@ public class PerfCoeffRangeController extends BaseController { @Log(title = "绩效系数换算", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable String[] ids) { + @PathVariable Long[] ids) { return toAjax(iPerfCoeffRangeService.deleteWithValidByIds(Arrays.asList(ids), true)); } } diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptConfigController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptConfigController.java index 36171783a..5ed8a8b9e 100644 --- a/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptConfigController.java +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptConfigController.java @@ -61,7 +61,7 @@ public class PerfDeptConfigController extends BaseController { */ @GetMapping("/{id}") public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable String id) { + @PathVariable Long id) { return R.ok(iPerfDeptConfigService.queryById(id)); } @@ -93,7 +93,7 @@ public class PerfDeptConfigController extends BaseController { @Log(title = "车间考核参数配置", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable String[] ids) { + @PathVariable Long[] ids) { return toAjax(iPerfDeptConfigService.deleteWithValidByIds(Arrays.asList(ids), true)); } } diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptController.java index 6a0f14147..b58b43dee 100644 --- a/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptController.java +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptController.java @@ -61,7 +61,7 @@ public class PerfDeptController extends BaseController { */ @GetMapping("/{id}") public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable String id) { + @PathVariable Long id) { return R.ok(iPerfDeptService.queryById(id)); } @@ -93,7 +93,7 @@ public class PerfDeptController extends BaseController { @Log(title = "绩效系统部门", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable String[] ids) { + @PathVariable Long[] ids) { return toAjax(iPerfDeptService.deleteWithValidByIds(Arrays.asList(ids), true)); } } diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptItemConfigController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptItemConfigController.java index 7096cea61..9e632b78b 100644 --- a/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptItemConfigController.java +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptItemConfigController.java @@ -61,7 +61,7 @@ public class PerfDeptItemConfigController extends BaseController { */ @GetMapping("/{id}") public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable String id) { + @PathVariable Long id) { return R.ok(iPerfDeptItemConfigService.queryById(id)); } @@ -93,7 +93,7 @@ public class PerfDeptItemConfigController extends BaseController { @Log(title = "车间扣款/奖励项目配置", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable String[] ids) { + @PathVariable Long[] ids) { return toAjax(iPerfDeptItemConfigService.deleteWithValidByIds(Arrays.asList(ids), true)); } } diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptSummaryController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptSummaryController.java index 75a89445e..609c40ea5 100644 --- a/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptSummaryController.java +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfDeptSummaryController.java @@ -61,7 +61,7 @@ public class PerfDeptSummaryController extends BaseController { */ @GetMapping("/{id}") public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable String id) { + @PathVariable Long id) { return R.ok(iPerfDeptSummaryService.queryById(id)); } @@ -93,7 +93,7 @@ public class PerfDeptSummaryController extends BaseController { @Log(title = "车间月度汇总", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable String[] ids) { + @PathVariable Long[] ids) { return toAjax(iPerfDeptSummaryService.deleteWithValidByIds(Arrays.asList(ids), true)); } } diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfEmployeeInfoController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfEmployeeInfoController.java index c627f99fe..5d18464cc 100644 --- a/klp-perf/src/main/java/com/klp/perf/controller/PerfEmployeeInfoController.java +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfEmployeeInfoController.java @@ -61,7 +61,7 @@ public class PerfEmployeeInfoController extends BaseController { */ @GetMapping("/{id}") public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable String id) { + @PathVariable Long id) { return R.ok(iPerfEmployeeInfoService.queryById(id)); } @@ -93,7 +93,7 @@ public class PerfEmployeeInfoController extends BaseController { @Log(title = "员工绩效薪资基本信息", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable String[] ids) { + @PathVariable Long[] ids) { return toAjax(iPerfEmployeeInfoService.deleteWithValidByIds(Arrays.asList(ids), true)); } } diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfPositionTemplateController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfPositionTemplateController.java index 604ce080a..9a266bb7d 100644 --- a/klp-perf/src/main/java/com/klp/perf/controller/PerfPositionTemplateController.java +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfPositionTemplateController.java @@ -61,7 +61,7 @@ public class PerfPositionTemplateController extends BaseController { */ @GetMapping("/{id}") public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable String id) { + @PathVariable Long id) { return R.ok(iPerfPositionTemplateService.queryById(id)); } @@ -93,7 +93,7 @@ public class PerfPositionTemplateController extends BaseController { @Log(title = "岗位绩效考核模板", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable String[] ids) { + @PathVariable Long[] ids) { return toAjax(iPerfPositionTemplateService.deleteWithValidByIds(Arrays.asList(ids), true)); } } diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfSalaryController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfSalaryController.java index 63cf97931..55d783204 100644 --- a/klp-perf/src/main/java/com/klp/perf/controller/PerfSalaryController.java +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfSalaryController.java @@ -61,7 +61,7 @@ public class PerfSalaryController extends BaseController { */ @GetMapping("/{id}") public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable String id) { + @PathVariable Long id) { return R.ok(iPerfSalaryService.queryById(id)); } @@ -93,7 +93,7 @@ public class PerfSalaryController extends BaseController { @Log(title = "月度薪资计算记录", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable String[] ids) { + @PathVariable Long[] ids) { return toAjax(iPerfSalaryService.deleteWithValidByIds(Arrays.asList(ids), true)); } } diff --git a/klp-perf/src/main/java/com/klp/perf/controller/PerfTemplateDimensionController.java b/klp-perf/src/main/java/com/klp/perf/controller/PerfTemplateDimensionController.java index ef243af19..5298ae3ba 100644 --- a/klp-perf/src/main/java/com/klp/perf/controller/PerfTemplateDimensionController.java +++ b/klp-perf/src/main/java/com/klp/perf/controller/PerfTemplateDimensionController.java @@ -61,7 +61,7 @@ public class PerfTemplateDimensionController extends BaseController { */ @GetMapping("/{id}") public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable String id) { + @PathVariable Long id) { return R.ok(iPerfTemplateDimensionService.queryById(id)); } @@ -93,7 +93,7 @@ public class PerfTemplateDimensionController extends BaseController { @Log(title = "考核维度明细", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable String[] ids) { + @PathVariable Long[] ids) { return toAjax(iPerfTemplateDimensionService.deleteWithValidByIds(Arrays.asList(ids), true)); } } diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisal.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisal.java index 6315adb6e..26083df80 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisal.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisal.java @@ -26,19 +26,19 @@ public class PerfAppraisal extends BaseEntity { * */ @TableId(value = "id") - private String id; + private Long id; /** * 关联现有员工表主键 */ - private String employeeId; + private Long employeeId; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - private String deptId; + private Long deptId; /** * 关联 perf_position_template.id (当月使用的模板) */ - private String templateId; + private Long templateId; /** * 考核周期 YYYY-MM */ @@ -78,7 +78,7 @@ public class PerfAppraisal extends BaseEntity { /** * 确认人 */ - private String confirmedBy; + private Long confirmedBy; /** * 删除标志(0=正常,1=已删除) */ diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisalDetail.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisalDetail.java index d1e57b7c4..78cc67259 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisalDetail.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfAppraisalDetail.java @@ -24,15 +24,15 @@ public class PerfAppraisalDetail extends BaseEntity { * */ @TableId(value = "id") - private String id; + private Long id; /** * 关联 perf_appraisal.id */ - private String appraisalId; + private Long appraisalId; /** * 关联 perf_template_dimension.id */ - private String dimensionId; + private Long dimensionId; /** * 序号(从模板快照) */ diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfCoeffRange.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfCoeffRange.java index f9e29d531..f81c5f5c8 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/PerfCoeffRange.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfCoeffRange.java @@ -24,7 +24,7 @@ public class PerfCoeffRange extends BaseEntity { * 主键 */ @TableId(value = "id") - private String id; + private Long id; /** * 等级标识 S/A/B/C/D */ diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfDept.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfDept.java index da4b6c0c6..105cb377d 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/PerfDept.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfDept.java @@ -20,10 +20,10 @@ public class PerfDept extends BaseEntity { private static final long serialVersionUID=1L; /** - * 主键(UUID) + * 主键 */ @TableId(value = "id") - private String id; + private Long id; /** * 部门/车间名称 如:酸轧车间/技术部 */ diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptConfig.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptConfig.java index 4f63b60ac..67b813bf5 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptConfig.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptConfig.java @@ -26,11 +26,11 @@ public class PerfDeptConfig extends BaseEntity { * */ @TableId(value = "id") - private String id; + private Long id; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - private String deptId; + private Long deptId; /** * 月产量目标(吨) 或 月产长度目标(m) */ diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptItemConfig.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptItemConfig.java index 85309d310..aa42a22f1 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptItemConfig.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptItemConfig.java @@ -25,11 +25,11 @@ public class PerfDeptItemConfig extends BaseEntity { * */ @TableId(value = "id") - private String id; + private Long id; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - private String deptId; + private Long deptId; /** * 类型: 1=扣款项目 2=奖励项目 */ diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptSummary.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptSummary.java index 9d1b2b39e..8bd930cf0 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptSummary.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfDeptSummary.java @@ -24,11 +24,11 @@ public class PerfDeptSummary extends BaseEntity { * */ @TableId(value = "id") - private String id; + private Long id; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - private String deptId; + private Long deptId; /** * 周期 YYYY-MM */ diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfEmployeeInfo.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfEmployeeInfo.java index 63a16aa36..64d05d1f7 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/PerfEmployeeInfo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfEmployeeInfo.java @@ -24,15 +24,15 @@ public class PerfEmployeeInfo extends BaseEntity { * */ @TableId(value = "id") - private String id; + private Long id; /** * 关联现有员工表主键 */ - private String employeeId; + private Long employeeId; /** - * 关联 wms_dept.id (冗余,便于按部门查询) + * 关联 perf_dept.id (冗余,便于按部门查询) */ - private String deptId; + private Long deptId; /** * 岗位/工种 */ diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfPositionTemplate.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfPositionTemplate.java index d2f8c6c62..5f15b47b5 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/PerfPositionTemplate.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfPositionTemplate.java @@ -23,11 +23,11 @@ public class PerfPositionTemplate extends BaseEntity { * */ @TableId(value = "id") - private String id; + private Long id; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - private String deptId; + private Long deptId; /** * 岗位名称 (与员工表岗位字段匹配) */ diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfSalary.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfSalary.java index d448bf9f1..650c5dcb8 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/PerfSalary.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfSalary.java @@ -26,19 +26,19 @@ public class PerfSalary extends BaseEntity { * */ @TableId(value = "id") - private String id; + private Long id; /** * 关联现有员工表主键 */ - private String employeeId; + private Long employeeId; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - private String deptId; + private Long deptId; /** * 关联 perf_appraisal.id (可为空=未考核) */ - private String appraisalId; + private Long appraisalId; /** * 薪资周期 YYYY-MM */ @@ -142,7 +142,7 @@ public class PerfSalary extends BaseEntity { /** * */ - private String confirmedBy; + private Long confirmedBy; /** * 删除标志(0=正常,1=已删除) */ diff --git a/klp-perf/src/main/java/com/klp/perf/domain/PerfTemplateDimension.java b/klp-perf/src/main/java/com/klp/perf/domain/PerfTemplateDimension.java index 4478ba48b..f87e86d13 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/PerfTemplateDimension.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/PerfTemplateDimension.java @@ -23,11 +23,11 @@ public class PerfTemplateDimension extends BaseEntity { * */ @TableId(value = "id") - private String id; + private Long id; /** * 关联 perf_position_template.id */ - private String templateId; + private Long templateId; /** * 序号 */ diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalBo.java index fa1a2e2f0..efb7ff490 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalBo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalBo.java @@ -23,22 +23,22 @@ public class PerfAppraisalBo extends BaseEntity { /** * */ - private String id; + private Long id; /** * 关联现有员工表主键 */ - private String employeeId; + private Long employeeId; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - private String deptId; + private Long deptId; /** * 关联 perf_position_template.id (当月使用的模板) */ - private String templateId; + private Long templateId; /** * 考核周期 YYYY-MM @@ -88,7 +88,7 @@ public class PerfAppraisalBo extends BaseEntity { /** * 确认人 */ - private String confirmedBy; + private Long confirmedBy; /** * 备注 diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalDetailBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalDetailBo.java index 210f4d2fe..e565dafc9 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalDetailBo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfAppraisalDetailBo.java @@ -21,17 +21,17 @@ public class PerfAppraisalDetailBo extends BaseEntity { /** * */ - private String id; + private Long id; /** * 关联 perf_appraisal.id */ - private String appraisalId; + private Long appraisalId; /** * 关联 perf_template_dimension.id */ - private String dimensionId; + private Long dimensionId; /** * 序号(从模板快照) diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfCoeffRangeBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfCoeffRangeBo.java index 8fb23d2aa..3ce828ac4 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfCoeffRangeBo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfCoeffRangeBo.java @@ -21,7 +21,7 @@ public class PerfCoeffRangeBo extends BaseEntity { /** * 主键 */ - private String id; + private Long id; /** * 等级标识 S/A/B/C/D diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptBo.java index b95d43b93..aab7b048c 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptBo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptBo.java @@ -18,9 +18,9 @@ import javax.validation.constraints.*; public class PerfDeptBo extends BaseEntity { /** - * 主键(UUID) + * 主键 */ - private String id; + private Long id; /** * 部门/车间名称 如:酸轧车间/技术部 diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptConfigBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptConfigBo.java index f05387667..442cb4b1b 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptConfigBo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptConfigBo.java @@ -23,12 +23,12 @@ public class PerfDeptConfigBo extends BaseEntity { /** * */ - private String id; + private Long id; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - private String deptId; + private Long deptId; /** * 月产量目标(吨) 或 月产长度目标(m) diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptItemConfigBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptItemConfigBo.java index b0c5f6b6c..5371efa47 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptItemConfigBo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptItemConfigBo.java @@ -22,12 +22,12 @@ public class PerfDeptItemConfigBo extends BaseEntity { /** * */ - private String id; + private Long id; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - private String deptId; + private Long deptId; /** * 类型: 1=扣款项目 2=奖励项目 diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptSummaryBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptSummaryBo.java index 99e61b024..5c216715e 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptSummaryBo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfDeptSummaryBo.java @@ -21,12 +21,12 @@ public class PerfDeptSummaryBo extends BaseEntity { /** * */ - private String id; + private Long id; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - private String deptId; + private Long deptId; /** * 周期 YYYY-MM diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfEmployeeInfoBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfEmployeeInfoBo.java index b997d73bc..ed01261b7 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfEmployeeInfoBo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfEmployeeInfoBo.java @@ -21,17 +21,17 @@ public class PerfEmployeeInfoBo extends BaseEntity { /** * */ - private String id; + private Long id; /** * 关联现有员工表主键 */ - private String employeeId; + private Long employeeId; /** - * 关联 wms_dept.id (冗余,便于按部门查询) + * 关联 perf_dept.id (冗余,便于按部门查询) */ - private String deptId; + private Long deptId; /** * 岗位/工种 diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfPositionTemplateBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfPositionTemplateBo.java index e1813c232..766ffaeab 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfPositionTemplateBo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfPositionTemplateBo.java @@ -20,12 +20,12 @@ public class PerfPositionTemplateBo extends BaseEntity { /** * */ - private String id; + private Long id; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - private String deptId; + private Long deptId; /** * 岗位名称 (与员工表岗位字段匹配) diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfSalaryBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfSalaryBo.java index 6da57e97e..81db7bf20 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfSalaryBo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfSalaryBo.java @@ -23,22 +23,22 @@ public class PerfSalaryBo extends BaseEntity { /** * */ - private String id; + private Long id; /** * 关联现有员工表主键 */ - private String employeeId; + private Long employeeId; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - private String deptId; + private Long deptId; /** * 关联 perf_appraisal.id (可为空=未考核) */ - private String appraisalId; + private Long appraisalId; /** * 薪资周期 YYYY-MM @@ -168,7 +168,7 @@ public class PerfSalaryBo extends BaseEntity { /** * */ - private String confirmedBy; + private Long confirmedBy; /** * 备注 diff --git a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfTemplateDimensionBo.java b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfTemplateDimensionBo.java index a926a64ee..a33ada3a8 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfTemplateDimensionBo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/bo/PerfTemplateDimensionBo.java @@ -20,12 +20,12 @@ public class PerfTemplateDimensionBo extends BaseEntity { /** * */ - private String id; + private Long id; /** * 关联 perf_position_template.id */ - private String templateId; + private Long templateId; /** * 序号 diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalDetailVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalDetailVo.java index 861c93b2b..d7a624a4f 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalDetailVo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalDetailVo.java @@ -24,19 +24,19 @@ public class PerfAppraisalDetailVo { * */ @ExcelProperty(value = "") - private String id; + private Long id; /** * 关联 perf_appraisal.id */ @ExcelProperty(value = "关联 perf_appraisal.id") - private String appraisalId; + private Long appraisalId; /** * 关联 perf_template_dimension.id */ @ExcelProperty(value = "关联 perf_template_dimension.id") - private String dimensionId; + private Long dimensionId; /** * 序号(从模板快照) diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalVo.java index 63d7ab9ce..08d565adf 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalVo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfAppraisalVo.java @@ -26,25 +26,25 @@ public class PerfAppraisalVo { * */ @ExcelProperty(value = "") - private String id; + private Long id; /** * 关联现有员工表主键 */ @ExcelProperty(value = "关联现有员工表主键") - private String employeeId; + private Long employeeId; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - @ExcelProperty(value = "关联 wms_dept.id") - private String deptId; + @ExcelProperty(value = "关联 perf_dept.id") + private Long deptId; /** * 关联 perf_position_template.id (当月使用的模板) */ @ExcelProperty(value = "关联 perf_position_template.id (当月使用的模板)") - private String templateId; + private Long templateId; /** * 考核周期 YYYY-MM @@ -104,7 +104,7 @@ public class PerfAppraisalVo { * 确认人 */ @ExcelProperty(value = "确认人") - private String confirmedBy; + private Long confirmedBy; /** * 备注 diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfCoeffRangeVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfCoeffRangeVo.java index d6754127e..2bc9c1e2d 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfCoeffRangeVo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfCoeffRangeVo.java @@ -24,7 +24,7 @@ public class PerfCoeffRangeVo { * 主键 */ @ExcelProperty(value = "主键") - private String id; + private Long id; /** * 等级标识 S/A/B/C/D diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptConfigVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptConfigVo.java index ff5202fc5..1e1a01a44 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptConfigVo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptConfigVo.java @@ -26,13 +26,13 @@ public class PerfDeptConfigVo { * */ @ExcelProperty(value = "") - private String id; + private Long id; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - @ExcelProperty(value = "关联 wms_dept.id") - private String deptId; + @ExcelProperty(value = "关联 perf_dept.id") + private Long deptId; /** * 月产量目标(吨) 或 月产长度目标(m) diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptItemConfigVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptItemConfigVo.java index 5760320fc..b8be79555 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptItemConfigVo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptItemConfigVo.java @@ -25,13 +25,13 @@ public class PerfDeptItemConfigVo { * */ @ExcelProperty(value = "") - private String id; + private Long id; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - @ExcelProperty(value = "关联 wms_dept.id") - private String deptId; + @ExcelProperty(value = "关联 perf_dept.id") + private Long deptId; /** * 类型: 1=扣款项目 2=奖励项目 diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptSummaryVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptSummaryVo.java index 488cbaffd..ede2b56f7 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptSummaryVo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptSummaryVo.java @@ -24,13 +24,13 @@ public class PerfDeptSummaryVo { * */ @ExcelProperty(value = "") - private String id; + private Long id; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - @ExcelProperty(value = "关联 wms_dept.id") - private String deptId; + @ExcelProperty(value = "关联 perf_dept.id") + private Long deptId; /** * 周期 YYYY-MM diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptVo.java index 7cbd8acf3..e0f32c0b4 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptVo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfDeptVo.java @@ -20,10 +20,10 @@ public class PerfDeptVo { private static final long serialVersionUID = 1L; /** - * 主键(UUID) + * 主键 */ - @ExcelProperty(value = "主键(UUID)") - private String id; + @ExcelProperty(value = "主键") + private Long id; /** * 部门/车间名称 如:酸轧车间/技术部 diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfEmployeeInfoVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfEmployeeInfoVo.java index 3c1cd0987..86aa50faa 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfEmployeeInfoVo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfEmployeeInfoVo.java @@ -24,19 +24,19 @@ public class PerfEmployeeInfoVo { * */ @ExcelProperty(value = "") - private String id; + private Long id; /** * 关联现有员工表主键 */ @ExcelProperty(value = "关联现有员工表主键") - private String employeeId; + private Long employeeId; /** - * 关联 wms_dept.id (冗余,便于按部门查询) + * 关联 perf_dept.id (冗余,便于按部门查询) */ - @ExcelProperty(value = "关联 wms_dept.id (冗余,便于按部门查询)") - private String deptId; + @ExcelProperty(value = "关联 perf_dept.id (冗余,便于按部门查询)") + private Long deptId; /** * 岗位/工种 diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfPositionTemplateVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfPositionTemplateVo.java index d02818209..1f68d98b8 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfPositionTemplateVo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfPositionTemplateVo.java @@ -23,13 +23,13 @@ public class PerfPositionTemplateVo { * */ @ExcelProperty(value = "") - private String id; + private Long id; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - @ExcelProperty(value = "关联 wms_dept.id") - private String deptId; + @ExcelProperty(value = "关联 perf_dept.id") + private Long deptId; /** * 岗位名称 (与员工表岗位字段匹配) diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfSalaryVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfSalaryVo.java index 0bf762895..ae34c92bf 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfSalaryVo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfSalaryVo.java @@ -26,25 +26,25 @@ public class PerfSalaryVo { * */ @ExcelProperty(value = "") - private String id; + private Long id; /** * 关联现有员工表主键 */ @ExcelProperty(value = "关联现有员工表主键") - private String employeeId; + private Long employeeId; /** - * 关联 wms_dept.id + * 关联 perf_dept.id */ - @ExcelProperty(value = "关联 wms_dept.id") - private String deptId; + @ExcelProperty(value = "关联 perf_dept.id") + private Long deptId; /** * 关联 perf_appraisal.id (可为空=未考核) */ @ExcelProperty(value = "关联 perf_appraisal.id (可为空=未考核)") - private String appraisalId; + private Long appraisalId; /** * 薪资周期 YYYY-MM @@ -133,7 +133,7 @@ public class PerfSalaryVo { /** * 奖励明细 {"节能奖励":0,...} */ - @ExcelProperty(value = "奖励明细 ") + @ExcelProperty(value = "奖励明细") private String bonusesJson; /** @@ -200,7 +200,7 @@ public class PerfSalaryVo { * */ @ExcelProperty(value = "") - private String confirmedBy; + private Long confirmedBy; /** * 备注 diff --git a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfTemplateDimensionVo.java b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfTemplateDimensionVo.java index 47d1d0425..4e0da61c4 100644 --- a/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfTemplateDimensionVo.java +++ b/klp-perf/src/main/java/com/klp/perf/domain/vo/PerfTemplateDimensionVo.java @@ -23,13 +23,13 @@ public class PerfTemplateDimensionVo { * */ @ExcelProperty(value = "") - private String id; + private Long id; /** * 关联 perf_position_template.id */ @ExcelProperty(value = "关联 perf_position_template.id") - private String templateId; + private Long templateId; /** * 序号 diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalDetailService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalDetailService.java index 250edc600..90b3b779e 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalDetailService.java +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalDetailService.java @@ -20,7 +20,7 @@ public interface IPerfAppraisalDetailService { /** * 查询考核维度评分明细 */ - PerfAppraisalDetailVo queryById(String id); + PerfAppraisalDetailVo queryById(Long id); /** * 查询考核维度评分明细列表 @@ -45,5 +45,5 @@ public interface IPerfAppraisalDetailService { /** * 校验并批量删除考核维度评分明细信息 */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); } diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalService.java index 3eb027634..d6a65f218 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalService.java +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfAppraisalService.java @@ -20,7 +20,7 @@ public interface IPerfAppraisalService { /** * 查询月度绩效考核记录 */ - PerfAppraisalVo queryById(String id); + PerfAppraisalVo queryById(Long id); /** * 查询月度绩效考核记录列表 @@ -45,5 +45,5 @@ public interface IPerfAppraisalService { /** * 校验并批量删除月度绩效考核记录信息 */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); } diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfCoeffRangeService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfCoeffRangeService.java index df9646da2..f589a113b 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/IPerfCoeffRangeService.java +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfCoeffRangeService.java @@ -20,7 +20,7 @@ public interface IPerfCoeffRangeService { /** * 查询绩效系数换算 */ - PerfCoeffRangeVo queryById(String id); + PerfCoeffRangeVo queryById(Long id); /** * 查询绩效系数换算列表 @@ -45,5 +45,5 @@ public interface IPerfCoeffRangeService { /** * 校验并批量删除绩效系数换算信息 */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); } diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptConfigService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptConfigService.java index e3123e34b..69d713892 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptConfigService.java +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptConfigService.java @@ -20,7 +20,7 @@ public interface IPerfDeptConfigService { /** * 查询车间考核参数配置 */ - PerfDeptConfigVo queryById(String id); + PerfDeptConfigVo queryById(Long id); /** * 查询车间考核参数配置列表 @@ -45,5 +45,5 @@ public interface IPerfDeptConfigService { /** * 校验并批量删除车间考核参数配置信息 */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); } diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptItemConfigService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptItemConfigService.java index ab590509a..b72673527 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptItemConfigService.java +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptItemConfigService.java @@ -20,7 +20,7 @@ public interface IPerfDeptItemConfigService { /** * 查询车间扣款/奖励项目配置 */ - PerfDeptItemConfigVo queryById(String id); + PerfDeptItemConfigVo queryById(Long id); /** * 查询车间扣款/奖励项目配置列表 @@ -45,5 +45,5 @@ public interface IPerfDeptItemConfigService { /** * 校验并批量删除车间扣款/奖励项目配置信息 */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); } diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptService.java index f0f24ae40..443eaa518 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptService.java +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptService.java @@ -20,7 +20,7 @@ public interface IPerfDeptService { /** * 查询绩效系统部门 */ - PerfDeptVo queryById(String id); + PerfDeptVo queryById(Long id); /** * 查询绩效系统部门列表 @@ -45,5 +45,5 @@ public interface IPerfDeptService { /** * 校验并批量删除绩效系统部门信息 */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); } diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptSummaryService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptSummaryService.java index 956abdee8..517e6e983 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptSummaryService.java +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfDeptSummaryService.java @@ -20,7 +20,7 @@ public interface IPerfDeptSummaryService { /** * 查询车间月度汇总 */ - PerfDeptSummaryVo queryById(String id); + PerfDeptSummaryVo queryById(Long id); /** * 查询车间月度汇总列表 @@ -45,5 +45,5 @@ public interface IPerfDeptSummaryService { /** * 校验并批量删除车间月度汇总信息 */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); } diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfEmployeeInfoService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfEmployeeInfoService.java index fde95e435..9c76f822c 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/IPerfEmployeeInfoService.java +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfEmployeeInfoService.java @@ -20,7 +20,7 @@ public interface IPerfEmployeeInfoService { /** * 查询员工绩效薪资基本信息 */ - PerfEmployeeInfoVo queryById(String id); + PerfEmployeeInfoVo queryById(Long id); /** * 查询员工绩效薪资基本信息列表 @@ -45,5 +45,5 @@ public interface IPerfEmployeeInfoService { /** * 校验并批量删除员工绩效薪资基本信息信息 */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); } diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfPositionTemplateService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfPositionTemplateService.java index f3cec7de6..3c29e50d2 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/IPerfPositionTemplateService.java +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfPositionTemplateService.java @@ -20,7 +20,7 @@ public interface IPerfPositionTemplateService { /** * 查询岗位绩效考核模板 */ - PerfPositionTemplateVo queryById(String id); + PerfPositionTemplateVo queryById(Long id); /** * 查询岗位绩效考核模板列表 @@ -45,5 +45,5 @@ public interface IPerfPositionTemplateService { /** * 校验并批量删除岗位绩效考核模板信息 */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); } diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfSalaryService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfSalaryService.java index a936dc01e..73bdffddc 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/IPerfSalaryService.java +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfSalaryService.java @@ -20,7 +20,7 @@ public interface IPerfSalaryService { /** * 查询月度薪资计算记录 */ - PerfSalaryVo queryById(String id); + PerfSalaryVo queryById(Long id); /** * 查询月度薪资计算记录列表 @@ -45,5 +45,5 @@ public interface IPerfSalaryService { /** * 校验并批量删除月度薪资计算记录信息 */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); } diff --git a/klp-perf/src/main/java/com/klp/perf/service/IPerfTemplateDimensionService.java b/klp-perf/src/main/java/com/klp/perf/service/IPerfTemplateDimensionService.java index 3b2df0bc4..78f613ce9 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/IPerfTemplateDimensionService.java +++ b/klp-perf/src/main/java/com/klp/perf/service/IPerfTemplateDimensionService.java @@ -20,7 +20,7 @@ public interface IPerfTemplateDimensionService { /** * 查询考核维度明细 */ - PerfTemplateDimensionVo queryById(String id); + PerfTemplateDimensionVo queryById(Long id); /** * 查询考核维度明细列表 @@ -45,5 +45,5 @@ public interface IPerfTemplateDimensionService { /** * 校验并批量删除考核维度明细信息 */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); } diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalDetailServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalDetailServiceImpl.java index eba26d299..962bb5b28 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalDetailServiceImpl.java +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalDetailServiceImpl.java @@ -35,7 +35,7 @@ public class PerfAppraisalDetailServiceImpl implements IPerfAppraisalDetailServi * 查询考核维度评分明细 */ @Override - public PerfAppraisalDetailVo queryById(String id){ + public PerfAppraisalDetailVo queryById(Long id){ return baseMapper.selectVoById(id); } @@ -61,8 +61,8 @@ public class PerfAppraisalDetailServiceImpl implements IPerfAppraisalDetailServi private LambdaQueryWrapper buildQueryWrapper(PerfAppraisalDetailBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(StringUtils.isNotBlank(bo.getAppraisalId()), PerfAppraisalDetail::getAppraisalId, bo.getAppraisalId()); - lqw.eq(StringUtils.isNotBlank(bo.getDimensionId()), PerfAppraisalDetail::getDimensionId, bo.getDimensionId()); + lqw.eq(bo.getAppraisalId() != null, PerfAppraisalDetail::getAppraisalId, bo.getAppraisalId()); + lqw.eq(bo.getDimensionId() != null, PerfAppraisalDetail::getDimensionId, bo.getDimensionId()); lqw.eq(StringUtils.isNotBlank(bo.getSeq()), PerfAppraisalDetail::getSeq, bo.getSeq()); lqw.like(StringUtils.isNotBlank(bo.getDimName()), PerfAppraisalDetail::getDimName, bo.getDimName()); lqw.eq(StringUtils.isNotBlank(bo.getWeight()), PerfAppraisalDetail::getWeight, bo.getWeight()); @@ -111,7 +111,7 @@ public class PerfAppraisalDetailServiceImpl implements IPerfAppraisalDetailServi * 批量删除考核维度评分明细 */ @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if(isValid){ //TODO 做一些业务上的校验,判断是否需要校验 } diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalServiceImpl.java index 126ba9e39..563cbbabd 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalServiceImpl.java +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfAppraisalServiceImpl.java @@ -35,7 +35,7 @@ public class PerfAppraisalServiceImpl implements IPerfAppraisalService { * 查询月度绩效考核记录 */ @Override - public PerfAppraisalVo queryById(String id){ + public PerfAppraisalVo queryById(Long id){ return baseMapper.selectVoById(id); } @@ -61,9 +61,9 @@ public class PerfAppraisalServiceImpl implements IPerfAppraisalService { private LambdaQueryWrapper buildQueryWrapper(PerfAppraisalBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(StringUtils.isNotBlank(bo.getEmployeeId()), PerfAppraisal::getEmployeeId, bo.getEmployeeId()); - lqw.eq(StringUtils.isNotBlank(bo.getDeptId()), PerfAppraisal::getDeptId, bo.getDeptId()); - lqw.eq(StringUtils.isNotBlank(bo.getTemplateId()), PerfAppraisal::getTemplateId, bo.getTemplateId()); + lqw.eq(bo.getEmployeeId() != null, PerfAppraisal::getEmployeeId, bo.getEmployeeId()); + lqw.eq(bo.getDeptId() != null, PerfAppraisal::getDeptId, bo.getDeptId()); + lqw.eq(bo.getTemplateId() != null, PerfAppraisal::getTemplateId, bo.getTemplateId()); lqw.eq(StringUtils.isNotBlank(bo.getPeriod()), PerfAppraisal::getPeriod, bo.getPeriod()); lqw.eq(bo.getWeightedScore() != null, PerfAppraisal::getWeightedScore, bo.getWeightedScore()); lqw.eq(bo.getBonusScore() != null, PerfAppraisal::getBonusScore, bo.getBonusScore()); @@ -73,7 +73,7 @@ public class PerfAppraisalServiceImpl implements IPerfAppraisalService { lqw.eq(bo.getPerfCoeff() != null, PerfAppraisal::getPerfCoeff, bo.getPerfCoeff()); lqw.eq(bo.getStatus() != null, PerfAppraisal::getStatus, bo.getStatus()); lqw.eq(bo.getConfirmedAt() != null, PerfAppraisal::getConfirmedAt, bo.getConfirmedAt()); - lqw.eq(StringUtils.isNotBlank(bo.getConfirmedBy()), PerfAppraisal::getConfirmedBy, bo.getConfirmedBy()); + lqw.eq(bo.getConfirmedBy() != null, PerfAppraisal::getConfirmedBy, bo.getConfirmedBy()); return lqw; } @@ -112,7 +112,7 @@ public class PerfAppraisalServiceImpl implements IPerfAppraisalService { * 批量删除月度绩效考核记录 */ @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if(isValid){ //TODO 做一些业务上的校验,判断是否需要校验 } diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfCoeffRangeServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfCoeffRangeServiceImpl.java index e88d1a4fe..29c8d8658 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfCoeffRangeServiceImpl.java +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfCoeffRangeServiceImpl.java @@ -35,7 +35,7 @@ public class PerfCoeffRangeServiceImpl implements IPerfCoeffRangeService { * 查询绩效系数换算 */ @Override - public PerfCoeffRangeVo queryById(String id){ + public PerfCoeffRangeVo queryById(Long id){ return baseMapper.selectVoById(id); } @@ -106,7 +106,7 @@ public class PerfCoeffRangeServiceImpl implements IPerfCoeffRangeService { * 批量删除绩效系数换算 */ @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if(isValid){ //TODO 做一些业务上的校验,判断是否需要校验 } diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptConfigServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptConfigServiceImpl.java index f31d98c97..c5c86017f 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptConfigServiceImpl.java +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptConfigServiceImpl.java @@ -35,7 +35,7 @@ public class PerfDeptConfigServiceImpl implements IPerfDeptConfigService { * 查询车间考核参数配置 */ @Override - public PerfDeptConfigVo queryById(String id){ + public PerfDeptConfigVo queryById(Long id){ return baseMapper.selectVoById(id); } @@ -61,7 +61,7 @@ public class PerfDeptConfigServiceImpl implements IPerfDeptConfigService { private LambdaQueryWrapper buildQueryWrapper(PerfDeptConfigBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(StringUtils.isNotBlank(bo.getDeptId()), PerfDeptConfig::getDeptId, bo.getDeptId()); + lqw.eq(bo.getDeptId() != null, PerfDeptConfig::getDeptId, bo.getDeptId()); lqw.eq(bo.getMonthlyProductionTarget() != null, PerfDeptConfig::getMonthlyProductionTarget, bo.getMonthlyProductionTarget()); lqw.eq(StringUtils.isNotBlank(bo.getProductionUnit()), PerfDeptConfig::getProductionUnit, bo.getProductionUnit()); lqw.eq(bo.getPerfUnitPrice() != null, PerfDeptConfig::getPerfUnitPrice, bo.getPerfUnitPrice()); @@ -111,7 +111,7 @@ public class PerfDeptConfigServiceImpl implements IPerfDeptConfigService { * 批量删除车间考核参数配置 */ @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if(isValid){ //TODO 做一些业务上的校验,判断是否需要校验 } diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptItemConfigServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptItemConfigServiceImpl.java index b434b7592..2de36f9c0 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptItemConfigServiceImpl.java +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptItemConfigServiceImpl.java @@ -35,7 +35,7 @@ public class PerfDeptItemConfigServiceImpl implements IPerfDeptItemConfigService * 查询车间扣款/奖励项目配置 */ @Override - public PerfDeptItemConfigVo queryById(String id){ + public PerfDeptItemConfigVo queryById(Long id){ return baseMapper.selectVoById(id); } @@ -61,7 +61,7 @@ public class PerfDeptItemConfigServiceImpl implements IPerfDeptItemConfigService private LambdaQueryWrapper buildQueryWrapper(PerfDeptItemConfigBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(StringUtils.isNotBlank(bo.getDeptId()), PerfDeptItemConfig::getDeptId, bo.getDeptId()); + lqw.eq(bo.getDeptId() != null, PerfDeptItemConfig::getDeptId, bo.getDeptId()); lqw.eq(bo.getItemType() != null, PerfDeptItemConfig::getItemType, bo.getItemType()); lqw.like(StringUtils.isNotBlank(bo.getItemName()), PerfDeptItemConfig::getItemName, bo.getItemName()); lqw.eq(bo.getSortOrder() != null, PerfDeptItemConfig::getSortOrder, bo.getSortOrder()); @@ -105,7 +105,7 @@ public class PerfDeptItemConfigServiceImpl implements IPerfDeptItemConfigService * 批量删除车间扣款/奖励项目配置 */ @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if(isValid){ //TODO 做一些业务上的校验,判断是否需要校验 } diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptServiceImpl.java index c09f76110..2e40e7183 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptServiceImpl.java +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptServiceImpl.java @@ -35,7 +35,7 @@ public class PerfDeptServiceImpl implements IPerfDeptService { * 查询绩效系统部门 */ @Override - public PerfDeptVo queryById(String id){ + public PerfDeptVo queryById(Long id){ return baseMapper.selectVoById(id); } @@ -103,7 +103,7 @@ public class PerfDeptServiceImpl implements IPerfDeptService { * 批量删除绩效系统部门 */ @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if(isValid){ //TODO 做一些业务上的校验,判断是否需要校验 } diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptSummaryServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptSummaryServiceImpl.java index 8dc60ce99..2b0e9a243 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptSummaryServiceImpl.java +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfDeptSummaryServiceImpl.java @@ -35,7 +35,7 @@ public class PerfDeptSummaryServiceImpl implements IPerfDeptSummaryService { * 查询车间月度汇总 */ @Override - public PerfDeptSummaryVo queryById(String id){ + public PerfDeptSummaryVo queryById(Long id){ return baseMapper.selectVoById(id); } @@ -61,7 +61,7 @@ public class PerfDeptSummaryServiceImpl implements IPerfDeptSummaryService { private LambdaQueryWrapper buildQueryWrapper(PerfDeptSummaryBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(StringUtils.isNotBlank(bo.getDeptId()), PerfDeptSummary::getDeptId, bo.getDeptId()); + lqw.eq(bo.getDeptId() != null, PerfDeptSummary::getDeptId, bo.getDeptId()); lqw.eq(StringUtils.isNotBlank(bo.getPeriod()), PerfDeptSummary::getPeriod, bo.getPeriod()); lqw.eq(bo.getTotalEmployees() != null, PerfDeptSummary::getTotalEmployees, bo.getTotalEmployees()); lqw.eq(bo.getTotalCoeffSum() != null, PerfDeptSummary::getTotalCoeffSum, bo.getTotalCoeffSum()); @@ -115,7 +115,7 @@ public class PerfDeptSummaryServiceImpl implements IPerfDeptSummaryService { * 批量删除车间月度汇总 */ @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if(isValid){ //TODO 做一些业务上的校验,判断是否需要校验 } diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfEmployeeInfoServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfEmployeeInfoServiceImpl.java index 51e2628a7..58ce5e835 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfEmployeeInfoServiceImpl.java +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfEmployeeInfoServiceImpl.java @@ -35,7 +35,7 @@ public class PerfEmployeeInfoServiceImpl implements IPerfEmployeeInfoService { * 查询员工绩效薪资基本信息 */ @Override - public PerfEmployeeInfoVo queryById(String id){ + public PerfEmployeeInfoVo queryById(Long id){ return baseMapper.selectVoById(id); } @@ -61,8 +61,8 @@ public class PerfEmployeeInfoServiceImpl implements IPerfEmployeeInfoService { private LambdaQueryWrapper buildQueryWrapper(PerfEmployeeInfoBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(StringUtils.isNotBlank(bo.getEmployeeId()), PerfEmployeeInfo::getEmployeeId, bo.getEmployeeId()); - lqw.eq(StringUtils.isNotBlank(bo.getDeptId()), PerfEmployeeInfo::getDeptId, bo.getDeptId()); + lqw.eq(bo.getEmployeeId() != null, PerfEmployeeInfo::getEmployeeId, bo.getEmployeeId()); + lqw.eq(bo.getDeptId() != null, PerfEmployeeInfo::getDeptId, bo.getDeptId()); lqw.like(StringUtils.isNotBlank(bo.getPositionName()), PerfEmployeeInfo::getPositionName, bo.getPositionName()); lqw.eq(bo.getBaseSalary() != null, PerfEmployeeInfo::getBaseSalary, bo.getBaseSalary()); lqw.eq(bo.getPerfBase() != null, PerfEmployeeInfo::getPerfBase, bo.getPerfBase()); @@ -106,7 +106,7 @@ public class PerfEmployeeInfoServiceImpl implements IPerfEmployeeInfoService { * 批量删除员工绩效薪资基本信息 */ @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if(isValid){ //TODO 做一些业务上的校验,判断是否需要校验 } diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfPositionTemplateServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfPositionTemplateServiceImpl.java index b385d1126..f3221a8b8 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfPositionTemplateServiceImpl.java +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfPositionTemplateServiceImpl.java @@ -35,7 +35,7 @@ public class PerfPositionTemplateServiceImpl implements IPerfPositionTemplateSer * 查询岗位绩效考核模板 */ @Override - public PerfPositionTemplateVo queryById(String id){ + public PerfPositionTemplateVo queryById(Long id){ return baseMapper.selectVoById(id); } @@ -61,7 +61,7 @@ public class PerfPositionTemplateServiceImpl implements IPerfPositionTemplateSer private LambdaQueryWrapper buildQueryWrapper(PerfPositionTemplateBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(StringUtils.isNotBlank(bo.getDeptId()), PerfPositionTemplate::getDeptId, bo.getDeptId()); + lqw.eq(bo.getDeptId() != null, PerfPositionTemplate::getDeptId, bo.getDeptId()); lqw.like(StringUtils.isNotBlank(bo.getPositionName()), PerfPositionTemplate::getPositionName, bo.getPositionName()); lqw.eq(StringUtils.isNotBlank(bo.getTitle()), PerfPositionTemplate::getTitle, bo.getTitle()); lqw.eq(bo.getIsEnabled() != null, PerfPositionTemplate::getIsEnabled, bo.getIsEnabled()); @@ -103,7 +103,7 @@ public class PerfPositionTemplateServiceImpl implements IPerfPositionTemplateSer * 批量删除岗位绩效考核模板 */ @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if(isValid){ //TODO 做一些业务上的校验,判断是否需要校验 } diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfSalaryServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfSalaryServiceImpl.java index a2ce47ab0..d6d65bcc4 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfSalaryServiceImpl.java +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfSalaryServiceImpl.java @@ -35,7 +35,7 @@ public class PerfSalaryServiceImpl implements IPerfSalaryService { * 查询月度薪资计算记录 */ @Override - public PerfSalaryVo queryById(String id){ + public PerfSalaryVo queryById(Long id){ return baseMapper.selectVoById(id); } @@ -61,9 +61,9 @@ public class PerfSalaryServiceImpl implements IPerfSalaryService { private LambdaQueryWrapper buildQueryWrapper(PerfSalaryBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(StringUtils.isNotBlank(bo.getEmployeeId()), PerfSalary::getEmployeeId, bo.getEmployeeId()); - lqw.eq(StringUtils.isNotBlank(bo.getDeptId()), PerfSalary::getDeptId, bo.getDeptId()); - lqw.eq(StringUtils.isNotBlank(bo.getAppraisalId()), PerfSalary::getAppraisalId, bo.getAppraisalId()); + lqw.eq(bo.getEmployeeId() != null, PerfSalary::getEmployeeId, bo.getEmployeeId()); + lqw.eq(bo.getDeptId() != null, PerfSalary::getDeptId, bo.getDeptId()); + lqw.eq(bo.getAppraisalId() != null, PerfSalary::getAppraisalId, bo.getAppraisalId()); lqw.eq(StringUtils.isNotBlank(bo.getPeriod()), PerfSalary::getPeriod, bo.getPeriod()); lqw.eq(bo.getBaseSalary() != null, PerfSalary::getBaseSalary, bo.getBaseSalary()); lqw.eq(bo.getPerfBase() != null, PerfSalary::getPerfBase, bo.getPerfBase()); @@ -89,7 +89,7 @@ public class PerfSalaryServiceImpl implements IPerfSalaryService { lqw.eq(bo.getTotalSalaryRef() != null, PerfSalary::getTotalSalaryRef, bo.getTotalSalaryRef()); lqw.eq(bo.getStatus() != null, PerfSalary::getStatus, bo.getStatus()); lqw.eq(bo.getConfirmedAt() != null, PerfSalary::getConfirmedAt, bo.getConfirmedAt()); - lqw.eq(StringUtils.isNotBlank(bo.getConfirmedBy()), PerfSalary::getConfirmedBy, bo.getConfirmedBy()); + lqw.eq(bo.getConfirmedBy() != null, PerfSalary::getConfirmedBy, bo.getConfirmedBy()); return lqw; } @@ -128,7 +128,7 @@ public class PerfSalaryServiceImpl implements IPerfSalaryService { * 批量删除月度薪资计算记录 */ @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if(isValid){ //TODO 做一些业务上的校验,判断是否需要校验 } diff --git a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfTemplateDimensionServiceImpl.java b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfTemplateDimensionServiceImpl.java index 4fd81b947..eb6ff8784 100644 --- a/klp-perf/src/main/java/com/klp/perf/service/impl/PerfTemplateDimensionServiceImpl.java +++ b/klp-perf/src/main/java/com/klp/perf/service/impl/PerfTemplateDimensionServiceImpl.java @@ -35,7 +35,7 @@ public class PerfTemplateDimensionServiceImpl implements IPerfTemplateDimensionS * 查询考核维度明细 */ @Override - public PerfTemplateDimensionVo queryById(String id){ + public PerfTemplateDimensionVo queryById(Long id){ return baseMapper.selectVoById(id); } @@ -61,7 +61,7 @@ public class PerfTemplateDimensionServiceImpl implements IPerfTemplateDimensionS private LambdaQueryWrapper buildQueryWrapper(PerfTemplateDimensionBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(StringUtils.isNotBlank(bo.getTemplateId()), PerfTemplateDimension::getTemplateId, bo.getTemplateId()); + lqw.eq(bo.getTemplateId() != null, PerfTemplateDimension::getTemplateId, bo.getTemplateId()); lqw.eq(StringUtils.isNotBlank(bo.getSeq()), PerfTemplateDimension::getSeq, bo.getSeq()); lqw.like(StringUtils.isNotBlank(bo.getDimName()), PerfTemplateDimension::getDimName, bo.getDimName()); lqw.eq(StringUtils.isNotBlank(bo.getWeight()), PerfTemplateDimension::getWeight, bo.getWeight()); @@ -108,7 +108,7 @@ public class PerfTemplateDimensionServiceImpl implements IPerfTemplateDimensionS * 批量删除考核维度明细 */ @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if(isValid){ //TODO 做一些业务上的校验,判断是否需要校验 }