Browse Source

修改调查经过

newStockUp
caoyizhong 1 year ago
parent
commit
7bbffeb1ab
  1. 4
      blade-biz-common/src/main/java/org/springblade/common/constant/aftersales/ProcessorProcessingStatusStatusConstant.java
  2. 5
      blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/entity/AftersaleSurveyRecordEntity.java
  3. 3
      blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/vo/AftersalesWorkOrderVO.java
  4. 40
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/controller/AftersalesWorkOrderController.java
  5. 14
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/IAftersalesWorkOrderService.java
  6. 11
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesProcessingResultsServiceImpl.java
  7. 109
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesWorkOrderServiceImpl.java

4
blade-biz-common/src/main/java/org/springblade/common/constant/aftersales/ProcessorProcessingStatusStatusConstant.java

@ -3,7 +3,9 @@ package org.springblade.common.constant.aftersales;
public enum ProcessorProcessingStatusStatusConstant {
daichuli("待处理","1"),
yichuli("已处理","2"),
yichaoshi("已超时","3");
yichaoshi("已超时","3"),
tijiaofang("处理结果提交方","4")
;
ProcessorProcessingStatusStatusConstant(String name, String value) {
this.name = name;

5
blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/entity/AftersaleSurveyRecordEntity.java

@ -123,6 +123,9 @@ public class AftersaleSurveyRecordEntity extends TenantEntity {
@ApiModelProperty(value = "图片路径")
private String pictureUrl;
/**
* 处理方ID
*/
private Long processorId;
}

3
blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/vo/AftersalesWorkOrderVO.java

@ -16,6 +16,7 @@
*/
package com.logpm.aftersales.vo;
import com.logpm.aftersales.entity.AftersaleSurveyRecordEntity;
import com.logpm.aftersales.entity.AftersalesAbnormalPackageEntity;
import com.logpm.aftersales.entity.AftersalesWorkOrderEntity;
import lombok.Data;
@ -71,6 +72,6 @@ public class AftersalesWorkOrderVO extends AftersalesWorkOrderEntity {
*/
private Long processorId;
private List<AftersaleSurveyRecordEntity> surveyRecordEntities;
}

40
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/controller/AftersalesWorkOrderController.java

@ -97,11 +97,11 @@ public class AftersalesWorkOrderController extends BladeController {
}
/**
* 客服异常工单 查询异常完整数据集合
* 客服异常工单 查询异常工单完整数据集合
*/
@GetMapping("/listOwn")
@ApiOperationSupport(order = 2)
@ApiOperation(value = "查询异常完整数据集合", notes = "传入aftersalesWorkOrder")
@ApiOperation(value = "查询异常工单完整数据集合", notes = "传入aftersalesWorkOrder")
public R<IPage<AftersalesWorkOrderVO>> getListOwn(@ApiIgnore @RequestParam Map<String, Object> aftersalesWorkOrder, Query query) {
IPage<AftersalesWorkOrderEntity> pages = aftersalesWorkOrderService.pageListOwn(aftersalesWorkOrder, Condition.getPage(query));
@ -109,7 +109,25 @@ public class AftersalesWorkOrderController extends BladeController {
}
/**
* 客服异常工单 查询处理超时的数据
* 客服异常工单 提交异常工单处理结果
*/
@PostMapping("/addProcessingResults")
@ApiOperationSupport(order = 2)
@ApiOperation(value = "营业部提交异常工单处理结果", notes = "传入aftersalesWorkOrder")
public R addProcessingResults(@RequestBody AftersalesWorkOrderDTO aftersalesWorkOrderDTO) {
log.info("营业部提交异常工单处理结果》》》{}",aftersalesWorkOrderDTO);
if(ObjectUtils.isNull( aftersalesWorkOrderDTO.getId())){
throw new ServiceException("异常工单ID不能为空");
}
if(ObjectUtils.isNull(aftersalesWorkOrderDTO.getAftersalesProcessingResultsDTO())){
throw new ServiceException("异常工单处理结果不能为空");
}
return R.status(aftersalesWorkOrderService.addProcessingResults(aftersalesWorkOrderDTO));
}
/**
* 客服异常工单 查询处理超时的数据 待处理
*/
@GetMapping("/isItTimeout")
@ApiOperationSupport(order = 2)
@ -151,6 +169,22 @@ public class AftersalesWorkOrderController extends BladeController {
return R.status(aftersalesWorkOrderService.savaSurveyRecord(aftersalesWorkOrderDTO));
}
/**
* 工单调查记录表 查询调查记录
*/
@GetMapping("/getSurveyRecord")
@ApiOperationSupport(order = 4)
@ApiOperation(value = "查询调查记录", notes = "传入aftersaleSurveyRecord")
public R getSurveyRecord(AftersalesWorkOrderDTO aftersalesWorkOrderDTO) {
log.info("查询调查记录》》》{}", aftersalesWorkOrderDTO);
if(ObjectUtils.isNull(aftersalesWorkOrderDTO.getId())){
throw new ServiceException("异常工单ID不能为空");
}
AftersalesWorkOrderVO list = aftersalesWorkOrderService.getSurveyRecord(aftersalesWorkOrderDTO);
return R.data(list);
}
/**
* 客服异常工单 查询营业部责任人人员信息

14
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/IAftersalesWorkOrderService.java

@ -186,4 +186,18 @@ public interface IAftersalesWorkOrderService extends BaseService<AftersalesWorkO
* @return
*/
boolean savaSurveyRecord(AftersalesWorkOrderDTO aftersalesWorkOrderDTO);
/**
* 营业部提交异常工单处理结果
* @param aftersalesWorkOrderDTO
* @return
*/
boolean addProcessingResults(AftersalesWorkOrderDTO aftersalesWorkOrderDTO);
/**
* 查询调查经过
* @param aftersalesWorkOrderDTO
* @return
*/
AftersalesWorkOrderVO getSurveyRecord(AftersalesWorkOrderDTO aftersalesWorkOrderDTO);
}

11
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesProcessingResultsServiceImpl.java

@ -21,7 +21,10 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.logpm.aftersales.dto.AftersalesProcessingResultsDTO;
import com.logpm.aftersales.entity.AftersalesProcessingMoneyEntity;
import com.logpm.aftersales.entity.AftersalesProcessingResultsEntity;
import com.logpm.aftersales.entity.AftersalesWorkOrderEntity;
import com.logpm.aftersales.service.IAftersalesProcessingMoneyService;
import com.logpm.aftersales.service.IAftersalesProcessorService;
import com.logpm.aftersales.service.IAftersalesWorkOrderService;
import com.logpm.aftersales.vo.AftersalesProcessingMoneyVO;
import com.logpm.aftersales.vo.AftersalesProcessingResultsVO;
import com.logpm.aftersales.excel.AftersalesProcessingResultsExcel;
@ -29,9 +32,13 @@ import com.logpm.aftersales.mapper.AftersalesProcessingResultsMapper;
import com.logpm.aftersales.service.IAftersalesProcessingResultsService;
import lombok.AllArgsConstructor;
import org.springblade.common.constant.DictBizConstant;
import org.springblade.common.constant.aftersales.WorkOrderStatusConstant;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.system.cache.DictBizCache;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@ -74,6 +81,10 @@ public class AftersalesProcessingResultsServiceImpl extends BaseServiceImpl<Afte
*/
@Override
public boolean ownSaveOrUpdate(AftersalesProcessingResultsDTO aftersalesProcessingResults) {
if(ObjectUtil.isNull( aftersalesProcessingResults.getWorkOrderId())){
throw new ServiceException("异常工单ID不能为空");
}
if(ObjectUtil.isNull(aftersalesProcessingResults.getId())){
//添加
baseMapper.insert(aftersalesProcessingResults);

109
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesWorkOrderServiceImpl.java

@ -42,10 +42,7 @@ import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.jetbrains.annotations.NotNull;
import org.springblade.common.constant.DictBizConstant;
import org.springblade.common.constant.aftersales.ProcessorProcessingStatusStatusConstant;
import org.springblade.common.constant.aftersales.ProcessorTypesOfStatusConstant;
import org.springblade.common.constant.aftersales.WorkOrderStatusConstant;
import org.springblade.common.constant.aftersales.WorkOrderTypesOfStatusConstant;
import org.springblade.common.constant.aftersales.*;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.secure.BladeUser;
@ -323,7 +320,11 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
* @return
*/
private AftersaleSurveyRecordDTO changName(AftersalesWorkOrderDTO aftersalesWorkOrder, BladeUser user) {
AftersaleSurveyRecordDTO surveyRecordDTO = aftersalesWorkOrder.getSurveyRecordDTO();
AftersaleSurveyRecordDTO surveyRecordDTO = new AftersaleSurveyRecordDTO();
if(ObjectUtils.isNotNull(aftersalesWorkOrder.getSurveyRecordDTO())){
surveyRecordDTO = aftersalesWorkOrder.getSurveyRecordDTO();
}
surveyRecordDTO.setAddPeople(user.getUserName());
R<List<String>> deptNames = sysClient.getDeptNames(user.getDeptId());
if(ObjectUtils.isNotNull(deptNames)){
@ -830,7 +831,11 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
if(!workOrderEntity.getWorkOrderStatus().equals(WorkOrderStatusConstant.zhongchaizhong.getValue())){
throw new ServiceException("包含不是仲裁的订单数据!无法强制完结!");
}
//添加处理结果
//查询异常工单完结接口
AftersalesWorkOrderEntity byId = baseMapper.selectById(l);
if(byId.getWorkOrderStatus().equals(WorkOrderStatusConstant.yichuli.getValue())){
throw new ServiceException("当前异常工单已处理!");
}
AftersalesProcessingResultsDTO aftersalesProcessingResultsDTO = aftersalesWorkOrder.getAftersalesProcessingResultsDTO();
aftersalesProcessingResultsService.ownSaveOrUpdate(aftersalesProcessingResultsDTO);
//添加完结数据
@ -902,6 +907,7 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
}else{
//不存在 添加处理方信息
AftersalesProcessorEntity processor = addProcessor(aftersalesWorkOrderDTO, myCurrentWarehouse, i);
processor.setConditions(ProcessorConditionsStatusConstant.xinzeng.getValue());
processorEntityList.add(processor);
}
//添加指定处理结果
@ -921,6 +927,89 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
return true;
}
/**
* 营业部提交异常工单处理结果
* @param aftersalesWorkOrderDTO
* @return
*/
@Override
@Transactional(rollbackFor = Exception.class)
public boolean addProcessingResults(AftersalesWorkOrderDTO aftersalesWorkOrderDTO) {
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse();
BladeUser user = AuthUtil.getUser();
//查询异常工单完结接口
AftersalesWorkOrderEntity byId = baseMapper.selectById(aftersalesWorkOrderDTO.getId());
if(byId.getWorkOrderStatus().equals(WorkOrderStatusConstant.yichuli.getValue())){
throw new ServiceException("当前异常工单已处理!");
}
//添加处理结果
AftersalesProcessingResultsDTO aftersalesProcessingResultsDTO = aftersalesWorkOrderDTO.getAftersalesProcessingResultsDTO();
aftersalesProcessingResultsService.ownSaveOrUpdate(aftersalesProcessingResultsDTO);
//修改异常工单处理信息!
AftersalesWorkOrderEntity workOrderEntity = new AftersalesWorkOrderEntity();
workOrderEntity.setId(aftersalesWorkOrderDTO.getId());
workOrderEntity.setWorkOrderStatus(WorkOrderStatusConstant.yichuli.getValue());
baseMapper.updateById(workOrderEntity);
//修改处理方提交结果
LambdaUpdateWrapper<AftersalesProcessorEntity> q = new LambdaUpdateWrapper<>();
q.eq(AftersalesProcessorEntity::getBusinessName,myCurrentWarehouse.getName());
q.eq(AftersalesProcessorEntity::getBusinessId,myCurrentWarehouse.getId());
q.eq(AftersalesProcessorEntity::getTypesOf,ProcessorTypesOfStatusConstant.chulifang.getValue());
q.set(AftersalesProcessorEntity::getProcessingStatus,ProcessorProcessingStatusStatusConstant.tijiaofang.getValue());
aftersalesProcessorService.update(q);
//添加处理结果
// AftersaleSurveyRecordDTO aftersaleSurveyRecordDTO = new AftersaleSurveyRecordDTO();
AftersaleSurveyRecordDTO aftersaleSurveyRecordDTO = changName(aftersalesWorkOrderDTO, user);
aftersaleSurveyRecordDTO.setTypesOf("1");
// aftersaleSurveyRecordDTO.setContent();
aftersaleSurveyRecordDTO.setDifference("3");
aftersaleSurveyRecordDTO.setWorkOrderId(aftersalesWorkOrderDTO.getId());
aftersaleSurveyRecordDTO.setFollowWarehouseId(myCurrentWarehouse.getId());
aftersaleSurveyRecordDTO.setFollowWarehouseName(myCurrentWarehouse.getName());
aftersaleSurveyRecordService.saveOrUpdateOwn(aftersaleSurveyRecordDTO);
return true;
}
/**
* 查询调查数据
* @param aftersalesWorkOrderDTO
* @return
*/
@Override
public AftersalesWorkOrderVO getSurveyRecord(AftersalesWorkOrderDTO aftersalesWorkOrderDTO) {
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse();
if(ObjectUtils.isNull(myCurrentWarehouse)){
throw new ServiceException("请选择仓库信息!!");
}
//查询是否必须回复
AftersalesProcessorEntity one = aftersalesProcessorService.getOne(Wrappers.<AftersalesProcessorEntity>query().lambda().
eq(AftersalesProcessorEntity::getWorkOrderId, aftersalesWorkOrderDTO.getId())
.eq(AftersalesProcessorEntity::getBusinessId, myCurrentWarehouse.getId())
.eq(AftersalesProcessorEntity::getBusinessName, myCurrentWarehouse.getName())
.eq(AftersalesProcessorEntity::getTypesOf, ProcessorTypesOfStatusConstant.chulifang.getValue())
);
//查询调查数据
List<AftersaleSurveyRecordEntity> list = aftersaleSurveyRecordService.list(Wrappers.<AftersaleSurveyRecordEntity>query().lambda()
.eq(AftersaleSurveyRecordEntity::getWorkOrderId, aftersalesWorkOrderDTO.getId())
.eq(AftersaleSurveyRecordEntity::getFollowWarehouseId, myCurrentWarehouse.getId())
.eq(AftersaleSurveyRecordEntity::getFollowWarehouseName, myCurrentWarehouse.getName())
.eq(AftersaleSurveyRecordEntity::getDifference, "1")
);
AftersalesWorkOrderVO aftersalesWorkOrderVO = new AftersalesWorkOrderVO();
List<AftersalesProcessorVO> list1 = new ArrayList<>();
if(ObjectUtils.isNotNull(one)){
AftersalesProcessorVO processorVO = new AftersalesProcessorVO();
BeanUtil.copyProperties(one,processorVO);
list1.add(processorVO);
}
aftersalesWorkOrderVO.setProcessorVOList(list1);
aftersalesWorkOrderVO.setSurveyRecordEntities(list);
return aftersalesWorkOrderVO;
}
/**
* 添加处理处理方信息
* @param aftersalesWorkOrderDTO
@ -950,9 +1039,11 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
surveyRecordDTO.setContent(aftersalesWorkOrderDTO.getSurveyRecordDTO().getContent());//内容
surveyRecordDTO.setTypesOf("1");
surveyRecordDTO.setDifference("2");
surveyRecordDTO.setFollowWarehouseName(i.getBusinessName());
surveyRecordDTO.setFollowWarehouseId(i.getBusinessId());
return aftersaleSurveyRecordService.saveOrUpdateOwn(surveyRecordDTO);
if(ObjectUtil.isNotNull(i)){
surveyRecordDTO.setFollowWarehouseName(i.getBusinessName());
surveyRecordDTO.setFollowWarehouseId(i.getBusinessId());
}
return aftersaleSurveyRecordService.saveOrUpdateOwn(surveyRecordDTO);
}
/**

Loading…
Cancel
Save