@ -27,6 +27,8 @@ import com.epmet.dto.IcBuildingDTO;
import com.epmet.dto.IcBuildingUnitDTO ;
import com.epmet.dto.IcNeighborHoodDTO ;
import com.epmet.dto.IcResiUserDTO ;
import com.epmet.dto.form.lingshan.LingShanSpecialTypeSaveFormDTO ;
import com.epmet.dto.form.lingshan.LingShanSpecialTypeSaveResultDTO ;
import com.epmet.dto.result.HouseAgencyInfoResultDTO ;
import com.epmet.dto.result.ImportTaskCommonResultDTO ;
import com.epmet.dto.result.LingShanSpecialCrowdListResultDTO ;
@ -59,10 +61,7 @@ import org.springframework.web.multipart.commons.CommonsMultipartFile;
import java.io.IOException ;
import java.io.InputStream ;
import java.io.OutputStream ;
import java.util.Arrays ;
import java.util.Date ;
import java.util.List ;
import java.util.Optional ;
import java.util.* ;
import java.util.concurrent.CompletableFuture ;
import java.util.concurrent.ExecutorService ;
import java.util.concurrent.atomic.AtomicReference ;
@ -74,9 +73,6 @@ import java.util.concurrent.atomic.AtomicReference;
@Service
public class LingShanSpecialCrowdServiceImpl implements LingShanSpecialCrowdService , ResultDataResolver {
@Autowired
private LingshanSpecialCrowdPersonDao specialCrowdPersonDao ;
@Autowired
private LingshanSpecialCrowdPersonTypeDao specialCrowdPersonTypeDao ;
@ -251,22 +247,27 @@ public class LingShanSpecialCrowdServiceImpl implements LingShanSpecialCrowdServ
return "居民信息不存在,请先维护居民基础信息。" ;
}
if ( ! resiEntity . getName ( ) . equals ( name ) ) {
return String . format ( "姓名信息与居民基础信息不一致。(在居民库中根据身份证号找到的居民姓名为:%s)" , na me) ;
return String . format ( "姓名信息与居民基础信息不一致。(在居民库中根据身份证号找到的居民姓名为:%s)" , resiEntity . getNa me( ) ) ;
}
// 设置居民id
row . setResiId ( resiEntity . getId ( ) ) ;
return null ;
}
@Override
public void savePersonAndTypes ( List < LingshanSpecialCrowdPersonEntity > persons , List < LingshanSpecialCrowdPerson TypeEntity > personTypes ) {
List < List < LingshanSpecialCrowdPersonEntity > > personParts = ListUtils . partition ( persons , 50 ) ;
public void savePersonAndTypes ( List < LingshanSpecialCrowdPersonTypeEntity > personTypes ) {
// List<List<LingshanSpecialCrowdPersonEntity>> personParts = ListUtils.partition(persons, 50);
List < List < LingshanSpecialCrowdPersonTypeEntity > > personTypeParts = ListUtils . partition ( personTypes , 50 ) ;
for ( List < LingshanSpecialCrowdPersonEntity > p : personParts ) {
specialCrowdPersonDao . saveOrUpdateManually ( p ) ;
}
// for (List<LingshanSpecialCrowdPersonEntity> p : personParts) {
// specialCrowdPersonDao.saveOrUpdateManually(p);
// }
for ( List < LingshanSpecialCrowdPersonTypeEntity > p : personTypeParts ) {
specialCrowdPersonTypeDao . saveOrUpdateManually ( p ) ;
if ( CollectionUtils . isNotEmpty ( p ) ) {
specialCrowdPersonTypeDao . saveOrUpdateManually ( p ) ;
}
}
}
@ -274,7 +275,9 @@ public class LingShanSpecialCrowdServiceImpl implements LingShanSpecialCrowdServ
public void saveBatch ( List < LingshanSpecialCrowdDetailAzbjEntity > entities , LingshanSpecialCrowdDetailAzbjEntity e ) {
List < List < LingshanSpecialCrowdDetailAzbjEntity > > partition = ListUtils . partition ( entities , 50 ) ;
for ( List < LingshanSpecialCrowdDetailAzbjEntity > l : partition ) {
specialCrowdDetailAzbjDao . saveBatchManually ( l ) ;
if ( CollectionUtils . isNotEmpty ( l ) ) {
specialCrowdDetailAzbjDao . saveBatchManually ( l ) ;
}
}
}
@ -282,7 +285,9 @@ public class LingShanSpecialCrowdServiceImpl implements LingShanSpecialCrowdServ
public void saveBatch ( List < LingshanSpecialCrowdDetailJdryEntity > entities , LingshanSpecialCrowdDetailJdryEntity e ) {
List < List < LingshanSpecialCrowdDetailJdryEntity > > partition = ListUtils . partition ( entities , 50 ) ;
for ( List < LingshanSpecialCrowdDetailJdryEntity > l : partition ) {
specialCrowdDetailJdryDao . saveBatchManually ( l ) ;
if ( CollectionUtils . isNotEmpty ( l ) ) {
specialCrowdDetailJdryDao . saveBatchManually ( l ) ;
}
}
}
@ -290,7 +295,9 @@ public class LingShanSpecialCrowdServiceImpl implements LingShanSpecialCrowdServ
public void saveBatch ( List < LingshanSpecialCrowdDetailJzhzEntity > entities , LingshanSpecialCrowdDetailJzhzEntity e ) {
List < List < LingshanSpecialCrowdDetailJzhzEntity > > partition = ListUtils . partition ( entities , 50 ) ;
for ( List < LingshanSpecialCrowdDetailJzhzEntity > l : partition ) {
specialCrowdDetailJzhzDao . saveBatchManually ( l ) ;
if ( CollectionUtils . isNotEmpty ( l ) ) {
specialCrowdDetailJzhzDao . saveBatchManually ( l ) ;
}
}
}
@ -298,7 +305,9 @@ public class LingShanSpecialCrowdServiceImpl implements LingShanSpecialCrowdServ
public void saveBatch ( List < LingshanSpecialCrowdDetailSqjzEntity > entities , LingshanSpecialCrowdDetailSqjzEntity e ) {
List < List < LingshanSpecialCrowdDetailSqjzEntity > > partition = ListUtils . partition ( entities , 50 ) ;
for ( List < LingshanSpecialCrowdDetailSqjzEntity > l : partition ) {
specialCrowdDetailSqjzDao . saveBatchManually ( l ) ;
if ( CollectionUtils . isNotEmpty ( l ) ) {
specialCrowdDetailSqjzDao . saveBatchManually ( l ) ;
}
}
}
@ -306,14 +315,76 @@ public class LingShanSpecialCrowdServiceImpl implements LingShanSpecialCrowdServ
public void saveBatch ( List < LingshanSpecialCrowdDetailXfryEntity > entities , LingshanSpecialCrowdDetailXfryEntity e ) {
List < List < LingshanSpecialCrowdDetailXfryEntity > > partition = ListUtils . partition ( entities , 50 ) ;
for ( List < LingshanSpecialCrowdDetailXfryEntity > l : partition ) {
specialCrowdDetailXfryDao . saveBatchManually ( l ) ;
if ( CollectionUtils . isNotEmpty ( l ) ) {
specialCrowdDetailXfryDao . saveBatchManually ( l ) ;
}
}
}
// @Override
// public void createSpecialCrowd(LingShanSpecialCrowdDetailBaseExcelData specialData, String specialType) {
// // 检查
// String validateRst = validate(specialData);
// if (StringUtils.isNotBlank(validateRst)) {
// throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), null, validateRst);
// }
//
// String customerId = EpmetRequestHolder.getLoginUserCustomerId();
// String staffId = EpmetRequestHolder.getLoginUserId();
// CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(customerId, staffId);
// String orgIdPath = PidUtils.convertPid2OrgIdPath(staffInfo.getAgencyId(), staffInfo.getAgencyPIds());
//
// Date now = new Date();
//
// // 保存人员和类型信息
// LingshanSpecialCrowdPersonEntity person = new LingshanSpecialCrowdPersonEntity(IdWorker.getIdStr(), customerId, orgIdPath, specialData.getName(), specialData.getIdCard(),
// "0", 0, now, staffId, now, staffId);
// //
// LingshanSpecialCrowdPersonTypeEntity personType = new LingshanSpecialCrowdPersonTypeEntity(IdWorker.getIdStr(), customerId, orgIdPath, specialData.getResiId(), specialData.getIdCard(), specialType,
// "0", 0, now, staffId, now, staffId);
//
// savePersonAndTypes(Arrays.asList(person), Arrays.asList(personType));
//
// // Class clazz;
// // 这下面的代码其实类名写错了,但是这个方法也不用了,不改了就
// switch (specialType) {
// case "anzhibangjiao":
// LingshanSpecialCrowdDetailAzbjEntity e1 = ConvertUtils.sourceToTarget(specialData, LingshanSpecialCrowdDetailAzbjEntity.class);
// setCommonFields(e1, customerId, orgIdPath, now, staffId);
// saveBatch(Arrays.asList(e1), e1);
// break;
// case "xinfangrenyuan":
// LingshanSpecialCrowdDetailAzbjEntity e2 = ConvertUtils.sourceToTarget(specialData, LingshanSpecialCrowdDetailAzbjEntity.class);
// setCommonFields(e2, customerId, orgIdPath, now, staffId);
// saveBatch(Arrays.asList(e2), e2);
// break;
// case "jiedurenyuan":
// LingshanSpecialCrowdDetailAzbjEntity e3 = ConvertUtils.sourceToTarget(specialData, LingshanSpecialCrowdDetailAzbjEntity.class);
// setCommonFields(e3, customerId, orgIdPath, now, staffId);
// saveBatch(Arrays.asList(e3), e3);
// break;
// case "shequjiaozheng":
// LingshanSpecialCrowdDetailAzbjEntity e4 = ConvertUtils.sourceToTarget(specialData, LingshanSpecialCrowdDetailAzbjEntity.class);
// setCommonFields(e4, customerId, orgIdPath, now, staffId);
// saveBatch(Arrays.asList(e4), e4);
// break;
// case "jingzhanghuanzhe":
// LingshanSpecialCrowdDetailAzbjEntity e5 = ConvertUtils.sourceToTarget(specialData, LingshanSpecialCrowdDetailAzbjEntity.class);
// setCommonFields(e5, customerId, orgIdPath, now, staffId);
// saveBatch(Arrays.asList(e5), e5);
// break;
// }
//
// }
@Transactional ( rollbackFor = Exception . class )
@Override
public void createSpecialCrowd ( LingShanSpecialCrowdDetailBaseExcelData specialData , String specialType ) {
public void saveSpecialCrowd ( LingShanSpecialTypeSaveFormDTO input ) {
LingShanSpecialCrowdDetailBaseExcelData vt = new LingShanSpecialCrowdDetailBaseExcelData ( ) ;
vt . setName ( input . getName ( ) ) ;
vt . setIdCard ( input . getIdCard ( ) ) ;
// 检查
String validateRst = validate ( specialData ) ;
String validateRst = validate ( vt ) ;
if ( StringUtils . isNotBlank ( validateRst ) ) {
throw new EpmetException ( EpmetErrorCode . EPMET_COMMON_OPERATION_FAIL . getCode ( ) , null , validateRst ) ;
}
@ -325,45 +396,66 @@ public class LingShanSpecialCrowdServiceImpl implements LingShanSpecialCrowdServ
Date now = new Date ( ) ;
// 保存人员和类型信息
LingshanSpecialCrowdPersonEntity person = new LingshanSpecialCrowdPersonEntity ( IdWorker . getIdStr ( ) , customerId , orgIdPath , specialData . getName ( ) , specialData . getIdCard ( ) ,
"0" , 0 , now , staffId , now , staffId ) ;
//
LingshanSpecialCrowdPersonTypeEntity personType = new LingshanSpecialCrowdPersonTypeEntity ( IdWorker . getIdStr ( ) , customerId , orgIdPath , specialData . getIdCard ( ) , specialType ,
"0" , 0 , now , staffId , now , staffId ) ;
savePersonAndTypes ( Arrays . asList ( person ) , Arrays . asList ( personType ) ) ;
// Class clazz;
switch ( specialType ) {
case "anzhibangjiao" :
LingshanSpecialCrowdDetailAzbjEntity e1 = ConvertUtils . sourceToTarget ( specialData , LingshanSpecialCrowdDetailAzbjEntity . class ) ;
setCommonFields ( e1 , customerId , orgIdPath , now , staffId ) ;
saveBatch ( Arrays . asList ( e1 ) , e1 ) ;
break ;
case "xinfangrenyuan" :
LingshanSpecialCrowdDetailAzbjEntity e2 = ConvertUtils . sourceToTarget ( specialData , LingshanSpecialCrowdDetailAzbjEntity . class ) ;
setCommonFields ( e2 , customerId , orgIdPath , now , staffId ) ;
saveBatch ( Arrays . asList ( e2 ) , e2 ) ;
break ;
case "xidurenyuan" :
LingshanSpecialCrowdDetailAzbjEntity e3 = ConvertUtils . sourceToTarget ( specialData , LingshanSpecialCrowdDetailAzbjEntity . class ) ;
setCommonFields ( e3 , customerId , orgIdPath , now , staffId ) ;
saveBatch ( Arrays . asList ( e3 ) , e3 ) ;
break ;
case "shequjiaozheng" :
LingshanSpecialCrowdDetailAzbjEntity e4 = ConvertUtils . sourceToTarget ( specialData , LingshanSpecialCrowdDetailAzbjEntity . class ) ;
setCommonFields ( e4 , customerId , orgIdPath , now , staffId ) ;
saveBatch ( Arrays . asList ( e4 ) , e4 ) ;
break ;
case "jingzhanghuanzhe" :
LingshanSpecialCrowdDetailAzbjEntity e5 = ConvertUtils . sourceToTarget ( specialData , LingshanSpecialCrowdDetailAzbjEntity . class ) ;
setCommonFields ( e5 , customerId , orgIdPath , now , staffId ) ;
saveBatch ( Arrays . asList ( e5 ) , e5 ) ;
break ;
ArrayList < LingshanSpecialCrowdPersonTypeEntity > types2Save = new ArrayList < > ( ) ;
// 保存人群详情
if ( input . getSpecialCrowdDetails ( ) . getAnzhibangjiao ( ) ! = null ) {
LingshanSpecialCrowdDetailAzbjEntity azbj = ConvertUtils . sourceToTarget ( input . getSpecialCrowdDetails ( ) . getAnzhibangjiao ( ) , LingshanSpecialCrowdDetailAzbjEntity . class ) ;
setCommonFields ( azbj , customerId , orgIdPath , now , staffId ) ;
azbj . setIdCard ( input . getIdCard ( ) ) ;
saveBatch ( Arrays . asList ( azbj ) , azbj ) ;
LingshanSpecialCrowdPersonTypeEntity azbjE = new LingshanSpecialCrowdPersonTypeEntity ( IdWorker . getIdStr ( ) , customerId , orgIdPath , vt . getResiId ( ) , input . getIdCard ( ) , LingShanSpecialCrowdTypeEnums . AZBJ . getType ( ) ,
"0" , 0 , now , staffId , now , staffId ) ;
types2Save . add ( azbjE ) ;
}
if ( input . getSpecialCrowdDetails ( ) . getJiedurenyuan ( ) ! = null ) {
LingshanSpecialCrowdDetailJdryEntity jdry = ConvertUtils . sourceToTarget ( input . getSpecialCrowdDetails ( ) . getJiedurenyuan ( ) , LingshanSpecialCrowdDetailJdryEntity . class ) ;
setCommonFields ( jdry , customerId , orgIdPath , now , staffId ) ;
jdry . setIdCard ( input . getIdCard ( ) ) ;
saveBatch ( Arrays . asList ( jdry ) , jdry ) ;
LingshanSpecialCrowdPersonTypeEntity JdryE = new LingshanSpecialCrowdPersonTypeEntity ( IdWorker . getIdStr ( ) , customerId , orgIdPath , vt . getResiId ( ) , input . getIdCard ( ) , LingShanSpecialCrowdTypeEnums . JDRY . getType ( ) ,
"0" , 0 , now , staffId , now , staffId ) ;
types2Save . add ( JdryE ) ;
}
if ( input . getSpecialCrowdDetails ( ) . getJingzhanghuanzhe ( ) ! = null ) {
LingshanSpecialCrowdDetailJzhzEntity jzhz = ConvertUtils . sourceToTarget ( input . getSpecialCrowdDetails ( ) . getJingzhanghuanzhe ( ) , LingshanSpecialCrowdDetailJzhzEntity . class ) ;
setCommonFields ( jzhz , customerId , orgIdPath , now , staffId ) ;
jzhz . setIdCard ( input . getIdCard ( ) ) ;
saveBatch ( Arrays . asList ( jzhz ) , jzhz ) ;
LingshanSpecialCrowdPersonTypeEntity jzhzE = new LingshanSpecialCrowdPersonTypeEntity ( IdWorker . getIdStr ( ) , customerId , orgIdPath , vt . getResiId ( ) , input . getIdCard ( ) , LingShanSpecialCrowdTypeEnums . JZHZ . getType ( ) ,
"0" , 0 , now , staffId , now , staffId ) ;
types2Save . add ( jzhzE ) ;
}
if ( input . getSpecialCrowdDetails ( ) . getXinfangrenyuan ( ) ! = null ) {
LingshanSpecialCrowdDetailXfryEntity xfry = ConvertUtils . sourceToTarget ( input . getSpecialCrowdDetails ( ) . getXinfangrenyuan ( ) , LingshanSpecialCrowdDetailXfryEntity . class ) ;
setCommonFields ( xfry , customerId , orgIdPath , now , staffId ) ;
xfry . setIdCard ( input . getIdCard ( ) ) ;
saveBatch ( Arrays . asList ( xfry ) , xfry ) ;
LingshanSpecialCrowdPersonTypeEntity xfryE = new LingshanSpecialCrowdPersonTypeEntity ( IdWorker . getIdStr ( ) , customerId , orgIdPath , vt . getResiId ( ) , input . getIdCard ( ) , LingShanSpecialCrowdTypeEnums . XFRY . getType ( ) ,
"0" , 0 , now , staffId , now , staffId ) ;
types2Save . add ( xfryE ) ;
}
if ( input . getSpecialCrowdDetails ( ) . getShequjiaozheng ( ) ! = null ) {
LingshanSpecialCrowdDetailSqjzEntity sqjz = ConvertUtils . sourceToTarget ( input . getSpecialCrowdDetails ( ) . getShequjiaozheng ( ) , LingshanSpecialCrowdDetailSqjzEntity . class ) ;
setCommonFields ( sqjz , customerId , orgIdPath , now , staffId ) ;
sqjz . setIdCard ( input . getIdCard ( ) ) ;
saveBatch ( Arrays . asList ( sqjz ) , sqjz ) ;
LingshanSpecialCrowdPersonTypeEntity sqjzE = new LingshanSpecialCrowdPersonTypeEntity ( IdWorker . getIdStr ( ) , customerId , orgIdPath , vt . getResiId ( ) , input . getIdCard ( ) , LingShanSpecialCrowdTypeEnums . SQJZ . getType ( ) ,
"0" , 0 , now , staffId , now , staffId ) ;
types2Save . add ( sqjzE ) ;
}
// 保存人员类型
savePersonAndTypes ( types2Save ) ;
}
void setCommonFields ( LingshanSpecialCrowdDetailBaseEntity e , String customerId , String orgIdPath , Date now , String staffId ) {
@ -379,51 +471,53 @@ public class LingShanSpecialCrowdServiceImpl implements LingShanSpecialCrowdServ
}
@Override
public LingShanSpecialCrowdDetailBaseExcelData getPersonSpecialTypeDetail ( String idCard , String specialType , String specialDetailId ) {
// 查询人员基础信息
LambdaQueryWrapper < LingshanSpecialCrowdPersonEntity > personQ = new LambdaQueryWrapper < > ( ) ;
personQ . eq ( LingshanSpecialCrowdPersonEntity : : getIdCard , idCard ) ;
LingshanSpecialCrowdPersonEntity person = specialCrowdPersonDao . selectOne ( personQ ) ;
public LingShanSpecialTypeSaveResultDTO getPersonSpecialTypeDetail ( String resiId ) {
// 1.校验人员基础信息
IcResiUserEntity person = icResiUserDao . selectById ( resiId ) ;
if ( person = = null ) {
throw new EpmetException ( EpmetErrorCode . EPMET_COMMON_OPERATION_FAIL . getCode ( ) , null , "未找到该人员信息" ) ;
}
// 查询人员类别详情
LingShanSpecialCrowdDetailBaseExcelData d ;
switch ( specialType ) {
case "anzhibangjiao" :
LingshanSpecialCrowdDetailAzbjEntity e1 = specialCrowdDetailAzbjDao . selectById ( specialDetailId ) ;
d = ConvertUtils . sourceToTarget ( e1 , LingShanSpecialCrowdDetailAzbjExcelData . class ) ;
break ;
case "xinfangrenyuan" :
LingshanSpecialCrowdDetailXfryEntity e2 = specialCrowdDetailXfryDao . selectById ( specialDetailId ) ;
d = ConvertUtils . sourceToTarget ( e2 , LingshanSpecialCrowdDetailXfryExcelData . class ) ;
break ;
case "xidurenyuan" :
LingshanSpecialCrowdDetailJdryEntity e3 = specialCrowdDetailJdryDao . selectById ( specialDetailId ) ;
d = ConvertUtils . sourceToTarget ( e3 , LingshanSpecialCrowdDetailJdryExcelData . class ) ;
break ;
case "shequjiaozheng" :
LingshanSpecialCrowdDetailSqjzEntity e4 = specialCrowdDetailSqjzDao . selectById ( specialDetailId ) ;
d = ConvertUtils . sourceToTarget ( e4 , LingshanSpecialCrowdDetailSqjzExcelData . class ) ;
break ;
case "jingzhanghuanzhe" :
LingshanSpecialCrowdDetailJzhzEntity e5 = specialCrowdDetailJzhzDao . selectById ( specialDetailId ) ;
d = ConvertUtils . sourceToTarget ( e5 , LingshanSpecialCrowdDetailJzhzExcelData . class ) ;
break ;
default :
d = new LingShanSpecialCrowdDetailBaseExcelData ( ) ;
}
LingShanSpecialTypeSaveResultDTO d = new LingShanSpecialTypeSaveResultDTO ( ) ;
if ( d = = null ) {
throw new EpmetException ( EpmetErrorCode . EPMET_COMMON_OPERATION_FAIL . getCode ( ) , null , "未找到该人员的类别详细信息" ) ;
}
// 2.查询人员类别详情
LambdaQueryWrapper < LingshanSpecialCrowdDetailAzbjEntity > azbjQ = new LambdaQueryWrapper < > ( ) ;
azbjQ . eq ( LingshanSpecialCrowdDetailAzbjEntity : : getIdCard , person . getIdCard ( ) ) ;
LingshanSpecialCrowdDetailAzbjEntity e1 = specialCrowdDetailAzbjDao . selectOne ( azbjQ ) ;
LingShanSpecialTypeSaveResultDTO . SpecialCrowdAzbj specialCrowdAzbj = ConvertUtils . sourceToTarget ( e1 , LingShanSpecialTypeSaveResultDTO . SpecialCrowdAzbj . class ) ;
LambdaQueryWrapper < LingshanSpecialCrowdDetailXfryEntity > xfryQ = new LambdaQueryWrapper < > ( ) ;
xfryQ . eq ( LingshanSpecialCrowdDetailXfryEntity : : getIdCard , person . getIdCard ( ) ) ;
LingshanSpecialCrowdDetailXfryEntity e2 = specialCrowdDetailXfryDao . selectOne ( xfryQ ) ;
LingShanSpecialTypeSaveResultDTO . SpecialCrowdXfry specialCrowdXfry = ConvertUtils . sourceToTarget ( e2 , LingShanSpecialTypeSaveResultDTO . SpecialCrowdXfry . class ) ;
LambdaQueryWrapper < LingshanSpecialCrowdDetailJdryEntity > jdryQ = new LambdaQueryWrapper < > ( ) ;
jdryQ . eq ( LingshanSpecialCrowdDetailJdryEntity : : getIdCard , person . getIdCard ( ) ) ;
LingshanSpecialCrowdDetailJdryEntity e3 = specialCrowdDetailJdryDao . selectOne ( jdryQ ) ;
LingShanSpecialTypeSaveResultDTO . SpecialCrowdJdry specialCrowdJdry = ConvertUtils . sourceToTarget ( e3 , LingShanSpecialTypeSaveResultDTO . SpecialCrowdJdry . class ) ;
LambdaQueryWrapper < LingshanSpecialCrowdDetailSqjzEntity > sqjzQ = new LambdaQueryWrapper < > ( ) ;
sqjzQ . eq ( LingshanSpecialCrowdDetailSqjzEntity : : getIdCard , person . getIdCard ( ) ) ;
LingshanSpecialCrowdDetailSqjzEntity e4 = specialCrowdDetailSqjzDao . selectOne ( sqjzQ ) ;
LingShanSpecialTypeSaveResultDTO . SpecialCrowdSqjz specialCrowdSqjz = ConvertUtils . sourceToTarget ( e4 , LingShanSpecialTypeSaveResultDTO . SpecialCrowdSqjz . class ) ;
LambdaQueryWrapper < LingshanSpecialCrowdDetailJzhzEntity > jzhzQ = new LambdaQueryWrapper < > ( ) ;
jzhzQ . eq ( LingshanSpecialCrowdDetailJzhzEntity : : getIdCard , person . getIdCard ( ) ) ;
LingshanSpecialCrowdDetailJzhzEntity e5 = specialCrowdDetailJzhzDao . selectOne ( jzhzQ ) ;
LingShanSpecialTypeSaveResultDTO . SpecialCrowdJzhz specialCrowdJzhz = ConvertUtils . sourceToTarget ( e5 , LingShanSpecialTypeSaveResultDTO . SpecialCrowdJzhz . class ) ;
d . getSpecialCrowdDetails ( ) . setAnzhibangjiao ( specialCrowdAzbj ) ;
d . getSpecialCrowdDetails ( ) . setXinfangrenyuan ( specialCrowdXfry ) ;
d . getSpecialCrowdDetails ( ) . setJiedurenyuan ( specialCrowdJdry ) ;
d . getSpecialCrowdDetails ( ) . setShequjiaozheng ( specialCrowdSqjz ) ;
d . getSpecialCrowdDetails ( ) . setJingzhanghuanzhe ( specialCrowdJzhz ) ;
d . setName ( person . getName ( ) ) ;
d . setIdCard ( person . getIdCard ( ) ) ;
// 查询居民信息
IcResiUserEntity resiBaseEntity = icResiUserDao . selectResiUserEntityByIdCard ( idCard , EpmetRequestHolder . getLoginUserCustomerId ( ) ) ;
// 3. 查询和补充 居民信息
IcResiUserEntity resiBaseEntity = icResiUserDao . selectResiUserEntityByIdCard ( person . getIdCard ( ) , EpmetRequestHolder . getLoginUserCustomerId ( ) ) ;
if ( resiBaseEntity = = null ) {
throw new EpmetException ( EpmetErrorCode . EPMET_COMMON_OPERATION_FAIL . getCode ( ) , null , "未找到该人员信息" ) ;
}
@ -497,41 +591,41 @@ public class LingShanSpecialCrowdServiceImpl implements LingShanSpecialCrowdServ
GridInfoCache gridInfo = CustomerOrgRedis . getGridInfo ( resi . getGridId ( ) ) ;
i . setOrgNamePath ( gridInfo . getAgencyName ( ) . concat ( "-" ) . concat ( gridInfo . getGridName ( ) ) ) ;
i . setAddress ( getAddressOfResi ( resi . getGridId ( ) , resi . getHomeId ( ) ) ) ;
i . setSpecialTypeDisplay ( LingShanSpecialCrowdTypeEnums . getByType ( i . getSpecialType ( ) ) . getName ( ) ) ;
// 处理类型展示中文,将a,b,c =》 啊,喔,额
List < String > typesDisplay = new ArrayList < > ( ) ;
String specialTypesStr = i . getSpecialTypesStr ( ) ;
if ( StringUtils . isNotBlank ( specialTypesStr ) ) {
String [ ] types = specialTypesStr . split ( "," ) ;
for ( String type : types ) {
typesDisplay . add ( LingShanSpecialCrowdTypeEnums . getByType ( type ) . getName ( ) ) ;
}
}
i . setSpecialTypeDisplay ( String . join ( "," , typesDisplay ) ) ;
} ) ;
return new PageData < > ( l , new PageInfo < > ( l ) . getTotal ( ) ) ;
}
@Transactional
@Override
public void deleteByType ( String specialType , String idCard ) {
public void deleteByType ( String specialType , String resiId ) {
LambdaQueryWrapper < LingshanSpecialCrowdPersonTypeEntity > q = new LambdaQueryWrapper < > ( ) ;
q . eq ( LingshanSpecialCrowdPersonTypeEntity : : getSpecialType , specialType ) ;
q . eq ( LingshanSpecialCrowdPersonTypeEntity : : getResiId , resiId ) ;
// 先删除type
specialCrowdPersonTypeDao . deletePhysical ( specialType , idCard ) ;
specialCrowdPersonTypeDao . deletePhysical ( specialType , resiI d ) ;
// 再删除detail
switch ( specialType ) {
case "anzhibangjiao" :
specialCrowdDetailAzbjDao . deletePhysical ( idCard ) ;
break ;
case "xinfangrenyuan" :
specialCrowdDetailXfryDao . deletePhysical ( idCard ) ;
break ;
case "xidurenyuan" :
specialCrowdDetailJdryDao . deletePhysical ( idCard ) ;
break ;
case "shequjiaozheng" :
specialCrowdDetailSqjzDao . deletePhysical ( idCard ) ;
break ;
case "jingzhanghuanzhe" :
specialCrowdDetailJzhzDao . deletePhysical ( idCard ) ;
break ;
LingshanSpecialCrowdPersonTypeEntity personType = specialCrowdPersonTypeDao . selectOne ( q ) ;
if ( personType = = null ) {
return ;
}
LambdaQueryWrapper < LingshanSpecialCrowdPersonTypeEntity > q = new LambdaQueryWrapper < > ( ) ;
q . eq ( LingshanSpecialCrowdPersonTypeEntity : : getIdCard , idCard ) ;
if ( specialCrowdPersonTypeDao . selectCount ( q ) = = 0 ) {
// 没有type了,那就吧person也删了
specialCrowdPerson Dao . deletePhysical ( idCard ) ;
}
// 再删除detail
specialCrowdDetailAzbjDao . deletePhysical ( personType . getIdCard ( ) ) ;
specialCrowdDetailXfryDao . deletePhysical ( personType . getIdCard ( ) ) ;
specialCrowdDetailJdryDao . deletePhysical ( personType . getIdCard ( ) ) ;
specialCrowdDetailSqjzDao . deletePhysical ( personType . getIdCard ( ) ) ;
specialCrowdDetailJzhzDao . deletePhysical ( personType . getIdCard ( ) ) ;
}
}