提交 e4f5006c 作者: ZhangJingKun

张京坤

上级 3b5449ab
...@@ -38,7 +38,7 @@ public class CharacterInfoController { ...@@ -38,7 +38,7 @@ public class CharacterInfoController {
*/ */
@GetMapping("getByUid") @GetMapping("getByUid")
public Result<?> getByUid(@RequestParam(name="uid",required=true) String uid){ public Result<?> getByUid(@RequestParam(name="uid",required=true) String uid){
return Result.OK(characterInfoService.getByUid(uid)); return characterInfoService.getByUid(uid);
} }
/** /**
...@@ -48,7 +48,7 @@ public class CharacterInfoController { ...@@ -48,7 +48,7 @@ public class CharacterInfoController {
*/ */
@GetMapping @GetMapping
public Result<?> getById(@RequestParam(name="id",required=true) String id){ public Result<?> getById(@RequestParam(name="id",required=true) String id){
return Result.OK(characterInfoService.getById(id)); return characterInfoService.getById(id);
} }
/** /**
...@@ -62,6 +62,16 @@ public class CharacterInfoController { ...@@ -62,6 +62,16 @@ public class CharacterInfoController {
} }
/** /**
* 根据人物id主键删除
* @param id
* @return
*/
@GetMapping("/del")
public Result<?> del(@RequestParam(name="id",required=true) String id){
return characterInfoService.del(id);
}
/**
* 条件分页查询 * 条件分页查询
* @param characterListVo * @param characterListVo
* @return * @return
...@@ -80,26 +90,61 @@ public class CharacterInfoController { ...@@ -80,26 +90,61 @@ public class CharacterInfoController {
return characterInfoService.getList(characterListVo); return characterInfoService.getList(characterListVo);
} }
//审核 更新人物
@PostMapping("/checkUpdate")
public Result<?> checkUpdate(@RequestBody CharacterCheckVo characterCheckVo){
if(characterCheckVo.getOriginalCharacter() == null || characterCheckVo.getCharacter() == null)
Result.error("参数有误:originalCharacter和character不能为空!");
String originalCharacterId = characterCheckVo.getOriginalCharacter().getId();
if(originalCharacterId == null || "".equals(originalCharacterId))
Result.error("参数有误:原人物id不能为空");
return characterInfoService.checkUpdate(characterCheckVo);
/**
* 审核界面根据关联资讯id 查询资讯关联的人物
* @param
* @return
*/
@GetMapping("/checkList")
public Result<?> checkList(@RequestParam(name="articleId",required=true) String articleId){
if(articleId == null && articleId.length() == 0)
return Result.error("资讯id不能为空!");
return characterInfoService.checkList(articleId);
} }
//审核 取消人物 /**
@PostMapping("/checkCancelUpdate") * 审核界面根据人物名称查询人物列表,排除当条数据
public Result<?> checkCancelUpdate(@RequestBody CharacterVo characterVo){ * @param
* @return
*/
@GetMapping("/getListByName")
public Result<?> getListByName(@RequestParam(name="id",required=true) String id,
@RequestParam(name="name",required=true) String name,
@RequestParam(name="articleId",required=true) String articleId){
return characterInfoService.checkCancelUpdate(characterVo); if(id == null && id.length() == 0)
return Result.error("id不能为空!");
if(id == null)
return Result.error("name不能为空!");
return characterInfoService.getListByName(id, name, articleId);
} }
/**
* 审核
* @param characterCheckVo
* @return
*/
@PostMapping("/checkUpdate")
public Result<?> checkUpdate(@RequestBody CharacterCheckVo characterCheckVo){
if(characterCheckVo.getOriginalCharacter() == null || characterCheckVo.getCharacter() == null)
return Result.error("参数有误:历史人物信息或新人物信息不能为空!");
return characterInfoService.checkUpdate(characterCheckVo);
}
/**
* 根据id 取消人物 审核
* @param id
* @return
*/
@GetMapping("/checkCancelUpdate")
public Result<?> checkCancelUpdate(@RequestParam(name="id",required=true) String id){
if(id == null || id.length() ==0)
return Result.error("id不能为空!");
return characterInfoService.checkCancelUpdate(id);
}
} }
package com.zzsn.leaderbase.controller;
import com.zzsn.leaderbase.service.CityAddressService;
import com.zzsn.leaderbase.vo.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
* @Version 1.0
* @Author: ZhangJingKun
* @Date: 2024/3/9 15:54
* @Content:
*/
@RestController
@RequestMapping("/api/cityAddress")
public class CityAddressController {
@Autowired
CityAddressService cityAddressService;
@GetMapping("/getCityList")
public Result<?> getCityList(){
return cityAddressService.getCityList();
}
}
...@@ -78,4 +78,11 @@ public class CharacterChangeInfo extends Model<CharacterChangeInfo> { ...@@ -78,4 +78,11 @@ public class CharacterChangeInfo extends Model<CharacterChangeInfo> {
//启停状态 1启 0停 //启停状态 1启 0停
private Long status; private Long status;
//审核标识 原人物id
private String originalId;
//审核标识 新人物id
private String newId;
//合并标识 1:更新人物 2:添加职位
private Long mergeStatus;
} }
package com.zzsn.leaderbase.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("city_address")
public class CityAddress {
private String id;
private String name;
private String pid;
}
...@@ -19,7 +19,7 @@ import java.util.List; ...@@ -19,7 +19,7 @@ import java.util.List;
public interface CharacterBasicInfoMapper extends BaseMapper<CharacterBasicInfo> { public interface CharacterBasicInfoMapper extends BaseMapper<CharacterBasicInfo> {
@Select("select " + @Select("select " +
"a.id,a.uid,a.name,a.sex,a.birthplace,a.birthday,a.native_place,a.school,a.speciality,a.education,a.expert_occupation,a.head_sculpture,a.biographical_notes,a.category,a.award_records,a.part_time_job,a.research_field,a.evaluate,a.create_by,a.create_time,a.update_by,a.update_time,a.status,department_original,duty_original,department,duty,b.take_office_time,b.take_office_status,b.change_url,b.duties_update_time,b.duties_update_reason,b.check_status,b.check_result,b.article_id,b.article_title,b.update_desc " + "a.id,a.uid,a.name,a.sex,a.birthplace,a.birthday,a.native_place,a.school,a.speciality,a.education,a.expert_occupation,a.head_sculpture,a.biographical_notes,a.category,a.award_records,a.part_time_job,a.research_field,a.evaluate,a.status,b.company_original,b.department_original,b.duty_original,b.company,b.department,b.duty,b.take_office_time,b.take_office_status,b.change_url,b.duties_update_time,b.duties_update_reason,b.check_status,b.check_result,b.article_id,b.article_title,b.update_desc,b.original_id,b.new_id,b.merge_status,a.create_by,a.create_time,a.update_by,a.update_time " +
"from character_basic_info a " + "from character_basic_info a " +
"LEFT JOIN character_change_info b " + "LEFT JOIN character_change_info b " +
"on a.id = b.id " + "on a.id = b.id " +
...@@ -27,7 +27,7 @@ public interface CharacterBasicInfoMapper extends BaseMapper<CharacterBasicInfo> ...@@ -27,7 +27,7 @@ public interface CharacterBasicInfoMapper extends BaseMapper<CharacterBasicInfo>
CharacterVo getByUid(String uid); CharacterVo getByUid(String uid);
@Select("select " + @Select("select " +
"a.id,a.uid,a.name,a.sex,a.birthplace,a.birthday,a.native_place,a.school,a.speciality,a.education,a.expert_occupation,a.head_sculpture,a.biographical_notes,a.category,a.award_records,a.part_time_job,a.research_field,a.evaluate,a.create_by,a.create_time,a.update_by,a.update_time,a.status,department_original,duty_original,department,duty,b.take_office_time,b.take_office_status,b.change_url,b.duties_update_time,b.duties_update_reason,b.check_status,b.check_result,b.article_id,b.article_title,b.update_desc " + "a.id,a.uid,a.name,a.sex,a.birthplace,a.birthday,a.native_place,a.school,a.speciality,a.education,a.expert_occupation,a.head_sculpture,a.biographical_notes,a.category,a.award_records,a.part_time_job,a.research_field,a.evaluate,a.status,b.company_original,b.department_original,b.duty_original,b.company,b.department,b.duty,b.take_office_time,b.take_office_status,b.change_url,b.duties_update_time,b.duties_update_reason,b.check_status,b.check_result,b.article_id,b.article_title,b.update_desc,b.original_id,b.new_id,b.merge_status,a.create_by,a.create_time,a.update_by,a.update_time " +
"from character_basic_info a " + "from character_basic_info a " +
"LEFT JOIN character_change_info b " + "LEFT JOIN character_change_info b " +
"on a.id = b.id " + "on a.id = b.id " +
...@@ -37,4 +37,18 @@ public interface CharacterBasicInfoMapper extends BaseMapper<CharacterBasicInfo> ...@@ -37,4 +37,18 @@ public interface CharacterBasicInfoMapper extends BaseMapper<CharacterBasicInfo>
List<CharacterVo> getList(CharacterListVo characterListVo); List<CharacterVo> getList(CharacterListVo characterListVo);
Integer getCount(); Integer getCount();
List<CharacterVo> checkList(String articleId);
@Select("select " +
"a.id,a.uid,a.name,a.sex,a.birthplace,a.birthday,a.native_place,a.school,a.speciality,a.education,a.expert_occupation,a.head_sculpture,a.biographical_notes,a.category,a.award_records,a.part_time_job,a.research_field,a.evaluate,a.status,b.company_original,b.department_original,b.duty_original,b.company,b.department,b.duty,b.take_office_time,b.take_office_status,b.change_url,b.duties_update_time,b.duties_update_reason,b.check_status,b.check_result,b.article_id,b.article_title,b.update_desc,b.original_id,b.new_id,b.merge_status,a.create_by,a.create_time,a.update_by,a.update_time " +
"from character_basic_info a " +
"LEFT JOIN character_change_info b " +
"on a.id = b.id " +
"where 1=1 " +
"and (b.status != 0 or b.status IS NULL)" +
"and a.name = #{name} " +
"and a.id != #{id} " +
"and b.article_id != #{articleId}")
List<CharacterVo> getListByName(String id, String name, String articleId);
} }
package com.zzsn.leaderbase.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zzsn.leaderbase.entity.CityAddress;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
* @Version 1.0
* @Author: ZhangJingKun
* @Date: 2024/3/9 16:00
* @Content:
*/
@Mapper
public interface CityAddressMapper extends BaseMapper<CityAddress> {
@Select("select * from city_address where pid = #{pid}")
List<CityAddress> getCityList(String pid);
}
...@@ -22,4 +22,8 @@ public interface CharacterBasicInfoService extends IService<CharacterBasicInfo> ...@@ -22,4 +22,8 @@ public interface CharacterBasicInfoService extends IService<CharacterBasicInfo>
List<CharacterVo> getList(CharacterListVo characterListVo); List<CharacterVo> getList(CharacterListVo characterListVo);
Integer getCount(CharacterListVo characterListVo); Integer getCount(CharacterListVo characterListVo);
List<CharacterVo> checkList(String articleId);
List<CharacterVo> getListByName(String id, String name, String articleId);
} }
...@@ -20,16 +20,24 @@ public interface CharacterInfoService { ...@@ -20,16 +20,24 @@ public interface CharacterInfoService {
Result<?> addBulk (List<CharacterVo> list); Result<?> addBulk (List<CharacterVo> list);
CharacterVo getByUid(String uid); Result<?> getByUid(String uid);
CharacterVo getById(String id); Result<?> getById(String id);
Result<?> edit(CharacterVo characterVo); Result<?> edit(CharacterVo characterVo);
Result<?> del(String id);
Result<?> getList(CharacterListVo characterListVo); Result<?> getList(CharacterListVo characterListVo);
Result<?> checkList(String articleId);
Result<?> getListByName(String id, String Name, String articleId);
Result<?> checkUpdate(CharacterCheckVo characterCheckVo); Result<?> checkUpdate(CharacterCheckVo characterCheckVo);
Result<?> checkCancelUpdate(CharacterVo characterVo); Result<?> checkCancelUpdate(String id);
} }
package com.zzsn.leaderbase.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zzsn.leaderbase.entity.CityAddress;
import com.zzsn.leaderbase.vo.Result;
/**
* @Version 1.0
* @Author: ZhangJingKun
* @Date: 2024/3/9 15:56
* @Content:
*/
public interface CityAddressService extends IService<CityAddress> {
Result<?> getCityList();
}
...@@ -8,4 +8,7 @@ public interface IGeneratorIdService { ...@@ -8,4 +8,7 @@ public interface IGeneratorIdService {
// 通过加锁拿id, 不建议使用; // 通过加锁拿id, 不建议使用;
// Long nextId(); // Long nextId();
//通过redis生成
String getIdNo();
} }
...@@ -44,4 +44,14 @@ public class CharacterBasicInfoServiceImpl extends ServiceImpl<CharacterBasicInf ...@@ -44,4 +44,14 @@ public class CharacterBasicInfoServiceImpl extends ServiceImpl<CharacterBasicInf
public Integer getCount(CharacterListVo characterListVo) { public Integer getCount(CharacterListVo characterListVo) {
return characterBasicInfoMapper.getCount(); return characterBasicInfoMapper.getCount();
} }
@Override
public List<CharacterVo> checkList(String articleId) {
return characterBasicInfoMapper.checkList(articleId);
}
@Override
public List<CharacterVo> getListByName(String id, String name, String articleId) {
return characterBasicInfoMapper.getListByName(id, name, articleId);
}
} }
package com.zzsn.leaderbase.service.impl; package com.zzsn.leaderbase.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
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.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zzsn.leaderbase.entity.CorrelationInformation; import com.zzsn.leaderbase.entity.CorrelationInformation;
import com.zzsn.leaderbase.mapper.CharacterDetailsMapper; import com.zzsn.leaderbase.mapper.CharacterDetailsMapper;
...@@ -49,7 +51,16 @@ public class CharacterDetailsServiceImpl extends ServiceImpl<CharacterDetailsMap ...@@ -49,7 +51,16 @@ public class CharacterDetailsServiceImpl extends ServiceImpl<CharacterDetailsMap
lambdaQuery.last(sb.toString()); lambdaQuery.last(sb.toString());
List<CorrelationInformation> list = characterDetailsMapper.selectList(lambdaQuery); List<CorrelationInformation> list = characterDetailsMapper.selectList(lambdaQuery);
return Result.OK(list);
IPage page = new Page();
page.setRecords(list);
Integer total = characterDetailsMapper.selectCount(lambdaQuery);
page.setTotal(total);
page.setCurrent(detailsListVo.getPageNo());
page.setSize(detailsListVo.getPageSize());
return Result.OK(page);
} }
@Override @Override
......
...@@ -5,12 +5,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -5,12 +5,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zzsn.leaderbase.entity.CharacterBasicInfo; import com.zzsn.leaderbase.entity.CharacterBasicInfo;
import com.zzsn.leaderbase.entity.CharacterBasicInfoHistory; import com.zzsn.leaderbase.entity.CharacterBasicInfoHistory;
import com.zzsn.leaderbase.entity.CharacterChangeInfo; import com.zzsn.leaderbase.entity.CharacterChangeInfo;
import com.zzsn.leaderbase.entity.CharacterChangeInfoHistory;
import com.zzsn.leaderbase.service.*; import com.zzsn.leaderbase.service.*;
import com.zzsn.leaderbase.util.CharacterMergeStatus;
import com.zzsn.leaderbase.vo.CharacterCheckVo; import com.zzsn.leaderbase.vo.CharacterCheckVo;
import com.zzsn.leaderbase.vo.CharacterListVo; import com.zzsn.leaderbase.vo.CharacterListVo;
import com.zzsn.leaderbase.vo.CharacterVo; import com.zzsn.leaderbase.vo.CharacterVo;
import com.zzsn.leaderbase.vo.Result; import com.zzsn.leaderbase.vo.Result;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -26,6 +27,7 @@ import java.util.List; ...@@ -26,6 +27,7 @@ import java.util.List;
* @Content: 人物基本信息和职务变更信息 * @Content: 人物基本信息和职务变更信息
*/ */
@Service @Service
@Slf4j
public class CharacterInfoServiceImpl implements CharacterInfoService { public class CharacterInfoServiceImpl implements CharacterInfoService {
@Autowired @Autowired
...@@ -38,22 +40,23 @@ public class CharacterInfoServiceImpl implements CharacterInfoService { ...@@ -38,22 +40,23 @@ public class CharacterInfoServiceImpl implements CharacterInfoService {
@Autowired @Autowired
CharacterChangeInfoHistoryService characterChangeInfoHistoryService; CharacterChangeInfoHistoryService characterChangeInfoHistoryService;
/** //生成id
* 雪花算法生成id
*/
@Autowired @Autowired
IGeneratorIdService generatorIdService; IGeneratorIdService generatorIdService;
@Autowired
CharacterMergeStatus characterMergeStatus;
@Override @Override
public Result<?> add(CharacterVo characterVo) { public Result<?> add(CharacterVo characterVo) {
characterVo.setUid(generatorIdService.getOrderId().toString());
String id = Long.toString(generatorIdService.getOrderId()); String id = Long.toString(generatorIdService.getOrderId());
characterVo.setId(id); characterVo.setId(id);
characterVo.setCreateTime(new Date()); characterVo.setCreateTime(new Date());
String uid = generatorIdService.getIdNo();
characterVo.setUid(uid);
//vo对象获取转entity对象,基本信息 //vo对象获取转entity对象,基本信息
CharacterBasicInfo characterBasicInfo = new CharacterBasicInfo(); CharacterBasicInfo characterBasicInfo = new CharacterBasicInfo();
BeanUtils.copyProperties(characterVo, characterBasicInfo); BeanUtils.copyProperties(characterVo, characterBasicInfo);
...@@ -83,6 +86,8 @@ public class CharacterInfoServiceImpl implements CharacterInfoService { ...@@ -83,6 +86,8 @@ public class CharacterInfoServiceImpl implements CharacterInfoService {
String id = Long.toString(generatorIdService.getOrderId()); String id = Long.toString(generatorIdService.getOrderId());
characterVo.setId(id); characterVo.setId(id);
characterVo.setCreateTime(new Date()); characterVo.setCreateTime(new Date());
String uid = generatorIdService.getIdNo();
characterVo.setUid(uid);
CharacterBasicInfo characterBasicInfo = new CharacterBasicInfo(); CharacterBasicInfo characterBasicInfo = new CharacterBasicInfo();
BeanUtils.copyProperties(characterVo, characterBasicInfo); BeanUtils.copyProperties(characterVo, characterBasicInfo);
...@@ -106,13 +111,13 @@ public class CharacterInfoServiceImpl implements CharacterInfoService { ...@@ -106,13 +111,13 @@ public class CharacterInfoServiceImpl implements CharacterInfoService {
} }
@Override @Override
public CharacterVo getByUid(String uid) { public Result<?> getByUid(String uid) {
return characterBasicInfoService.getByUid(uid); return Result.OK(characterBasicInfoService.getByUid(uid));
} }
@Override @Override
public CharacterVo getById(String id) { public Result<?> getById(String id) {
return characterBasicInfoService.getById(id); return Result.OK(characterBasicInfoService.getById(id));
} }
@Override @Override
...@@ -141,6 +146,14 @@ public class CharacterInfoServiceImpl implements CharacterInfoService { ...@@ -141,6 +146,14 @@ public class CharacterInfoServiceImpl implements CharacterInfoService {
} }
@Override @Override
public Result<?> del(String id) {
characterBasicInfoService.removeById(id);
characterChangeInfoService.removeById(id);
return Result.OK();
}
@Override
public Result<?> getList(CharacterListVo characterListVo) { public Result<?> getList(CharacterListVo characterListVo) {
IPage page = new Page(); IPage page = new Page();
...@@ -159,54 +172,116 @@ public class CharacterInfoServiceImpl implements CharacterInfoService { ...@@ -159,54 +172,116 @@ public class CharacterInfoServiceImpl implements CharacterInfoService {
return Result.OK(page); return Result.OK(page);
} }
@Override
public Result<?> checkList(String articleId) {
List<CharacterVo> list = new ArrayList<>();
//当关联多个资讯id时时使用逗号分隔的
String[] articleIdsArr = articleId.split(",");
for (String article : articleIdsArr) {
List<CharacterVo> characterVoList = characterBasicInfoService.checkList(article);
list.addAll(characterVoList);
}
return Result.OK(list);
}
@Override
public Result<?> getListByName(String id, String name, String articleId) {
List<CharacterVo> list = characterBasicInfoService.getListByName(id, name, articleId);
return Result.OK(list);
}
@Override @Override
public Result<?> checkUpdate(CharacterCheckVo characterCheckVo) { public Result<?> checkUpdate(CharacterCheckVo characterCheckVo) {
//原人物信息
CharacterVo originalCharacter = characterCheckVo.getOriginalCharacter(); CharacterVo originalCharacter = characterCheckVo.getOriginalCharacter();
//先查询更新之前的任职信息保存到历史任职记录表中 //新人物信息
CharacterChangeInfo cci = characterChangeInfoService.getById(originalCharacter.getId()); CharacterVo character = characterCheckVo.getCharacter();
CharacterChangeInfoHistory characterChangeInfoHistory = new CharacterChangeInfoHistory(); character.setCheckStatus(1L);
BeanUtils.copyProperties(cci, characterChangeInfoHistory);
characterChangeInfoHistory.setId(null);
characterChangeInfoHistory.setCreateTime(new Date());
characterChangeInfoHistoryService.save(characterChangeInfoHistory);
//更新职务信息
//获取新的人物对象
CharacterVo characterVoNew = characterMergeStatus.mergeNew(originalCharacter, character);
CharacterVo character = characterCheckVo.getCharacter();
String characterId = character.getId();
//更新人物
character.setId(originalCharacter.getId());
character.setUpdateTime(new Date());
//保存数据
//vo对象获取转entity对象,基本信息 //vo对象获取转entity对象,基本信息
CharacterBasicInfo characterBasicInfo = new CharacterBasicInfo(); CharacterBasicInfo characterBasicInfo = new CharacterBasicInfo();
BeanUtils.copyProperties(character, characterBasicInfo); BeanUtils.copyProperties(characterVoNew, characterBasicInfo);
characterBasicInfoService.updateById(characterBasicInfo); characterBasicInfoService.save(characterBasicInfo);
//vo对象获取转entity对象,任职变更信息 //vo对象获取转entity对象,任职变更信息
CharacterChangeInfo characterChangeInfo = new CharacterChangeInfo(); CharacterChangeInfo characterChangeInfo = new CharacterChangeInfo();
BeanUtils.copyProperties(character, characterChangeInfo); BeanUtils.copyProperties(characterVoNew, characterChangeInfo);
characterChangeInfo.setUpdateDesc(characterId); characterChangeInfoService.save(characterChangeInfo);
characterChangeInfoService.updateById(characterChangeInfo);
//合并前的数据状态修改为停用
List<CharacterChangeInfo> updateList = new ArrayList<>();
CharacterChangeInfo cci1 = new CharacterChangeInfo();
cci1.setId(originalCharacter.getId());
cci1.setStatus(0L);
updateList.add(cci1);
CharacterChangeInfo cci2 = new CharacterChangeInfo();
cci2.setId(character.getId());
cci2.setStatus(0L);
updateList.add(cci2);
characterChangeInfoService.updateBatchById(updateList);
//记录人物基本信息修改记录 //记录人物基本信息修改记录
CharacterBasicInfoHistory characterBasicInfoHistory = new CharacterBasicInfoHistory(); CharacterBasicInfoHistory characterBasicInfoHistory = new CharacterBasicInfoHistory();
BeanUtils.copyProperties(characterBasicInfo, characterBasicInfoHistory); BeanUtils.copyProperties(characterBasicInfo, characterBasicInfoHistory);
characterBasicInfoHistory.setId(null); characterBasicInfoHistory.setId(null);
characterBasicInfoHistory.setCreateTime(new Date());
characterBasicInfoHistoryService.save(characterBasicInfoHistory); characterBasicInfoHistoryService.save(characterBasicInfoHistory);
//合并后的数据改为停用状态 return Result.OK(characterVoNew);
CharacterChangeInfo cciStatus = new CharacterChangeInfo();
cciStatus.setId(characterId);
cciStatus.setStatus(0L);
characterChangeInfoService.updateById(cciStatus);
return Result.OK();
} }
@Override @Override
public Result<?> checkCancelUpdate(CharacterVo characterVo) { public Result<?> checkCancelUpdate(String id) {
return null; //根据id查询人物信息
CharacterVo characterVo = characterBasicInfoService.getById(id);
if(characterVo == null){
log.info("根据id未查询到人物信息:{}", id);
return Result.error("未查询到人物信息!");
}
//审核信息 原人物id
String originalId = characterVo.getOriginalId();
//审核信息 新人物id
String newId = characterVo.getNewId();
//审核信息 1:更新人物 2:添加职位
Long mergeStatus = characterVo.getMergeStatus();
if (mergeStatus == null || originalId == null || newId == null){
log.info("数据有误:{}---{}---{}", originalId, newId, mergeStatus);
return Result.error("数据有误!");
}
//恢复合并前的人物为启用
//合并前的数据状态修改为停用
List<CharacterChangeInfo> updateList = new ArrayList<>();
CharacterChangeInfo cci1 = new CharacterChangeInfo();
cci1.setId(originalId);
cci1.setStatus(1L);
characterChangeInfoService.updateById(cci1);
updateList.add(cci1);
CharacterChangeInfo cci2 = new CharacterChangeInfo();
cci2.setId(newId);
cci2.setStatus(1L);
updateList.add(cci2);
characterChangeInfoService.updateById(cci1);
//characterChangeInfoService.updateBatchById(updateList);
//删除合并人物
characterBasicInfoService.removeById(id);
characterChangeInfoService.removeById(id);
//查询新人物返回
CharacterVo characterById = characterBasicInfoService.getById(newId);
return Result.OK(characterById);
} }
} }
...@@ -25,7 +25,6 @@ public class CisXgraPaperServiceImpl extends ServiceImpl<CisXgraPaperMapper, Cis ...@@ -25,7 +25,6 @@ public class CisXgraPaperServiceImpl extends ServiceImpl<CisXgraPaperMapper, Cis
@Override @Override
public Result<?> getCisXgraPaper(String uid) { public Result<?> getCisXgraPaper(String uid) {
LambdaQueryWrapper<CisXgraPaper> lambdaQuery = Wrappers.lambdaQuery(); LambdaQueryWrapper<CisXgraPaper> lambdaQuery = Wrappers.lambdaQuery();
lambdaQuery.eq(CisXgraPaper::getUid, uid); lambdaQuery.eq(CisXgraPaper::getUid, uid);
CisXgraPaper cisXgraPaper = cisXgraPaperMapper.selectOne(lambdaQuery); CisXgraPaper cisXgraPaper = cisXgraPaperMapper.selectOne(lambdaQuery);
......
package com.zzsn.leaderbase.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zzsn.leaderbase.entity.CityAddress;
import com.zzsn.leaderbase.mapper.CityAddressMapper;
import com.zzsn.leaderbase.service.CityAddressService;
import com.zzsn.leaderbase.vo.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @Version 1.0
* @Author: ZhangJingKun
* @Date: 2024/3/9 15:59
* @Content:
*/
@Service
public class CityAddressServiceImpl extends ServiceImpl<CityAddressMapper, CityAddress> implements CityAddressService {
// @Autowired
// CityAddressMapper cityAddressServiceMapper;
@Override
public Result<?> getCityList() {
//List<CityAddress> list = cityAddressServiceMapper.getCityList(pid);
List<CityAddress> list = super.list();
return Result.OK(list);
}
}
package com.zzsn.leaderbase.service.impl; package com.zzsn.leaderbase.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
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.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zzsn.leaderbase.entity.LearningAchievement; import com.zzsn.leaderbase.entity.LearningAchievement;
import com.zzsn.leaderbase.mapper.LearningAchievementMapper; import com.zzsn.leaderbase.mapper.LearningAchievementMapper;
...@@ -41,6 +43,14 @@ public class LearningAchievementServiceImpl extends ServiceImpl<LearningAchievem ...@@ -41,6 +43,14 @@ public class LearningAchievementServiceImpl extends ServiceImpl<LearningAchievem
lambdaQuery.last(sb.toString()); lambdaQuery.last(sb.toString());
List<LearningAchievement> list = learningAchievementMapper.selectList(lambdaQuery); List<LearningAchievement> list = learningAchievementMapper.selectList(lambdaQuery);
return Result.OK(list); IPage page = new Page();
page.setRecords(list);
Integer total = learningAchievementMapper.selectCount(lambdaQuery);
page.setTotal(total);
page.setCurrent(detailsListVo.getPageNo());
page.setSize(detailsListVo.getPageSize());
return Result.OK(page);
} }
} }
package com.zzsn.leaderbase.service.impl; package com.zzsn.leaderbase.service.impl;
import com.zzsn.leaderbase.service.IGeneratorIdService; import com.zzsn.leaderbase.service.IGeneratorIdService;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.support.atomic.RedisAtomicLong;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct; import javax.annotation.PostConstruct;
import java.net.InetAddress; import java.net.InetAddress;
import java.net.UnknownHostException; import java.net.UnknownHostException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.ConcurrentLinkedQueue;
@Component @Component
@Slf4j @Slf4j
public class SnowFlakeGeneratorId implements IGeneratorIdService { public class SnowFlakeGeneratorId implements IGeneratorIdService {
@Autowired
private StringRedisTemplate stringRedisTemplate;
private final static int MAX_QUEUE = 128; private final static int MAX_QUEUE = 128;
private final static int DEFAULT_MACHINE_BIT_NUM = 6; //机器标识占用的位数 private final static int DEFAULT_MACHINE_BIT_NUM = 6; //机器标识占用的位数
private final static int DEFAULT_PORT_BIT_NUM = 4; //端口占用的位数 private final static int DEFAULT_PORT_BIT_NUM = 4; //端口占用的位数
...@@ -28,6 +39,11 @@ public class SnowFlakeGeneratorId implements IGeneratorIdService { ...@@ -28,6 +39,11 @@ public class SnowFlakeGeneratorId implements IGeneratorIdService {
*/ */
private final static int REMAIN_BIT_NUM = 22; private final static int REMAIN_BIT_NUM = 22;
private static final String FINANCE = "LEADER_UID:";
private final static int NUM = 8;
private static final String U = "u";
@Value("${server.port}") @Value("${server.port}")
private String port; private String port;
...@@ -66,6 +82,53 @@ public class SnowFlakeGeneratorId implements IGeneratorIdService { ...@@ -66,6 +82,53 @@ public class SnowFlakeGeneratorId implements IGeneratorIdService {
return peek; return peek;
} }
@Override
public String getIdNo() {
return getId(FINANCE, NUM);
}
//根据规则生成id(规则:格式化日期(截取后六位)+递增值(8位数))
private String getId(String prefix, int num){
String redisKey = getRedisKey(prefix);
Date expireDate = getExpireDate();
//返回当前redis中的key的最大值
long seq = generate(stringRedisTemplate, redisKey, expireDate);
//获取当天的日期,格式为yyyyMMdd
String date = new SimpleDateFormat("yyyyMMdd").format(expireDate);
//生成八位的序列号,如果seq不够四位,seq前面补0,
//如果seq位数超过了八位,那么无需补0直接返回当前的seq
String sequence = StringUtils.leftPad(Long.toString(seq), num, "0");
return U+date.substring(2)+sequence;
}
//获取redis--key
@SneakyThrows
private String getRedisKey(String prefix){
if (StringUtils.isEmpty(prefix)){
throw new Exception("前缀不能为空!");
}
//用作存放redis中的key前缀
String PREFIX_KEY = "CodeGenerateUtil::";
return PREFIX_KEY + prefix;
}
//获取缓存过期时间点
private Date getExpireDate(){
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 23);
calendar.set(Calendar.MINUTE, 59);
calendar.set(Calendar.SECOND, 59);
//设置过期时间,这里设置为当天的23:59:59
return calendar.getTime();
}
//获取redis缓存
private long generate(StringRedisTemplate stringRedisTemplate, String key, Date expireTime) {
//RedisAtomicLong为原子类,根据传入的key和redis链接工厂创建原子类
RedisAtomicLong counter = new RedisAtomicLong(key,stringRedisTemplate.getConnectionFactory());
//设置过期时间
counter.expireAt(expireTime);
//返回redis中key的值
return counter.incrementAndGet();
}
/** /**
* 产生下一个ID * 产生下一个ID
*/ */
......
package com.zzsn.leaderbase.util;
import com.zzsn.leaderbase.service.IGeneratorIdService;
import com.zzsn.leaderbase.vo.CharacterVo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.Date;
/**
* @Version 1.0
* @Author: ZhangJingKun
* @Date: 2024/3/7 11:33
* @Content: 人物审核时合并操作和取消合并
*/
@Component
public class CharacterMergeStatus {
/**
* 生成id
*/
@Autowired
IGeneratorIdService generatorIdService;
/**
* 根据新老人物信息合并为一个新的人物信息
* @param originalCharacter
* @param character
* @return
*/
public CharacterVo mergeNew(CharacterVo originalCharacter, CharacterVo character){
CharacterVo characterVoNew = new CharacterVo();
String id = Long.toString(generatorIdService.getOrderId());
characterVoNew.setId(id);
//人物id使用原人物uid
String uid = originalCharacter.getUid();
characterVoNew.setUid(uid);
characterVoNew.setName(getValue(character.getName(), originalCharacter.getName()));
characterVoNew.setSex(getValue(character.getSex(), originalCharacter.getSex()));
characterVoNew.setBirthplace(getValue(character.getBirthplace(), originalCharacter.getBirthplace()));
characterVoNew.setBirthday(getValue(character.getBirthday(), originalCharacter.getBirthday()));
characterVoNew.setNativePlace(getValue(character.getNativePlace(), originalCharacter.getNativePlace()));
characterVoNew.setSchool(getValue(character.getSchool(), originalCharacter.getSchool()));
characterVoNew.setSpeciality(getValue(character.getSpeciality(), originalCharacter.getSpeciality()));
characterVoNew.setEducation(getValue(character.getEducation(), originalCharacter.getEducation()));
characterVoNew.setExpertOccupation(getValue(character.getExpertOccupation(), originalCharacter.getExpertOccupation()));
characterVoNew.setHeadSculpture(getValue(character.getHeadSculpture(), originalCharacter.getHeadSculpture()));
characterVoNew.setBiographicalNotes(getValue(character.getBiographicalNotes(), originalCharacter.getBiographicalNotes()));
characterVoNew.setCategory(getValue(character.getCategory(), originalCharacter.getCategory()));
characterVoNew.setAwardRecords(getValue(character.getAwardRecords(), originalCharacter.getAwardRecords()));
characterVoNew.setPartTimeJob(getValue(character.getPartTimeJob(), originalCharacter.getPartTimeJob()));
characterVoNew.setResearchField(getValue(character.getResearchField(), originalCharacter.getResearchField()));
characterVoNew.setEvaluate(getValue(character.getEvaluate(), originalCharacter.getEvaluate()));
characterVoNew.setCreateTime(new Date());
//原单位、原部门、原职务,新人物中没值去原数据的现
characterVoNew.setCompanyOriginal(getValue(character.getCompanyOriginal(), originalCharacter.getCompany()));
characterVoNew.setDepartmentOriginal(getValue(character.getDepartmentOriginal(), originalCharacter.getDepartment()));
characterVoNew.setDutyOriginal(getValue(character.getDutyOriginal(), originalCharacter.getDuty()));
//单位、部门、职务 取新人物中的
characterVoNew.setCompany(character.getCompany());
characterVoNew.setDepartment(character.getDepartment());
characterVoNew.setDuty(character.getDuty());
characterVoNew.setTakeOfficeTime(character.getTakeOfficeTime());
characterVoNew.setTakeOfficeStatus(character.getTakeOfficeStatus());
characterVoNew.setChangeUrl(character.getChangeUrl());
characterVoNew.setDutiesUpdateTime(character.getDutiesUpdateTime());
characterVoNew.setDutiesUpdateReason(character.getDutiesUpdateReason());
characterVoNew.setCheckStatus(1L);
characterVoNew.setCheckResult(character.getCheckResult());
characterVoNew.setArticleId(character.getArticleId());
characterVoNew.setArticleTitle(character.getArticleTitle());
characterVoNew.setUpdateDesc(character.getUpdateDesc());
characterVoNew.setOriginalId(originalCharacter.getId());
characterVoNew.setNewId(character.getId());
characterVoNew.setMergeStatus(1L);
return characterVoNew;
}
/**
* 将新的人物职位信息添加到原人物信息中
* @param originalCharacter
* @param character
* @return
*/
public CharacterVo mergeAdd(CharacterVo originalCharacter, CharacterVo character){
CharacterVo characterVoNew = new CharacterVo();
String id = Long.toString(generatorIdService.getOrderId());
characterVoNew.setId(id);
//人物id使用原人物uid
String uid = originalCharacter.getUid();
characterVoNew.setUid(uid);
characterVoNew.setName(getValue(character.getName(), originalCharacter.getName()));
characterVoNew.setSex(getValue(character.getSex(), originalCharacter.getSex()));
characterVoNew.setBirthplace(getValue(character.getBirthplace(), originalCharacter.getBirthplace()));
characterVoNew.setBirthday(getValue(character.getBirthday(), originalCharacter.getBirthday()));
characterVoNew.setNativePlace(getValue(character.getNativePlace(), originalCharacter.getNativePlace()));
characterVoNew.setSchool(getValue(character.getSchool(), originalCharacter.getSchool()));
characterVoNew.setSpeciality(getValue(character.getSpeciality(), originalCharacter.getSpeciality()));
characterVoNew.setEducation(getValue(character.getEducation(), originalCharacter.getEducation()));
characterVoNew.setExpertOccupation(getValue(character.getExpertOccupation(), originalCharacter.getExpertOccupation()));
characterVoNew.setHeadSculpture(getValue(character.getHeadSculpture(), originalCharacter.getHeadSculpture()));
characterVoNew.setBiographicalNotes(getValue(character.getBiographicalNotes(), originalCharacter.getBiographicalNotes()));
characterVoNew.setCategory(getValue(character.getCategory(), originalCharacter.getCategory()));
characterVoNew.setAwardRecords(getValue(character.getAwardRecords(), originalCharacter.getAwardRecords()));
characterVoNew.setPartTimeJob(getValue(character.getPartTimeJob(), originalCharacter.getPartTimeJob()));
characterVoNew.setResearchField(getValue(character.getResearchField(), originalCharacter.getResearchField()));
characterVoNew.setEvaluate(getValue(character.getEvaluate(), originalCharacter.getEvaluate()));
characterVoNew.setCreateTime(new Date());
//原单位、原部门、原职务,新人物中没值去原数据的现
characterVoNew.setCompanyOriginal(getValue(character.getCompanyOriginal(), originalCharacter.getCompany()));
characterVoNew.setDepartmentOriginal(getValue(character.getDepartmentOriginal(), originalCharacter.getDepartment()));
characterVoNew.setDutyOriginal(getValue(character.getDutyOriginal(), originalCharacter.getDuty()));
//单位、部门、职务 取新人物中的
characterVoNew.setCompany(mergeValue(characterVoNew.getCompany(), character.getCompany()));
characterVoNew.setDepartment(mergeValue(characterVoNew.getDepartment(), character.getDepartment()));
characterVoNew.setDuty(mergeValue(characterVoNew.getDuty(), character.getDuty()));
characterVoNew.setTakeOfficeTime(getValue(character.getTakeOfficeTime(), originalCharacter.getTakeOfficeTime()));
characterVoNew.setTakeOfficeStatus(getValue(character.getTakeOfficeStatus(), originalCharacter.getTakeOfficeStatus()));
characterVoNew.setChangeUrl(mergeValue(characterVoNew.getChangeUrl(), character.getChangeUrl()));
characterVoNew.setDutiesUpdateTime(getValue(character.getDutiesUpdateTime(), originalCharacter.getDutiesUpdateTime()));
characterVoNew.setDutiesUpdateReason(getValue(character.getDutiesUpdateReason(), originalCharacter.getDutiesUpdateReason()));
characterVoNew.setCheckStatus(1L);
characterVoNew.setCheckResult(originalCharacter.getCheckResult());
characterVoNew.setArticleId(mergeValue(characterVoNew.getArticleId(), character.getArticleId()));
characterVoNew.setArticleTitle(mergeValue(characterVoNew.getArticleTitle(), character.getArticleTitle()));
characterVoNew.setUpdateDesc(getValue(character.getUpdateDesc(), originalCharacter.getUpdateDesc()));
characterVoNew.setOriginalId(originalCharacter.getId());
characterVoNew.setNewId(character.getId());
characterVoNew.setMergeStatus(2L);
return characterVoNew;
}
/**
* 若value1不为空则返回value1,否则返回value2
* @param value1
* @param value2
* @return
*/
private String getValue(String value1, String value2){
if(value1 == null || value1.length() == 0)
return value2;
return value1;
}
private Date getValue(Date value1, Date value2){
if(value1 == null)
return value2;
return value1;
}
private boolean isNotEmpty(String value){
return value != null && value.length() > 0;
}
private boolean isNotEmpty(Date value){
return value != null;
}
/**
* 合并两个字段,用 ;分隔
* @param value1
* @param value2
* @return
*/
private String mergeValue(String value1, String value2){
StringBuffer sb = new StringBuffer();
if(value1 == null || value1.length() == 0){
sb.append(value2);
} else {
sb.append(value1).append(";").append(value2);
}
return sb.toString();
}
}
...@@ -2,6 +2,8 @@ package com.zzsn.leaderbase.vo; ...@@ -2,6 +2,8 @@ package com.zzsn.leaderbase.vo;
import lombok.Data; import lombok.Data;
import java.util.List;
/** /**
* @Version 1.0 * @Version 1.0
* @Author: ZhangJingKun * @Author: ZhangJingKun
...@@ -10,6 +12,8 @@ import lombok.Data; ...@@ -10,6 +12,8 @@ import lombok.Data;
*/ */
@Data @Data
public class CharacterCheckVo { public class CharacterCheckVo {
//历史人物信息列表
private CharacterVo originalCharacter; private CharacterVo originalCharacter;
//新人物信息
private CharacterVo character; private CharacterVo character;
} }
...@@ -39,4 +39,7 @@ public class CharacterListVo { ...@@ -39,4 +39,7 @@ public class CharacterListVo {
//是否审核通过 0未通过 1通过 2待定 //是否审核通过 0未通过 1通过 2待定
private Long checkResult; private Long checkResult;
//分类类型:领导人、专家、高管'
private String category;
} }
...@@ -119,4 +119,12 @@ public class CharacterVo { ...@@ -119,4 +119,12 @@ public class CharacterVo {
private String articleTitle; private String articleTitle;
//变更描述 //变更描述
private String updateDesc; private String updateDesc;
//审核信息 原人物id
private String originalId;
//审核信息 新人物id
private String newId;
//审核信息 1:更新人物 2:添加职位
private Long mergeStatus;
} }
...@@ -5,8 +5,8 @@ ...@@ -5,8 +5,8 @@
<mapper namespace="com.zzsn.leaderbase.mapper.CharacterBasicInfoMapper"> <mapper namespace="com.zzsn.leaderbase.mapper.CharacterBasicInfoMapper">
<select id="getList" resultType="com.zzsn.leaderbase.vo.CharacterVo"> <select id="getList" resultType="com.zzsn.leaderbase.vo.CharacterVo">
select * from ( select * from (
select a.id,a.uid,a.name,a.sex,a.birthplace,a.birthday,a.native_place,a.school,a.speciality,a.education,a.expert_occupation,a.head_sculpture,a.biographical_notes,a.category,a.award_records,a.part_time_job,a.research_field,a.evaluate,a.status,department_original,duty_original,department,duty,b.take_office_time,b.take_office_status,b.change_url,b.duties_update_time,b.duties_update_reason,b.check_status,b.check_result,b.article_id,b.article_title,b.update_desc,a.create_by,a.create_time,a.update_by,a.update_time select a.id,a.uid,a.name,a.sex,a.birthplace,a.birthday,a.native_place,a.school,a.speciality,a.education,a.expert_occupation,a.head_sculpture,a.biographical_notes,a.category,a.award_records,a.part_time_job,a.research_field,a.evaluate,a.status,b.company_original,b.department_original,b.duty_original,b.company,b.department,b.duty,b.take_office_time,b.take_office_status,b.change_url,b.duties_update_time,b.duties_update_reason,b.check_status,b.check_result,b.article_id,b.article_title,b.update_desc,b.original_id,b.new_id,b.merge_status,a.create_by,a.create_time,a.update_by,a.update_time
from character_basic_info a from character_basic_info a
LEFT JOIN character_change_info b LEFT JOIN character_change_info b
on a.id = b.id on a.id = b.id
...@@ -16,10 +16,10 @@ select * from ( ...@@ -16,10 +16,10 @@ select * from (
AND a.name = #{name} AND a.name = #{name}
</if> </if>
<if test="company != null and company != ''"> <if test="company != null and company != ''">
AND b.department like '%${company}%' AND b.company like '%${company}%'
</if> </if>
<if test="duty != null and duty != ''"> <if test="duty != null and duty != ''">
AND b.duty = #{duty} AND b.duty like '%${duty}%'
</if> </if>
<if test="checkStatus != null"> <if test="checkStatus != null">
AND b.check_status = #{checkStatus} AND b.check_status = #{checkStatus}
...@@ -27,7 +27,11 @@ select * from ( ...@@ -27,7 +27,11 @@ select * from (
<if test="checkResult != null"> <if test="checkResult != null">
AND b.check_result = #{checkResult} AND b.check_result = #{checkResult}
</if> </if>
)t1 <if test="category != null and category != ''">
AND a.category = #{category}
</if>
)t1
<if test="order != null and order != ''"> <if test="order != null and order != ''">
ORDER BY ${column} ${order} ORDER BY ${column} ${order}
</if> </if>
...@@ -47,10 +51,10 @@ select * from ( ...@@ -47,10 +51,10 @@ select * from (
AND a.name = #{name} AND a.name = #{name}
</if> </if>
<if test="company != null and company != ''"> <if test="company != null and company != ''">
AND b.department like '%${company}%' AND b.company like '%${company}%'
</if> </if>
<if test="duty != null and duty != ''"> <if test="duty != null and duty != ''">
AND b.duty = #{duty} AND b.duty like '%${duty}%'
</if> </if>
<if test="checkStatus != null"> <if test="checkStatus != null">
AND b.check_status = #{checkStatus} AND b.check_status = #{checkStatus}
...@@ -62,4 +66,20 @@ select * from ( ...@@ -62,4 +66,20 @@ select * from (
</select> </select>
</mapper> <select id="checkList" resultType="com.zzsn.leaderbase.vo.CharacterVo">
\ No newline at end of file select a.id,a.uid,a.name,a.sex,a.birthplace,a.birthday,a.native_place,a.school,a.speciality,a.education,a.expert_occupation,a.head_sculpture,a.biographical_notes,a.category,a.award_records,a.part_time_job,a.research_field,a.evaluate,a.status,b.company_original,b.department_original,b.duty_original,b.company,b.department,b.duty,b.take_office_time,b.take_office_status,b.change_url,b.duties_update_time,b.duties_update_reason,b.check_status,b.check_result,b.article_id,b.article_title,b.update_desc,b.original_id,b.new_id,b.merge_status,a.create_by,a.create_time,a.update_by,a.update_time
from character_basic_info a
LEFT JOIN character_change_info b
on a.id = b.id
where 1 = 1
and (b.status != 0 or b.status IS NULL)
AND b.article_id like '%${article_id}%'
order by b.id
</select>
</mapper>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论