Bladeren bron

委外工作表、员工工资表

lamphua 7 maanden geleden
bovenliggende
commit
d72933dc01
19 gewijzigde bestanden met toevoegingen van 2034 en 1 verwijderingen
  1. 97
    0
      oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcOutsourceWorkController.java
  2. 6
    0
      oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcProjectController.java
  3. 97
    0
      oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcWageController.java
  4. 14
    0
      oa-back/ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/FlowTaskServiceImpl.java
  5. 14
    0
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcBudgetCar.java
  6. 125
    0
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcOutsourceWork.java
  7. 350
    0
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcWage.java
  8. 61
    0
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/mapper/CmcOutsourceWorkMapper.java
  9. 61
    0
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/mapper/CmcWageMapper.java
  10. 61
    0
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/ICmcOutsourceWorkService.java
  11. 61
    0
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/ICmcWageService.java
  12. 93
    0
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/impl/CmcOutsourceWorkServiceImpl.java
  13. 93
    0
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/impl/CmcWageServiceImpl.java
  14. 6
    1
      oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcBudgetCarMapper.xml
  15. 87
    0
      oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcOutsourceWorkMapper.xml
  16. 163
    0
      oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcWageMapper.xml
  17. 44
    0
      oa-ui/src/api/oa/outsource/outsourceWork.js
  18. 44
    0
      oa-ui/src/api/oa/wage/wage.js
  19. 557
    0
      oa-ui/src/views/oa/wage/index.vue

+ 97
- 0
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcOutsourceWorkController.java Bestand weergeven

@@ -0,0 +1,97 @@
1
+package com.ruoyi.web.controller.oa;
2
+
3
+import java.util.List;
4
+import javax.servlet.http.HttpServletResponse;
5
+import org.springframework.beans.factory.annotation.Autowired;
6
+import org.springframework.web.bind.annotation.GetMapping;
7
+import org.springframework.web.bind.annotation.PostMapping;
8
+import org.springframework.web.bind.annotation.PutMapping;
9
+import org.springframework.web.bind.annotation.DeleteMapping;
10
+import org.springframework.web.bind.annotation.PathVariable;
11
+import org.springframework.web.bind.annotation.RequestBody;
12
+import org.springframework.web.bind.annotation.RequestMapping;
13
+import org.springframework.web.bind.annotation.RestController;
14
+import com.ruoyi.common.annotation.Log;
15
+import com.ruoyi.common.core.controller.BaseController;
16
+import com.ruoyi.common.core.domain.AjaxResult;
17
+import com.ruoyi.common.enums.BusinessType;
18
+import com.ruoyi.oa.domain.CmcOutsourceWork;
19
+import com.ruoyi.oa.service.ICmcOutsourceWorkService;
20
+import com.ruoyi.common.utils.poi.ExcelUtil;
21
+import com.ruoyi.common.core.page.TableDataInfo;
22
+
23
+/**
24
+ * 委外工作Controller
25
+ * 
26
+ * @author cmc
27
+ * @date 2024-09-19
28
+ */
29
+@RestController
30
+@RequestMapping("/oa/outsourceWork")
31
+public class CmcOutsourceWorkController extends BaseController
32
+{
33
+    @Autowired
34
+    private ICmcOutsourceWorkService cmcOutsourceWorkService;
35
+
36
+    /**
37
+     * 查询委外工作列表
38
+     */
39
+    @GetMapping("/list")
40
+    public TableDataInfo list(CmcOutsourceWork cmcOutsourceWork)
41
+    {
42
+        startPage();
43
+        List<CmcOutsourceWork> list = cmcOutsourceWorkService.selectCmcOutsourceWorkList(cmcOutsourceWork);
44
+        return getDataTable(list);
45
+    }
46
+
47
+    /**
48
+     * 导出委外工作列表
49
+     */
50
+    @Log(title = "委外工作", businessType = BusinessType.EXPORT)
51
+    @PostMapping("/export")
52
+    public void export(HttpServletResponse response, CmcOutsourceWork cmcOutsourceWork)
53
+    {
54
+        List<CmcOutsourceWork> list = cmcOutsourceWorkService.selectCmcOutsourceWorkList(cmcOutsourceWork);
55
+        ExcelUtil<CmcOutsourceWork> util = new ExcelUtil<CmcOutsourceWork>(CmcOutsourceWork.class);
56
+        util.exportExcel(response, list, "委外工作数据");
57
+    }
58
+
59
+    /**
60
+     * 获取委外工作详细信息
61
+     */
62
+    @GetMapping(value = "/{workId}")
63
+    public AjaxResult getInfo(@PathVariable("workId") Integer workId)
64
+    {
65
+        return success(cmcOutsourceWorkService.selectCmcOutsourceWorkByWorkId(workId));
66
+    }
67
+
68
+    /**
69
+     * 新增委外工作
70
+     */
71
+    @Log(title = "委外工作", businessType = BusinessType.INSERT)
72
+    @PostMapping
73
+    public AjaxResult add(@RequestBody CmcOutsourceWork cmcOutsourceWork)
74
+    {
75
+        return toAjax(cmcOutsourceWorkService.insertCmcOutsourceWork(cmcOutsourceWork));
76
+    }
77
+
78
+    /**
79
+     * 修改委外工作
80
+     */
81
+    @Log(title = "委外工作", businessType = BusinessType.UPDATE)
82
+    @PutMapping
83
+    public AjaxResult edit(@RequestBody CmcOutsourceWork cmcOutsourceWork)
84
+    {
85
+        return toAjax(cmcOutsourceWorkService.updateCmcOutsourceWork(cmcOutsourceWork));
86
+    }
87
+
88
+    /**
89
+     * 删除委外工作
90
+     */
91
+    @Log(title = "委外工作", businessType = BusinessType.DELETE)
92
+	@DeleteMapping("/{workIds}")
93
+    public AjaxResult remove(@PathVariable Integer[] workIds)
94
+    {
95
+        return toAjax(cmcOutsourceWorkService.deleteCmcOutsourceWorkByWorkIds(workIds));
96
+    }
97
+}

+ 6
- 0
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcProjectController.java Bestand weergeven

@@ -125,6 +125,12 @@ public class CmcProjectController extends BaseController
125 125
     public AjaxResult add(@RequestBody CmcProject cmcProject) throws IOException {
126 126
         cmcProject.setRegisterTime(new Date());
127 127
         cmcProject.setIsFinished("0");
128
+        if (cmcProject.getUndertakingDept().contains(",")) {
129
+            cmcProject.setLeadDept(cmcProject.getUndertakingDept().substring(0,3));
130
+            cmcProject.setJoinDept(cmcProject.getUndertakingDept().substring(4));
131
+        }
132
+        else
133
+            cmcProject.setLeadDept(cmcProject.getUndertakingDept());
128 134
         return toAjax(cmcProjectService.insertCmcProject(cmcProject));
129 135
     }
130 136
 

+ 97
- 0
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcWageController.java Bestand weergeven

@@ -0,0 +1,97 @@
1
+package com.ruoyi.web.controller.oa;
2
+
3
+import java.util.List;
4
+import javax.servlet.http.HttpServletResponse;
5
+import org.springframework.beans.factory.annotation.Autowired;
6
+import org.springframework.web.bind.annotation.GetMapping;
7
+import org.springframework.web.bind.annotation.PostMapping;
8
+import org.springframework.web.bind.annotation.PutMapping;
9
+import org.springframework.web.bind.annotation.DeleteMapping;
10
+import org.springframework.web.bind.annotation.PathVariable;
11
+import org.springframework.web.bind.annotation.RequestBody;
12
+import org.springframework.web.bind.annotation.RequestMapping;
13
+import org.springframework.web.bind.annotation.RestController;
14
+import com.ruoyi.common.annotation.Log;
15
+import com.ruoyi.common.core.controller.BaseController;
16
+import com.ruoyi.common.core.domain.AjaxResult;
17
+import com.ruoyi.common.enums.BusinessType;
18
+import com.ruoyi.oa.domain.CmcWage;
19
+import com.ruoyi.oa.service.ICmcWageService;
20
+import com.ruoyi.common.utils.poi.ExcelUtil;
21
+import com.ruoyi.common.core.page.TableDataInfo;
22
+
23
+/**
24
+ * 员工工资Controller
25
+ * 
26
+ * @author cmc
27
+ * @date 2024-09-19
28
+ */
29
+@RestController
30
+@RequestMapping("/oa/wage")
31
+public class CmcWageController extends BaseController
32
+{
33
+    @Autowired
34
+    private ICmcWageService cmcWageService;
35
+
36
+    /**
37
+     * 查询员工工资列表
38
+     */
39
+    @GetMapping("/list")
40
+    public TableDataInfo list(CmcWage cmcWage)
41
+    {
42
+        startPage();
43
+        List<CmcWage> list = cmcWageService.selectCmcWageList(cmcWage);
44
+        return getDataTable(list);
45
+    }
46
+
47
+    /**
48
+     * 导出员工工资列表
49
+     */
50
+    @Log(title = "员工工资", businessType = BusinessType.EXPORT)
51
+    @PostMapping("/export")
52
+    public void export(HttpServletResponse response, CmcWage cmcWage)
53
+    {
54
+        List<CmcWage> list = cmcWageService.selectCmcWageList(cmcWage);
55
+        ExcelUtil<CmcWage> util = new ExcelUtil<CmcWage>(CmcWage.class);
56
+        util.exportExcel(response, list, "员工工资数据");
57
+    }
58
+
59
+    /**
60
+     * 获取员工工资详细信息
61
+     */
62
+    @GetMapping(value = "/{wageId}")
63
+    public AjaxResult getInfo(@PathVariable("wageId") Integer wageId)
64
+    {
65
+        return success(cmcWageService.selectCmcWageByWageId(wageId));
66
+    }
67
+
68
+    /**
69
+     * 新增员工工资
70
+     */
71
+    @Log(title = "员工工资", businessType = BusinessType.INSERT)
72
+    @PostMapping
73
+    public AjaxResult add(@RequestBody CmcWage cmcWage)
74
+    {
75
+        return toAjax(cmcWageService.insertCmcWage(cmcWage));
76
+    }
77
+
78
+    /**
79
+     * 修改员工工资
80
+     */
81
+    @Log(title = "员工工资", businessType = BusinessType.UPDATE)
82
+    @PutMapping
83
+    public AjaxResult edit(@RequestBody CmcWage cmcWage)
84
+    {
85
+        return toAjax(cmcWageService.updateCmcWage(cmcWage));
86
+    }
87
+
88
+    /**
89
+     * 删除员工工资
90
+     */
91
+    @Log(title = "员工工资", businessType = BusinessType.DELETE)
92
+	@DeleteMapping("/{wageIds}")
93
+    public AjaxResult remove(@PathVariable Integer[] wageIds)
94
+    {
95
+        return toAjax(cmcWageService.deleteCmcWageByWageIds(wageIds));
96
+    }
97
+}

+ 14
- 0
oa-back/ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/FlowTaskServiceImpl.java Bestand weergeven

@@ -134,6 +134,10 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
134 134
     @Resource
135 135
     private ICmcTechnicalPlanService cmcTechnicalPlanService;
136 136
     @Resource
137
+    private ICmcProcureApprovalService cmcProcureApprovalService;
138
+    @Resource
139
+    private ICmcOutsourceService cmcOutsourceService;
140
+    @Resource
137 141
     private ICmcBudgetService cmcBudgetService;
138 142
     @Resource
139 143
     private FlowVarInstMapper flowVarInstMapper;
@@ -1650,5 +1654,15 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
1650 1654
             if (cmcSubContract != null)
1651 1655
                 flowTaskDto.setTitle(cmcSubContractService.selectCmcSubContractBySubContractId(formId).getSubContractName());
1652 1656
         }
1657
+        if (flowTaskDto.getProcDefName().equals("采购审批")) {
1658
+            CmcProcureApproval cmcProcureApproval = cmcProcureApprovalService.selectCmcProcureApprovalByProcureApplyId(formId);
1659
+            flowTaskDto.setTitle(cmcProcureApproval.getApplyReason());
1660
+        }
1661
+        if (flowTaskDto.getProcDefName().equals("项目委外")) {
1662
+            CmcOutsource cmcOutsource = cmcOutsourceService.selectCmcOutsourceByOutsoureId(formId);
1663
+            projectId = cmcOutsource != null ? cmcOutsource.getProjectId() : "";
1664
+            if (projectId == null)
1665
+                flowTaskDto.setTitle(cmcOutsource.getApplyReason());
1666
+        }
1653 1667
     }
1654 1668
 }

+ 14
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcBudgetCar.java Bestand weergeven

@@ -49,6 +49,10 @@ public class CmcBudgetCar extends BaseEntity
49 49
     @Excel(name = "油耗")
50 50
     private BigDecimal mileage;
51 51
 
52
+    /** 过路费 */
53
+    @Excel(name = "过路费")
54
+    private BigDecimal toll;
55
+
52 56
     /** 使用成本 */
53 57
     @Excel(name = "使用成本")
54 58
     private BigDecimal expense;
@@ -143,6 +147,15 @@ public class CmcBudgetCar extends BaseEntity
143 147
     {
144 148
         return expense;
145 149
     }
150
+    public void setToll(BigDecimal toll)
151
+    {
152
+        this.toll = toll;
153
+    }
154
+
155
+    public BigDecimal getToll()
156
+    {
157
+        return toll;
158
+    }
146 159
 
147 160
     @Override
148 161
     public String toString() {
@@ -155,6 +168,7 @@ public class CmcBudgetCar extends BaseEntity
155 168
             .append("distance", getDistance())
156 169
             .append("mileage", getMileage())
157 170
             .append("expense", getExpense())
171
+            .append("toll", getToll())
158 172
             .toString();
159 173
     }
160 174
 }

+ 125
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcOutsourceWork.java Bestand weergeven

@@ -0,0 +1,125 @@
1
+package com.ruoyi.oa.domain;
2
+
3
+import java.util.Date;
4
+import com.fasterxml.jackson.annotation.JsonFormat;
5
+import org.apache.commons.lang3.builder.ToStringBuilder;
6
+import org.apache.commons.lang3.builder.ToStringStyle;
7
+import com.ruoyi.common.annotation.Excel;
8
+import com.ruoyi.common.core.domain.BaseEntity;
9
+
10
+/**
11
+ * 委外工作对象 cmc_outsource_work
12
+ * 
13
+ * @author cmc
14
+ * @date 2024-09-19
15
+ */
16
+public class CmcOutsourceWork extends BaseEntity
17
+{
18
+    private static final long serialVersionUID = 1L;
19
+
20
+    /** 委外工作id */
21
+    private Integer workId;
22
+
23
+    /** 项目委外id */
24
+    @Excel(name = "项目委外id")
25
+    private String outsourceId;
26
+
27
+    /** 工作内容 */
28
+    @Excel(name = "工作内容")
29
+    private String content;
30
+
31
+    /** 等级或比例尺 */
32
+    @Excel(name = "等级或比例尺")
33
+    private String scale;
34
+
35
+    /** 单位 */
36
+    @Excel(name = "单位")
37
+    private String unit;
38
+
39
+    /** 工作量 */
40
+    @Excel(name = "工作量")
41
+    private String workload;
42
+
43
+    /** 要求完成时间 */
44
+    @JsonFormat(pattern = "yyyy-MM-dd")
45
+    @Excel(name = "要求完成时间", width = 30, dateFormat = "yyyy-MM-dd")
46
+    private Date deadline;
47
+
48
+    public void setWorkId(Integer workId) 
49
+    {
50
+        this.workId = workId;
51
+    }
52
+
53
+    public Integer getWorkId() 
54
+    {
55
+        return workId;
56
+    }
57
+    public void setOutsourceId(String outsourceId) 
58
+    {
59
+        this.outsourceId = outsourceId;
60
+    }
61
+
62
+    public String getOutsourceId() 
63
+    {
64
+        return outsourceId;
65
+    }
66
+    public void setContent(String content) 
67
+    {
68
+        this.content = content;
69
+    }
70
+
71
+    public String getContent() 
72
+    {
73
+        return content;
74
+    }
75
+    public void setScale(String scale) 
76
+    {
77
+        this.scale = scale;
78
+    }
79
+
80
+    public String getScale() 
81
+    {
82
+        return scale;
83
+    }
84
+    public void setUnit(String unit) 
85
+    {
86
+        this.unit = unit;
87
+    }
88
+
89
+    public String getUnit() 
90
+    {
91
+        return unit;
92
+    }
93
+    public void setWorkload(String workload) 
94
+    {
95
+        this.workload = workload;
96
+    }
97
+
98
+    public String getWorkload() 
99
+    {
100
+        return workload;
101
+    }
102
+    public void setDeadline(Date deadline) 
103
+    {
104
+        this.deadline = deadline;
105
+    }
106
+
107
+    public Date getDeadline() 
108
+    {
109
+        return deadline;
110
+    }
111
+
112
+    @Override
113
+    public String toString() {
114
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
115
+            .append("workId", getWorkId())
116
+            .append("outsourceId", getOutsourceId())
117
+            .append("content", getContent())
118
+            .append("scale", getScale())
119
+            .append("unit", getUnit())
120
+            .append("workload", getWorkload())
121
+            .append("deadline", getDeadline())
122
+            .append("remark", getRemark())
123
+            .toString();
124
+    }
125
+}

+ 350
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcWage.java Bestand weergeven

@@ -0,0 +1,350 @@
1
+package com.ruoyi.oa.domain;
2
+
3
+import java.math.BigDecimal;
4
+import java.util.Date;
5
+import com.fasterxml.jackson.annotation.JsonFormat;
6
+import org.apache.commons.lang3.builder.ToStringBuilder;
7
+import org.apache.commons.lang3.builder.ToStringStyle;
8
+import com.ruoyi.common.annotation.Excel;
9
+import com.ruoyi.common.core.domain.BaseEntity;
10
+
11
+/**
12
+ * 员工工资对象 cmc_wage
13
+ * 
14
+ * @author cmc
15
+ * @date 2024-09-19
16
+ */
17
+public class CmcWage extends BaseEntity
18
+{
19
+    private static final long serialVersionUID = 1L;
20
+
21
+    /** 工资id */
22
+    private Integer wageId;
23
+
24
+    /** 员工id */
25
+    @Excel(name = "员工id")
26
+    private Long userId;
27
+
28
+    /** 基础工资 */
29
+    @Excel(name = "基础工资")
30
+    private BigDecimal baseSalary;
31
+
32
+    /** 工龄工资 */
33
+    @Excel(name = "工龄工资")
34
+    private BigDecimal yearSalary;
35
+
36
+    /** 岗位工资 */
37
+    @Excel(name = "岗位工资")
38
+    private BigDecimal postSalary;
39
+
40
+    /** 绩效工资 */
41
+    @Excel(name = "绩效工资")
42
+    private BigDecimal performanceSalary;
43
+
44
+    /** 注册测绘师(岩土工程师)补贴 */
45
+    @Excel(name = "注册测绘师(岩土工程师)补贴")
46
+    private BigDecimal certificatesSubsidy;
47
+
48
+    /** 过节补贴 */
49
+    @Excel(name = "过节补贴")
50
+    private BigDecimal festivalSubsidy;
51
+
52
+    /** 稳岗补贴 */
53
+    @Excel(name = "稳岗补贴")
54
+    private BigDecimal postStableSubsidy;
55
+
56
+    /** 高温补贴 */
57
+    @Excel(name = "高温补贴")
58
+    private BigDecimal highTemperatureSubsidy;
59
+
60
+    /** 考勤扣款 */
61
+    @Excel(name = "考勤扣款")
62
+    private BigDecimal attendanceDeduct;
63
+
64
+    /** 应发小计 */
65
+    @Excel(name = "应发小计")
66
+    private BigDecimal payableWage;
67
+
68
+    /** 公积金 */
69
+    @Excel(name = "公积金")
70
+    private BigDecimal houseFund;
71
+
72
+    /** 养老保险 */
73
+    @Excel(name = "养老保险")
74
+    private BigDecimal endowmentInsurance;
75
+
76
+    /** 失业保险 */
77
+    @Excel(name = "失业保险")
78
+    private BigDecimal unemploymentInsurance;
79
+
80
+    /** 医疗保险 */
81
+    @Excel(name = "医疗保险")
82
+    private BigDecimal medicalInsurance;
83
+
84
+    /** 水韵物管费 */
85
+    @Excel(name = "水韵物管费")
86
+    private BigDecimal propertyFee;
87
+
88
+    /** 扣款小计 */
89
+    @Excel(name = "扣款小计")
90
+    private BigDecimal deductTotal;
91
+
92
+    /** 社保单位部分 */
93
+    @Excel(name = "社保单位部分")
94
+    private BigDecimal socialSecurityUnit;
95
+
96
+    /** 个税 */
97
+    @Excel(name = "个税")
98
+    private BigDecimal individualIncomeTax;
99
+
100
+    /** 实发工资 */
101
+    @Excel(name = "实发工资")
102
+    private BigDecimal paidWage;
103
+
104
+    /** 发放日期 */
105
+    @JsonFormat(pattern = "yyyy-MM-dd")
106
+    @Excel(name = "发放日期", width = 30, dateFormat = "yyyy-MM-dd")
107
+    private Date payDay;
108
+
109
+    /** 发放月份 */
110
+    @JsonFormat(pattern = "yyyy-MM-dd")
111
+    @Excel(name = "发放月份", width = 30, dateFormat = "yyyy-MM-dd")
112
+    private Date payMonth;
113
+
114
+    public void setWageId(Integer wageId) 
115
+    {
116
+        this.wageId = wageId;
117
+    }
118
+
119
+    public Integer getWageId() 
120
+    {
121
+        return wageId;
122
+    }
123
+    public void setUserId(Long userId) 
124
+    {
125
+        this.userId = userId;
126
+    }
127
+
128
+    public Long getUserId() 
129
+    {
130
+        return userId;
131
+    }
132
+    public void setBaseSalary(BigDecimal baseSalary) 
133
+    {
134
+        this.baseSalary = baseSalary;
135
+    }
136
+
137
+    public BigDecimal getBaseSalary() 
138
+    {
139
+        return baseSalary;
140
+    }
141
+    public void setYearSalary(BigDecimal yearSalary) 
142
+    {
143
+        this.yearSalary = yearSalary;
144
+    }
145
+
146
+    public BigDecimal getYearSalary() 
147
+    {
148
+        return yearSalary;
149
+    }
150
+    public void setPostSalary(BigDecimal postSalary) 
151
+    {
152
+        this.postSalary = postSalary;
153
+    }
154
+
155
+    public BigDecimal getPostSalary() 
156
+    {
157
+        return postSalary;
158
+    }
159
+    public void setPerformanceSalary(BigDecimal performanceSalary) 
160
+    {
161
+        this.performanceSalary = performanceSalary;
162
+    }
163
+
164
+    public BigDecimal getPerformanceSalary() 
165
+    {
166
+        return performanceSalary;
167
+    }
168
+    public void setCertificatesSubsidy(BigDecimal certificatesSubsidy) 
169
+    {
170
+        this.certificatesSubsidy = certificatesSubsidy;
171
+    }
172
+
173
+    public BigDecimal getCertificatesSubsidy() 
174
+    {
175
+        return certificatesSubsidy;
176
+    }
177
+    public void setFestivalSubsidy(BigDecimal festivalSubsidy) 
178
+    {
179
+        this.festivalSubsidy = festivalSubsidy;
180
+    }
181
+
182
+    public BigDecimal getFestivalSubsidy() 
183
+    {
184
+        return festivalSubsidy;
185
+    }
186
+    public void setPostStableSubsidy(BigDecimal postStableSubsidy) 
187
+    {
188
+        this.postStableSubsidy = postStableSubsidy;
189
+    }
190
+
191
+    public BigDecimal getPostStableSubsidy() 
192
+    {
193
+        return postStableSubsidy;
194
+    }
195
+    public void setHighTemperatureSubsidy(BigDecimal highTemperatureSubsidy) 
196
+    {
197
+        this.highTemperatureSubsidy = highTemperatureSubsidy;
198
+    }
199
+
200
+    public BigDecimal getHighTemperatureSubsidy() 
201
+    {
202
+        return highTemperatureSubsidy;
203
+    }
204
+    public void setAttendanceDeduct(BigDecimal attendanceDeduct) 
205
+    {
206
+        this.attendanceDeduct = attendanceDeduct;
207
+    }
208
+
209
+    public BigDecimal getAttendanceDeduct() 
210
+    {
211
+        return attendanceDeduct;
212
+    }
213
+    public void setPayableWage(BigDecimal payableWage) 
214
+    {
215
+        this.payableWage = payableWage;
216
+    }
217
+
218
+    public BigDecimal getPayableWage() 
219
+    {
220
+        return payableWage;
221
+    }
222
+    public void setHouseFund(BigDecimal houseFund) 
223
+    {
224
+        this.houseFund = houseFund;
225
+    }
226
+
227
+    public BigDecimal getHouseFund() 
228
+    {
229
+        return houseFund;
230
+    }
231
+    public void setEndowmentInsurance(BigDecimal endowmentInsurance) 
232
+    {
233
+        this.endowmentInsurance = endowmentInsurance;
234
+    }
235
+
236
+    public BigDecimal getEndowmentInsurance() 
237
+    {
238
+        return endowmentInsurance;
239
+    }
240
+    public void setUnemploymentInsurance(BigDecimal unemploymentInsurance) 
241
+    {
242
+        this.unemploymentInsurance = unemploymentInsurance;
243
+    }
244
+
245
+    public BigDecimal getUnemploymentInsurance() 
246
+    {
247
+        return unemploymentInsurance;
248
+    }
249
+    public void setMedicalInsurance(BigDecimal medicalInsurance) 
250
+    {
251
+        this.medicalInsurance = medicalInsurance;
252
+    }
253
+
254
+    public BigDecimal getMedicalInsurance() 
255
+    {
256
+        return medicalInsurance;
257
+    }
258
+    public void setPropertyFee(BigDecimal propertyFee) 
259
+    {
260
+        this.propertyFee = propertyFee;
261
+    }
262
+
263
+    public BigDecimal getPropertyFee() 
264
+    {
265
+        return propertyFee;
266
+    }
267
+    public void setDeductTotal(BigDecimal deductTotal) 
268
+    {
269
+        this.deductTotal = deductTotal;
270
+    }
271
+
272
+    public BigDecimal getDeductTotal() 
273
+    {
274
+        return deductTotal;
275
+    }
276
+    public void setSocialSecurityUnit(BigDecimal socialSecurityUnit) 
277
+    {
278
+        this.socialSecurityUnit = socialSecurityUnit;
279
+    }
280
+
281
+    public BigDecimal getSocialSecurityUnit() 
282
+    {
283
+        return socialSecurityUnit;
284
+    }
285
+    public void setIndividualIncomeTax(BigDecimal individualIncomeTax) 
286
+    {
287
+        this.individualIncomeTax = individualIncomeTax;
288
+    }
289
+
290
+    public BigDecimal getIndividualIncomeTax() 
291
+    {
292
+        return individualIncomeTax;
293
+    }
294
+    public void setPaidWage(BigDecimal paidWage) 
295
+    {
296
+        this.paidWage = paidWage;
297
+    }
298
+
299
+    public BigDecimal getPaidWage() 
300
+    {
301
+        return paidWage;
302
+    }
303
+    public void setPayDay(Date payDay) 
304
+    {
305
+        this.payDay = payDay;
306
+    }
307
+
308
+    public Date getPayDay() 
309
+    {
310
+        return payDay;
311
+    }
312
+    public void setPayMonth(Date payMonth) 
313
+    {
314
+        this.payMonth = payMonth;
315
+    }
316
+
317
+    public Date getPayMonth() 
318
+    {
319
+        return payMonth;
320
+    }
321
+
322
+    @Override
323
+    public String toString() {
324
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
325
+            .append("wageId", getWageId())
326
+            .append("userId", getUserId())
327
+            .append("baseSalary", getBaseSalary())
328
+            .append("yearSalary", getYearSalary())
329
+            .append("postSalary", getPostSalary())
330
+            .append("performanceSalary", getPerformanceSalary())
331
+            .append("certificatesSubsidy", getCertificatesSubsidy())
332
+            .append("festivalSubsidy", getFestivalSubsidy())
333
+            .append("postStableSubsidy", getPostStableSubsidy())
334
+            .append("highTemperatureSubsidy", getHighTemperatureSubsidy())
335
+            .append("attendanceDeduct", getAttendanceDeduct())
336
+            .append("payableWage", getPayableWage())
337
+            .append("houseFund", getHouseFund())
338
+            .append("endowmentInsurance", getEndowmentInsurance())
339
+            .append("unemploymentInsurance", getUnemploymentInsurance())
340
+            .append("medicalInsurance", getMedicalInsurance())
341
+            .append("propertyFee", getPropertyFee())
342
+            .append("deductTotal", getDeductTotal())
343
+            .append("socialSecurityUnit", getSocialSecurityUnit())
344
+            .append("individualIncomeTax", getIndividualIncomeTax())
345
+            .append("paidWage", getPaidWage())
346
+            .append("payDay", getPayDay())
347
+            .append("payMonth", getPayMonth())
348
+            .toString();
349
+    }
350
+}

+ 61
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/mapper/CmcOutsourceWorkMapper.java Bestand weergeven

@@ -0,0 +1,61 @@
1
+package com.ruoyi.oa.mapper;
2
+
3
+import java.util.List;
4
+import com.ruoyi.oa.domain.CmcOutsourceWork;
5
+
6
+/**
7
+ * 委外工作Mapper接口
8
+ * 
9
+ * @author cmc
10
+ * @date 2024-09-19
11
+ */
12
+public interface CmcOutsourceWorkMapper 
13
+{
14
+    /**
15
+     * 查询委外工作
16
+     * 
17
+     * @param workId 委外工作主键
18
+     * @return 委外工作
19
+     */
20
+    public CmcOutsourceWork selectCmcOutsourceWorkByWorkId(Integer workId);
21
+
22
+    /**
23
+     * 查询委外工作列表
24
+     * 
25
+     * @param cmcOutsourceWork 委外工作
26
+     * @return 委外工作集合
27
+     */
28
+    public List<CmcOutsourceWork> selectCmcOutsourceWorkList(CmcOutsourceWork cmcOutsourceWork);
29
+
30
+    /**
31
+     * 新增委外工作
32
+     * 
33
+     * @param cmcOutsourceWork 委外工作
34
+     * @return 结果
35
+     */
36
+    public int insertCmcOutsourceWork(CmcOutsourceWork cmcOutsourceWork);
37
+
38
+    /**
39
+     * 修改委外工作
40
+     * 
41
+     * @param cmcOutsourceWork 委外工作
42
+     * @return 结果
43
+     */
44
+    public int updateCmcOutsourceWork(CmcOutsourceWork cmcOutsourceWork);
45
+
46
+    /**
47
+     * 删除委外工作
48
+     * 
49
+     * @param workId 委外工作主键
50
+     * @return 结果
51
+     */
52
+    public int deleteCmcOutsourceWorkByWorkId(Integer workId);
53
+
54
+    /**
55
+     * 批量删除委外工作
56
+     * 
57
+     * @param workIds 需要删除的数据主键集合
58
+     * @return 结果
59
+     */
60
+    public int deleteCmcOutsourceWorkByWorkIds(Integer[] workIds);
61
+}

+ 61
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/mapper/CmcWageMapper.java Bestand weergeven

@@ -0,0 +1,61 @@
1
+package com.ruoyi.oa.mapper;
2
+
3
+import java.util.List;
4
+import com.ruoyi.oa.domain.CmcWage;
5
+
6
+/**
7
+ * 员工工资Mapper接口
8
+ * 
9
+ * @author cmc
10
+ * @date 2024-09-19
11
+ */
12
+public interface CmcWageMapper 
13
+{
14
+    /**
15
+     * 查询员工工资
16
+     * 
17
+     * @param wageId 员工工资主键
18
+     * @return 员工工资
19
+     */
20
+    public CmcWage selectCmcWageByWageId(Integer wageId);
21
+
22
+    /**
23
+     * 查询员工工资列表
24
+     * 
25
+     * @param cmcWage 员工工资
26
+     * @return 员工工资集合
27
+     */
28
+    public List<CmcWage> selectCmcWageList(CmcWage cmcWage);
29
+
30
+    /**
31
+     * 新增员工工资
32
+     * 
33
+     * @param cmcWage 员工工资
34
+     * @return 结果
35
+     */
36
+    public int insertCmcWage(CmcWage cmcWage);
37
+
38
+    /**
39
+     * 修改员工工资
40
+     * 
41
+     * @param cmcWage 员工工资
42
+     * @return 结果
43
+     */
44
+    public int updateCmcWage(CmcWage cmcWage);
45
+
46
+    /**
47
+     * 删除员工工资
48
+     * 
49
+     * @param wageId 员工工资主键
50
+     * @return 结果
51
+     */
52
+    public int deleteCmcWageByWageId(Integer wageId);
53
+
54
+    /**
55
+     * 批量删除员工工资
56
+     * 
57
+     * @param wageIds 需要删除的数据主键集合
58
+     * @return 结果
59
+     */
60
+    public int deleteCmcWageByWageIds(Integer[] wageIds);
61
+}

+ 61
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/ICmcOutsourceWorkService.java Bestand weergeven

@@ -0,0 +1,61 @@
1
+package com.ruoyi.oa.service;
2
+
3
+import java.util.List;
4
+import com.ruoyi.oa.domain.CmcOutsourceWork;
5
+
6
+/**
7
+ * 委外工作Service接口
8
+ * 
9
+ * @author cmc
10
+ * @date 2024-09-19
11
+ */
12
+public interface ICmcOutsourceWorkService 
13
+{
14
+    /**
15
+     * 查询委外工作
16
+     * 
17
+     * @param workId 委外工作主键
18
+     * @return 委外工作
19
+     */
20
+    public CmcOutsourceWork selectCmcOutsourceWorkByWorkId(Integer workId);
21
+
22
+    /**
23
+     * 查询委外工作列表
24
+     * 
25
+     * @param cmcOutsourceWork 委外工作
26
+     * @return 委外工作集合
27
+     */
28
+    public List<CmcOutsourceWork> selectCmcOutsourceWorkList(CmcOutsourceWork cmcOutsourceWork);
29
+
30
+    /**
31
+     * 新增委外工作
32
+     * 
33
+     * @param cmcOutsourceWork 委外工作
34
+     * @return 结果
35
+     */
36
+    public int insertCmcOutsourceWork(CmcOutsourceWork cmcOutsourceWork);
37
+
38
+    /**
39
+     * 修改委外工作
40
+     * 
41
+     * @param cmcOutsourceWork 委外工作
42
+     * @return 结果
43
+     */
44
+    public int updateCmcOutsourceWork(CmcOutsourceWork cmcOutsourceWork);
45
+
46
+    /**
47
+     * 批量删除委外工作
48
+     * 
49
+     * @param workIds 需要删除的委外工作主键集合
50
+     * @return 结果
51
+     */
52
+    public int deleteCmcOutsourceWorkByWorkIds(Integer[] workIds);
53
+
54
+    /**
55
+     * 删除委外工作信息
56
+     * 
57
+     * @param workId 委外工作主键
58
+     * @return 结果
59
+     */
60
+    public int deleteCmcOutsourceWorkByWorkId(Integer workId);
61
+}

+ 61
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/ICmcWageService.java Bestand weergeven

@@ -0,0 +1,61 @@
1
+package com.ruoyi.oa.service;
2
+
3
+import java.util.List;
4
+import com.ruoyi.oa.domain.CmcWage;
5
+
6
+/**
7
+ * 员工工资Service接口
8
+ * 
9
+ * @author cmc
10
+ * @date 2024-09-19
11
+ */
12
+public interface ICmcWageService 
13
+{
14
+    /**
15
+     * 查询员工工资
16
+     * 
17
+     * @param wageId 员工工资主键
18
+     * @return 员工工资
19
+     */
20
+    public CmcWage selectCmcWageByWageId(Integer wageId);
21
+
22
+    /**
23
+     * 查询员工工资列表
24
+     * 
25
+     * @param cmcWage 员工工资
26
+     * @return 员工工资集合
27
+     */
28
+    public List<CmcWage> selectCmcWageList(CmcWage cmcWage);
29
+
30
+    /**
31
+     * 新增员工工资
32
+     * 
33
+     * @param cmcWage 员工工资
34
+     * @return 结果
35
+     */
36
+    public int insertCmcWage(CmcWage cmcWage);
37
+
38
+    /**
39
+     * 修改员工工资
40
+     * 
41
+     * @param cmcWage 员工工资
42
+     * @return 结果
43
+     */
44
+    public int updateCmcWage(CmcWage cmcWage);
45
+
46
+    /**
47
+     * 批量删除员工工资
48
+     * 
49
+     * @param wageIds 需要删除的员工工资主键集合
50
+     * @return 结果
51
+     */
52
+    public int deleteCmcWageByWageIds(Integer[] wageIds);
53
+
54
+    /**
55
+     * 删除员工工资信息
56
+     * 
57
+     * @param wageId 员工工资主键
58
+     * @return 结果
59
+     */
60
+    public int deleteCmcWageByWageId(Integer wageId);
61
+}

+ 93
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/impl/CmcOutsourceWorkServiceImpl.java Bestand weergeven

@@ -0,0 +1,93 @@
1
+package com.ruoyi.oa.service.impl;
2
+
3
+import java.util.List;
4
+import org.springframework.beans.factory.annotation.Autowired;
5
+import org.springframework.stereotype.Service;
6
+import com.ruoyi.oa.mapper.CmcOutsourceWorkMapper;
7
+import com.ruoyi.oa.domain.CmcOutsourceWork;
8
+import com.ruoyi.oa.service.ICmcOutsourceWorkService;
9
+
10
+/**
11
+ * 委外工作Service业务层处理
12
+ * 
13
+ * @author cmc
14
+ * @date 2024-09-19
15
+ */
16
+@Service
17
+public class CmcOutsourceWorkServiceImpl implements ICmcOutsourceWorkService 
18
+{
19
+    @Autowired
20
+    private CmcOutsourceWorkMapper cmcOutsourceWorkMapper;
21
+
22
+    /**
23
+     * 查询委外工作
24
+     * 
25
+     * @param workId 委外工作主键
26
+     * @return 委外工作
27
+     */
28
+    @Override
29
+    public CmcOutsourceWork selectCmcOutsourceWorkByWorkId(Integer workId)
30
+    {
31
+        return cmcOutsourceWorkMapper.selectCmcOutsourceWorkByWorkId(workId);
32
+    }
33
+
34
+    /**
35
+     * 查询委外工作列表
36
+     * 
37
+     * @param cmcOutsourceWork 委外工作
38
+     * @return 委外工作
39
+     */
40
+    @Override
41
+    public List<CmcOutsourceWork> selectCmcOutsourceWorkList(CmcOutsourceWork cmcOutsourceWork)
42
+    {
43
+        return cmcOutsourceWorkMapper.selectCmcOutsourceWorkList(cmcOutsourceWork);
44
+    }
45
+
46
+    /**
47
+     * 新增委外工作
48
+     * 
49
+     * @param cmcOutsourceWork 委外工作
50
+     * @return 结果
51
+     */
52
+    @Override
53
+    public int insertCmcOutsourceWork(CmcOutsourceWork cmcOutsourceWork)
54
+    {
55
+        return cmcOutsourceWorkMapper.insertCmcOutsourceWork(cmcOutsourceWork);
56
+    }
57
+
58
+    /**
59
+     * 修改委外工作
60
+     * 
61
+     * @param cmcOutsourceWork 委外工作
62
+     * @return 结果
63
+     */
64
+    @Override
65
+    public int updateCmcOutsourceWork(CmcOutsourceWork cmcOutsourceWork)
66
+    {
67
+        return cmcOutsourceWorkMapper.updateCmcOutsourceWork(cmcOutsourceWork);
68
+    }
69
+
70
+    /**
71
+     * 批量删除委外工作
72
+     * 
73
+     * @param workIds 需要删除的委外工作主键
74
+     * @return 结果
75
+     */
76
+    @Override
77
+    public int deleteCmcOutsourceWorkByWorkIds(Integer[] workIds)
78
+    {
79
+        return cmcOutsourceWorkMapper.deleteCmcOutsourceWorkByWorkIds(workIds);
80
+    }
81
+
82
+    /**
83
+     * 删除委外工作信息
84
+     * 
85
+     * @param workId 委外工作主键
86
+     * @return 结果
87
+     */
88
+    @Override
89
+    public int deleteCmcOutsourceWorkByWorkId(Integer workId)
90
+    {
91
+        return cmcOutsourceWorkMapper.deleteCmcOutsourceWorkByWorkId(workId);
92
+    }
93
+}

+ 93
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/impl/CmcWageServiceImpl.java Bestand weergeven

@@ -0,0 +1,93 @@
1
+package com.ruoyi.oa.service.impl;
2
+
3
+import java.util.List;
4
+import org.springframework.beans.factory.annotation.Autowired;
5
+import org.springframework.stereotype.Service;
6
+import com.ruoyi.oa.mapper.CmcWageMapper;
7
+import com.ruoyi.oa.domain.CmcWage;
8
+import com.ruoyi.oa.service.ICmcWageService;
9
+
10
+/**
11
+ * 员工工资Service业务层处理
12
+ * 
13
+ * @author cmc
14
+ * @date 2024-09-19
15
+ */
16
+@Service
17
+public class CmcWageServiceImpl implements ICmcWageService 
18
+{
19
+    @Autowired
20
+    private CmcWageMapper cmcWageMapper;
21
+
22
+    /**
23
+     * 查询员工工资
24
+     * 
25
+     * @param wageId 员工工资主键
26
+     * @return 员工工资
27
+     */
28
+    @Override
29
+    public CmcWage selectCmcWageByWageId(Integer wageId)
30
+    {
31
+        return cmcWageMapper.selectCmcWageByWageId(wageId);
32
+    }
33
+
34
+    /**
35
+     * 查询员工工资列表
36
+     * 
37
+     * @param cmcWage 员工工资
38
+     * @return 员工工资
39
+     */
40
+    @Override
41
+    public List<CmcWage> selectCmcWageList(CmcWage cmcWage)
42
+    {
43
+        return cmcWageMapper.selectCmcWageList(cmcWage);
44
+    }
45
+
46
+    /**
47
+     * 新增员工工资
48
+     * 
49
+     * @param cmcWage 员工工资
50
+     * @return 结果
51
+     */
52
+    @Override
53
+    public int insertCmcWage(CmcWage cmcWage)
54
+    {
55
+        return cmcWageMapper.insertCmcWage(cmcWage);
56
+    }
57
+
58
+    /**
59
+     * 修改员工工资
60
+     * 
61
+     * @param cmcWage 员工工资
62
+     * @return 结果
63
+     */
64
+    @Override
65
+    public int updateCmcWage(CmcWage cmcWage)
66
+    {
67
+        return cmcWageMapper.updateCmcWage(cmcWage);
68
+    }
69
+
70
+    /**
71
+     * 批量删除员工工资
72
+     * 
73
+     * @param wageIds 需要删除的员工工资主键
74
+     * @return 结果
75
+     */
76
+    @Override
77
+    public int deleteCmcWageByWageIds(Integer[] wageIds)
78
+    {
79
+        return cmcWageMapper.deleteCmcWageByWageIds(wageIds);
80
+    }
81
+
82
+    /**
83
+     * 删除员工工资信息
84
+     * 
85
+     * @param wageId 员工工资主键
86
+     * @return 结果
87
+     */
88
+    @Override
89
+    public int deleteCmcWageByWageId(Integer wageId)
90
+    {
91
+        return cmcWageMapper.deleteCmcWageByWageId(wageId);
92
+    }
93
+}

+ 6
- 1
oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcBudgetCarMapper.xml Bestand weergeven

@@ -13,6 +13,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
13 13
         <result property="distance"    column="distance"    />
14 14
         <result property="mileage"    column="mileage"    />
15 15
         <result property="expense"    column="expense"    />
16
+        <result property="toll"    column="toll"    />
16 17
         <result property="remark"    column="remark"    />
17 18
         <association property="car"    javaType="CmcCar"         resultMap="CmcCarResult" />
18 19
         <association property="driverUser"    javaType="SysUser"         resultMap="SysUserResult" />
@@ -32,7 +33,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
32 33
     </resultMap>
33 34
 
34 35
     <sql id="selectCmcBudgetCarVo">
35
-        select bc.budget_car_id, bc.budget_id, bc.car_id, c.license_plate, c.driver, c.brand, u.nick_name, c.day_cost, bc.days, bc.depreciation, bc.distance, bc.mileage, bc.expense, bc.remark from cmc_budget_car as bc
36
+        select bc.budget_car_id, bc.budget_id, bc.car_id, c.license_plate, c.driver, c.brand, u.nick_name, c.day_cost, bc.days, bc.depreciation, bc.distance, bc.mileage, bc.toll,, bc.expense, bc.remark from cmc_budget_car as bc
36 37
         left join cmc_car as c on c.car_id = bc.car_id
37 38
         left join sys_user as u on c.driver = u.user_id
38 39
     </sql>
@@ -46,6 +47,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
46 47
             <if test="depreciation != null "> and bc.depreciation = #{depreciation}</if>
47 48
             <if test="distance != null "> and bc.distance = #{distance}</if>
48 49
             <if test="mileage != null "> and bc.mileage = #{mileage}</if>
50
+            <if test="toll != null "> and bc.toll = #{toll}</if>
49 51
             <if test="expense != null "> and bc.expense = #{expense}</if>
50 52
         </where>
51 53
     </select>
@@ -66,6 +68,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
66 68
             <if test="distance != null">distance,</if>
67 69
             <if test="mileage != null">mileage,</if>
68 70
             <if test="expense != null">expense,</if>
71
+            <if test="toll != null">toll,</if>
69 72
             <if test="remark != null">remark,</if>
70 73
          </trim>
71 74
         <trim prefix="values (" suffix=")" suffixOverrides=",">
@@ -77,6 +80,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
77 80
             <if test="distance != null">#{distance},</if>
78 81
             <if test="mileage != null">#{mileage},</if>
79 82
             <if test="expense != null">#{expense},</if>
83
+            <if test="toll != null">#{toll},</if>
80 84
             <if test="remark != null">#{remark},</if>
81 85
          </trim>
82 86
     </insert>
@@ -90,6 +94,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
90 94
             <if test="depreciation != null">depreciation = #{depreciation},</if>
91 95
             <if test="distance != null">distance = #{distance},</if>
92 96
             <if test="mileage != null">mileage = #{mileage},</if>
97
+            <if test="toll != null">toll = #{toll},</if>
93 98
             <if test="expense != null">expense = #{expense},</if>
94 99
             <if test="remark != null">remark = #{remark},</if>
95 100
         </trim>

+ 87
- 0
oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcOutsourceWorkMapper.xml Bestand weergeven

@@ -0,0 +1,87 @@
1
+<?xml version="1.0" encoding="UTF-8" ?>
2
+<!DOCTYPE mapper
3
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
4
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
5
+<mapper namespace="com.ruoyi.oa.mapper.CmcOutsourceWorkMapper">
6
+    
7
+    <resultMap type="CmcOutsourceWork" id="CmcOutsourceWorkResult">
8
+        <result property="workId"    column="work_id"    />
9
+        <result property="outsourceId"    column="outsource_id"    />
10
+        <result property="content"    column="content"    />
11
+        <result property="scale"    column="scale"    />
12
+        <result property="unit"    column="unit"    />
13
+        <result property="workload"    column="workload"    />
14
+        <result property="deadline"    column="deadline"    />
15
+        <result property="remark"    column="remark"    />
16
+    </resultMap>
17
+
18
+    <sql id="selectCmcOutsourceWorkVo">
19
+        select work_id, outsource_id, content, scale, unit, workload, deadline, remark from cmc_outsource_work
20
+    </sql>
21
+
22
+    <select id="selectCmcOutsourceWorkList" parameterType="CmcOutsourceWork" resultMap="CmcOutsourceWorkResult">
23
+        <include refid="selectCmcOutsourceWorkVo"/>
24
+        <where>  
25
+            <if test="outsourceId != null  and outsourceId != ''"> and outsource_id = #{outsourceId}</if>
26
+            <if test="content != null  and content != ''"> and content = #{content}</if>
27
+            <if test="scale != null  and scale != ''"> and scale = #{scale}</if>
28
+            <if test="unit != null  and unit != ''"> and unit = #{unit}</if>
29
+            <if test="workload != null  and workload != ''"> and workload = #{workload}</if>
30
+            <if test="deadline != null "> and deadline = #{deadline}</if>
31
+        </where>
32
+    </select>
33
+    
34
+    <select id="selectCmcOutsourceWorkByWorkId" parameterType="Integer" resultMap="CmcOutsourceWorkResult">
35
+        <include refid="selectCmcOutsourceWorkVo"/>
36
+        where work_id = #{workId}
37
+    </select>
38
+        
39
+    <insert id="insertCmcOutsourceWork" parameterType="CmcOutsourceWork">
40
+        insert into cmc_outsource_work
41
+        <trim prefix="(" suffix=")" suffixOverrides=",">
42
+            <if test="workId != null">work_id,</if>
43
+            <if test="outsourceId != null">outsource_id,</if>
44
+            <if test="content != null">content,</if>
45
+            <if test="scale != null">scale,</if>
46
+            <if test="unit != null">unit,</if>
47
+            <if test="workload != null">workload,</if>
48
+            <if test="deadline != null">deadline,</if>
49
+            <if test="remark != null">remark,</if>
50
+         </trim>
51
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
52
+            <if test="workId != null">#{workId},</if>
53
+            <if test="outsourceId != null">#{outsourceId},</if>
54
+            <if test="content != null">#{content},</if>
55
+            <if test="scale != null">#{scale},</if>
56
+            <if test="unit != null">#{unit},</if>
57
+            <if test="workload != null">#{workload},</if>
58
+            <if test="deadline != null">#{deadline},</if>
59
+            <if test="remark != null">#{remark},</if>
60
+         </trim>
61
+    </insert>
62
+
63
+    <update id="updateCmcOutsourceWork" parameterType="CmcOutsourceWork">
64
+        update cmc_outsource_work
65
+        <trim prefix="SET" suffixOverrides=",">
66
+            <if test="outsourceId != null">outsource_id = #{outsourceId},</if>
67
+            <if test="content != null">content = #{content},</if>
68
+            <if test="scale != null">scale = #{scale},</if>
69
+            <if test="unit != null">unit = #{unit},</if>
70
+            <if test="workload != null">workload = #{workload},</if>
71
+            <if test="deadline != null">deadline = #{deadline},</if>
72
+            <if test="remark != null">remark = #{remark},</if>
73
+        </trim>
74
+        where work_id = #{workId}
75
+    </update>
76
+
77
+    <delete id="deleteCmcOutsourceWorkByWorkId" parameterType="Integer">
78
+        delete from cmc_outsource_work where work_id = #{workId}
79
+    </delete>
80
+
81
+    <delete id="deleteCmcOutsourceWorkByWorkIds" parameterType="String">
82
+        delete from cmc_outsource_work where work_id in 
83
+        <foreach item="workId" collection="array" open="(" separator="," close=")">
84
+            #{workId}
85
+        </foreach>
86
+    </delete>
87
+</mapper>

+ 163
- 0
oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcWageMapper.xml Bestand weergeven

@@ -0,0 +1,163 @@
1
+<?xml version="1.0" encoding="UTF-8" ?>
2
+<!DOCTYPE mapper
3
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
4
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
5
+<mapper namespace="com.ruoyi.oa.mapper.CmcWageMapper">
6
+    
7
+    <resultMap type="CmcWage" id="CmcWageResult">
8
+        <result property="wageId"    column="wage_id"    />
9
+        <result property="userId"    column="user_id"    />
10
+        <result property="baseSalary"    column="base_salary"    />
11
+        <result property="yearSalary"    column="year_salary"    />
12
+        <result property="postSalary"    column="post_salary"    />
13
+        <result property="performanceSalary"    column="performance_salary"    />
14
+        <result property="certificatesSubsidy"    column="certificates_subsidy"    />
15
+        <result property="festivalSubsidy"    column="festival_subsidy"    />
16
+        <result property="postStableSubsidy"    column="post_stable_subsidy"    />
17
+        <result property="highTemperatureSubsidy"    column="high_temperature_subsidy"    />
18
+        <result property="attendanceDeduct"    column="attendance_deduct"    />
19
+        <result property="payableWage"    column="payable_wage"    />
20
+        <result property="houseFund"    column="house_fund"    />
21
+        <result property="endowmentInsurance"    column="endowment_insurance"    />
22
+        <result property="unemploymentInsurance"    column="unemployment_insurance"    />
23
+        <result property="medicalInsurance"    column="medical_insurance"    />
24
+        <result property="propertyFee"    column="property_fee"    />
25
+        <result property="deductTotal"    column="deduct_total"    />
26
+        <result property="socialSecurityUnit"    column="social_security_unit"    />
27
+        <result property="individualIncomeTax"    column="individual_income_tax"    />
28
+        <result property="paidWage"    column="paid_wage"    />
29
+        <result property="payDay"    column="pay_day"    />
30
+        <result property="payMonth"    column="pay_month"    />
31
+    </resultMap>
32
+
33
+    <sql id="selectCmcWageVo">
34
+        select wage_id, user_id, base_salary, year_salary, post_salary, performance_salary, certificates_subsidy, festival_subsidy, post_stable_subsidy, high_temperature_subsidy, attendance_deduct, payable_wage, house_fund, endowment_insurance, unemployment_insurance, medical_insurance, property_fee, deduct_total, social_security_unit, individual_income_tax, paid_wage, pay_day, pay_month from cmc_wage
35
+    </sql>
36
+
37
+    <select id="selectCmcWageList" parameterType="CmcWage" resultMap="CmcWageResult">
38
+        <include refid="selectCmcWageVo"/>
39
+        <where>  
40
+            <if test="userId != null "> and user_id = #{userId}</if>
41
+            <if test="baseSalary != null "> and base_salary = #{baseSalary}</if>
42
+            <if test="yearSalary != null "> and year_salary = #{yearSalary}</if>
43
+            <if test="postSalary != null "> and post_salary = #{postSalary}</if>
44
+            <if test="performanceSalary != null "> and performance_salary = #{performanceSalary}</if>
45
+            <if test="certificatesSubsidy != null "> and certificates_subsidy = #{certificatesSubsidy}</if>
46
+            <if test="festivalSubsidy != null "> and festival_subsidy = #{festivalSubsidy}</if>
47
+            <if test="postStableSubsidy != null "> and post_stable_subsidy = #{postStableSubsidy}</if>
48
+            <if test="highTemperatureSubsidy != null "> and high_temperature_subsidy = #{highTemperatureSubsidy}</if>
49
+            <if test="attendanceDeduct != null "> and attendance_deduct = #{attendanceDeduct}</if>
50
+            <if test="payableWage != null "> and payable_wage = #{payableWage}</if>
51
+            <if test="houseFund != null "> and house_fund = #{houseFund}</if>
52
+            <if test="endowmentInsurance != null "> and endowment_insurance = #{endowmentInsurance}</if>
53
+            <if test="unemploymentInsurance != null "> and unemployment_insurance = #{unemploymentInsurance}</if>
54
+            <if test="medicalInsurance != null "> and medical_insurance = #{medicalInsurance}</if>
55
+            <if test="propertyFee != null "> and property_fee = #{propertyFee}</if>
56
+            <if test="deductTotal != null "> and deduct_total = #{deductTotal}</if>
57
+            <if test="socialSecurityUnit != null "> and social_security_unit = #{socialSecurityUnit}</if>
58
+            <if test="individualIncomeTax != null "> and individual_income_tax = #{individualIncomeTax}</if>
59
+            <if test="paidWage != null "> and paid_wage = #{paidWage}</if>
60
+            <if test="payDay != null "> and pay_day = #{payDay}</if>
61
+            <if test="payMonth != null "> and pay_month = #{payMonth}</if>
62
+        </where>
63
+    </select>
64
+    
65
+    <select id="selectCmcWageByWageId" parameterType="Integer" resultMap="CmcWageResult">
66
+        <include refid="selectCmcWageVo"/>
67
+        where wage_id = #{wageId}
68
+    </select>
69
+        
70
+    <insert id="insertCmcWage" parameterType="CmcWage">
71
+        insert into cmc_wage
72
+        <trim prefix="(" suffix=")" suffixOverrides=",">
73
+            <if test="wageId != null">wage_id,</if>
74
+            <if test="userId != null">user_id,</if>
75
+            <if test="baseSalary != null">base_salary,</if>
76
+            <if test="yearSalary != null">year_salary,</if>
77
+            <if test="postSalary != null">post_salary,</if>
78
+            <if test="performanceSalary != null">performance_salary,</if>
79
+            <if test="certificatesSubsidy != null">certificates_subsidy,</if>
80
+            <if test="festivalSubsidy != null">festival_subsidy,</if>
81
+            <if test="postStableSubsidy != null">post_stable_subsidy,</if>
82
+            <if test="highTemperatureSubsidy != null">high_temperature_subsidy,</if>
83
+            <if test="attendanceDeduct != null">attendance_deduct,</if>
84
+            <if test="payableWage != null">payable_wage,</if>
85
+            <if test="houseFund != null">house_fund,</if>
86
+            <if test="endowmentInsurance != null">endowment_insurance,</if>
87
+            <if test="unemploymentInsurance != null">unemployment_insurance,</if>
88
+            <if test="medicalInsurance != null">medical_insurance,</if>
89
+            <if test="propertyFee != null">property_fee,</if>
90
+            <if test="deductTotal != null">deduct_total,</if>
91
+            <if test="socialSecurityUnit != null">social_security_unit,</if>
92
+            <if test="individualIncomeTax != null">individual_income_tax,</if>
93
+            <if test="paidWage != null">paid_wage,</if>
94
+            <if test="payDay != null">pay_day,</if>
95
+            <if test="payMonth != null">pay_month,</if>
96
+         </trim>
97
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
98
+            <if test="wageId != null">#{wageId},</if>
99
+            <if test="userId != null">#{userId},</if>
100
+            <if test="baseSalary != null">#{baseSalary},</if>
101
+            <if test="yearSalary != null">#{yearSalary},</if>
102
+            <if test="postSalary != null">#{postSalary},</if>
103
+            <if test="performanceSalary != null">#{performanceSalary},</if>
104
+            <if test="certificatesSubsidy != null">#{certificatesSubsidy},</if>
105
+            <if test="festivalSubsidy != null">#{festivalSubsidy},</if>
106
+            <if test="postStableSubsidy != null">#{postStableSubsidy},</if>
107
+            <if test="highTemperatureSubsidy != null">#{highTemperatureSubsidy},</if>
108
+            <if test="attendanceDeduct != null">#{attendanceDeduct},</if>
109
+            <if test="payableWage != null">#{payableWage},</if>
110
+            <if test="houseFund != null">#{houseFund},</if>
111
+            <if test="endowmentInsurance != null">#{endowmentInsurance},</if>
112
+            <if test="unemploymentInsurance != null">#{unemploymentInsurance},</if>
113
+            <if test="medicalInsurance != null">#{medicalInsurance},</if>
114
+            <if test="propertyFee != null">#{propertyFee},</if>
115
+            <if test="deductTotal != null">#{deductTotal},</if>
116
+            <if test="socialSecurityUnit != null">#{socialSecurityUnit},</if>
117
+            <if test="individualIncomeTax != null">#{individualIncomeTax},</if>
118
+            <if test="paidWage != null">#{paidWage},</if>
119
+            <if test="payDay != null">#{payDay},</if>
120
+            <if test="payMonth != null">#{payMonth},</if>
121
+         </trim>
122
+    </insert>
123
+
124
+    <update id="updateCmcWage" parameterType="CmcWage">
125
+        update cmc_wage
126
+        <trim prefix="SET" suffixOverrides=",">
127
+            <if test="userId != null">user_id = #{userId},</if>
128
+            <if test="baseSalary != null">base_salary = #{baseSalary},</if>
129
+            <if test="yearSalary != null">year_salary = #{yearSalary},</if>
130
+            <if test="postSalary != null">post_salary = #{postSalary},</if>
131
+            <if test="performanceSalary != null">performance_salary = #{performanceSalary},</if>
132
+            <if test="certificatesSubsidy != null">certificates_subsidy = #{certificatesSubsidy},</if>
133
+            <if test="festivalSubsidy != null">festival_subsidy = #{festivalSubsidy},</if>
134
+            <if test="postStableSubsidy != null">post_stable_subsidy = #{postStableSubsidy},</if>
135
+            <if test="highTemperatureSubsidy != null">high_temperature_subsidy = #{highTemperatureSubsidy},</if>
136
+            <if test="attendanceDeduct != null">attendance_deduct = #{attendanceDeduct},</if>
137
+            <if test="payableWage != null">payable_wage = #{payableWage},</if>
138
+            <if test="houseFund != null">house_fund = #{houseFund},</if>
139
+            <if test="endowmentInsurance != null">endowment_insurance = #{endowmentInsurance},</if>
140
+            <if test="unemploymentInsurance != null">unemployment_insurance = #{unemploymentInsurance},</if>
141
+            <if test="medicalInsurance != null">medical_insurance = #{medicalInsurance},</if>
142
+            <if test="propertyFee != null">property_fee = #{propertyFee},</if>
143
+            <if test="deductTotal != null">deduct_total = #{deductTotal},</if>
144
+            <if test="socialSecurityUnit != null">social_security_unit = #{socialSecurityUnit},</if>
145
+            <if test="individualIncomeTax != null">individual_income_tax = #{individualIncomeTax},</if>
146
+            <if test="paidWage != null">paid_wage = #{paidWage},</if>
147
+            <if test="payDay != null">pay_day = #{payDay},</if>
148
+            <if test="payMonth != null">pay_month = #{payMonth},</if>
149
+        </trim>
150
+        where wage_id = #{wageId}
151
+    </update>
152
+
153
+    <delete id="deleteCmcWageByWageId" parameterType="Integer">
154
+        delete from cmc_wage where wage_id = #{wageId}
155
+    </delete>
156
+
157
+    <delete id="deleteCmcWageByWageIds" parameterType="String">
158
+        delete from cmc_wage where wage_id in 
159
+        <foreach item="wageId" collection="array" open="(" separator="," close=")">
160
+            #{wageId}
161
+        </foreach>
162
+    </delete>
163
+</mapper>

+ 44
- 0
oa-ui/src/api/oa/outsource/outsourceWork.js Bestand weergeven

@@ -0,0 +1,44 @@
1
+import request from '@/utils/request'
2
+
3
+// 查询委外工作列表
4
+export function listOutsourceWork(query) {
5
+  return request({
6
+    url: '/oa/outsourceWork/list',
7
+    method: 'get',
8
+    params: query
9
+  })
10
+}
11
+
12
+// 查询委外工作详细
13
+export function getOutsourceWork(workId) {
14
+  return request({
15
+    url: '/oa/outsourceWork/' + workId,
16
+    method: 'get'
17
+  })
18
+}
19
+
20
+// 新增委外工作
21
+export function addOutsourceWork(data) {
22
+  return request({
23
+    url: '/oa/outsourceWork',
24
+    method: 'post',
25
+    data: data
26
+  })
27
+}
28
+
29
+// 修改委外工作
30
+export function updateOutsourceWork(data) {
31
+  return request({
32
+    url: '/oa/outsourceWork',
33
+    method: 'put',
34
+    data: data
35
+  })
36
+}
37
+
38
+// 删除委外工作
39
+export function delOutsourceWork(workId) {
40
+  return request({
41
+    url: '/oa/outsourceWork/' + workId,
42
+    method: 'delete'
43
+  })
44
+}

+ 44
- 0
oa-ui/src/api/oa/wage/wage.js Bestand weergeven

@@ -0,0 +1,44 @@
1
+import request from '@/utils/request'
2
+
3
+// 查询员工工资列表
4
+export function listWage(query) {
5
+  return request({
6
+    url: '/oa/wage/list',
7
+    method: 'get',
8
+    params: query
9
+  })
10
+}
11
+
12
+// 查询员工工资详细
13
+export function getWage(wageId) {
14
+  return request({
15
+    url: '/oa/wage/' + wageId,
16
+    method: 'get'
17
+  })
18
+}
19
+
20
+// 新增员工工资
21
+export function addWage(data) {
22
+  return request({
23
+    url: '/oa/wage',
24
+    method: 'post',
25
+    data: data
26
+  })
27
+}
28
+
29
+// 修改员工工资
30
+export function updateWage(data) {
31
+  return request({
32
+    url: '/oa/wage',
33
+    method: 'put',
34
+    data: data
35
+  })
36
+}
37
+
38
+// 删除员工工资
39
+export function delWage(wageId) {
40
+  return request({
41
+    url: '/oa/wage/' + wageId,
42
+    method: 'delete'
43
+  })
44
+}

+ 557
- 0
oa-ui/src/views/oa/wage/index.vue Bestand weergeven

@@ -0,0 +1,557 @@
1
+<template>
2
+  <div class="app-container">
3
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
4
+      <el-form-item label="员工id" prop="userId">
5
+        <el-input
6
+          v-model="queryParams.userId"
7
+          placeholder="请输入员工id"
8
+          clearable
9
+          @keyup.enter.native="handleQuery"
10
+        />
11
+      </el-form-item>
12
+      <el-form-item label="基础工资" prop="baseSalary">
13
+        <el-input
14
+          v-model="queryParams.baseSalary"
15
+          placeholder="请输入基础工资"
16
+          clearable
17
+          @keyup.enter.native="handleQuery"
18
+        />
19
+      </el-form-item>
20
+      <el-form-item label="工龄工资" prop="yearSalary">
21
+        <el-input
22
+          v-model="queryParams.yearSalary"
23
+          placeholder="请输入工龄工资"
24
+          clearable
25
+          @keyup.enter.native="handleQuery"
26
+        />
27
+      </el-form-item>
28
+      <el-form-item label="岗位工资" prop="postSalary">
29
+        <el-input
30
+          v-model="queryParams.postSalary"
31
+          placeholder="请输入岗位工资"
32
+          clearable
33
+          @keyup.enter.native="handleQuery"
34
+        />
35
+      </el-form-item>
36
+      <el-form-item label="绩效工资" prop="performanceSalary">
37
+        <el-input
38
+          v-model="queryParams.performanceSalary"
39
+          placeholder="请输入绩效工资"
40
+          clearable
41
+          @keyup.enter.native="handleQuery"
42
+        />
43
+      </el-form-item>
44
+      <el-form-item label="注册测绘师" prop="certificatesSubsidy">
45
+        <el-input
46
+          v-model="queryParams.certificatesSubsidy"
47
+          placeholder="请输入注册测绘师"
48
+          clearable
49
+          @keyup.enter.native="handleQuery"
50
+        />
51
+      </el-form-item>
52
+      <el-form-item label="过节补贴" prop="festivalSubsidy">
53
+        <el-input
54
+          v-model="queryParams.festivalSubsidy"
55
+          placeholder="请输入过节补贴"
56
+          clearable
57
+          @keyup.enter.native="handleQuery"
58
+        />
59
+      </el-form-item>
60
+      <el-form-item label="稳岗补贴" prop="postStableSubsidy">
61
+        <el-input
62
+          v-model="queryParams.postStableSubsidy"
63
+          placeholder="请输入稳岗补贴"
64
+          clearable
65
+          @keyup.enter.native="handleQuery"
66
+        />
67
+      </el-form-item>
68
+      <el-form-item label="高温补贴" prop="highTemperatureSubsidy">
69
+        <el-input
70
+          v-model="queryParams.highTemperatureSubsidy"
71
+          placeholder="请输入高温补贴"
72
+          clearable
73
+          @keyup.enter.native="handleQuery"
74
+        />
75
+      </el-form-item>
76
+      <el-form-item label="考勤扣款" prop="attendanceDeduct">
77
+        <el-input
78
+          v-model="queryParams.attendanceDeduct"
79
+          placeholder="请输入考勤扣款"
80
+          clearable
81
+          @keyup.enter.native="handleQuery"
82
+        />
83
+      </el-form-item>
84
+      <el-form-item label="应发小计" prop="payableWage">
85
+        <el-input
86
+          v-model="queryParams.payableWage"
87
+          placeholder="请输入应发小计"
88
+          clearable
89
+          @keyup.enter.native="handleQuery"
90
+        />
91
+      </el-form-item>
92
+      <el-form-item label="公积金" prop="houseFund">
93
+        <el-input
94
+          v-model="queryParams.houseFund"
95
+          placeholder="请输入公积金"
96
+          clearable
97
+          @keyup.enter.native="handleQuery"
98
+        />
99
+      </el-form-item>
100
+      <el-form-item label="养老保险" prop="endowmentInsurance">
101
+        <el-input
102
+          v-model="queryParams.endowmentInsurance"
103
+          placeholder="请输入养老保险"
104
+          clearable
105
+          @keyup.enter.native="handleQuery"
106
+        />
107
+      </el-form-item>
108
+      <el-form-item label="失业保险" prop="unemploymentInsurance">
109
+        <el-input
110
+          v-model="queryParams.unemploymentInsurance"
111
+          placeholder="请输入失业保险"
112
+          clearable
113
+          @keyup.enter.native="handleQuery"
114
+        />
115
+      </el-form-item>
116
+      <el-form-item label="医疗保险" prop="medicalInsurance">
117
+        <el-input
118
+          v-model="queryParams.medicalInsurance"
119
+          placeholder="请输入医疗保险"
120
+          clearable
121
+          @keyup.enter.native="handleQuery"
122
+        />
123
+      </el-form-item>
124
+      <el-form-item label="水韵物管费" prop="propertyFee">
125
+        <el-input
126
+          v-model="queryParams.propertyFee"
127
+          placeholder="请输入水韵物管费"
128
+          clearable
129
+          @keyup.enter.native="handleQuery"
130
+        />
131
+      </el-form-item>
132
+      <el-form-item label="扣款小计" prop="deductTotal">
133
+        <el-input
134
+          v-model="queryParams.deductTotal"
135
+          placeholder="请输入扣款小计"
136
+          clearable
137
+          @keyup.enter.native="handleQuery"
138
+        />
139
+      </el-form-item>
140
+      <el-form-item label="社保单位部分" prop="socialSecurityUnit">
141
+        <el-input
142
+          v-model="queryParams.socialSecurityUnit"
143
+          placeholder="请输入社保单位部分"
144
+          clearable
145
+          @keyup.enter.native="handleQuery"
146
+        />
147
+      </el-form-item>
148
+      <el-form-item label="个税" prop="individualIncomeTax">
149
+        <el-input
150
+          v-model="queryParams.individualIncomeTax"
151
+          placeholder="请输入个税"
152
+          clearable
153
+          @keyup.enter.native="handleQuery"
154
+        />
155
+      </el-form-item>
156
+      <el-form-item label="实发工资" prop="paidWage">
157
+        <el-input
158
+          v-model="queryParams.paidWage"
159
+          placeholder="请输入实发工资"
160
+          clearable
161
+          @keyup.enter.native="handleQuery"
162
+        />
163
+      </el-form-item>
164
+      <el-form-item label="发放日期" prop="payDay">
165
+        <el-date-picker clearable
166
+          v-model="queryParams.payDay"
167
+          type="date"
168
+          value-format="yyyy-MM-dd"
169
+          placeholder="请选择发放日期">
170
+        </el-date-picker>
171
+      </el-form-item>
172
+      <el-form-item label="发放月份" prop="payMonth">
173
+        <el-date-picker clearable
174
+          v-model="queryParams.payMonth"
175
+          type="date"
176
+          value-format="yyyy-MM-dd"
177
+          placeholder="请选择发放月份">
178
+        </el-date-picker>
179
+      </el-form-item>
180
+      <el-form-item>
181
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
182
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
183
+      </el-form-item>
184
+    </el-form>
185
+
186
+    <el-row :gutter="10" class="mb8">
187
+      <el-col :span="1.5">
188
+        <el-button
189
+          type="primary"
190
+          plain
191
+          icon="el-icon-plus"
192
+          size="mini"
193
+          @click="handleAdd"
194
+          v-hasPermi="['oa:wage:add']"
195
+        >新增</el-button>
196
+      </el-col>
197
+      <el-col :span="1.5">
198
+        <el-button
199
+          type="success"
200
+          plain
201
+          icon="el-icon-edit"
202
+          size="mini"
203
+          :disabled="single"
204
+          @click="handleUpdate"
205
+          v-hasPermi="['oa:wage:edit']"
206
+        >修改</el-button>
207
+      </el-col>
208
+      <el-col :span="1.5">
209
+        <el-button
210
+          type="danger"
211
+          plain
212
+          icon="el-icon-delete"
213
+          size="mini"
214
+          :disabled="multiple"
215
+          @click="handleDelete"
216
+          v-hasPermi="['oa:wage:remove']"
217
+        >删除</el-button>
218
+      </el-col>
219
+      <el-col :span="1.5">
220
+        <el-button
221
+          type="warning"
222
+          plain
223
+          icon="el-icon-download"
224
+          size="mini"
225
+          @click="handleExport"
226
+          v-hasPermi="['oa:wage:export']"
227
+        >导出</el-button>
228
+      </el-col>
229
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
230
+    </el-row>
231
+
232
+    <el-table v-loading="loading" :data="wageList" @selection-change="handleSelectionChange">
233
+      <el-table-column type="selection" width="55" align="center" />
234
+      <el-table-column label="工资id" align="center" prop="wageId" />
235
+      <el-table-column label="员工id" align="center" prop="userId" />
236
+      <el-table-column label="基础工资" align="center" prop="baseSalary" />
237
+      <el-table-column label="工龄工资" align="center" prop="yearSalary" />
238
+      <el-table-column label="岗位工资" align="center" prop="postSalary" />
239
+      <el-table-column label="绩效工资" align="center" prop="performanceSalary" />
240
+      <el-table-column label="注册测绘师" align="center" prop="certificatesSubsidy" />
241
+      <el-table-column label="过节补贴" align="center" prop="festivalSubsidy" />
242
+      <el-table-column label="稳岗补贴" align="center" prop="postStableSubsidy" />
243
+      <el-table-column label="高温补贴" align="center" prop="highTemperatureSubsidy" />
244
+      <el-table-column label="考勤扣款" align="center" prop="attendanceDeduct" />
245
+      <el-table-column label="应发小计" align="center" prop="payableWage" />
246
+      <el-table-column label="公积金" align="center" prop="houseFund" />
247
+      <el-table-column label="养老保险" align="center" prop="endowmentInsurance" />
248
+      <el-table-column label="失业保险" align="center" prop="unemploymentInsurance" />
249
+      <el-table-column label="医疗保险" align="center" prop="medicalInsurance" />
250
+      <el-table-column label="水韵物管费" align="center" prop="propertyFee" />
251
+      <el-table-column label="扣款小计" align="center" prop="deductTotal" />
252
+      <el-table-column label="社保单位部分" align="center" prop="socialSecurityUnit" />
253
+      <el-table-column label="个税" align="center" prop="individualIncomeTax" />
254
+      <el-table-column label="实发工资" align="center" prop="paidWage" />
255
+      <el-table-column label="发放日期" align="center" prop="payDay" width="180">
256
+        <template slot-scope="scope">
257
+          <span>{{ parseTime(scope.row.payDay, '{y}-{m}-{d}') }}</span>
258
+        </template>
259
+      </el-table-column>
260
+      <el-table-column label="发放月份" align="center" prop="payMonth" width="180">
261
+        <template slot-scope="scope">
262
+          <span>{{ parseTime(scope.row.payMonth, '{y}-{m}-{d}') }}</span>
263
+        </template>
264
+      </el-table-column>
265
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
266
+        <template slot-scope="scope">
267
+          <el-button
268
+            size="mini"
269
+            type="text"
270
+            icon="el-icon-edit"
271
+            @click="handleUpdate(scope.row)"
272
+            v-hasPermi="['oa:wage:edit']"
273
+          >修改</el-button>
274
+          <el-button
275
+            size="mini"
276
+            type="text"
277
+            icon="el-icon-delete"
278
+            @click="handleDelete(scope.row)"
279
+            v-hasPermi="['oa:wage:remove']"
280
+          >删除</el-button>
281
+        </template>
282
+      </el-table-column>
283
+    </el-table>
284
+    
285
+    <pagination
286
+      v-show="total>0"
287
+      :total="total"
288
+      :page.sync="queryParams.pageNum"
289
+      :limit.sync="queryParams.pageSize"
290
+      @pagination="getList"
291
+    />
292
+
293
+    <!-- 添加或修改员工工资对话框 -->
294
+    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
295
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
296
+        <el-form-item label="员工id" prop="userId">
297
+          <el-input v-model="form.userId" placeholder="请输入员工id" />
298
+        </el-form-item>
299
+        <el-form-item label="基础工资" prop="baseSalary">
300
+          <el-input v-model="form.baseSalary" placeholder="请输入基础工资" />
301
+        </el-form-item>
302
+        <el-form-item label="工龄工资" prop="yearSalary">
303
+          <el-input v-model="form.yearSalary" placeholder="请输入工龄工资" />
304
+        </el-form-item>
305
+        <el-form-item label="岗位工资" prop="postSalary">
306
+          <el-input v-model="form.postSalary" placeholder="请输入岗位工资" />
307
+        </el-form-item>
308
+        <el-form-item label="绩效工资" prop="performanceSalary">
309
+          <el-input v-model="form.performanceSalary" placeholder="请输入绩效工资" />
310
+        </el-form-item>
311
+        <el-form-item label="注册测绘师" prop="certificatesSubsidy">
312
+          <el-input v-model="form.certificatesSubsidy" placeholder="请输入注册测绘师" />
313
+        </el-form-item>
314
+        <el-form-item label="过节补贴" prop="festivalSubsidy">
315
+          <el-input v-model="form.festivalSubsidy" placeholder="请输入过节补贴" />
316
+        </el-form-item>
317
+        <el-form-item label="稳岗补贴" prop="postStableSubsidy">
318
+          <el-input v-model="form.postStableSubsidy" placeholder="请输入稳岗补贴" />
319
+        </el-form-item>
320
+        <el-form-item label="高温补贴" prop="highTemperatureSubsidy">
321
+          <el-input v-model="form.highTemperatureSubsidy" placeholder="请输入高温补贴" />
322
+        </el-form-item>
323
+        <el-form-item label="考勤扣款" prop="attendanceDeduct">
324
+          <el-input v-model="form.attendanceDeduct" placeholder="请输入考勤扣款" />
325
+        </el-form-item>
326
+        <el-form-item label="应发小计" prop="payableWage">
327
+          <el-input v-model="form.payableWage" placeholder="请输入应发小计" />
328
+        </el-form-item>
329
+        <el-form-item label="公积金" prop="houseFund">
330
+          <el-input v-model="form.houseFund" placeholder="请输入公积金" />
331
+        </el-form-item>
332
+        <el-form-item label="养老保险" prop="endowmentInsurance">
333
+          <el-input v-model="form.endowmentInsurance" placeholder="请输入养老保险" />
334
+        </el-form-item>
335
+        <el-form-item label="失业保险" prop="unemploymentInsurance">
336
+          <el-input v-model="form.unemploymentInsurance" placeholder="请输入失业保险" />
337
+        </el-form-item>
338
+        <el-form-item label="医疗保险" prop="medicalInsurance">
339
+          <el-input v-model="form.medicalInsurance" placeholder="请输入医疗保险" />
340
+        </el-form-item>
341
+        <el-form-item label="水韵物管费" prop="propertyFee">
342
+          <el-input v-model="form.propertyFee" placeholder="请输入水韵物管费" />
343
+        </el-form-item>
344
+        <el-form-item label="扣款小计" prop="deductTotal">
345
+          <el-input v-model="form.deductTotal" placeholder="请输入扣款小计" />
346
+        </el-form-item>
347
+        <el-form-item label="社保单位部分" prop="socialSecurityUnit">
348
+          <el-input v-model="form.socialSecurityUnit" placeholder="请输入社保单位部分" />
349
+        </el-form-item>
350
+        <el-form-item label="个税" prop="individualIncomeTax">
351
+          <el-input v-model="form.individualIncomeTax" placeholder="请输入个税" />
352
+        </el-form-item>
353
+        <el-form-item label="实发工资" prop="paidWage">
354
+          <el-input v-model="form.paidWage" placeholder="请输入实发工资" />
355
+        </el-form-item>
356
+        <el-form-item label="发放日期" prop="payDay">
357
+          <el-date-picker clearable
358
+            v-model="form.payDay"
359
+            type="date"
360
+            value-format="yyyy-MM-dd"
361
+            placeholder="请选择发放日期">
362
+          </el-date-picker>
363
+        </el-form-item>
364
+        <el-form-item label="发放月份" prop="payMonth">
365
+          <el-date-picker clearable
366
+            v-model="form.payMonth"
367
+            type="date"
368
+            value-format="yyyy-MM-dd"
369
+            placeholder="请选择发放月份">
370
+          </el-date-picker>
371
+        </el-form-item>
372
+      </el-form>
373
+      <div slot="footer" class="dialog-footer">
374
+        <el-button type="primary" @click="submitForm">确 定</el-button>
375
+        <el-button @click="cancel">取 消</el-button>
376
+      </div>
377
+    </el-dialog>
378
+  </div>
379
+</template>
380
+
381
+<script>
382
+import { listWage, getWage, delWage, addWage, updateWage } from "@/api/oa/wage/wage";
383
+
384
+export default {
385
+  name: "Wage",
386
+  data() {
387
+    return {
388
+      // 遮罩层
389
+      loading: true,
390
+      // 选中数组
391
+      ids: [],
392
+      // 非单个禁用
393
+      single: true,
394
+      // 非多个禁用
395
+      multiple: true,
396
+      // 显示搜索条件
397
+      showSearch: true,
398
+      // 总条数
399
+      total: 0,
400
+      // 员工工资表格数据
401
+      wageList: [],
402
+      // 弹出层标题
403
+      title: "",
404
+      // 是否显示弹出层
405
+      open: false,
406
+      // 查询参数
407
+      queryParams: {
408
+        pageNum: 1,
409
+        pageSize: 10,
410
+        userId: null,
411
+        baseSalary: null,
412
+        yearSalary: null,
413
+        postSalary: null,
414
+        performanceSalary: null,
415
+        certificatesSubsidy: null,
416
+        festivalSubsidy: null,
417
+        postStableSubsidy: null,
418
+        highTemperatureSubsidy: null,
419
+        attendanceDeduct: null,
420
+        payableWage: null,
421
+        houseFund: null,
422
+        endowmentInsurance: null,
423
+        unemploymentInsurance: null,
424
+        medicalInsurance: null,
425
+        propertyFee: null,
426
+        deductTotal: null,
427
+        socialSecurityUnit: null,
428
+        individualIncomeTax: null,
429
+        paidWage: null,
430
+        payDay: null,
431
+        payMonth: null
432
+      },
433
+      // 表单参数
434
+      form: {},
435
+      // 表单校验
436
+      rules: {
437
+      }
438
+    };
439
+  },
440
+  created() {
441
+    this.getList();
442
+  },
443
+  methods: {
444
+    /** 查询员工工资列表 */
445
+    getList() {
446
+      this.loading = true;
447
+      listWage(this.queryParams).then(response => {
448
+        this.wageList = response.rows;
449
+        this.total = response.total;
450
+        this.loading = false;
451
+      });
452
+    },
453
+    // 取消按钮
454
+    cancel() {
455
+      this.open = false;
456
+      this.reset();
457
+    },
458
+    // 表单重置
459
+    reset() {
460
+      this.form = {
461
+        wageId: null,
462
+        userId: null,
463
+        baseSalary: null,
464
+        yearSalary: null,
465
+        postSalary: null,
466
+        performanceSalary: null,
467
+        certificatesSubsidy: null,
468
+        festivalSubsidy: null,
469
+        postStableSubsidy: null,
470
+        highTemperatureSubsidy: null,
471
+        attendanceDeduct: null,
472
+        payableWage: null,
473
+        houseFund: null,
474
+        endowmentInsurance: null,
475
+        unemploymentInsurance: null,
476
+        medicalInsurance: null,
477
+        propertyFee: null,
478
+        deductTotal: null,
479
+        socialSecurityUnit: null,
480
+        individualIncomeTax: null,
481
+        paidWage: null,
482
+        payDay: null,
483
+        payMonth: null
484
+      };
485
+      this.resetForm("form");
486
+    },
487
+    /** 搜索按钮操作 */
488
+    handleQuery() {
489
+      this.queryParams.pageNum = 1;
490
+      this.getList();
491
+    },
492
+    /** 重置按钮操作 */
493
+    resetQuery() {
494
+      this.resetForm("queryForm");
495
+      this.handleQuery();
496
+    },
497
+    // 多选框选中数据
498
+    handleSelectionChange(selection) {
499
+      this.ids = selection.map(item => item.wageId)
500
+      this.single = selection.length!==1
501
+      this.multiple = !selection.length
502
+    },
503
+    /** 新增按钮操作 */
504
+    handleAdd() {
505
+      this.reset();
506
+      this.open = true;
507
+      this.title = "添加员工工资";
508
+    },
509
+    /** 修改按钮操作 */
510
+    handleUpdate(row) {
511
+      this.reset();
512
+      const wageId = row.wageId || this.ids
513
+      getWage(wageId).then(response => {
514
+        this.form = response.data;
515
+        this.open = true;
516
+        this.title = "修改员工工资";
517
+      });
518
+    },
519
+    /** 提交按钮 */
520
+    submitForm() {
521
+      this.$refs["form"].validate(valid => {
522
+        if (valid) {
523
+          if (this.form.wageId != null) {
524
+            updateWage(this.form).then(response => {
525
+              this.$modal.msgSuccess("修改成功");
526
+              this.open = false;
527
+              this.getList();
528
+            });
529
+          } else {
530
+            addWage(this.form).then(response => {
531
+              this.$modal.msgSuccess("新增成功");
532
+              this.open = false;
533
+              this.getList();
534
+            });
535
+          }
536
+        }
537
+      });
538
+    },
539
+    /** 删除按钮操作 */
540
+    handleDelete(row) {
541
+      const wageIds = row.wageId || this.ids;
542
+      this.$modal.confirm('是否确认删除员工工资编号为"' + wageIds + '"的数据项?').then(function() {
543
+        return delWage(wageIds);
544
+      }).then(() => {
545
+        this.getList();
546
+        this.$modal.msgSuccess("删除成功");
547
+      }).catch(() => {});
548
+    },
549
+    /** 导出按钮操作 */
550
+    handleExport() {
551
+      this.download('oa/wage/export', {
552
+        ...this.queryParams
553
+      }, `wage_${new Date().getTime()}.xlsx`)
554
+    }
555
+  }
556
+};
557
+</script>

Laden…
Annuleren
Opslaan