|  | @@ -220,16 +220,16 @@ public class RoleAssignRecordServiceImpl extends ServiceImpl<RoleAssignRecordMap
 | 
	
		
			
				|  |  |                  .userId(changeRecord.getUserId())
 | 
	
		
			
				|  |  |                  .roleId(changeRecord.getRoleId())
 | 
	
		
			
				|  |  |                  .build();
 | 
	
		
			
				|  |  | -        RoleAssignRecord lastRecord = lastAssignRecord(roleInfoAndAgentParam);
 | 
	
		
			
				|  |  | -        if (lastRecord != null) {
 | 
	
		
			
				|  |  | +        RoleAssignRecord previousRecord = previousAssignRecord(changeRecord, changeRecord.getStartTime());
 | 
	
		
			
				|  |  | +        if (previousRecord != null) {
 | 
	
		
			
				|  |  |              if (nextRecord != null) {
 | 
	
		
			
				|  |  |                  update(new LambdaUpdateWrapper<RoleAssignRecord>()
 | 
	
		
			
				|  |  |                          .set(RoleAssignRecord::getEndTime, nextRecord.getStartTime())
 | 
	
		
			
				|  |  | -                        .eq(RoleAssignRecord::getId, lastRecord.getId()));
 | 
	
		
			
				|  |  | +                        .eq(RoleAssignRecord::getId, previousRecord.getId()));
 | 
	
		
			
				|  |  |              } else {
 | 
	
		
			
				|  |  |                  update(new LambdaUpdateWrapper<RoleAssignRecord>()
 | 
	
		
			
				|  |  |                          .set(RoleAssignRecord::getEndTime, null)
 | 
	
		
			
				|  |  | -                        .eq(RoleAssignRecord::getId, lastRecord.getId()));
 | 
	
		
			
				|  |  | +                        .eq(RoleAssignRecord::getId, previousRecord.getId()));
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 |