<?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="pwc.taxtech.atms.dao.CitSalaryAdvanceMapper">
  <resultMap id="BaseResultMap" type="pwc.taxtech.atms.entity.CitSalaryAdvance">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    <id column="id" jdbcType="BIGINT" property="id" />
    <result column="organization_id" jdbcType="VARCHAR" property="organizationId" />
    <result column="project_id" jdbcType="VARCHAR" property="projectId" />
    <result column="period" jdbcType="INTEGER" property="period" />
    <result column="source" jdbcType="VARCHAR" property="source" />
    <result column="po_no" jdbcType="VARCHAR" property="poNo" />
    <result column="po_row" jdbcType="VARCHAR" property="poRow" />
    <result column="po_create_time" jdbcType="VARCHAR" property="poCreateTime" />
    <result column="lading_bill_person" jdbcType="VARCHAR" property="ladingBillPerson" />
    <result column="purchase_person" jdbcType="VARCHAR" property="purchasePerson" />
    <result column="po_subject_code" jdbcType="VARCHAR" property="poSubjectCode" />
    <result column="po_subject_name" jdbcType="VARCHAR" property="poSubjectName" />
    <result column="cost_center_code" jdbcType="VARCHAR" property="costCenterCode" />
    <result column="cost_center" jdbcType="VARCHAR" property="costCenter" />
    <result column="supplier" jdbcType="VARCHAR" property="supplier" />
    <result column="item" jdbcType="VARCHAR" property="item" />
    <result column="standard_money" jdbcType="VARCHAR" property="standardMoney" />
    <result column="currency" jdbcType="VARCHAR" property="currency" />
    <result column="order_amount" jdbcType="DECIMAL" property="orderAmount" />
    <result column="executed_service_schedule" jdbcType="DECIMAL" property="executedServiceSchedule" />
    <result column="coupa_total_accept" jdbcType="DECIMAL" property="coupaTotalAccept" />
    <result column="advance" jdbcType="DECIMAL" property="advance" />
    <result column="unexecuted_service_schedule" jdbcType="DECIMAL" property="unexecutedServiceSchedule" />
    <result column="approved_standard_invoice_amount" jdbcType="DECIMAL" property="approvedStandardInvoiceAmount" />
    <result column="paid_invoice_amount" jdbcType="DECIMAL" property="paidInvoiceAmount" />
    <result column="usable_invoice_amount" jdbcType="DECIMAL" property="usableInvoiceAmount" />
    <result column="usable_balance" jdbcType="DECIMAL" property="usableBalance" />
    <result column="advance_write_off" jdbcType="DECIMAL" property="advanceWriteOff" />
    <result column="check_one" jdbcType="VARCHAR" property="checkOne" />
    <result column="reclassify_amount" jdbcType="DECIMAL" property="reclassifyAmount" />
    <result column="exchange_rate" jdbcType="VARCHAR" property="exchangeRate" />
    <result column="ledger_id" jdbcType="VARCHAR" property="ledgerId" />
    <result column="debit_advance_gene" jdbcType="VARCHAR" property="debitAdvanceGene" />
    <result column="credit_prepaid_accounts" jdbcType="VARCHAR" property="creditPrepaidAccounts" />
    <result column="remark" jdbcType="VARCHAR" property="remark" />
    <result column="segment1" jdbcType="VARCHAR" property="segment1" />
    <result column="segment2" jdbcType="VARCHAR" property="segment2" />
    <result column="created_by" jdbcType="VARCHAR" property="createdBy" />
    <result column="updated_by" jdbcType="VARCHAR" property="updatedBy" />
    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
  </resultMap>
  <sql id="Example_Where_Clause">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    <where>
      <foreach collection="oredCriteria" item="criteria" separator="or">
        <if test="criteria.valid">
          <trim prefix="(" prefixOverrides="and" suffix=")">
            <foreach collection="criteria.criteria" item="criterion">
              <choose>
                <when test="criterion.noValue">
                  and ${criterion.condition}
                </when>
                <when test="criterion.singleValue">
                  and ${criterion.condition} #{criterion.value}
                </when>
                <when test="criterion.betweenValue">
                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
                </when>
                <when test="criterion.listValue">
                  and ${criterion.condition}
                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
                    #{listItem}
                  </foreach>
                </when>
              </choose>
            </foreach>
          </trim>
        </if>
      </foreach>
    </where>
  </sql>
  <sql id="Update_By_Example_Where_Clause">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    <where>
      <foreach collection="example.oredCriteria" item="criteria" separator="or">
        <if test="criteria.valid">
          <trim prefix="(" prefixOverrides="and" suffix=")">
            <foreach collection="criteria.criteria" item="criterion">
              <choose>
                <when test="criterion.noValue">
                  and ${criterion.condition}
                </when>
                <when test="criterion.singleValue">
                  and ${criterion.condition} #{criterion.value}
                </when>
                <when test="criterion.betweenValue">
                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
                </when>
                <when test="criterion.listValue">
                  and ${criterion.condition}
                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
                    #{listItem}
                  </foreach>
                </when>
              </choose>
            </foreach>
          </trim>
        </if>
      </foreach>
    </where>
  </sql>
  <sql id="Base_Column_List">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    id, organization_id, project_id, period, source, po_no, po_row, po_create_time, lading_bill_person, 
    purchase_person, po_subject_code, po_subject_name, cost_center_code, cost_center, 
    supplier, item, standard_money, currency, order_amount, executed_service_schedule, 
    coupa_total_accept, advance, unexecuted_service_schedule, approved_standard_invoice_amount, 
    paid_invoice_amount, usable_invoice_amount, usable_balance, advance_write_off, check_one, 
    reclassify_amount, exchange_rate, ledger_id, debit_advance_gene, credit_prepaid_accounts, 
    remark, segment1, segment2, created_by, updated_by, create_time, update_time
  </sql>
  <select id="selectByExample" parameterType="pwc.taxtech.atms.entity.CitSalaryAdvanceExample" resultMap="BaseResultMap">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    select
    <if test="distinct">
      distinct
    </if>
    <include refid="Base_Column_List" />
    from cit_salary_advance
    <if test="_parameter != null">
      <include refid="Example_Where_Clause" />
    </if>
    <if test="orderByClause != null">
      order by ${orderByClause}
    </if>
  </select>
  <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    select 
    <include refid="Base_Column_List" />
    from cit_salary_advance
    where id = #{id,jdbcType=BIGINT}
  </select>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    delete from cit_salary_advance
    where id = #{id,jdbcType=BIGINT}
  </delete>
  <delete id="deleteByExample" parameterType="pwc.taxtech.atms.entity.CitSalaryAdvanceExample">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    delete from cit_salary_advance
    <if test="_parameter != null">
      <include refid="Example_Where_Clause" />
    </if>
  </delete>
  <insert id="insert" parameterType="pwc.taxtech.atms.entity.CitSalaryAdvance">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    insert into cit_salary_advance (id, organization_id, project_id, 
      period, source, po_no, 
      po_row, po_create_time, lading_bill_person, 
      purchase_person, po_subject_code, po_subject_name, 
      cost_center_code, cost_center, supplier, 
      item, standard_money, currency, 
      order_amount, executed_service_schedule, coupa_total_accept, 
      advance, unexecuted_service_schedule, approved_standard_invoice_amount, 
      paid_invoice_amount, usable_invoice_amount, 
      usable_balance, advance_write_off, check_one, 
      reclassify_amount, exchange_rate, ledger_id, 
      debit_advance_gene, credit_prepaid_accounts, 
      remark, segment1, segment2, 
      created_by, updated_by, create_time, 
      update_time)
    values (#{id,jdbcType=BIGINT}, #{organizationId,jdbcType=VARCHAR}, #{projectId,jdbcType=VARCHAR}, 
      #{period,jdbcType=INTEGER}, #{source,jdbcType=VARCHAR}, #{poNo,jdbcType=VARCHAR}, 
      #{poRow,jdbcType=VARCHAR}, #{poCreateTime,jdbcType=VARCHAR}, #{ladingBillPerson,jdbcType=VARCHAR}, 
      #{purchasePerson,jdbcType=VARCHAR}, #{poSubjectCode,jdbcType=VARCHAR}, #{poSubjectName,jdbcType=VARCHAR}, 
      #{costCenterCode,jdbcType=VARCHAR}, #{costCenter,jdbcType=VARCHAR}, #{supplier,jdbcType=VARCHAR}, 
      #{item,jdbcType=VARCHAR}, #{standardMoney,jdbcType=VARCHAR}, #{currency,jdbcType=VARCHAR}, 
      #{orderAmount,jdbcType=DECIMAL}, #{executedServiceSchedule,jdbcType=DECIMAL}, #{coupaTotalAccept,jdbcType=DECIMAL}, 
      #{advance,jdbcType=DECIMAL}, #{unexecutedServiceSchedule,jdbcType=DECIMAL}, #{approvedStandardInvoiceAmount,jdbcType=DECIMAL}, 
      #{paidInvoiceAmount,jdbcType=DECIMAL}, #{usableInvoiceAmount,jdbcType=DECIMAL}, 
      #{usableBalance,jdbcType=DECIMAL}, #{advanceWriteOff,jdbcType=DECIMAL}, #{checkOne,jdbcType=VARCHAR}, 
      #{reclassifyAmount,jdbcType=DECIMAL}, #{exchangeRate,jdbcType=VARCHAR}, #{ledgerId,jdbcType=VARCHAR}, 
      #{debitAdvanceGene,jdbcType=VARCHAR}, #{creditPrepaidAccounts,jdbcType=VARCHAR}, 
      #{remark,jdbcType=VARCHAR}, #{segment1,jdbcType=VARCHAR}, #{segment2,jdbcType=VARCHAR}, 
      #{createdBy,jdbcType=VARCHAR}, #{updatedBy,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, 
      #{updateTime,jdbcType=TIMESTAMP})
  </insert>
  <insert id="insertSelective" parameterType="pwc.taxtech.atms.entity.CitSalaryAdvance">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    insert into cit_salary_advance
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="id != null">
        id,
      </if>
      <if test="organizationId != null">
        organization_id,
      </if>
      <if test="projectId != null">
        project_id,
      </if>
      <if test="period != null">
        period,
      </if>
      <if test="source != null">
        source,
      </if>
      <if test="poNo != null">
        po_no,
      </if>
      <if test="poRow != null">
        po_row,
      </if>
      <if test="poCreateTime != null">
        po_create_time,
      </if>
      <if test="ladingBillPerson != null">
        lading_bill_person,
      </if>
      <if test="purchasePerson != null">
        purchase_person,
      </if>
      <if test="poSubjectCode != null">
        po_subject_code,
      </if>
      <if test="poSubjectName != null">
        po_subject_name,
      </if>
      <if test="costCenterCode != null">
        cost_center_code,
      </if>
      <if test="costCenter != null">
        cost_center,
      </if>
      <if test="supplier != null">
        supplier,
      </if>
      <if test="item != null">
        item,
      </if>
      <if test="standardMoney != null">
        standard_money,
      </if>
      <if test="currency != null">
        currency,
      </if>
      <if test="orderAmount != null">
        order_amount,
      </if>
      <if test="executedServiceSchedule != null">
        executed_service_schedule,
      </if>
      <if test="coupaTotalAccept != null">
        coupa_total_accept,
      </if>
      <if test="advance != null">
        advance,
      </if>
      <if test="unexecutedServiceSchedule != null">
        unexecuted_service_schedule,
      </if>
      <if test="approvedStandardInvoiceAmount != null">
        approved_standard_invoice_amount,
      </if>
      <if test="paidInvoiceAmount != null">
        paid_invoice_amount,
      </if>
      <if test="usableInvoiceAmount != null">
        usable_invoice_amount,
      </if>
      <if test="usableBalance != null">
        usable_balance,
      </if>
      <if test="advanceWriteOff != null">
        advance_write_off,
      </if>
      <if test="checkOne != null">
        check_one,
      </if>
      <if test="reclassifyAmount != null">
        reclassify_amount,
      </if>
      <if test="exchangeRate != null">
        exchange_rate,
      </if>
      <if test="ledgerId != null">
        ledger_id,
      </if>
      <if test="debitAdvanceGene != null">
        debit_advance_gene,
      </if>
      <if test="creditPrepaidAccounts != null">
        credit_prepaid_accounts,
      </if>
      <if test="remark != null">
        remark,
      </if>
      <if test="segment1 != null">
        segment1,
      </if>
      <if test="segment2 != null">
        segment2,
      </if>
      <if test="createdBy != null">
        created_by,
      </if>
      <if test="updatedBy != null">
        updated_by,
      </if>
      <if test="createTime != null">
        create_time,
      </if>
      <if test="updateTime != null">
        update_time,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides=",">
      <if test="id != null">
        #{id,jdbcType=BIGINT},
      </if>
      <if test="organizationId != null">
        #{organizationId,jdbcType=VARCHAR},
      </if>
      <if test="projectId != null">
        #{projectId,jdbcType=VARCHAR},
      </if>
      <if test="period != null">
        #{period,jdbcType=INTEGER},
      </if>
      <if test="source != null">
        #{source,jdbcType=VARCHAR},
      </if>
      <if test="poNo != null">
        #{poNo,jdbcType=VARCHAR},
      </if>
      <if test="poRow != null">
        #{poRow,jdbcType=VARCHAR},
      </if>
      <if test="poCreateTime != null">
        #{poCreateTime,jdbcType=VARCHAR},
      </if>
      <if test="ladingBillPerson != null">
        #{ladingBillPerson,jdbcType=VARCHAR},
      </if>
      <if test="purchasePerson != null">
        #{purchasePerson,jdbcType=VARCHAR},
      </if>
      <if test="poSubjectCode != null">
        #{poSubjectCode,jdbcType=VARCHAR},
      </if>
      <if test="poSubjectName != null">
        #{poSubjectName,jdbcType=VARCHAR},
      </if>
      <if test="costCenterCode != null">
        #{costCenterCode,jdbcType=VARCHAR},
      </if>
      <if test="costCenter != null">
        #{costCenter,jdbcType=VARCHAR},
      </if>
      <if test="supplier != null">
        #{supplier,jdbcType=VARCHAR},
      </if>
      <if test="item != null">
        #{item,jdbcType=VARCHAR},
      </if>
      <if test="standardMoney != null">
        #{standardMoney,jdbcType=VARCHAR},
      </if>
      <if test="currency != null">
        #{currency,jdbcType=VARCHAR},
      </if>
      <if test="orderAmount != null">
        #{orderAmount,jdbcType=DECIMAL},
      </if>
      <if test="executedServiceSchedule != null">
        #{executedServiceSchedule,jdbcType=DECIMAL},
      </if>
      <if test="coupaTotalAccept != null">
        #{coupaTotalAccept,jdbcType=DECIMAL},
      </if>
      <if test="advance != null">
        #{advance,jdbcType=DECIMAL},
      </if>
      <if test="unexecutedServiceSchedule != null">
        #{unexecutedServiceSchedule,jdbcType=DECIMAL},
      </if>
      <if test="approvedStandardInvoiceAmount != null">
        #{approvedStandardInvoiceAmount,jdbcType=DECIMAL},
      </if>
      <if test="paidInvoiceAmount != null">
        #{paidInvoiceAmount,jdbcType=DECIMAL},
      </if>
      <if test="usableInvoiceAmount != null">
        #{usableInvoiceAmount,jdbcType=DECIMAL},
      </if>
      <if test="usableBalance != null">
        #{usableBalance,jdbcType=DECIMAL},
      </if>
      <if test="advanceWriteOff != null">
        #{advanceWriteOff,jdbcType=DECIMAL},
      </if>
      <if test="checkOne != null">
        #{checkOne,jdbcType=VARCHAR},
      </if>
      <if test="reclassifyAmount != null">
        #{reclassifyAmount,jdbcType=DECIMAL},
      </if>
      <if test="exchangeRate != null">
        #{exchangeRate,jdbcType=VARCHAR},
      </if>
      <if test="ledgerId != null">
        #{ledgerId,jdbcType=VARCHAR},
      </if>
      <if test="debitAdvanceGene != null">
        #{debitAdvanceGene,jdbcType=VARCHAR},
      </if>
      <if test="creditPrepaidAccounts != null">
        #{creditPrepaidAccounts,jdbcType=VARCHAR},
      </if>
      <if test="remark != null">
        #{remark,jdbcType=VARCHAR},
      </if>
      <if test="segment1 != null">
        #{segment1,jdbcType=VARCHAR},
      </if>
      <if test="segment2 != null">
        #{segment2,jdbcType=VARCHAR},
      </if>
      <if test="createdBy != null">
        #{createdBy,jdbcType=VARCHAR},
      </if>
      <if test="updatedBy != null">
        #{updatedBy,jdbcType=VARCHAR},
      </if>
      <if test="createTime != null">
        #{createTime,jdbcType=TIMESTAMP},
      </if>
      <if test="updateTime != null">
        #{updateTime,jdbcType=TIMESTAMP},
      </if>
    </trim>
  </insert>
  <select id="countByExample" parameterType="pwc.taxtech.atms.entity.CitSalaryAdvanceExample" resultType="java.lang.Long">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    select count(*) from cit_salary_advance
    <if test="_parameter != null">
      <include refid="Example_Where_Clause" />
    </if>
  </select>
  <update id="updateByExampleSelective" parameterType="map">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    update cit_salary_advance
    <set>
      <if test="record.id != null">
        id = #{record.id,jdbcType=BIGINT},
      </if>
      <if test="record.organizationId != null">
        organization_id = #{record.organizationId,jdbcType=VARCHAR},
      </if>
      <if test="record.projectId != null">
        project_id = #{record.projectId,jdbcType=VARCHAR},
      </if>
      <if test="record.period != null">
        period = #{record.period,jdbcType=INTEGER},
      </if>
      <if test="record.source != null">
        source = #{record.source,jdbcType=VARCHAR},
      </if>
      <if test="record.poNo != null">
        po_no = #{record.poNo,jdbcType=VARCHAR},
      </if>
      <if test="record.poRow != null">
        po_row = #{record.poRow,jdbcType=VARCHAR},
      </if>
      <if test="record.poCreateTime != null">
        po_create_time = #{record.poCreateTime,jdbcType=VARCHAR},
      </if>
      <if test="record.ladingBillPerson != null">
        lading_bill_person = #{record.ladingBillPerson,jdbcType=VARCHAR},
      </if>
      <if test="record.purchasePerson != null">
        purchase_person = #{record.purchasePerson,jdbcType=VARCHAR},
      </if>
      <if test="record.poSubjectCode != null">
        po_subject_code = #{record.poSubjectCode,jdbcType=VARCHAR},
      </if>
      <if test="record.poSubjectName != null">
        po_subject_name = #{record.poSubjectName,jdbcType=VARCHAR},
      </if>
      <if test="record.costCenterCode != null">
        cost_center_code = #{record.costCenterCode,jdbcType=VARCHAR},
      </if>
      <if test="record.costCenter != null">
        cost_center = #{record.costCenter,jdbcType=VARCHAR},
      </if>
      <if test="record.supplier != null">
        supplier = #{record.supplier,jdbcType=VARCHAR},
      </if>
      <if test="record.item != null">
        item = #{record.item,jdbcType=VARCHAR},
      </if>
      <if test="record.standardMoney != null">
        standard_money = #{record.standardMoney,jdbcType=VARCHAR},
      </if>
      <if test="record.currency != null">
        currency = #{record.currency,jdbcType=VARCHAR},
      </if>
      <if test="record.orderAmount != null">
        order_amount = #{record.orderAmount,jdbcType=DECIMAL},
      </if>
      <if test="record.executedServiceSchedule != null">
        executed_service_schedule = #{record.executedServiceSchedule,jdbcType=DECIMAL},
      </if>
      <if test="record.coupaTotalAccept != null">
        coupa_total_accept = #{record.coupaTotalAccept,jdbcType=DECIMAL},
      </if>
      <if test="record.advance != null">
        advance = #{record.advance,jdbcType=DECIMAL},
      </if>
      <if test="record.unexecutedServiceSchedule != null">
        unexecuted_service_schedule = #{record.unexecutedServiceSchedule,jdbcType=DECIMAL},
      </if>
      <if test="record.approvedStandardInvoiceAmount != null">
        approved_standard_invoice_amount = #{record.approvedStandardInvoiceAmount,jdbcType=DECIMAL},
      </if>
      <if test="record.paidInvoiceAmount != null">
        paid_invoice_amount = #{record.paidInvoiceAmount,jdbcType=DECIMAL},
      </if>
      <if test="record.usableInvoiceAmount != null">
        usable_invoice_amount = #{record.usableInvoiceAmount,jdbcType=DECIMAL},
      </if>
      <if test="record.usableBalance != null">
        usable_balance = #{record.usableBalance,jdbcType=DECIMAL},
      </if>
      <if test="record.advanceWriteOff != null">
        advance_write_off = #{record.advanceWriteOff,jdbcType=DECIMAL},
      </if>
      <if test="record.checkOne != null">
        check_one = #{record.checkOne,jdbcType=VARCHAR},
      </if>
      <if test="record.reclassifyAmount != null">
        reclassify_amount = #{record.reclassifyAmount,jdbcType=DECIMAL},
      </if>
      <if test="record.exchangeRate != null">
        exchange_rate = #{record.exchangeRate,jdbcType=VARCHAR},
      </if>
      <if test="record.ledgerId != null">
        ledger_id = #{record.ledgerId,jdbcType=VARCHAR},
      </if>
      <if test="record.debitAdvanceGene != null">
        debit_advance_gene = #{record.debitAdvanceGene,jdbcType=VARCHAR},
      </if>
      <if test="record.creditPrepaidAccounts != null">
        credit_prepaid_accounts = #{record.creditPrepaidAccounts,jdbcType=VARCHAR},
      </if>
      <if test="record.remark != null">
        remark = #{record.remark,jdbcType=VARCHAR},
      </if>
      <if test="record.segment1 != null">
        segment1 = #{record.segment1,jdbcType=VARCHAR},
      </if>
      <if test="record.segment2 != null">
        segment2 = #{record.segment2,jdbcType=VARCHAR},
      </if>
      <if test="record.createdBy != null">
        created_by = #{record.createdBy,jdbcType=VARCHAR},
      </if>
      <if test="record.updatedBy != null">
        updated_by = #{record.updatedBy,jdbcType=VARCHAR},
      </if>
      <if test="record.createTime != null">
        create_time = #{record.createTime,jdbcType=TIMESTAMP},
      </if>
      <if test="record.updateTime != null">
        update_time = #{record.updateTime,jdbcType=TIMESTAMP},
      </if>
    </set>
    <if test="_parameter != null">
      <include refid="Update_By_Example_Where_Clause" />
    </if>
  </update>
  <update id="updateByExample" parameterType="map">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    update cit_salary_advance
    set id = #{record.id,jdbcType=BIGINT},
      organization_id = #{record.organizationId,jdbcType=VARCHAR},
      project_id = #{record.projectId,jdbcType=VARCHAR},
      period = #{record.period,jdbcType=INTEGER},
      source = #{record.source,jdbcType=VARCHAR},
      po_no = #{record.poNo,jdbcType=VARCHAR},
      po_row = #{record.poRow,jdbcType=VARCHAR},
      po_create_time = #{record.poCreateTime,jdbcType=VARCHAR},
      lading_bill_person = #{record.ladingBillPerson,jdbcType=VARCHAR},
      purchase_person = #{record.purchasePerson,jdbcType=VARCHAR},
      po_subject_code = #{record.poSubjectCode,jdbcType=VARCHAR},
      po_subject_name = #{record.poSubjectName,jdbcType=VARCHAR},
      cost_center_code = #{record.costCenterCode,jdbcType=VARCHAR},
      cost_center = #{record.costCenter,jdbcType=VARCHAR},
      supplier = #{record.supplier,jdbcType=VARCHAR},
      item = #{record.item,jdbcType=VARCHAR},
      standard_money = #{record.standardMoney,jdbcType=VARCHAR},
      currency = #{record.currency,jdbcType=VARCHAR},
      order_amount = #{record.orderAmount,jdbcType=DECIMAL},
      executed_service_schedule = #{record.executedServiceSchedule,jdbcType=DECIMAL},
      coupa_total_accept = #{record.coupaTotalAccept,jdbcType=DECIMAL},
      advance = #{record.advance,jdbcType=DECIMAL},
      unexecuted_service_schedule = #{record.unexecutedServiceSchedule,jdbcType=DECIMAL},
      approved_standard_invoice_amount = #{record.approvedStandardInvoiceAmount,jdbcType=DECIMAL},
      paid_invoice_amount = #{record.paidInvoiceAmount,jdbcType=DECIMAL},
      usable_invoice_amount = #{record.usableInvoiceAmount,jdbcType=DECIMAL},
      usable_balance = #{record.usableBalance,jdbcType=DECIMAL},
      advance_write_off = #{record.advanceWriteOff,jdbcType=DECIMAL},
      check_one = #{record.checkOne,jdbcType=VARCHAR},
      reclassify_amount = #{record.reclassifyAmount,jdbcType=DECIMAL},
      exchange_rate = #{record.exchangeRate,jdbcType=VARCHAR},
      ledger_id = #{record.ledgerId,jdbcType=VARCHAR},
      debit_advance_gene = #{record.debitAdvanceGene,jdbcType=VARCHAR},
      credit_prepaid_accounts = #{record.creditPrepaidAccounts,jdbcType=VARCHAR},
      remark = #{record.remark,jdbcType=VARCHAR},
      segment1 = #{record.segment1,jdbcType=VARCHAR},
      segment2 = #{record.segment2,jdbcType=VARCHAR},
      created_by = #{record.createdBy,jdbcType=VARCHAR},
      updated_by = #{record.updatedBy,jdbcType=VARCHAR},
      create_time = #{record.createTime,jdbcType=TIMESTAMP},
      update_time = #{record.updateTime,jdbcType=TIMESTAMP}
    <if test="_parameter != null">
      <include refid="Update_By_Example_Where_Clause" />
    </if>
  </update>
  <update id="updateByPrimaryKeySelective" parameterType="pwc.taxtech.atms.entity.CitSalaryAdvance">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    update cit_salary_advance
    <set>
      <if test="organizationId != null">
        organization_id = #{organizationId,jdbcType=VARCHAR},
      </if>
      <if test="projectId != null">
        project_id = #{projectId,jdbcType=VARCHAR},
      </if>
      <if test="period != null">
        period = #{period,jdbcType=INTEGER},
      </if>
      <if test="source != null">
        source = #{source,jdbcType=VARCHAR},
      </if>
      <if test="poNo != null">
        po_no = #{poNo,jdbcType=VARCHAR},
      </if>
      <if test="poRow != null">
        po_row = #{poRow,jdbcType=VARCHAR},
      </if>
      <if test="poCreateTime != null">
        po_create_time = #{poCreateTime,jdbcType=VARCHAR},
      </if>
      <if test="ladingBillPerson != null">
        lading_bill_person = #{ladingBillPerson,jdbcType=VARCHAR},
      </if>
      <if test="purchasePerson != null">
        purchase_person = #{purchasePerson,jdbcType=VARCHAR},
      </if>
      <if test="poSubjectCode != null">
        po_subject_code = #{poSubjectCode,jdbcType=VARCHAR},
      </if>
      <if test="poSubjectName != null">
        po_subject_name = #{poSubjectName,jdbcType=VARCHAR},
      </if>
      <if test="costCenterCode != null">
        cost_center_code = #{costCenterCode,jdbcType=VARCHAR},
      </if>
      <if test="costCenter != null">
        cost_center = #{costCenter,jdbcType=VARCHAR},
      </if>
      <if test="supplier != null">
        supplier = #{supplier,jdbcType=VARCHAR},
      </if>
      <if test="item != null">
        item = #{item,jdbcType=VARCHAR},
      </if>
      <if test="standardMoney != null">
        standard_money = #{standardMoney,jdbcType=VARCHAR},
      </if>
      <if test="currency != null">
        currency = #{currency,jdbcType=VARCHAR},
      </if>
      <if test="orderAmount != null">
        order_amount = #{orderAmount,jdbcType=DECIMAL},
      </if>
      <if test="executedServiceSchedule != null">
        executed_service_schedule = #{executedServiceSchedule,jdbcType=DECIMAL},
      </if>
      <if test="coupaTotalAccept != null">
        coupa_total_accept = #{coupaTotalAccept,jdbcType=DECIMAL},
      </if>
      <if test="advance != null">
        advance = #{advance,jdbcType=DECIMAL},
      </if>
      <if test="unexecutedServiceSchedule != null">
        unexecuted_service_schedule = #{unexecutedServiceSchedule,jdbcType=DECIMAL},
      </if>
      <if test="approvedStandardInvoiceAmount != null">
        approved_standard_invoice_amount = #{approvedStandardInvoiceAmount,jdbcType=DECIMAL},
      </if>
      <if test="paidInvoiceAmount != null">
        paid_invoice_amount = #{paidInvoiceAmount,jdbcType=DECIMAL},
      </if>
      <if test="usableInvoiceAmount != null">
        usable_invoice_amount = #{usableInvoiceAmount,jdbcType=DECIMAL},
      </if>
      <if test="usableBalance != null">
        usable_balance = #{usableBalance,jdbcType=DECIMAL},
      </if>
      <if test="advanceWriteOff != null">
        advance_write_off = #{advanceWriteOff,jdbcType=DECIMAL},
      </if>
      <if test="checkOne != null">
        check_one = #{checkOne,jdbcType=VARCHAR},
      </if>
      <if test="reclassifyAmount != null">
        reclassify_amount = #{reclassifyAmount,jdbcType=DECIMAL},
      </if>
      <if test="exchangeRate != null">
        exchange_rate = #{exchangeRate,jdbcType=VARCHAR},
      </if>
      <if test="ledgerId != null">
        ledger_id = #{ledgerId,jdbcType=VARCHAR},
      </if>
      <if test="debitAdvanceGene != null">
        debit_advance_gene = #{debitAdvanceGene,jdbcType=VARCHAR},
      </if>
      <if test="creditPrepaidAccounts != null">
        credit_prepaid_accounts = #{creditPrepaidAccounts,jdbcType=VARCHAR},
      </if>
      <if test="remark != null">
        remark = #{remark,jdbcType=VARCHAR},
      </if>
      <if test="segment1 != null">
        segment1 = #{segment1,jdbcType=VARCHAR},
      </if>
      <if test="segment2 != null">
        segment2 = #{segment2,jdbcType=VARCHAR},
      </if>
      <if test="createdBy != null">
        created_by = #{createdBy,jdbcType=VARCHAR},
      </if>
      <if test="updatedBy != null">
        updated_by = #{updatedBy,jdbcType=VARCHAR},
      </if>
      <if test="createTime != null">
        create_time = #{createTime,jdbcType=TIMESTAMP},
      </if>
      <if test="updateTime != null">
        update_time = #{updateTime,jdbcType=TIMESTAMP},
      </if>
    </set>
    where id = #{id,jdbcType=BIGINT}
  </update>
  <update id="updateByPrimaryKey" parameterType="pwc.taxtech.atms.entity.CitSalaryAdvance">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    update cit_salary_advance
    set organization_id = #{organizationId,jdbcType=VARCHAR},
      project_id = #{projectId,jdbcType=VARCHAR},
      period = #{period,jdbcType=INTEGER},
      source = #{source,jdbcType=VARCHAR},
      po_no = #{poNo,jdbcType=VARCHAR},
      po_row = #{poRow,jdbcType=VARCHAR},
      po_create_time = #{poCreateTime,jdbcType=VARCHAR},
      lading_bill_person = #{ladingBillPerson,jdbcType=VARCHAR},
      purchase_person = #{purchasePerson,jdbcType=VARCHAR},
      po_subject_code = #{poSubjectCode,jdbcType=VARCHAR},
      po_subject_name = #{poSubjectName,jdbcType=VARCHAR},
      cost_center_code = #{costCenterCode,jdbcType=VARCHAR},
      cost_center = #{costCenter,jdbcType=VARCHAR},
      supplier = #{supplier,jdbcType=VARCHAR},
      item = #{item,jdbcType=VARCHAR},
      standard_money = #{standardMoney,jdbcType=VARCHAR},
      currency = #{currency,jdbcType=VARCHAR},
      order_amount = #{orderAmount,jdbcType=DECIMAL},
      executed_service_schedule = #{executedServiceSchedule,jdbcType=DECIMAL},
      coupa_total_accept = #{coupaTotalAccept,jdbcType=DECIMAL},
      advance = #{advance,jdbcType=DECIMAL},
      unexecuted_service_schedule = #{unexecutedServiceSchedule,jdbcType=DECIMAL},
      approved_standard_invoice_amount = #{approvedStandardInvoiceAmount,jdbcType=DECIMAL},
      paid_invoice_amount = #{paidInvoiceAmount,jdbcType=DECIMAL},
      usable_invoice_amount = #{usableInvoiceAmount,jdbcType=DECIMAL},
      usable_balance = #{usableBalance,jdbcType=DECIMAL},
      advance_write_off = #{advanceWriteOff,jdbcType=DECIMAL},
      check_one = #{checkOne,jdbcType=VARCHAR},
      reclassify_amount = #{reclassifyAmount,jdbcType=DECIMAL},
      exchange_rate = #{exchangeRate,jdbcType=VARCHAR},
      ledger_id = #{ledgerId,jdbcType=VARCHAR},
      debit_advance_gene = #{debitAdvanceGene,jdbcType=VARCHAR},
      credit_prepaid_accounts = #{creditPrepaidAccounts,jdbcType=VARCHAR},
      remark = #{remark,jdbcType=VARCHAR},
      segment1 = #{segment1,jdbcType=VARCHAR},
      segment2 = #{segment2,jdbcType=VARCHAR},
      created_by = #{createdBy,jdbcType=VARCHAR},
      updated_by = #{updatedBy,jdbcType=VARCHAR},
      create_time = #{createTime,jdbcType=TIMESTAMP},
      update_time = #{updateTime,jdbcType=TIMESTAMP}
    where id = #{id,jdbcType=BIGINT}
  </update>
  <select id="selectByExampleWithRowbounds" parameterType="pwc.taxtech.atms.entity.CitSalaryAdvanceExample" resultMap="BaseResultMap">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    select
    <if test="distinct">
      distinct
    </if>
    <include refid="Base_Column_List" />
    from cit_salary_advance
    <if test="_parameter != null">
      <include refid="Example_Where_Clause" />
    </if>
    <if test="orderByClause != null">
      order by ${orderByClause}
    </if>
  </select>
</mapper>