package com.sunda.spmsoversea.mapper;

import com.sunda.spmsoversea.entity.OverseaWhsInventoryLossDtl;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;

/**
 * <p>
 * 海外仓-存货损益行表 Mapper 接口
 * </p>
 *
 * @author Hzc
 * @since 2024-05-07
 */
@Mapper
public interface OverseaWhsInventoryLossDtlMapper extends BaseMapper<OverseaWhsInventoryLossDtl> {
	
	@Select("SELECT \n" +
			"	OWI.HEAD_UUID AS \"headUuid\",\n" +
			"	OWI.ITEM_NUMBER AS \"itemNumber\",\n" +
			"	OWI.SAP_DELIVERY_NOTE AS \"sapDeliveryNote\",\n" +
			"	OWI.SAP_DELIVERY_NOTE_ITEM AS \"sapDeliveryNoteItem\",\n" +
			"	OWI.MATERIAL_NO AS \"materialNo\",\n" +
			"	MS.MATERIAL_ZH_DESC AS \"materialZhDesc\",\n" +
			"	MS.MATERIAL_EN_DESC AS \"materialEnDesc\",\n" +
			"	OWI.BASIC_UNIT AS \"basicUnit\",\n" +
			"	OWI.UNIT_SALES AS \"unitSales\",\n" +
			"	OWI.RECEIVABLE_QTY_BASIC_UNIT AS \"receivableQtyBasicUnit\",\n" +
			"	OWI.RECEIVABLE_QTY_UNIT_SALES AS \"receivableQtyUnitSales\",\n" +
			"	OWI.ACTUAL_QTY_BASIC_UNIT AS \"actualQtyBasicUnit\",\n" +
			"	OWI.ACTUAL_QTY_UNIT_SALES AS \"actualQtyUnitSales\",\n" +
			"	OWI.UNDERCHARGED_QTY_BASIC_UNIT AS \"underchargedQtyBasicUnit\",\n" +
			"	OWI.UNDERCHARGED_QTY_UNIT_SALES AS \"underchargedQtyUnitSales\",\n" +
			"	OWI.OVERCHARGED_QTY_BASIC_UNIT AS \"overchargedQtyBasicUnit\",\n" +
			"	OWI.OVERCHARGED_QTY_UNIT_SALES AS \"overchargedQtyUnitSales\",\n" +
			"	OWI.REMARKS AS \"remarks\",\n" +
			"	OWI.MOVEMENT_TYPE AS \"movementType\",\n" +
			"	OWI.WERKS AS \"werks\",\n" +
			"	OWI.WHS_LOCATION_CODE AS \"whsLocationCode\",\n" +
			"	ZSG.WAERS AS \"waers\",\n" +
			"	ZSG.VERPR AS \"dmbtr\"\n" +
			"FROM OVERSEA_WHS_INVENTORY_LOSS_DTL OWI \n" +
			"LEFT JOIN Z_SPMS_GET_MBEW ZSG \n" +
			"	ON OWI.WERKS = ZSG.BWKEY \n" +
			"	AND OWI.MATERIAL_NO = ZSG.MATNR \n" +
			"LEFT JOIN MATERIAL_SAP MS \n" +
			"	ON OWI.MATERIAL_NO = MS.MATERIAL_NO \n" +
			"WHERE OWI.HEAD_UUID = #{uuid} \n" +
			"ORDER BY OWI.ITEM_NUMBER" )
	List<Map<String, Object>> selectListByHeadUuid(@Param("uuid") String uuid);

}
