package com.dk.mdm.mapper.wxapi.basic;

import com.dk.common.mapper.BaseMapper;
import com.dk.common.model.wxapi.wxResponse.WxCommonResponse;
import com.dk.mdm.model.query.wxapi.basic.WxCommonQuery;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @program: hg_ssd_java
 * @description:MAPPER
 * @author: 于继渤
 * @create: 2022-05-24 10:02
 **/
@Repository
public interface WxCommonMapper extends BaseMapper<WxCommonResponse> {

    //客户来源
    List<WxCommonResponse> getCustomerSource(WxCommonQuery wxCommonQuery);

    //卫生间数
    List<WxCommonResponse> getNumberToilets(WxCommonQuery wxCommonQuery);

    //集团字典
    List<WxCommonResponse> getHouseType(WxCommonQuery wxCommonQuery);

    //商品规格分类
    List<WxCommonResponse> getGoodsSpecs(WxCommonQuery wxCommonQuery);

    //接待状态
    List<WxCommonResponse> getReceptionStatus(WxCommonQuery wxCommonQuery);
    //获取供应商类别
    List<WxCommonResponse> getSupplierType(WxCommonQuery wxCommonQuery);
    //获取服务类别-
    List<WxCommonResponse> getServiceCategories(WxCommonQuery wxCommonQuery);
    //商品规格分类 - 其他
    List<WxCommonResponse> getGoodsSpecsOrther(WxCommonQuery wxCommonQuery);

    //结算方式
    List<WxCommonResponse> getSettlement(WxCommonQuery wxCommonQuery);

    //费用项目
    List<WxCommonResponse> getFeeItem(WxCommonQuery wxCommonQuery);

    //根据组织机构 查询销售渠道
    WxCommonResponse selectSaleChannelByOrg(WxCommonQuery wxCommonQuery);

    //获取组织机构
    List<WxCommonResponse> getOrganization(WxCommonQuery wxCommonQuery);

    //获取角色
    List<WxCommonResponse> getRole(WxCommonQuery wxCommonQuery);

    //查询组织机构下的结算方式
    List<WxCommonResponse> selectSettlementByOrg(WxCommonQuery wxCommonQuery);

    //获取用户/员工(废弃)
    List<WxCommonResponse> getUser(WxCommonQuery wxCommonQuery);

    //获取用户/员工 2024年2月29日
    List<WxCommonResponse> getStaff(WxCommonQuery wxCommonQuery);

    //获取员工的范围权限类型
    List<WxCommonResponse> getPurviewType(WxCommonQuery wxCommonQuery);

    //获取销售渠道
    List<WxCommonResponse> getChannel(WxCommonQuery wxCommonQuery);

    //仓库
    List<WxCommonResponse> getWareHouse(WxCommonQuery wxCommonQuery);

    //系统字典
    List<WxCommonResponse> getBasicData(WxCommonQuery wxCommonQuery);
    //获取单据状态
    List<WxCommonResponse> getOrderStatus(WxCommonQuery wxCommonQuery);

    //获取单号
    String getDocNo(@Param("cpId") Long cpId,@Param("orgId") Long orgId ,@Param("docCode") String docCode);

    List<WxCommonResponse> getEstate(WxCommonQuery wxCommonQuery);
    //交货方式  //
    List<WxCommonResponse> getDeliveryType(WxCommonQuery wxCommonQuery);

    Long countByEstateCond(WxCommonQuery wxCommonQuery);

    List<WxCommonResponse> getRefundBlank(WxCommonQuery wxCommonQuery);
    List<WxCommonResponse> getRejectReasonType(WxCommonQuery wxCommonQuery);

    List<WxCommonResponse> getCustomerClassified(WxCommonQuery wxCommonQuery);


    List<WxCommonResponse> getStoreSampleAdvise(WxCommonQuery wxCommonQuery);

    /**
     * @desc   : 查询供应商与客户
     * @author : 孙超
     * @date   : 2023/09/05 17:17
     */
    List<WxCommonResponse> getSupplierAndCustomer(WxCommonQuery wxCommonQuery);



    List<WxCommonResponse> selectByCategor(WxCommonQuery wxCommonQuery);
    List<WxCommonResponse> getBrand(WxCommonQuery wxCommonQuery);

}
