2023-09-20 11:49:52 +08:00
package com.engine.recruit.service.impl ;
import com.engine.core.impl.Service ;
import com.engine.recruit.service.ApplicantResumeService ;
2023-09-25 16:35:14 +08:00
import org.apache.commons.lang3.StringUtils ;
2023-09-20 11:49:52 +08:00
import weaver.conn.RecordSet ;
2023-09-26 15:21:59 +08:00
import weaver.general.Util ;
2023-09-25 16:35:14 +08:00
import weaver.hrm.resource.ResourceComInfo ;
2023-09-20 11:49:52 +08:00
import java.util.ArrayList ;
import java.util.HashMap ;
import java.util.List ;
import java.util.Map ;
/ * *
* @author : dxfeng
* @createTime : 2023 / 09 / 20
* @version : 1 . 0
* /
public class ApplicantResumeServiceImpl extends Service implements ApplicantResumeService {
@Override
public Map < String , Object > getApplicantsName ( String ids ) {
2023-09-25 16:35:14 +08:00
Map < String , Object > returnMap = new HashMap < > ( 1 ) ;
2023-09-20 11:49:52 +08:00
RecordSet rs = new RecordSet ( ) ;
String [ ] split = ids . split ( " , " ) ;
List < Map < String , Object > > list = new ArrayList < > ( ) ;
for ( String id : split ) {
rs . executeQuery ( " select xm from uf_jcl_yppc where id = ? " , id ) ;
if ( rs . next ( ) ) {
Map < String , Object > rowMap = new HashMap < > ( ) ;
rowMap . put ( " id " , id ) ;
rowMap . put ( " name " , rs . getString ( " xm " ) ) ;
list . add ( rowMap ) ;
}
}
returnMap . put ( " rows " , list ) ;
return returnMap ;
}
2023-09-25 16:35:14 +08:00
@Override
public Map < String , Object > getInterviewInfoById ( String id ) {
Map < String , Object > returnMap = new HashMap < > ( 16 ) ;
String sql = " select a.ypz,b.xm,a.ypzw,b.tdsj,b.sjhm,b.dzyx,a.msfs,a.mshj ,a.msc,a.msg ,a.ptmsg,a.msrq,a.msdd ,a.msfkr from uf_jcl_ms a inner join uf_jcl_yppc b on a.ypz = b.id where a.id = ? " ;
RecordSet rs = new RecordSet ( ) ;
rs . executeQuery ( sql , id ) ;
if ( rs . next ( ) ) {
// 应聘者
returnMap . put ( " ypz " , createApplicantBrowserMap ( rs . getString ( " ypz " ) , rs . getString ( " xm " ) ) ) ;
// 应聘职位
returnMap . put ( " ypzw " , createAppliedPositionBrowserMap ( rs . getString ( " ypzw " ) ) ) ;
// 投递时间
returnMap . put ( " tdsj " , createApplicantBrowserMap ( rs . getString ( " tdsj " ) ) ) ;
// 手机号码
returnMap . put ( " sjhm " , createApplicantBrowserMap ( rs . getString ( " sjhm " ) ) ) ;
// 电子邮箱
returnMap . put ( " dzyx " , createApplicantBrowserMap ( rs . getString ( " dzyx " ) ) ) ;
// 面试方式
returnMap . put ( " msfs " , createApplicantBrowserMap ( rs . getString ( " msfs " ) ) ) ;
// 面试环节
returnMap . put ( " mshj " , createApplicantBrowserMap ( rs . getString ( " mshj " ) ) ) ;
// 面试轮次
returnMap . put ( " msc " , createApplicantBrowserMap ( rs . getString ( " msc " ) ) ) ;
// 面试官
returnMap . put ( " msg " , createResourceBrowserMap ( rs . getString ( " msg " ) ) ) ;
// 陪同面试官
returnMap . put ( " ptmsg " , createResourceBrowserMap ( rs . getString ( " ptmsg " ) ) ) ;
// 面试日期
returnMap . put ( " msrq " , createApplicantBrowserMap ( rs . getString ( " msrq " ) ) ) ;
// 面试地址
returnMap . put ( " msdd " , createApplicantBrowserMap ( rs . getString ( " msdd " ) ) ) ;
}
return returnMap ;
}
2023-09-26 15:21:59 +08:00
@Override
public Map < String , Object > getDisplayLayoutId ( Map < String , Object > params ) {
Map < String , Object > returnMap = new HashMap < > ( ) ;
String layoutId = Util . null2String ( params . get ( " layoutid " ) ) ;
String modeId = Util . null2String ( params . get ( " modeId " ) ) ;
returnMap . put ( " layoutId " , layoutId ) ;
RecordSet rs = new RecordSet ( ) ;
rs . executeQuery ( " select layoutname from modehtmllayout where modeid = ? and id = ? " , modeId , layoutId ) ;
if ( rs . next ( ) ) {
String layoutName = rs . getString ( " layoutname " ) ;
// 获取相同名称的显示布局ID
rs . executeQuery ( " select id from modehtmllayout where type = 0 and modeid = ? and layoutname =? " , modeId , layoutName ) ;
if ( rs . next ( ) ) {
returnMap . put ( " layoutId " , rs . getString ( " id " ) ) ;
}
}
return returnMap ;
}
2023-09-25 16:35:14 +08:00
/ * *
* 构建普通数据格式
*
* @param value
* @return
* /
private Map < String , Object > createApplicantBrowserMap ( String value ) {
if ( StringUtils . isBlank ( value ) ) {
return null ;
}
Map < String , Object > browserMap = new HashMap < > ( 1 ) ;
browserMap . put ( " value " , value ) ;
return browserMap ;
}
/ * *
* 构建应聘者浏览按钮值
*
* @param id
* @param name
* @return
* /
private Map < String , Object > createApplicantBrowserMap ( String id , String name ) {
Map < String , Object > browserMap = new HashMap < > ( 2 ) ;
if ( StringUtils . isBlank ( id ) ) {
return browserMap ;
}
browserMap . put ( " value " , id ) ;
List < Map < String , Object > > objList = new ArrayList < > ( ) ;
Map < String , Object > obj = new HashMap < > ( 2 ) ;
obj . put ( " id " , id ) ;
obj . put ( " name " , name ) ;
objList . add ( obj ) ;
browserMap . put ( " specialobj " , objList ) ;
return browserMap ;
}
/ * *
* 构建应聘职位浏览按钮
*
* @param id
* @return
* /
private Map < String , Object > createAppliedPositionBrowserMap ( String id ) {
Map < String , Object > browserMap = new HashMap < > ( 2 ) ;
if ( StringUtils . isBlank ( id ) ) {
return browserMap ;
}
browserMap . put ( " value " , id ) ;
RecordSet rs = new RecordSet ( ) ;
rs . executeQuery ( " select zpzwmc from uf_jcl_zp_zpzw where id = ? " , id ) ;
if ( rs . next ( ) ) {
List < Map < String , Object > > objList = new ArrayList < > ( ) ;
Map < String , Object > obj = new HashMap < > ( 2 ) ;
obj . put ( " id " , id ) ;
obj . put ( " name " , rs . getString ( " zpzwmc " ) ) ;
objList . add ( obj ) ;
browserMap . put ( " specialobj " , objList ) ;
}
return browserMap ;
}
/ * *
* 构建人员浏览按钮值
*
* @param ids
* @return
* /
private Map < String , Object > createResourceBrowserMap ( String ids ) {
Map < String , Object > browserMap = new HashMap < > ( 2 ) ;
if ( StringUtils . isBlank ( ids ) ) {
return browserMap ;
}
browserMap . put ( " value " , ids ) ;
List < Map < String , Object > > objList = new ArrayList < > ( ) ;
String [ ] split = ids . split ( " , " ) ;
try {
ResourceComInfo resourceComInfo = new ResourceComInfo ( ) ;
for ( String s : split ) {
Map < String , Object > obj = new HashMap < > ( 2 ) ;
obj . put ( " id " , s ) ;
obj . put ( " name " , resourceComInfo . getLastname ( s ) ) ;
objList . add ( obj ) ;
}
} catch ( Exception e ) {
throw new RuntimeException ( e ) ;
}
browserMap . put ( " specialobj " , objList ) ;
return browserMap ;
}
2023-09-20 11:49:52 +08:00
}