package com.iamberry.rst.faces.cm; import com.iamberry.rst.core.cm.*; import com.iamberry.rst.core.order.ProductType; import com.iamberry.rst.core.page.PagedResult; import org.springframework.transaction.annotation.Transactional; import java.util.List; import java.util.Map; /** * 客诉基本信息 */ public interface CustomerService { /** * 添加客诉 * @param customerInfo * @return */ Integer saveCustomerInfo(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 */ Map getCustomerInfo(CustomerInfo customerInfo); /** * 获取售后退货信息 * @param backGoods * @return */ BackGoods getBackGoods(BackGoods backGoods); /** * 获取无理由退货信息 * @param noreasonBack * @return */ NoreasonBack getNoreasonBack(NoreasonBack noreasonBack); /** * 获取售后补寄信息 * @param reissue * @return */ Reissue getReissue(Reissue reissue); /** * 获取换新详情和品质检测信息 * @param renewed * @return */ Renewed getRenewedInfo(Renewed renewed); /** * 获取维修详情和品质检测信息 * @param repair * @return */ Repair getRepairInfo(Repair repair); /** * 查询寄回和寄出的产品和配件信息 * @param customerCommon * @param isSolve * @return */ CustomerCommon selectProdcueAndFitting(CustomerCommon customerCommon, int isSolve); /** * 根据客诉id查询商品类型表 * @return */ ProductType getcompanyAffiliation(Integer customerId); /*设置产品,配件参数*/ void setName(CustomerCommon cc); /** * 将原订单生成退货单 * @param customerCommon * @param salesOrder * @return * @throws Exception */ void chargebackEfastOrder(CustomerCommon customerCommon, SalesOrder salesOrder,Integer status); /** * 添加仓储 * @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); }