<%- include ('ReportCSS') %>
<% if(Result !== undefined && Result !== '') { %>
<% let detailData = Result.data.data_detail ? Result.data.data_detail : Result %>
<% let masterData = Result.data.data_master ? Result.data.data_master : Result %>
<% let EnquiryData = Result.data.enquiryData[0] ? Result.data.enquiryData[0] : Result %>
<% let smplvrfcData = Result.data.sampleVerificationData[0] ? Result.data.sampleVerificationData[0] : Result %>
<% let tstallctData = Result.data.data_detail_testallocation ? Result.data.data_detail_testallocation : Result %>

<% if(Result.hasOwnProperty('data') || Result.length > 0) { %>
<% 
         var DataHeader = ['Sr.No.','Test Parameters','Results','Unit','LOQ','Test Method','Specification'];
        var DataPointer = ['SrNo','TestParameter','TestResult','Unit','LOQ','TestMethod','Specification'];
        } %>


<body>

  <div style="display: flex; align-items: center; justify-content: space-between;">
    <% if (masterData.Type == 'NABL') { %>
    <div style="text-align: right; margin: 0;">
      <img src="data:image/jpg;base64,<%= logoBase64Cert %>" width="150px" height="80px" />
    </div>
    <% } %>
    <div>
      <img src="data:image/jpg;base64,<%= logoBase64 %>" width="120px" height="80px" />
    </div>
  </div>

  <h1 class="table-headingReport">TEST REPORT</h1>
  <table class="report-table">
    <tr>
      <td class="label">ISSUED TO</td>
      <td class="value">
        <%= masterData.ContactPerson && masterData.ContactPerson.trim() !== ""
      ? masterData.ContactPerson
      : "--" %>
      </td>
      <td class="label">ULR No.</td>
      <td class="value">
        <%= masterData.ULRNo && masterData.ULRNo.trim() !== ""
      ? masterData.ULRNo
      : "--" %>

    </tr>

    <tr>
      <td rowspan="7" class="address">
        <%= masterData.Address && masterData.Address.trim() !== ""
      ? masterData.Address
      : "--" %> <br>
        Contact Person : <%= masterData.ContactPerson%><br>
        Phone No: <%= masterData.ContactNo%>
      </td>
      <td class="label">Test Report No.</td>
      <td colspan="2" class="value">
        <%= masterData.TestReportNo && masterData.TestReportNo.trim() !== ""
      ? masterData.TestReportNo
      : "--" %>

      </td>
    </tr>

    <tr>
      <td class="label">Discipline</td>
      <td colspan="2" class="value">
        <%= masterData.TestReportNo && EnquiryData.testType.trim() !== ""
      ?EnquiryData.testType
      : "--" %>
      </td>
    </tr>

    <tr>
      <td class="label">Group</td>
      <td colspan="2" class="value">
        <%= masterData.CategoryType && masterData.CategoryType.trim() !== ""
      ? masterData.CategoryType
      : "--" %>
      </td>
    </tr>

    <tr>
      <td class="label">Report Issue Date</td>
      <td colspan="2" class="value">
        <%= moment(masterData.IssueDate).isValid() 
      ? moment(masterData.IssueDate).format("DD/MM/YYYY") 
      : "--" %>
      </td>
    </tr>

    <tr>
      <td class="label">Contact Person</td>
      <td colspan="2" class="value">
        <%= moment(masterData.IssueDate).isValid() 
      ? moment(masterData.IssueDate).format("DD/MM/YYYY") 
      : "--" %>
      </td>
    </tr>

    <tr>
      <td class="label">Contact Detail</td>
      <td colspan="2" class="value">
        <%= masterData.CustomerRef && masterData.CustomerRef.trim() !== ""
      ? masterData.CustomerRef
      : "--" %>
      </td>
    </tr>

    <tr>
      <td class="label">Email</td>
      <td colspan="2" class="value"><%= new Date().toISOString().split('T')[0].split('-').reverse().join('/') %></td>
    </tr>
  </table>
 <h2 class="table-headingReport">Sample Test Details</h2>
  <br />
  <table class="info-table">
    <tr>
      <td class="label">Sample receipt Date</td>
      <td class="value">
        <%= moment(masterData.SampleRegDt).isValid() 
      ? moment(masterData.SampleRegDt).format("DD/MM/YYYY") 
      : "--" %>
      </td>
      <td class="label">Sample ID</td>
      <td class="value">
        <%= masterData.SampleID && masterData.SampleID.trim() !== ""
      ? masterData.SampleID
      : "--" %>
      </td>
    </tr>

    <tr>
      <td class="label">Analysis starting Date</td>
      <td class="value">
        <%= moment(masterData.AnalysisStartDt).isValid() 
      ? moment(masterData.AnalysisStartDt).format("DD/MM/YYYY") 
      : "--" %>
      </td>
      <td class="label">Analysis Completion Date</td>
      <td class="value">
        <%= moment(masterData.AnalysisEndDt).isValid() 
      ? moment(masterData.AnalysisEndDt).format("DD/MM/YYYY") 
      : "--" %>
      </td>
    </tr>

    <tr>
      <td class="label">Sample Condition</td>
      <td class="value">
         <%= masterData.SampleCondition && masterData.SampleCondition.trim() !== ""
      ? masterData.SampleCondition
      : "--" %>
    </td>
      <td class="label">Name of the sample</td>
      <td class="value">
        <%= masterData.ProductName && masterData.ProductName.trim() !== ""
      ? masterData.ProductName
      : "--" %>

      </td>
    </tr>

    <tr>
      <td class="label">Sample Quantity</td>
      <td class="value">
        <%= masterData.SampleQty && masterData.SampleQty.trim() !== ""
      ? masterData.SampleQty
      : "--" %>
      </td>
      <td class="label">Type of Sample</td>
      <td class="value">
        <%= masterData.SampleQty && masterData.SampleQty.trim() !== ""
      ? masterData.SampleQty
      : "--" %>
      </td>
    </tr>

    <tr>
      <td class="label">Manufacturing  Date</td>
      <td class="value">
        <%= moment(masterData.MFGDt).isValid() 
      ? moment(masterData.MFGDt).format("DD/MM/YYYY") 
      : "--" %>
      </td>
      <td class="label">Batch No.</td>
      <td class="value">
        <%= masterData.BatchLotNo && masterData.BatchLotNo.trim() !== ""
      ? masterData.BatchLotNo
      : "--" %>
      </td>
    </tr>

    <tr>
      <td class="label">Expiry Date</td>
      <td class="value">
        <%= moment(masterData.ExpiryDt).isValid() 
      ? moment(masterData.ExpiryDt).format("DD/MM/YYYY") 
      : "--" %>
      </td>
      <td class="label">Other Details (if any)</td>
      <td class="value">
      </td>
    </tr>     
  </table>


  <p class="table-headingReport">TEST RESULTS</p>

  <table class="table-style">
    <colgroup>
      <col style="width:5%;background-color: aqua;">
      <col style="width:20%">
      <col style="width:10%">
      <col style="width:8%">
      <col style="width:17%">
      <col style="width:10%">
    </colgroup>
    <thead>
      <% for(i=0; i < DataHeader.length; i++) { %>
      <th> <%= DataHeader[i] %> </th>
      <% } %>
    </thead>
    <% detailData.forEach((element,index)=>{ %>
    <tbody>
      <% for(j=0; j < DataPointer.length; j++) { %>
      <td>
        <% let result %>
        <% if(
                                    (DataPointer[j] == 'SrNo') || 
                                    (DataPointer[j] == 'TestParameter') || 
                                    (DataPointer[j] == 'TestResult') || 
                                    (DataPointer[j] == 'Unit') ||
                                    (DataPointer[j] == 'LOQ') ||
                                    (DataPointer[j] == 'TestMethod') ||
                                    (DataPointer[j] == 'Specification') 
                                    ) {
                                        result = DataPointer[j] == 'LOQ' ? tstallctData[index]['LOQ'] : element[DataPointer[j]]
                                    }
                                %>

        <%- result %> </td>
      <% } %>
    </tbody>
    <% }) %>
      <tr>
        <td class="label">Remark/Note:</td>
        <td colspan="6" class="value">
          <%= masterData.Remark && masterData.Remark.trim() !== ""
            ? masterData.Remark
            : "--" %>
        </td>
      </tr>
  </table>

  <br/>

<div class="report-footer">

  <%
  // const hasSign1 = masterData.ApprovalBy1Name && masterData.ApprovalBy1Name.trim() !== "" && masterData.ApprovalBy1Name.trim() !== "NULL";
  const hasSign2 = masterData.ApprovalBy2Name && masterData.ApprovalBy2Name.trim() !== "" && masterData.ApprovalBy2Name.trim() !== "NULL";
  const hasSign3 = masterData.ApprovalBy3Name && masterData.ApprovalBy3Name.trim() !== "" && masterData.ApprovalBy3Name.trim() !== "NULL";

  const signCount = [hasSign2, hasSign3].filter(Boolean).length;
%>

  <div class="signatory-wrapper count-<%= signCount %>">

    <!-- LEFT -->
    <% if (hasSign2) { %>
    <div class="signatory">
      <img src="data:image/jpg;base64,<%= logoBase64Sign2 %>" width="70" height="50">
      <div class="line"></div>
      <div class="title">REVIEWED BY</div>
      <div class="name"><%= masterData.ApprovalBy2Name %></div>
      <div class="designation"><%= "("+masterData.Approved2Designation+")" || "" %></div>
    </div>
    <% } %>

    <!-- scanner -->
    <div class="signatory">
      <img src="<%= scanner %>" width="70" height="70">
    </div>

    <% if (hasSign3) { %>
    <div class="signatory">
      <img src="data:image/jpg;base64,<%= logoBase64Sign3 %>" width="70" height="50">
      <div class="line"></div>
      <div class="title">AUTHORIZED SIGNATORY</sup></div>
      <div class="name"><%= masterData.ApprovalBy3Name %></div>
      <div class="designation"><%= "("+masterData.Approved3Designation+")" || "" %></div>
    </div>
    <% } %>
  </div>

  <br/>
  <div style="text-align:center;font-weight:bold;">
    ***** END OF THE TEST REPORT *****
  </div>
  <div class="notes-seal-wrapper">
    <div class="notes-text">
      <p>
        1. The result listed refer only to the tested samples(s) and applicable parameter(s).
        2. In Case Sampling is not done by Laboratory ,the results apply to the sample as received.
        3. There are no additions to, deviations or exclusions from the method.
        4. The report shall not be reproduced except in full, without written approval of the laboratory.
        5. Laboratory is not responsible for the authenticity of photocopied test report.
        6. Please see Embossed seal to confirm the authenticity of this report.
        Disclaimer: Information is supplied by the customer(s) and can affect the validity of results.
      </p>
    <div class="seal-image">
      <img src="data:image/jpg;base64,<%= logoBase64seal %>" alt="Seal">
    </div>
       </div>
  </div>

  <div style="font-size:8px;text-align:center;font-weight:bold;">HS/QP/64/FO3</div>
  <div style="text-align: left; line-height: 1.3; margin: 0;">
    <p style="margin:0;">
      <b style="color:rgb(9, 94, 9)"><%= addr.Company %></b><br>
      <%= addr.Line1 %>, <%= addr.City %> - <%= addr.Pincode %> <%= addr.State %> - <%= addr.Country %>.<br>
      Phone: <%= addr.Phone %>, Telefax: <%= addr.Telefax %><br>
      Email: <span style="color:blue"><%= addr.Email %></span><br>
      <%= addr.Website.join(", ") %>
    </p>
  </div>
</div>

</body>

<% } %>
