dev_xds
haha 2023-08-16 01:19:31 +08:00
commit 723c28b1c6
6 changed files with 133 additions and 69 deletions

View File

@ -105,6 +105,9 @@ export default {
projectId: this.project.id,
}).then((d) => {
this.form = d.rows[0];
this.form.oldServicePersonnel = this.form.servicePersonnel;
this.form.oldSupervisorPersonnel = this.form.supervisorPersonnel;
this.form.oldContractorPersonnel = this.form.contractorPersonnel;
});
}
});

View File

@ -1,5 +1,5 @@
<template>
<div class="prject-attendance-drawer">
<div class="projectect-attendance-drawer">
<el-drawer
v-if="isOpen"
:visible.sync="isOpen"
@ -10,20 +10,50 @@
<template slot="title">
<div>{{ title + " 【今日出勤】" }}</div>
</template>
<el-form label-width="120px" ref="frm1" :model="formData" :rules="rules">
<el-form-item label="出勤查询" prop="workDate">
<el-date-picker
clearable
v-model="queryParams.workDate"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择出勤时间"
>
</el-date-picker>
</el-form-item>
<el-tabs v-model="activeName" style="padding-left: 20px">
<el-tab-pane
v-for="(it, idx) in nodes"
:label="it.unitName + ''"
:name="it.unitId + ''"
:key="idx"
></el-tab-pane>
</el-tabs>
<el-form label-width="120px" ref="form" :rules="rules">
<div
style="
padding: 8px 16px;
background-color: #ecf8ff;
border-radius: 4px;
border-left: 5px solid #50bfff;
margin: 20px;
"
>
<el-form-item label="在册劳务人员" prop="servicePersonnel">
<el-input style="width: 80%" v-model="vform.servicePersonnel" :readonly="true"
><i slot="suffix"></i></el-input
>
</el-form-item>
<el-form-item label="在册管理人员" prop="supervisorPersonnel">
<el-input
style="width: 80%"
v-model="vform.supervisorPersonnel"
:readonly="true"
><i slot="suffix"></i></el-input
>
</el-form-item>
<el-form-item label="在册总包人员" prop="contractorPersonnel">
<el-input
style="width: 80%"
v-model="vform.contractorPersonnel"
:readonly="true"
><i slot="suffix"></i></el-input
>
</el-form-item>
</div>
<el-form-item label="劳务人员" prop="servicePersonnel">
<el-input-number
v-model="formData.servicePersonnel"
style="width: 80%"
v-model="form.servicePersonnel"
:min="0"
:max="10000"
label="请输入劳务人员"
@ -31,7 +61,8 @@
</el-form-item>
<el-form-item label="管理人员" prop="supervisorPersonnel">
<el-input-number
v-model="formData.supervisorPersonnel"
style="width: 80%"
v-model="form.supervisorPersonnel"
:min="0"
:max="10000"
label="请输入管理人员"
@ -39,7 +70,8 @@
</el-form-item>
<el-form-item label="总包人员" prop="contractorPersonnel">
<el-input-number
v-model="formData.contractorPersonnel"
style="width: 80%"
v-model="form.contractorPersonnel"
:min="0"
:max="10000"
label="请输入总包人员"
@ -56,26 +88,23 @@
<script>
import { mapGetters } from "vuex";
import { selectByDate } from "@/api/project/surProjectAttendance";
import {
unitList,
listProjectDeptWroks2,
updateProjectDeptWroks,
} from "@/api/project/projectDeptWroks";
export default {
name: "RuoyiUiAttendanceDrawer",
name: "RuoyiUiProjectDeptWroksDrawer",
data() {
return {
isOpen: false,
prj: null,
project: null,
title: "",
oldData: null,
formData: {
servicePersonnel: 0,
supervisorPersonnel: 0,
contractorPersonnel: 0,
},
queryParams: {
prijectId: null,
workDate: null,
},
nodes: [],
vform: {},
form: {},
rules: {},
activeName: "",
};
},
computed: {
@ -84,25 +113,35 @@ export default {
mounted() {},
methods: {
doOk() {},
doOk() {
updateProjectDeptWroks(this.form).then((response) => {
this.$modal.msgSuccess("保存成功");
this.isOpen = false;
});
},
doCanel() {
this.isOpen = false;
},
show(prj) {
this.prj = prj;
this.title = prj.projectName;
show(project) {
this.project = project;
this.title = project.projectName;
this.isOpen = true;
selectByDate({
prijectId: prj.id,
deptId: this.dept.deptId,
createTime: +new Date(),
unitList({
projectId: project.id,
unitType: 2,
}).then((d) => {
let tmps = d.data || [];
this.oldData = tmps.length > 0 ? tmps[0] : null;
this.nodes = d.rows;
if (this.nodes.length > 0) {
this.activeName = this.nodes[0].unitId + "";
listProjectDeptWroks2({
projectId: this.project.id,
}).then((d) => {
this.vform = d.rows[0];
});
}
});
},
},
};
</script>
<style lang="scss" scoped></style>

View File

@ -42,6 +42,10 @@ public class SurProjectDeptWroks extends BaseEntity
@Excel(name = "总包人员")
private Long contractorPersonnel;
private Integer oldServicePersonnel;
private Integer oldSupervisorPersonnel;
private Integer oldContractorPersonnel;
public void setId(Long id)
{
this.id = id;
@ -105,6 +109,30 @@ public class SurProjectDeptWroks extends BaseEntity
this.deptName = deptName;
}
public Integer getOldServicePersonnel() {
return oldServicePersonnel;
}
public void setOldServicePersonnel(Integer oldServicePersonnel) {
this.oldServicePersonnel = oldServicePersonnel;
}
public Integer getOldSupervisorPersonnel() {
return oldSupervisorPersonnel;
}
public void setOldSupervisorPersonnel(Integer oldSupervisorPersonnel) {
this.oldSupervisorPersonnel = oldSupervisorPersonnel;
}
public Integer getOldContractorPersonnel() {
return oldContractorPersonnel;
}
public void setOldContractorPersonnel(Integer oldContractorPersonnel) {
this.oldContractorPersonnel = oldContractorPersonnel;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

View File

@ -57,7 +57,15 @@ public interface SurProjectDeptWroksMapper
* @param surProjectDeptWroks
* @return
*/
public int updateProjectDeptWorksById(SurProjectDeptWroks surProjectDeptWroks);
public int updateProjectDeptWorks1(SurProjectDeptWroks surProjectDeptWroks);
/**
*
*
* @param surProjectDeptWroks
* @return
*/
public int updateProjectDeptWorks2(SurProjectDeptWroks surProjectDeptWroks);
/**
*

View File

@ -82,12 +82,12 @@ public class SurProjectDeptWroksServiceImpl implements ISurProjectDeptWroksServi
if(surProjectDeptWroks.getId()!=null){
surProjectDeptWroks.setUpdateBy(SecurityUtils.getUsername());
surProjectDeptWroks.setUpdateTime(DateUtils.getNowDate());
int res = surProjectDeptWroksMapper.updateProjectDeptWorksById(surProjectDeptWroks);
int res = surProjectDeptWroksMapper.updateProjectDeptWorks2(surProjectDeptWroks);
return surProjectDeptWroksMapper.updateSurProjectDeptWroks(surProjectDeptWroks);
}else{
surProjectDeptWroks.setCreateBy(SecurityUtils.getUsername());
surProjectDeptWroks.setCreateTime(DateUtils.getNowDate());
int res = surProjectDeptWroksMapper.updateProjectDeptWorksById(surProjectDeptWroks);
int res = surProjectDeptWroksMapper.updateProjectDeptWorks1(surProjectDeptWroks);
return surProjectDeptWroksMapper.insertSurProjectDeptWroks(surProjectDeptWroks);
}
}

View File

@ -118,35 +118,21 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</foreach>
</delete>
<update id="updateProjectDeptWorksById" parameterType="SurProjectDeptWroks">
<update id="updateProjectDeptWorks1" parameterType="SurProjectDeptWroks">
UPDATE sur_project sp
SET sp.servicePersonnel = (IFNULL(sp.servicePersonnel,0) - (
SELECT
IFNULL(service_personnel,0)
FROM
sur_project_dept_wroks
WHERE
project_id = sp.id
AND dept_id =#{deptId}
)) +#{servicePersonnel}, sp.supervisorPersonnel = (IFNULL(sp.supervisorPersonnel,0) - (
SELECT
IFNULL(supervisor_personnel,0)
FROM
sur_project_dept_wroks
WHERE
project_id = sp.id
AND dept_id =#{deptId}
)) +#{supervisorPersonnel}, sp.generalContractor = (IFNULL(sp.generalContractor,0) - (
SELECT
IFNULL(contractor_personnel,0)
FROM
sur_project_dept_wroks
WHERE
project_id = sp.id
AND dept_id =#{deptId}
)) +#{contractorPersonnel}
SET sp.servicePersonnel = sp.servicePersonnel+#{servicePersonnel},
sp.supervisorPersonnel = sp.supervisorPersonnel+#{supervisorPersonnel},
sp.generalContractor = sp.generalContractor+#{contractorPersonnel}
WHERE
id = #{projectId}
</update>
<update id="updateProjectDeptWorks2" parameterType="SurProjectDeptWroks">
UPDATE sur_project sp
SET sp.servicePersonnel = sp.servicePersonnel-#{oldServicePersonnel}+#{servicePersonnel},
sp.supervisorPersonnel = sp.supervisorPersonnel-#{oldSupervisorPersonnel}+#{supervisorPersonnel},
sp.generalContractor = sp.generalContractor-#{oldContractorPersonnel}+#{contractorPersonnel}
WHERE
id = #{projectId}
</update>
</mapper>