HoujiePrinter.tsx 8.39 KB
import '@/pages/OrderPrint/index.less';
import { formatDateTime, formatSalesCode } from '@/utils';

export default ({ mainOrder, subOrders }) => {
  //业务员:英文名称(销售代码)
  let salesCode = mainOrder.salesCode;
  salesCode = formatSalesCode(salesCode);
  let columns = [];
  for (let i = 0; i < subOrders.length; i++) {
    let subOrder = subOrders[i];
    columns.push(
      <tr height="30" style={{ height: '15.00pt' }}>
        <td height="30" style={{ height: '15.00pt' }}></td>
        <td className="xl72">{i + 1}</td>
        <td className="xl72">{subOrder.id}</td>
        <td className="xl72">{subOrder.productName}</td>
        <td className="xl72">{subOrder.parameters}</td>
        <td className="xl72">{subOrder.unit}</td>
        <td className="xl72">{subOrder.quantity}</td>
        <td className="xl72">{subOrder.notes}</td>
      </tr>,
    );
  }

  //补充空白行,使表格不少于六行
  for (let i = subOrders.length; i < 6; i++) {
    columns.push(
      <tr height="30" style={{ height: '15.00pt' }}>
        <td height="30" style={{ height: '15.00pt' }}></td>
        <td className="xl72"></td>
        <td className="xl72"></td>
        <td className="xl72"></td>
        <td className="xl72"></td>
        <td className="xl72"></td>
        <td className="xl72"></td>
        <td className="xl72"></td>
      </tr>,
    );
  }

  return (
    <div
      id="printArea"
      className="flex items-center justify-center bg-gray-100"
    >
      <div className="w-full max-w-4xl p-10 my-10 bg-white border border-gray-300">
        <table
          id="printArea"
          className="p-10"
          width="846"
          border={0}
          cellPadding={0}
          cellSpacing={0}
          style={{
            width: '423.00pt',
            borderCollapse: 'collapse',
            tableLayout: 'fixed',
          }}
        >
          <col
            width="25.50"
            style={{ msoWidthSource: 'userset', msoWidthAlt: 544 }}
          />
          <col
            width="52.50"
            style={{ msoWidthSource: 'userset', msoWidthAlt: 1120 }}
          />
          <col
            width="151.50"
            style={{ msoWidthSource: 'userset', msoWidthAlt: 2464 }}
          />
          <col
            width="169.50"
            style={{ msoWidthSource: 'userset', msoWidthAlt: 3616 }}
          />
          <col
            width="165"
            style={{ msoWidthSource: 'userset', msoWidthAlt: 3520 }}
          />
          <col
            width="60"
            style={{ msoWidthSource: 'userset', msoWidthAlt: 2048 }}
          />
          <col
            width="60"
            style={{ msoWidthSource: 'userset', msoWidthAlt: 2432 }}
          />
          <col width="108" style={{ width: '95.00pt' }} />
          <tr height="42" style={{ height: '21.00pt' }}>
            <td height="42" style={{ height: '21.00pt' }}></td>
            <td
              className="xl65"
              colSpan="7"
              style={{ borderRight: 'none', borderBottom: 'none' }}
            >
              科 路 得
            </td>
          </tr>
          <tr height="30" style={{ height: '15.00pt' }}>
            <td height="30" style={{ height: '15.00pt' }}></td>
            <td
              className="xl66"
              colSpan="7"
              style={{ borderRight: 'none', borderBottom: 'none' }}
            >
              网址:www.canrd.com
            </td>
          </tr>
          <tr height="35" style={{ height: '17.50pt' }}>
            <td height="35" style={{ height: '17.50pt' }}></td>
            <td
              className="xl67"
              colSpan="7"
              style={{ borderRight: 'none', borderBottom: 'none' }}
            >
              销售出货单
            </td>
          </tr>
          <tr height="30" style={{ height: '15.00pt' }}>
            <td height="30" style={{ height: '15.00pt' }}></td>
            <td
              className="xl69"
              colSpan="4"
              style={{ borderRight: 'none', borderBottom: 'none' }}
            >
              单位名称:{mainOrder.institution}
            </td>
            <td
              className="xl69"
              colSpan="3"
              style={{ borderRight: 'none', borderBottom: 'none' }}
            >
              单号:{mainOrder.id}
            </td>
          </tr>
          <tr height="30" style={{ height: '15.00pt' }}>
            <td height="30" style={{ height: '15.00pt' }}></td>
            <td
              className="xl69"
              colSpan="4"
              style={{ borderRight: 'none', borderBottom: 'none' }}
            >
              联系人:{mainOrder.customerName}
            </td>
            <td
              className="xl69"
              colSpan="3"
              style={{ borderRight: 'none', borderBottom: 'none' }}
            >
              开单日期:{formatDateTime(mainOrder.createTime)}
            </td>
          </tr>
          <tr height="30" style={{ height: '15.00pt' }}>
            <td height="30" style={{ height: '15.00pt' }}></td>
            <td
              className="xl69"
              colSpan="4"
              style={{ borderRight: 'none', borderBottom: 'none' }}
            >
              联系电话:{mainOrder.customerContactNumber}
            </td>
            <td
              className="xl70"
              colSpan={2}
              style={{ msoIgnore: 'colSpan' }}
            ></td>
            <td className="xl70"></td>
          </tr>
          <tr height="30" style={{ height: '15.00pt' }}>
            <td height="30" style={{ height: '15.00pt' }}></td>
            <td
              className="xl69"
              colSpan="7"
              style={{ borderRight: 'none', borderBottom: 'none' }}
            >
              送货地址:{mainOrder.customerShippingAddress}
            </td>
          </tr>
          <tr height="30" style={{ height: '15.00pt' }}>
            <td height="30" style={{ height: '15.00pt' }}></td>
            <td className="xl71">序号</td>
            <td className="xl71">订单号</td>
            <td className="xl71">货品名称</td>
            <td className="xl71">规格</td>
            <td className="xl71">单位</td>
            <td className="xl71">数量</td>
            <td className="xl71">备注</td>
          </tr>

          {columns}

          <tr style={{ height: '19.00pt' }}>
            <td style={{ height: '19.00pt' }}></td>
            <td className="xl73">销货单位</td>
            <td
              className="xl74"
              colSpan="3"
              style={{
                borderRight: '0.5pt solid windowtext',
                borderBottom: '0.5pt solid windowtext',
              }}
            >
              发货地址:广东省东莞市厚街镇锦丰路9号科路得产业园
            </td>
            <td className="xl73">开户银行及账号</td>
            <td
              className="xl74"
              colSpan={2}
              style={{
                borderRight: '0.5pt solid windowtext',
                borderBottom: '0.5pt solid windowtext',
              }}
            >
              招商银行股份有限公司东莞东骏路支行
              <br />
              账号:769906437110802
            </td>
          </tr>
          <tr style={{ height: 30 }}>
            <td height="30" style={{ height: '15.00pt' }}></td>
            <td className="xl76" colSpan={2} style={{ msoIgnore: 'colSpan' }}>
              客户签名:
            </td>
            <td className="xl76">核准:屠亚辉</td>
            <td
              className="xl78"
              colSpan={2}
              style={{ borderRight: 'none', borderBottom: 'none' }}
            >
              业务员:{salesCode}
            </td>
            <td
              className="xl78"
              colSpan={2}
              style={{ borderRight: 'none', borderBottom: 'none' }}
            >
              开单人:张玉红
            </td>
          </tr>
          <tr style={{ display: 'none', width: 0 }}>
            <td width="26" style={{ width: 13 }}></td>
            <td width="53" style={{ width: 26 }}></td>
            <td width="116" style={{ width: 58 }}></td>
            <td width="170" style={{ width: 85 }}></td>
            <td width="165" style={{ width: 83 }}></td>
            <td width="96" style={{ width: 48 }}></td>
            <td width="114" style={{ width: 57 }}></td>
          </tr>
        </table>
      </div>
    </div>
  );
};