Commit 991a067c authored by dll's avatar dll

提交

parents 767f6e95 4dffb1e2
......@@ -35,20 +35,14 @@
</el-row>
<form-buttons @submit='submitForm' noCancelBtn />
</el-form> -->
<div>
</div>
</el-drawer>
</template>
<script>
import form from "@/assets/mixins/formdialog";
export default {
import form from "@/assets/mixins/formdialog";
export default {
name: "AttendanceVacationBalanceDetail",
mixins: [form],
components: {
},
components: {},
created() {
this.changePath("attendance/vacation/balance")
},
......@@ -121,11 +115,16 @@
deptId : null,
deptName : "",
entryTime : null,
personalLeaveDays : BigDecimal.valueOf(0),
compensatedLeaveDays : BigDecimal.valueOf(0),
sickLeaveDays : BigDecimal.valueOf(0),
annualLeaveDays : BigDecimal.valueOf(0),
marriageLeaveDays : BigDecimal.valueOf(0),
personalLeaveDays : 0,
compensatedLeaveDays : 0,
sickLeaveDays : 0,
annualLeaveDays : 0,
maternityLeaveDays : 0,
paternityLeaveDays : 0,
marriageLeaveDays : 0,
menstrualLeaveDays : 0,
breastfeedingLeaveDays : 0,
bereavementLeaveDays : 0,
remark : "",
};
this.resetForm("form");
......@@ -136,9 +135,9 @@
}
},
},
};
};
</script>
<style scoped>
<style scoped lang="less">
.tips{
font-size: 14px;
color: #999;
......
......@@ -9,14 +9,14 @@
</template>
<script>
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
name: "AttendanceVacationBalanceList",
components: {
drawerShow
},
},
mixins: [table],
created() {
},
......@@ -33,60 +33,42 @@
toView(row) {
this.$refs.drawerform.view(row);
},
doExport(){
this.isExport = true;
this.$download("/leave/record/exportExcel", {
"idList": this.selection,
'name': this.$route.query['name'],
}, { type: "excel" }).then(() => this.isExport = false).catch(error => {
this.isExport = false;
this.$message.error(error.message);
/** 查看不同类型假期记录 */
handleCountDays(row,leavetype){
this.$post("/attendance/vacation/record/list", {
page: 1,
size: -1,
type:leavetype,
staffId:row.staffId
})
},
.then((res) => {
if (res.code == 1) {
//todo 抽屉打开 假期明细信息
//this.$message.success("激活设备成功!");
}
})
.catch((error) => {
this.$message.error(error.message);
});
}
},
data() {
return {
isExport:false,
config: {
isshowTabPane:true,
search: [
{
name: "staffId",
type: "text",
label: "员工",
fuzzy: true
},
{
name: "deptId",
type: "select",
label: "全部部门",
fuzzy: true
},
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
// {label: "员工id", prop: "staffId", formatter: this.formatter},
{label: "员工姓名", prop: "staffName"},
// {label: "部门id", prop: "deptId", formatter: this.formatter},
{label: "部门名称", prop: "deptName"},
{label: "入职时间", prop: "entryTime", formatter: this.formatterDate},
{label: "事假(天)", prop: "personalLeaveDays", formatter: this.formatterMoney},
{label: "调休(天)", prop: "compensatedLeaveDays", formatter: this.formatterMoney},
{label: "病假(天)", prop: "sickLeaveDays", formatter: this.formatterMoney},
{label: "年假(天)", prop: "annualLeaveDays", formatter: this.formatterMoney},
{label: "婚假(tian)", prop: "marriageLeaveDays", formatter: this.formatterMoney},
// {label: "创建用户", prop: "createUserId", formatter: this.formatter},
{
label: "操作",
......@@ -95,12 +77,12 @@
return (
<table-buttons noAdd noEdit noView noDel row={row}
onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
);
)
}
}
]
}
};
}
};
}
}
</script>
<template>
<!-- 弹出框表单 -->
<el-dialog :title="title" :visible.sync="open" width="90%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="员工id" prop="staffId" v-model="form.staffId" placeholder="请输入员工id"/>
<Field label="员工姓名" prop="staffName" v-model="form.staffName" type="textarea" placeholder="请输入员工姓名"/>
<Field label="请假类型" prop="type" v-model="form.type" type="select" :enumData="dict.type" placeholder="请选择请假类型"/>
<Field label="增减类型" prop="subAddType" v-model="form.subAddType" type="select" :enumData="dict.subAddType" placeholder="请选择增减类型"/>
<Field label="有效期" prop="validityPeriod" v-model="form.validityPeriod" type="textarea" placeholder="请输入有效期"/>
<Field label="增加或扣减天数" prop="subOrAddDays" v-model="form.subOrAddDays" placeholder="请输入增加或扣减天数"/>
<Field label="内容"><editor v-model="form.content" :min-height="256"/></Field>
<Field label="规则" prop="rule" v-model="form.rule" type="textarea" placeholder="请输入规则"/>
<Field label="理由" prop="reason" v-model="form.reason" type="textarea" placeholder="请输入理由"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" v-if="pageInfo.type !== 'view'" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import form from "@/assets/mixins/formdialog";
import dialogShow from "./dialogshow";
import Editor from '@/components/Editor';
export default {
mixins: [form],
components: {
dialogShow ,
Editor,
},
data() {
return {
// 遮罩层
loading: true,
// 弹出层标题
title: "员工假期记录信息",
// 是否显示弹出层
open: false,
toString:[
"type",
"subAddType",
],
// 表单校验
rules: {
}
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="attendance/vacation/record/edit";
this.getData();
this.pageInfo.type="edit"
this.title = "修改员工假期记录信息";
},
/** 新增 */
add(row) {
this.reset()
this.urls.currUrl = "attendance/vacation/record/add";
this.getData();
this.pageInfo.type="add"
this.title = "新增员工假期记录信息";
},
/** 查看*/
view(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="attendance/vacation/record/view";
this.getData();
this.pageInfo.type="view"
this.title = "员工假期记录信息详细";
},
/**取消按钮 */
cancel() {
this.open = false;
},
/**获取数据后弹框 */
afterRender(data) {
this.open = true;
},
afterSubmit(data) {
this.open = false;
this.$emit("ok");
},
// 表单重置
reset() {
this.form = {
staffId : null,
staffName : "",
type : null,
subAddType : 1,
validityPeriod : "0",
subOrAddDays : BigDecimal.valueOf(0),
content : "",
rule : "",
reason : "",
remark : "",
};
this.resetForm("form");
},
resetForm(refName) {
if (this.$refs[refName]) {
this.$refs[refName].resetFields();
}
},
},
};
</script>
<template>
<div class="page">
<LayoutTable :data="tableData" :config="tableConfig">
</LayoutTable>
<dialog-show ref="dialogform" @ok="getData" />
</div>
</template>
<script>
/** 表单弹出框模式需引入 */
import dialogShow from "./dialogshow";
import table from "@/assets/mixins/table";
export default {
name: "AttendanceVacationRecordList",
components: {
dialogShow
},
mixins: [table],
created() {
},
methods: {
/** 重写新增方法 */
toAdd(row) {
this.$refs.dialogform.add(row);
},
/** 重写编辑方法 */
toEdit(row) {
this.$refs.dialogform.edit(row);
},
/** 重写查看方法 */
toView(row) {
this.$refs.dialogform.view(row);
},
},
data() {
return {
config: {
search: [
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "员工id", prop: "staffId", formatter: this.formatter},
{label: "员工姓名", prop: "staffName"},
{label: "请假类型", prop: "type",formatter: this.formatter},
{label: "增减类型", prop: "subAddType",formatter: this.formatter},
{label: "有效期", prop: "validityPeriod"},
{label: "增加或扣减天数", prop: "subOrAddDays", formatter: this.formatterMoney},
{label: "创建用户", prop: "createUserId", formatter: this.formatter},
{
label: "操作",
width: 240,
formatter: row => {
return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
);
}
}
]
}
};
}
};
</script>
\ No newline at end of file
<template>
<layout-view>
<el-descriptions :title="title" :column="column" :size="size" :colon="false" border>
<template slot="title">
<i class="el-icon-tickets"></i>
基本详细信息
</template>
<template slot="extra">
<el-button type="primary" @click="$router.go(-1)" size="small">返回</el-button>
</template>
<el-descriptions-item label="员工id" label-class-name="labelClass" content-class-name="contentClass">
{{form.staffId}}
</el-descriptions-item>
<el-descriptions-item label="员工姓名" label-class-name="labelClass" content-class-name="contentClass">
{{form.staffName}}
</el-descriptions-item>
<el-descriptions-item label="请假类型" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("type", form.type) }}
</el-descriptions-item>
<el-descriptions-item label="增减类型" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("subAddType", form.subAddType) }}
</el-descriptions-item>
<el-descriptions-item label="有效期" label-class-name="labelClass" content-class-name="contentClass">
{{form.validityPeriod}}
</el-descriptions-item>
<el-descriptions-item label="增加或扣减天数" label-class-name="labelClass" content-class-name="contentClass">
{{form.subOrAddDays}}
</el-descriptions-item>
<el-descriptions-item label="内容" label-class-name="labelClass" content-class-name="contentClass">
<editor v-model="form.content" :min-height="256"/>
</el-descriptions-item>
<el-descriptions-item label="规则" label-class-name="labelClass" content-class-name="contentClass">
{{form.rule}}
</el-descriptions-item>
<el-descriptions-item label="理由" label-class-name="labelClass" content-class-name="contentClass">
{{form.reason}}
</el-descriptions-item>
<el-descriptions-item label="备注" label-class-name="labelClass" content-class-name="contentClass">
{{form.remark}}
</el-descriptions-item>
</el-descriptions>
</layout-view>
</template>
<script>
import view from "@/assets/mixins/view";
import Editor from '@/components/Editor';
export default {
mixins: [view],
components: {
Editor,
},
methods: {
},
data() {
return {
size:"small",
column:2,
toString:[
"type",
"subAddType",
],
toArrays: [
],
toDate: [
]
}
}
}
</script>
<style lang="less">
.labelClass{
width: 200px;
}
.el-descriptions__body{
margin-left: 5px;
margin-right: 5px;
color: #606266;
background-color: #FFF;
}
.contentClass{
width: 600px;
}
</style>
\ No newline at end of file
......@@ -44,7 +44,7 @@
<profiles.publish.path>/home/publish</profiles.publish.path>
<profiles.nacos.server-addr>192.168.0.252:8848</profiles.nacos.server-addr>
<profiles.nacos.group>DEFAULT_GROUP</profiles.nacos.group>
<profiles.nacos.namespace>smart-gov</profiles.nacos.namespace>
<profiles.nacos.namespace>smart-gov-dev</profiles.nacos.namespace>
<profiles.log.path>/home/mortals/app/logs</profiles.log.path>
<profiles.log.level>INFO</profiles.log.level>
<package.environment>test</package.environment>
......@@ -120,7 +120,7 @@
<groupId>com.hikvision.ga</groupId>
<artifactId>artemis-http-client</artifactId>
<version>1.1.8</version>
<!--<systemPath>${project.basedir}/src/main/resources/lib/artemis-http-client-1.1.8.jar</systemPath>-->
<!-- <systemPath>${project.basedir}/src/main/resources/lib/artemis-http-client-1.1.8.jar</systemPath>-->
</dependency>
<dependency>
......
......@@ -93,12 +93,6 @@ public class ArtemisPostTest {
return ArtemisHttpUtil.doPostStringArtemis(config,path, body, null, null, "application/json");
}
public static String callPostApiGetDeptList() throws Exception {
/**
* https://ip:port/artemis/api/resource/v1/org/orgList
......
package com.mortals.xhx.common.code;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* 增减类型(1.增加,2.扣除)枚举类
*
* @author zxfei
*/
public enum SubAddTypeEnum {
增加(1, "增加"),
扣除(2, "扣除");
private Integer value;
private String desc;
SubAddTypeEnum(Integer value, String desc) {
this.value = value;
this.desc = desc;
}
public Integer getValue() {
return this.value;
}
public String getDesc() {
return this.desc;
}
public static SubAddTypeEnum getByValue(Integer value) {
for (SubAddTypeEnum subAddTypeEnum : SubAddTypeEnum.values()) {
if (subAddTypeEnum.getValue() == value) {
return subAddTypeEnum;
}
}
return null;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public static Map<String, String> getEnumMap(Integer... eItem) {
Map<String, String> resultMap = new LinkedHashMap<>();
for (SubAddTypeEnum item : SubAddTypeEnum.values()) {
try {
boolean hasE = false;
for (Integer e : eItem) {
if (item.getValue() == e) {
hasE = true;
break;
}
}
if (!hasE) {
resultMap.put(item.getValue() + "", item.getDesc());
}
} catch (Exception ex) {
}
}
return resultMap;
}
}
\ No newline at end of file
......@@ -4,7 +4,6 @@ import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ITask;
import com.mortals.framework.service.ITaskExcuteService;
import com.mortals.xhx.base.framework.config.JsonUtils;
import com.mortals.xhx.base.system.user.service.UserService;
import com.mortals.xhx.busiz.hik.ArtemisPostTest;
import com.mortals.xhx.busiz.rsp.DeptHikData;
import com.mortals.xhx.busiz.rsp.ListDept;
......
package com.mortals.xhx.module.attendance.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.attendance.model.AttendanceVacationRecordEntity;
import java.util.List;
/**
* 员工假期记录信息Dao
* 员工假期记录信息 DAO接口
*
* @author zxfei
* @date 2023-04-12
*/
public interface AttendanceVacationRecordDao extends ICRUDDao<AttendanceVacationRecordEntity,Long>{
}
package com.mortals.xhx.module.attendance.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.attendance.dao.AttendanceVacationRecordDao;
import com.mortals.xhx.module.attendance.model.AttendanceVacationRecordEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 员工假期记录信息DaoImpl DAO接口
*
* @author zxfei
* @date 2023-04-12
*/
@Repository("attendanceVacationRecordDao")
public class AttendanceVacationRecordDaoImpl extends BaseCRUDDaoMybatis<AttendanceVacationRecordEntity,Long> implements AttendanceVacationRecordDao {
}
......@@ -9,11 +9,11 @@ import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.attendance.model.vo.AttendanceVacationBalanceVo;
/**
* 员工假期余额信息实体对象
*
* @author zxfei
* @date 2023-04-07
*/
* 员工假期余额信息实体对象
*
* @author zxfei
* @date 2023-04-11
*/
public class AttendanceVacationBalanceEntity extends AttendanceVacationBalanceVo {
private static final long serialVersionUID = 1L;
......@@ -55,10 +55,30 @@ public class AttendanceVacationBalanceEntity extends AttendanceVacationBalanceVo
* 年假(天)
*/
private BigDecimal annualLeaveDays;
/**
* 产假(天)
*/
private BigDecimal maternityLeaveDays;
/**
* 陪产假(天)
*/
private BigDecimal paternityLeaveDays;
/**
* 婚假(天)
*/
private BigDecimal marriageLeaveDays;
/**
* 例假(天)
*/
private BigDecimal menstrualLeaveDays;
/**
* 哺乳假(天)
*/
private BigDecimal breastfeedingLeaveDays;
/**
* 丧假(天)
*/
private BigDecimal bereavementLeaveDays;
/**
* 备注
*/
......@@ -193,6 +213,34 @@ public class AttendanceVacationBalanceEntity extends AttendanceVacationBalanceVo
public void setAnnualLeaveDays(BigDecimal annualLeaveDays){
this.annualLeaveDays = annualLeaveDays;
}
/**
* 获取 产假(天)
* @return BigDecimal
*/
public BigDecimal getMaternityLeaveDays(){
return maternityLeaveDays;
}
/**
* 设置 产假(天)
* @param maternityLeaveDays
*/
public void setMaternityLeaveDays(BigDecimal maternityLeaveDays){
this.maternityLeaveDays = maternityLeaveDays;
}
/**
* 获取 陪产假(天)
* @return BigDecimal
*/
public BigDecimal getPaternityLeaveDays(){
return paternityLeaveDays;
}
/**
* 设置 陪产假(天)
* @param paternityLeaveDays
*/
public void setPaternityLeaveDays(BigDecimal paternityLeaveDays){
this.paternityLeaveDays = paternityLeaveDays;
}
/**
* 获取 婚假(天)
* @return BigDecimal
......@@ -207,6 +255,48 @@ public class AttendanceVacationBalanceEntity extends AttendanceVacationBalanceVo
public void setMarriageLeaveDays(BigDecimal marriageLeaveDays){
this.marriageLeaveDays = marriageLeaveDays;
}
/**
* 获取 例假(天)
* @return BigDecimal
*/
public BigDecimal getMenstrualLeaveDays(){
return menstrualLeaveDays;
}
/**
* 设置 例假(天)
* @param menstrualLeaveDays
*/
public void setMenstrualLeaveDays(BigDecimal menstrualLeaveDays){
this.menstrualLeaveDays = menstrualLeaveDays;
}
/**
* 获取 哺乳假(天)
* @return BigDecimal
*/
public BigDecimal getBreastfeedingLeaveDays(){
return breastfeedingLeaveDays;
}
/**
* 设置 哺乳假(天)
* @param breastfeedingLeaveDays
*/
public void setBreastfeedingLeaveDays(BigDecimal breastfeedingLeaveDays){
this.breastfeedingLeaveDays = breastfeedingLeaveDays;
}
/**
* 获取 丧假(天)
* @return BigDecimal
*/
public BigDecimal getBereavementLeaveDays(){
return bereavementLeaveDays;
}
/**
* 设置 丧假(天)
* @param bereavementLeaveDays
*/
public void setBereavementLeaveDays(BigDecimal bereavementLeaveDays){
this.bereavementLeaveDays = bereavementLeaveDays;
}
/**
* 获取 备注
* @return String
......@@ -252,7 +342,12 @@ public class AttendanceVacationBalanceEntity extends AttendanceVacationBalanceVo
sb.append(",compensatedLeaveDays:").append(getCompensatedLeaveDays());
sb.append(",sickLeaveDays:").append(getSickLeaveDays());
sb.append(",annualLeaveDays:").append(getAnnualLeaveDays());
sb.append(",maternityLeaveDays:").append(getMaternityLeaveDays());
sb.append(",paternityLeaveDays:").append(getPaternityLeaveDays());
sb.append(",marriageLeaveDays:").append(getMarriageLeaveDays());
sb.append(",menstrualLeaveDays:").append(getMenstrualLeaveDays());
sb.append(",breastfeedingLeaveDays:").append(getBreastfeedingLeaveDays());
sb.append(",bereavementLeaveDays:").append(getBereavementLeaveDays());
sb.append(",remark:").append(getRemark());
return sb.toString();
}
......@@ -277,8 +372,18 @@ public class AttendanceVacationBalanceEntity extends AttendanceVacationBalanceVo
this.annualLeaveDays = BigDecimal.valueOf(0);
this.maternityLeaveDays = BigDecimal.valueOf(0);
this.paternityLeaveDays = BigDecimal.valueOf(0);
this.marriageLeaveDays = BigDecimal.valueOf(0);
this.menstrualLeaveDays = BigDecimal.valueOf(0);
this.breastfeedingLeaveDays = BigDecimal.valueOf(0);
this.bereavementLeaveDays = BigDecimal.valueOf(0);
this.remark = "";
}
}
\ No newline at end of file
package com.mortals.xhx.module.attendance.model;
import java.math.BigDecimal;
import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.attendance.model.vo.AttendanceVacationRecordVo;
/**
* 员工假期记录信息实体对象
*
* @author zxfei
* @date 2023-04-12
*/
public class AttendanceVacationRecordEntity extends AttendanceVacationRecordVo {
private static final long serialVersionUID = 1L;
/**
* 员工id
*/
@Excel(name = "员工id")
private Long staffId;
/**
* 员工姓名
*/
private String staffName;
/**
* 请假类型(1.事假,2.调休,3.病假,4.年假,5.产假,6.陪产假,7.婚假,8.例假,9.哺乳假,10.丧假)
*/
private Integer type;
/**
* 增减类型(1.增加,2.扣除)
*/
private Integer subAddType;
/**
* 有效期
*/
private String validityPeriod;
/**
* 增加或扣减天数(天)
*/
private BigDecimal subOrAddDays;
/**
* 内容
*/
private String content;
/**
* 规则
*/
private String rule;
/**
* 理由
*/
private String reason;
/**
* 备注
*/
private String remark;
public AttendanceVacationRecordEntity(){}
/**
* 获取 员工id
* @return Long
*/
public Long getStaffId(){
return staffId;
}
/**
* 设置 员工id
* @param staffId
*/
public void setStaffId(Long staffId){
this.staffId = staffId;
}
/**
* 获取 员工姓名
* @return String
*/
public String getStaffName(){
return staffName;
}
/**
* 设置 员工姓名
* @param staffName
*/
public void setStaffName(String staffName){
this.staffName = staffName;
}
/**
* 获取 请假类型(1.事假,2.调休,3.病假,4.年假,5.产假,6.陪产假,7.婚假,8.例假,9.哺乳假,10.丧假)
* @return Integer
*/
public Integer getType(){
return type;
}
/**
* 设置 请假类型(1.事假,2.调休,3.病假,4.年假,5.产假,6.陪产假,7.婚假,8.例假,9.哺乳假,10.丧假)
* @param type
*/
public void setType(Integer type){
this.type = type;
}
/**
* 获取 增减类型(1.增加,2.扣除)
* @return Integer
*/
public Integer getSubAddType(){
return subAddType;
}
/**
* 设置 增减类型(1.增加,2.扣除)
* @param subAddType
*/
public void setSubAddType(Integer subAddType){
this.subAddType = subAddType;
}
/**
* 获取 有效期
* @return String
*/
public String getValidityPeriod(){
return validityPeriod;
}
/**
* 设置 有效期
* @param validityPeriod
*/
public void setValidityPeriod(String validityPeriod){
this.validityPeriod = validityPeriod;
}
/**
* 获取 增加或扣减天数(天)
* @return BigDecimal
*/
public BigDecimal getSubOrAddDays(){
return subOrAddDays;
}
/**
* 设置 增加或扣减天数(天)
* @param subOrAddDays
*/
public void setSubOrAddDays(BigDecimal subOrAddDays){
this.subOrAddDays = subOrAddDays;
}
/**
* 获取 内容
* @return String
*/
public String getContent(){
return content;
}
/**
* 设置 内容
* @param content
*/
public void setContent(String content){
this.content = content;
}
/**
* 获取 规则
* @return String
*/
public String getRule(){
return rule;
}
/**
* 设置 规则
* @param rule
*/
public void setRule(String rule){
this.rule = rule;
}
/**
* 获取 理由
* @return String
*/
public String getReason(){
return reason;
}
/**
* 设置 理由
* @param reason
*/
public void setReason(String reason){
this.reason = reason;
}
/**
* 获取 备注
* @return String
*/
public String getRemark(){
return remark;
}
/**
* 设置 备注
* @param remark
*/
public void setRemark(String remark){
this.remark = remark;
}
@Override
public int hashCode() {
return this.getId().hashCode();
}
@Override
public boolean equals(Object obj) {
if (obj == null) return false;
if (obj instanceof AttendanceVacationRecordEntity) {
AttendanceVacationRecordEntity tmp = (AttendanceVacationRecordEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
}
}
return false;
}
public String toString(){
StringBuilder sb = new StringBuilder("");
sb.append(",staffId:").append(getStaffId());
sb.append(",staffName:").append(getStaffName());
sb.append(",type:").append(getType());
sb.append(",subAddType:").append(getSubAddType());
sb.append(",validityPeriod:").append(getValidityPeriod());
sb.append(",subOrAddDays:").append(getSubOrAddDays());
sb.append(",content:").append(getContent());
sb.append(",rule:").append(getRule());
sb.append(",reason:").append(getReason());
sb.append(",remark:").append(getRemark());
return sb.toString();
}
public void initAttrValue(){
this.staffId = null;
this.staffName = "";
this.type = null;
this.subAddType = 1;
this.validityPeriod = "0";
this.subOrAddDays = BigDecimal.valueOf(0);
this.content = "";
this.rule = "";
this.reason = "";
this.remark = "";
}
}
\ No newline at end of file
package com.mortals.xhx.module.attendance.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.attendance.model.AttendanceVacationRecordEntity;
import java.util.ArrayList;
import java.util.List;
import lombok.Data;
/**
* 员工假期记录信息视图对象
*
* @author zxfei
* @date 2023-04-12
*/
@Data
public class AttendanceVacationRecordVo extends BaseEntityLong {
}
\ No newline at end of file
package com.mortals.xhx.module.attendance.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.attendance.model.AttendanceVacationRecordEntity;
/**
* AttendanceVacationRecordService
*
* 员工假期记录信息 service接口
*
* @author zxfei
* @date 2023-04-12
*/
public interface AttendanceVacationRecordService extends ICRUDService<AttendanceVacationRecordEntity,Long>{
}
\ No newline at end of file
package com.mortals.xhx.module.attendance.service.impl;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.xhx.module.attendance.dao.AttendanceVacationRecordDao;
import com.mortals.xhx.module.attendance.model.AttendanceVacationRecordEntity;
import com.mortals.xhx.module.attendance.service.AttendanceVacationRecordService;
/**
* AttendanceVacationRecordService
* 员工假期记录信息 service实现
*
* @author zxfei
* @date 2023-04-12
*/
@Service("attendanceVacationRecordService")
public class AttendanceVacationRecordServiceImpl extends AbstractCRUDServiceImpl<AttendanceVacationRecordDao, AttendanceVacationRecordEntity, Long> implements AttendanceVacationRecordService {
}
\ No newline at end of file
package com.mortals.xhx.module.attendance.web;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.attendance.model.AttendanceVacationRecordEntity;
import com.mortals.xhx.module.attendance.service.AttendanceVacationRecordService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
/**
*
* 员工假期记录信息
*
* @author zxfei
* @date 2023-04-12
*/
@RestController
@RequestMapping("attendance/vacation/record")
public class AttendanceVacationRecordController extends BaseCRUDJsonBodyMappingController<AttendanceVacationRecordService,AttendanceVacationRecordEntity,Long> {
@Autowired
private ParamService paramService;
public AttendanceVacationRecordController(){
super.setModuleDesc( "员工假期记录信息");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "type", paramService.getParamBySecondOrganize("AttendanceVacationRecord","type"));
this.addDict(model, "subAddType", paramService.getParamBySecondOrganize("AttendanceVacationRecord","subAddType"));
super.init(model, context);
}
}
\ No newline at end of file
......@@ -26,4 +26,9 @@ public interface DeptDao extends ICRUDDao<DeptEntity,Long>{
* */
List<DeptEntity> queryAllList();
/**
* 统计部门人数
* */
}
......@@ -24,7 +24,6 @@ public class DeptDaoImpl extends BaseCRUDDaoMybatis<DeptEntity,Long> implements
@Override
public List<DeptEntity> queryAllList() {
return this.getList(new DeptEntity());
}
......
......@@ -6,11 +6,11 @@ import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.dept.model.vo.DeptVo;
/**
* 部门信息实体对象
*
* @author zxfei
* @date 2023-03-06
*/
* 部门信息实体对象
*
* @author zxfei
* @date 2023-04-11
*/
public class DeptEntity extends DeptVo {
private static final long serialVersionUID = 1L;
......@@ -29,6 +29,11 @@ public class DeptEntity extends DeptVo {
*/
@Excel(name = "部门名称")
private String deptName;
/**
* 部门编码
*/
@Excel(name = "部门编码")
private String deptCode;
/**
* 部门状态(0.停用,1.启用)
*/
......@@ -37,6 +42,18 @@ public class DeptEntity extends DeptVo {
* 顺序
*/
private Integer orderNum;
/**
* 部门人数
*/
private Integer personNum;
/**
* 负责人id
*/
private Long workId;
/**
* 负责人名称
*/
private String workName;
/**
* 备注
*/
......@@ -87,6 +104,20 @@ public class DeptEntity extends DeptVo {
public void setDeptName(String deptName){
this.deptName = deptName;
}
/**
* 获取 部门编码
* @return String
*/
public String getDeptCode(){
return deptCode;
}
/**
* 设置 部门编码
* @param deptCode
*/
public void setDeptCode(String deptCode){
this.deptCode = deptCode;
}
/**
* 获取 部门状态(0.停用,1.启用)
* @return Integer
......@@ -115,6 +146,48 @@ public class DeptEntity extends DeptVo {
public void setOrderNum(Integer orderNum){
this.orderNum = orderNum;
}
/**
* 获取 部门人数
* @return Integer
*/
public Integer getPersonNum(){
return personNum;
}
/**
* 设置 部门人数
* @param personNum
*/
public void setPersonNum(Integer personNum){
this.personNum = personNum;
}
/**
* 获取 负责人id
* @return Long
*/
public Long getWorkId(){
return workId;
}
/**
* 设置 负责人id
* @param workId
*/
public void setWorkId(Long workId){
this.workId = workId;
}
/**
* 获取 负责人名称
* @return String
*/
public String getWorkName(){
return workName;
}
/**
* 设置 负责人名称
* @param workName
*/
public void setWorkName(String workName){
this.workName = workName;
}
/**
* 获取 备注
* @return String
......@@ -154,24 +227,36 @@ public class DeptEntity extends DeptVo {
sb.append(",parentId:").append(getParentId());
sb.append(",ancestors:").append(getAncestors());
sb.append(",deptName:").append(getDeptName());
sb.append(",deptCode:").append(getDeptCode());
sb.append(",deptStatus:").append(getDeptStatus());
sb.append(",orderNum:").append(getOrderNum());
sb.append(",personNum:").append(getPersonNum());
sb.append(",workId:").append(getWorkId());
sb.append(",workName:").append(getWorkName());
sb.append(",remark:").append(getRemark());
return sb.toString();
}
public void initAttrValue(){
this.parentId = null;
this.parentId = 0L;
this.ancestors = "";
this.deptName = "";
this.deptCode = "";
this.deptStatus = 1;
this.orderNum = 0;
this.personNum = 0;
this.workId = null;
this.workName = "";
this.remark = "";
}
}
\ No newline at end of file
......@@ -16,4 +16,7 @@ public class DeptVo extends BaseEntityLong {
/** 子部门信息 */
private List<DeptEntity> children = new ArrayList<>();
//成员数量
}
\ No newline at end of file
package com.mortals.xhx.module.dept.web;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.dept.model.DeptQuery;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.alibaba.fastjson.JSONObject;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.util.StringUtils;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.dept.service.DeptService;
import com.mortals.xhx.module.dept.model.DeptQuery;
import com.mortals.xhx.module.dept.model.DeptTreeSelect;
import com.mortals.xhx.module.dept.service.DeptService;
import com.mortals.xhx.module.workman.model.WorkmanQuery;
import com.mortals.xhx.module.workman.service.WorkmanService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
import static com.mortals.framework.ap.SysConstains.RESULT_KEY;
/**
* 部门信息
......@@ -47,6 +37,8 @@ public class DeptController extends BaseCRUDJsonBodyMappingController<DeptServic
private ParamService paramService;
@Autowired
private DeptService deptService;
@Autowired
private WorkmanService workmanService;
public DeptController() {
......@@ -56,7 +48,8 @@ public class DeptController extends BaseCRUDJsonBodyMappingController<DeptServic
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "deptStatus", paramService.getParamBySecondOrganize("Dept", "deptStatus"));
this.addDict(model, "id", deptService.find(new DeptQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(), y->y.getDeptName(),(o, n)->n)));
this.addDict(model, "remark", workmanService.find(new WorkmanQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(), y->y.getName(),(o, n)->n)));
super.init(model, context);
}
......@@ -134,4 +127,8 @@ public class DeptController extends BaseCRUDJsonBodyMappingController<DeptServic
}
@Override
protected int doListAfter(DeptEntity query, Map<String, Object> model, Context context) throws AppException {
return super.doListAfter(query, model, context);
}
}
\ No newline at end of file
......@@ -7,11 +7,11 @@ import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.job.model.vo.JobVo;
/**
* 职位信息实体对象
*
* @author zxfei
* @date 2023-04-07
*/
* 职位信息实体对象
*
* @author zxfei
* @date 2023-04-11
*/
public class JobEntity extends JobVo {
private static final long serialVersionUID = 1L;
......@@ -36,6 +36,10 @@ public class JobEntity extends JobVo {
* 备注
*/
private String remark;
/**
* 节点类型(1.分组,2.职位)
*/
private Integer type;
......@@ -110,6 +114,20 @@ public class JobEntity extends JobVo {
public void setRemark(String remark){
this.remark = remark;
}
/**
* 获取 节点类型(1.分组,2.职位)
* @return Integer
*/
public Integer getType(){
return type;
}
/**
* 设置 节点类型(1.分组,2.职位)
* @param type
*/
public void setType(Integer type){
this.type = type;
}
......@@ -137,6 +155,7 @@ public class JobEntity extends JobVo {
sb.append(",jobCode:").append(getJobCode());
sb.append(",jobName:").append(getJobName());
sb.append(",remark:").append(getRemark());
sb.append(",type:").append(getType());
return sb.toString();
}
......@@ -151,5 +170,7 @@ public class JobEntity extends JobVo {
this.jobName = "";
this.remark = "";
this.type = 1;
}
}
\ No newline at end of file
......@@ -3,11 +3,11 @@ package com.mortals.xhx.module.job.model;
import java.util.List;
import com.mortals.xhx.module.job.model.JobEntity;
/**
* 职位信息查询对象
*
* @author zxfei
* @date 2023-04-07
*/
* 职位信息查询对象
*
* @author zxfei
* @date 2023-04-11
*/
public class JobQuery extends JobEntity {
/** 开始 主键,自增长 */
private Long idStart;
......@@ -101,6 +101,21 @@ public class JobQuery extends JobEntity {
/** 结束 修改时间 */
private String updateTimeEnd;
/** 开始 节点类型(1.分组,2.职位) */
private Integer typeStart;
/** 结束 节点类型(1.分组,2.职位) */
private Integer typeEnd;
/** 增加 节点类型(1.分组,2.职位) */
private Integer typeIncrement;
/** 节点类型(1.分组,2.职位)列表 */
private List <Integer> typeList;
/** 节点类型(1.分组,2.职位)排除列表 */
private List <Integer> typeNotList;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<JobQuery> orConditionList;
......@@ -625,6 +640,87 @@ public class JobQuery extends JobEntity {
this.updateTimeEnd = updateTimeEnd;
}
/**
* 获取 开始 节点类型(1.分组,2.职位)
* @return typeStart
*/
public Integer getTypeStart(){
return this.typeStart;
}
/**
* 设置 开始 节点类型(1.分组,2.职位)
* @param typeStart
*/
public void setTypeStart(Integer typeStart){
this.typeStart = typeStart;
}
/**
* 获取 结束 节点类型(1.分组,2.职位)
* @return $typeEnd
*/
public Integer getTypeEnd(){
return this.typeEnd;
}
/**
* 设置 结束 节点类型(1.分组,2.职位)
* @param typeEnd
*/
public void setTypeEnd(Integer typeEnd){
this.typeEnd = typeEnd;
}
/**
* 获取 增加 节点类型(1.分组,2.职位)
* @return typeIncrement
*/
public Integer getTypeIncrement(){
return this.typeIncrement;
}
/**
* 设置 增加 节点类型(1.分组,2.职位)
* @param typeIncrement
*/
public void setTypeIncrement(Integer typeIncrement){
this.typeIncrement = typeIncrement;
}
/**
* 获取 节点类型(1.分组,2.职位)
* @return typeList
*/
public List<Integer> getTypeList(){
return this.typeList;
}
/**
* 设置 节点类型(1.分组,2.职位)
* @param typeList
*/
public void setTypeList(List<Integer> typeList){
this.typeList = typeList;
}
/**
* 获取 节点类型(1.分组,2.职位)
* @return typeNotList
*/
public List<Integer> getTypeNotList(){
return this.typeNotList;
}
/**
* 设置 节点类型(1.分组,2.职位)
* @param typeNotList
*/
public void setTypeNotList(List<Integer> typeNotList){
this.typeNotList = typeNotList;
}
/**
* 设置 主键,自增长
* @param id
......@@ -919,6 +1015,60 @@ public class JobQuery extends JobEntity {
}
/**
* 设置 节点类型(1.分组,2.职位)
* @param type
*/
public JobQuery type(Integer type){
setType(type);
return this;
}
/**
* 设置 开始 节点类型(1.分组,2.职位)
* @param typeStart
*/
public JobQuery typeStart(Integer typeStart){
this.typeStart = typeStart;
return this;
}
/**
* 设置 结束 节点类型(1.分组,2.职位)
* @param typeEnd
*/
public JobQuery typeEnd(Integer typeEnd){
this.typeEnd = typeEnd;
return this;
}
/**
* 设置 增加 节点类型(1.分组,2.职位)
* @param typeIncrement
*/
public JobQuery typeIncrement(Integer typeIncrement){
this.typeIncrement = typeIncrement;
return this;
}
/**
* 设置 节点类型(1.分组,2.职位)
* @param typeList
*/
public JobQuery typeList(List<Integer> typeList){
this.typeList = typeList;
return this;
}
/**
* 设置 节点类型(1.分组,2.职位)
* @param typeNotList
*/
public JobQuery typeNotList(List<Integer> typeNotList){
this.typeNotList = typeNotList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
......
......@@ -51,4 +51,9 @@ public interface StaffDao extends ICRUDDao<StaffEntity,Long>{
* 兼职
* */
int queryConcurrently();
/**
* 查询职位
* */
List<StaffEntity> queryDetp();
}
......@@ -53,4 +53,11 @@ public class StaffDaoImpl extends BaseCRUDDaoMybatis<StaffEntity,Long> implement
return this.getSqlSession().selectOne(this.getSqlId("queryConcurrently"));
}
@Override
public List<StaffEntity> queryDetp(){
return this.getSqlSession().selectList(this.getSqlId("queryDetp"));
}
}
......@@ -2,6 +2,8 @@ package com.mortals.xhx.module.staff.model.vo;
import lombok.Data;
import java.util.Date;
@Data
public class StaffInfoVo {
......@@ -19,4 +21,7 @@ public class StaffInfoVo {
private Integer resignationStaff;
//兼职
private Integer concurrentlyStaff;
//刷新时间
private Date refreshDate;
}
......@@ -3,6 +3,8 @@ import com.mortals.framework.service.ICRUDCacheService;
import com.mortals.xhx.module.staff.model.StaffEntity;
import com.mortals.xhx.module.staff.model.vo.StaffInfoVo;
import java.util.List;
/**
* StaffService
*
......@@ -14,4 +16,6 @@ import com.mortals.xhx.module.staff.model.vo.StaffInfoVo;
public interface StaffService extends ICRUDCacheService<StaffEntity,Long> {
StaffInfoVo queryAll();
List<StaffEntity> queryDept();
}
\ No newline at end of file
......@@ -10,6 +10,8 @@ import com.mortals.xhx.module.staff.service.StaffService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* StaffService
* 员工基本信息 service实现
......@@ -53,4 +55,10 @@ public class StaffServiceImpl extends AbstractCRUDCacheServiceImpl<StaffDao, Sta
staffInfoVo.setResignationStaff(staffLeaveDao.queryResignation());
return staffInfoVo;
}
@Override
public List<StaffEntity> queryDept() {
return staffDao.queryDetp();
}
}
\ No newline at end of file
......@@ -15,6 +15,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
......@@ -59,6 +60,7 @@ public class StaffController extends BaseCRUDJsonBodyMappingController<StaffServ
protected int doListAfter(StaffEntity query, Map<String, Object> model, Context context) throws AppException {
//todo 员工信息统计--员工关系统计
StaffInfoVo staffInfoVo = this.service.queryAll();
staffInfoVo.setRefreshDate(new Date());
model.put("staff", staffInfoVo);
return super.doListAfter(query, model, context);
}
......@@ -94,4 +96,13 @@ public class StaffController extends BaseCRUDJsonBodyMappingController<StaffServ
return super.infoAfter(id, model, entity, context);
}
@Override
protected int saveAfter(StaffEntity entity, Map<String, Object> model, Context context) throws AppException {
return super.saveAfter(entity, model, context);
}
}
\ No newline at end of file
package com.mortals.xhx.module.workman.web;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.dept.model.DeptQuery;
import com.mortals.xhx.module.dept.service.DeptService;
import com.mortals.xhx.module.workman.model.WorkmanEntity;
import com.mortals.xhx.module.workman.service.WorkmanService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.workman.model.WorkmanEntity;
import com.mortals.xhx.module.workman.service.WorkmanService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
/**
*
* 工作人员
......@@ -36,14 +29,25 @@ public class WorkmanController extends BaseCRUDJsonBodyMappingController<Workman
@Autowired
private ParamService paramService;
@Autowired
private DeptService deptService;
public WorkmanController(){
super.setModuleDesc( "工作人员");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "positionId",deptService .find(new DeptQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(), y->y.getDeptName(),(o, n)->n)));
super.init(model, context);
}
@Override
protected int saveAfter(WorkmanEntity entity, Map<String, Object> model, Context context) throws AppException {
DeptEntity deptEntity = new DeptEntity();
deptEntity.setRemark(entity.getName());
return super.saveAfter(entity, model, context);
}
}
\ No newline at end of file
......@@ -17,8 +17,8 @@ spring:
serialization:
WRITE_DATES_AS_TIMESTAMPS: true
default-property-inclusion: NON_NULL
# time-zone: GMT+8
# date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
date-format: yyyy-MM-dd HH:mm:ss
dao:
exceptiontranslation:
enabled: false
......
......@@ -1337,4 +1337,7 @@
select count(1) pricateStaff from mortals_xhx_staff where staffType = 3
</select>
<select id="queryDetp" resultType="com.mortals.xhx.module.staff.model.StaffEntity">
select deptName from mortals_xhx_staff group by deptName
</select>
</mapper>
\ No newline at end of file
......@@ -33,7 +33,7 @@ Content-Type: application/json
"className":"rkd3tw",
"classResponsiblePersonId":291,
"classResponsiblePersonName":"mbga7i",
"remark":"l73cn1",
"remark":"l73cn1"
}
> {%
......
......@@ -38,7 +38,7 @@ Content-Type: application/json
"offWorkDate":"1680883200000",
"offWorkDateBefore":558,
"offWorkDateAfter":772,
"remark":"38en8a",
"remark":"38en8a"
}
> {%
......
......@@ -54,7 +54,7 @@ Content-Type: application/json
"sundayClassId":546,
"sundayClassName":"uq3lhu",
"holidays":1,
"remark":"u6z76o",
"remark":"u6z76o"
}
> {%
......
......@@ -38,7 +38,7 @@ Content-Type: application/json
"specialTime":"1680883200000",
"specialTimeStart":"1680883200000",
"specialTimeEnd":"1680883200000",
"remark":"eun5vs",
"remark":"eun5vs"
}
> {%
......
......@@ -41,7 +41,7 @@ Content-Type: application/json
"sunday":0,
"holidays":1,
"workTime":0,
"remark":"pbndzz",
"remark":"pbndzz"
}
> {%
......
......@@ -38,7 +38,7 @@ Content-Type: application/json
"specialTime":"1680883200000",
"specialTimeStart":"1680883200000",
"specialTimeEnd":"1680883200000",
"remark":"482xif",
"remark":"482xif"
}
> {%
......
......@@ -36,7 +36,7 @@ Content-Type: application/json
"responsibleId":395,
"responsibleName":"uwo4fh",
"responsibleType":768,
"remark":"y4pguf",
"remark":"y4pguf"
}
> {%
......
......@@ -36,7 +36,7 @@ Content-Type: application/json
"staffId":289,
"staffName":"s1l6xv",
"partAttendance":82,
"remark":"jjogmm",
"remark":"jjogmm"
}
> {%
......
......@@ -50,7 +50,7 @@ Content-Type: application/json
"approver":"7ihkp2",
"attachment":"3ho9of",
"attachmentPath":"p9ovhu",
"remark":"uxsqrs",
"remark":"uxsqrs"
}
> {%
......
......@@ -43,7 +43,7 @@ Content-Type: application/json
"shiftsId":439,
"shiftsName":"1zzktm",
"attendanceDate":"1680796800000",
"remark":"0rlbnv",
"remark":"0rlbnv"
}
> {%
......
......@@ -37,7 +37,7 @@ Content-Type: application/json
"goWorkResult":642,
"offWorkDate":"1680796800000",
"offWorkResult":656,
"remark":"h0anyu",
"remark":"h0anyu"
}
> {%
......
......@@ -53,7 +53,7 @@ Content-Type: application/json
"errorStatus":0,
"processStatus":0,
"processResult":"s1gyfc",
"remark":"4t1f2x",
"remark":"4t1f2x"
}
> {%
......
......@@ -48,7 +48,7 @@ Content-Type: application/json
"attendanceDate":"1680883200000",
"attendanceAddress":"zta8r5",
"eventSource":"42l4jh",
"remark":"ftcbb3",
"remark":"ftcbb3"
}
> {%
......
......@@ -38,7 +38,7 @@ Content-Type: application/json
"year":269,
"month":903,
"day":431,
"remark":"4e0w24",
"remark":"4e0w24"
}
> {%
......
......@@ -95,7 +95,7 @@ Content-Type: application/json
"year":593,
"month":333,
"day":983,
"remark":"no1wds",
"remark":"no1wds"
}
> {%
......
......@@ -50,7 +50,7 @@ Content-Type: application/json
"sickLeaveDays":0,
"annualLeaveDays":0,
"marriageLeaveDays":0,
"remark":"rmgjgc",
"remark":"rmgjgc"
}
> {%
......
......@@ -34,7 +34,7 @@ Content-Type: application/json
{
"careType":1,
"sms":1,
"smsTemplate":"ukqfvp",
"smsTemplate":"ukqfvp"
}
> {%
......
......@@ -37,7 +37,7 @@ Content-Type: application/json
"groupName":"2g2sug",
"jobCode":"p0m3o4",
"jobName":"3dnfdt",
"remark":"brj4yu",
"remark":"brj4yu"
}
> {%
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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