Commit 501c23f0 authored by fangxinjiang's avatar fangxinjiang

Merge remote-tracking branch 'origin/MVP1.7.12' into MVP1.7.12

parents 95eb3bb3 93f7f8e2
...@@ -349,12 +349,12 @@ public class TAutoContractScheme extends BaseEntity { ...@@ -349,12 +349,12 @@ public class TAutoContractScheme extends BaseEntity {
@Schema(description = "用工单位名称") @Schema(description = "用工单位名称")
private String workingCompany; private String workingCompany;
/** /**
* 工资形式 0 计时工资 1计件工资 2 其他 * 工资形式 1.计时工资 2.计件工资 3.其他
*/ */
@ExcelAttribute(name = "工资形式", maxLength = 2) @ExcelAttribute(name = "工资形式", maxLength = 2)
@Length(max = 1, message = "工资形式不能超过2个字符") @Length(max = 1, message = "工资形式不能超过2个字符")
@ExcelProperty("工资形式") @ExcelProperty("工资形式")
@Schema(description = "工资形式 0 计时工资 1计件工资 2 其他") @Schema(description = "工资形式 1.计时工资 2.计件工资 3.其他")
private String salaryType; private String salaryType;
/** /**
* 购买补充保险说明 * 购买补充保险说明
......
...@@ -544,8 +544,8 @@ public class TEmployeeContractInfo extends BaseEntity { ...@@ -544,8 +544,8 @@ public class TEmployeeContractInfo extends BaseEntity {
/** /**
* preName * preName
*/ */
@ExcelAttribute(name = "preName") @Schema(description = "合同待签订列表preName")
@ExcelProperty(value ="preName") @TableField(exist = false)
private String preName; private String preName;
/** /**
......
...@@ -236,6 +236,15 @@ public class TEmployeeContractPre extends BaseEntity { ...@@ -236,6 +236,15 @@ public class TEmployeeContractPre extends BaseEntity {
@Schema(description = "合同岗位 0 固定岗位 1 等于档案处维护 2 自定义") @Schema(description = "合同岗位 0 固定岗位 1 等于档案处维护 2 自定义")
private String postType; private String postType;
@Schema(description = "入职确认选择 0 配置方案内选择、1 自定义 2 配置方案+自定义")
private String confirmEmpSelect;
@Schema(description = "超时未确认是否触发签署任务(电子签) 0 自动触发 1 不触发")
private String timeoutElecSign;
@Schema(description = "合同截止日期类型 ")
private String contractEndType;
@Schema(description = "合同岗位名称") @Schema(description = "合同岗位名称")
private String post; private String post;
......
...@@ -162,6 +162,10 @@ public class TGzEmpInfo extends BaseEntity { ...@@ -162,6 +162,10 @@ public class TGzEmpInfo extends BaseEntity {
@ExcelProperty("籍贯") @ExcelProperty("籍贯")
@Schema(description = "籍贯") @Schema(description = "籍贯")
private String nativePlace; private String nativePlace;
@Schema(description = "籍贯地区ID")
private Integer nativePlaceAreaId;
/** /**
* 民族 * 民族
*/ */
...@@ -174,7 +178,7 @@ public class TGzEmpInfo extends BaseEntity { ...@@ -174,7 +178,7 @@ public class TGzEmpInfo extends BaseEntity {
* 婚姻状态 * 婚姻状态
*/ */
@ExcelAttribute(name = "婚姻状态", maxLength = 1) @ExcelAttribute(name = "婚姻状态", maxLength = 1)
@Length(max = 1, message = "婚姻状态不能超过1个字符") @Length(max = 3, message = "婚姻状态不能超过1个字符")
@ExcelProperty("婚姻状态") @ExcelProperty("婚姻状态")
@Schema(description = "婚姻状态") @Schema(description = "婚姻状态")
private String marStatus; private String marStatus;
...@@ -189,10 +193,10 @@ public class TGzEmpInfo extends BaseEntity { ...@@ -189,10 +193,10 @@ public class TGzEmpInfo extends BaseEntity {
/** /**
* 是否新参社保(Y:是 N:否) * 是否新参社保(Y:是 N:否)
*/ */
@ExcelAttribute(name = "是否新参社保(Y:是 N:否)", maxLength = 1) @ExcelAttribute(name = "是否新参社保", maxLength = 3)
@Length(max = 1, message = "是否新参社保(Y:是 N:否)不能超过1个字符") @Length(max = 3, message = "是否新参社保不能超过3个字符")
@ExcelProperty("是否新参社保(Y:是 N:否)") @ExcelProperty("是否新参社保")
@Schema(description = "是否新参社保(Y:是 N:否)") @Schema(description = "是否新参社保")
private String insuranceSta; private String insuranceSta;
/** /**
* 驾照类型 * 驾照类型
...@@ -295,6 +299,15 @@ public class TGzEmpInfo extends BaseEntity { ...@@ -295,6 +299,15 @@ public class TGzEmpInfo extends BaseEntity {
@ExcelProperty("家庭住址-所在区编码") @ExcelProperty("家庭住址-所在区编码")
@Schema(description = "家庭住址-所在区编码") @Schema(description = "家庭住址-所在区编码")
private String countyId; private String countyId;
@Schema(description = "家庭住址-所在省地区ID")
private Integer stateAreaId;
@Schema(description = "家庭住址-所在市地区ID")
private Integer cityAreaId;
@Schema(description = "家庭住址-所在区地区ID")
private Integer countyAreaId;
/** /**
* 家庭住址-详细地址 * 家庭住址-详细地址
*/ */
...@@ -385,6 +398,14 @@ public class TGzEmpInfo extends BaseEntity { ...@@ -385,6 +398,14 @@ public class TGzEmpInfo extends BaseEntity {
@ExcelProperty("试用期预计结束日期") @ExcelProperty("试用期预计结束日期")
@Schema(description = "试用期预计结束日期") @Schema(description = "试用期预计结束日期")
private Date prcExpDt; private Date prcExpDt;
/**
* 合同签署主体(系统固定传 V59)
*/
@ExcelAttribute(name = "合同签署主体", maxLength = 30)
@Length(max = 30, message = "合同签署主体不能超过30个字符")
@ExcelProperty("合同签署主体")
@Schema(description = "合同签署主体")
private String neeProviderId;
/** /**
* 合同工作地 * 合同工作地
*/ */
...@@ -433,6 +454,16 @@ public class TGzEmpInfo extends BaseEntity { ...@@ -433,6 +454,16 @@ public class TGzEmpInfo extends BaseEntity {
@ExcelProperty("户口-所在区编码") @ExcelProperty("户口-所在区编码")
@Schema(description = "户口-所在区编码") @Schema(description = "户口-所在区编码")
private String hukouCounty; private String hukouCounty;
@Schema(description = "户口-所在省地区ID")
private Integer hukouProvinceAreaId;
@Schema(description = "户口-所在市地区ID")
private Integer hukouCityAreaId;
@Schema(description = "户口-所在区地区ID")
private Integer hukouCountyAreaId;
/** /**
* 户口地址 * 户口地址
*/ */
...@@ -505,6 +536,13 @@ public class TGzEmpInfo extends BaseEntity { ...@@ -505,6 +536,13 @@ public class TGzEmpInfo extends BaseEntity {
@ExcelProperty("开户行所在市") @ExcelProperty("开户行所在市")
@Schema(description = "开户行所在市") @Schema(description = "开户行所在市")
private String accountCity; private String accountCity;
@Schema(description = "开户行所在省地区ID")
private Integer accountProvinceAreaId;
@Schema(description = "开户行所在市地区ID")
private Integer accountCityAreaId;
/** /**
* 账号ID * 账号ID
*/ */
......
...@@ -142,12 +142,12 @@ public class TEmployeeContractPreVo extends RowIndex implements Serializable { ...@@ -142,12 +142,12 @@ public class TEmployeeContractPreVo extends RowIndex implements Serializable {
@ExcelProperty("前端客服登录名") @ExcelProperty("前端客服登录名")
private String customerUserLoginname; private String customerUserLoginname;
/** /**
* 签署方式0线下签1电子签 * 签署方式1线下签0电子签
*/ */
@Length(max = 1, message = "签署方式0线下签1电子签 不能超过1 个字符") @Length(max = 1, message = "签署方式1线下签0电子签 不能超过1 个字符")
@ExcelAttribute(name = "签署方式0线下签1电子签", maxLength = 1) @ExcelAttribute(name = "签署方式1线下签0电子签", maxLength = 1)
@Schema(description = "签署方式0线下签1电子签") @Schema(description = "签署方式1线下签0电子签")
@ExcelProperty("签署方式0线下签1电子签") @ExcelProperty("签署方式1线下签0电子签")
private String signType; private String signType;
/** /**
* 法大大模版名称 * 法大大模版名称
...@@ -326,6 +326,22 @@ public class TEmployeeContractPreVo extends RowIndex implements Serializable { ...@@ -326,6 +326,22 @@ public class TEmployeeContractPreVo extends RowIndex implements Serializable {
@Schema(description = "计时工资 工资标准 元/月 ") @Schema(description = "计时工资 工资标准 元/月 ")
@ExcelProperty("计时工资 工资标准 元/月 ") @ExcelProperty("计时工资 工资标准 元/月 ")
private BigDecimal salaryStandardPerHour; private BigDecimal salaryStandardPerHour;
/**
* 入职确认选择 0 配置方案内选择、1 自定义 2 配置方案+自定义
*/
@ExcelAttribute(name = "入职确认选择", maxLength = 1)
@Length(max = 1, message = "入职确认选择不能超过1个字符")
@ExcelProperty("入职确认选择")
@Schema(description = "入职确认选择 0 配置方案内选择、1 自定义 2 配置方案+自定义")
private String confirmEmpSelect;
/**
* 超时未确认是否触发签署任务(电子签) 0 自动触发 1 不触发
*/
@ExcelAttribute(name = "超时未确认是否触发签署任务(电子签)", maxLength = 1)
@Length(max = 1, message = "超时未确认是否触发签署任务(电子签)不能超过1个字符")
@ExcelProperty("超时未确认是否触发签署任务(电子签)")
@Schema(description = "超时未确认是否触发签署任务(电子签) 0 自动触发 1 不触发")
private String timeoutElecSign;
/** /**
* 计件工资 工资标准单价/元 * 计件工资 工资标准单价/元
*/ */
...@@ -531,12 +547,16 @@ public class TEmployeeContractPreVo extends RowIndex implements Serializable { ...@@ -531,12 +547,16 @@ public class TEmployeeContractPreVo extends RowIndex implements Serializable {
/** /**
* 工作地点 * 工作地点
*/ */
@Length(max = 200, message = "工作地点 不能超过200 个字符")
@ExcelAttribute(name = "工作地点", maxLength = 200) @ExcelAttribute(name = "工作地点", maxLength = 200)
@Schema(description = "工作地点") @Schema(description = "工作地点")
@ExcelProperty("工作地点") @ExcelProperty("工作地点")
private String workAddress; private String workAddress;
@ExcelAttribute(name = "合同截止日期类型")
@Schema(description = "合同截止日期类型")
@ExcelProperty("合同截止日期类型")
private String contractEndType;
/** /**
* 入职确认信息id * 入职确认信息id
*/ */
......
...@@ -16,10 +16,12 @@ ...@@ -16,10 +16,12 @@
*/ */
package com.yifu.cloud.plus.v1.yifu.archives.vo; package com.yifu.cloud.plus.v1.yifu.archives.vo;
import com.yifu.cloud.plus.v1.yifu.archives.entity.*;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzEmpInfo;
import lombok.Data; import lombok.Data;
import java.util.List;
/** /**
* 瓜子档案表 * 瓜子档案表
* *
...@@ -46,4 +48,34 @@ public class TGzEmpInfoSearchVo extends TGzEmpInfo { ...@@ -46,4 +48,34 @@ public class TGzEmpInfoSearchVo extends TGzEmpInfo {
**/ **/
private int limitEnd; private int limitEnd;
/**
* 紧急联系人列表
*/
private List<TGzEmpContactInfo> emergContactList;
/**
* 教育经历列表
*/
private List<TGzEmpEducation> eduExpList;
/**
* 家庭成员列表
*/
private List<TGzEmpFamily> familyList;
/**
* 工作经历列表
*/
private List<TGzEmpWork> workExpList;
/**
* 技能证书列表
*/
private List<TGzEmpSkill> skillList;
/**
* 附件列表
*/
private List<TAttaInfo> attaList;
} }
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.archives.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttributeConstants;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 导出-瓜子offer信息接收表
*
* @author hgw
* @date 2025-6-17 09:38:47
*/
@Data
public class TGzOfferInfoExportDetailVo implements Serializable {
@ExcelProperty("流程ID")
private String bizId;
@ExcelProperty("人员类别编码")
private String empType;
@ExcelProperty("人员类别名称")
private String empTypeDescr;
/**
* 外签类型:A: 洼地外签/ B:属地外签
*/
@ExcelAttribute(name = "外签类型", isDataId = true, dataType = ExcelAttributeConstants.GZ_OUT_SGIN_TYPE)
@ExcelProperty("外签类型")
private String outSginType;
/**
* 合同公司主体:公司信息表
*/
@ExcelProperty("合同公司主体")
private String comраnу;
@ExcelProperty("姓名")
private String name;
@ExcelProperty("姓名拼音")
private String nameAc;
@ExcelProperty("姓氏拼音")
private String lastNameAc;
@ExcelProperty("名字拼音")
private String firstNameAc;
@ExcelProperty("国籍编码")
private String country;
@ExcelProperty("国籍描述")
private String countryDescr;
@ExcelProperty("证件类型编码")
private String nationalIdType;
@ExcelProperty("证件类型描述")
private String nationalIdTypeDescr;
@ExcelProperty("证件号码")
private String nationalId;
@ExcelAttribute(name = "性别", isDataId = true, dataType = ExcelAttributeConstants.GZ_SEX)
@ExcelProperty("性别")
private String sex;
@ExcelProperty("个人手机号")
private String phone;
@ExcelProperty("个人邮箱")
private String email;
@ExcelProperty("直接上级姓名")
private String supervisorName;
@ExcelProperty("职务描述")
private String jobcodeDescr;
@ExcelProperty("工作地点")
private String workLocation;
@ExcelProperty("工作地点描述")
private String workLocationDescr;
@ExcelProperty("预计入职日期")
private String expEntryDate;
@ExcelProperty("部门名称")
private String deptName;
/**
* 基本工资,两位小数
*/
@ExcelProperty("基本工资")
private BigDecimal basePay;
/**
* 绩效工资,两位小数
*/
@ExcelProperty("绩效工资")
private BigDecimal perfomPay;
@ExcelProperty("年终奖月数")
private Integer yearBonusMonth;
@ExcelProperty("社保缴纳地编码")
private String socialInsuranceLocation;
@ExcelProperty("社保缴纳地")
private String socialInsuranceLocationDescr;
@ExcelProperty("社保基数")
private BigDecimal socialInsuranceBase;
@ExcelProperty("公积金基数")
private BigDecimal houseAccFundBaseMax;
/**
* 是否转正后缴纳公积金(Y:是 N:否)
*/
@ExcelAttribute(name = "是否转正后缴纳公积金", isDataId = true, readConverterExp = "Y=是,N=否")
@ExcelProperty("是否转正后缴纳公积金")
private String beRegularEmpPay;
@ExcelProperty("申请人邮箱")
private String applyUserEmail;
@ExcelProperty("接收瓜子Offer时间")
private String createTime;
@ExcelAttribute(name = "Offer短信通知状态", isDataId = true, readConverterExp = "0=已发送,1=未发送")
@ExcelProperty("Offer短信通知状态")
private String offerSendStatus;
@ExcelAttribute(name = "Offer短信通知状态", isDataId = true, readConverterExp = "3=待发送Offer,4=待接受Offer,5=拒绝Offer,7=接受offer,9=候选人填写信息,10=取消offer,12=候选人信息审核,13=待签署,8=合同审核通过,99=已归档,98=信息待收集,97=候选人审核通过")
@ExcelProperty("Offer状态")
private String offerStatus;
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.archives.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
import com.yifu.cloud.plus.v1.yifu.common.core.util.LocalDateTimeUtils;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 导出-瓜子offer信息接收表
*
* @author hgw
* @date 2025-6-17 09:38:47
*/
@Data
public class TGzOfferInfoExportMainVo implements Serializable {
@ExcelProperty("流程ID")
private String bizId;
@ExcelProperty("姓名")
private String name;
@ExcelProperty("证件号码")
private String nationalId;
@ExcelProperty("个人手机号")
private String phone;
@ExcelProperty("职务描述")
private String jobcodeDescr;
@ExcelProperty("预计入职日期")
private String expEntryDate;
@ExcelProperty("接收瓜子Offer时间")
private String createTime;
@ExcelAttribute(name = "Offer短信通知状态", isDataId = true, readConverterExp = "0=已发送,1=未发送")
@ExcelProperty("Offer短信通知状态")
private String offerSendStatus;
@ExcelAttribute(name = "Offer短信通知状态", isDataId = true, readConverterExp = "3=待发送Offer,4=待接受Offer,5=拒绝Offer,7=接受offer,9=候选人填写信息,10=取消offer,12=候选人信息审核,13=待签署,8=合同审核通过,99=已归档,98=信息待收集,97=候选人审核通过")
@ExcelProperty("Offer状态")
private String offerStatus;
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.archives.vo;
import com.baomidou.mybatisplus.annotation.TableField;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzOfferInfo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDate;
/**
* 瓜子offer信息接收表——导出查询vo,主要加limit参数
*
* @author hgw
* @date 2025-6-17 10:00:43
*/
@Data
public class TGzOfferInfoExportSearchVo extends TGzOfferInfo {
private LocalDate createTimeStart;
private LocalDate createTimeEnd;
@TableField(exist = false)
@Schema(description = "id集合")
private String[] idList;
@TableField(exist = false)
@Schema(description = "查询起")
private int limitStart;
@TableField(exist = false)
@Schema(description = "查询止")
private int limitEnd;
}
...@@ -25,6 +25,7 @@ import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzEmpInfo; ...@@ -25,6 +25,7 @@ import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzEmpInfo;
import com.yifu.cloud.plus.v1.yifu.archives.service.TGzEmpInfoService; import com.yifu.cloud.plus.v1.yifu.archives.service.TGzEmpInfoService;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzEmpInfoSearchVo; import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzEmpInfoSearchVo;
import lombok.extern.log4j.Log4j2; import lombok.extern.log4j.Log4j2;
import org.apache.ibatis.annotations.Param;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
...@@ -76,6 +77,18 @@ public class TGzEmpInfoController { ...@@ -76,6 +77,18 @@ public class TGzEmpInfoController {
return R.ok(tGzEmpInfoService.noPageDiy(tGzEmpInfo)); return R.ok(tGzEmpInfoService.noPageDiy(tGzEmpInfo));
} }
/**
* 通过OfferId查询瓜子档案详情
*
* @param offerId OfferId
* @return R
*/
@Operation(summary = "通过OfferId查询瓜子档案详情")
@GetMapping("/getInfoByOfferId")
public R<TGzEmpInfoSearchVo> getInfoByOfferId(@Param("offerId") Integer offerId) {
return tGzEmpInfoService.getInfoByOfferId(offerId);
}
/** /**
* 通过id查询瓜子档案表 * 通过id查询瓜子档案表
* *
...@@ -135,8 +148,6 @@ public class TGzEmpInfoController { ...@@ -135,8 +148,6 @@ public class TGzEmpInfoController {
/** /**
* 瓜子档案表 批量导出 * 瓜子档案表 批量导出
* *
* @author chenyx
* @date 2025-06-13 15:19:03
**/ **/
@Operation(description = "导出瓜子档案表 hasPermission('archives_tgzempinfo-export')") @Operation(description = "导出瓜子档案表 hasPermission('archives_tgzempinfo-export')")
@PostMapping("/export") @PostMapping("/export")
......
...@@ -19,20 +19,24 @@ package com.yifu.cloud.plus.v1.yifu.archives.controller; ...@@ -19,20 +19,24 @@ package com.yifu.cloud.plus.v1.yifu.archives.controller;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzOfferInfo;
import com.yifu.cloud.plus.v1.yifu.archives.service.TGzOfferInfoService;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoExportSearchVo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoVo; import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoVo;
import com.yifu.cloud.plus.v1.yifu.common.core.util.Common;
import com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage; import com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R; import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
import com.yifu.cloud.plus.v1.yifu.common.log.annotation.SysLog; import com.yifu.cloud.plus.v1.yifu.common.log.annotation.SysLog;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzOfferInfo;
import com.yifu.cloud.plus.v1.yifu.archives.service.TGzOfferInfoService;
import lombok.SneakyThrows;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.SneakyThrows;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List; import java.util.List;
...@@ -63,6 +67,33 @@ public class TGzOfferInfoController { ...@@ -63,6 +67,33 @@ public class TGzOfferInfoController {
return new R<>(tGzOfferInfoService.getTGzOfferInfoPage(page,tGzOfferInfo)); return new R<>(tGzOfferInfoService.getTGzOfferInfoPage(page,tGzOfferInfo));
} }
/**
* 仅返回指定条数的列表数据
* @param tGzOfferInfo 瓜子offer信息接收表
* @return R<List<TGzOfferInfoVo>>
*/
@Operation(description = "仅返回指定条数的列表数据")
@GetMapping("/list")
public R<List<TGzOfferInfoVo>> getTGzOfferInfoList(TGzOfferInfoVo tGzOfferInfo) {
if(Common.isEmpty(tGzOfferInfo.getOfferStatus())){
return new R<>(new ArrayList<>());
}
return new R<>(tGzOfferInfoService.getTGzOfferInfoList(tGzOfferInfo));
}
/**
* 符合查询条件的数量
* @param tGzOfferInfo 瓜子offer信息接收表
* @return R<Integer>
*/
@Operation(description = "符合查询条件的数量")
@GetMapping("/count")
public R<Integer> getTGzOfferInfoCount(TGzOfferInfoVo tGzOfferInfo) {
if(Common.isEmpty(tGzOfferInfo.getOfferStatus())){
return new R<>(0);
}
return new R<>(tGzOfferInfoService.getTGzOfferInfoCount(tGzOfferInfo));
}
/** /**
* 通过id查询瓜子offer信息接收表 * 通过id查询瓜子offer信息接收表
...@@ -101,6 +132,18 @@ public class TGzOfferInfoController { ...@@ -101,6 +132,18 @@ public class TGzOfferInfoController {
return tGzOfferInfoService.updateStatus(tGzOfferInfo); return tGzOfferInfoService.updateStatus(tGzOfferInfo);
} }
/**
* 瓜子候选人信息审核
* @param tGzOfferInfo 瓜子offer信息接收表
* @return R
*/
@Operation(summary = "瓜子候选人信息审核")
@SysLog("瓜子候选人信息审核" )
@PostMapping("/audit")
public R<String> offerAudit(@RequestBody TGzOfferInfo tGzOfferInfo) {
return tGzOfferInfoService.offerAudit(tGzOfferInfo);
}
/** /**
* 新增瓜子offer信息接收表 * 新增瓜子offer信息接收表
* @param tGzOfferInfo 瓜子offer信息接收表 * @param tGzOfferInfo 瓜子offer信息接收表
...@@ -136,8 +179,32 @@ public class TGzOfferInfoController { ...@@ -136,8 +179,32 @@ public class TGzOfferInfoController {
@Operation(summary = "单个/批量发送Offer提醒", description = "单个/批量发送Offer提醒") @Operation(summary = "单个/批量发送Offer提醒", description = "单个/批量发送Offer提醒")
@SysLog("单个/批量发送Offer提醒" ) @SysLog("单个/批量发送Offer提醒" )
@PostMapping("/sendOfferAlert") @PostMapping("/sendOfferAlert")
public R<Boolean> sendOfferAlert(@RequestBody TGzOfferInfoVo tGzOfferInfo) { public R<String> sendOfferAlert(@RequestBody TGzOfferInfoVo tGzOfferInfo) {
return tGzOfferInfoService.sendOfferAlert(tGzOfferInfo); return tGzOfferInfoService.sendOfferAlert(tGzOfferInfo);
} }
/**
* 社保导出花名册记录表 批量导出
* @author hgw
* @date 2025-06-16 14:29:13
**/
@SysLog("导出瓜子offer列表")
@Operation(description = "导出瓜子offer列表")
@PostMapping("/exportMain")
public void exportMain(HttpServletResponse response, @RequestBody TGzOfferInfoExportSearchVo searchVo) {
tGzOfferInfoService.exportMain(response, searchVo);
}
/**
* 社保导出花名册记录表 批量导出
* @author hgw
* @date 2025-06-16 14:29:13
**/
@SysLog("导出瓜子offer详情")
@Operation(description = "导出瓜子offer详情")
@PostMapping("/exportDetail")
public void exportDetail(HttpServletResponse response, @RequestBody TGzOfferInfoExportSearchVo searchVo) {
tGzOfferInfoService.exportDetail(response, searchVo);
}
} }
...@@ -21,6 +21,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -21,6 +21,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzOfferInfo; import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzOfferInfo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoExportDetailVo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoExportMainVo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoExportSearchVo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoVo; import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoVo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -48,4 +51,27 @@ public interface TGzOfferInfoMapper extends BaseMapper<TGzOfferInfo> { ...@@ -48,4 +51,27 @@ public interface TGzOfferInfoMapper extends BaseMapper<TGzOfferInfo> {
* @return IPage<TGzOfferInfoVo> * @return IPage<TGzOfferInfoVo>
*/ */
List<TGzOfferInfoVo> getTGzOfferInfoSendAlertList(@Param("tGzOfferInfo") TGzOfferInfoVo tGzOfferInfo); List<TGzOfferInfoVo> getTGzOfferInfoSendAlertList(@Param("tGzOfferInfo") TGzOfferInfoVo tGzOfferInfo);
/**
* 获取指定条数限制的列表
* @param tGzOfferInfo 瓜子offer信息接收表
* @return List<TGzOfferInfoVo>
*/
List<TGzOfferInfoVo> getTGzOfferInfoListHaveLimit(@Param("tGzOfferInfo") TGzOfferInfoVo tGzOfferInfo,
@Param("limitCount") Integer limitCount);
/**
* 获取指定条数限制的列表
* @param tGzOfferInfo 瓜子offer信息接收表
* @return List<TGzOfferInfoVo>
*/
Integer getTGzOfferInfoCount(@Param("tGzOfferInfo") TGzOfferInfoVo tGzOfferInfo);
int getTGzOfferCount(@Param("tGzOfferInfo") TGzOfferInfoExportSearchVo tGzOfferInfo);
List<TGzOfferInfoExportMainVo> getTGzOfferMainList(@Param("tGzOfferInfo") TGzOfferInfoExportSearchVo tGzOfferInfo);
List<TGzOfferInfoExportDetailVo> getTGzOfferDetailList(@Param("tGzOfferInfo") TGzOfferInfoExportSearchVo tGzOfferInfo);
} }
...@@ -47,4 +47,12 @@ public interface TGzEmpInfoService extends IService<TGzEmpInfo> { ...@@ -47,4 +47,12 @@ public interface TGzEmpInfoService extends IService<TGzEmpInfo> {
void listExport(HttpServletResponse response, TGzEmpInfoSearchVo searchVo); void listExport(HttpServletResponse response, TGzEmpInfoSearchVo searchVo);
List<TGzEmpInfo> noPageDiy(TGzEmpInfoSearchVo searchVo); List<TGzEmpInfo> noPageDiy(TGzEmpInfoSearchVo searchVo);
/**
* 通过OfferId查询瓜子档案详情
*
* @param offerId OfferId
* @return R
*/
R<TGzEmpInfoSearchVo> getInfoByOfferId(Integer offerId);
} }
...@@ -21,10 +21,13 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -21,10 +21,13 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzOfferInfo; import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzOfferInfo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoExportSearchVo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoVo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoVo; import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoVo;
import com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage; import com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R; import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream; import java.io.InputStream;
import java.util.List; import java.util.List;
...@@ -37,15 +40,33 @@ import java.util.List; ...@@ -37,15 +40,33 @@ import java.util.List;
public interface TGzOfferInfoService extends IService<TGzOfferInfo> { public interface TGzOfferInfoService extends IService<TGzOfferInfo> {
/** /**
* 瓜子offer信息接收表简单分页查询 * 瓜子offer信息接收表简单分页查询
*
* @param tGzOfferInfo 瓜子offer信息接收表 * @param tGzOfferInfo 瓜子offer信息接收表
* @return * @return
*/ */
IPage<TGzOfferInfoVo> getTGzOfferInfoPage(Page<TGzOfferInfoVo> page, TGzOfferInfoVo tGzOfferInfo); IPage<TGzOfferInfoVo> getTGzOfferInfoPage(Page<TGzOfferInfoVo> page, TGzOfferInfoVo tGzOfferInfo);
/**
* 仅返回指定条数的列表数据
* @param tGzOfferInfo 瓜子offer信息接收表
* @return R<List<TGzOfferInfoVo>>
*/
List<TGzOfferInfoVo> getTGzOfferInfoList(TGzOfferInfoVo tGzOfferInfo);
/**
* 符合查询条件的数量
* @param tGzOfferInfo 瓜子offer信息接收表
* @return R<Integer>
*/
Integer getTGzOfferInfoCount(TGzOfferInfoVo tGzOfferInfo);
TGzOfferInfo getDataById(Integer id); TGzOfferInfo getDataById(Integer id);
/** /**
* 修改瓜子offer信息 * 修改瓜子offer信息
*
* @param tGzOfferInfo 字典 * @param tGzOfferInfo 字典
* @return R<String> * @return R<String>
*/ */
...@@ -53,14 +74,46 @@ public interface TGzOfferInfoService extends IService<TGzOfferInfo> { ...@@ -53,14 +74,46 @@ public interface TGzOfferInfoService extends IService<TGzOfferInfo> {
/** /**
* 瓜子offer手动状态更新 * 瓜子offer手动状态更新
*
* @param tGzOfferInfo 字典 * @param tGzOfferInfo 字典
* @return R<String> * @return R<String>
*/ */
R<String> updateStatus(TGzOfferInfo tGzOfferInfo); R<String> updateStatus(TGzOfferInfo tGzOfferInfo);
/**
* 瓜子候选人信息审核
* @param tGzOfferInfo 字典
* @return R<String>
*/
R<String> offerAudit(TGzOfferInfo tGzOfferInfo);
/**
* @Description: 批量导入
* @Author: hgw
* @Date: 2025/6/17 9:32
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.util.List < com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage>>
**/
R<List<ErrorMessage>> importDiy(InputStream inputStream); R<List<ErrorMessage>> importDiy(InputStream inputStream);
R sendOfferAlert(TGzOfferInfoVo tGzOfferInfo); R<String> sendOfferAlert(TGzOfferInfoVo tGzOfferInfo);
/**
* @Description: 导出列表
* @Author: hgw
* @Date: 2025/6/17 9:33
* @return: void
**/
void exportMain(HttpServletResponse response, TGzOfferInfoExportSearchVo searchVo);
/**
* @Description: 导出详情
* @Author: hgw
* @Date: 2025/6/17 9:33
* @return: void
**/
void exportDetail(HttpServletResponse response, TGzOfferInfoExportSearchVo searchVo);
} }
...@@ -16,12 +16,17 @@ ...@@ -16,12 +16,17 @@
*/ */
package com.yifu.cloud.plus.v1.yifu.archives.service.impl; package com.yifu.cloud.plus.v1.yifu.archives.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TGzEmpInfo; import com.yifu.cloud.plus.v1.yifu.archives.entity.*;
import com.yifu.cloud.plus.v1.yifu.archives.mapper.TGzEmpInfoMapper; import com.yifu.cloud.plus.v1.yifu.archives.mapper.*;
import com.yifu.cloud.plus.v1.yifu.archives.service.TAttaInfoService;
import com.yifu.cloud.plus.v1.yifu.archives.service.TGzEmpInfoService; import com.yifu.cloud.plus.v1.yifu.archives.service.TGzEmpInfoService;
import com.yifu.cloud.plus.v1.yifu.archives.service.TGzOfferInfoService;
import com.yifu.cloud.plus.v1.yifu.archives.util.IdCardUtil;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.log4j.Log4j2; import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage; import com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R; import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
...@@ -29,6 +34,7 @@ import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzEmpInfoSearchVo; ...@@ -29,6 +34,7 @@ import com.yifu.cloud.plus.v1.yifu.archives.vo.TGzEmpInfoSearchVo;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.InputStream; import java.io.InputStream;
import java.net.URL;
import java.util.List; import java.util.List;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
...@@ -63,6 +69,25 @@ import java.util.ArrayList; ...@@ -63,6 +69,25 @@ import java.util.ArrayList;
@Service @Service
@RequiredArgsConstructor @RequiredArgsConstructor
public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpInfo> implements TGzEmpInfoService { public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpInfo> implements TGzEmpInfoService {
private final TGzOfferInfoService gzOfferInfoService;
private final TGzEmpContactInfoMapper gzEmpContactInfoMapper;
private final TGzEmpEducationMapper gzEmpEducationMapper;
private final TGzEmpFamilyMapper gzEmpFamilyMapper;
private final TGzEmpSkillMapper gzEmpSkillMapper;
private final TGzEmpWorkMapper gzEmpWorkMapper;
private final TAttaInfoService attaInfoService;
@Autowired
private OSSUtil ossUtil;
/** /**
* 瓜子档案表简单分页查询 * 瓜子档案表简单分页查询
* *
...@@ -74,6 +99,115 @@ public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpI ...@@ -74,6 +99,115 @@ public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpI
return baseMapper.getTGzEmpInfoPage(page, tGzEmpInfo); return baseMapper.getTGzEmpInfoPage(page, tGzEmpInfo);
} }
/**
* 通过OfferId查询瓜子档案详情
*
* @param offerId OfferId
* @return R
*/
@Override
public R<TGzEmpInfoSearchVo> getInfoByOfferId(Integer offerId) {
TGzEmpInfoSearchVo gzEmpInfoVo = new TGzEmpInfoSearchVo();
TGzOfferInfo gzOfferInfo = gzOfferInfoService.getOne(Wrappers.<TGzOfferInfo>query().lambda()
.eq(TGzOfferInfo::getId, offerId)
.eq(TGzOfferInfo::getDelFlag, CommonConstants.ZERO_STRING)
.last(CommonConstants.LAST_ONE_SQL));
if(Common.isEmpty(gzOfferInfo)){
return R.failed("数据异常,禁止操作");
}
if(!CommonConstants.NINE_STRING.equals(gzOfferInfo.getOfferStatus())){
return R.failed("当前Offer不符合档案采集状态,禁止操作");
}
TGzEmpInfo gzEmpInfo = this.getOne(Wrappers.<TGzEmpInfo>query().lambda()
.eq(TGzEmpInfo::getOfferId, offerId)
.eq(TGzEmpInfo::getDelFlag, CommonConstants.ZERO_STRING)
.last(CommonConstants.LAST_ONE_SQL));
// 还未生成档案,取offer里的信息
if(Common.isEmpty(gzEmpInfo)){
gzEmpInfoVo.setOfferId(offerId);
gzEmpInfoVo.setName(gzOfferInfo.getName());
gzEmpInfoVo.setNameAc(gzOfferInfo.getNameAc());
gzEmpInfoVo.setNationalIdType(gzOfferInfo.getNationalIdType());
gzEmpInfoVo.setNationalId(gzOfferInfo.getNationalId());
// 根据身份证得出 出生日期和性别
if(Common.isNotNull(gzEmpInfoVo.getNationalId()) && gzEmpInfoVo.getNationalId().length() > 14){
String idCard = gzEmpInfoVo.getNationalId();
gzEmpInfoVo.setBirthdate(IdCardUtil.getBirthdate(idCard));
// 性别: F:女,M:男
if (idCard.length() > 17) {
if (Integer.parseInt(idCard.substring(16, 17)) % 2 == 1) {
gzEmpInfoVo.setSex("M");
} else {
gzEmpInfoVo.setSex("F");
}
}
}
gzEmpInfoVo.setPhone(gzOfferInfo.getPhone());
gzEmpInfoVo.setMail(gzOfferInfo.getEmail());
// 地址类型: 系统存默认值“现住址”:1A
gzEmpInfoVo.setAddressType("1A");
} else {
BeanUtil.copyProperties(gzEmpInfo, gzEmpInfoVo);
// 获取瓜子档案附属信息
// 紧急联系人
LambdaQueryWrapper<TGzEmpContactInfo> queryContactInfo = Wrappers.<TGzEmpContactInfo>lambdaQuery()
.eq(TGzEmpContactInfo::getEmpId, gzEmpInfo.getId())
.eq(TGzEmpContactInfo::getDelFlag, CommonConstants.ZERO_STRING)
.eq(TGzEmpContactInfo::getPrimaryNid, "Y")
.last(" limit 1 ");
List<TGzEmpContactInfo> emergContactList = gzEmpContactInfoMapper.selectList(queryContactInfo);
gzEmpInfoVo.setEmergContactList(emergContactList);
// 教育经历
LambdaQueryWrapper<TGzEmpEducation> queryEduInfo = Wrappers.<TGzEmpEducation>lambdaQuery()
.eq(TGzEmpEducation::getEmpId, gzEmpInfo.getId())
.eq(TGzEmpEducation::getDelFlag, CommonConstants.ZERO_STRING)
.eq(TGzEmpEducation::getHighEduQualFlag, "Y")
.last(" limit 1 ");
List<TGzEmpEducation> eduList = gzEmpEducationMapper.selectList(queryEduInfo);
gzEmpInfoVo.setEduExpList(eduList);
// 工作经历列表
LambdaQueryWrapper<TGzEmpWork> queryWorkInfo = Wrappers.<TGzEmpWork>lambdaQuery()
.eq(TGzEmpWork::getEmpId, gzEmpInfo.getId())
.eq(TGzEmpWork::getDelFlag, CommonConstants.ZERO_STRING)
.orderByAsc(TGzEmpWork::getCreateTime).orderByAsc(TGzEmpWork::getId);
List<TGzEmpWork> workList = gzEmpWorkMapper.selectList(queryWorkInfo);
gzEmpInfoVo.setWorkExpList(workList);
// 家庭成员列表
LambdaQueryWrapper<TGzEmpFamily> queryFamilyInfo = Wrappers.<TGzEmpFamily>lambdaQuery()
.eq(TGzEmpFamily::getEmpId, gzEmpInfo.getId())
.eq(TGzEmpFamily::getDelFlag, CommonConstants.ZERO_STRING)
.orderByAsc(TGzEmpFamily::getCreateTime).orderByAsc(TGzEmpFamily::getId);
List<TGzEmpFamily> familyList = gzEmpFamilyMapper.selectList(queryFamilyInfo);
gzEmpInfoVo.setFamilyList(familyList);
// 技能证书列表
LambdaQueryWrapper<TGzEmpSkill> querySkillInfo = Wrappers.<TGzEmpSkill>lambdaQuery()
.eq(TGzEmpSkill::getEmpId, gzEmpInfo.getId())
.eq(TGzEmpSkill::getDelFlag, CommonConstants.ZERO_STRING)
.orderByAsc(TGzEmpSkill::getCreateTime).orderByAsc(TGzEmpSkill::getId);
List<TGzEmpSkill> skillList = gzEmpSkillMapper.selectList(querySkillInfo);
gzEmpInfoVo.setSkillList(skillList);
// 附件
List<TAttaInfo> attaInfos = attaInfoService.list(Wrappers.<TAttaInfo>query().lambda().eq(TAttaInfo::getDomainId, gzEmpInfo.getId()));
if (Common.isNotNull(attaInfos)) {
URL url;
for (TAttaInfo atta : attaInfos) {
url = ossUtil.getObjectUrl(null, atta.getAttaSrc());
if (Common.isNotNull(url)) {
atta.setAttaUrl(url.toString());
}
}
}
gzEmpInfoVo.setAttaList(attaInfos);
}
return R.ok(gzEmpInfoVo);
}
/** /**
* 瓜子档案表批量导出 * 瓜子档案表批量导出
* *
......
...@@ -55,6 +55,7 @@ security: ...@@ -55,6 +55,7 @@ security:
- /tpreempmain/checkCode - /tpreempmain/checkCode
- /employeeregistrationpre/getEmployeeInfo - /employeeregistrationpre/getEmployeeInfo
- /employeeregistrationpre/judgeIsSimple - /employeeregistrationpre/judgeIsSimple
- /tgzempinfo/getInfoByOfferId
# 文件上传相关 支持阿里云、华为云、腾讯、minio # 文件上传相关 支持阿里云、华为云、腾讯、minio
......
...@@ -71,6 +71,9 @@ ...@@ -71,6 +71,9 @@
<result property="internshipPeriod" column="INTERNSHIP_PERIOD"/> <result property="internshipPeriod" column="INTERNSHIP_PERIOD"/>
<result property="internshipPeriodStart" column="INTERNSHIP_PERIOD_START"/> <result property="internshipPeriodStart" column="INTERNSHIP_PERIOD_START"/>
<result property="internshipPeriodEnd" column="INTERNSHIP_PERIOD_END"/> <result property="internshipPeriodEnd" column="INTERNSHIP_PERIOD_END"/>
<result property="confirmEmpSelect" column="CONFIRM_EMP_SELECT"/>
<result property="timeoutElecSign" column="TIMEOUT_ELEC_SIGN"/>
<result property="contractEndType" column="CONTRACT_END_TYPE"/>
<result property="postType" column="POST_TYPE"/> <result property="postType" column="POST_TYPE"/>
<result property="post" column="POST"/> <result property="post" column="POST"/>
<result property="contractId" column="contract_id"/> <result property="contractId" column="contract_id"/>
...@@ -107,6 +110,8 @@ ...@@ -107,6 +110,8 @@
a.situation, a.situation,
a.contract_duration_year, a.contract_duration_year,
a.contract_duration_month, a.contract_duration_month,
a.CONFIRM_EMP_SELECT,
a.TIMEOUT_ELEC_SIGN,
a.period_start, a.period_start,
a.period_end, a.period_end,
a.expected_confirm_time, a.expected_confirm_time,
...@@ -247,7 +252,7 @@ ...@@ -247,7 +252,7 @@
AND a.period_end = #{tEmployeeContractPre.periodEnd} AND a.period_end = #{tEmployeeContractPre.periodEnd}
</if> </if>
<if test="tEmployeeContractPre.expectedConfirmTime != null"> <if test="tEmployeeContractPre.expectedConfirmTime != null">
AND a.expected_confirm_time = #{tEmployeeContractPre.expectedConfirmTime} AND DATE_FORMAT(a.expected_confirm_time,"%Y-%m-%d") = DATE_FORMAT(#{tEmployeeContractPre.expectedConfirmTime},"%Y-%m-%d")
</if> </if>
<if test="tEmployeeContractPre.configName != null and tEmployeeContractPre.configName.trim() != ''"> <if test="tEmployeeContractPre.configName != null and tEmployeeContractPre.configName.trim() != ''">
AND a.config_name = #{tEmployeeContractPre.configName} AND a.config_name = #{tEmployeeContractPre.configName}
......
...@@ -73,6 +73,7 @@ ...@@ -73,6 +73,7 @@
<result property="contractEndDt" column="contract_end_dt"/> <result property="contractEndDt" column="contract_end_dt"/>
<result property="probationDt" column="probation_dt"/> <result property="probationDt" column="probation_dt"/>
<result property="prcExpDt" column="prc_exp_dt"/> <result property="prcExpDt" column="prc_exp_dt"/>
<result property="neeProviderId" column="nee_provider_id"/>
<result property="workLocation" column="work_location"/> <result property="workLocation" column="work_location"/>
<result property="contractState" column="contract_state"/> <result property="contractState" column="contract_state"/>
<result property="hukouType" column="hukou_type"/> <result property="hukouType" column="hukou_type"/>
...@@ -90,6 +91,15 @@ ...@@ -90,6 +91,15 @@
<result property="accountCity" column="account_city"/> <result property="accountCity" column="account_city"/>
<result property="accountEcId" column="account_ec_id"/> <result property="accountEcId" column="account_ec_id"/>
<result property="accountName" column="account_name"/> <result property="accountName" column="account_name"/>
<result property="nativePlaceAreaId" column="native_place_area_id"/>
<result property="stateAreaId" column="state_area_id"/>
<result property="cityAreaId" column="city_area_id"/>
<result property="countyAreaId" column="county_area_id"/>
<result property="hukouProvinceAreaId" column="hukou_province_area_id"/>
<result property="hukouCityAreaId" column="hukou_city_area_id"/>
<result property="hukouCountyAreaId" column="hukou_county_area_id"/>
<result property="accountProvinceAreaId" column="account_province_area_id"/>
<result property="accountCityAreaId" column="account_city_area_id"/>
</resultMap> </resultMap>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
a.id, a.id,
...@@ -141,6 +151,7 @@ ...@@ -141,6 +151,7 @@
a.contract_end_dt, a.contract_end_dt,
a.probation_dt, a.probation_dt,
a.prc_exp_dt, a.prc_exp_dt,
a.nee_provider_id,
a.work_location, a.work_location,
a.contract_state, a.contract_state,
a.hukou_type, a.hukou_type,
...@@ -157,7 +168,16 @@ ...@@ -157,7 +168,16 @@
a.account_province, a.account_province,
a.account_city, a.account_city,
a.account_ec_id, a.account_ec_id,
a.account_name a.account_name,
a.native_place_area_id,
a.state_area_id,
a.city_area_id,
a.county_area_id,
a.hukou_province_area_id,
a.hukou_city_area_id,
a.hukou_county_area_id,
a.account_province_area_id,
a.account_city_area_id
</sql> </sql>
<sql id="tGzEmpInfo_where"> <sql id="tGzEmpInfo_where">
<if test="tGzEmpInfo != null"> <if test="tGzEmpInfo != null">
......
...@@ -268,6 +268,103 @@ ...@@ -268,6 +268,103 @@
a.del_flag = '0' a.del_flag = '0'
<include refid="tGzOfferInfo_where"/> <include refid="tGzOfferInfo_where"/>
</where> </where>
</select>
<!--根据条件获取指定条数限制的列表-->
<select id="getTGzOfferInfoListHaveLimit" resultMap="tGzOfferInfoMap">
SELECT
<include refid="Base_Column_List"/>
FROM t_gz_offer_info a
<where>
a.del_flag = '0'
<include refid="tGzOfferInfo_where"/>
</where>
ORDER by a.create_time desc,a.id desc limit #{limitCount}
</select>
<!--根据条件获取数量-->
<select id="getTGzOfferInfoCount" resultType="integer">
SELECT count(1) FROM t_gz_offer_info a
<where>
a.del_flag = '0'
<include refid="tGzOfferInfo_where"/>
</where>
</select>
<!--导出先查条数-->
<select id="getTGzOfferCount" resultType="java.lang.Integer">
SELECT
count(1)
FROM t_gz_offer_info a
where a.del_flag = '0'
<include refid="tGzOfferInfo_where"/>
ORDER by a.create_time desc,a.id desc ORDER by a.create_time desc,a.id desc
</select> </select>
<!-- 导出ORRER字段 -->
<sql id="Export_Column_List">
a.biz_id,
a.offer_status,
a.offer_send_status,
a.update_by,
a.update_time,
a.emp_type,
a.emp_type_descr,
a.out_sgin_type,
a.comраnу,
a.name,
a.name_ac,
a.last_name_ac,
a.first_name_ac,
a.country,
a.country_descr,
a.national_id_type,
a.national_id_type_descr,
a.national_id,
a.sex,
a.phone,
a.email,
a.supervisor_name,
a.jobcode_descr,
a.work_location,
a.work_location_descr,
date_format(a.exp_entry_date, '%Y-%m-%d') exp_entry_date,
a.dept_name,
a.base_pay,
a.perfom_pay,
a.year_bonus_month,
a.social_insurance_location,
a.social_insurance_location_descr,
a.social_insurance_base,
a.house_acc_fund_base_max,
a.be_regular_emp_pay,
a.apply_user_email,
date_format(a.create_time, '%Y-%m-%d %H:%i:%s') create_time
</sql>
<!--导出主表-->
<select id="getTGzOfferMainList" resultType="com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoExportMainVo">
SELECT
<include refid="Export_Column_List"/>
FROM t_gz_offer_info a
where a.del_flag = '0'
<include refid="tGzOfferInfo_where"/>
ORDER by a.create_time desc,a.id desc
<if test="tGzOfferInfo.limitStart != null">
limit #{tGzOfferInfo.limitStart},#{tGzOfferInfo.limitEnd}
</if>
</select>
<!--导出详情-->
<select id="getTGzOfferDetailList" resultType="com.yifu.cloud.plus.v1.yifu.archives.vo.TGzOfferInfoExportDetailVo">
SELECT
<include refid="Export_Column_List"/>
FROM t_gz_offer_info a
where a.del_flag = '0'
<include refid="tGzOfferInfo_where"/>
ORDER by a.create_time desc,a.id desc
<if test="tGzOfferInfo.limitStart != null">
limit #{tGzOfferInfo.limitStart},#{tGzOfferInfo.limitEnd}
</if>
</select>
</mapper> </mapper>
...@@ -165,4 +165,14 @@ public class ExcelAttributeConstants { ...@@ -165,4 +165,14 @@ public class ExcelAttributeConstants {
//社保派减委托备注 //社保派减委托备注
public static final String TRUST_REMARK_ADD = "trustRemark"; public static final String TRUST_REMARK_ADD = "trustRemark";
// 瓜子的人员类别编码
public static final String GZ_EMP_TYPE = "gz_emp_type";
// 瓜子的证件类型编码
public static final String GZ_NATIONAL_ID_TYPE = "gz_national_id_type";
// 瓜子的国籍
public static final String GZ_COUNTRY = "gz_country";
// 瓜子的性别
public static final String GZ_SEX = "gz_sex";
// 瓜子的外签类型
public static final String GZ_OUT_SGIN_TYPE = "gz_out_sgin_type";
} }
package com.yifu.cloud.plus.v1.yifu.common.dapr.util; package com.yifu.cloud.plus.v1.yifu.common.dapr.util;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.yifu.cloud.plus.v1.ekp.vo.EkpDeptContractInfoVo;
import com.yifu.cloud.plus.v1.ekp.vo.EkpIncomePushInfoVo; import com.yifu.cloud.plus.v1.ekp.vo.EkpIncomePushInfoVo;
import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialPushInfoVo; import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialPushInfoVo;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.SecurityConstants; import com.yifu.cloud.plus.v1.yifu.common.core.constant.SecurityConstants;
...@@ -113,4 +114,15 @@ public class EkpDaprUtils { ...@@ -113,4 +114,15 @@ public class EkpDaprUtils {
public R<EkpDivisionInfoVo> getDivisionUsernameList(EkpDivisionInfoVo divisionInfoVo) { public R<EkpDivisionInfoVo> getDivisionUsernameList(EkpDivisionInfoVo divisionInfoVo) {
return HttpDaprUtil.invokeMethodPost(daprProperties.getAppUrl(),daprProperties.getAppId(),"/ekpShenhepeizhi/inner/getDivisionUsernameList",divisionInfoVo, EkpDivisionInfoVo.class, SecurityConstants.FROM_IN); return HttpDaprUtil.invokeMethodPost(daprProperties.getAppUrl(),daprProperties.getAppId(),"/ekpShenhepeizhi/inner/getDivisionUsernameList",divisionInfoVo, EkpDivisionInfoVo.class, SecurityConstants.FROM_IN);
} }
/**
* @Author huyc
* @Description 新增社保明细数据
* @Date 11:48 2025/06/18
* @Param
* @return
**/
public R<EkpDeptContractInfoVo> selectContractInfoByDetptNo(EkpDeptContractInfoVo vo) {
return HttpDaprUtil.invokeMethodPost(daprProperties.getAppUrl(),daprProperties.getAppId(),"/ekpSocialPush/inner/selectContractInfoByDetptNo", JSON.toJSONString(vo), EkpDeptContractInfoVo.class, SecurityConstants.FROM_IN);
}
} }
...@@ -23,6 +23,7 @@ import com.yifu.cloud.plus.v1.csp.service.EmployeeRegistrationService; ...@@ -23,6 +23,7 @@ import com.yifu.cloud.plus.v1.csp.service.EmployeeRegistrationService;
import com.yifu.cloud.plus.v1.csp.service.TAttaInfoService; import com.yifu.cloud.plus.v1.csp.service.TAttaInfoService;
import com.yifu.cloud.plus.v1.csp.service.TOperationLogService; import com.yifu.cloud.plus.v1.csp.service.TOperationLogService;
import com.yifu.cloud.plus.v1.csp.vo.*; import com.yifu.cloud.plus.v1.csp.vo.*;
import com.yifu.cloud.plus.v1.ekp.vo.EkpDeptContractInfoVo;
import com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysUser; import com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysUser;
import com.yifu.cloud.plus.v1.yifu.admin.api.vo.SysCspDeptVo; import com.yifu.cloud.plus.v1.yifu.admin.api.vo.SysCspDeptVo;
import com.yifu.cloud.plus.v1.yifu.archives.entity.SysAutoDictItem; import com.yifu.cloud.plus.v1.yifu.archives.entity.SysAutoDictItem;
...@@ -92,6 +93,9 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr ...@@ -92,6 +93,9 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr
@Autowired @Autowired
private UpmsDaprUtils upmsDaprUtils; private UpmsDaprUtils upmsDaprUtils;
@Autowired
private EkpDaprUtils ekpDaprUtils;
@Autowired @Autowired
private InsuranceDaprUtil insuranceDaprUtil; private InsuranceDaprUtil insuranceDaprUtil;
...@@ -723,9 +727,28 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr ...@@ -723,9 +727,28 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr
TEmployeeContractDateVo vo = new TEmployeeContractDateVo(); TEmployeeContractDateVo vo = new TEmployeeContractDateVo();
//合同开始日期、合同截止日期 //合同开始日期、合同截止日期
if (Common.isEmpty(employeeContractPreVo.getContractStart()) if (Common.isEmpty(employeeContractPreVo.getContractStart())
&& Common.isEmpty(employeeContractPreVo.getContractEnd())
&& Common.isEmpty(employeeContractPreVo.getContractDuratioYear())
&& Common.isEmpty(employeeContractPreVo.getContractDuratioMonth())
&& Common.isNotNull(employeeContractPreVo.getContractEndType())) {
employeeContractPreVo.setContractStart(employeeContractPreVo.getJoinLeaveDate());
EkpDeptContractInfoVo infoVo = new EkpDeptContractInfoVo();
infoVo.setDeptNo(registration.getDeptNo());
R<EkpDeptContractInfoVo> info = ekpDaprUtils.selectContractInfoByDetptNo(infoVo);
if (Common.isNotNull(info) && Common.isNotNull(info.getData())) {
EkpDeptContractInfoVo returnVo = info.getData();
employeeContractPreVo.setContractEnd(returnVo.getContractEndTime());
employeeContractPreVo.setContractEndType(returnVo.getContractType());
} else {
employeeContractPreVo.setContractEnd(null);
employeeContractPreVo.setContractEndType(null);
}
}
if (Common.isEmpty(employeeContractPreVo.getContractStart())
&& Common.isEmpty(employeeContractPreVo.getContractEnd())
&& Common.isNotNull(employeeContractPreVo.getContractDuratioYear()) && Common.isNotNull(employeeContractPreVo.getContractDuratioYear())
&& Common.isNotNull(employeeContractPreVo.getContractDuratioMonth())) { && Common.isNotNull(employeeContractPreVo.getContractDuratioMonth())) {
employeeContractPreVo.setContractStart(employeeContractPreVo.getExpectedCollectionTime()); employeeContractPreVo.setContractStart(employeeContractPreVo.getJoinLeaveDate());
vo.setMonthAfter(Integer.parseInt(employeeContractPreVo.getContractDuratioMonth())); vo.setMonthAfter(Integer.parseInt(employeeContractPreVo.getContractDuratioMonth()));
vo.setYearAfter(Integer.parseInt(employeeContractPreVo.getContractDuratioYear())); vo.setYearAfter(Integer.parseInt(employeeContractPreVo.getContractDuratioYear()));
vo.setRegistDate(employeeContractPreVo.getContractStart()); vo.setRegistDate(employeeContractPreVo.getContractStart());
...@@ -735,12 +758,12 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr ...@@ -735,12 +758,12 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr
if (Common.isEmpty(employeeContractPreVo.getContractStart()) if (Common.isEmpty(employeeContractPreVo.getContractStart())
&& Common.isEmpty(employeeContractPreVo.getContractDuratioYear()) && Common.isEmpty(employeeContractPreVo.getContractDuratioYear())
&& Common.isEmpty(employeeContractPreVo.getContractDuratioMonth())) { && Common.isEmpty(employeeContractPreVo.getContractDuratioMonth())) {
employeeContractPreVo.setContractStart(employeeContractPreVo.getExpectedCollectionTime()); employeeContractPreVo.setContractStart(employeeContractPreVo.getJoinLeaveDate());
} }
//试用期开始日期、试用期截止日期 //试用期开始日期、试用期截止日期
if (Common.isEmpty(employeeContractPreVo.getPeriodStart()) if (Common.isEmpty(employeeContractPreVo.getPeriodStart())
&& Common.isNotNull(employeeContractPreVo.getTryPeriodNum())) { && Common.isNotNull(employeeContractPreVo.getTryPeriodNum())) {
employeeContractPreVo.setPeriodStart(employeeContractPreVo.getExpectedCollectionTime()); employeeContractPreVo.setPeriodStart(employeeContractPreVo.getJoinLeaveDate());
vo.setMonthAfter(Integer.parseInt(employeeContractPreVo.getTryPeriodNum())); vo.setMonthAfter(Integer.parseInt(employeeContractPreVo.getTryPeriodNum()));
vo.setYearAfter(0); vo.setYearAfter(0);
vo.setRegistDate(employeeContractPreVo.getPeriodStart()); vo.setRegistDate(employeeContractPreVo.getPeriodStart());
...@@ -750,7 +773,7 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr ...@@ -750,7 +773,7 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr
if (Common.isEmpty(employeeContractPreVo.getDispatchPeriodStart()) if (Common.isEmpty(employeeContractPreVo.getDispatchPeriodStart())
&& Common.isNotNull(employeeContractPreVo.getDispatchPeriodYear()) && Common.isNotNull(employeeContractPreVo.getDispatchPeriodYear())
&& Common.isNotNull(employeeContractPreVo.getDispatchPeriodMonth())) { && Common.isNotNull(employeeContractPreVo.getDispatchPeriodMonth())) {
employeeContractPreVo.setDispatchPeriodStart(employeeContractPreVo.getExpectedCollectionTime()); employeeContractPreVo.setDispatchPeriodStart(employeeContractPreVo.getJoinLeaveDate());
vo.setMonthAfter(Integer.parseInt(employeeContractPreVo.getDispatchPeriodMonth())); vo.setMonthAfter(Integer.parseInt(employeeContractPreVo.getDispatchPeriodMonth()));
vo.setYearAfter(Integer.parseInt(employeeContractPreVo.getDispatchPeriodYear())); vo.setYearAfter(Integer.parseInt(employeeContractPreVo.getDispatchPeriodYear()));
vo.setRegistDate(employeeContractPreVo.getDispatchPeriodStart()); vo.setRegistDate(employeeContractPreVo.getDispatchPeriodStart());
...@@ -759,7 +782,7 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr ...@@ -759,7 +782,7 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr
//实习开始日期、实习结束日期 //实习开始日期、实习结束日期
if (Common.isEmpty(employeeContractPreVo.getInternshipPeriodStart()) if (Common.isEmpty(employeeContractPreVo.getInternshipPeriodStart())
&& Common.isNotNull(employeeContractPreVo.getInternshipPeriodNum())) { && Common.isNotNull(employeeContractPreVo.getInternshipPeriodNum())) {
employeeContractPreVo.setInternshipPeriodStart(employeeContractPreVo.getExpectedCollectionTime()); employeeContractPreVo.setInternshipPeriodStart(employeeContractPreVo.getJoinLeaveDate());
vo.setMonthAfter(Integer.parseInt(employeeContractPreVo.getInternshipPeriodNum())); vo.setMonthAfter(Integer.parseInt(employeeContractPreVo.getInternshipPeriodNum()));
vo.setYearAfter(0); vo.setYearAfter(0);
vo.setRegistDate(employeeContractPreVo.getInternshipPeriodStart()); vo.setRegistDate(employeeContractPreVo.getInternshipPeriodStart());
......
package com.yifu.cloud.plus.v1.ekp.vo;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @Author huyc
* @Date 2024/3/1
* @Description 获取项目明细信息
* @Version 1.0
*/
@Data
public class EkpDeptContractInfoVo implements Serializable {
/**
* 合同类型 合同之前、合同之后
**/
private String contractType;
/**
* 合同截至日期
**/
private Date contractEndTime;
/**
* 项目编码
**/
private String deptNo;
}
...@@ -2,6 +2,7 @@ package com.yifu.cloud.plus.v1.ekp.controller; ...@@ -2,6 +2,7 @@ package com.yifu.cloud.plus.v1.ekp.controller;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.yifu.cloud.plus.v1.ekp.service.EkpSocialInfoService; import com.yifu.cloud.plus.v1.ekp.service.EkpSocialInfoService;
import com.yifu.cloud.plus.v1.ekp.vo.EkpDeptContractInfoVo;
import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialPushInfoVo; import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialPushInfoVo;
import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialStatusUpdateVo; import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialStatusUpdateVo;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants; import com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants;
...@@ -68,4 +69,29 @@ public class TEkpSocialInfoController { ...@@ -68,4 +69,29 @@ public class TEkpSocialInfoController {
List<EkpSocialStatusUpdateVo> list= JSONObject.parseArray(jsonStr, EkpSocialStatusUpdateVo.class); List<EkpSocialStatusUpdateVo> list= JSONObject.parseArray(jsonStr, EkpSocialStatusUpdateVo.class);
return socialInfoService.updateScoialStatus(list); return socialInfoService.updateScoialStatus(list);
} }
/**
* @param vo
* @Description: 根据项目编码查询项目信息
* @Author: huyc
* @Date: 2025/6/18
* @return:
**/
@Inner
@PostMapping("/inner/selectContractInfoByDetptNo")
public EkpDeptContractInfoVo selectContractInfoInnerByDetptNo(@RequestBody EkpDeptContractInfoVo vo) {
return socialInfoService.selectContractInfoByDetptNo(vo);
}
/**
* @param vo
* @Description: 根据项目编码查询项目信息
* @Author: huyc
* @Date: 2025/6/18
* @return:
**/
@PostMapping("/selectContractInfoByDetptNo")
public EkpDeptContractInfoVo selectContractInfoByDetptNo(@RequestBody EkpDeptContractInfoVo vo) {
return socialInfoService.selectContractInfoByDetptNo(vo);
}
} }
...@@ -2,6 +2,7 @@ package com.yifu.cloud.plus.v1.ekp.mapper; ...@@ -2,6 +2,7 @@ package com.yifu.cloud.plus.v1.ekp.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yifu.cloud.plus.v1.ekp.entity.EkpSocialInfo; import com.yifu.cloud.plus.v1.ekp.entity.EkpSocialInfo;
import com.yifu.cloud.plus.v1.ekp.vo.EkpDeptContractInfoVo;
import com.yifu.cloud.plus.v1.ekp.vo.EkpDeptInfoVo; import com.yifu.cloud.plus.v1.ekp.vo.EkpDeptInfoVo;
import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialSumInfoVo; import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialSumInfoVo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
...@@ -55,4 +56,6 @@ public interface EkpSocialInfoMapper extends BaseMapper<EkpSocialInfo> { ...@@ -55,4 +56,6 @@ public interface EkpSocialInfoMapper extends BaseMapper<EkpSocialInfo> {
* @return * @return
*/ */
List<Map<String,String>> getAccountList(); List<Map<String,String>> getAccountList();
EkpDeptContractInfoVo selectContractInfoByDetptNo(@Param("deptNo") String deptNo);
} }
...@@ -2,6 +2,7 @@ package com.yifu.cloud.plus.v1.ekp.service; ...@@ -2,6 +2,7 @@ package com.yifu.cloud.plus.v1.ekp.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.yifu.cloud.plus.v1.ekp.entity.EkpSocialInfo; import com.yifu.cloud.plus.v1.ekp.entity.EkpSocialInfo;
import com.yifu.cloud.plus.v1.ekp.vo.EkpDeptContractInfoVo;
import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialPushInfoVo; import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialPushInfoVo;
import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialStatusUpdateVo; import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialStatusUpdateVo;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R; import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
...@@ -23,4 +24,6 @@ public interface EkpSocialInfoService extends IService<EkpSocialInfo> { ...@@ -23,4 +24,6 @@ public interface EkpSocialInfoService extends IService<EkpSocialInfo> {
EkpSocialPushInfoVo pushSocialInfoToEkp(List<EkpPushSocialParam> unPushList); EkpSocialPushInfoVo pushSocialInfoToEkp(List<EkpPushSocialParam> unPushList);
R updateScoialStatus(List<EkpSocialStatusUpdateVo> list); R updateScoialStatus(List<EkpSocialStatusUpdateVo> list);
EkpDeptContractInfoVo selectContractInfoByDetptNo(EkpDeptContractInfoVo vo);
} }
...@@ -5,10 +5,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; ...@@ -5,10 +5,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yifu.cloud.plus.v1.ekp.entity.EkpSocialInfo; import com.yifu.cloud.plus.v1.ekp.entity.EkpSocialInfo;
import com.yifu.cloud.plus.v1.ekp.mapper.EkpSocialInfoMapper; import com.yifu.cloud.plus.v1.ekp.mapper.EkpSocialInfoMapper;
import com.yifu.cloud.plus.v1.ekp.service.EkpSocialInfoService; import com.yifu.cloud.plus.v1.ekp.service.EkpSocialInfoService;
import com.yifu.cloud.plus.v1.ekp.vo.EkpDeptInfoVo; import com.yifu.cloud.plus.v1.ekp.vo.*;
import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialPushInfoVo;
import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialStatusUpdateVo;
import com.yifu.cloud.plus.v1.ekp.vo.EkpSocialSumInfoVo;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants; import com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants;
import com.yifu.cloud.plus.v1.yifu.common.core.redis.RedisDistributedLock; import com.yifu.cloud.plus.v1.yifu.common.core.redis.RedisDistributedLock;
import com.yifu.cloud.plus.v1.yifu.common.core.util.*; import com.yifu.cloud.plus.v1.yifu.common.core.util.*;
...@@ -313,6 +310,14 @@ public class EkpSocialInfoServiceImpl extends ServiceImpl<EkpSocialInfoMapper, E ...@@ -313,6 +310,14 @@ public class EkpSocialInfoServiceImpl extends ServiceImpl<EkpSocialInfoMapper, E
return null; return null;
} }
@Override
public EkpDeptContractInfoVo selectContractInfoByDetptNo(EkpDeptContractInfoVo vo) {
if (Common.isNotNull(vo) && Common.isNotNull(vo.getDeptNo())) {
return baseMapper.selectContractInfoByDetptNo(vo.getDeptNo());
}
return null;
}
private void copySocialProperties(EkpPushSocialParam socialParam,EkpSocialInfo socialInfo) { private void copySocialProperties(EkpPushSocialParam socialParam,EkpSocialInfo socialInfo) {
//订单类型 //订单类型
socialInfo.setFd_3add9dd7833db8(socialParam.getFd_3add9dd7833db8()); socialInfo.setFd_3add9dd7833db8(socialParam.getFd_3add9dd7833db8());
......
...@@ -136,4 +136,16 @@ ...@@ -136,4 +136,16 @@
<select id="getAccountList" resultType="Map"> <select id="getAccountList" resultType="Map">
select fd_3b14a2430ac214 as bank_name,fd_3b14a24376d86a as bank_no from ekp_fe8247b4cbb4b27881dd where fd_3b14a24b9adb52='启用' and fd_3b56747b811872='是'; select fd_3b14a2430ac214 as bank_name,fd_3b14a24376d86a as bank_no from ekp_fe8247b4cbb4b27881dd where fd_3b14a24b9adb52='启用' and fd_3b56747b811872='是';
</select> </select>
<!--查询付款账户信息-->
<select id="selectContractInfoByDetptNo" resultType="com.yifu.cloud.plus.v1.ekp.vo.EkpDeptContractInfoVo">
select
a.fd_3b148031607a30 as contractType,
if(a.fd_3b148031607a30 = '合同之后',DATE_FORMAT(b.fd_3ad8da6ba4bd2c, '%Y-%m-%d'),null) as contractEndTime,
a.fd_3a37fe508071fe as deptNo
from ekp_24a8e6a7fc143bb8c48a a
left join ekp_0103c453b2848c3bb31c b on a.fd_3b14803c09db8e = b.fd_id
where a.fd_3a37fe508071fe = #{deptNo}
limit 1
</select>
</mapper> </mapper>
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.admin.api.entity;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yifu.cloud.plus.v1.yifu.common.mybatis.base.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotBlank;
/**
* 瓜子银行支行信息
*
* @author chenyx
* @date 2025-06-17 09:43:32
*/
@Data
@TableName("sys_guazi_bank_branch")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "瓜子银行支行信息")
public class SysGuaziBankBranch extends BaseEntity {
/**
* id
*/
@TableId(type = IdType.AUTO)
@ExcelProperty("id")
@Schema(description = "id")
private Integer id;
/**
* 大行编码
*/
@ExcelAttribute(name = "大行编码", maxLength = 11)
@Length(max = 11, message = "大行编码不能超过11个字符")
@ExcelProperty("大行编码")
@Schema(description = "大行编码")
private String bankCd;
/**
* 联行号ID
*/
@ExcelAttribute(name = "联行号ID")
@ExcelProperty("联行号ID")
@Schema(description = "联行号ID")
private Integer cnapsId;
/**
* 联行号
*/
@ExcelAttribute(name = "联行号", maxLength = 30)
@Length(max = 30, message = "联行号不能超过30个字符")
@ExcelProperty("联行号")
@Schema(description = "联行号")
private String cnapsNum;
/**
* 支行名称
*/
@ExcelAttribute(name = "支行名称", maxLength = 50)
@Length(max = 50, message = "支行名称不能超过50个字符")
@ExcelProperty("支行名称")
@Schema(description = "支行名称")
private String bankDescr;
/**
* 所在省编码
*/
@ExcelAttribute(name = "所在省编码", maxLength = 15)
@Length(max = 15, message = "所在省编码不能超过15个字符")
@ExcelProperty("所在省编码")
@Schema(description = "所在省编码")
private String stateId;
/**
* 所在市编码
*/
@ExcelAttribute(name = "所在市编码", maxLength = 15)
@Length(max = 15, message = "所在市编码不能超过15个字符")
@ExcelProperty("所在市编码")
@Schema(description = "所在市编码")
private String cityId;
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.admin.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
import com.yifu.cloud.plus.v1.yifu.common.log.annotation.SysLog;
import com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysGuaziBankBranch;
import com.yifu.cloud.plus.v1.yifu.admin.service.SysGuaziBankBranchService;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.http.HttpHeaders;
import org.springframework.web.bind.annotation.*;
/**
* 瓜子银行支行信息
*
* @author chenyx
* @date 2025-06-17 09:43:32
*/
@RestController
@RequiredArgsConstructor
@RequestMapping("/sysguazibankbranch")
@Tag(name = "瓜子银行支行信息管理")
public class SysGuaziBankBranchController {
private final SysGuaziBankBranchService sysGuaziBankBranchService;
/**
* 简单分页查询
*
* @param page 分页对象
* @param sysGuaziBankBranch 瓜子银行支行信息
* @return
*/
@Operation(description = "简单分页查询")
@GetMapping("/page")
public R<IPage<SysGuaziBankBranch>> getSysGuaziBankBranchPage(Page<SysGuaziBankBranch> page, SysGuaziBankBranch sysGuaziBankBranch) {
return new R<>(sysGuaziBankBranchService.getSysGuaziBankBranchPage(page, sysGuaziBankBranch));
}
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.admin.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysGuaziBankBranch;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* 瓜子银行支行信息
*
* @author chenyx
* @date 2025-06-17 09:43:32
*/
@Mapper
public interface SysGuaziBankBranchMapper extends BaseMapper<SysGuaziBankBranch> {
/**
* 瓜子银行支行信息简单分页查询
*
* @param sysGuaziBankBranch 瓜子银行支行信息
* @return
*/
IPage<SysGuaziBankBranch> getSysGuaziBankBranchPage(Page<SysGuaziBankBranch> page, @Param("sysGuaziBankBranch") SysGuaziBankBranch sysGuaziBankBranch);
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.admin.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysGuaziBankBranch;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
/**
* 瓜子银行支行信息
*
* @author chenyx
* @date 2025-06-17 09:43:32
*/
public interface SysGuaziBankBranchService extends IService<SysGuaziBankBranch> {
/**
* 瓜子银行支行信息简单分页查询
*
* @param sysGuaziBankBranch 瓜子银行支行信息
* @return IPage<SysGuaziBankBranch>
*/
IPage<SysGuaziBankBranch> getSysGuaziBankBranchPage(Page<SysGuaziBankBranch> page, SysGuaziBankBranch sysGuaziBankBranch);
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.admin.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysGuaziBankBranch;
import com.yifu.cloud.plus.v1.yifu.admin.mapper.SysGuaziBankBranchMapper;
import com.yifu.cloud.plus.v1.yifu.admin.service.SysGuaziBankBranchService;
import lombok.RequiredArgsConstructor;
import lombok.extern.log4j.Log4j2;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
/**
* 瓜子银行支行信息
*
* @author chenyx
* @date 2025-06-17 09:43:32
*/
@Log4j2
@Service
@RequiredArgsConstructor
public class SysGuaziBankBranchServiceImpl extends ServiceImpl<SysGuaziBankBranchMapper, SysGuaziBankBranch> implements SysGuaziBankBranchService {
/**
* 瓜子银行支行信息简单分页查询
*
* @param sysGuaziBankBranch 瓜子银行支行信息
* @return IPage<SysGuaziBankBranch>
*/
@Override
public IPage<SysGuaziBankBranch> getSysGuaziBankBranchPage(Page<SysGuaziBankBranch> page, SysGuaziBankBranch sysGuaziBankBranch) {
return baseMapper.getSysGuaziBankBranchPage(page, sysGuaziBankBranch);
}
}
...@@ -46,7 +46,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -46,7 +46,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yifu.cloud.plus.v1.yifu.common.core.util.*; import com.yifu.cloud.plus.v1.yifu.common.core.util.*;
import com.yifu.cloud.plus.v1.yifu.common.mybatis.base.BaseEntity;
/** /**
......
...@@ -42,6 +42,9 @@ security: ...@@ -42,6 +42,9 @@ security:
- /role/getRoleList - /role/getRoleList
- /user/updateUserAndDept - /user/updateUserAndDept
- /dict/getParentDictItemByTypes - /dict/getParentDictItemByTypes
- /sysguazibankbranch/page
- /sysoutempforminfo/configList
- /dict/getDictMapByClientId
......
<?xml version="1.0" encoding="UTF-8"?>
<!--
~
~ Copyright (c) 2018-2025, lengleng All rights reserved.
~
~ Redistribution and use in source and binary forms, with or without
~ modification, are permitted provided that the following conditions are met:
~
~ Redistributions of source code must retain the above copyright notice,
~ this list of conditions and the following disclaimer.
~ Redistributions in binary form must reproduce the above copyright
~ notice, this list of conditions and the following disclaimer in the
~ documentation and/or other materials provided with the distribution.
~ Neither the name of the yifu4cloud.com developer nor the names of its
~ contributors may be used to endorse or promote products derived from
~ this software without specific prior written permission.
~ Author: lengleng (wangiegie@gmail.com)
~
-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yifu.cloud.plus.v1.yifu.admin.mapper.SysGuaziBankBranchMapper">
<resultMap id="sysGuaziBankBranchMap" type="com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysGuaziBankBranch">
<id property="id" column="id"/>
<result property="bankCd" column="bank_cd"/>
<result property="cnapsId" column="cnaps_id"/>
<result property="cnapsNum" column="cnaps_num"/>
<result property="bankDescr" column="bank_descr"/>
<result property="stateId" column="state_id"/>
<result property="cityId" column="city_id"/>
<result property="createTime" column="create_time"/>
<result property="createBy" column="create_by"/>
<result property="createName" column="create_name"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
</resultMap>
<sql id="Base_Column_List">
a.id,
a.bank_cd,
a.cnaps_id,
a.cnaps_num,
a.bank_descr,
a.state_id,
a.city_id,
a.create_time,
a.create_by,
a.create_name,
a.update_by,
a.update_time
</sql>
<sql id="sysGuaziBankBranch_where">
<if test="sysGuaziBankBranch != null">
<if test="sysGuaziBankBranch.id != null">
AND a.id = #{sysGuaziBankBranch.id}
</if>
<if test="sysGuaziBankBranch.bankCd != null and sysGuaziBankBranch.bankCd.trim() != ''">
AND a.bank_cd = #{sysGuaziBankBranch.bankCd}
</if>
<if test="sysGuaziBankBranch.cnapsId != null">
AND a.cnaps_id = #{sysGuaziBankBranch.cnapsId}
</if>
<if test="sysGuaziBankBranch.cnapsNum != null and sysGuaziBankBranch.cnapsNum.trim() != ''">
AND a.cnaps_num = #{sysGuaziBankBranch.cnapsNum}
</if>
<if test="sysGuaziBankBranch.bankDescr != null and sysGuaziBankBranch.bankDescr.trim() != ''">
AND a.bank_descr LIKE CONCAT('%',#{sysGuaziBankBranch.bankDescr},'%')
</if>
<if test="sysGuaziBankBranch.stateId != null and sysGuaziBankBranch.stateId.trim() != ''">
AND a.state_id = #{sysGuaziBankBranch.stateId}
</if>
<if test="sysGuaziBankBranch.cityId != null and sysGuaziBankBranch.cityId.trim() != ''">
AND a.city_id = #{sysGuaziBankBranch.cityId}
</if>
<if test="sysGuaziBankBranch.createTime != null">
AND a.create_time = #{sysGuaziBankBranch.createTime}
</if>
<if test="sysGuaziBankBranch.createBy != null and sysGuaziBankBranch.createBy.trim() != ''">
AND a.create_by = #{sysGuaziBankBranch.createBy}
</if>
<if test="sysGuaziBankBranch.createName != null and sysGuaziBankBranch.createName.trim() != ''">
AND a.create_name = #{sysGuaziBankBranch.createName}
</if>
<if test="sysGuaziBankBranch.updateBy != null and sysGuaziBankBranch.updateBy.trim() != ''">
AND a.update_by = #{sysGuaziBankBranch.updateBy}
</if>
<if test="sysGuaziBankBranch.updateTime != null">
AND a.update_time = #{sysGuaziBankBranch.updateTime}
</if>
</if>
</sql>
<!--sysGuaziBankBranch简单分页查询-->
<select id="getSysGuaziBankBranchPage" resultMap="sysGuaziBankBranchMap">
SELECT
<include refid="Base_Column_List"/>
FROM sys_guazi_bank_branch a
<where>
1=1
<include refid="sysGuaziBankBranch_where"/>
</where>
order by a.id
</select>
</mapper>
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