|
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.huaxu.common.ToolUtil;
|
|
import com.huaxu.common.ToolUtil;
|
|
import com.huaxu.dao.OrgMapper;
|
|
import com.huaxu.dao.OrgMapper;
|
|
import com.huaxu.dao.UserMapper;
|
|
import com.huaxu.dao.UserMapper;
|
|
|
|
+import com.huaxu.dto.MaintainerCountDto;
|
|
import com.huaxu.dto.UserListDto;
|
|
import com.huaxu.dto.UserListDto;
|
|
import com.huaxu.entity.Org;
|
|
import com.huaxu.entity.Org;
|
|
import com.huaxu.entity.UserEntity;
|
|
import com.huaxu.entity.UserEntity;
|
|
@@ -30,6 +31,8 @@ import javax.annotation.Resource;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.web.client.RestTemplate;
|
|
import org.springframework.web.client.RestTemplate;
|
|
|
|
|
|
|
|
+import java.text.ParseException;
|
|
|
|
+import java.text.SimpleDateFormat;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@@ -469,4 +472,51 @@ public class UserService extends ServiceImpl<UserMapper,UserEntity> {
|
|
List<UserEntity> userEntities = userMapper.findUserListByType(userEntity);
|
|
List<UserEntity> userEntities = userMapper.findUserListByType(userEntity);
|
|
return userEntities;
|
|
return userEntities;
|
|
}
|
|
}
|
|
|
|
+ public MaintainerCountDto findMaintainer(String startTime, String endTime, Integer type){
|
|
|
|
+ MaintainerCountDto result=new MaintainerCountDto();
|
|
|
|
+ try {
|
|
|
|
+ LoginUser currentUser = UserUtil.getCurrentUser();
|
|
|
|
+ UserEntity userEntity = new UserEntity();
|
|
|
|
+ userEntity.setTenantId(currentUser.getTenantId());
|
|
|
|
+ userEntity.setProgramItems(currentUser.getProgramItemList());
|
|
|
|
+ //1是公司,2是公司及以下,3部门,4部门及以下,5自定义
|
|
|
|
+ userEntity.setPermissonType(currentUser.getPermissonType());
|
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
|
+ Calendar c=Calendar.getInstance();
|
|
|
|
+ Date thisDate=null, dateMtoM=null,dateYtoY=null;
|
|
|
|
+ if(type==0){
|
|
|
|
+ dateMtoM=sdf.parse(startTime+"-1");
|
|
|
|
+ c.setTime(dateMtoM);
|
|
|
|
+ c.add(Calendar.MONTH,1);
|
|
|
|
+ thisDate=c.getTime();
|
|
|
|
+ c.add(Calendar.YEAR,-1);
|
|
|
|
+ dateYtoY=c.getTime();
|
|
|
|
+ }else if(type==1){
|
|
|
|
+ dateMtoM=sdf.parse(startTime+"-1-1");
|
|
|
|
+ dateYtoY=dateMtoM;
|
|
|
|
+ c.setTime(dateMtoM);
|
|
|
|
+ c.add(Calendar.YEAR,1);
|
|
|
|
+ thisDate=c.getTime();
|
|
|
|
+ }else if(type==2){
|
|
|
|
+ dateMtoM=sdf.parse(startTime+"-1");
|
|
|
|
+ thisDate=sdf.parse(endTime+"-1");
|
|
|
|
+ c.setTime(thisDate);
|
|
|
|
+ c.add(Calendar.MONTH,1);
|
|
|
|
+ thisDate=c.getTime();
|
|
|
|
+ c.add(Calendar.YEAR,-1);
|
|
|
|
+ dateYtoY=c.getTime();
|
|
|
|
+ }
|
|
|
|
+ userEntity.setDateCreate(thisDate);
|
|
|
|
+ result.setCount(userMapper.findMaintainer(userEntity));
|
|
|
|
+ userEntity.setDateCreate(dateMtoM);
|
|
|
|
+ result.setCountMOnM(userMapper.findMaintainer(userEntity));
|
|
|
|
+ userEntity.setDateCreate(dateYtoY);
|
|
|
|
+ result.setCountYOnY(userMapper.findMaintainer(userEntity));
|
|
|
|
+ result.setRateMOnM(result.getCountMOnM()!=0?(double)(result.getCount()-result.getCountMOnM())/result.getCountMOnM()*100:null);
|
|
|
|
+ result.setRateYOnY(result.getCountYOnY()!=0?(double)(result.getCount()-result.getCountYOnY())/result.getCountYOnY()*100:null);
|
|
|
|
+ }catch (Exception e){
|
|
|
|
+ e.printStackTrace();
|
|
|
|
+ }
|
|
|
|
+ return result;
|
|
|
|
+ }
|
|
}
|
|
}
|