Browse Source

修理契約管理

main
Cheng 1 year ago
parent
commit
b1dfd4f924
  1. 20
      wms/contract-repair/api/deleteNewContractData.php
  2. 6
      wms/contract-repair/api/getContractData.php
  3. 82
      wms/contract-repair/api/postContractData.php
  4. 39
      wms/contract-repair/api/putContractData.php
  5. 201
      wms/contract-repair/contract-repair-edit.php
  6. 10
      wms/contract-repair/contract-repair-input.php
  7. 119
      wms/contract-repair/contract-repair-management.php
  8. 149
      wms/contract-repair/js/alpine.js
  9. 4
      wms/database.php

20
wms/contract-repair/api/deleteNewContractData.php

@ -1,6 +1,25 @@
<?php
require_once("../conn.php");
ini_set ( 'date.timezone' , 'Asia/Taipei' );
if(isset($_GET['contractid']) && $_GET['contractid']!="" && isset($_GET['contracttype']) && $_GET['contracttype'] == 'r'){
try{
$id = $_GET['contractid'];
$user_id = $_GET['user_id'];
$date = date('Y-m-d H:i:s');
$del = 2;
$sql = "UPDATE contract_r_signed_back SET delete_status = :del,delete_userid= :user_id, delete_date = :date WHERE id = :id";
$stmt = $conn->prepare($sql);
$stmt->bindParam(":id",$id);
$stmt->bindParam(":del",$del);
$stmt->bindParam(":user_id",$user_id);
$stmt->bindParam(":date",$date);
$stmt->execute();
header("HTTP/1.1 204 NO Content");
}catch(PDOException $e){
die("ERROR!!!". $e->getMessage());
}
}
if(isset($_GET['contractid']) && $_GET['contractid']!=""){
try{
$id = $_GET["contractid"];
@ -13,3 +32,4 @@ if(isset($_GET['contractid']) && $_GET['contractid']!=""){
die("ERROR!!!: ". $e->getMessage());
}
}
?>

6
wms/contract-repair/api/getContractData.php

@ -57,7 +57,6 @@ if(isset($_GET['contractno']) && $_GET['contractno']!='' && isset($_GET['contrac
}catch (PDOException $e ){
die("ERROR!!!: ". $e->getMessage());
}
<<<<<<< HEAD
}
//////////////////////////////
//// 合約簽回(修理)
@ -68,7 +67,8 @@ if(isset($_GET['contractno']) && $_GET['contractno']!='' && isset($_GET['contrac
if(isset($_GET['contractno']) && $_GET['contractno']!='' && isset($_GET['contracttype']) && $_GET['contracttype'] == 'r'){
try{
$contractno = $_GET['contractno'];
$sql = "SELECT a.*,b.name FROM pricereview_repair_main AS a
$sql = "SELECT a.*,b.name,b.accountid
FROM pricereview_repair_main AS a
LEFT JOIN account AS b
ON a.repairerid = b.accountid
WHERE a.contractno = :contractno ";
@ -87,6 +87,4 @@ if(isset($_GET['contractno']) && $_GET['contractno']!='' && isset($_GET['contrac
}catch(PDOException $e){
die("ERROR!!:".$e->getMessage());
}
=======
>>>>>>> 1e6352f45c1f05ebbeb9736555124e07ff5fc958
}

82
wms/contract-repair/api/postContractData.php

@ -304,7 +304,7 @@ if(isset($_POST["contractno"]) && $_POST["contractno"] != "" && isset($_POST['co
$stmt -> execute();
header('Content-Type: application/json');
$jsonData = json_encode($files);
// $jsonData = json_encode($files);
$conn->commit();
}catch(PDOException $e){
@ -321,9 +321,87 @@ if(isset($_POST["contractno"]) && $_POST["contractno"] != "" && isset($_POST['co
//// 製作人:梓誠
/// 時間 :
//////////////////////////////
if(isset($_POST['contractno']) && $_POST['contractno'] != "" && isset($_POST['contracttype']) && $_POST['contracttype'] == 'b'){
if(isset($_POST['contractno']) && $_POST['contractno'] != "" && isset($_POST['contracttype']) && $_POST['contracttype'] == 'r'){
try{
$created_at = date('Y-m-d H:i:s');
$contractno = !empty($_POST['contractno']) ? $_POST['contractno'] : null;
$company = !empty($_POST['company']) ? $_POST['company'] : null;
$repairid = !empty($_POST['repairid']) ? $_POST['repairid'] : null;
$facilityno = !empty($_POST['facilityno']) ? $_POST['facilityno'] : null;
$taxid = !empty($_POST['taxid']) ? $_POST['taxid'] : null;
$invoice = !empty($_POST['invoice']) ? $_POST['invoice'] : null;
$address = !empty($_POST['address']) ? $_POST['address'] : null;
$repair_no = !empty($_POST['repair_no']) ? $_POST['repair_no'] : null;
$total_price= !empty($_POST['total_price']) ? $_POST['total_price'] : null;
$user_id = !empty($_POST['user_id']) ? $_POST['user_id'] : null;
$type = !empty($_POST['type']) ? $_POST['type'] : null;
$sign_date = !empty($_POST['sign_date']) ? $_POST['sign_date']: null;
$fail_arr = [];
if($contractno === '') return $fail_arr[] = '合約號為必填';
if($repair_no === '') return $fail_arr[] = '報價單編號為必填';
if($company === '') return $fail_arr[] = '客戶名稱為必填';
// if($taxid === '') return $fail_arr[] = '統一編號為必填';
if($facilityno === '') return $fail_arr[] = '電梯編號為必填';
if($address === '') return $fail_arr[] = '工程地址為必填';
if($type === '') return $fail_arr[] = '工程類別為必填';
if($invoice === '') return $fail_arr[] = '發票抬頭為必填';
if(count($fail_arr)>0){
header("HTTP/1.1 422 Unprocessable Entity");
echo json_encode($fail_arr);
exit();
}
// exit();
//create contrac_r_signed_back table
$conn -> beginTransaction();
$sql = "INSERT INTO contract_r_signed_back(
repair_no,
contractno,
company,
taxid,
facilityno,
address,
type,
invoice,
repaireid,
total_price,
sign_date,
create_userid,
create_date) VALUES(
:repair_no,
:contractno,
:company,
:taxid,
:facilityno,
:address,
:type,
:invoice,
:repaireid,
:total_price,
:sign_date,
:create_userid,
:create_date
)";
$stmt = $conn -> prepare($sql);
$stmt -> bindParam(":repair_no",$repair_no);
$stmt -> bindParam(":contractno",$contractno);
$stmt -> bindParam(":company",$company);
$stmt -> bindParam(":taxid",$taxid);
$stmt -> bindParam(":facilityno",$facilityno);
$stmt -> bindParam(":address",$address);
$stmt -> bindParam(":type", $type);
$stmt -> bindParam(":invoice", $invoice);
$stmt -> bindParam(":repaireid",$repaireid);
$stmt -> bindParam(":total_price",$total_price);
$stmt -> bindParam(":sign_date",$sign_date);
$stmt -> bindParam(":create_userid",$user_id);
$stmt -> bindParam("create_date",$created_at);
$stmt -> execute();
header('Content-Type: application/json');
// $jsonData = json_encode($files);
$conn -> commit();
}catch(PDOException $e){
$conn -> rollback();
echo $e->getMessage();

39
wms/contract-repair/api/putContractData.php

@ -3,6 +3,45 @@ require_once("../conn.php");
include_once("./upload_chk.php");
ini_set ( 'date.timezone' , 'Asia/Taipei' );
// echo json_encode(explode(',', $_POST['deletefiles']));
if(isset($_POST['contracttype']) && $_POST['contracttype'] == 'r' && isset($_POST["id"]) && $_POST['id']!=""){
try{
$create_date = date('Y-m-d H:i:s');
$repair_no = !empty($POST['repair_no']) ? $_POST['repair_no'] : null;
$contractno = !empty($_POST['contractno']) ? $_POST['contractno'] : null;
$company = !empty($_POST['company']) ? $_POST['conpany'] : null;
$taxid = !empty($_POST['taxid']) ? $_POST['taxid'] : null;
$facilityno = !empty($_POST['facilityno']) ? $_POST['facilityno'] : null;
$address = !empty($_POST['address']) ? $_POST['address'] : null;
$type = !empty($_POST['type']) ? $_POST['type'] : null;
$invoice = !empty($_POST['invoice']) ? $_POST['invoice'] : null;
$repaireid = !empty($_POST['repaireid']) ? $_POST['repaireid'] : null;
// $total_price = !empty($_POST['total_price']) ? $_POST['total_price'] : null;
$user_id = !empty($_POST['user_id']) ? $_POST['user_id'] : null;
$fail_arr = [];
if(empty($repair_no)) $fail_arr[] = '號為必填';
if(empty($contractno)) $fail_arr[] = '合約號為必填';
if(empty($company)) $fail_arr[] = '客戶名稱為必填';
if(empty($taxid)) $fail_arr[] = '統一編號為必填';
if(empty($facilityno)) $fail_arr[] = '電梯號為必填';
if(empty($address)) $fail_arr[] = '工程地址為必填';
if(empty($type)) $fail_arr[] = '工程類行為必填';
if(empty($invoice)) $fail_arr[] = '發票抬頭為必填';
if(empty($repaireid)) $fail_arr[] = '維修人員為必填';
if(count($fail_arr) > 0){
header("HTTP/1.1 442 Unprocessable Entity");
echo json_encode($fail_arr);
exit();
}
$conn -> beginTransaction();
}catch(PDOException $e){
$conn->rollback();
header("HTTPP/1.1 500 Internal Server Error");
die('Error!:' .$e->getMessage());
}
}
if(isset($_POST['contractno']) && $_POST['contractno']!="" && isset($_POST["id"]) && $_POST['id']!=""){
try{
$created_at = date('Y-m-d H:i:s');

201
wms/contract-repair/contract-repair-edit.php

@ -0,0 +1,201 @@
<?php
include("../header.php");
require_once("./conn.php");
$id = $_GET['contractid'];
$sql_str = "SELECT * FROM contract_r_signed_back WHERE id = :id ORDER BY id DESC";
$stmt = $conn->prepare($sql_str);
$stmt->bindParam(':id', $id);
$stmt->execute();
$contract= $stmt->fetch(PDO::FETCH_ASSOC);
// echo '<pre>';
// print_r($contract);
// echo '</pre>';
// $files_id = $contract['files_id'];
// $sql_str = "SELECT * FROM contract_back_files WHERE files_id = :files_id ";
// $stmt = $conn->prepare($sql_str);
// $stmt->bindParam(':files_id', $files_id);
// $stmt->execute();
// $files= $stmt->fetchAll(PDO::FETCH_ASSOC);
// $files = json_encode($files);
$accounttype = "M";
$sql_str = "SELECT accountid, name FROM account WHERE accounttype = :accounttype";
$stmt = $conn->prepare($sql_str);
$stmt->bindParam(":accounttype", $accounttype);
$stmt -> execute();
$persons = $stmt->fetchAll(PDO::FETCH_ASSOC);
$persons = array_map(function($person){
return [
'view'=>$person['accountid'] .'-'. $person['name'],
'value'=>$person['accountid'],
'name'=>$person['name']
];
}, $persons);
?>
<link rel="stylesheet" href="./styles/style.css">
<link rel="stylesheet" href="semantic/dist/semantic.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css" integrity="sha512-z3gLpd7yknf1YoNbCzqRKc4qyor8gaKU1qmn+CShxbuBusANI9QpRohGBreCFkKxLhei6S9CQXFEbbKuqLg0DA==" crossorigin="anonymous" referrerpolicy="no-referrer" />
<script defer src="./js/alpinejs/cdn.min.js"></script>
<script src="./js/axios/axios.min.js"></script>
<script defer src="https://cdn.jsdelivr.net/npm/alpinejs@3.x.x/dist/cdn.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/@fancyapps/ui@5.0/dist/fancybox/fancybox.umd.js"></script>
<link
rel="stylesheet"
href="https://cdn.jsdelivr.net/npm/@fancyapps/ui@5.0/dist/fancybox/fancybox.css"
/>
<div class="contract-management" x-data='contract_edit'>
<div class="form" method="post" id="form" enctype="multipart/form-data" >
<input type="hidden" name='form_name' value="main_form" />
<div>
<table class="table table-bordered query-table table-striped table-bordered display compact" style="width:99%;margin-left:.5%">
<thead>
<tr>
<td colspan="8">
<h3 style='text-align:center'>合約管理(修理)</h3>
</td>
</tr>
</thead>
<tbody style="font-weight: bolder;margin-bottom: 20px" >
<tr>
<td colspan="7" style='vertical-align: middle;border-right:0px;'>
<h4>檢視合約</h4>
</td>
<td class="text-right" style='border-left:0px;'>
<button type="button" id="btn_close" class="btn btn-default" onclick="window.history.back();">返回</button>
<button type="button" id="btn_close" class="btn btn-default" onclick="window.close();">關閉分頁</button>
</td>
</tr>
<tr>
<td style="vertical-align: middle">立約人</td>
<td>
<input class="form-control disabled_select" type="text" x-model="data.company" >
<p class="alerttext" x-show="data.company==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td>
<td style="vertical-align: middle">維保人員</td>
<td style="vertical-align: middle">
<select class="repaireid" id="repaireid" x-model="data.repaireid">
<option value="">選擇營業員</option>
<?php foreach($persons as $person): ?>
<option value="<?php echo $person['value']; ?>"><?php echo $person['view']; ?></option>
<?php endforeach ?>
</select>
<p class="alerttext" x-show="data.repaireid==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td>
<td style="vertical-align: middle">電梯編號</td>
<td>
<input class="form-control disabled_select" type="text" name="uscc" x-model="data.facilityno" >
<p class="alerttext" x-show="data.facilityno==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td>
<td style="vertical-align: middle">報價單編號</td>
<td>
<input class="form-control disabled_select" type="text" name="uscc" x-model="data.repair_no" >
<p class="alerttext" x-show="data.repair_no==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td>
</tr>
<tr>
<td style="vertical-align: middle">工程類別</td>
<td>
<input class="form-control disabled_select" type="text" name="uscc" x-model="data.type" >
<p class="alerttext" x-show="data.type==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td>
<td style="vertical-align: middle">簽訂時間</td>
<td>
<input class="form-control disabled_select" type="text" name="sign_date" x-model="data.sign_date" >
<p class="alerttext" x-show="data.sign_date==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td>
<td style="vertical-align: middle">發票抬頭</td>
<td>
<input class="form-control disabled_select" type="text" name="uscc" x-model="data.invoice" >
<p class="alerttext" x-show="data.invoice==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td>
<td style="vertical-align: middle">統一編號</td>
<td>
<input class="form-control disabled_select" type="text" name="uscc" x-model="data.taxid" >
<p class="alerttext" x-show="data.taxid==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td>
</tr>
<tr>
<td style="vertical-align: middle">工程地址</td>
<td colspan=3>
<input class="form-control disabled_select" type="text" name="uscc" x-model="data.address" >
<p class="alerttext" x-show="data.address==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td>
<!-- <td style="vertical-align: middle">附件上傳</td>
<td colspan=3>
<input type="file" name="file[]" multiple draggable="true" @change="uploadFiles($event)" />
<p class="alerttext" x-show="data.lm_tel==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td> -->
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<!-- <tr>
<td style="vertical-align: middle">附件</td>
<td colspan=7>
<div class="images">
<template x-for="file in data.files" :key="file.id">
<div class="image">
<a :href="'./images/contracts/' + file.file_name" data-fancybox="gallery" :data-src="'./images/contracts/' + file.file_name" data-caption="">
<img :src="'./images/contracts/' + file.file_name" />
</a>
<i class="fas fa-times" @click="deleteFileFn(file.id)"></i>
</div>
</template>
</div>
</td>
</tr> -->
</tbody>
</table>
<button @click="save()" :disabled="isLoading" type="button" class="btn btn-primary btn-lg pull-right savebtn">
<template x-if="!isLoading">
<span>更新</span>
</template>
<template x-if="isLoading">
<div class="loader"></div>
</template>
</button>
<button type="button" class="btn btn-primary btn-lg pull-right savebtn" @click="window.location.href='./contract-repair-management.php?<?php echo $token_link; ?>'">回列表</button>
</div>
</div>
</div>
<script src="./js/jquery/jquery-3.1.1.min.js"></script>
<script src="semantic/dist/semantic.min.js" ></script>
<script src="./js/alpine.js"></script>
<script>
const user_id = '<?php echo $user_id; ?>';
const user_name = '<?php echo $user_name; ?>';
const id = <?php echo $contract['id']?>;
const repair_no = '<?php echo $contract['repair_no'];?>'
const contractno = '<?php echo $contract['contractno'];?>'
const company = '<?php echo $contract['company'];?>'
const taxid = '<?php echo $contract['taxid'];?>'
const facilityno = '<?php echo $contract['facilityno'];?>'
const address = '<?php echo $contract['address'];?>'
const type = '<?php echo $contract['type'];?>'
const invoice = '<?php echo $contract['invoice'];?>'
const repaireid = '<?php echo $contract['repaireid'];?>'
// const total_price = '<?php echo $contract['total_price'];?>'
const sign_date = '<?php echo $contract['sign_date'];?>'
$('#table_index').DataTable(
{
"order": [
[0, "desc"],
]
}
);
Fancybox.bind('[data-fancybox="gallery"]', {
});
</script>

10
wms/contract-repair/contract-repair-input.php

@ -95,8 +95,8 @@ $contractpersons = $stmt->fetchAll(PDO::FETCH_ASSOC);
<td style="vertical-align: middle">簽訂時間</td>
<td>
<input class="form-control disabled_select" type="date" name="check_date" x-model="data.check_date" >
<p class="alerttext" x-show="data.contract_begin_date==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
<input class="form-control disabled_select" type="date" name="sign_date" x-model="data.sign_date" >
<p class="alerttext" x-show="data.sign_date==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td>
<td style="vertical-align: middle">發票抬頭</td>
<td>
@ -124,14 +124,14 @@ $contractpersons = $stmt->fetchAll(PDO::FETCH_ASSOC);
<!-- <td></td> -->
</tr>
<tr>
<td style="vertical-align: middle">維修人員</td>
<!-- <td style="vertical-align: middle">維修人員</td>
<td>
<input class="form-control disabled_select" type="text" name="repairer" x-model="data.repairer" >
<p class="alerttext" x-show="data.repairer==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td>
</td> -->
<td style="vertical-align: middle">報價單編號</td>
<td style="vertical-align: middle">
<input class="form-control disabled_select" type="text" name="repair_no" x-model="data.repair_no" >
<input class="form-control disabled_select" type="text" name="repair_no" x-model="data.repair_no" disabled="disabled">
<p class="alerttext" x-show="data.repair_no==''"><i class="fa-solid fa-circle-xmark"></i>未填寫</p>
</td>
<td style="vertical-align: middle">附件</td>

119
wms/contract-repair/contract-repair-management.php

@ -0,0 +1,119 @@
<?php
include("../header.php");
require_once("./conn.php");
$sql_str = "SELECT * FROM contract_r_signed_back WHERE 1=1 AND delete_status = 1 ORDER BY id DESC";
$stmt = $conn->prepare($sql_str);
$stmt->execute();
$contracts= $stmt->fetchAll(PDO::FETCH_ASSOC);
?>
<link rel="stylesheet" href="./styles/style.css">
<link rel="stylesheet" href="semantic/dist/semantic.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css" integrity="sha512-z3gLpd7yknf1YoNbCzqRKc4qyor8gaKU1qmn+CShxbuBusANI9QpRohGBreCFkKxLhei6S9CQXFEbbKuqLg0DA==" crossorigin="anonymous" referrerpolicy="no-referrer" />
<script defer src="./js/alpinejs/cdn.min.js"></script>
<script src="./js/axios/axios.min.js"></script>
<div class="contract-management" x-data="{
deleteFn(id,user){
if(confirm('確定要刪除嗎?')){
axios.get('./api/deleteNewContractData.php?contracttype=r&contractid='+id+'&user_id='+user).then(res=> {
console.log(res);
if(res.status === 204){
alert('刪除成功!')
location.reload();
}
})
}
}
}">
<div style="overflow-x:auto;margin-top:12px">
<a href="contract-repair-input.php?function_name=repair&<?php echo $token_link; ?>" class="btn btn-info btn-sm">
<span class="glyphicon glyphicon-plus"></span>
</a>
<table id="table_index" class="table table-striped table-bordered" style="width:100%">
<thead>
<tr>
<th>項次</th>
<th>合約號</th>
<th>客戶名稱</th>
<th>統編</th>
<th>總金額</th>
<th>建檔者</th>
<th>建立時間</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<?php foreach($contracts as $key => $contract): ?>
<tr>
<td><?php echo $contract['id']; ?></td>
<td><?php echo $contract['contractno'] ?></td>
<td><?php echo $contract['company'] ?></td>
<td><?php echo $contract['taxid'] ?></td>
<td><?php echo $contract['total_price']?></td>
<td><?php echo $contract['create_userid'] ?></td>
<td><?php echo $contract['create_date'] ?></td>
<td style="width:30px">
<p>
<a href="contract-repair-edit.php?&contractid=<?php echo $contract['id']; ?>&function_name=repair&<?php echo $token_link; ?>" class="btn btn-info btn-sm">
<span class="glyphicon glyphicon-pencil"></span>
</a>
<a href="javascript:;" class="btn btn-info btn-sm" style="margin-left:10px;" @click="deleteFn(<?php echo $contract['id']; ?>,'<?php echo $user_id;?>')">
<span class="glyphicon glyphicon-remove"></span>
</a>
</p>
</td>
</tr>
<?php endforeach ?>
</tbody>
</table>
</div>
</div>
<style>
table {
table-layout:fixed;
width: 100%;
}
td {
word-wrap:break-word;
}
img {
width:125px;
}
.width_style_1 {
width:125px;
}
table{
width:100%;
}
#table_index_filter{
float:right;
}
#table_index_paginate{
float:right;
}
label {
display: inline-flex;
margin-bottom: .5rem;
margin-top: .5rem;
}
</style>
<script src="semantic/dist/semantic.min.js" ></script>
<script>
$('#table_index').DataTable(
{
"order": [
[0, "desc"],
]
}
);
</script>

149
wms/contract-repair/js/alpine.js

@ -356,7 +356,7 @@ const contractDownload = ()=> {
if (typeof obj[key] === 'object' && obj[key] !== null) {
clone[key] = this.deepClone(obj[key]);
if(clone[key].text != undefined){
// clone[key].text = clone[key].text.replace(/<input\s.*?>/, '___')
// clone[key].text = clone[key].text.replace(/<input\s.* /, '___')
}
} else {
clone[key] = obj[key]
@ -943,13 +943,15 @@ const contractRepair = ()=>{
contractno:'',
company:'',
repairer:'',
repairid:'',
facilityno:'',
taxid:'',
invoice:'', //發票抬頭
type:'', //工程類別需新增,用 post
address:'',
repaire_no:'',
total_price:''
repair_no:'',
total_price:'',
sign_date:''
},
step:1,
isLoading:false,
@ -973,7 +975,6 @@ const contractRepair = ()=>{
// 抓資料
getContractDate(){
axios.get('./api/getContractData.php?contracttype=r&contractno='+this.data.contractno).then(res=>{
if(!res.data){
this.step = 2;
this.isLoading = false;
@ -981,7 +982,7 @@ const contractRepair = ()=>{
return
}
if(!this.customize){
console.log(res.data);
// console.log(res.data);
this.data.contractno = res.data.contractno;
this.data.company = res.data.company;
this.data.repairer = res.data.name;
@ -991,11 +992,13 @@ const contractRepair = ()=>{
this.data.address = res.data.address;
this.data.repair_no = res.data.repair_no;
this.data.total_price= res.data.total_price;
this.data.repairid = res.data.accountid;
this.data.sign_date = res.data.sign_date;
}
this.step = 2;
this.isLoading = false;
console.log(this);
// console.log(user_name);
console.log(this.data.sign_date);
}).catch(err=>{
console.log(err);
this.isLoading = false
@ -1014,6 +1017,8 @@ const contractRepair = ()=>{
this.data.address = '';
this.data.repair_no = '';
this.data.total_price = '';
this.data.repairid = '';
this.data.sign_date = '';
return;
}
@ -1024,23 +1029,63 @@ const contractRepair = ()=>{
const form = new FormData();
form.append('contractno', this.data.contractno);
form.append('company', this.data.company);
form.append('repairer', this.data.repairer);
form.append('repairid', this.data.repairid);
form.append('facilityno', this.data.facilityno);
form.append('taxid', this.data.taxid);
form.append('invoice', this.data.invoice);
form.append('address', this.data.address);
form.append('repair_no', this.data.reapir_no);
form.append('repair_no', this.data.repair_no);
form.append('total_price', this.data.total_price);
form.append('contracttype', 'b')
form.append('sign_date', this.data.sign_date);
form.append('contracttype', 'r');
form.append('user_id', user_id);
form.append('type', this.data.type);
axios.post('./api/postContractData.php',form).then(res=>{
console.log(res.status);
})
if(res.status === 200){
alert('儲存成功');
this.step = 1;
this.data.contractno= '';
this.data.company = '';
this.data.repairid = '';
this.data.facilityno= '';
this.data.repairer = '';
this.data.taxid = '';
this.data.invoice = '';
this.data.address = '';
this.data.repair_no = '';
this.data.total_price= '';
this.data.user_id = '';
this.data.type = '';
this.data.sign_date = '';
}
this.isLoading = false;
}).catch(error=>{
let code = error.response.status;
if(code == 422){
this.fail_arr = error.response.data;
this.errorFn();
}
if(code == 500){
alert('儲存失敗!可能為以下錯誤:\n' + error.response.data);
}
this.isLoading = false;
})
},
errorFn(){
let msg = '';
for(let i=0;i < this.fail_arr.length; i++){
msg += this.fail_arr[i] + '、';
}
alert(msg);
},
uploadFiles(e){
this.data.files = e.target.files;
}
}
}
};
const contractInput =()=> {
return{
@ -1370,3 +1415,81 @@ const contractNewApply = ()=>{
}
}
}
const contract_edit = ()=>{
return {
isLoading:false,
data:{
id: id ,
repair_no : repair_no ,
contractno: contractno ,
company : company ,
taxid : taxid ,
facilityno: facilityno ,
address : address ,
type : type ,
invoice : invoice ,
repaireid : repaireid ,
total_price:total_price,
sign_date : sign_date ,
// user_id : user_id,
},
fail_arr:[],
deleteFileFn(id){
if(!confirm("確定要刪除嗎?")) return
this.data.files = this.data.files.filter(file=> id != file.id)
this.data.deletefiles.push(id)
console.log(this.data.deletefiles);
},
save(){
this.isLoading = true
const form = new FormData();
form.append("id",this.data.id);
form.append("repair_no",this.data.repair_no);
form.append("contractno",this.data.contractno);
form.append("company",this.data.company);
form.append("taxid",this.data.taxid);
form.append("facilityno",this.data.facilityno);
form.append("address",this.data.address);
form.append("type",this.data.type);
form.append("invoice",this.data.invoice);
form.append("repaireid",this.data.repaireid);
form.append("total_price",this.data.total_price);
form.append("sign_date",this.data.sign_date);
form.append("user_id",user_id);
form.append('contracttype', 'r');
axios.post("./api/putContractData.php", form).then(res=>{
console.log(res.data)
if(res.status === 200){
alert("更新成功");
window.location.reload();
}
this.isLoading = false
}).catch(error=>{
let code = error.response.status;
if(code == 422){
this.fail_arr = error.response.data
this.errorFn()
}
if(code == 500){
alert("更新失敗!可能為以下錯誤:\n" + error.response.data)
}
this.isLoading = false
})
},
uploadFiles(e){
this.data.newfiles = e.target.files
},
errorFn(){
let msg = ""
for(let i = 0; i < this.fail_arr.length; i++){
msg += this.fail_arr[i] + "、"
}
alert(msg)
}
}
}

4
wms/database.php

@ -31,8 +31,8 @@ try {
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
} catch (PDOException $e) {
// echo "fail";
// echo $e->getMessage();
echo "fail";
echo $e->getMessage();
}
if ($link) {
mysqli_query($link, 'SET NAMES utf8');

Loading…
Cancel
Save