@ -215,7 +215,7 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
} ) ;
}
//添加处理结果
if ( ObjectUtils . isNotNull ( aftersalesWorkOrder . getAftersalesProcessingResultsDTO ( ) ) ) {
if ( ObjectUtils . isNotNull ( aftersalesWorkOrder . getAftersalesProcessingResultsDTO ( ) ) & & ObjectUtils . isNotNull ( aftersalesWorkOrder . getAftersalesProcessingResultsDTO ( ) . getCompensationMethod ( ) ) ) {
aftersalesWorkOrder . setWorkOrderStatus ( WorkOrderStatusConstant . chulijeiguoyitianxei . getValue ( ) ) ;
}
baseMapper . insert ( aftersalesWorkOrder ) ;
@ -563,9 +563,16 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
if ( first . isPresent ( ) ) {
//存在
String dictValue = first . get ( ) . getDictKey ( ) ;
Object workOrderStatus = aftersalesWorkOrder . get ( "workOrderStatus" ) ;
switch ( dictValue ) {
case "1" : //客服经理 查询全部待处理工单
aftersalesWorkOrder . put ( "customerIdentification" , "1" ) ;
if ( ObjectUtils . isNotNull ( workOrderStatus ) & & "500" . equals ( workOrderStatus ) ) {
aftersalesWorkOrder . remove ( "workOrderStatus" ) ;
aftersalesWorkOrder . put ( "customerServiceState" , "30" ) ;
} else {
aftersalesWorkOrder . put ( "customerIdentification" , "1" ) ;
}
break ;
case "2" : // 营业部客服
@ -575,12 +582,21 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
} else {
throw new ServiceException ( "请选择仓库!" ) ;
}
if ( ObjectUtils . isNotNull ( workOrderStatus ) & & workOrderStatus . equals ( WorkOrderStatusConstant . yichuli . getValue ( ) ) ) {
aftersalesWorkOrder . remove ( "workOrderStatus" ) ;
aftersalesWorkOrder . put ( "handleStatus" , "30" ) ;
}
break ;
case "3" : //职能客服 查询自己的待处理工单
aftersalesWorkOrder . put ( "customerServiceId" , user . getUserId ( ) ) ;
if ( ObjectUtils . isNotNull ( workOrderStatus ) & & "500" . equals ( workOrderStatus ) ) {
aftersalesWorkOrder . remove ( "workOrderStatus" ) ;
aftersalesWorkOrder . put ( "customerServiceState" , "30" ) ;
aftersalesWorkOrder . put ( "customerServiceId" , user . getUserId ( ) ) ;
} else {
aftersalesWorkOrder . put ( "customerIdentification" , "1" ) ;
}
break ;
}
} else {
//不存在
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient . getMyCurrentWarehouse ( ) ;
@ -589,11 +605,8 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
} else {
throw new ServiceException ( "请选择仓库!" ) ;
}
}
}
AftersalesWorkOrderEntity workOrderEntity = JSONObject . parseObject ( JSONObject . toJSONString ( aftersalesWorkOrder ) , AftersalesWorkOrderEntity . class ) ;
return baseMapper . pageListOwn ( page , workOrderEntity ) ;
}
@ -1190,6 +1203,7 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
* @return
* /
@Override
@Transactional ( rollbackFor = Exception . class )
public boolean savaSurveyRecord ( AftersalesWorkOrderDTO aftersalesWorkOrderDTO ) {
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient . getMyCurrentWarehouse ( ) ;
BladeUser user = AuthUtil . getUser ( ) ;
@ -1199,20 +1213,28 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
. eq ( AftersalesProcessorEntity : : getWorkOrderId , aftersalesWorkOrderDTO . getId ( ) )
. eq ( AftersalesProcessorEntity : : getTypesOf , ProcessorTypesOfStatusConstant . chulifang . getValue ( ) )
) ;
Optional < AftersalesProcessorEntity > one = list . stream ( ) . filter ( i - > i . getBusinessId ( ) . equals ( myCurrentWarehouse . getId ( ) ) & & i . getBusinessName ( ) . equals ( myCurrentWarehouse . getName ( ) ) ) . findFirst ( ) ;
//添加回复信息
AftersaleSurveyRecordDTO surveyRecordDTO = aftersalesWorkOrderDTO . getSurveyRecordDTO ( ) ;
Optional < AftersalesProcessorEntity > one = null ;
//判断是不是客服
AftersaleSurveyRecordEntity surveyRecordEntity = new AftersaleSurveyRecordEntity ( ) ;
AftersaleSurveyRecordDTO surveyRecordDTO = aftersalesWorkOrderDTO . getSurveyRecordDTO ( ) ;
BeanUtil . copyProperties ( surveyRecordDTO , surveyRecordEntity ) ;
if ( one . isPresent ( ) ) {
surveyRecordEntity . setProcessorId ( one . get ( ) . getId ( ) ) ;
if ( ObjectUtils . isNotNull ( myCurrentWarehouse ) ) {
one = list . stream ( ) . filter ( i - > i . getBusinessId ( ) . equals ( myCurrentWarehouse . getId ( ) ) & & i . getBusinessName ( ) . equals ( myCurrentWarehouse . getName ( ) ) ) . findFirst ( ) ;
one . ifPresent ( aftersalesProcessorEntity - > surveyRecordEntity . setProcessorId ( aftersalesProcessorEntity . getId ( ) ) ) ;
surveyRecordEntity . setAddDepartment ( myCurrentWarehouse . getName ( ) ) ;
} else {
log . info ( "客服回复!!!{}" , user . getUserName ( ) ) ;
surveyRecordEntity . setProcessorId ( user . getUserId ( ) ) ;
R < String > deptName = sysClient . getDeptName ( Long . valueOf ( user . getDeptId ( ) ) ) ;
surveyRecordEntity . setAddDepartment ( deptName . getData ( ) ) ;
}
//添加回复信息
surveyRecordEntity . setDifference ( "1" ) ;
surveyRecordEntity . setTypesOf ( "1" ) ;
surveyRecordEntity . setAddPeople ( user . getUserName ( ) ) ;
surveyRecordEntity . setAddDepartment ( myCurrentWarehouse . getName ( ) ) ;
aftersaleSurveyRecordService . save ( surveyRecordEntity ) ;
//是否处理
if ( ! one . isPresent ( ) ) {
if ( ObjectUtils . isNull ( one ) | | ! one . isPresent ( ) ) {
//不是处理方
if ( aftersalesWorkOrderDTO . getProcessorEntityList ( ) . isEmpty ( ) ) {
@ -1244,10 +1266,14 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
updateWrapper . set ( "processed_by_id" , user . getUserId ( ) ) ;
updateWrapper . set ( "processed_by_name" , user . getUserName ( ) ) ;
aftersalesReplyingPartyService . update ( updateWrapper ) ;
AftersalesWorkOrderEntity workOrderEntity = new AftersalesWorkOrderEntity ( ) ;
workOrderEntity . setId ( aftersalesWorkOrderDTO . getId ( ) ) ;
workOrderEntity . setWorkOrderStatus ( WorkOrderStatusConstant . chulizhong . getValue ( ) ) ;
baseMapper . updateById ( workOrderEntity ) ;
//修改工单状态
AftersalesWorkOrderEntity workOrderEntity1 = baseMapper . selectById ( aftersalesWorkOrderDTO . getId ( ) ) ;
if ( workOrderEntity1 . getWorkOrderStatus ( ) . equals ( WorkOrderStatusConstant . daichuli . getValue ( ) ) ) {
AftersalesWorkOrderEntity workOrderEntity = new AftersalesWorkOrderEntity ( ) ;
workOrderEntity . setId ( aftersalesWorkOrderDTO . getId ( ) ) ;
workOrderEntity . setWorkOrderStatus ( WorkOrderStatusConstant . chulizhong . getValue ( ) ) ;
baseMapper . updateById ( workOrderEntity ) ;
}
//添加或修改新的处理方
chuLiFang ( aftersalesWorkOrderDTO , myCurrentWarehouse , user , list , surveyRecordDTO ) ;
@ -1389,6 +1415,7 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
aftersaleSurveyRecordDTO . setStatus ( 1 ) ;
aftersaleSurveyRecordDTO . setIsDeleted ( 0 ) ;
aftersaleSurveyRecordDTO . setTypesOf ( "1" ) ;
aftersaleSurveyRecordDTO . setContent ( aftersaleSurveyRecordDTO . getAddDepartment ( ) + "提交处理结果!" ) ;
aftersaleSurveyRecordDTO . setProcessingResults ( aftersaleSurveyRecordDTO . getAddDepartment ( ) + "提交了处理结果" + aftersalesProcessingResultsDTO . getResultType ( ) ) ;
aftersaleSurveyRecordDTO . setDifference ( "3" ) ;
aftersaleSurveyRecordDTO . setWorkOrderId ( aftersalesWorkOrderDTO . getId ( ) ) ;
@ -1681,6 +1708,13 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
workOrderEntity . setWorkOrderStatus ( WorkOrderStatusConstant . yichuli . getValue ( ) ) ;
}
baseMapper . updateById ( workOrderEntity ) ;
//修改未回复的处理方改为 6
UpdateWrapper < AftersalesProcessorEntity > updateWrapper = new UpdateWrapper < > ( ) ;
updateWrapper . eq ( "work_order_id" , i ) ;
updateWrapper . apply ( "processing_status in (1)" ) ;
updateWrapper . apply ( "conditions in (1,2) " ) ;
updateWrapper . set ( "processing_status" , ProcessorProcessingStatusStatusConstant . weihuifuyichuli . getValue ( ) ) ;
aftersalesProcessorService . update ( updateWrapper ) ;
} ) ;
return true ;
}