85 lines
5.0 KiB
XML
85 lines
5.0 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<template id="attendance_month_portal_template" name="Attendance Month Portal Template" inherit_id="portal.portal_sidebar" primary="True">
|
|
<xpath expr="//div[hasclass('o_portal_sidebar')]" position="inside">
|
|
<div class="row mt16 o_portal_sale_sidebar">
|
|
<!-- Sidebar -->
|
|
<t t-call="portal.portal_record_sidebar">
|
|
<t t-set="title">
|
|
<h2 class="mb-0">
|
|
<b t-field="attendance_month.current_year" /> 年
|
|
<b t-field="attendance_month.current_month" />
|
|
考勤确认信息
|
|
</h2>
|
|
</t>
|
|
<t t-set="entries">
|
|
<ul class="list-group list-group-flush flex-wrap flex-row flex-lg-column">
|
|
<!-- todo 需要什么字段往上加什么-->
|
|
<li class="list-group-item d-grid align-content-start">
|
|
<strong>迟到(次):<span t-field="attendance_month.come_late"/>次</strong>
|
|
</li>
|
|
<li class="list-group-item d-grid align-content-start">
|
|
<strong>早退(次):<span t-field="attendance_month.is_early_card"/>次</strong>
|
|
</li>
|
|
<li class="list-group-item d-grid align-content-start">
|
|
<strong>缺卡(次):<span t-field="attendance_month.is_no_card"/>次</strong>
|
|
</li>
|
|
<li class="list-group-item d-grid align-content-start">
|
|
<strong>无薪假(小时):<span t-field="attendance_month.unpaid_leave"/>小时</strong>
|
|
</li>
|
|
</ul>
|
|
<ul class="list-group list-group-flush flex-wrap flex-row flex-lg-column" />
|
|
<ul class="list-group list-group-flush flex-wrap flex-row flex-lg-column">
|
|
<li class="list-group-item d-grid align-content-start">
|
|
<a t-if="attendance_month._has_to_be_signed()" role="button" class="btn btn-primary mb8" data-bs-toggle="modal" data-bs-target="#modalaccept" href="#">
|
|
<i class="fa fa-check"/> 签署并同意
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<section t-if="not attendance_month._has_to_be_signed()" id="signature" name="Signature">
|
|
<div class="row mt-4" name="signature">
|
|
<div t-attf-class="#{'col-3' if report_type != 'html' else 'col-sm-7 col-md-4'} ms-auto text-center">
|
|
<h5>签名</h5>
|
|
<img t-att-src="image_data_uri(attendance_month.signature)" style="max-height: 6rem; max-width: 100%;"/>
|
|
<p t-field="attendance_month.signed_by"/>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</t>
|
|
</t>
|
|
<div id="quote_content" class="col-12 col-lg justify-content-end">
|
|
<!-- 考勤签字 -->
|
|
<div role="dialog" class="modal fade" id="modalaccept">
|
|
<div class="modal-dialog">
|
|
<form id="accept" method="POST" t-att-data-order-id="attendance_month.id" t-att-data-token="attendance_month.access_token" class="js_accept_json modal-content js_website_submit_form">
|
|
<input type="hidden" name="csrf_token" t-att-value="request.csrf_token()"/>
|
|
<header class="modal-header">
|
|
<h4 class="modal-title">考勤确认</h4>
|
|
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
|
</header>
|
|
<main class="modal-body" id="sign-dialog">
|
|
<!-- <p>-->
|
|
<!-- <span>我确认以上信息:</span>-->
|
|
<!-- </p>-->
|
|
<t t-call="portal.signature_form">
|
|
<t t-set="call_url" t-value="attendance_month.get_portal_url(suffix='/accept')"/>
|
|
<t t-set="default_name" t-value="attendance_month.employee_id.name"/>
|
|
<t t-set="signature_ratio" t-value="2"/>
|
|
</t>
|
|
</main>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
<!-- 状态信息确认 -->
|
|
<div t-if="message == 'sign_ok'" class="alert alert-success alert-dismissible d-print-none" role="status">
|
|
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
|
|
<strong>感谢!</strong><br/>
|
|
<t t-if="message == 'sign_ok' and attendance_month.state in ['confirmed']">
|
|
您的考勤已经确认。
|
|
</t>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</xpath>
|
|
</template>
|
|
</odoo> |