Browse Source

合約書申請 1225 聖誕節快樂

main
10994015 1 year ago
parent
commit
432c530fe4
  1. 46
      wms/contract/api/postContractNewApplyData.php
  2. 79
      wms/contract/contract-new-apply.php
  3. 37
      wms/contract/js/alpine.js
  4. 8
      wms/contract/styles/style.css
  5. 2
      wms/contract/styles/style.css.map
  6. 8
      wms/contract/styles/style.scss

46
wms/contract/api/postContractNewApplyData.php

@ -9,7 +9,7 @@ if ($_SERVER['REQUEST_METHOD'] != 'POST') {
exit(); exit();
} }
//暫存、送審 //暫存、送審
if (isset($_POST['vol_no']) && !empty($_POST['vol_no']) && ($_POST['status'] == 0 || $_POST['status'] == 1)) { if (isset($_POST['vol_no']) && !empty($_POST['vol_no']) && ($_POST['status'] == 0 || $_POST['status'] == 1) && $_POST['progress'] <= 1) {
if ($_POST['regulations'] < 10) { if ($_POST['regulations'] < 10) {
header("HTTP/1.1 500 傳送失敗!!試車時間不得低於10天"); header("HTTP/1.1 500 傳送失敗!!試車時間不得低於10天");
exit; exit;
@ -37,6 +37,7 @@ if (isset($_POST['vol_no']) && !empty($_POST['vol_no']) && ($_POST['status'] ==
$tradedeadline = $_POST['tradedeadline']; $tradedeadline = $_POST['tradedeadline'];
$secondPayDeadline = $_POST['secondPayDeadline']; $secondPayDeadline = $_POST['secondPayDeadline'];
$pays = $_POST['pays']; $pays = $_POST['pays'];
$description = $_POST['description'];
$status = $_POST['status']; // 0:暫存 1:送審 2:退回 3:完成 $status = $_POST['status']; // 0:暫存 1:送審 2:退回 3:完成
$pays = json_decode($pays, true); $pays = json_decode($pays, true);
@ -55,7 +56,7 @@ if (isset($_POST['vol_no']) && !empty($_POST['vol_no']) && ($_POST['status'] ==
$conn->beginTransaction(); $conn->beginTransaction();
try { try {
if ($isFirst == 1) { if ($isFirst == 1) {
$sql_str = "INSERT INTO contract_new_apply (mid, contractno, sales_man, apply_date, apply_type, case_name, customer, manager, vat, total_price, total_items, buy_fee, install_fee, contact_address, workdeadline_a, workdeadline_b, test_time, freedeadline, trade_address, tradedeadline, secondPayDeadline, progress, status, person, personname, submit_date, created_at, created_by) VALUES (:mid, :contractno, :sales_man, :apply_date, :apply_type, :case_name, :customer, :manager, :vat, :total_price, :total_items, :buy_fee, :install_fee, :contact_address, :workdeadline_a, :workdeadline_b, :test_time, :freedeadline, :trade_address, :tradedeadline, :secondPayDeadline, :progress, :status, :person, :personname, :submit_date, :created_at, :created_by)"; $sql_str = "INSERT INTO contract_new_apply (mid, contractno, sales_man, apply_date, apply_type, case_name, customer, manager, vat, total_price, total_items, buy_fee, install_fee, contact_address, workdeadline_a, workdeadline_b, test_time, freedeadline, trade_address, tradedeadline, secondPayDeadline, progress, status, person, personname, submit_date, created_at, created_by, description) VALUES (:mid, :contractno, :sales_man, :apply_date, :apply_type, :case_name, :customer, :manager, :vat, :total_price, :total_items, :buy_fee, :install_fee, :contact_address, :workdeadline_a, :workdeadline_b, :test_time, :freedeadline, :trade_address, :tradedeadline, :secondPayDeadline, :progress, :status, :person, :personname, :submit_date, :created_at, :created_by, :description)";
$stmt = $conn->prepare($sql_str); $stmt = $conn->prepare($sql_str);
$stmt->bindParam(':mid', $mid); $stmt->bindParam(':mid', $mid);
$stmt->bindParam(':contractno', $vol_no); $stmt->bindParam(':contractno', $vol_no);
@ -85,6 +86,7 @@ if (isset($_POST['vol_no']) && !empty($_POST['vol_no']) && ($_POST['status'] ==
$stmt->bindParam(':submit_date', $submit_date); $stmt->bindParam(':submit_date', $submit_date);
$stmt->bindParam(':created_at', $created_at); $stmt->bindParam(':created_at', $created_at);
$stmt->bindParam(':created_by', $created_by); $stmt->bindParam(':created_by', $created_by);
$stmt->bindParam(':description', $description);
$stmt->execute(); $stmt->execute();
$contract_apply_id = $conn->lastInsertId(); $contract_apply_id = $conn->lastInsertId();
foreach ($pays as $idx => $pay) { foreach ($pays as $idx => $pay) {
@ -160,7 +162,7 @@ if (isset($_POST['vol_no']) && !empty($_POST['vol_no']) && ($_POST['status'] ==
header("HTTP/1.1 201 success!"); header("HTTP/1.1 201 success!");
$conn->commit(); $conn->commit();
} else { } else {
$sql_str = "UPDATE contract_new_apply SET status = :status, apply_date=:apply_date, apply_type=:apply_type, case_name=:case_name, customer=:customer, manager=:manager, vat=:vat, total_price=:total_price, total_items=:total_items, buy_fee=:buy_fee, install_fee=:install_fee, contact_address=:contact_address, trade_address=:trade_address, workdeadline_a=:workdeadline_a, workdeadline_b=:workdeadline_b, test_time=:test_time, freedeadline=:freedeadline, trade_address=:trade_address, trade_address=:trade_address, tradedeadline=:tradedeadline, secondPayDeadline=:secondPayDeadline, progress=:progress, person=:person, personname=:personname, submit_date=:submit_date, updated_at=:updated_at, updated_by=:updated_by WHERE mid = :mid"; $sql_str = "UPDATE contract_new_apply SET status = :status, apply_date=:apply_date, apply_type=:apply_type, case_name=:case_name, customer=:customer, manager=:manager, vat=:vat, total_price=:total_price, total_items=:total_items, buy_fee=:buy_fee, install_fee=:install_fee, contact_address=:contact_address, trade_address=:trade_address, workdeadline_a=:workdeadline_a, workdeadline_b=:workdeadline_b, test_time=:test_time, freedeadline=:freedeadline, trade_address=:trade_address, trade_address=:trade_address, tradedeadline=:tradedeadline, secondPayDeadline=:secondPayDeadline, progress=:progress, person=:person, personname=:personname, submit_date=:submit_date, updated_at=:updated_at, updated_by=:updated_by, description=:description WHERE mid = :mid";
$stmt = $conn->prepare($sql_str); $stmt = $conn->prepare($sql_str);
$stmt->bindParam(':mid', $mid); $stmt->bindParam(':mid', $mid);
$stmt->bindParam(':status', $status); $stmt->bindParam(':status', $status);
@ -188,6 +190,7 @@ if (isset($_POST['vol_no']) && !empty($_POST['vol_no']) && ($_POST['status'] ==
$stmt->bindParam(':submit_date', $submit_date); $stmt->bindParam(':submit_date', $submit_date);
$stmt->bindParam(':updated_at', $updated_at); $stmt->bindParam(':updated_at', $updated_at);
$stmt->bindParam(':updated_by', $updated_by); $stmt->bindParam(':updated_by', $updated_by);
$stmt->bindParam(':description', $description);
$stmt->execute(); $stmt->execute();
foreach ($pays as $idx => $pay) { foreach ($pays as $idx => $pay) {
@ -205,7 +208,7 @@ if (isset($_POST['vol_no']) && !empty($_POST['vol_no']) && ($_POST['status'] ==
$stmt->execute(); $stmt->execute();
} }
$deleted_at = date("Y-m-d H:i:s"); $deleted_at = date("Y-m-d H:i:s");
$removefiles = json_decode($_POST['removefiles'], true); $removefiles = isset($_POST['removefiles']) ? json_decode($_POST['removefiles'], true) : [];
print_r($removefiles); print_r($removefiles);
if(count($removefiles) > 0){ if(count($removefiles) > 0){
foreach($removefiles as $file){ foreach($removefiles as $file){
@ -216,10 +219,6 @@ if (isset($_POST['vol_no']) && !empty($_POST['vol_no']) && ($_POST['status'] ==
$stmt ->execute(); $stmt ->execute();
} }
} }
header("HTTP/1.1 201 success!"); header("HTTP/1.1 201 success!");
$conn->commit(); $conn->commit();
} }
@ -230,6 +229,35 @@ if (isset($_POST['vol_no']) && !empty($_POST['vol_no']) && ($_POST['status'] ==
die('Error!:' . $e->getMessage()); die('Error!:' . $e->getMessage());
} }
} }
//業務部承辦人同意
if (isset($_POST['vol_no']) && !empty($_POST['vol_no']) && ($_POST['status'] == 1) && $_POST['progress'] == 2) {
$status = $_POST['status'];
$vol_no = $_POST['vol_no'];
$contract_new_apply_id = $_POST['contract_new_apply_id'];
$progress = $_POST['progress'];
$review_comment = $_POST['review_comment'];
$user_id = $_POST['review_person_id'];
$review_date = date('Y-m-d H:i:s');
$conn->beginTransaction();
try {
$sql_str = "UPDATE contract_new_apply SET status = :status, progress = :progress, review_comment=:review_comment, review_person_id=:review_person_id, review_date=:review_date WHERE id = :contract_new_apply_id";
$stmt = $conn->prepare($sql_str);
$stmt->bindParam(':status', $status);
$stmt->bindParam(':progress', $progress);
$stmt->bindParam(':contract_new_apply_id', $contract_new_apply_id);
$stmt->bindParam(':review_comment', $review_comment);
$stmt->bindParam(':review_person_id', $user_id);
$stmt->bindParam(':review_date', $review_date);
$stmt->execute();
header("HTTP/1.1 200 success!");
$conn->commit();
} catch (PDOException $e) {
$conn->rollback();
header("HTTP/1.1 500 failed!");
echo $e->getMessage();
die('Error!:' . $e->getMessage());
}
}
//結案同意 //結案同意
if (isset($_POST['vol_no']) && !empty($_POST['vol_no']) && ($_POST['status'] == 3)) { if (isset($_POST['vol_no']) && !empty($_POST['vol_no']) && ($_POST['status'] == 3)) {
$status = $_POST['status']; $status = $_POST['status'];
@ -241,7 +269,7 @@ if (isset($_POST['vol_no']) && !empty($_POST['vol_no']) && ($_POST['status'] ==
$review_date = date('Y-m-d H:i:s'); $review_date = date('Y-m-d H:i:s');
$conn->beginTransaction(); $conn->beginTransaction();
try { try {
$sql_str = "UPDATE contract_new_apply SET status = :status, progress = :progress, review_comment=:review_comment, review_person_id=:review_person_id, review_date=:review_date WHERE id = :contract_new_apply_id"; $sql_str = "UPDATE contract_new_apply SET status = :status, progress = :progress, review_final_comment=:review_comment, review_final_person_id=:review_person_id, review_final_date=:review_date WHERE id = :contract_new_apply_id";
$stmt = $conn->prepare($sql_str); $stmt = $conn->prepare($sql_str);
$stmt->bindParam(':status', $status); $stmt->bindParam(':status', $status);
$stmt->bindParam(':progress', $progress); $stmt->bindParam(':progress', $progress);

79
wms/contract/contract-new-apply.php

@ -9,9 +9,10 @@ if(!(isset($_GET['id']) && !empty($_GET['id']))){
} }
$id = $_GET["id"]; $id = $_GET["id"];
$sql_str = "SELECT contract_new_apply.*, account.name as review_person_name $sql_str = "SELECT contract_new_apply.*, person_account.name AS review_person_name, person_final_account.name AS review_final_person_name
FROM contract_new_apply FROM contract_new_apply
LEFT JOIN account ON contract_new_apply.review_person_id = account.accountid LEFT JOIN account AS person_account ON contract_new_apply.review_person_id = person_account.accountid
LEFT JOIN account AS person_final_account ON contract_new_apply.review_final_person_id = person_final_account.accountid
WHERE contract_new_apply.mid = :mid"; WHERE contract_new_apply.mid = :mid";
$stmt = $conn->prepare($sql_str); $stmt = $conn->prepare($sql_str);
$stmt->bindParam(':mid',$id); $stmt->bindParam(':mid',$id);
@ -101,6 +102,7 @@ if(empty($contract_new_apply)){
} }
$secondPayDeadline = $contract['secondPayDeadline'] ?? 0; $secondPayDeadline = $contract['secondPayDeadline'] ?? 0;
$status = isset($contract['status']) ? $contract['status'] : -1; $status = isset($contract['status']) ? $contract['status'] : -1;
$progress = isset($contract['progress']) ? $contract['progress'] : 0;
$person = $contract['person']; $person = $contract['person'];
?> ?>
@ -140,12 +142,12 @@ $person = $contract['person'];
</td> </td>
<td style="vertical-align: middle">統一編號</td> <td style="vertical-align: middle">統一編號</td>
<td> <td>
<input class="form-control disabled_select" type="text" x-model="data.vat" > <input class="form-control disabled_select" type="text" x-model="data.vat" disabled >
<p class="alerttext" x-show="data.vat==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p> <p class="alerttext" x-show="data.vat==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td> </td>
<td style="vertical-align: middle">合約書申請日期</td> <td style="vertical-align: middle">合約書申請日期</td>
<td> <td>
<input class="form-control disabled_select" type="date" x-model="data.apply_date" > <input class="form-control disabled_select" type="date" x-model="data.apply_date" disabled>
<p class="alerttext" x-show="data.apply_date==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p> <p class="alerttext" x-show="data.apply_date==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td> </td>
<td style="vertical-align: middle">申請類別</td> <td style="vertical-align: middle">申請類別</td>
@ -159,17 +161,17 @@ $person = $contract['person'];
<tr> <tr>
<td style="vertical-align: middle">案件名稱</td> <td style="vertical-align: middle">案件名稱</td>
<td style="vertical-align: middle" colspan="3"> <td style="vertical-align: middle" colspan="3">
<input class="form-control disabled_select" type="text" x-model="data.case_name" > <input class="form-control disabled_select" type="text" x-model="data.case_name" disabled >
<p class="alerttext" x-show="data.case_name==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p> <p class="alerttext" x-show="data.case_name==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td> </td>
<td style="vertical-align: middle">立約人</td> <td style="vertical-align: middle">立約人</td>
<td style="vertical-align: middle"> <td style="vertical-align: middle">
<input class="form-control disabled_select" type="text" x-model="data.company" > <input class="form-control disabled_select" type="text" x-model="data.company" disabled>
<p class="alerttext" x-show="data.company==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p> <p class="alerttext" x-show="data.company==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td> </td>
<td style="vertical-align: middle">負責人</td> <td style="vertical-align: middle">負責人</td>
<td style="vertical-align: middle"> <td style="vertical-align: middle">
<input class="form-control disabled_select" type="text" x-model="data.manager" > <input class="form-control disabled_select" type="text" x-model="data.manager" disabled >
<p class="alerttext" x-show="data.manager==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p> <p class="alerttext" x-show="data.manager==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td> </td>
</tr> </tr>
@ -193,7 +195,7 @@ $person = $contract['person'];
<tr> <tr>
<td style="vertical-align: middle">聯絡地址</td> <td style="vertical-align: middle">聯絡地址</td>
<td style="vertical-align: middle" colspan=3> <td style="vertical-align: middle" colspan=3>
<input class="form-control disabled_select" type="text" x-model="data.address" > <input class="form-control disabled_select" type="text" x-model="data.address" disabled>
<p class="alerttext" x-show="data.address==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p> <p class="alerttext" x-show="data.address==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td> </td>
<td style="vertical-align: middle">完工期限</td> <td style="vertical-align: middle">完工期限</td>
@ -407,7 +409,7 @@ $person = $contract['person'];
</td> </td>
<td> <td>
<div class="ui labeled input"> <div class="ui labeled input">
<input type="number" placeholder="90" style="width:65px;padding:0 12px;" x-model="pays[<?php echo $pay['pay_kind'];?>].condition_date"> <input type="number" placeholder="90" style="width:65px;padding:0 12px;" x-model="pays[<?php echo $pay['pay_kind'];?>].condition_date" disabled >
<div class="ui label"> <div class="ui label">
</div> </div>
@ -415,7 +417,7 @@ $person = $contract['person'];
</td> </td>
<td> <td>
<div class="ui labeled input"> <div class="ui labeled input">
<input type="number" placeholder="90" style="width:65px;padding:0 12px;" x-model="pays[<?php echo $pay['pay_kind'];?>].pay_period" > <input type="number" placeholder="90" style="width:65px;padding:0 12px;" x-model="pays[<?php echo $pay['pay_kind'];?>].pay_period" disabled >
<div class="ui label"> <div class="ui label">
</div> </div>
@ -448,13 +450,17 @@ $person = $contract['person'];
<thead style="font-weight: bolder;margin-bottom: 20px;"> <thead style="font-weight: bolder;margin-bottom: 20px;">
<tr> <tr>
<td colspan=8> <td colspan=8>
<h4 style='text-align:center;font-weight: bolder'>附件上傳</h4> <h4 style='text-align:center;font-weight: bolder'>其他</h4>
</td> </td>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<tr> <tr>
<td colspan="4">附件上傳</td> <td colspan="1">說明</td>
<td colspan="2">
<textarea name="description" x-model="data.description"></textarea>
</td>
<td colspan="1">附件上傳</td>
<td colspan="4"> <td colspan="4">
<?php if($status < 1): ?> <?php if($status < 1): ?>
<input type="file" name="file[]" multiple draggable="true" @change="uploadFiles($event)" /> <input type="file" name="file[]" multiple draggable="true" @change="uploadFiles($event)" />
@ -463,7 +469,9 @@ $person = $contract['person'];
<template x-if="file"> <template x-if="file">
<div> <div>
<a :href="'./images/contracts_new_files/' + file.file_name" download x-text="file.file_name" ></a> <a :href="'./images/contracts_new_files/' + file.file_name" download x-text="file.file_name" ></a>
<?php if($status <= 0): ?>
<span @click="removeFile(file.id)" style="margin-left:10px;cursor:pointer;color:#f019">X</span> <span @click="removeFile(file.id)" style="margin-left:10px;cursor:pointer;color:#f019">X</span>
<?php endif; ?>
</div> </div>
</template> </template>
</template> </template>
@ -487,7 +495,7 @@ $person = $contract['person'];
<td>結果</td> <td>結果</td>
<td colspan=2>意見</td> <td colspan=2>意見</td>
<td>時間</td> <td>時間</td>
<td colspan=2><?php if($user_id === "M0174" && $status == 1): ?>審核意見<?php endif; ?></td> <td colspan=2><?php if(($user_id === "M0174" || $user_id === "M0107" || $user_id === "M0060") && $status == 1): ?>審核意見<?php endif; ?></td>
</tr> </tr>
<tr> <tr>
<td>營業員</td> <td>營業員</td>
@ -499,8 +507,8 @@ $person = $contract['person'];
</td> </td>
<td colspan=2>---</td> <td colspan=2>---</td>
<td><?php echo ($contract['submit_date']) ?? "---"; ?> </td> <td><?php echo ($contract['submit_date']) ?? "---"; ?> </td>
<td colspan=2 rowspan="2"> <td colspan=2 rowspan="3">
<?php if($user_id === "M0174" && $status == 1): ?> <?php if(($user_id === "M0174" || $user_id === "M0107" || $user_id === "M0060") && $status == 1): ?>
<textarea class="form-control opinion" x-model="data.review_comment"></textarea> <textarea class="form-control opinion" x-model="data.review_comment"></textarea>
<?php endif; ?> <?php endif; ?>
</td> </td>
@ -509,13 +517,24 @@ $person = $contract['person'];
<td>業務承辦人</td> <td>業務承辦人</td>
<td><span><?php echo (!isset($contract['review_person_name']) || empty($contract['review_person_name'])) ? "---" : $contract['review_person_name'] ."(".$contract['review_person_id'].")"; ?></span></td> <td><span><?php echo (!isset($contract['review_person_name']) || empty($contract['review_person_name'])) ? "---" : $contract['review_person_name'] ."(".$contract['review_person_id'].")"; ?></span></td>
<td> <td>
<?php if($status == 3): ?><span class="successtext">結案同意</span><?php endif; ?> <?php if(($status == 1 || $status == 3) && $progress >= 2): ?><span class="successtext">同意</span><?php endif; ?>
<?php if($status == 2): ?><span class="failtext">結案不同意</span><?php endif; ?> <?php if($status == 2): ?><span class="failtext">結案不同意</span><?php endif; ?>
<?php if($status < 2): ?><span>---</span><?php endif; ?> <?php if($status < 2 && $progress < 2): ?><span>---</span><?php endif; ?>
</td> </td>
<td colspan=2><?php echo $contract['review_comment'] ?? "---"; ?></td> <td colspan=2><?php echo $contract['review_comment'] ?? "---"; ?></td>
<td><?php echo $contract['review_date'] ?? "---"; ?></td> <td><?php echo $contract['review_date'] ?? "---"; ?></td>
</tr> </tr>
<tr>
<td>業務部協理</td>
<td><span><?php echo (!isset($contract['review_final_person_name']) || empty($contract['review_final_person_name'])) ? "---" : $contract['review_final_person_name'] ."(".$contract['review_final_person_id'].")"; ?></span></td>
<td>
<?php if($status == 3): ?><span class="successtext">結案同意</span><?php endif; ?>
<?php if($status == 2): ?><span class="failtext">結案不同意</span><?php endif; ?>
<?php if($status < 2): ?><span>---</span><?php endif; ?>
</td>
<td colspan=2><?php echo $contract['review_final_comment'] ?? "---"; ?></td>
<td><?php echo $contract['review_final_date'] ?? "---"; ?></td>
</tr>
<!-- <tr> <!-- <tr>
<td colspan="2" style="font-weight:bold">業務部承辦人</td> <td colspan="2" style="font-weight:bold">業務部承辦人</td>
<td colspan="2"> <td colspan="2">
@ -553,10 +572,18 @@ $person = $contract['person'];
</template> </template>
</button> </button>
<?php endif; ?> <?php endif; ?>
<?php if($status == 1 && ($user_id == "M0107" || $user_id == "M0060" || $user_id == "M0174")): ?> <?php if($status == 1 && (($user_id == "M0107" && $contract['progress'] <= 1 ) || ($user_id == "M0060" && $contract['progress'] == 2 ) || $user_id == "M0174")): ?>
<button x-show="true" x-on:click="agree()" :disabled="isLoading" type="button" class="btn btn-primary btn-lg pull-right savebtn"> <button x-show="true" x-on:click="agree()" :disabled="isLoading" type="button" class="btn btn-primary btn-lg pull-right savebtn">
<template x-if="!isLoading"> <template x-if="!isLoading">
<span>同意(結案)</span> <span>
<?php
if($user_id === "M0107" && $contract['progress'] <= 1 ){
echo "同意(上呈)";
}elseif($user_id === "M0060" && $contract['progress'] == 2){
echo "同意(結案)";
}
?>
</span>
</template> </template>
<template x-if="isLoading"> <template x-if="isLoading">
<div class="loader"></div> <div class="loader"></div>
@ -613,6 +640,10 @@ $person = $contract['person'];
const workdeadline_b = 7; const workdeadline_b = 7;
const total_items = <?php echo $total_items ?? ''; ?>; const total_items = <?php echo $total_items ?? ''; ?>;
const isFirst = <?php echo $isFirst; ?>; const isFirst = <?php echo $isFirst; ?>;
const originfiles = [];
const description = '';
const contractstatus = null;
const progress = 0;
</script> </script>
<?php else: ?> <?php else: ?>
<script> <script>
@ -642,10 +673,12 @@ $person = $contract['person'];
const secondPayDeadline = <?php echo $secondPayDeadline ?? ''; ?>; const secondPayDeadline = <?php echo $secondPayDeadline ?? ''; ?>;
const total_items = <?php echo $contract['total_items'] ?? ''; ?>; const total_items = <?php echo $contract['total_items'] ?? ''; ?>;
const contract_new_apply_id = <?php echo $contract_new_apply_id; ?>; const contract_new_apply_id = <?php echo $contract_new_apply_id; ?>;
const originfiles = [...<?php echo json_encode($files); ?>]; const originfiles = [...<?php echo json_encode($files) ?? []; ?>];
const description = '<?php echo $contract['description']; ?>';
const contractstatus = <?php echo $contract['status']; ?>;
const progress = <?php echo $contract['progress']; ?>;
</script> </script>
<?php endif; ?> <?php endif; ?>
<?php if($status > 0 ||( $person != $user_id && $user_id != "M0174")): ?> <?php if($status > 0 ||( $person != $user_id && $user_id != "M0174")): ?>
<script> <script>
@ -653,12 +686,16 @@ $person = $contract['person'];
const input = document.querySelectorAll('input'); const input = document.querySelectorAll('input');
const alerttext = document.querySelectorAll('p.alerttext'); const alerttext = document.querySelectorAll('p.alerttext');
const select = document.querySelectorAll('select'); const select = document.querySelectorAll('select');
const textarea = document.querySelectorAll('textarea');
for(let i=0;i<input.length;i++){ for(let i=0;i<input.length;i++){
input[i].disabled = true input[i].disabled = true
} }
for(let i=0;i<select.length;i++){ for(let i=0;i<select.length;i++){
select[i].disabled = true select[i].disabled = true
} }
for(let i=0;i<textarea.length;i++){
textarea[i].disabled = true
}
for(let i=0;i<alerttext.length;i++){ for(let i=0;i<alerttext.length;i++){
alerttext[i].style.display = "none" alerttext[i].style.display = "none"
} }

37
wms/contract/js/alpine.js

@ -1214,7 +1214,10 @@ const contractNewApply = () => {
files: [], files: [],
removefiles: [], removefiles: [],
originfiles: originfiles, originfiles: originfiles,
description: description,
}, },
status:contractstatus,
progress: progress,
pays: { pays: {
1: { 1: {
condition_date: 0, condition_date: 0,
@ -1301,6 +1304,7 @@ const contractNewApply = () => {
form.append('status', 0); form.append('status', 0);
form.append('removefiles', JSON.stringify(this.data.removefiles)) form.append('removefiles', JSON.stringify(this.data.removefiles))
form.append('salesman_comment', this.data.salesman_comment); form.append('salesman_comment', this.data.salesman_comment);
form.append('description', this.data.description);
for (var i = 0; i < this.data.files.length; i++) { for (var i = 0; i < this.data.files.length; i++) {
form.append('files[]', this.data.files[i]); form.append('files[]', this.data.files[i]);
} }
@ -1361,6 +1365,7 @@ const contractNewApply = () => {
form.append('pays', JSON.stringify(this.pays)); form.append('pays', JSON.stringify(this.pays));
form.append('status', 1); form.append('status', 1);
form.append('review_comment', this.data.review_comment); form.append('review_comment', this.data.review_comment);
form.append('description', this.data.description);
for (var i = 0; i < this.data.files.length; i++) { for (var i = 0; i < this.data.files.length; i++) {
form.append('files[]', this.data.files[i]); form.append('files[]', this.data.files[i]);
} }
@ -1378,22 +1383,38 @@ const contractNewApply = () => {
}) })
}, },
agree() { agree() {
if (!confirm("確定同意嗎?")) { if (!confirm("確定同意嗎?")) return;
return;
}
this.isLoading = true this.isLoading = true
let newprogress = 0;
let newstatus = 0;
if(this.progress <= 1){
newprogress = 2;
}else if(this.progress == 2){
newprogress = 3;
}
if(this.status == 1 && this.progress == 2){
newstatus = 3
}else{
newstatus = 1
}
console.log(newstatus);
console.log(newprogress)
console.log(this.data.regulations);
this.data.regulations = 100
const form = new FormData(); const form = new FormData();
form.append('contract_new_apply_id', contract_new_apply_id); form.append('contract_new_apply_id', contract_new_apply_id);
form.append('vol_no', this.data.vol_no); form.append('vol_no', this.data.vol_no);
form.append('status', 3); form.append('status', newstatus);
form.append('review_comment', this.data.review_comment); form.append('review_comment', this.data.review_comment);
form.append('review_person_id', user_id); form.append('review_person_id', user_id);
form.append('progress', 2); form.append('progress', newprogress);
axios.post('./api/postContractNewApplyData.php', form).then(res => { axios.post('./api/postContractNewApplyData.php', form).then(res => {
if (res.status === 200) { if (res.status === 200) {
alert('審核成功'); alert('審核成功');
console.log(res.data);
console.log(res.status);
window.location.reload(); window.location.reload();
} }
this.isLoading = false this.isLoading = false
@ -1429,9 +1450,9 @@ const contractNewApply = () => {
}, },
removeFile(id) { removeFile(id) {
if (!confirm('確定移除該檔案嗎?')) return; if (!confirm('確定移除該檔案嗎?')) return;
console.log(this.data.originfiles);
console.log(id); console.log(id);
this.data.removefiles.push(id); this.data.removefiles.push(id);
this.data.originfiles.splice(id, 1);
this.data.originfiles = this.data.originfiles.filter(file => file.id != id) this.data.originfiles = this.data.originfiles.filter(file => file.id != id)
} }

8
wms/contract/styles/style.css

@ -574,6 +574,14 @@ main table td, main table th {
font-weight: 900; font-weight: 900;
padding: 0; padding: 0;
} }
.contract-input-component .form table textarea, .contract-management .form table textarea, .contract-new-apply-component .form table textarea {
width: 100%;
resize: vertical;
min-height: 150px;
border: 1px #ccc solid;
outline: none;
border-radius: 6px;
}
.contract-input-component .form table .opinion, .contract-management .form table .opinion, .contract-new-apply-component .form table .opinion { .contract-input-component .form table .opinion, .contract-management .form table .opinion, .contract-new-apply-component .form table .opinion {
width: 100%; width: 100%;
min-height: 100px; min-height: 100px;

2
wms/contract/styles/style.css.map

File diff suppressed because one or more lines are too long

8
wms/contract/styles/style.scss

@ -594,6 +594,14 @@ main{
font-weight: 900; font-weight: 900;
padding: 0; padding: 0;
} }
textarea{
width: 100%;
resize: vertical;
min-height: 150px;
border:1px #ccc solid;
outline: none;
border-radius: 6px;
}
.opinion{ .opinion{
width:100%; width:100%;
min-height: 100px; min-height: 100px;

Loading…
Cancel
Save