|
|
|
@ -1,5 +1,6 @@
|
|
|
|
|
package jnpf.contractMobile.service.impl;
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
|
|
import com.baomidou.mybatisplus.annotation.TableField;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
@ -14,6 +15,11 @@ import jnpf.contractMobile.model.contractMobile.*;
|
|
|
|
|
import jnpf.contractMobile.service.ContractItem0MobileService;
|
|
|
|
|
import jnpf.contractMobile.service.ContractItem1MobileService;
|
|
|
|
|
import jnpf.contractMobile.service.ContractMobileService;
|
|
|
|
|
import jnpf.contractfile.entity.ContractFileEntity;
|
|
|
|
|
import jnpf.contractfile.entity.Contract_item0Entity;
|
|
|
|
|
import jnpf.contractfile.entity.Contract_item1Entity;
|
|
|
|
|
import jnpf.permission.model.authorize.AuthorizeConditionModel;
|
|
|
|
|
import jnpf.permission.service.AuthorizeService;
|
|
|
|
|
import jnpf.purchaseback.entity.PurchaseorderEntity;
|
|
|
|
|
import jnpf.saleorder.entity.SaleorderitemEntity;
|
|
|
|
|
import jnpf.util.ServletUtil;
|
|
|
|
@ -32,6 +38,8 @@ public class ContractMobileServiceImpl extends ServiceImpl<ContractMobileMapper,
|
|
|
|
|
@Autowired
|
|
|
|
|
private UserProvider userProvider;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private AuthorizeService authorizeService;
|
|
|
|
|
@Resource
|
|
|
|
|
private ContractMobileMapper contractMobileMapper;
|
|
|
|
|
|
|
|
|
@ -247,4 +255,100 @@ public class ContractMobileServiceImpl extends ServiceImpl<ContractMobileMapper,
|
|
|
|
|
// IPage<ContractMobileEntity> userIPage = this.page(page, contractMobileQueryWrapper);
|
|
|
|
|
return userIPage.getRecords();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public List<MobileContractDetailsVO> getContract(ContractMobilePagination contractMobilePagination) {
|
|
|
|
|
|
|
|
|
|
String userId = userProvider.get().getUserId();
|
|
|
|
|
List<String> AllIdList = new ArrayList();
|
|
|
|
|
int total = 0;
|
|
|
|
|
int contractMNum = 0;
|
|
|
|
|
QueryWrapper<ContractMobileEntity> contractMobileQueryWrapper = new QueryWrapper<>();
|
|
|
|
|
boolean pcPermission = true;
|
|
|
|
|
boolean appPermission = true;
|
|
|
|
|
boolean isPc = ServletUtil.getHeader("jnpf-origin").equals("pc");
|
|
|
|
|
if (isPc && pcPermission) {
|
|
|
|
|
if (!userProvider.get().getIsAdministrator()) {
|
|
|
|
|
Object contractFileObj = authorizeService.getCondition(new AuthorizeConditionModel(contractMobileQueryWrapper, contractMobilePagination.getMenuId(), "jg_contract"));
|
|
|
|
|
if (ObjectUtil.isEmpty(contractFileObj)) {
|
|
|
|
|
// return new ArrayList<>();
|
|
|
|
|
} else {
|
|
|
|
|
contractMobileQueryWrapper = (QueryWrapper<ContractMobileEntity>) contractFileObj;
|
|
|
|
|
contractMNum++;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (!isPc && appPermission) {
|
|
|
|
|
if (!userProvider.get().getIsAdministrator()) {
|
|
|
|
|
return new ArrayList<>();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (StringUtil.isNotEmpty(contractMobilePagination.getContractCode())) {
|
|
|
|
|
contractMNum++;
|
|
|
|
|
contractMobileQueryWrapper.lambda().like(ContractMobileEntity::getContractCode, contractMobilePagination.getContractCode());
|
|
|
|
|
}
|
|
|
|
|
if (StringUtil.isNotEmpty(contractMobilePagination.getContractName())) {
|
|
|
|
|
contractMNum++;
|
|
|
|
|
contractMobileQueryWrapper.lambda().like(ContractMobileEntity::getContractName, contractMobilePagination.getContractName());
|
|
|
|
|
}
|
|
|
|
|
if (StringUtil.isNotEmpty(contractMobilePagination.getSupperName())) {
|
|
|
|
|
contractMNum++;
|
|
|
|
|
contractMobileQueryWrapper.lambda().like(ContractMobileEntity::getName, contractMobilePagination.getSupperName());
|
|
|
|
|
}
|
|
|
|
|
if (StringUtil.isNotEmpty(contractMobilePagination.getName())) {
|
|
|
|
|
contractMNum++;
|
|
|
|
|
contractMobileQueryWrapper.lambda().like(ContractMobileEntity::getName, contractMobilePagination.getName());
|
|
|
|
|
}
|
|
|
|
|
Boolean nonZero = contractMobilePagination.getNonZero();
|
|
|
|
|
if (nonZero!=null&&nonZero) {
|
|
|
|
|
contractMNum++;
|
|
|
|
|
contractMobileQueryWrapper.ne("SCHEDULE","0.00");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if(AllIdList.size()>0){
|
|
|
|
|
contractMobileQueryWrapper.lambda().in(ContractMobileEntity::getId, AllIdList);
|
|
|
|
|
}
|
|
|
|
|
//排序
|
|
|
|
|
if(StringUtil.isEmpty(contractMobilePagination.getSidx())){
|
|
|
|
|
contractMobileQueryWrapper.lambda().orderByDesc(ContractMobileEntity::getCreatorTime);
|
|
|
|
|
}else{
|
|
|
|
|
try {
|
|
|
|
|
String sidx = contractMobilePagination.getSidx();
|
|
|
|
|
MobileContractDetailsVO mobileContractDetailsVO = new MobileContractDetailsVO();
|
|
|
|
|
Field declaredField = mobileContractDetailsVO.getClass().getDeclaredField(sidx);
|
|
|
|
|
declaredField.setAccessible(true);
|
|
|
|
|
String value = declaredField.getAnnotation(TableField.class).value();
|
|
|
|
|
contractMobilePagination.setSidx(value);
|
|
|
|
|
// contractMobileQueryWrapper="asc".equals(contractMobilePagination.getSort().toLowerCase())?contractMobileQueryWrapper.orderByAsc(value):contractMobileQueryWrapper.orderByDesc(value);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
Page<ContractFileEntity> page = new Page<>(contractMobilePagination.getCurrentPage(), contractMobilePagination.getPageSize());
|
|
|
|
|
String detpartment=null;
|
|
|
|
|
if (!userProvider.get().getIsAdministrator()) {
|
|
|
|
|
detpartment = userProvider.getDepartmentId(userId);
|
|
|
|
|
}
|
|
|
|
|
if (StringUtil.isNotNull(detpartment)) {
|
|
|
|
|
contractMobilePagination.setDepartmentId(detpartment);
|
|
|
|
|
}
|
|
|
|
|
IPage<MobileContractDetailsVO> userIPage = contractMobileMapper.getContractlist(page,contractMobilePagination, contractMobileQueryWrapper);
|
|
|
|
|
return contractMobilePagination.setData(userIPage.getRecords(), userIPage.getTotal());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// if ((total > 0 && AllIdList.size() > 0) || total == 0) {
|
|
|
|
|
// Page<MobileContractDetailsVO> page = new Page<>(contractMobilePagination.getCurrentPage(), contractMobilePagination.getPageSize());
|
|
|
|
|
// IPage<MobileContractDetailsVO> userIPage = contractMobileMapper.getContractDetailData(page, contractMobileQueryWrapper);
|
|
|
|
|
//// IPage<ContractMobileEntity> userIPage = this.page(page, contractMobileQueryWrapper);
|
|
|
|
|
// List<MobileContractDetailsVO> records = userIPage.getRecords();
|
|
|
|
|
//
|
|
|
|
|
// return contractMobilePagination.setData(records, userIPage.getTotal());
|
|
|
|
|
// } else {
|
|
|
|
|
// List<MobileContractDetailsVO> list = new ArrayList();
|
|
|
|
|
// return contractMobilePagination.setData(list, list.size());
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|