Compare commits
1 Commits
Author | SHA1 | Date |
---|---|---|
|
fd0df4fe69 |
|
@ -0,0 +1,99 @@
|
|||
package com.hcy.admin.controller.client;
|
||||
|
||||
import com.hcy.admin.config.aop.Log;
|
||||
|
||||
import com.hcy.admin.service.client.IClientSiteService;
|
||||
import com.hcy.admin.validate.client.ClientSiteParam;
|
||||
import com.hcy.admin.validate.common.PageParam;
|
||||
|
||||
import com.hcy.admin.vo.client.ClientSiteDetailVo;
|
||||
import com.hcy.admin.vo.client.ClientSiteListVo;
|
||||
import com.hcy.common.core.AjaxResult;
|
||||
|
||||
import com.hcy.common.validator.annotation.IDMust;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 站点管理
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("api/clientSite")
|
||||
public class ClientSiteController {
|
||||
|
||||
@Resource
|
||||
IClientSiteService iClientSiteService;
|
||||
|
||||
/**
|
||||
* 站点列表
|
||||
*
|
||||
* @author hcy
|
||||
* @param pageParam 分页参数
|
||||
* @param clientSiteParam 搜索参数
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public Object list(@Validated PageParam pageParam,
|
||||
ClientSiteParam clientSiteParam) {
|
||||
List<ClientSiteListVo> list = iClientSiteService.list(pageParam, clientSiteParam);
|
||||
return AjaxResult.success(list);
|
||||
}
|
||||
/**
|
||||
* 站点详情
|
||||
*
|
||||
* @author hcy
|
||||
* @param id 主键ID
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/detail")
|
||||
public Object detail(@Validated @IDMust() @RequestParam("id") Integer id) {
|
||||
ClientSiteDetailVo detail = iClientSiteService.detail(id);
|
||||
return AjaxResult.success(detail);
|
||||
}
|
||||
|
||||
/**
|
||||
* 站点新增
|
||||
*
|
||||
* @author hcy
|
||||
* @param clientSiteParam 参数
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "站点新增")
|
||||
@PostMapping("/add")
|
||||
public Object add(@Validated(value = ClientSiteParam.create.class) @RequestBody ClientSiteParam clientSiteParam) {
|
||||
iClientSiteService.add(clientSiteParam);
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 站点编辑
|
||||
*
|
||||
* @author hcy
|
||||
* @param clientSiteParam 参数
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "站点编辑")
|
||||
@PostMapping("/edit")
|
||||
public Object edit(@Validated(value = ClientSiteParam.update.class) @RequestBody ClientSiteParam clientSiteParam) {
|
||||
iClientSiteService.edit(clientSiteParam);
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 站点删除
|
||||
*
|
||||
* @author hcy
|
||||
* @param clientSiteParam 参数
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "站点删除")
|
||||
@PostMapping("/del")
|
||||
public Object del(@RequestBody ClientSiteParam clientSiteParam) {
|
||||
iClientSiteService.del(clientSiteParam.getIds());
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,59 @@
|
|||
package com.hcy.admin.service.client;
|
||||
|
||||
import com.hcy.admin.validate.client.ClientSiteParam;
|
||||
import com.hcy.admin.validate.common.PageParam;
|
||||
import com.hcy.admin.vo.client.ClientSiteDetailVo;
|
||||
import com.hcy.admin.vo.client.ClientSiteListVo;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 站点服务接口类
|
||||
*/
|
||||
public interface IClientSiteService {
|
||||
|
||||
/**
|
||||
* 站点列表
|
||||
*
|
||||
* @author hcy
|
||||
* @param pageParam 分页参数
|
||||
* @param clientSiteParam 搜索参数
|
||||
* @return PageResult<SiteVo>
|
||||
*/
|
||||
List<ClientSiteListVo> list(PageParam pageParam, ClientSiteParam clientSiteParam);
|
||||
|
||||
/**
|
||||
* 站点详情
|
||||
*
|
||||
* @author hcy
|
||||
* @param id 主键ID
|
||||
* @return Site
|
||||
*/
|
||||
ClientSiteDetailVo detail(Integer id);
|
||||
|
||||
/**
|
||||
* 站点新增
|
||||
*
|
||||
* @author hcy
|
||||
* @param clientSiteParam 参数
|
||||
*/
|
||||
void add(ClientSiteParam clientSiteParam);
|
||||
|
||||
/**
|
||||
* 站点编辑
|
||||
*
|
||||
* @author hcy
|
||||
* @param clientSiteParam 参数
|
||||
*/
|
||||
void edit(ClientSiteParam clientSiteParam);
|
||||
|
||||
/**
|
||||
* 站点删除
|
||||
*
|
||||
* @author hcy
|
||||
* @param ids 主键ID
|
||||
*/
|
||||
void del(List<Integer> ids);
|
||||
|
||||
}
|
|
@ -0,0 +1,218 @@
|
|||
package com.hcy.admin.service.client.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.hcy.admin.AdminThreadLocal;
|
||||
import com.hcy.admin.service.client.IClientSiteService;
|
||||
import com.hcy.admin.service.region.IDevRegionService;
|
||||
import com.hcy.admin.validate.client.ClientSiteParam;
|
||||
import com.hcy.admin.validate.common.PageParam;
|
||||
import com.hcy.admin.vo.client.EquipmentListVo;
|
||||
import com.hcy.admin.vo.client.EquipmentModelDetailVo;
|
||||
import com.hcy.admin.vo.client.ClientSiteDetailVo;
|
||||
import com.hcy.admin.vo.client.ClientSiteListVo;
|
||||
import com.hcy.common.constant.GlobalConstant;
|
||||
import com.hcy.common.dto.ClientSiteDto;
|
||||
import com.hcy.common.entity.client.Client;
|
||||
import com.hcy.common.entity.client.Equipment;
|
||||
import com.hcy.common.entity.client.EquipmentModel;
|
||||
import com.hcy.common.entity.client.ClientSite;
|
||||
import com.hcy.common.entity.user.User;
|
||||
import com.hcy.common.mapper.client.ClientMapper;
|
||||
import com.hcy.common.mapper.client.EquipmentMapper;
|
||||
import com.hcy.common.mapper.client.EquipmentModelMapper;
|
||||
import com.hcy.common.mapper.client.ClientSiteMapper;
|
||||
import com.hcy.common.mapper.user.UserMapper;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.Assert;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 站点实现类
|
||||
*/
|
||||
@Service
|
||||
public class ClientSiteServiceImpl implements IClientSiteService {
|
||||
|
||||
@Resource
|
||||
ClientSiteMapper clientSiteMapper;
|
||||
|
||||
@Resource
|
||||
IDevRegionService regionService;
|
||||
|
||||
@Resource
|
||||
EquipmentMapper equipmentMapper;
|
||||
|
||||
@Resource
|
||||
ClientMapper clientMapper;
|
||||
|
||||
@Resource
|
||||
EquipmentModelMapper equipmentModelMapper;
|
||||
|
||||
@Resource
|
||||
UserMapper userMapper;
|
||||
|
||||
/**
|
||||
* 站点列表
|
||||
*
|
||||
* @author hcy
|
||||
* @param pageParam 分页参数
|
||||
* @param clientSiteParam 搜索参数
|
||||
* @return PageResult<SiteListVo>
|
||||
*/
|
||||
@Override
|
||||
public List<ClientSiteListVo> list(PageParam pageParam, ClientSiteParam clientSiteParam) {
|
||||
Integer page = pageParam.getPageNo();
|
||||
Integer limit = pageParam.getPageSize();
|
||||
|
||||
ClientSiteDto clientSiteDto = new ClientSiteDto();
|
||||
BeanUtils.copyProperties(clientSiteParam, clientSiteDto);
|
||||
|
||||
List<ClientSiteDto> clientSiteDtos = clientSiteMapper.siteEquipmentList(clientSiteDto);
|
||||
|
||||
List<ClientSiteListVo> list = new LinkedList<>();
|
||||
for(ClientSiteDto item : clientSiteDtos) {
|
||||
ClientSiteListVo vo = new ClientSiteListVo();
|
||||
BeanUtils.copyProperties(item, vo);
|
||||
|
||||
// 获取设备列表
|
||||
List<Equipment> equipment = equipmentMapper.selectList(new LambdaQueryWrapper<Equipment>()
|
||||
.eq(Equipment::getIsDelete, GlobalConstant.NOT_DELETE)
|
||||
.eq(Equipment::getClientSiteId, item.getId()));
|
||||
|
||||
Map<Long, String> regionMap = regionService.getRegionMap();//获取省市区
|
||||
List<EquipmentListVo> equipmentList = new LinkedList<>();
|
||||
if(equipment != null){
|
||||
for (Equipment equipmentItem : equipment) {
|
||||
EquipmentListVo equipmentListVo = new EquipmentListVo();
|
||||
BeanUtils.copyProperties(equipmentItem, equipmentListVo);
|
||||
|
||||
equipmentListVo.setProvince(regionMap.get(equipmentListVo.getProvinceId()));
|
||||
equipmentListVo.setCity(regionMap.get(equipmentListVo.getCityId()));
|
||||
equipmentListVo.setDistrict(regionMap.get(equipmentListVo.getDistrictId()));
|
||||
//获取客户名称
|
||||
Client client = clientMapper.selectOne(
|
||||
new QueryWrapper<Client>()
|
||||
.eq("id", equipmentItem.getClientId())
|
||||
.last("limit 1"));
|
||||
if (client != null){
|
||||
equipmentListVo.setClientName(client.getClientName());
|
||||
}
|
||||
|
||||
//设置设备模块信息
|
||||
EquipmentModel equipmentModel = equipmentModelMapper.findEquipmentModelByEquipmentId(vo.getId());
|
||||
EquipmentModelDetailVo equipmentModelDetailVo = new EquipmentModelDetailVo();
|
||||
if(equipmentModel != null){
|
||||
BeanUtils.copyProperties(equipmentModel, equipmentModelDetailVo);
|
||||
|
||||
User insetallUser = userMapper.selectById(equipmentModel.getUserId());
|
||||
if(insetallUser != null){
|
||||
equipmentModelDetailVo.setInstallationName(insetallUser.getUsername());
|
||||
}
|
||||
}
|
||||
//设置设备模块信息
|
||||
equipmentListVo.setEquipmentModel(equipmentModelDetailVo);
|
||||
equipmentList.add(equipmentListVo);
|
||||
}
|
||||
}
|
||||
|
||||
vo.setEquipmentList(equipmentList);
|
||||
list.add(vo);
|
||||
}
|
||||
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
* 站点详情
|
||||
*
|
||||
* @param id 主键参数
|
||||
* @return Site
|
||||
* @author hcy
|
||||
*/
|
||||
@Override
|
||||
public ClientSiteDetailVo detail(Integer id) {
|
||||
ClientSite model = clientSiteMapper.selectOne(
|
||||
new QueryWrapper<ClientSite>()
|
||||
.eq("id", id)
|
||||
.eq("is_delete", 0)
|
||||
.last("limit 1"));
|
||||
|
||||
Assert.notNull(model, "数据不存在");
|
||||
|
||||
ClientSiteDetailVo vo = new ClientSiteDetailVo();
|
||||
BeanUtils.copyProperties(model, vo);
|
||||
return vo;
|
||||
}
|
||||
|
||||
/**
|
||||
* 站点新增
|
||||
*
|
||||
* @author hcy
|
||||
* @param clientSiteParam 参数
|
||||
*/
|
||||
@Override
|
||||
public void add(ClientSiteParam clientSiteParam) {
|
||||
ClientSite model = new ClientSite();
|
||||
model.setClientId(clientSiteParam.getClientId()); // 客户id
|
||||
model.setSiteName(clientSiteParam.getSiteName()); // 站点名称
|
||||
model.setLongitude(clientSiteParam.getLongitude()); // 经度
|
||||
model.setLatitude(clientSiteParam.getLatitude()); // 纬度
|
||||
model.setProvinceId(clientSiteParam.getProvinceId()); // 省id
|
||||
model.setDistrictId(clientSiteParam.getDistrictId()); // 区id
|
||||
model.setCityId(clientSiteParam.getCityId()); // 市id
|
||||
model.setDetailedAddress(clientSiteParam.getDetailedAddress()); // 详细地址
|
||||
model.setCreatorId(AdminThreadLocal.getAdminId().longValue()); // 创建人id
|
||||
clientSiteMapper.insert(model);
|
||||
}
|
||||
|
||||
/**
|
||||
* 站点编辑
|
||||
*
|
||||
* @author hcy
|
||||
* @param clientSiteParam 参数
|
||||
*/
|
||||
@Override
|
||||
public void edit(ClientSiteParam clientSiteParam) {
|
||||
ClientSite model = clientSiteMapper.selectOne(
|
||||
new QueryWrapper<ClientSite>()
|
||||
.eq("id", clientSiteParam.getId())
|
||||
.eq("is_delete", 0)
|
||||
.last("limit 1"));
|
||||
|
||||
Assert.notNull(model, "数据不存在!");
|
||||
|
||||
model.setClientId(clientSiteParam.getClientId()); // 客户id
|
||||
model.setSiteName(clientSiteParam.getSiteName()); // 站点名称
|
||||
model.setLongitude(clientSiteParam.getLongitude()); // 经度
|
||||
model.setLatitude(clientSiteParam.getLatitude()); // 纬度
|
||||
model.setProvinceId(clientSiteParam.getProvinceId()); // 省id
|
||||
model.setDistrictId(clientSiteParam.getDistrictId()); // 区id
|
||||
model.setCityId(clientSiteParam.getCityId()); // 市id
|
||||
model.setDetailedAddress(clientSiteParam.getDetailedAddress()); // 详细地址
|
||||
|
||||
clientSiteMapper.updateById(model);
|
||||
}
|
||||
|
||||
/**
|
||||
* 站点删除
|
||||
*
|
||||
* @author hcy
|
||||
* @param ids 主键ID
|
||||
*/
|
||||
@Override
|
||||
public void del(List<Integer> ids) {
|
||||
List<ClientSite> model = clientSiteMapper.selectList(
|
||||
new LambdaQueryWrapper<ClientSite>()
|
||||
.in(ClientSite::getId, ids));
|
||||
Assert.notNull(model, "数据不存在!");
|
||||
|
||||
for (ClientSite clientSite : model) {
|
||||
clientSite.setIsDelete(GlobalConstant.DELETE);
|
||||
clientSiteMapper.updateById(clientSite);// 进行伪删除 根据id把is_delete修改成1
|
||||
}
|
||||
}
|
||||
|
||||
}
|
|
@ -78,8 +78,6 @@ public class EquipmentServiceImpl implements IEquipmentService {
|
|||
equipmentDto.setCreateTimeStartLong(TimeUtil.dateToTimestamp(equipmentParam.getCreateTimeStart()));
|
||||
equipmentDto.setCreateTimeEndLong(TimeUtil.dateToTimestamp(equipmentParam.getCreateTimeEnd()));
|
||||
|
||||
|
||||
|
||||
Page<EquipmentDto> iPage = equipmentMapper.pageList(new Page<>(page, limit), equipmentDto);
|
||||
|
||||
Map<Long, String> regionMap = regionService.getRegionMap();//获取省市区
|
||||
|
@ -164,7 +162,7 @@ public class EquipmentServiceImpl implements IEquipmentService {
|
|||
if(count > 0){
|
||||
throw new OperateException("设备编号不可重复!");
|
||||
}
|
||||
|
||||
model.setClientSiteId(equipmentParam.getClientSiteId()); // 站点id
|
||||
model.setClientId(equipmentParam.getClientId());//客户id
|
||||
model.setName(equipmentParam.getName());
|
||||
model.setModel(equipmentParam.getModel()); // 设备型号
|
||||
|
@ -211,6 +209,7 @@ public class EquipmentServiceImpl implements IEquipmentService {
|
|||
if(count > 0){
|
||||
throw new OperateException("设备编号不可重复!");
|
||||
}
|
||||
model.setClientSiteId(equipmentParam.getClientSiteId());
|
||||
model.setName(equipmentParam.getName());
|
||||
model.setModel(equipmentParam.getModel());
|
||||
model.setManufacturers(equipmentParam.getManufacturers());
|
||||
|
|
|
@ -15,7 +15,6 @@ import com.hcy.admin.vo.sparePartStockAudit.SparePartStockAuditListVo;
|
|||
import com.hcy.admin.vo.sparePartStockAudit.SparePartStockAuditDetailVo;
|
||||
import com.hcy.common.constant.GlobalConstant;
|
||||
import com.hcy.common.core.PageResult;
|
||||
import com.hcy.common.dto.SparePartStockAuditDto;
|
||||
import com.hcy.common.dto.order.OrderSparePart;
|
||||
import com.hcy.common.entity.SparePartAudit.SparePartAudit;
|
||||
import com.hcy.common.entity.client.Client;
|
||||
|
@ -110,13 +109,64 @@ public class SparePartStockAuditServiceImpl implements ISparePartStockAuditServi
|
|||
Integer page = pageParam.getPageNo();
|
||||
Integer limit = pageParam.getPageSize();
|
||||
|
||||
SparePartStockAuditDto sparePartStockAuditDto = new SparePartStockAuditDto();
|
||||
BeanUtils.copyProperties(params, sparePartStockAuditDto);
|
||||
LambdaQueryWrapper<SparePartStockAudit> queryWrapper = new LambdaQueryWrapper<SparePartStockAudit>()
|
||||
.eq(SparePartStockAudit::getIsDelete, GlobalConstant.NOT_DELETE)
|
||||
.eq(params.getReceiptType() != null, SparePartStockAudit::getReceiptType, params.getReceiptType())
|
||||
.eq(params.getOutInWarehouseType() != null, SparePartStockAudit::getOutInWarehouseType, params.getOutInWarehouseType())
|
||||
.like(StringUtils.isNotEmpty(params.getReceiptNumber()), SparePartStockAudit::getReceiptNumber, params.getReceiptNumber())
|
||||
.eq(params.getAuditState() != null, SparePartStockAudit::getAuditState, params.getAuditState())
|
||||
.eq(params.getWarehouseId() != null, SparePartStockAudit::getWarehouseId, params.getWarehouseId())
|
||||
.eq(params.getDeliveryMethod() != null, SparePartStockAudit::getDeliveryMethod, params.getDeliveryMethod())
|
||||
.eq(params.getPurchaseStatus() != null, SparePartStockAudit::getPurchaseStatus, params.getPurchaseStatus())
|
||||
.ge(StringUtils.isNotEmpty(params.getCreateTimeStart()), SparePartStockAudit::getCreateTime, params.getCreateTimeStart())
|
||||
.le(StringUtils.isNotEmpty(params.getCreateTimeEnd()), SparePartStockAudit::getCreateTime, params.getCreateTimeEnd())
|
||||
.orderByDesc(SparePartStockAudit::getCreateTime);
|
||||
|
||||
/*if(params.getOrderType() == null){
|
||||
//如果当前不是配件采购则将配件采购出入库单排除
|
||||
if (params.getOutInWarehouseType() == null) {
|
||||
if (params.getReceiptType() == null) {
|
||||
queryWrapper.isNull(SparePartStockAudit::getPurchaseStatus)
|
||||
.or(orQuery -> orQuery.ne(SparePartStockAudit::getPurchaseStatus, AuditStateEnum.UNREVIEWED.getStatus())
|
||||
.ne(SparePartStockAudit::getPurchaseStatus, AuditStateEnum.AUDITED.getStatus())
|
||||
.ne(SparePartStockAudit::getPurchaseStatus, AuditStateEnum.CANCELED_AUDIT.getStatus())
|
||||
.ne(SparePartStockAudit::getPurchaseStatus, AuditStateEnum.FILLING_OUT.getStatus()));
|
||||
} else {
|
||||
queryWrapper.isNull(SparePartStockAudit::getPurchaseStatus);
|
||||
}
|
||||
}else{
|
||||
if(StringUtils.isEmpty(params.getConsignee())){
|
||||
queryWrapper.and(query -> query.ne(SparePartStockAudit::getPurchaseStatus, AuditStateEnum.FILLING_OUT.getStatus())
|
||||
.ne(SparePartStockAudit::getPurchaseStatus,AuditStateEnum.CANCELED_AUDIT.getStatus()));
|
||||
}else{
|
||||
queryWrapper.isNotNull(SparePartStockAudit::getPurchaseStatus);
|
||||
}
|
||||
}
|
||||
}*/
|
||||
|
||||
if(params.getQueryType() == SparePartStockAuditEnum.PURCHASE.getStatus()){
|
||||
queryWrapper.isNotNull(SparePartStockAudit::getPurchaseStatus);
|
||||
}else if(params.getQueryType() == SparePartStockAuditEnum.AUDIT.getStatus()){
|
||||
queryWrapper.and(query -> query.isNull(SparePartStockAudit::getPurchaseStatus)
|
||||
.or(orQuery -> orQuery.ne(SparePartStockAudit::getPurchaseStatus, AuditStateEnum.UNREVIEWED.getStatus())
|
||||
.ne(SparePartStockAudit::getPurchaseStatus, AuditStateEnum.AUDITED.getStatus())
|
||||
.ne(SparePartStockAudit::getPurchaseStatus, AuditStateEnum.CANCELED_AUDIT.getStatus())
|
||||
.ne(SparePartStockAudit::getPurchaseStatus, AuditStateEnum.FILLING_OUT.getStatus())));
|
||||
}else if(params.getQueryType() == SparePartStockAuditEnum.WAREHOUSING.getStatus()
|
||||
|| params.getQueryType() == SparePartStockAuditEnum.GO_OUT_WAREHOUSE.getStatus()
|
||||
|| params.getQueryType() == SparePartStockAuditEnum.ALLOT.getStatus()){
|
||||
queryWrapper.isNull(SparePartStockAudit::getPurchaseStatus);
|
||||
}else if(params.getQueryType() == SparePartStockAuditEnum.PURCHASE_ORDER.getStatus()){
|
||||
queryWrapper.and(query -> query.ne(SparePartStockAudit::getPurchaseStatus, AuditStateEnum.FILLING_OUT.getStatus())
|
||||
.ne(SparePartStockAudit::getPurchaseStatus,AuditStateEnum.CANCELED_AUDIT.getStatus()));
|
||||
}else if(params.getQueryType() == SparePartStockAuditEnum.APPLY_FOR.getStatus()){
|
||||
queryWrapper.isNotNull(SparePartStockAudit::getOrderType);
|
||||
}
|
||||
|
||||
//领用时间范围,配送方式查询
|
||||
IPage<SparePartStockAuditDto> iPage = sparePartStockAuditMapper.page(new Page<>(page, limit), sparePartStockAuditDto);
|
||||
IPage<SparePartStockAudit> iPage = sparePartStockAuditMapper.selectPage(new Page<>(page, limit), queryWrapper);
|
||||
List<SparePartStockAuditListVo> list = new ArrayList<>();
|
||||
for (SparePartStockAuditDto item : iPage.getRecords()) {
|
||||
for (SparePartStockAudit item : iPage.getRecords()) {
|
||||
SparePartStockAuditListVo vo = new SparePartStockAuditListVo();
|
||||
BeanUtils.copyProperties(item, vo);
|
||||
|
||||
|
@ -125,18 +175,18 @@ public class SparePartStockAuditServiceImpl implements ISparePartStockAuditServi
|
|||
if (item.getOrderType() != null) {
|
||||
User user = userMapper.selectById(item.getCreatorId());
|
||||
if(user != null){
|
||||
vo.setCreator(user.getNickname());
|
||||
item.setConsignee(user.getNickname());
|
||||
vo.setConsignerPhone(user.getNickname() + "/" + item.getPhone());
|
||||
vo.setRecipientAndPhone(user.getNickname() + "/" + item.getPhone()); //领料员工/联系电话
|
||||
vo.setCreator(user.getUsername());
|
||||
item.setConsignee(user.getUsername());
|
||||
vo.setConsignerPhone(user.getUsername() + "/" + item.getPhone());
|
||||
vo.setRecipientAndPhone(user.getUsername() + "/" + item.getPhone()); //领料员工/联系电话
|
||||
}
|
||||
} else {
|
||||
SystemAuthAdmin systemAuthAdmin = systemAuthAdminMapper.findSystemAuthAdminById(item.getCreatorId());
|
||||
if (systemAuthAdmin != null) {
|
||||
vo.setCreator(systemAuthAdmin.getNickname());
|
||||
item.setConsignee(systemAuthAdmin.getNickname());
|
||||
vo.setConsignerPhone(systemAuthAdmin.getNickname() + "/" + item.getPhone());
|
||||
vo.setRecipientAndPhone(systemAuthAdmin.getNickname() + "/" + item.getPhone()); //领料员工/联系电话
|
||||
vo.setCreator(systemAuthAdmin.getUsername());
|
||||
item.setConsignee(systemAuthAdmin.getUsername());
|
||||
vo.setConsignerPhone(systemAuthAdmin.getUsername() + "/" + item.getPhone());
|
||||
vo.setRecipientAndPhone(systemAuthAdmin.getUsername() + "/" + item.getPhone()); //领料员工/联系电话
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -165,7 +215,7 @@ public class SparePartStockAuditServiceImpl implements ISparePartStockAuditServi
|
|||
vo.setRecipientPhone(user.getMobile());
|
||||
}
|
||||
} else if (item.getOrderType() != null && item.getOrderType() == SparePartStockAuditEnum.REPAIR_ORDER.getStatus()) {
|
||||
RepairOrder repairOrder = repairOrderMapper.findRepairOrderById(item.getOrderId());
|
||||
RepairOrder repairOrder = maintenanceOrderMapper.findRepairOrderById(item.getOrderId());
|
||||
|
||||
List<OrderSparePartListVo> orderSparePartListVoList = new ArrayList<>();
|
||||
List<OrderSparePart> orderSparePartList = orderSparePartMapper.findOrderSparePartByRepairOrderId(item.getOrderId());
|
||||
|
@ -221,7 +271,7 @@ public class SparePartStockAuditServiceImpl implements ISparePartStockAuditServi
|
|||
vo.setExportWarehouseName(exportWarehouseName.getWarehouseName());
|
||||
}
|
||||
} else {
|
||||
Long warehouseId;
|
||||
Long warehouseId = item.getWarehouseId();
|
||||
if (item.getImportWarehouse() != null) {
|
||||
warehouseId = item.getImportWarehouse();
|
||||
} else {
|
||||
|
@ -248,6 +298,9 @@ public class SparePartStockAuditServiceImpl implements ISparePartStockAuditServi
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
list.add(vo);
|
||||
}
|
||||
|
||||
|
@ -300,7 +353,7 @@ public class SparePartStockAuditServiceImpl implements ISparePartStockAuditServi
|
|||
vo.setRecipient(user.getUsername());
|
||||
vo.setRecipientPhone(user.getMobile());
|
||||
} else if (model.getOrderType() != null && model.getOrderType() == SparePartStockAuditEnum.REPAIR_ORDER.getStatus()) {
|
||||
RepairOrder repairOrder = repairOrderMapper.findRepairOrderById(model.getOrderId());
|
||||
RepairOrder repairOrder = maintenanceOrderMapper.findRepairOrderById(model.getOrderId());
|
||||
User user = userMapper.selectById(repairOrder.getReceiverId());
|
||||
|
||||
List<OrderSparePartListVo> orderSparePartListVoList = new ArrayList<>();
|
||||
|
|
|
@ -0,0 +1,67 @@
|
|||
package com.hcy.admin.validate.client;
|
||||
|
||||
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import lombok.Data;
|
||||
import javax.validation.constraints.*;
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 站点参数
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@Accessors(chain = true)
|
||||
public class ClientSiteParam implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
public interface create{}
|
||||
public interface update{}
|
||||
public interface delete{}
|
||||
|
||||
|
||||
private Long id;
|
||||
|
||||
@NotNull(message = "clientId参数缺失", groups = {create.class, update.class})
|
||||
@DecimalMin(value = "0", message = "clientId参数值不能少于0", groups = {create.class, update.class})
|
||||
private Long clientId;
|
||||
|
||||
@NotNull(message = "siteName参数缺失", groups = {create.class, update.class})
|
||||
@Length(max = 50, message = "siteName参数不能超出50个字符", groups = {create.class, update.class})
|
||||
private String siteName;
|
||||
|
||||
@NotNull(message = "longitude参数缺失", groups = {create.class, update.class})
|
||||
@Length(max = 24, message = "longitude参数不能超出24个字符", groups = {create.class, update.class})
|
||||
private String longitude;
|
||||
|
||||
@NotNull(message = "latitude参数缺失", groups = {create.class, update.class})
|
||||
@Length(max = 24, message = "latitude参数不能超出24个字符", groups = {create.class, update.class})
|
||||
private String latitude;
|
||||
|
||||
@NotNull(message = "provinceId参数缺失", groups = {create.class, update.class})
|
||||
@DecimalMin(value = "0", message = "provinceId参数值不能少于0", groups = {create.class, update.class})
|
||||
private Long provinceId;
|
||||
|
||||
@NotNull(message = "districtId参数缺失", groups = {create.class, update.class})
|
||||
@DecimalMin(value = "0", message = "districtId参数值不能少于0", groups = {create.class, update.class})
|
||||
private Long districtId;
|
||||
|
||||
@NotNull(message = "cityId参数缺失", groups = {create.class, update.class})
|
||||
@DecimalMin(value = "0", message = "cityId参数值不能少于0", groups = {create.class, update.class})
|
||||
private Long cityId;
|
||||
|
||||
@NotNull(message = "detailedAddress参数缺失", groups = {create.class, update.class})
|
||||
@Length(max = 255, message = "detailedAddress参数不能超出255个字符", groups = {create.class, update.class})
|
||||
private String detailedAddress;
|
||||
|
||||
@DecimalMin(value = "0", message = "creatorId参数值不能少于0", groups = {create.class, update.class})
|
||||
private Long creatorId;
|
||||
|
||||
private List<Integer> ids; //批量删除
|
||||
|
||||
}
|
|
@ -84,4 +84,7 @@ public class EquipmentParam implements Serializable {
|
|||
|
||||
private String createTimeStart; // 开始时间
|
||||
private String createTimeEnd; // 结束时间
|
||||
|
||||
private Long clientSiteId; // 站点id
|
||||
private String siteName; // 站点名称
|
||||
}
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
package com.hcy.admin.vo.client;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* SiteVo
|
||||
*/
|
||||
@Data
|
||||
public class ClientSiteDetailVo implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private Long id; // 主键id
|
||||
private Long clientId; // 客户id
|
||||
private String siteName; // 站点名称
|
||||
private String longitude; // 经度
|
||||
private String latitude; // 纬度
|
||||
private Long provinceId; // 省id
|
||||
private Long districtId; // 区id
|
||||
private Long cityId; // 市id
|
||||
private String detailedAddress; // 详细地址
|
||||
private Long creatorId; // 创建人id
|
||||
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
package com.hcy.admin.vo.client;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* SiteVo
|
||||
*/
|
||||
@Data
|
||||
public class ClientSiteListVo implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private Long id; // 主键id
|
||||
private Long clientId; // 客户id
|
||||
private String siteName; // 站点名称
|
||||
private String longitude; // 经度
|
||||
private String latitude; // 纬度
|
||||
private Long provinceId; // 省id
|
||||
private Long districtId; // 区id
|
||||
private Long cityId; // 市id
|
||||
private String detailedAddress; // 详细地址
|
||||
private Long creatorId; // 创建人id
|
||||
private String createTime; // 创建时间
|
||||
|
||||
private Integer equipmentCount; // 设备总数
|
||||
private Integer normalCount; // 设备正常数量
|
||||
private Integer underOverhaulCount; // 设备检修中数量
|
||||
private Integer underWarrantyCount; // 设备报修中数量
|
||||
private List<EquipmentListVo> equipmentList; // 设备列表
|
||||
}
|
|
@ -34,4 +34,7 @@ public class EquipmentDetailVo implements Serializable {
|
|||
private Integer dailyAudit; // 每隔几天巡检
|
||||
private String deviceCode; // 设备码
|
||||
private String clientName; // 客户名称
|
||||
private Long clientSiteId; // 站点id
|
||||
private String siteName; // 站点名称
|
||||
|
||||
}
|
||||
|
|
|
@ -38,4 +38,6 @@ public class EquipmentListVo implements Serializable {
|
|||
private String clientName; // 客户名称
|
||||
private String shortName; // 客户简称
|
||||
private EquipmentModelDetailVo equipmentModel; //设备模块信息
|
||||
private Long clientSiteId; // 站点id
|
||||
private String siteName; // 站点名称
|
||||
}
|
||||
|
|
|
@ -0,0 +1,37 @@
|
|||
package com.hcy.common.dto;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 站点实体
|
||||
*/
|
||||
@Data
|
||||
public class ClientSiteDto implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId(value="id", type= IdType.AUTO)
|
||||
private Long id; // 主键id
|
||||
private Long clientId; // 客户id
|
||||
private String siteName; // 站点名称
|
||||
private String longitude; // 经度
|
||||
private String latitude; // 纬度
|
||||
private Long provinceId; // 省id
|
||||
private Long districtId; // 区id
|
||||
private Long cityId; // 市id
|
||||
private String detailedAddress; // 详细地址
|
||||
private Long creatorId; // 创建人id
|
||||
private Date createTime; // 创建时间
|
||||
private Date updateTime; // 更新时间
|
||||
private Integer isDelete; // 是否删除 0-未删除 1-删除
|
||||
|
||||
private Integer equipmentCount; // 设备总数
|
||||
private Integer normalCount; // 设备正常数量
|
||||
private Integer underOverhaulCount; // 设备检修中数量
|
||||
private Integer underWarrantyCount; // 设备报修中数量
|
||||
}
|
|
@ -43,4 +43,7 @@ public class EquipmentDto implements Serializable {
|
|||
|
||||
private Long createTimeStartLong; // 开始时间
|
||||
private Long createTimeEndLong; // 结束时间
|
||||
|
||||
private Long clientSiteId; // 站点id
|
||||
private String siteName; // 站点名称
|
||||
}
|
|
@ -1,7 +1,5 @@
|
|||
package com.hcy.common.dto;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldStrategy;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.hcy.common.entity.SparePartAudit.SparePartAudit;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
@ -86,7 +84,7 @@ public class SparePartStockAuditDto implements Serializable {
|
|||
private Integer outInWarehouseType; //出入库类别(0=采购入库,1=库存调拨,2=员工领料,3=销售出库)
|
||||
|
||||
private String workOrderId; //工单号
|
||||
private Long orderId; //订单编号
|
||||
private String orderId; //订单编号
|
||||
private String shippingAddress; //收货地址
|
||||
private String consigner; //发货人
|
||||
private String consignerPhone; //发货人联系电话
|
||||
|
@ -100,16 +98,10 @@ public class SparePartStockAuditDto implements Serializable {
|
|||
private Integer recipientNumber; //领用数量
|
||||
private Integer purchaseStatus; //配件领用状态(0=待审核,1=未通过,2=待管理员审核,3=待发货,4=待收货,5=已完成)
|
||||
private String purchaseIdea; //采购意见
|
||||
private Integer orderType; // 0-检修工单 1-维修工单
|
||||
private String orderType; // 0-检修工单 1-维修工单
|
||||
private String workOrderNo; //工单号
|
||||
private Integer queryType; // 0-待审核 1-待发货 2-待收货 3-已完成
|
||||
|
||||
private String createTimeStart; //创建时间
|
||||
private String createTimeEnd; //创建时间
|
||||
|
||||
private Integer isDelete; // 是否删除: [0=否, 1=是]
|
||||
private Date createTime; // 创建时间
|
||||
private Date consignerTime; //发货时间
|
||||
private Integer creatorId; // 创建人id
|
||||
private Long auditorId; // 审核人id 经办人
|
||||
}
|
||||
|
|
|
@ -0,0 +1,33 @@
|
|||
package com.hcy.common.entity.client;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 站点实体
|
||||
*/
|
||||
@Data
|
||||
public class ClientSite implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId(value="id", type= IdType.AUTO)
|
||||
private Long id; // 主键id
|
||||
private Long clientId; // 客户id
|
||||
private String siteName; // 站点名称
|
||||
private String longitude; // 经度
|
||||
private String latitude; // 纬度
|
||||
private Long provinceId; // 省id
|
||||
private Long districtId; // 区id
|
||||
private Long cityId; // 市id
|
||||
private String detailedAddress; // 详细地址
|
||||
private Long creatorId; // 创建人id
|
||||
private Date createTime; // 创建时间
|
||||
private Date updateTime; // 更新时间
|
||||
private Integer isDelete; // 是否删除 0-未删除 1-删除
|
||||
|
||||
}
|
|
@ -39,4 +39,7 @@ public class Equipment implements Serializable {
|
|||
private Long createTime; // 创建时间
|
||||
private Long updateTime; // 更新时间
|
||||
private Long deleteTime; // 删除时间
|
||||
|
||||
private Long clientSiteId; // 站点id
|
||||
|
||||
}
|
|
@ -44,7 +44,6 @@ public class MaintenanceOrder implements Serializable {
|
|||
private String cancelCause; // 取消原因
|
||||
private String refuseMaintenanceCause; // 拒绝维修原因
|
||||
private String returnCause; //退回原因
|
||||
private String postponeCause; //暂缓原因
|
||||
private String remark; // 备注
|
||||
private Long creatorId; // 创建人id
|
||||
private Date orderAccomplishTime; // 订单完成时间
|
||||
|
|
|
@ -21,7 +21,6 @@ public enum MaintenanceOrderStatusEnum {
|
|||
CHARGEBACK(7,"已退单"),
|
||||
CLOSED(8,"已关闭"),
|
||||
RETURNED(9,"已退回"),
|
||||
POSTPONE(10,"暂缓订单"),
|
||||
|
||||
NEAREST_TO_ME(0,"离我最近"),
|
||||
TIME_PRIORITY(1,"时间优先"),
|
||||
|
|
|
@ -0,0 +1,24 @@
|
|||
package com.hcy.common.mapper.client;
|
||||
|
||||
|
||||
import com.hcy.common.core.basics.IBaseMapper;
|
||||
import com.hcy.common.dto.ClientSiteDto;
|
||||
import com.hcy.common.entity.client.ClientSite;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 站点Mapper
|
||||
*/
|
||||
@Mapper
|
||||
public interface ClientSiteMapper extends IBaseMapper<ClientSite> {
|
||||
|
||||
/**
|
||||
* 查询站点名称、设备总数、设备状态正常总数,报修中总数,检修中总数
|
||||
* @return
|
||||
*/
|
||||
List<ClientSiteDto> siteEquipmentList(@Param("form") ClientSiteDto form);
|
||||
|
||||
}
|
|
@ -31,6 +31,16 @@ public interface MaintenanceOrderMapper extends IBaseMapper<MaintenanceOrder> {
|
|||
@Select("select * from la_maintenance_order where is_delete = 0 and order_no like concat('%',#{time},'%') order by order_no desc limit 1")
|
||||
MaintenanceOrder findLastMaintenanceOrderByTime(@Param("time") String time);
|
||||
|
||||
/**
|
||||
* 通过订单id查询维修订单
|
||||
* @return MaintenanceOrder
|
||||
*/
|
||||
@Select("select * from la_repair_order where is_delete = 0 and id = #{id}")
|
||||
RepairOrder findRepairOrderById(@Param("id") Long id);
|
||||
|
||||
@Select("select * from la_repair_order where is_delete = 0 and order_no like concat('%',#{time},'%') order by order_no desc limit 1")
|
||||
RepairOrder findRepairOrderByTime(@Param("time") String time);
|
||||
|
||||
/**
|
||||
* 获取待接单状态数量
|
||||
* @return
|
||||
|
|
|
@ -1,10 +1,7 @@
|
|||
package com.hcy.common.mapper.sparePartStockAudit;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.hcy.common.core.basics.IBaseMapper;
|
||||
import com.hcy.common.dto.SparePartStockAuditDto;
|
||||
import com.hcy.common.dto.staff.StaffDto;
|
||||
import com.hcy.common.entity.order.MaintenanceOrder;
|
||||
import com.hcy.common.entity.sparePartStockAudit.SparePartStockAudit;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
@ -17,11 +14,6 @@ import org.apache.ibatis.annotations.Select;
|
|||
@Mapper
|
||||
public interface SparePartStockAuditMapper extends IBaseMapper<SparePartStockAudit> {
|
||||
|
||||
/**
|
||||
* 获取今天最后一条数据
|
||||
* @param time 今天
|
||||
* @return SparePartStockAudit
|
||||
*/
|
||||
@Select("select * from la_spare_part_stock_audit where is_delete = 0 and receipt_number like concat('%',#{time},'%') order by receipt_number desc limit 1")
|
||||
SparePartStockAudit findLastSparePartStockAuditByTime(@Param("time") String time);
|
||||
|
||||
|
@ -40,12 +32,4 @@ public interface SparePartStockAuditMapper extends IBaseMapper<SparePartStockAud
|
|||
*/
|
||||
@Select("select * from la_spare_part_stock_audit where is_delete = 0 and order_type = #{orderType} and order_id = #{orderId}")
|
||||
SparePartStockAudit findSparePartStockAuditByOrderId(@Param("orderId") Long orderId,@Param("orderType") Integer orderType);
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
* @param page 分页参数
|
||||
* @param sparePartStockAuditDto 参数
|
||||
* @return Page<SparePartStockAuditDto>
|
||||
*/
|
||||
Page<SparePartStockAuditDto> page(Page page, @Param("param") SparePartStockAuditDto sparePartStockAuditDto);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.hcy.common.mapper.client.ClientSiteMapper">
|
||||
<!-- 通用查询映射结果 -->
|
||||
<resultMap id="BaseResultMap" type="com.hcy.common.entity.client.ClientSite">
|
||||
</resultMap>
|
||||
|
||||
<select id="siteEquipmentList" resultType="com.hcy.common.dto.ClientSiteDto">
|
||||
SELECT
|
||||
ls.*,
|
||||
COUNT( le.id ) AS equipmentCount,
|
||||
SUM( CASE WHEN le.device_status = 1 THEN 1 ELSE 0 END ) AS normalCount,
|
||||
SUM( CASE WHEN le.device_status = 2 THEN 1 ELSE 0 END ) AS underOverhaulCount,
|
||||
SUM( CASE WHEN le.device_status = 3 THEN 1 ELSE 0 END ) AS underWarrantyCount
|
||||
FROM
|
||||
la_client_site AS ls
|
||||
LEFT JOIN la_equipment AS le ON le.client_site_id = ls.id AND le.is_delete = 0
|
||||
WHERE
|
||||
ls.is_delete = 0
|
||||
<if test="form.clientId != null">
|
||||
and ls.client_id = #{form.clientId}
|
||||
</if>
|
||||
<if test="form.siteName != null and form.siteName != ''">
|
||||
and ls.site_name like concat('%', #{form.siteName}, '%')
|
||||
</if>
|
||||
GROUP BY
|
||||
ls.id
|
||||
ORDER BY
|
||||
equipmentCount DESC
|
||||
|
||||
</select>
|
||||
</mapper>
|
|
@ -44,14 +44,18 @@
|
|||
</select>
|
||||
|
||||
<select id="pageList" resultType="com.hcy.common.dto.EquipmentDto">
|
||||
select e.*,c.client_name as clientName
|
||||
select e.*,c.client_name as clientName,s.site_name as siteName
|
||||
from la_equipment as e
|
||||
LEFT JOIN la_client AS c ON e.client_id = c.id
|
||||
LEFT JOIN la_client_site AS s ON e.client_site_id = s.id
|
||||
where
|
||||
e.is_delete = 0
|
||||
<if test="form.number != null and form.number != ''">
|
||||
and e.number like concat('%', #{form.number}, '%')
|
||||
</if>
|
||||
<if test="form.siteName != null and form.siteName != ''">
|
||||
and s.site_name like concat('%', #{form.siteName}, '%')
|
||||
</if>
|
||||
<if test="form.name != null and form.name != ''">
|
||||
and e.name like concat('%', #{form.name}, '%')
|
||||
</if>
|
||||
|
|
|
@ -2,65 +2,5 @@
|
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.hcy.common.mapper.sparePartStockAudit.SparePartStockAuditMapper">
|
||||
|
||||
<select id="page" resultType="com.hcy.common.dto.SparePartStockAuditDto">
|
||||
SELECT
|
||||
lspsa.*
|
||||
FROM
|
||||
la_spare_part_stock_audit AS lspsa
|
||||
<if test="param.queryType != null and param.queryType == 6 and param.consignee != null and param.consignee != ''">
|
||||
LEFT JOIN la_system_auth_admin AS lsaa ON lsaa.id = lspsa.creator_id
|
||||
</if>
|
||||
<if test="param.queryType != null and param.queryType == 5 and param.consignee != null and param.consignee != ''">
|
||||
LEFT JOIN la_user AS lu ON lu.id = lspsa.creator_id
|
||||
</if>
|
||||
<where>
|
||||
lspsa.is_delete = 0
|
||||
<if test="param.receiptType != null">
|
||||
and lspsa.receipt_type = #{param.receiptType}
|
||||
</if>
|
||||
<if test="param.outInWarehouseType != null">
|
||||
and lspsa.out_in_warehouse_type = #{param.outInWarehouseType}
|
||||
</if>
|
||||
<if test="param.receiptNumber != null and param.receiptNumber != ''">
|
||||
and lspsa.receipt_number like CONCAT("%",#{param.receiptNumber},"%")
|
||||
</if>
|
||||
<if test="param.auditState != null">
|
||||
and lspsa.audit_state = #{param.auditState}
|
||||
</if>
|
||||
<if test="param.warehouseId != null">
|
||||
and lspsa.warehouse_id = #{param.warehouseId}
|
||||
</if>
|
||||
<if test="param.deliveryMethod != null">
|
||||
and lspsa.delivery_method = #{param.deliveryMethod}
|
||||
</if>
|
||||
<if test="param.purchaseStatus != null">
|
||||
and lspsa.purchase_status = #{param.purchaseStatus}
|
||||
</if>
|
||||
<if test="param.createTimeStart != null and param.createTimeStart != ''">
|
||||
and lspsa.create_time >= #{param.createTimeStart}
|
||||
</if>
|
||||
<if test="param.createTimeEnd != null and param.createTimeEnd != ''">
|
||||
and lspsa.create_time <= #{param.createTimeEnd}
|
||||
</if>
|
||||
<if test="param.queryType != null and (param.queryType == 0 or param.queryType == 5)">
|
||||
and lspsa.purchase_status is not null
|
||||
<if test="param.consignee != null and param.consignee != ''">
|
||||
and lu.nickname like CONCAT("%",#{param.consignee},"%")
|
||||
</if>
|
||||
</if>
|
||||
<if test="param.queryType != null and param.queryType == 1">
|
||||
and (lspsa.purchase_status is null or (lspsa.purchase_status != 0 and lspsa.purchase_status != 1 and lspsa.purchase_status != 8 and lspsa.purchase_status != 6))
|
||||
</if>
|
||||
<if test="param.queryType != null and (param.queryType == 2 or param.queryType == 3 or param.queryType == 4)">
|
||||
and lspsa.purchase_status is null
|
||||
</if>
|
||||
<if test="param.queryType != null and param.queryType == 6">
|
||||
and (lspsa.purchase_status != 6 and lspsa.purchase_status != 8)
|
||||
<if test="param.consignee != null and param.consignee != ''">
|
||||
and lsaa.nickname like CONCAT("%",#{param.consignee},"%")
|
||||
</if>
|
||||
</if>
|
||||
</where>
|
||||
order by lspsa.create_time desc
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
|
|
@ -9,7 +9,6 @@ import com.hcy.front.validate.order.MaintenanceOrderParam;
|
|||
import com.hcy.front.vo.order.MaintenanceOrderDetailVo;
|
||||
import com.hcy.front.vo.order.MaintenanceOrderListVo;
|
||||
import lombok.extern.java.Log;
|
||||
import org.springframework.util.Assert;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
|
@ -145,8 +144,6 @@ public class MaintenanceOrderController {
|
|||
*/
|
||||
@PostMapping("/fillInReceipt")
|
||||
public Object fillInReceipt(@RequestBody MaintenanceOrderParam maintenanceOrderParam) {
|
||||
Assert.notNull(maintenanceOrderParam.getFamiliarFaultId(), "结论类型不可为空");
|
||||
Assert.notNull(maintenanceOrderParam.getFamiliarFaultDescription(), "结论描述不可为空");
|
||||
iMaintenanceOrderService.fillInReceipt(maintenanceOrderParam);
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
@ -158,8 +155,6 @@ public class MaintenanceOrderController {
|
|||
*/
|
||||
@PostMapping("/updateEquipmentModel")
|
||||
public Object updateEquipmentModel(@RequestBody MaintenanceOrderParam maintenanceOrderParam) {
|
||||
Assert.notNull(maintenanceOrderParam.getModelNo(), "模块编码不可为空");
|
||||
Assert.notNull(maintenanceOrderParam.getBrand(), "品牌不可为空");
|
||||
iMaintenanceOrderService.updateEquipmentModel(maintenanceOrderParam);
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
@ -186,18 +181,6 @@ public class MaintenanceOrderController {
|
|||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 暂缓订单
|
||||
* @param maintenanceOrderParam 参数
|
||||
* @return Object
|
||||
*/
|
||||
@PostMapping("/postponeOrder")
|
||||
public Object postponeOrder(@RequestBody MaintenanceOrderParam maintenanceOrderParam) {
|
||||
Assert.notNull(maintenanceOrderParam.getPostponeCause(), "暂缓原因不可为空");
|
||||
iMaintenanceOrderService.postponeOrder(maintenanceOrderParam);
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 小程序工单状态数量
|
||||
* @return Object
|
||||
|
|
|
@ -1,64 +0,0 @@
|
|||
package com.hcy.front.controller.sparePartStockAudit;
|
||||
|
||||
import com.hcy.common.core.AjaxResult;
|
||||
import com.hcy.common.core.PageResult;
|
||||
import com.hcy.common.validator.annotation.IDMust;
|
||||
import com.hcy.front.service.sparePartStockAudit.ISparePartStockAuditService;
|
||||
import com.hcy.front.validate.PageParam;
|
||||
import com.hcy.front.validate.sparePartStockAudit.SparePartStockAuditParam;
|
||||
import com.hcy.front.vo.sparePartStockAudit.SparePartStockAuditDetailVo;
|
||||
import com.hcy.front.vo.sparePartStockAudit.SparePartStockAuditListVo;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* 备件出入库审核管理
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("api/sparePartStockAudit")
|
||||
public class SparePartStockAuditController {
|
||||
|
||||
@Resource
|
||||
ISparePartStockAuditService iSparePartStockAuditService;
|
||||
|
||||
/**
|
||||
* 备件出入库审核列表
|
||||
*
|
||||
* @author hcy
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public Object list(@Validated PageParam pageParam, SparePartStockAuditParam params) {
|
||||
PageResult<SparePartStockAuditListVo> list = iSparePartStockAuditService.list(pageParam, params);
|
||||
return AjaxResult.success(list);
|
||||
}
|
||||
/**
|
||||
* 备件出入库审核详情
|
||||
*
|
||||
* @author hcy
|
||||
* @param id 主键ID
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/detail")
|
||||
public Object detail(@Validated @IDMust() @RequestParam("id") Long id) {
|
||||
SparePartStockAuditDetailVo detail = iSparePartStockAuditService.detail(id);
|
||||
return AjaxResult.success(detail);
|
||||
}
|
||||
|
||||
/**
|
||||
* 备件出入库审核新增
|
||||
*
|
||||
* @author hcy
|
||||
* @param sparePartStockAuditParam 参数
|
||||
* @return Object
|
||||
*/
|
||||
@PostMapping("/add")
|
||||
public Object add(@Validated(value = SparePartStockAuditParam.create.class) @RequestBody SparePartStockAuditParam sparePartStockAuditParam) {
|
||||
iSparePartStockAuditService.add(sparePartStockAuditParam);
|
||||
return AjaxResult.success();
|
||||
}
|
||||
}
|
|
@ -8,7 +8,6 @@ import com.hcy.front.validate.PageParam;
|
|||
import com.hcy.front.validate.warehouse.SparePartParam;
|
||||
import com.hcy.front.vo.warehouse.SparePartDetailVo;
|
||||
import com.hcy.front.vo.warehouse.SparePartListVo;
|
||||
import org.springframework.util.Assert;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
|
@ -27,22 +26,20 @@ public class SparePartController {
|
|||
/**
|
||||
* 备件信息列表
|
||||
*
|
||||
* @author dabin
|
||||
* @author hcy
|
||||
* @param pageParam 分页参数
|
||||
* @param param 搜索参数
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public Object list(@Validated PageParam pageParam, SparePartParam param) {
|
||||
Assert.notNull(param.getClientId(),"客户id不可为空");
|
||||
Assert.notNull(param.getOrderType(),"订单类型不可为空");
|
||||
PageResult<SparePartListVo> list = iSparePartService.list(pageParam, param);
|
||||
return AjaxResult.success(list);
|
||||
}
|
||||
/**
|
||||
* 备件信息详情
|
||||
*
|
||||
* @author dabin
|
||||
* @author hcy
|
||||
* @param id 主键ID
|
||||
* @return Object
|
||||
*/
|
||||
|
@ -51,14 +48,4 @@ public class SparePartController {
|
|||
SparePartDetailVo detail = iSparePartService.detail(id);
|
||||
return AjaxResult.success(detail);
|
||||
}
|
||||
|
||||
/**
|
||||
* 我的备件
|
||||
* @author dabin
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/mySparePart")
|
||||
public Object mySparePart(@Validated PageParam pageParam) {
|
||||
return AjaxResult.success(iSparePartService.mySparePart(pageParam));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -104,12 +104,6 @@ public interface IMaintenanceOrderService {
|
|||
*/
|
||||
void confirmReceipt(MaintenanceOrderParam maintenanceOrderParam);
|
||||
|
||||
/**
|
||||
* 暂缓订单
|
||||
* @param maintenanceOrderParam 参数
|
||||
*/
|
||||
void postponeOrder(MaintenanceOrderParam maintenanceOrderParam);
|
||||
|
||||
/**
|
||||
* 统计工单状态数量
|
||||
* @return OrderStatusCountVo
|
||||
|
|
|
@ -769,6 +769,8 @@ public class MaintenanceOrderServiceImpl implements IMaintenanceOrderService {
|
|||
public void fillInReceipt(MaintenanceOrderParam maintenanceOrderParam) {
|
||||
MaintenanceOrder maintenanceOrder = maintenanceOrderMapper.findMaintenanceOrderById(maintenanceOrderParam.getId());
|
||||
Assert.notNull(maintenanceOrder, "数据不存在");
|
||||
Assert.notNull(maintenanceOrderParam.getFamiliarFaultId(), "结论类型不可为空");
|
||||
Assert.notNull(maintenanceOrderParam.getFamiliarFaultDescription(), "结论描述不可为空");
|
||||
|
||||
//只有维修中和填写回单状态才可以填写回单
|
||||
if(maintenanceOrder.getOrderStatus() == MaintenanceOrderStatusEnum.MAINTENANCE_ING.getStatus() &&
|
||||
|
@ -807,6 +809,8 @@ public class MaintenanceOrderServiceImpl implements IMaintenanceOrderService {
|
|||
public void updateEquipmentModel(MaintenanceOrderParam maintenanceOrderParam) {
|
||||
MaintenanceOrder maintenanceOrder = maintenanceOrderMapper.findMaintenanceOrderById(maintenanceOrderParam.getId());
|
||||
Assert.notNull(maintenanceOrder, "数据不存在");
|
||||
Assert.notNull(maintenanceOrderParam.getModelNo(), "模块编码不可为空");
|
||||
Assert.notNull(maintenanceOrderParam.getBrand(), "品牌不可为空");
|
||||
|
||||
if(maintenanceOrder.getOrderStatus() == MaintenanceOrderStatusEnum.MAINTENANCE_ING.getStatus()){
|
||||
EquipmentModel equipmentModel = equipmentModelMapper.findEquipmentModelByEquipmentId(maintenanceOrder.getEquipmentId());
|
||||
|
@ -837,6 +841,7 @@ public class MaintenanceOrderServiceImpl implements IMaintenanceOrderService {
|
|||
Assert.notNull(maintenanceOrder, "数据不存在");
|
||||
|
||||
if(maintenanceOrder.getOrderStatus() == MaintenanceOrderStatusEnum.MAINTENANCE_ING.getStatus()){
|
||||
|
||||
MaintenanceRepair maintenanceRepair = new MaintenanceRepair();
|
||||
maintenanceRepair.setMaintenanceOrderId(maintenanceOrder.getId());
|
||||
maintenanceRepair.setId(null);
|
||||
|
@ -881,21 +886,6 @@ public class MaintenanceOrderServiceImpl implements IMaintenanceOrderService {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void postponeOrder(MaintenanceOrderParam maintenanceOrderParam) {
|
||||
MaintenanceOrder maintenanceOrder = maintenanceOrderMapper.findMaintenanceOrderById(maintenanceOrderParam.getId());
|
||||
Assert.notNull(maintenanceOrder, "数据不存在");
|
||||
|
||||
if(maintenanceOrder.getOrderStatus() == MaintenanceOrderStatusEnum.MAINTENANCE_ING.getStatus()){
|
||||
//设置暂缓原因和状态
|
||||
maintenanceOrder.setPostponeCause(maintenanceOrderParam.getPostponeCause());
|
||||
maintenanceOrder.setOrderStatus(MaintenanceOrderStatusEnum.POSTPONE.getStatus());
|
||||
maintenanceOrderMapper.updateById(maintenanceOrder);
|
||||
}else{
|
||||
throw new OperateException("当前订单状态无法进行暂缓操作");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 统计工单状态数量
|
||||
*
|
||||
|
|
|
@ -1,41 +0,0 @@
|
|||
package com.hcy.front.service.sparePartStockAudit;
|
||||
|
||||
|
||||
import com.hcy.common.core.PageResult;
|
||||
import com.hcy.front.validate.PageParam;
|
||||
import com.hcy.front.validate.sparePartStockAudit.SparePartStockAuditParam;
|
||||
import com.hcy.front.vo.sparePartStockAudit.SparePartStockAuditDetailVo;
|
||||
import com.hcy.front.vo.sparePartStockAudit.SparePartStockAuditListVo;
|
||||
|
||||
/**
|
||||
* 备件出入库审核服务接口类
|
||||
*/
|
||||
public interface ISparePartStockAuditService {
|
||||
|
||||
/**
|
||||
* 备件出入库审核列表
|
||||
*
|
||||
* @author hcy
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return PageResult<SparePartStockAuditVo>
|
||||
*/
|
||||
PageResult<SparePartStockAuditListVo> list(PageParam pageParam, SparePartStockAuditParam params);
|
||||
|
||||
/**
|
||||
* 备件出入库审核详情
|
||||
*
|
||||
* @author hcy
|
||||
* @param id 主键ID
|
||||
* @return SparePartStockAudit
|
||||
*/
|
||||
SparePartStockAuditDetailVo detail(Long id);
|
||||
|
||||
/**
|
||||
* 备件出入库审核新增
|
||||
*
|
||||
* @author hcy
|
||||
* @param sparePartStockAuditParam 参数
|
||||
*/
|
||||
void add(SparePartStockAuditParam sparePartStockAuditParam);
|
||||
}
|
|
@ -1,241 +0,0 @@
|
|||
package com.hcy.front.service.sparePartStockAudit.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.hcy.common.core.PageResult;
|
||||
import com.hcy.common.dto.SparePartStockAuditDto;
|
||||
import com.hcy.common.dto.order.OrderSparePart;
|
||||
import com.hcy.common.entity.SparePartAudit.SparePartAudit;
|
||||
import com.hcy.common.entity.client.Client;
|
||||
import com.hcy.common.entity.client.ClientContacts;
|
||||
import com.hcy.common.entity.order.MaintenanceOrder;
|
||||
import com.hcy.common.entity.order.RepairOrder;
|
||||
import com.hcy.common.entity.sparePart.SparePart;
|
||||
import com.hcy.common.entity.sparePartStockAudit.SparePartStockAudit;
|
||||
import com.hcy.common.entity.system.SystemAuthAdmin;
|
||||
import com.hcy.common.entity.user.User;
|
||||
import com.hcy.common.entity.warehouse.Warehouse;
|
||||
import com.hcy.common.enums.SparePartStockAuditEnum;
|
||||
import com.hcy.common.enums.audit.AuditStateEnum;
|
||||
import com.hcy.common.mapper.SparePartAudit.SparePartAuditMapper;
|
||||
import com.hcy.common.mapper.client.ClientContactsMapper;
|
||||
import com.hcy.common.mapper.client.ClientMapper;
|
||||
import com.hcy.common.mapper.order.MaintenanceOrderMapper;
|
||||
import com.hcy.common.mapper.order.OrderSparePartMapper;
|
||||
import com.hcy.common.mapper.order.RepairOrderMapper;
|
||||
import com.hcy.common.mapper.sparePart.SparePartMapper;
|
||||
import com.hcy.common.mapper.sparePartStockAudit.SparePartStockAuditMapper;
|
||||
import com.hcy.common.mapper.system.SystemAuthAdminMapper;
|
||||
import com.hcy.common.mapper.user.UserMapper;
|
||||
import com.hcy.common.mapper.warehouse.WarehouseMapper;
|
||||
import com.hcy.common.utils.OrderUtil;
|
||||
import com.hcy.common.utils.TimeUtil;
|
||||
import com.hcy.front.FrontThreadLocal;
|
||||
import com.hcy.front.service.order.impl.OrderOperateRecordServiceImpl;
|
||||
import com.hcy.front.service.sparePartStockAudit.ISparePartStockAuditService;
|
||||
import com.hcy.front.validate.PageParam;
|
||||
import com.hcy.front.validate.sparePartStockAudit.SparePartStockAuditParam;
|
||||
import com.hcy.front.vo.order.OrderSparePartListVo;
|
||||
import com.hcy.front.vo.sparePartStockAudit.SparePartStockAuditDetailVo;
|
||||
import com.hcy.front.vo.sparePartStockAudit.SparePartStockAuditListVo;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.util.Assert;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 备件出入库审核实现类
|
||||
*/
|
||||
@Service
|
||||
public class SparePartStockAuditServiceImpl implements ISparePartStockAuditService {
|
||||
|
||||
@Resource
|
||||
SparePartStockAuditMapper sparePartStockAuditMapper;
|
||||
|
||||
@Resource
|
||||
SparePartMapper sparePartMapper;
|
||||
|
||||
@Resource
|
||||
WarehouseMapper warehouseMapper;
|
||||
|
||||
@Resource
|
||||
SparePartAuditMapper sparePartAuditMapper;
|
||||
|
||||
@Resource
|
||||
MaintenanceOrderMapper maintenanceOrderMapper;
|
||||
|
||||
@Resource
|
||||
RepairOrderMapper repairOrderMapper;
|
||||
|
||||
@Resource
|
||||
UserMapper userMapper;
|
||||
|
||||
@Resource
|
||||
OrderSparePartMapper orderSparePartMapper;
|
||||
|
||||
@Resource
|
||||
SystemAuthAdminMapper systemAuthAdminMapper;
|
||||
|
||||
@Resource
|
||||
OrderOperateRecordServiceImpl orderOperateRecordService;
|
||||
|
||||
@Resource
|
||||
ClientMapper clientMapper;
|
||||
|
||||
@Resource
|
||||
ClientContactsMapper clientContactsMapper;
|
||||
|
||||
/**
|
||||
* 备件出入库审核列表
|
||||
*
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return PageResult<SparePartStockAuditListVo>
|
||||
* @author hcy
|
||||
*/
|
||||
@Override
|
||||
public PageResult<SparePartStockAuditListVo> list(PageParam pageParam, SparePartStockAuditParam params) {
|
||||
Integer page = pageParam.getPageNo();
|
||||
Integer limit = pageParam.getPageSize();
|
||||
|
||||
SparePartStockAuditDto sparePartStockAuditDto = new SparePartStockAuditDto();
|
||||
BeanUtils.copyProperties(params, sparePartStockAuditDto);
|
||||
|
||||
//领用时间范围,配送方式查询
|
||||
IPage<SparePartStockAuditDto> iPage = sparePartStockAuditMapper.page(new Page<>(page, limit), sparePartStockAuditDto);
|
||||
List<SparePartStockAuditListVo> list = new ArrayList<>();
|
||||
for (SparePartStockAuditDto item : iPage.getRecords()) {
|
||||
SparePartStockAuditListVo vo = new SparePartStockAuditListVo();
|
||||
BeanUtils.copyProperties(item, vo);
|
||||
|
||||
vo.setSupplierPhone(item.getSupplier() + "/" + item.getPhone()); //供应商/电话
|
||||
|
||||
if (item.getOrderType() != null) {
|
||||
User user = userMapper.selectById(item.getCreatorId());
|
||||
if(user != null){
|
||||
vo.setCreator(user.getNickname());
|
||||
item.setConsignee(user.getNickname());
|
||||
vo.setConsignerPhone(user.getNickname() + "/" + item.getPhone());
|
||||
vo.setRecipientAndPhone(user.getNickname() + "/" + item.getPhone()); //领料员工/联系电话
|
||||
}
|
||||
} else {
|
||||
SystemAuthAdmin systemAuthAdmin = systemAuthAdminMapper.findSystemAuthAdminById(item.getCreatorId());
|
||||
if (systemAuthAdmin != null) {
|
||||
vo.setCreator(systemAuthAdmin.getNickname());
|
||||
item.setConsignee(systemAuthAdmin.getNickname());
|
||||
vo.setConsignerPhone(systemAuthAdmin.getNickname() + "/" + item.getPhone());
|
||||
vo.setRecipientAndPhone(systemAuthAdmin.getNickname() + "/" + item.getPhone()); //领料员工/联系电话
|
||||
}
|
||||
}
|
||||
|
||||
//设置仓库名称
|
||||
if (AuditStateEnum.ALLOT.getStatus() == item.getReceiptType()) {
|
||||
// 调入仓库名
|
||||
Warehouse importWarehouseName = warehouseMapper.findWarehouseById(item.getImportWarehouse());
|
||||
if (importWarehouseName != null) {
|
||||
vo.setImportWarehouseName(importWarehouseName.getWarehouseName());
|
||||
}
|
||||
|
||||
// 调出仓库名
|
||||
Warehouse exportWarehouseName = warehouseMapper.findWarehouseById(item.getExportWarehouse());
|
||||
if (exportWarehouseName != null) {
|
||||
vo.setExportWarehouseName(exportWarehouseName.getWarehouseName());
|
||||
}
|
||||
} else {
|
||||
Long warehouseId;
|
||||
if (item.getImportWarehouse() != null) {
|
||||
warehouseId = item.getImportWarehouse();
|
||||
} else {
|
||||
warehouseId = item.getExportWarehouse();
|
||||
}
|
||||
Warehouse warehouse = warehouseMapper.findWarehouseById(warehouseId);
|
||||
if (warehouse != null) {
|
||||
vo.setWarehouseName(warehouse.getWarehouseName());
|
||||
}
|
||||
}
|
||||
|
||||
// 获取客户名称
|
||||
SystemAuthAdmin authAdmin = systemAuthAdminMapper.selectOne(new LambdaQueryWrapper<SystemAuthAdmin>()
|
||||
.eq(SystemAuthAdmin::getId, item.getCreatorId()));
|
||||
if(authAdmin != null){
|
||||
ClientContacts clientContacts = clientContactsMapper.selectOne(new LambdaQueryWrapper<ClientContacts>()
|
||||
.eq(ClientContacts::getAdminId, authAdmin.getId()));
|
||||
if(clientContacts != null){
|
||||
Client client = clientMapper.selectOne(new LambdaQueryWrapper<Client>()
|
||||
.eq(Client::getId, clientContacts.getClientId()));
|
||||
if(client != null){
|
||||
vo.setClientName(client.getClientName());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
list.add(vo);
|
||||
}
|
||||
|
||||
return PageResult.iPageHandle(iPage.getTotal(), iPage.getCurrent(), iPage.getSize(), list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 备件出入库审核详情
|
||||
*
|
||||
* @param id 主键参数
|
||||
* @return SparePartStockAudit
|
||||
* @author hcy
|
||||
*/
|
||||
@Override
|
||||
public SparePartStockAuditDetailVo detail(Long id) {
|
||||
SparePartStockAudit model = sparePartStockAuditMapper.findSparePartStockAuditById(id);
|
||||
Assert.notNull(model, "数据不存在");
|
||||
|
||||
SparePartStockAuditDetailVo vo = new SparePartStockAuditDetailVo();
|
||||
BeanUtils.copyProperties(model, vo);
|
||||
|
||||
return vo;
|
||||
}
|
||||
|
||||
/**
|
||||
* 备件出入库审核新增
|
||||
*
|
||||
* @param sparePartStockAuditParam 参数
|
||||
* @author hcy
|
||||
*/
|
||||
@Override
|
||||
@Transactional
|
||||
public void add(SparePartStockAuditParam sparePartStockAuditParam) {
|
||||
SparePartStockAudit model = new SparePartStockAudit();
|
||||
BeanUtils.copyProperties(sparePartStockAuditParam, model);
|
||||
|
||||
SparePartStockAudit lastSparePartStockAudit = sparePartStockAuditMapper.findLastSparePartStockAuditByTime(TimeUtil.getCurrentTimeYYYYMMDD());
|
||||
model.setReceiptNumber(OrderUtil.getOrderNo(lastSparePartStockAudit == null ? "" : lastSparePartStockAudit.getReceiptNumber())); // 单据编号
|
||||
|
||||
//判断当前订单类型设置对应出入库仓库id
|
||||
if(sparePartStockAuditParam.getReceiptType() == AuditStateEnum.IN_WAREHOUSE.getStatus()){
|
||||
model.setImportWarehouse(sparePartStockAuditParam.getWarehouseId());
|
||||
}else if(sparePartStockAuditParam.getReceiptType() == AuditStateEnum.OUT_WAREHOUSE.getStatus()){
|
||||
model.setExportWarehouse(sparePartStockAuditParam.getWarehouseId());
|
||||
}
|
||||
|
||||
// 获取当前的用户
|
||||
model.setCreatorId(FrontThreadLocal.getUserId());
|
||||
sparePartStockAuditMapper.insert(model);
|
||||
|
||||
List<SparePartAudit> sparePartAuditList = sparePartStockAuditParam.getSparePartAuditList();
|
||||
for (SparePartAudit item : sparePartAuditList) {
|
||||
SparePart sparePart = sparePartMapper.findSparePartById(item.getId());
|
||||
SparePartAudit sparePartAudit = new SparePartAudit();
|
||||
BeanUtils.copyProperties(sparePart, sparePartAudit);
|
||||
|
||||
sparePartAudit.setId(null);
|
||||
sparePartAudit.setStockAuditId(model.getId());
|
||||
sparePartAudit.setSparePartsId(sparePart.getId());
|
||||
sparePartAudit.setCount(item.getCount());
|
||||
sparePartAuditMapper.insert(sparePartAudit);//插入备件审核信息
|
||||
}
|
||||
}
|
||||
}
|
|
@ -32,12 +32,4 @@ public interface ISparePartService {
|
|||
* @return SparePart
|
||||
*/
|
||||
SparePartDetailVo detail(Integer id);
|
||||
|
||||
/**
|
||||
* 我的配件
|
||||
* @author hcy
|
||||
* @return SparePart
|
||||
*/
|
||||
PageResult<SparePartListVo> mySparePart(PageParam pageParam);
|
||||
|
||||
}
|
||||
|
|
|
@ -72,6 +72,8 @@ public class SparePartServiceImpl implements ISparePartService {
|
|||
Integer page = pageParam.getPageNo();
|
||||
Integer limit = pageParam.getPageSize();
|
||||
|
||||
Assert.notNull(param.getClientId(),"客户id不可为空");
|
||||
Assert.notNull(param.getOrderType(),"订单类型不可为空");
|
||||
SparePartDto sparePartDto = new SparePartDto();
|
||||
BeanUtils.copyProperties(param,sparePartDto);
|
||||
|
||||
|
@ -143,27 +145,4 @@ public class SparePartServiceImpl implements ISparePartService {
|
|||
vo.setWarehouseName(warehouse.getWarehouseName());
|
||||
return vo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<SparePartListVo> mySparePart(PageParam pageParam) {
|
||||
Integer page = pageParam.getPageNo();
|
||||
Integer limit = pageParam.getPageSize();
|
||||
|
||||
//获取用户信息
|
||||
User user = userMapper.findUserById(FrontThreadLocal.getUserId().longValue());
|
||||
|
||||
LambdaQueryWrapper<SparePart> queryWrapper = new LambdaQueryWrapper<SparePart>()
|
||||
.eq(SparePart::getIsDelete, GlobalConstant.NOT_DELETE)
|
||||
.eq(SparePart::getWarehouseId,user.getWarehouseId());
|
||||
|
||||
Page<SparePart> iPage = sparePartMapper.selectPage(new Page<>(page, limit), queryWrapper);
|
||||
List<SparePartListVo> sparePartListVoList = new ArrayList<>();
|
||||
for (SparePart item : iPage.getRecords()) {
|
||||
SparePartListVo sparePartListVo = new SparePartListVo();
|
||||
BeanUtils.copyProperties(item, sparePartListVo);
|
||||
sparePartListVoList.add(sparePartListVo);
|
||||
}
|
||||
|
||||
return PageResult.iPageHandle(iPage.getTotal(), iPage.getCurrent(), iPage.getSize(), sparePartListVoList);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -77,8 +77,6 @@ public class MaintenanceOrderParam implements Serializable {
|
|||
|
||||
private String refuseMaintenanceCause;
|
||||
|
||||
private String postponeCause; //暂缓原因
|
||||
|
||||
@Length(max = 250, message = "remark参数不能超出250个字符", groups = {create.class, update.class})
|
||||
private String remark;
|
||||
|
||||
|
|
|
@ -1,104 +0,0 @@
|
|||
package com.hcy.front.validate.sparePartStockAudit;
|
||||
|
||||
import com.hcy.common.entity.SparePartAudit.SparePartAudit;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import javax.validation.constraints.DecimalMin;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 备件出入库审核参数
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@Accessors(chain = true)
|
||||
public class SparePartStockAuditParam implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
public interface create{}
|
||||
public interface update{}
|
||||
public interface delete{}
|
||||
|
||||
private Long id;
|
||||
|
||||
private String receiptNumber;
|
||||
|
||||
private Integer receiptType;
|
||||
|
||||
//@NotNull(message = "warehouseId参数缺失", groups = {create.class, update.class})
|
||||
@DecimalMin(value = "0", message = "warehouseId参数值不能少于0", groups = {create.class, update.class})
|
||||
private Long warehouseId;
|
||||
|
||||
//@NotNull(message = "importWarehouse参数缺失", groups = {create.class, update.class})
|
||||
@DecimalMin(value = "0", message = "importWarehouse参数值不能少于0", groups = {create.class, update.class})
|
||||
private Long importWarehouse;
|
||||
|
||||
//@NotNull(message = "exportWarehouse参数缺失", groups = {create.class, update.class})
|
||||
@DecimalMin(value = "0", message = "exportWarehouse参数值不能少于0", groups = {create.class, update.class})
|
||||
private Long exportWarehouse;
|
||||
|
||||
//@NotNull(message = "supplier参数缺失", groups = {create.class, update.class})
|
||||
@Length(max = 32, message = "supplier参数不能超出32个字符", groups = {create.class, update.class})
|
||||
private String supplier;
|
||||
|
||||
// @NotNull(message = "handlingTime参数缺失", groups = {create.class, update.class})
|
||||
private Date handlingTime;
|
||||
|
||||
//@NotNull(message = "consignee参数缺失", groups = {create.class, update.class})
|
||||
@Length(max = 255, message = "consignee参数不能超出255个字符", groups = {create.class, update.class})
|
||||
private String consignee;
|
||||
|
||||
//@NotNull(message = "auditState参数缺失", groups = {create.class, update.class})
|
||||
@DecimalMin(value = "0", message = "auditState参数值不能少于0", groups = {create.class, update.class})
|
||||
private Integer auditState;
|
||||
|
||||
//@NotNull(message = "auditResult参数缺失", groups = {create.class, update.class})
|
||||
@DecimalMin(value = "0", message = "auditResult参数值不能少于0", groups = {create.class, update.class})
|
||||
private Integer auditResult;
|
||||
|
||||
private Date auditTime;
|
||||
|
||||
//@Length(max = 255, message = "auditIdea参数不能超出255个字符", groups = {create.class, update.class})
|
||||
private String auditIdea;
|
||||
|
||||
//@Length(max = 32, message = "phone参数不能超出32个字符", groups = {create.class, update.class})
|
||||
private String phone;
|
||||
|
||||
//@Length(max = 255, message = "remark参数不能超出255个字符", groups = {create.class, update.class})
|
||||
private String remark;
|
||||
|
||||
private String sparePartAuditId; // 备件审核id
|
||||
|
||||
private List<SparePartAudit> sparePartAuditList; //待入库的备件
|
||||
private Integer outInWarehouseType; //出入库类别(0=采购入库,1=库存调拨,2=员工领料,3=销售出库)
|
||||
|
||||
private String workOrderId; //工单号
|
||||
private String orderId; //订单编号
|
||||
private String shippingAddress; //收货地址
|
||||
private String consigner; //发货人
|
||||
private String consignerPhone; //发货人联系电话
|
||||
private String shipAddress; //发货地址
|
||||
private String logisticsCompany; //物流公司
|
||||
private String trackingNumber; //物流编号
|
||||
private Integer deliveryMethod; //配送方式(0=物流快递,1=上门取件,2=送货上门)
|
||||
private BigDecimal salesPrice; //销售价
|
||||
private String recipient; //领用员工
|
||||
private String recipientPhone; //领用员工联系电话
|
||||
private Integer recipientNumber; //领用数量
|
||||
private Integer purchaseStatus; //配件领用状态(0=待审核,1=未通过,2=待管理员审核,3=待发货,4=待收货,5=已完成)
|
||||
private String purchaseIdea; //采购意见
|
||||
private String orderType; // 0-检修工单 1-维修工单
|
||||
private String workOrderNo; //工单号
|
||||
private Integer queryType; // 0-待审核 1-待发货 2-待收货 3-已完成
|
||||
|
||||
private String createTimeStart; //创建时间
|
||||
private String createTimeEnd; //创建时间
|
||||
private String responsiblePerson; // 经办人
|
||||
}
|
|
@ -1,7 +1,5 @@
|
|||
package com.hcy.front.vo.sparePartStockAudit;
|
||||
|
||||
import com.hcy.admin.vo.SparePartAudit.SparePartAuditListVo;
|
||||
import com.hcy.admin.vo.order.OrderSparePartListVo;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
@ -56,11 +54,6 @@ public class SparePartStockAuditDetailVo implements Serializable {
|
|||
private Integer orderType; // 0-检修工单 1-维修工单
|
||||
|
||||
private String workOrderNo; //工单号
|
||||
private List<SparePartAuditListVo> sparePartAuditList; //待入库的备件
|
||||
private List<OrderSparePartListVo> orderSparePartListVoList; //订单配件
|
||||
private String recipientAndPhone; //领用员工/联系电话
|
||||
private String creator; // 创建人
|
||||
|
||||
private Long auditorId; // 审核人id
|
||||
private String responsiblePerson; // 经办人
|
||||
}
|
||||
|
|
|
@ -1,13 +1,10 @@
|
|||
package com.hcy.front.vo.sparePartStockAudit;
|
||||
|
||||
import com.hcy.admin.vo.SparePartAudit.SparePartAuditListVo;
|
||||
import com.hcy.admin.vo.order.OrderSparePartListVo;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* SparePartStockAuditVo
|
||||
|
@ -24,7 +21,7 @@ public class SparePartStockAuditListVo implements Serializable {
|
|||
private Long importWarehouse; // 调入仓库
|
||||
private Long exportWarehouse; // 调出仓库
|
||||
private String supplier; // 供应商
|
||||
|
||||
private String responsiblePerson; // 经办人
|
||||
private String consignee; // 收货单位(人员)
|
||||
private Integer auditState; // 审核状态(0=未审核,1=已审核,2=已取消)
|
||||
private Integer auditResult; // 审核结果(0=已通过,1=未通过)
|
||||
|
@ -39,8 +36,7 @@ public class SparePartStockAuditListVo implements Serializable {
|
|||
private Integer outInWarehouseType; // 出入库类别(0=采购入库,1=库存调拨,2=员工领料,3=销售出库)
|
||||
|
||||
private String workOrderId; //工单号
|
||||
private Long orderId; //订单编号
|
||||
private Integer orderType; // 0-检修工单 1-维修工单
|
||||
private String orderId; //订单编号
|
||||
private String shippingAddress; //收货地址
|
||||
private String consigner; //发货人
|
||||
private String consignerPhone; //发货人联系电话
|
||||
|
@ -55,12 +51,7 @@ public class SparePartStockAuditListVo implements Serializable {
|
|||
private Integer purchaseStatus; //配件领用状态(0=待审核,1=未通过,2=待管理员审核,3=待发货,4=待收货,5=已完成)
|
||||
|
||||
private String workOrderNo; //工单号
|
||||
private List<SparePartAuditListVo> sparePartAuditList; //待入库的备件
|
||||
private List<OrderSparePartListVo> orderSparePartListVoList; //订单配件
|
||||
private String recipientAndPhone; //领用员工/联系电话
|
||||
private String supplierPhone; // 供应商/电话
|
||||
private String creator; // 创建人
|
||||
private Long auditorId; // 审核人id
|
||||
private String responsiblePerson; // 经办人
|
||||
private String clientName; // 客户名称
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue