|
|
|
@ -6,18 +6,26 @@ import jnpf.permission.service.UserService;
|
|
|
|
|
import jnpf.service.*;
|
|
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
|
|
import jnpf.model.recyclestationstaff.*;
|
|
|
|
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
|
|
import jnpf.permission.model.authorize.AuthorizeConditionModel;
|
|
|
|
|
import jnpf.util.GeneraterSwapUtil;
|
|
|
|
|
import jnpf.database.model.superQuery.SuperQueryJsonModel;
|
|
|
|
|
import jnpf.database.model.superQuery.ConditionJsonModel;
|
|
|
|
|
import jnpf.database.model.superQuery.SuperQueryConditionModel;
|
|
|
|
|
|
|
|
|
|
import java.lang.reflect.Field;
|
|
|
|
|
|
|
|
|
|
import com.baomidou.mybatisplus.annotation.TableField;
|
|
|
|
|
|
|
|
|
|
import java.util.regex.Pattern;
|
|
|
|
|
|
|
|
|
|
import jnpf.model.QueryModel;
|
|
|
|
|
|
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
import jnpf.base.model.ColumnDataModel;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
|
@ -26,16 +34,19 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
|
|
|
|
|
|
import java.text.SimpleDateFormat;
|
|
|
|
|
|
|
|
|
|
import jnpf.util.*;
|
|
|
|
|
|
|
|
|
|
import java.util.*;
|
|
|
|
|
|
|
|
|
|
import jnpf.base.UserInfo;
|
|
|
|
|
import jnpf.permission.entity.UserEntity;
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
*
|
|
|
|
|
* RecycleStationStaff
|
|
|
|
|
* 版本: V3.5
|
|
|
|
|
* 版权: 引迈信息技术有限公司(https://www.jnpfsoft.com)
|
|
|
|
@ -43,7 +54,7 @@ import javax.annotation.Resource;
|
|
|
|
|
* 日期: 2024-01-29
|
|
|
|
|
*/
|
|
|
|
|
@Service
|
|
|
|
|
public class RecycleStationStaffServiceImpl extends ServiceImpl<RecycleStationStaffMapper, RecycleStationStaffEntity> implements RecycleStationStaffService{
|
|
|
|
|
public class RecycleStationStaffServiceImpl extends ServiceImpl<RecycleStationStaffMapper, RecycleStationStaffEntity> implements RecycleStationStaffService {
|
|
|
|
|
@Autowired
|
|
|
|
|
private GeneraterSwapUtil generaterSwapUtil;
|
|
|
|
|
|
|
|
|
@ -58,51 +69,56 @@ public class RecycleStationStaffServiceImpl extends ServiceImpl<RecycleStationSt
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
private UserBindService userBindService;
|
|
|
|
|
@Resource
|
|
|
|
|
private ClientService clientService;
|
|
|
|
|
@Autowired
|
|
|
|
|
private RecycleStaffDeviceService recycleStaffDeviceService;
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public List<RecycleStationStaffEntity> getList(RecycleStationStaffPagination recycleStationStaffPagination){
|
|
|
|
|
return getTypeList(recycleStationStaffPagination,recycleStationStaffPagination.getDataType());
|
|
|
|
|
public List<RecycleStationStaffEntity> getList(RecycleStationStaffPagination recycleStationStaffPagination) {
|
|
|
|
|
return getTypeList(recycleStationStaffPagination, recycleStationStaffPagination.getDataType());
|
|
|
|
|
}
|
|
|
|
|
/** 列表查询 */
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 列表查询
|
|
|
|
|
*/
|
|
|
|
|
@Override
|
|
|
|
|
public List<RecycleStationStaffEntity> getTypeList(RecycleStationStaffPagination recycleStationStaffPagination,String dataType){
|
|
|
|
|
String userId=userProvider.get().getUserId();
|
|
|
|
|
List<String> AllIdList =new ArrayList();
|
|
|
|
|
List<List<String>> intersectionList =new ArrayList<>();
|
|
|
|
|
public List<RecycleStationStaffEntity> getTypeList(RecycleStationStaffPagination recycleStationStaffPagination, String dataType) {
|
|
|
|
|
String userId = userProvider.get().getUserId();
|
|
|
|
|
List<String> AllIdList = new ArrayList();
|
|
|
|
|
List<List<String>> intersectionList = new ArrayList<>();
|
|
|
|
|
boolean isPc = ServletUtil.getHeader("jnpf-origin").equals("pc");
|
|
|
|
|
String columnData = !isPc ? RecycleStationStaffConstant.getAppColumnData() : RecycleStationStaffConstant.getColumnData();
|
|
|
|
|
ColumnDataModel columnDataModel = JsonUtil.getJsonToBean(columnData, ColumnDataModel.class);
|
|
|
|
|
String ruleJson = !isPc ? JsonUtil.getObjectToString(columnDataModel.getRuleListApp()) : JsonUtil.getObjectToString(columnDataModel.getRuleList());
|
|
|
|
|
|
|
|
|
|
int total=0;
|
|
|
|
|
int recycleStationStaffNum =0;
|
|
|
|
|
QueryWrapper<RecycleStationStaffEntity> recycleStationStaffQueryWrapper=new QueryWrapper<>();
|
|
|
|
|
int recycleStaffDeviceNum =0;
|
|
|
|
|
QueryWrapper<RecycleStaffDeviceEntity> recycleStaffDeviceQueryWrapper=new QueryWrapper<>();
|
|
|
|
|
int total = 0;
|
|
|
|
|
int recycleStationStaffNum = 0;
|
|
|
|
|
QueryWrapper<RecycleStationStaffEntity> recycleStationStaffQueryWrapper = new QueryWrapper<>();
|
|
|
|
|
int recycleStaffDeviceNum = 0;
|
|
|
|
|
QueryWrapper<RecycleStaffDeviceEntity> recycleStaffDeviceQueryWrapper = new QueryWrapper<>();
|
|
|
|
|
long recycleStaffDevicecount = recycleStaffDeviceService.count();
|
|
|
|
|
List<String> allSuperIDlist = new ArrayList<>();
|
|
|
|
|
String superOp ="";
|
|
|
|
|
if (ObjectUtil.isNotEmpty(recycleStationStaffPagination.getSuperQueryJson())){
|
|
|
|
|
String superOp = "";
|
|
|
|
|
if (ObjectUtil.isNotEmpty(recycleStationStaffPagination.getSuperQueryJson())) {
|
|
|
|
|
List<String> allSuperList = new ArrayList<>();
|
|
|
|
|
List<List<String>> intersectionSuperList = new ArrayList<>();
|
|
|
|
|
List<List<String>> intersectionSuperList = new ArrayList<>();
|
|
|
|
|
String queryJson = recycleStationStaffPagination.getSuperQueryJson();
|
|
|
|
|
SuperJsonModel superJsonModel = JsonUtil.getJsonToBean(queryJson, SuperJsonModel.class);
|
|
|
|
|
int superNum = 0;
|
|
|
|
|
QueryWrapper<RecycleStationStaffEntity> recycleStationStaffSuperWrapper = new QueryWrapper<>();
|
|
|
|
|
recycleStationStaffSuperWrapper = generaterSwapUtil.getCondition(new QueryModel(recycleStationStaffSuperWrapper,RecycleStationStaffEntity.class,queryJson,"0"));
|
|
|
|
|
recycleStationStaffSuperWrapper = generaterSwapUtil.getCondition(new QueryModel(recycleStationStaffSuperWrapper, RecycleStationStaffEntity.class, queryJson, "0"));
|
|
|
|
|
int recycleStationStaffNum1 = recycleStationStaffSuperWrapper.getExpression().getNormal().size();
|
|
|
|
|
if (recycleStationStaffNum1>0){
|
|
|
|
|
List<String> recycleStationStaffList =this.list(recycleStationStaffSuperWrapper).stream().map(RecycleStationStaffEntity::getId).collect(Collectors.toList());
|
|
|
|
|
if (recycleStationStaffNum1 > 0) {
|
|
|
|
|
List<String> recycleStationStaffList = this.list(recycleStationStaffSuperWrapper).stream().map(RecycleStationStaffEntity::getId).collect(Collectors.toList());
|
|
|
|
|
allSuperList.addAll(recycleStationStaffList);
|
|
|
|
|
intersectionSuperList.add(recycleStationStaffList);
|
|
|
|
|
superNum++;
|
|
|
|
|
}
|
|
|
|
|
String recycleStaffDeviceTable = "nx_recycle_staff_device";
|
|
|
|
|
boolean recycleStaffDeviceHasSql = queryJson.contains(recycleStaffDeviceTable);
|
|
|
|
|
List<String> recycleStaffDeviceList = generaterSwapUtil.selectIdsByChildCondition(RecycleStationStaffConstant.getTableList(), recycleStaffDeviceTable , queryJson, null);
|
|
|
|
|
if (recycleStaffDeviceHasSql){
|
|
|
|
|
List<String> recycleStaffDeviceList = generaterSwapUtil.selectIdsByChildCondition(RecycleStationStaffConstant.getTableList(), recycleStaffDeviceTable, queryJson, null);
|
|
|
|
|
if (recycleStaffDeviceHasSql) {
|
|
|
|
|
allSuperList.addAll(recycleStaffDeviceList);
|
|
|
|
|
intersectionSuperList.add(recycleStaffDeviceList);
|
|
|
|
|
superNum++;
|
|
|
|
@ -110,24 +126,24 @@ public class RecycleStationStaffServiceImpl extends ServiceImpl<RecycleStationSt
|
|
|
|
|
|
|
|
|
|
superOp = superNum > 0 ? superJsonModel.getMatchLogic() : "";
|
|
|
|
|
//and or
|
|
|
|
|
if(superOp.equalsIgnoreCase("and")){
|
|
|
|
|
if (superOp.equalsIgnoreCase("and")) {
|
|
|
|
|
allSuperIDlist = generaterSwapUtil.getIntersection(intersectionSuperList);
|
|
|
|
|
}else{
|
|
|
|
|
} else {
|
|
|
|
|
allSuperIDlist = allSuperList;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
List<String> allRuleIDlist = new ArrayList<>();
|
|
|
|
|
String ruleOp ="";
|
|
|
|
|
if (ObjectUtil.isNotEmpty(ruleJson)){
|
|
|
|
|
String ruleOp = "";
|
|
|
|
|
if (ObjectUtil.isNotEmpty(ruleJson)) {
|
|
|
|
|
List<String> allRuleList = new ArrayList<>();
|
|
|
|
|
List<List<String>> intersectionRuleList = new ArrayList<>();
|
|
|
|
|
List<List<String>> intersectionRuleList = new ArrayList<>();
|
|
|
|
|
SuperJsonModel ruleJsonModel = JsonUtil.getJsonToBean(ruleJson, SuperJsonModel.class);
|
|
|
|
|
int ruleNum = 0;
|
|
|
|
|
QueryWrapper<RecycleStationStaffEntity> recycleStationStaffSuperWrapper = new QueryWrapper<>();
|
|
|
|
|
recycleStationStaffSuperWrapper = generaterSwapUtil.getCondition(new QueryModel(recycleStationStaffSuperWrapper,RecycleStationStaffEntity.class,ruleJson,"0"));
|
|
|
|
|
recycleStationStaffSuperWrapper = generaterSwapUtil.getCondition(new QueryModel(recycleStationStaffSuperWrapper, RecycleStationStaffEntity.class, ruleJson, "0"));
|
|
|
|
|
int recycleStationStaffNum1 = recycleStationStaffSuperWrapper.getExpression().getNormal().size();
|
|
|
|
|
if (recycleStationStaffNum1>0){
|
|
|
|
|
List<String> recycleStationStaffList =this.list(recycleStationStaffSuperWrapper).stream().map(RecycleStationStaffEntity::getId).collect(Collectors.toList());
|
|
|
|
|
if (recycleStationStaffNum1 > 0) {
|
|
|
|
|
List<String> recycleStationStaffList = this.list(recycleStationStaffSuperWrapper).stream().map(RecycleStationStaffEntity::getId).collect(Collectors.toList());
|
|
|
|
|
allRuleList.addAll(recycleStationStaffList);
|
|
|
|
|
intersectionRuleList.add(recycleStationStaffList);
|
|
|
|
|
ruleNum++;
|
|
|
|
@ -142,292 +158,309 @@ public class RecycleStationStaffServiceImpl extends ServiceImpl<RecycleStationSt
|
|
|
|
|
// }
|
|
|
|
|
ruleOp = ruleNum > 0 ? ruleJsonModel.getMatchLogic() : "";
|
|
|
|
|
//and or
|
|
|
|
|
if(ruleOp.equalsIgnoreCase("and")){
|
|
|
|
|
if (ruleOp.equalsIgnoreCase("and")) {
|
|
|
|
|
allRuleIDlist = generaterSwapUtil.getIntersection(intersectionRuleList);
|
|
|
|
|
}else{
|
|
|
|
|
} else {
|
|
|
|
|
allRuleIDlist = allRuleList;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
boolean pcPermission = true;
|
|
|
|
|
boolean appPermission = false;
|
|
|
|
|
if(isPc && pcPermission){
|
|
|
|
|
if (!userProvider.get().getIsAdministrator()){
|
|
|
|
|
Object recycleStationStaffObj=generaterSwapUtil.getAuthorizeCondition(new QueryModel(recycleStationStaffQueryWrapper,RecycleStationStaffEntity.class,recycleStationStaffPagination.getMenuId(),"0"));
|
|
|
|
|
if (ObjectUtil.isEmpty(recycleStationStaffObj)){
|
|
|
|
|
return new ArrayList<>();
|
|
|
|
|
} else {
|
|
|
|
|
recycleStationStaffQueryWrapper = (QueryWrapper<RecycleStationStaffEntity>)recycleStationStaffObj;
|
|
|
|
|
if( recycleStationStaffQueryWrapper.getExpression().getNormal().size()>0){
|
|
|
|
|
recycleStationStaffNum++;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
boolean appPermission = false;
|
|
|
|
|
if (isPc && pcPermission) {
|
|
|
|
|
if (!userProvider.get().getIsAdministrator()) {
|
|
|
|
|
Object recycleStationStaffObj = generaterSwapUtil.getAuthorizeCondition(new QueryModel(recycleStationStaffQueryWrapper, RecycleStationStaffEntity.class, recycleStationStaffPagination.getMenuId(), "0"));
|
|
|
|
|
if (ObjectUtil.isEmpty(recycleStationStaffObj)) {
|
|
|
|
|
return new ArrayList<>();
|
|
|
|
|
} else {
|
|
|
|
|
recycleStationStaffQueryWrapper = (QueryWrapper<RecycleStationStaffEntity>) recycleStationStaffObj;
|
|
|
|
|
if (recycleStationStaffQueryWrapper.getExpression().getNormal().size() > 0) {
|
|
|
|
|
recycleStationStaffNum++;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Object recycleStaffDeviceObj=generaterSwapUtil.getAuthorizeCondition(new QueryModel(recycleStaffDeviceQueryWrapper,RecycleStaffDeviceEntity.class,recycleStationStaffPagination.getMenuId(),"0"));
|
|
|
|
|
if (ObjectUtil.isEmpty(recycleStaffDeviceObj)){
|
|
|
|
|
return new ArrayList<>();
|
|
|
|
|
} else {
|
|
|
|
|
recycleStaffDeviceQueryWrapper = (QueryWrapper<RecycleStaffDeviceEntity>)recycleStaffDeviceObj;
|
|
|
|
|
if( recycleStaffDeviceQueryWrapper.getExpression().getNormal().size()>0){
|
|
|
|
|
recycleStaffDeviceNum++;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
Object recycleStaffDeviceObj = generaterSwapUtil.getAuthorizeCondition(new QueryModel(recycleStaffDeviceQueryWrapper, RecycleStaffDeviceEntity.class, recycleStationStaffPagination.getMenuId(), "0"));
|
|
|
|
|
if (ObjectUtil.isEmpty(recycleStaffDeviceObj)) {
|
|
|
|
|
return new ArrayList<>();
|
|
|
|
|
} else {
|
|
|
|
|
recycleStaffDeviceQueryWrapper = (QueryWrapper<RecycleStaffDeviceEntity>) recycleStaffDeviceObj;
|
|
|
|
|
if (recycleStaffDeviceQueryWrapper.getExpression().getNormal().size() > 0) {
|
|
|
|
|
recycleStaffDeviceNum++;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if(!isPc && appPermission){
|
|
|
|
|
if (!userProvider.get().getIsAdministrator()){
|
|
|
|
|
Object recycleStationStaffObj=generaterSwapUtil.getAuthorizeCondition(new QueryModel(recycleStationStaffQueryWrapper,RecycleStationStaffEntity.class,recycleStationStaffPagination.getMenuId(),"0"));
|
|
|
|
|
if (ObjectUtil.isEmpty(recycleStationStaffObj)){
|
|
|
|
|
return new ArrayList<>();
|
|
|
|
|
} else {
|
|
|
|
|
recycleStationStaffQueryWrapper = (QueryWrapper<RecycleStationStaffEntity>)recycleStationStaffObj;
|
|
|
|
|
if( recycleStationStaffQueryWrapper.getExpression().getNormal().size()>0){
|
|
|
|
|
recycleStationStaffNum++;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
Object recycleStaffDeviceObj=generaterSwapUtil.getAuthorizeCondition(new QueryModel(recycleStaffDeviceQueryWrapper,RecycleStaffDeviceEntity.class,recycleStationStaffPagination.getMenuId(),"0"));
|
|
|
|
|
if (ObjectUtil.isEmpty(recycleStaffDeviceObj)){
|
|
|
|
|
return new ArrayList<>();
|
|
|
|
|
} else {
|
|
|
|
|
recycleStaffDeviceQueryWrapper = (QueryWrapper<RecycleStaffDeviceEntity>)recycleStaffDeviceObj;
|
|
|
|
|
if( recycleStaffDeviceQueryWrapper.getExpression().getNormal().size()>0){
|
|
|
|
|
recycleStaffDeviceNum++;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (!isPc && appPermission) {
|
|
|
|
|
if (!userProvider.get().getIsAdministrator()) {
|
|
|
|
|
Object recycleStationStaffObj = generaterSwapUtil.getAuthorizeCondition(new QueryModel(recycleStationStaffQueryWrapper, RecycleStationStaffEntity.class, recycleStationStaffPagination.getMenuId(), "0"));
|
|
|
|
|
if (ObjectUtil.isEmpty(recycleStationStaffObj)) {
|
|
|
|
|
return new ArrayList<>();
|
|
|
|
|
} else {
|
|
|
|
|
recycleStationStaffQueryWrapper = (QueryWrapper<RecycleStationStaffEntity>) recycleStationStaffObj;
|
|
|
|
|
if (recycleStationStaffQueryWrapper.getExpression().getNormal().size() > 0) {
|
|
|
|
|
recycleStationStaffNum++;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
Object recycleStaffDeviceObj = generaterSwapUtil.getAuthorizeCondition(new QueryModel(recycleStaffDeviceQueryWrapper, RecycleStaffDeviceEntity.class, recycleStationStaffPagination.getMenuId(), "0"));
|
|
|
|
|
if (ObjectUtil.isEmpty(recycleStaffDeviceObj)) {
|
|
|
|
|
return new ArrayList<>();
|
|
|
|
|
} else {
|
|
|
|
|
recycleStaffDeviceQueryWrapper = (QueryWrapper<RecycleStaffDeviceEntity>) recycleStaffDeviceObj;
|
|
|
|
|
if (recycleStaffDeviceQueryWrapper.getExpression().getNormal().size() > 0) {
|
|
|
|
|
recycleStaffDeviceNum++;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if(isPc){
|
|
|
|
|
if(ObjectUtil.isNotEmpty(recycleStationStaffPagination.getStationId())){
|
|
|
|
|
recycleStationStaffNum++;
|
|
|
|
|
|
|
|
|
|
List<String> idList = new ArrayList<>();
|
|
|
|
|
try {
|
|
|
|
|
String[][] stationId = JsonUtil.getJsonToBean(recycleStationStaffPagination.getStationId(),String[][].class);
|
|
|
|
|
for(int i=0;i<stationId.length;i++){
|
|
|
|
|
if(stationId[i].length>0){
|
|
|
|
|
idList.add(JsonUtil.getObjectToString(Arrays.asList(stationId[i])));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}catch (Exception e1){
|
|
|
|
|
try {
|
|
|
|
|
List<String> stationId = JsonUtil.getJsonToList(recycleStationStaffPagination.getStationId(),String.class);
|
|
|
|
|
if(stationId.size()>0){
|
|
|
|
|
idList.addAll(stationId);
|
|
|
|
|
}
|
|
|
|
|
}catch (Exception e2){
|
|
|
|
|
idList.add(String.valueOf(recycleStationStaffPagination.getStationId()));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
recycleStationStaffQueryWrapper.lambda().and(t->{
|
|
|
|
|
idList.forEach(tt->{
|
|
|
|
|
t.like(RecycleStationStaffEntity::getStationId, tt).or();
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
if (isPc) {
|
|
|
|
|
if (ObjectUtil.isNotEmpty(recycleStationStaffPagination.getStationId())) {
|
|
|
|
|
recycleStationStaffNum++;
|
|
|
|
|
|
|
|
|
|
List<String> idList = new ArrayList<>();
|
|
|
|
|
try {
|
|
|
|
|
String[][] stationId = JsonUtil.getJsonToBean(recycleStationStaffPagination.getStationId(), String[][].class);
|
|
|
|
|
for (int i = 0; i < stationId.length; i++) {
|
|
|
|
|
if (stationId[i].length > 0) {
|
|
|
|
|
idList.add(JsonUtil.getObjectToString(Arrays.asList(stationId[i])));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} catch (Exception e1) {
|
|
|
|
|
try {
|
|
|
|
|
List<String> stationId = JsonUtil.getJsonToList(recycleStationStaffPagination.getStationId(), String.class);
|
|
|
|
|
if (stationId.size() > 0) {
|
|
|
|
|
idList.addAll(stationId);
|
|
|
|
|
}
|
|
|
|
|
} catch (Exception e2) {
|
|
|
|
|
idList.add(String.valueOf(recycleStationStaffPagination.getStationId()));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
recycleStationStaffQueryWrapper.lambda().and(t -> {
|
|
|
|
|
idList.forEach(tt -> {
|
|
|
|
|
t.like(RecycleStationStaffEntity::getStationId, tt).or();
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if(ObjectUtil.isNotEmpty(recycleStationStaffPagination.getStafname())){
|
|
|
|
|
recycleStationStaffNum++;
|
|
|
|
|
if (ObjectUtil.isNotEmpty(recycleStationStaffPagination.getStafname())) {
|
|
|
|
|
recycleStationStaffNum++;
|
|
|
|
|
|
|
|
|
|
String value = recycleStationStaffPagination.getStafname() instanceof List ?
|
|
|
|
|
JsonUtil.getObjectToString(recycleStationStaffPagination.getStafname()) :
|
|
|
|
|
String.valueOf(recycleStationStaffPagination.getStafname());
|
|
|
|
|
recycleStationStaffQueryWrapper.lambda().like(RecycleStationStaffEntity::getStaffsName,value);
|
|
|
|
|
JsonUtil.getObjectToString(recycleStationStaffPagination.getStafname()) :
|
|
|
|
|
String.valueOf(recycleStationStaffPagination.getStafname());
|
|
|
|
|
recycleStationStaffQueryWrapper.lambda().like(RecycleStationStaffEntity::getStaffsName, value);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if(ObjectUtil.isNotEmpty(recycleStationStaffPagination.getMobilePhone())){
|
|
|
|
|
recycleStationStaffNum++;
|
|
|
|
|
if (ObjectUtil.isNotEmpty(recycleStationStaffPagination.getMobilePhone())) {
|
|
|
|
|
recycleStationStaffNum++;
|
|
|
|
|
|
|
|
|
|
String value = recycleStationStaffPagination.getMobilePhone() instanceof List ?
|
|
|
|
|
JsonUtil.getObjectToString(recycleStationStaffPagination.getMobilePhone()) :
|
|
|
|
|
String.valueOf(recycleStationStaffPagination.getMobilePhone());
|
|
|
|
|
recycleStationStaffQueryWrapper.lambda().like(RecycleStationStaffEntity::getMobilePhone,value);
|
|
|
|
|
JsonUtil.getObjectToString(recycleStationStaffPagination.getMobilePhone()) :
|
|
|
|
|
String.valueOf(recycleStationStaffPagination.getMobilePhone());
|
|
|
|
|
recycleStationStaffQueryWrapper.lambda().like(RecycleStationStaffEntity::getMobilePhone, value);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
List<String> intersection = generaterSwapUtil.getIntersection(intersectionList);
|
|
|
|
|
if (total>0){
|
|
|
|
|
if (intersection.size()==0){
|
|
|
|
|
if (total > 0) {
|
|
|
|
|
if (intersection.size() == 0) {
|
|
|
|
|
intersection.add("jnpfNullList");
|
|
|
|
|
}
|
|
|
|
|
recycleStationStaffQueryWrapper.lambda().in(RecycleStationStaffEntity::getId, intersection);
|
|
|
|
|
}
|
|
|
|
|
//是否有高级查询
|
|
|
|
|
if (StringUtil.isNotEmpty(superOp)){
|
|
|
|
|
if (allSuperIDlist.size()==0){
|
|
|
|
|
//是否有高级查询
|
|
|
|
|
if (StringUtil.isNotEmpty(superOp)) {
|
|
|
|
|
if (allSuperIDlist.size() == 0) {
|
|
|
|
|
allSuperIDlist.add("jnpfNullList");
|
|
|
|
|
}
|
|
|
|
|
List<String> finalAllSuperIDlist = allSuperIDlist;
|
|
|
|
|
recycleStationStaffQueryWrapper.lambda().and(t->t.in(RecycleStationStaffEntity::getId, finalAllSuperIDlist));
|
|
|
|
|
recycleStationStaffQueryWrapper.lambda().and(t -> t.in(RecycleStationStaffEntity::getId, finalAllSuperIDlist));
|
|
|
|
|
}
|
|
|
|
|
//是否有数据过滤查询
|
|
|
|
|
if (StringUtil.isNotEmpty(ruleOp)){
|
|
|
|
|
if (allRuleIDlist.size()==0){
|
|
|
|
|
//是否有数据过滤查询
|
|
|
|
|
if (StringUtil.isNotEmpty(ruleOp)) {
|
|
|
|
|
if (allRuleIDlist.size() == 0) {
|
|
|
|
|
allRuleIDlist.add("jnpfNullList");
|
|
|
|
|
}
|
|
|
|
|
List<String> finalAllRuleIDlist = allRuleIDlist;
|
|
|
|
|
recycleStationStaffQueryWrapper.lambda().and(t->t.in(RecycleStationStaffEntity::getId, finalAllRuleIDlist));
|
|
|
|
|
recycleStationStaffQueryWrapper.lambda().and(t -> t.in(RecycleStationStaffEntity::getId, finalAllRuleIDlist));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//排序
|
|
|
|
|
if(StringUtil.isEmpty(recycleStationStaffPagination.getSidx())){
|
|
|
|
|
if (StringUtil.isEmpty(recycleStationStaffPagination.getSidx())) {
|
|
|
|
|
recycleStationStaffQueryWrapper.lambda().orderByDesc(RecycleStationStaffEntity::getId);
|
|
|
|
|
}else{
|
|
|
|
|
} else {
|
|
|
|
|
try {
|
|
|
|
|
String sidx = recycleStationStaffPagination.getSidx();
|
|
|
|
|
String[] strs= sidx.split("_name");
|
|
|
|
|
String[] strs = sidx.split("_name");
|
|
|
|
|
RecycleStationStaffEntity recycleStationStaffEntity = new RecycleStationStaffEntity();
|
|
|
|
|
Field declaredField = recycleStationStaffEntity.getClass().getDeclaredField(strs[0]);
|
|
|
|
|
declaredField.setAccessible(true);
|
|
|
|
|
String value = declaredField.getAnnotation(TableField.class).value();
|
|
|
|
|
recycleStationStaffQueryWrapper="asc".equals(recycleStationStaffPagination.getSort().toLowerCase())?recycleStationStaffQueryWrapper.orderByAsc(value):recycleStationStaffQueryWrapper.orderByDesc(value);
|
|
|
|
|
recycleStationStaffQueryWrapper = "asc".equals(recycleStationStaffPagination.getSort().toLowerCase()) ? recycleStationStaffQueryWrapper.orderByAsc(value) : recycleStationStaffQueryWrapper.orderByDesc(value);
|
|
|
|
|
} catch (NoSuchFieldException e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if("0".equals(dataType)){
|
|
|
|
|
if((total>0 && AllIdList.size()>0) || total==0){
|
|
|
|
|
Page<RecycleStationStaffEntity> page=new Page<>(recycleStationStaffPagination.getCurrentPage(), recycleStationStaffPagination.getPageSize());
|
|
|
|
|
IPage<RecycleStationStaffEntity> userIPage=this.page(page, recycleStationStaffQueryWrapper);
|
|
|
|
|
return recycleStationStaffPagination.setData(userIPage.getRecords(),userIPage.getTotal());
|
|
|
|
|
}else{
|
|
|
|
|
if ("0".equals(dataType)) {
|
|
|
|
|
if ((total > 0 && AllIdList.size() > 0) || total == 0) {
|
|
|
|
|
Page<RecycleStationStaffEntity> page = new Page<>(recycleStationStaffPagination.getCurrentPage(), recycleStationStaffPagination.getPageSize());
|
|
|
|
|
IPage<RecycleStationStaffEntity> userIPage = this.page(page, recycleStationStaffQueryWrapper);
|
|
|
|
|
return recycleStationStaffPagination.setData(userIPage.getRecords(), userIPage.getTotal());
|
|
|
|
|
} else {
|
|
|
|
|
List<RecycleStationStaffEntity> list = new ArrayList();
|
|
|
|
|
return recycleStationStaffPagination.setData(list, list.size());
|
|
|
|
|
}
|
|
|
|
|
}else{
|
|
|
|
|
} else {
|
|
|
|
|
return this.list(recycleStationStaffQueryWrapper);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public RecycleStationStaffEntity getInfo(String id){
|
|
|
|
|
QueryWrapper<RecycleStationStaffEntity> queryWrapper=new QueryWrapper<>();
|
|
|
|
|
queryWrapper.lambda().eq(RecycleStationStaffEntity::getId,id);
|
|
|
|
|
public RecycleStationStaffEntity getInfo(String id) {
|
|
|
|
|
QueryWrapper<RecycleStationStaffEntity> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
queryWrapper.lambda().eq(RecycleStationStaffEntity::getId, id);
|
|
|
|
|
return this.getOne(queryWrapper);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public RecycleStationStaffEntity getInfoByOpenId(String openId){
|
|
|
|
|
public RecycleStationStaffEntity getInfoByOpenId(String openId) {
|
|
|
|
|
QueryWrapper<RecycleStationStaffEntity> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
queryWrapper.lambda().eq(RecycleStationStaffEntity::getOpenid,openId);
|
|
|
|
|
queryWrapper.lambda().eq(RecycleStationStaffEntity::getOpenid, openId);
|
|
|
|
|
return this.getOne(queryWrapper);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void create(RecycleStationStaffEntity entity){
|
|
|
|
|
public void create(RecycleStationStaffEntity entity) {
|
|
|
|
|
this.save(entity);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public boolean update(String id, RecycleStationStaffEntity entity){
|
|
|
|
|
public boolean update(String id, RecycleStationStaffEntity entity) {
|
|
|
|
|
return this.updateById(entity);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void delete(RecycleStationStaffEntity entity){
|
|
|
|
|
if(entity!=null){
|
|
|
|
|
public void delete(RecycleStationStaffEntity entity) {
|
|
|
|
|
if (entity != null) {
|
|
|
|
|
this.removeById(entity.getId());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
/** RecycleStaffDevice子表方法 */
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* RecycleStaffDevice子表方法
|
|
|
|
|
*/
|
|
|
|
|
@Override
|
|
|
|
|
public List<RecycleStaffDeviceEntity> getRecycleStaffDeviceList(String id,RecycleStationStaffPagination recycleStationStaffPagination){
|
|
|
|
|
Map<String, Object> newtabMap=RecycleStationStaffConstant.TABLEFIELDKEY.entrySet()
|
|
|
|
|
.stream().collect( Collectors.toMap(e->e.getValue(),e->e.getKey()));
|
|
|
|
|
String tableName="recycleStaffDevice";
|
|
|
|
|
tableName=newtabMap.get(tableName)==null?tableName:newtabMap.get(tableName).toString();
|
|
|
|
|
public List<RecycleStaffDeviceEntity> getRecycleStaffDeviceList(String id, RecycleStationStaffPagination recycleStationStaffPagination) {
|
|
|
|
|
Map<String, Object> newtabMap = RecycleStationStaffConstant.TABLEFIELDKEY.entrySet()
|
|
|
|
|
.stream().collect(Collectors.toMap(e -> e.getValue(), e -> e.getKey()));
|
|
|
|
|
String tableName = "recycleStaffDevice";
|
|
|
|
|
tableName = newtabMap.get(tableName) == null ? tableName : newtabMap.get(tableName).toString();
|
|
|
|
|
QueryWrapper<RecycleStaffDeviceEntity> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
queryWrapper = recycleStaffDeviceService.getChild(recycleStationStaffPagination,queryWrapper);
|
|
|
|
|
queryWrapper = recycleStaffDeviceService.getChild(recycleStationStaffPagination, queryWrapper);
|
|
|
|
|
queryWrapper.lambda().eq(RecycleStaffDeviceEntity::getOpenId, id);
|
|
|
|
|
generaterSwapUtil.wrapperHandle(RecycleStationStaffConstant.getColumnData(), RecycleStationStaffConstant.getAppColumnData(), queryWrapper,RecycleStaffDeviceEntity.class,"sub",tableName);
|
|
|
|
|
generaterSwapUtil.wrapperHandle(RecycleStationStaffConstant.getColumnData(), RecycleStationStaffConstant.getAppColumnData(), queryWrapper, RecycleStaffDeviceEntity.class, "sub", tableName);
|
|
|
|
|
return recycleStaffDeviceService.list(queryWrapper);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/** RecycleStaffDevice子表方法 */
|
|
|
|
|
/**
|
|
|
|
|
* RecycleStaffDevice子表方法
|
|
|
|
|
*/
|
|
|
|
|
@Override
|
|
|
|
|
public List<RecycleStaffDeviceEntity> getRecycleStaffDeviceList(String id){
|
|
|
|
|
public List<RecycleStaffDeviceEntity> getRecycleStaffDeviceList(String id) {
|
|
|
|
|
QueryWrapper<RecycleStaffDeviceEntity> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
queryWrapper.lambda().eq(RecycleStaffDeviceEntity::getOpenId, id);
|
|
|
|
|
return recycleStaffDeviceService.list(queryWrapper);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/** 验证表单唯一字段,正则,非空 i-0新增-1修改*/
|
|
|
|
|
/**
|
|
|
|
|
* 验证表单唯一字段,正则,非空 i-0新增-1修改
|
|
|
|
|
*/
|
|
|
|
|
@Override
|
|
|
|
|
public String checkForm(RecycleStationStaffForm form,int i) {
|
|
|
|
|
boolean isUp =StringUtil.isNotEmpty(form.getId()) && !form.getId().equals("0");
|
|
|
|
|
String id="";
|
|
|
|
|
public String checkForm(RecycleStationStaffForm form, int i) {
|
|
|
|
|
boolean isUp = StringUtil.isNotEmpty(form.getId()) && !form.getId().equals("0");
|
|
|
|
|
String id = "";
|
|
|
|
|
String countRecover = "";
|
|
|
|
|
if (isUp){
|
|
|
|
|
if (isUp) {
|
|
|
|
|
id = form.getId();
|
|
|
|
|
}
|
|
|
|
|
//主表字段验证
|
|
|
|
|
if(StringUtil.isEmpty(form.getStaffsName())){
|
|
|
|
|
return "回收员姓名不能为空";
|
|
|
|
|
}
|
|
|
|
|
if(StringUtil.isEmpty(form.getMobilePhone())){
|
|
|
|
|
return "回收员手机不能为空";
|
|
|
|
|
}
|
|
|
|
|
if(StringUtil.isNotEmpty(form.getMobilePhone())){
|
|
|
|
|
if (StringUtil.isEmpty(form.getStaffsName())) {
|
|
|
|
|
return "回收员姓名不能为空";
|
|
|
|
|
}
|
|
|
|
|
if (StringUtil.isEmpty(form.getMobilePhone())) {
|
|
|
|
|
return "回收员手机不能为空";
|
|
|
|
|
}
|
|
|
|
|
if (StringUtil.isNotEmpty(form.getMobilePhone())) {
|
|
|
|
|
form.setMobilePhone(form.getMobilePhone().trim());
|
|
|
|
|
QueryWrapper<RecycleStationStaffEntity> mobilePhoneWrapper=new QueryWrapper<>();
|
|
|
|
|
mobilePhoneWrapper.lambda().eq(RecycleStationStaffEntity::getMobilePhone,form.getMobilePhone());
|
|
|
|
|
if (isUp){
|
|
|
|
|
QueryWrapper<RecycleStationStaffEntity> mobilePhoneWrapper = new QueryWrapper<>();
|
|
|
|
|
mobilePhoneWrapper.lambda().eq(RecycleStationStaffEntity::getMobilePhone, form.getMobilePhone());
|
|
|
|
|
if (isUp) {
|
|
|
|
|
mobilePhoneWrapper.lambda().ne(RecycleStationStaffEntity::getId, id);
|
|
|
|
|
}
|
|
|
|
|
if((int) this.count(mobilePhoneWrapper)>0){
|
|
|
|
|
if ((int) this.count(mobilePhoneWrapper) > 0) {
|
|
|
|
|
countRecover = "该手机号已被注册";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return countRecover;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 新增修改数据(事务回滚)
|
|
|
|
|
* @param id
|
|
|
|
|
* @param recycleStationStaffForm
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
* 新增修改数据(事务回滚)
|
|
|
|
|
*
|
|
|
|
|
* @param id
|
|
|
|
|
* @param recycleStationStaffForm
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Override
|
|
|
|
|
@Transactional
|
|
|
|
|
public void saveOrUpdate(RecycleStationStaffForm recycleStationStaffForm,String id, boolean isSave) throws Exception{
|
|
|
|
|
public void saveOrUpdate(RecycleStationStaffForm recycleStationStaffForm, String id, boolean isSave) throws Exception {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
UserInfo userInfo=userProvider.get();
|
|
|
|
|
UserEntity userEntity = generaterSwapUtil.getUser(userInfo.getUserId());
|
|
|
|
|
UserInfo userInfo = userProvider.get();
|
|
|
|
|
UserEntity userEntity = generaterSwapUtil.getUser(userInfo.getUserId());
|
|
|
|
|
recycleStationStaffForm = JsonUtil.getJsonToBean(
|
|
|
|
|
generaterSwapUtil.swapDatetime(RecycleStationStaffConstant.getFormData(),recycleStationStaffForm),RecycleStationStaffForm.class);
|
|
|
|
|
generaterSwapUtil.swapDatetime(RecycleStationStaffConstant.getFormData(), recycleStationStaffForm), RecycleStationStaffForm.class);
|
|
|
|
|
RecycleStationStaffEntity entity = JsonUtil.getJsonToBean(recycleStationStaffForm, RecycleStationStaffEntity.class);
|
|
|
|
|
|
|
|
|
|
if(isSave){
|
|
|
|
|
String mainId = RandomUtil.uuId() ;
|
|
|
|
|
String mobilePhone = recycleStationStaffForm.getMobilePhone();
|
|
|
|
|
|
|
|
|
|
QueryWrapper<ClientEntity> query = new QueryWrapper<>();
|
|
|
|
|
query.lambda().eq(ClientEntity::getMobilePhone, mobilePhone).last("limit 1");
|
|
|
|
|
ClientEntity client = clientService.getOne(query);
|
|
|
|
|
if (isSave) {
|
|
|
|
|
if (null == client) throw new RuntimeException("你添加的手机号未通过小程序注册,请先通过预约端注册!");
|
|
|
|
|
String mainId = RandomUtil.uuId();
|
|
|
|
|
entity.setId(mainId);
|
|
|
|
|
}else{
|
|
|
|
|
entity.setOpenid(client.getWxOpenid());
|
|
|
|
|
} else {
|
|
|
|
|
}
|
|
|
|
|
this.saveOrUpdate(entity);
|
|
|
|
|
RecycleStationStaffEntity saved = this.getById(entity.getId());
|
|
|
|
|
//RecycleStaffDevice子表数据新增修改
|
|
|
|
|
if(!isSave){
|
|
|
|
|
if (!isSave) {
|
|
|
|
|
QueryWrapper<RecycleStaffDeviceEntity> RecycleStaffDevicequeryWrapper = new QueryWrapper<>();
|
|
|
|
|
RecycleStaffDevicequeryWrapper.lambda().eq(RecycleStaffDeviceEntity::getOpenId, saved.getOpenid());
|
|
|
|
|
RecycleStaffDevicequeryWrapper.lambda().eq(RecycleStaffDeviceEntity::getOpenId, client.getWxOpenid());
|
|
|
|
|
recycleStaffDeviceService.remove(RecycleStaffDevicequeryWrapper);
|
|
|
|
|
}
|
|
|
|
|
if (recycleStationStaffForm.getRecycleStaffDeviceList()!=null){
|
|
|
|
|
List<RecycleStaffDeviceEntity> tableField114 = JsonUtil.getJsonToList(recycleStationStaffForm.getRecycleStaffDeviceList(),RecycleStaffDeviceEntity.class);
|
|
|
|
|
for(RecycleStaffDeviceEntity entitys : tableField114){
|
|
|
|
|
if (recycleStationStaffForm.getRecycleStaffDeviceList() != null) {
|
|
|
|
|
List<RecycleStaffDeviceEntity> tableField114 = JsonUtil.getJsonToList(recycleStationStaffForm.getRecycleStaffDeviceList(), RecycleStaffDeviceEntity.class);
|
|
|
|
|
for (RecycleStaffDeviceEntity entitys : tableField114) {
|
|
|
|
|
entitys.setId(RandomUtil.uuId());
|
|
|
|
|
entitys.setStationId(saved.getStationId());
|
|
|
|
|
entitys.setOpenId(saved.getOpenid());
|
|
|
|
|
entitys.setOpenId(client.getWxOpenid());
|
|
|
|
|
entitys.setUserName(saved.getStaffsName());
|
|
|
|
|
entitys.setPhone(saved.getMobilePhone());
|
|
|
|
|
if(isSave){
|
|
|
|
|
}else{
|
|
|
|
|
if (isSave) {
|
|
|
|
|
} else {
|
|
|
|
|
}
|
|
|
|
|
recycleStaffDeviceService.saveOrUpdate(entitys);
|
|
|
|
|
}
|
|
|
|
@ -436,6 +469,7 @@ public class RecycleStationStaffServiceImpl extends ServiceImpl<RecycleStationSt
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 注册回收员
|
|
|
|
|
*
|
|
|
|
|
* @param hsyUserInfo
|
|
|
|
|
*/
|
|
|
|
|
@Override
|
|
|
|
|