Commit 13906cde authored by 赵啸非's avatar 赵啸非

Merge remote-tracking branch 'origin/master'

parents 67a51d24 0a83a345
......@@ -19,6 +19,14 @@ export default {
watch: {
$route(route) {
this.query = Object.assign({}, this.query, route.query);
if (this.query.yearmonth == undefined) {
delete this.query.month;
delete this.query.year;
}
if (this.query.createTimeMonth == undefined) {
delete this.query.createTimeStart;
delete this.query.createTimeEnd;
}
this.getData();
},
},
......
......@@ -332,11 +332,30 @@ export default {
newData[item.name] = item.multiple ? [] : "";
}
});
delete this.$route.query.yearmonth;
delete this.$route.query.createTimeMonth;
this.form = Object.assign({}, this.form, newData);
this.onSubmit();
},
onSubmit() {
let { path, query } = this.$route;
if (this.form.yearmonth) {
let arr = this.form.yearmonth.split("-");
this.form.year = arr[0];
this.form.month = arr[1];
} else {
this.form.year = undefined;
this.form.month = undefined;
}
if (this.form.createTimeMonth) {
this.form.createTimeStart = this.form.createTimeMonth + "-01";
this.form.createTimeEnd = this.form.createTimeMonth + "-31";
} else {
this.form.createTimeStart = undefined;
this.form.createTimeEnd = undefined;
}
if (this.form.attendanceDateStart && this.form.attendanceDateEnd) {
let startValue = Date.parse(this.form.attendanceDateStart);
let endValue = Date.parse(this.form.attendanceDateEnd);
......@@ -375,9 +394,21 @@ export default {
delete this.form.summaryTimeEnd;
}
let params = JSON.parse(JSON.stringify(this.form)); //不更改原始数据
console.log(this.form, "form参数");
let data = this.decode(params);
// Object.assign({}, query, data)
console.log({
...query,
...data,
});
if (!query.yearmonth) {
query.year = undefined;
query.month = undefined;
}
if (!query.createTimeMonth) {
query.createTimeEnd = undefined;
query.createTimeStart = undefined;
}
this.$router.push({
path: path,
query: {
......
......@@ -182,9 +182,9 @@ export default {
fuzzy: false,
},
{
name: "createTime",
type: "datetime",
label: "请选择日期",
name: "createTimeMonth",
type: "month",
label: "请选择月份",
fuzzy: false,
},
{
......
......@@ -189,9 +189,9 @@ export default {
fuzzy: false,
},
{
name: "createTime",
type: "datetime",
label: "请选择日期",
name: "createTimeMonth",
type: "month",
label: "请选择月份",
fuzzy: false,
},
{
......
......@@ -184,9 +184,9 @@ export default {
},
{
name: "createTime",
type: "datetime",
label: "请选择开始日期",
name: "createTimeMonth",
type: "month",
label: "请选择月份",
fuzzy: false,
},
{
......
......@@ -183,9 +183,9 @@ export default {
fuzzy: false,
},
{
name: "createTime",
type: "datetime",
label: "请选择日期",
name: "createTimeMonth",
type: "month",
label: "请选择月份",
fuzzy: false,
},
{
......
......@@ -182,9 +182,9 @@ export default {
fuzzy: false,
},
{
name: "createTime",
type: "datetime",
label: "请选择日期",
name: "createTimeMonth",
type: "month",
label: "请选择月份",
fuzzy: false,
},
{
......
......@@ -188,9 +188,9 @@ export default {
fuzzy: false,
},
{
name: "createTime",
type: "datetime",
label: "请选择日期",
name: "createTimeMonth",
type: "month",
label: "请选择月份",
fuzzy: false,
},
{
......
......@@ -190,9 +190,9 @@ export default {
fuzzy: false,
},
{
name: "createTime",
type: "datetime",
label: "请选择日期",
name: "createTimeMonth",
type: "month",
label: "请选择月份",
fuzzy: false,
},
{
......
......@@ -196,9 +196,9 @@ export default {
fuzzy: false,
},
{
name: "createTime",
type: "datetime",
label: "请选择日期",
name: "createTimeMonth",
type: "month",
label: "请选择月份",
fuzzy: false,
},
{
......
......@@ -192,9 +192,9 @@ export default {
},
{
name: "createTime",
type: "datetime",
label: "请选择日期",
name: "createTimeMonth",
type: "month",
label: "请选择月份",
fuzzy: false,
},
{
......
......@@ -190,9 +190,9 @@ export default {
fuzzy: false,
},
{
name: "createTime",
type: "datetime",
label: "请选择日期",
name: "createTimeMonth",
type: "month",
label: "请选择月份",
fuzzy: false,
},
{
......
......@@ -190,9 +190,9 @@ export default {
fuzzy: false,
},
{
name: "createTime",
type: "datetime",
label: "请选择日期",
name: "createTimeMonth",
type: "month",
label: "请选择月份",
fuzzy: false,
},
{
......
......@@ -196,9 +196,9 @@ export default {
fuzzy: false,
},
{
name: "createTime",
type: "datetime",
label: "请选择日期",
name: "createTimeMonth",
type: "month",
label: "请选择月份",
fuzzy: false,
},
{
......
......@@ -78,7 +78,9 @@
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item>
<el-button type="text" @click="syncPerson">同步数据</el-button>
<el-button type="text" @click="syncPerson"
>同步数据</el-button
>
</el-dropdown-item>
<el-dropdown-item>
<el-button type="text" @click="handleImport"
......@@ -100,7 +102,13 @@
<span class="freshTime" slot="table-head-left2">
<i class="el-icon-refresh"></i>
<span>上次同步时间:{{ tableData.staff.refreshDate }}</span>
<span
>上次同步时间:{{
tableData.staff
? tableData.staff.refreshDate
: "--"
}}</span
>
</span>
</LayoutTable>
</el-row>
......@@ -223,7 +231,7 @@ export default {
syncPerson() {
this.$post("/staff/syncPersons", {}).then((res) => {
if (res.code == 1) {
this.$message.success(res.msg)
this.$message.success(res.msg);
}
});
},
......@@ -474,12 +482,18 @@ export default {
}
.mytree ::v-deep {
.el-tree--highlight-current ::v-deep .el-tree-node.is-checked > .el-tree-node__content {
.el-tree--highlight-current
::v-deep
.el-tree-node.is-checked
> .el-tree-node__content {
background-color: rgb(255, 255, 255);
color: rgb(64, 158, 255);
}
.el-tree--highlight-current ::v-deep .el-tree-node.is-current > .el-tree-node__content {
.el-tree--highlight-current
::v-deep
.el-tree-node.is-current
> .el-tree-node__content {
background-color: rgb(255, 255, 255);
color: rgb(64, 158, 255);
}
......
......@@ -27,6 +27,7 @@ export default {
},
mixins: [table],
created() {},
methods: {
/** 导出Excel */
doExport() {
......@@ -65,9 +66,9 @@ export default {
isshowTabPane: true,
search: [
{
name: "createTimeStart",
type: "date",
label: "月份",
name: "yearmonth",
type: "month",
label: "请选择月份",
fuzzy: false,
},
......
......@@ -2,159 +2,199 @@
<div>
<el-card>
<div class="flex flex flex-pack-justify" style="margin:10px 0">
<div style="color:rgb(20, 134, 248);font-weight:bold;padding: 0 20px;">个人主页</div>
<el-button type="primary" @click="$router.back()" size="small">返回上级</el-button>
<div style="color:rgb(20, 134, 248);font-weight:bold;padding: 0 20px;">
个人主页
</div>
<el-button type="primary" @click="$router.back()" size="small"
>返回上级</el-button
>
</div>
<div class="persons">
<div class="cell1 flex">
<el-image
style="width: 120px; height: 150px"
:src="allinfo.photoPath"
:preview-src-list="allinfo.photoPath">
:src="
allinfo.photoPath
? allinfo.photoPath
: require('../../assets/images/avtar.png')
"
:preview-src-list="
allinfo.photoPath
? [allinfo.photoPath]
: [require('../../assets/images/avtar.png')]
"
>
</el-image>
<div class="content ml20">
<div class="c1">
<span>{{info.workName}}</span>
<span>{{ info.workName }}</span>
<!-- 格式 -->
<span class="tags">{{dict.status[allinfo.status]}}</span>
<span class="tags">{{
dict.status ? dict.status[allinfo.status] : ""
}}</span>
</div>
<div class="c2">
<!-- - {{allinfo.positionName}} -->
<span>{{allinfo.deptName}}</span>
<span style="margin:0 10px">|</span>
<span>{{info.workLimit}}</span>
<span>{{ allinfo.deptName }}</span>
<!-- <span style="margin:0 10px">|</span>
<span>{{ info.workLimit }}</span> -->
</div>
</div>
</div>
<div class="cell2">
<div class="title">成长记录</div>
<div class="title">个人信息</div>
<div class="flex">
<div class="history">
<div class="times">{{info.workBeginDay}}</div>
<div>入职时间</div>
<span>工号:</span>
<span class="times">{{ allinfo.workNum }}</span>
</div>
<div class="history">
<span>性别:</span>
<span class="times">{{
dict.gender ? dict.gender[allinfo.gender] : "--"
}}</span>
</div>
<div class="history">
<div class="times">{{info.workFormalDay}}</div>
<div>转正时间</div>
<span>政治面貌:</span>
<span class="times">{{
dict.politicalstatus
? dict.politicalstatus[allinfo.politicalstatus]
: "--"
}}</span>
</div>
<div class="history">
<span>员工状态:</span>
<span class="times">{{
dict.status ? dict.status[allinfo.status] : "--"
}}</span>
</div>
<div class="history">
<span>手机号:</span>
<span class="times">{{ allinfo.phoneNumber }}</span>
</div>
</div>
</div>
<div class="cell2">
<div class="title flex flex-pack-justify">
<div>本月假勤统计</div>
<div class="times">更多记录</div>
<!-- <div class="times">更多记录</div> -->
</div>
<div class="flex flex-pack-justify" style="margin-top:10px">
<div class="flex">
<div>实际出勤天数</div>
<div class="times ml20">{{info.attendanceCount}}</div>
<div class="times ml20">{{ info.attendanceCount }}</div>
</div>
<div class="flex">
<div>请假天数</div>
<div class="times ml20">{{info.leaveCount}}</div>
<div class="times ml20">{{ info.leaveCount }}</div>
</div>
</div>
<div class="flex flex-pack-justify" style="margin-top:10px">
<div class="flex">
<div>迟到早退次数</div>
<div class="times ml20">{{info.lateCount}}</div>
<div class="times ml20">{{ info.lateCount }}</div>
</div>
<div class="flex">
<div>旷工天</div>
<div class="times ml20">{{info.minerCount}}</div>
<div>缺卡次</div>
<div class="times ml20">{{ info.lackCardCount }}</div>
</div>
</div>
<div class="flex flex-pack-justify" style="margin-top:10px">
<!-- <div class="flex flex-pack-justify" style="margin-top:10px">
<div class="flex">
<div>缺卡次数</div>
<div class="times ml20">{{info.lackCardCount}}</div>
<div class="times ml20">{{ info.lackCardCount }}</div>
</div>
<div class="flex">
<div>加班天数</div>
<div class="times ml20">{{info.workOverDay}}</div>
</div>
<div class="times ml20">{{ info.workOverDay }}</div>
</div>
</div> -->
</div>
<div class="cell2">
<!-- <div class="cell2">
<div class="title">当前剩余假期</div>
<div class="flex flex-pack-justify" style="margin-top:10px">
<div class="flex">
<div>调休</div>
<div class="times ml20">{{info.compensatoryDay}}</div>
<div class="times ml20">{{ info.compensatoryDay }}</div>
</div>
<div class="flex">
<div>婚假</div>
<div class="times ml20">{{info.marriageHoliday}}</div>
<div class="times ml20">{{ info.marriageHoliday }}</div>
</div>
</div>
<div class="flex flex-pack-justify" style="margin-top:10px">
<div class="flex">
<div>年假</div>
<div class="times ml20">{{info.winterHoliday}}</div>
<div class="times ml20">{{ info.winterHoliday }}</div>
</div>
<div class="flex">
<div>陪产假</div>
<div class="times ml20">{{info.paternityLeaveDay}}</div>
</div>
<div class="times ml20">{{ info.paternityLeaveDay }}</div>
</div>
</div>
</div> -->
</div>
</el-card>
</div>
</template>
<script>
import {timestampToTime} from '@/assets/utils/dateFormat.js'
export default {
components: {
},
import { timestampToTime } from "@/assets/utils/dateFormat.js";
export default {
components: {},
methods: {
getdata(id){
this.$get('/staff/info',{id}).then(res => {
if(res.code == 1){
this.info = res.data.holidayLists[0]
this.dict = res.dict
this.allinfo = res.data//总
this.info.workBeginDay = this.info.workBeginDay?timestampToTime(Number(this.info.workBeginDay),3):'-'
this.info.workFormalDay = this.info.workFormalDay?timestampToTime(Number(this.info.workFormalDay),3):'-'
getdata(id) {
this.$get("/staff/info", { id })
.then((res) => {
if (res.code == 1) {
this.info = res.data.holidayLists[0];
this.dict = res.dict;
this.allinfo = res.data; //总
this.info.workBeginDay = this.info.workBeginDay
? timestampToTime(Number(this.info.workBeginDay), 3)
: "-";
this.info.workFormalDay = this.info.workFormalDay
? timestampToTime(Number(this.info.workFormalDay), 3)
: "-";
}
})
.catch(err => {
this.$message.error(err.message)
})
}
.catch((err) => {
this.$message.error(err.message);
});
},
},
data() {
return {
info:{},
allinfo:{},
dict:[]
}
info: {},
allinfo: {},
dict: [],
};
},
created(){
this.getdata(this.$route.query.id)
}
}
created() {
this.getdata(this.$route.query.id);
},
};
</script>
<style lang="less">
.persons{
.persons {
width: 100%;
padding: 0 20px;
.title{
.title {
font-weight: bold;
}
.cell1{
.cell1 {
// .avator{
// width: 120px;
// height: 150px;
// background-color: aliceblue;
// }
.c2{
.c2 {
color: #999;
font-size: 12px;
margin-top: 10px;
}
.tags{
.tags {
background: aliceblue;
padding: 5px;
border-radius: 5px;
......@@ -162,18 +202,17 @@
font-size: 14px;
}
}
.cell2{
.cell2 {
background-color: rgb(247, 246, 246);
border-radius: 10px;
margin-top: 20px;
font-size: 15px;
padding: 10px 15px;
.history{
.history {
margin-right: 50px;
margin-top: 20px;
}
.times{
.times {
color: rgb(20, 134, 248);
}
}
......
......@@ -157,15 +157,15 @@ public class DingMessageController {
String leave_name = "事假";
if(result.getFormComponentValues().size() > 0 ){
JSONArray jsonArray = JSONArray.parseArray(result.getFormComponentValues().get(0).getValue());
if(jsonArray.size() > 0){
if(jsonArray!= null && jsonArray.size() > 0){
Date startTime1 = dateFormat(jsonArray.get(0).toString(),"yyyy-MM-dd HH:mm",true);
leaveRecordEntity.setStartTime(startTime1);
}
if(jsonArray.size() > 1){
if(jsonArray!= null && jsonArray.size() > 1){
Date endTime1 = dateFormat(jsonArray.get(1).toString(),"yyyy-MM-dd HH:mm",false);
leaveRecordEntity.setEndTime(endTime1);
}
if(jsonArray.size() > 2){
if(jsonArray!= null && jsonArray.size() > 2){
if(jsonArray.size() > 3){
switch (jsonArray.get(3).toString()){
case "halfDay":
......@@ -182,7 +182,7 @@ public class DingMessageController {
}
}
if(jsonArray.size() > 4){
if(jsonArray!= null && jsonArray.size() > 4){
leave_name = jsonArray.get(4).toString();
switch (leave_name){
case "调休":
......
......@@ -43,10 +43,10 @@ public class AttendanceLeaveRecordController extends BaseCRUDJsonBodyMappingCont
private DeptService deptService;
@Autowired
private WorkmanService workmanService;
// @Autowired
// private UserService userService;
@Autowired
private IUserFeign iUserFeign;
private UserService userService;
// @Autowired
// private IUserFeign iUserFeign;
public AttendanceLeaveRecordController(){
super.setModuleDesc( "请假记录信息");
......@@ -59,20 +59,20 @@ public class AttendanceLeaveRecordController extends BaseCRUDJsonBodyMappingCont
this.addDict(model, "leaveType", paramService.getParamBySecondOrganize("AttendanceLeaveRecord","leaveType"));
this.addDict(model, "auditResult", AppealResultEnum.getEnumMap());
this.addDict(model, "processStatus", ProcessStatusEnum.getEnumMap());
// this.addDict(model, "createUserId", userService.find(new UserQuery()).stream().collect(toMap(x -> x.getId().toString(), y -> y.getRealName(), (o, n) -> n)));
//从门户获取登录用户信息
UserPdu userPdu = new UserPdu();
userPdu.setSize(-1);
List <UserPdu> userPduList = iUserFeign.list(userPdu).getData().getData();
Map<String, String> ans = new HashMap<>();
for(UserPdu str: userPduList) {
if(str != null) { //增加非空判断
ans.put(str.getId().toString(), str.getRealName());
}
}
this.addDict(model, "createUserId", userService.find(new UserQuery()).stream().collect(toMap(x -> x.getId().toString(), y -> y.getRealName(), (o, n) -> n)));
this.addDict(model, "createUserId", ans);
// //从门户获取登录用户信息
// UserPdu userPdu = new UserPdu();
// userPdu.setSize(-1);
// List <UserPdu> userPduList = iUserFeign.list(userPdu).getData().getData();
// Map<String, String> ans = new HashMap<>();
// for(UserPdu str: userPduList) {
// if(str != null) { //增加非空判断
// ans.put(str.getId().toString(), str.getRealName());
// }
// }
//
// this.addDict(model, "createUserId", ans);
super.init(model, context);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment