feat: 一些调整

This commit is contained in:
曹鹏飞 2025-02-12 15:39:20 +08:00
parent 0fe44a2fbe
commit b8ddd0d8d6
6 changed files with 50 additions and 24 deletions

View File

@ -1,10 +1,9 @@
package com.nflg.mobilebroken.common.pojo.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.experimental.Accessors;
import java.time.LocalDateTime;
import java.time.LocalDate;
@Data
@Accessors(chain = true)
@ -23,6 +22,5 @@ public class DeviceVO {
private String deviceType;
// 销售日期
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime shipmentDate;
private LocalDate shipmentDate;
}

View File

@ -1,10 +1,12 @@
package com.nflg.mobilebroken.repository.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nflg.mobilebroken.common.pojo.query.PageBaseQuery;
import com.nflg.mobilebroken.common.pojo.request.SearchDeviceRequest;
import com.nflg.mobilebroken.common.pojo.vo.DeviceInfoVO;
import com.nflg.mobilebroken.common.pojo.vo.DeviceVO;
import com.nflg.mobilebroken.repository.entity.Device;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -30,4 +32,6 @@ public interface DeviceMapper extends BaseMapper<Device> {
Page<Device> getList(@Param("page") Page<PageBaseQuery> page, PageBaseQuery query);
void batchDelByIds(@Param("ids")List<Integer> ids);
Page<DeviceVO> searchDevice(SearchDeviceRequest request, List<Integer> companyIds, Page<?> page);
}

View File

@ -2,7 +2,6 @@ package com.nflg.mobilebroken.repository.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nflg.mobilebroken.common.pojo.PageData;
import com.nflg.mobilebroken.common.pojo.query.PageBaseQuery;
import com.nflg.mobilebroken.common.pojo.request.SearchDeviceRequest;
import com.nflg.mobilebroken.common.pojo.vo.DeviceInfoVO;
@ -10,7 +9,6 @@ import com.nflg.mobilebroken.common.pojo.vo.DeviceVO;
import com.nflg.mobilebroken.repository.entity.Device;
import org.apache.ibatis.annotations.Param;
import javax.validation.Valid;
import java.util.List;
/**
@ -29,5 +27,5 @@ public interface IDeviceService extends IService<Device> {
void batchDelByIds(@Param("ids") List<Integer> ids);
PageData<DeviceVO> searchDevice(@Valid SearchDeviceRequest request);
Page<DeviceVO> searchDevice(SearchDeviceRequest request);
}

View File

@ -295,9 +295,14 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper, AppUser> impl
.setState(d.getExpireTime().isAfter(ChronoLocalDate.from(LocalDateTime.now())) ? 1 : 2)
.setLastLoginTime(d.getLastLoginTime());
}).collect(Collectors.toList());
List<AppUserApplyfor> applyforList = appUserApplyforService.lambdaQuery()
.eq(AppUserApplyfor::getState, AppUserApplyForState.PENDINGAPPROVAL.getState().byteValue())
.list();
LambdaQueryWrapper<AppUserApplyfor> queryApplyforListWrapper = new LambdaQueryWrapper<>();
queryApplyforListWrapper.eq(AppUserApplyfor::getState, AppUserApplyForState.PENDINGAPPROVAL.getState().byteValue());
queryApplyforListWrapper.and(wrapper -> {
for (String companyId : companyIds) {
wrapper.or().eq(AppUserApplyfor::getCompanyId, Integer.parseInt(companyId));
}
});
List<AppUserApplyfor> applyforList = appUserApplyforService.getBaseMapper().selectList(queryApplyforListWrapper);
vos.addAll(applyforList.stream().map(d -> {
AppArea area = appAreaService.getById(d.getAreaId());
TBaseCustomer company = customerService.getById(d.getCompanyId());

View File

@ -1,16 +1,12 @@
package com.nflg.mobilebroken.repository.service.impl;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.nflg.mobilebroken.common.pojo.PageData;
import com.nflg.mobilebroken.common.pojo.query.PageBaseQuery;
import com.nflg.mobilebroken.common.pojo.request.SearchDeviceRequest;
import com.nflg.mobilebroken.common.pojo.vo.DeviceInfoVO;
import com.nflg.mobilebroken.common.pojo.vo.DeviceVO;
import com.nflg.mobilebroken.common.util.PageUtil;
import com.nflg.mobilebroken.common.util.AppUserUtil;
import com.nflg.mobilebroken.repository.entity.Device;
import com.nflg.mobilebroken.repository.mapper.DeviceMapper;
import com.nflg.mobilebroken.repository.service.IDeviceService;
@ -18,7 +14,6 @@ import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Objects;
/**
* <p>
@ -46,12 +41,14 @@ public class DeviceServiceImpl extends ServiceImpl<DeviceMapper, Device> impleme
}
@Override
public PageData<DeviceVO> searchDevice(SearchDeviceRequest request) {
IPage<Device> page = lambdaQuery()
.like(StrUtil.isNotBlank(request.getDeviceNo()), Device::getDeviceNo, request.getDeviceNo())
.like(StrUtil.isNotBlank(request.getModelNo()), Device::getModelNo, request.getModelNo())
.between(Objects.nonNull(request.getStartTime()), Device::getShipmentDate, request.getStartTime(), request.getEndTime())
.page(new Page<>(request.getPage(), request.getPageSize()));
return PageUtil.convert(page, d -> Convert.convert(DeviceVO.class, d));
public Page<DeviceVO> searchDevice(SearchDeviceRequest request) {
// IPage<Device> page = lambdaQuery()
// .like(StrUtil.isNotBlank(request.getDeviceNo()), Device::getDeviceNo, request.getDeviceNo())
// .like(StrUtil.isNotBlank(request.getModelNo()), Device::getModelNo, request.getModelNo())
// .between(Objects.nonNull(request.getStartTime()), Device::getShipmentDate, request.getStartTime(), request.getEndTime())
// .page(new Page<>(request.getPage(), request.getPageSize()));
// return PageUtil.convert(page, d -> Convert.convert(DeviceVO.class, d));
List<Integer> companyIds = AppUserUtil.getCompanyIds();
return baseMapper.searchDevice(request, companyIds, new Page<>(request.getPage(), request.getPageSize()));
}
}

View File

@ -43,4 +43,28 @@
#{item}
</foreach>
</update>
<select id="searchDevice" resultType="com.nflg.mobilebroken.common.pojo.vo.DeviceVO">
SELECT d.device_no AS 'deviceNo',d.device_name AS 'deviceName',d.model_no AS 'modelNo',d.device_type AS 'deviceType',d.shipment_date AS 'shipmentDate'
FROM device d
INNER JOIN t_base_customer c ON d.agent_code=c.sap_customer_no
WHERE d.data_valid_state=1 AND c.id IN
<foreach collection="companyIds" open="(" close=")" item="companyId" separator=",">
#{companyId}
</foreach>
<where>
<if test="request.deviceNo!=null and request.deviceNo!=''">
and d.device_no LIKE concat('%', #{request.deviceNo}, '%')
</if>
<if test="request.modelNo!=null and request.modelNo!=''">
and d.model_no LIKE concat('%', #{request.modelNo}, '%')
</if>
<if test="request.startTime!=null and request.startTime!=''">
and d.shipment_date >= #{request.startTime}
</if>
<if test="request.endTime!=null and request.endTime!=''">
and d.shipment_date &lt;= #{request.endTime}
</if>
</where>
</select>
</mapper>