Newer
Older
casic-metering / casic-metering-dao / src / main / resources / mapper / MeterTraceSupplierMapper.xml
wangpeng on 28 Nov 2022 3 KB 溯源供方接口
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.casic.missiles.mapper.MeterTraceSupplierMapper">
    <resultMap id="TraceSupplierDetailResultMap" type="com.casic.missiles.dto.meter.TraceSupplierDetailResponse">
        <result column="supplier_no" property="supplierNo"/>
        <result column="supplier_name" property="supplierName"/>
        <result column="brief_name" property="briefName"/>
        <result column="business_content" property="businessContent"/>
        <result column="tax_number" property="taxNumber"/>
        <result column="bank_account" property="bankAccount"/>
        <result column="bank_name" property="bankName"/>
        <result column="bank_account_number" property="bankAccountNumber"/>
        <result column="postal_code" property="postalCode"/>
        <result column="director" property="director"/>
        <result column="phone" property="phone"/>
        <result column="fax" property="fax"/>
        <result column="mobile" property="mobile"/>
        <result column="mailbox" property="mailbox"/>
        <result column="website" property="website"/>
        <result column="company_country" property="companyCountry"/>
        <result column="company_province" property="companyProvince"/>
        <result column="company_city" property="companyCity"/>
        <result column="company_area" property="companyArea"/>
        <result column="company_address" property="companyAddress"/>
        <result column="invoice_country" property="invoiceCountry"/>
        <result column="invoice_province" property="invoiceProvince"/>
        <result column="invoice_city" property="invoiceCity"/>
        <result column="invoice_area" property="invoiceArea"/>
        <result column="invoice_address" property="invoiceAddress"/>
        <result column="business_scope" property="businessScope"/>
        <result column="minio_file_name" property="minioFileName"/>
        <result column="approval_status" property="approvalStatus"/>
        <result column="train_remark" property="remark"/>
        <result column="create_time" property="createTime"/>

        <collection property="traceSupplierPersonList" javaType="list" ofType="com.casic.missiles.dto.meter.TraceSupplierPersonDetailDTO">
            <result column="person_no" property="personNo"/>
            <result column="name" property="name"/>
            <result column="department" property="department"/>
            <result column="job" property="job"/>
            <result column="phone" property="phone"/>
        </collection>
    </resultMap>

    <select id="selectMaxSupplierNo" resultType="long">
        SELECT IFNULL(max(RIGHT(supplier_no, 12)), 0) from meter_trace_supplier
    </select>

    <select id="selectTraceSupplierById" resultMap="TraceSupplierDetailResultMap">
        SELECT mts.supplier_no, mts.supplier_name, mts.brief_name, mts.business_content, mts.tax_number, mts.bank_account,
        mts.bank_name, mts.bank_account_number, mts.postal_code, mts.director, mts.phone, mts.fax, mts.mobile, mts.mailbox,
        mts.website, mts.company_country, mts.company_province, mts.company_city, mts.company_area, mts.company_address,
        mts.invoice_country, mts.invoice_province, mts.invoice_city, mts.invoice_area, mts.invoice_address, mts.business_scope,
        mts.minio_file_name, mts.approval_status, mts.remark, mts.create_time, mtsp.person_no, mtsp.name, mtsp.department,
        mtsp.job, mtsp.phone
        FROM meter_trace_supplier mts
        LEFT JOIN meter_trace_supplier_person mtsp ON mts.id = mts.supplier_id
        WHERE mts.id = #{id} AND mts.is_del = 0
    </select>
</mapper>