package com.iamberry.rst.faces.cm; import com.iamberry.rst.core.cm.*; import com.iamberry.rst.core.fm.ComplaintDetectInfo; import com.iamberry.rst.core.order.ProductType; import com.iamberry.rst.core.page.PagedResult; import java.util.List; import java.util.Map; /** * 客诉基本信息 */ public interface CustomerService { /** * 添加客诉 * @param customerInfo * @return */ Integer saveCustomerInfo(CustomerInfo customerInfo, SalesOrder salesOrder); /** * 修改客诉 * @param customerInfo * @return */ Integer updateCustomerInfo(CustomerInfo customerInfo, SalesOrder salesOrder); /** * 添加订单到efast * @param salesOrder * @return */ Map sendEfastOrder(SalesOrder salesOrder); /** * 根据id获取客诉信息 * @param customerId * @return */ CustomerInfo getCustomerInfo(Integer customerId); /** * 修改客诉信息 * @param record * @return */ Integer updateCustomerInfo(CustomerInfo record); /** * 查询客诉基本信息列表 * @param customerInfo * @return */ PagedResult listCustomer(int pageNO, int pageSize, CustomerInfo customerInfo, boolean isTotalNum); /** * 查询客诉列表 * @param customerInfo * @return */ List listCustomer(CustomerInfo customerInfo); /** * 查询客诉基本信息 * @param customerInfo * @return */ Map getCustomerInfo(CustomerInfo customerInfo); /** * 获取无理由退货信息 * @param noreasonBack * @return */ // NoreasonBack getNoreasonBack(NoreasonBack noreasonBack); /** * 查询寄回和寄出的产品和配件信息 * @param customerCommon * @param isSolve * @return */ // CustomerCommon selectProdcueAndFitting(CustomerCommon customerCommon, int isSolve); /** * 根据客诉id查询商品类型表 * @return */ ProductType getcompanyAffiliation(Integer customerId); /*设置产品,配件参数*/ void setName(CmRelation cr); /*设置产品,配件参数*/ @Deprecated void setName(CustomerCommon cc); /** * 将原订单生成退货单 * @param customerCommon * @param salesOrder * @return * @throws Exception */ void chargebackEfastOrder(CustomerCommon customerCommon, SalesOrder salesOrder, Integer status, Integer returnType); /** * 添加仓储 * @param customerCommon * @return */ // void saveComplaintSignclosedInfo(ComplaintSignclosedInfo complaintSignclosedInfo, CustomerCommon customerCommon); /** * 添加品检 * @param complaintDetectInfo * @param customerCommon * @return */ void saveComplaintDetectInfo(ComplaintDetectInfo complaintDetectInfo, CustomerCommon customerCommon); /** * 向Efast推送订单 仅换新,维修 ,补发 * @return */ Map sendEfastOrder(CustomerCommon customerCommon, SalesOrder salesOrder); /*查询问题个数*/ Integer getQuestionNumber(CustomerInfo customerInfo); /*删除旧的售后信息*/ void deleteCustomerAfterSales(CustomerInfo customer, CmRelation cmRelation); Integer selectNotSolvedCustomer(CustomerInfo customer); /** * 查询旧的客诉基本信息 * @param customerInfo * @return */ List listOnCustomer(CustomerInfo customerInfo); /*添加订单*/ Integer addOrder(SalesOrder salesOrder); /** * 导出客诉信息到excel * @return */ List listStatisticalCustomer(CustomerInfo customerInfo); /** * 总销量 * @param salesOrder * @return */ List salesTotalSales(SalesOrder salesOrder); /** * 总换货 * @param salesOrder * @return */ List salesTotalExchange(SalesOrder salesOrder); /** * 总退货 * @param salesOrder * @return */ List salesTotalReturn(SalesOrder salesOrder); /** * 二次换新 * @param salesOrder * @return */ List salesSecondaryChangeNew(SalesOrder salesOrder); /** * 二次换新退货 * @param salesOrder * @return */ List salesReturnForSecond(SalesOrder salesOrder); /** * 查询所有处理类型 * @return */ List listProcType(); /** * 根据处理类型查询处理方式 * @return */ List listProcMethod(Integer procTypeId); /** * 根据id查询处理方式 * @return */ ProcMethod getProcMethod(Integer procMethodId); /** * 根据id修改处理信息 * @return */ Integer updateCmRelation(CmRelation cmRelation); /** * 查询客诉处理信息 * @param cmRelation * @return */ CmRelation getCmRelationInfo(CmRelation cmRelation); Integer updateRelation(CustomerInfo cm); List listCustomerCommons(CustomerCommon customerCommon); /** * 查询邮费信息 * @return */ PostageInfo getPostageInfo(Integer postageId); /** * 查询邮费信息集合 * @return */ List listPostageInfo(Integer relationId); /** * 添加邮费信息 * @return */ Integer addPostageInfo(PostageInfo postageInfo); /** * 修改邮费信息 * @return */ Integer updatePostageInfo(PostageInfo postageInfo); /** * 修改邮费信息 * @return */ Integer deletePostageInfo(Integer postageId); /** * 同步邮费信息 * @return */ String synchronizePostageInfo(); /** * 同步寄回信息 * @return */ String synchronizeSendbackInfo(); /** * 添加寄回信息 */ SendbackInfo addSendbackInfo(SendbackInfo sendbackInfo); /** * 添加寄回信息项集合 */ Integer addSendbackItemList(List list); /** * 查询单个寄回信息 */ SendbackInfo getSendbackInfo(Integer sendbackId); /** * 查询寄回信息集合 */ List listSendbackInfo(Integer relationId); /** * 查询寄回信息项集合 */ List sendbackItemList(Integer sendbackId); /** * 修改寄回信息 */ SendbackInfo updateSendbackInfo(SendbackInfo sendbackInfo); /** * 修改寄回状态 */ Integer updateSendbackStatus(SendbackInfo sendbackInfo) ; /** * 修改寄回信息项 */ Integer updateSendbackItem(SendbackItem sendbackItem); /** * 删除寄回信息 */ Integer deleteSendbackInfo(Integer sendbackId); /** * 根据主键删除寄回信息项 */ Integer deleteSendbackItemById(Integer sendbackItemId); /** * 根据寄回信息主键删除所有寄回信息项 */ Integer deleteSendbackItemBySendbackId(Integer sendbackId); /** * 查询寄回产品集合 */ List listclosedProdcue(ClosedProdcue closedProdcue); /** * 根据收费信息id查询收费信息 */ InformationInfo getInformationInfo(Integer feeId); /** * 根据处理id查询收费信息 */ List listInformationInfo(Integer relationId); /** * 添加收费信息 */ Integer addInformationInfo(InformationInfo informationInfo); /** * 修改收费信息 */ Integer updateInformationInfo(InformationInfo informationInfo); /** * 删除收费信息 */ Integer delInformationInfo(Integer feeId); /** * 修改订单项所有退货数量为0 */ Integer updateItemreturnNumByorderid(Integer itemOrderId); /** * 查询下载进度列表 * @param downloadProgressInfo * @return */ List listDownloadProgressInfo(DownloadProgressInfo downloadProgressInfo); /** * 修改下载进度列表 * @param downloadProgressInfo * @return */ Integer updateDownloadProgressInfo(DownloadProgressInfo downloadProgressInfo); /** * 添加下载进度列表 * @param downloadProgressInfo * @return */ Integer addDownloadProgressInfo(DownloadProgressInfo downloadProgressInfo); /** * 查询客诉统计 * @return */ List selectCustomerStatistics(String month); }