Browse Source

1025合約書生成修改完成

gary
10994015 2 years ago
parent
commit
cfb1ee98a3
  1. 1
      asdas.txt
  2. 16
      wms/contract/contract-download.php
  3. 18
      wms/contract/export-pdf.php
  4. 8
      wms/contract/js/alpine.js
  5. 85
      wms/contract/prviewPdf.php
  6. 2
      wms/mkt/pricereview-index.php

1
asdas.txt

@ -0,0 +1 @@
sdasd

16
wms/contract/contract-download.php

@ -16,7 +16,7 @@ if(isset($_GET['id']) && $_GET['id']!=""){
$stmt->execute();
$contracts = $stmt->fetchAll(PDO::FETCH_ASSOC);
$contract = $contracts[0];
if($contract['status'] !== "YY"){
if(($contract['status'] !== "YY" && $user_id != 'M0107') && $user_id != 'M0174'){
echo '<script type="text/javascript">
alert("非法訪問。");
window.history.back();
@ -45,10 +45,18 @@ if(isset($_GET['id']) && $_GET['id']!=""){
$noteArr = explode(",", $contracts[0]['note']);
$qty = $contracts[0]['item_qty'];
foreach($contracts as $idx=>$amount){
$isset = false;
if($amount['pay_kind']==1 || $amount['pay_kind']==2 || $amount['pay_kind']==3){
if($amount['pay_scale'] > 0){
$buy_total_price = $buy_total_price + $amount['pay_amount'];
$buyArr[] = ['installment'=>$amount['pay_kind'], 'scale'=>$amount['pay_scale'], 'amount'=>$amount['pay_amount'], 'note'=>$amount['note']];
foreach($buyArr as $buy){
if($buy['installment'] == $amount['pay_kind']){
$isset = true;
}
}
if(!$isset){{
$buyArr[] = ['installment'=>$amount['pay_kind'], 'scale'=>$amount['pay_scale'], 'amount'=>$amount['pay_amount'], 'note'=>$amount['note']];
}
if($amount['pay_kind'] == 2){
$buyNo2Pay = true;
}
@ -61,7 +69,7 @@ if(isset($_GET['id']) && $_GET['id']!=""){
}
}
}
}
}catch (PDOException $e ){
die("ERROR!!!: ". $e->getMessage());
}
@ -327,7 +335,6 @@ if(isset($_GET['id']) && $_GET['id']!=""){
</table>
</div>
<form action="prviewPdf.php?&<?php echo $token_link; ?>" id="form" method="post" x-ref="form" style="display:none">
<input type="hidden" name="list" id="prview-list" />
<input type="hidden" name="prviewType" id="prview-type" />
@ -367,6 +374,7 @@ if(isset($_GET['id']) && $_GET['id']!=""){
const people = <?php echo $noteArr[1]; ?>;
const floor = <?php echo $noteArr[2]; ?>;
const speed = <?php echo $noteArr[3]; ?>;
console.log(buyArr);
buyArr.forEach((item, idx) => {
if(item.scale > 0){
if(item.installment == 1){

18
wms/contract/export-pdf.php

@ -37,16 +37,16 @@ if(isset($_POST['html'])){
$textHeight = 8.5; // 字體大小
// 計算需要的行和列以填滿頁面
$cols = intval($width / $textWidth) + 1;
$rows = intval($height / $textHeight)/0.75 + 1;
$cols = intval($width / $textWidth)/0.85 + 1;
$rows = intval($height / $textHeight)/0.75 ;
for ($i = 0; $i < $rows; $i++) {
for ($j = 0; $j < $cols; $j++) {
$x = $j * $textWidth *1.25; //每段文字間距
$x = $j * $textWidth *0.83; //每段文字間距
$y = $i * $textHeight * 0.75; // 行高
$this->StartTransform();
$this->Rotate(0, $x + ($textWidth / 2), $y + ($textHeight / 2)); // 在文本的中心点处旋转
$this->Text($x, $y, $date.$_POST['user_name'].$watermarkText);
$this->Rotate(8, $x + ($textWidth / 2), $y + ($textHeight / 2)); // 在文本的中心点处旋转
$this->Text($x, $y, $watermarkText);
$this->StopTransform();
}
}
@ -130,7 +130,6 @@ if(isset($_POST['html'])){
// 加入 HTML 和 CSS
$footer = $_POST['footer'];
$fake = "Lorem ipsum dolor sit amet consectetur adipisicing elit. Doloremque eum nostrum voluptatibus ab ipsum cumque recusandae molestias illum velit, amet aliquam vel accusantium assumenda at vero optio! Saepe, culpa quia?";
// 寫入 HTML 到 PDF
$pdf->writeHTML($html.$footer, true, false, true, false, '');
@ -170,6 +169,7 @@ if(isset($_POST['html'])){
$pdf->writeHTML($html, true, false, true, false, '');
$pdf->AddPage();
$pdf->setShowFooterText(true);
$pdf->lastPage();
@ -179,7 +179,11 @@ if(isset($_POST['html'])){
$pdf->setPrintFooter(true);
}
$pdf->AddPage();
$pdf->setCellHeightRatio(1.8);
$pdf->setShowFooterText(false);
$pdf->writeHTML($_POST['affix1'], true, false, true, false, '');
$pdf->setPrintFooter(false);
// 設置 HTTP header以輸出 PDF 文件
header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename="tcpdf10.pdf"');

8
wms/contract/js/alpine.js

@ -717,7 +717,6 @@ const alpineData = {
this.buydata.list.plaintext[4].text = this.buydata.list.plaintext[4].text.replace('____', this.buyfill2);
this.buystandardData.list.plaintext[4].text = this.buydata.list.plaintext[4].text.replace('____', this.buyfill2);
this.buyonstandardViewData.list.plaintext[4].text = this.buydata.list.plaintext[4].text.replace('____', this.buyfill2);
console.log(this.buystandardData.list.plaintext[4].text);
}
this.isBuyInputIng = false
this.buydata.list.plaintext[1].text = '產品規格:如附表'+ this.affixArr[Number(this.buyAffix)] +'。'
@ -726,6 +725,13 @@ const alpineData = {
this.buydata.list.plaintext[5].text = '交貨期限及甲方配合事項:<br>乙方應於接獲甲方圖色確認第&nbsp;'+this.buyfill1+'&nbsp;日(應於合約簽訂日起兩年內),將本工程所需之全部設備、器材 運抵工地,甲方應提供適當的場所供乙方貯放設備、器材。'
this.buystandardData.list.plaintext[5].text = '交貨期限及甲方配合事項:<br>乙方應於接獲甲方圖色確認第&nbsp;'+this.buyfill1+'&nbsp;日(應於合約簽訂日起兩年內),將本工程所需之全部設備、器材 運抵工地,甲方應提供適當的場所供乙方貯放設備、器材。'
this.buyonstandardViewData.list.plaintext[5].text = '交貨期限及甲方配合事項:<br>乙方應於接獲甲方圖色確認第&nbsp;'+this.buyfill1+'&nbsp;日(應於合約簽訂日起兩年內),將本工程所需之全部設備、器材 運抵工地,甲方應提供適當的場所供乙方貯放設備、器材。'
let buyAffixHtml = ''
for(let i=0;i<Number(this.buyAffix);i++){
buyAffixHtml += `<br>${numberToSmallChinese(i+1)}、附表${numberToSmallChinese(i+1)}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;共&nbsp;1&nbsp;張`
}
this.buydata.list.plaintext[15].text = this.buydata.list.plaintext[15].text + buyAffixHtml
this.buystandardData.list.plaintext[15].text = this.buystandardData.list.plaintext[15].text + buyAffixHtml
this.buyonstandardViewData.list.plaintext[15].text = this.buyonstandardViewData.list.plaintext[15].text + buyAffixHtml
},
affixArr:['', '一', '一、二','一、二、三', '一、二、三、四', '一、二、三、四、五'],
isBuyInputIng:true,

85
wms/contract/prviewPdf.php

@ -190,10 +190,11 @@ function removeTrailingBr($string) {
const formattedDate = `${year}${month}${day}${hours}${minutes}${seconds}`;
let token = formattedDate + '<?php echo $partyAcontractno; ?><?php echo $partyA; ?>永佳捷<?php echo $total_price; ?>'
let newtoken = formattedDate + '<?php echo $person; ?>/<?php echo $user_name; ?>' + CryptoJS.MD5(CryptoJS.SHA256(CryptoJS.SHA256(CryptoJS.MD5(token).toString()).toString() + this.random).toString()).toString()
let newtoken = formattedDate + '-' + CryptoJS.MD5(CryptoJS.SHA256(CryptoJS.SHA256(CryptoJS.MD5(token).toString()).toString() + this.random).toString()).toString() + '.'
console.log(newtoken);
let html = this.$refs.prview.innerHTML
let footer = this.$refs.footer.innerHTML
let affix1 = this.$refs.affix1.innerHTML
// html = this.$refs.footer.innerHTML
// axios.post('./export-pdf.php', {'html':html}).then(res=>{
// console.log(res);
@ -201,6 +202,7 @@ function removeTrailingBr($string) {
const form = new FormData();
form.append('html', html);
form.append('footer', footer);
form.append('affix1', affix1);
form.append('css',this.css);
form.append('user_name', '<?php echo $user_name; ?>');
form.append('contract_no', '<?php echo $partyAcontractno; ?>');
@ -485,94 +487,95 @@ function removeTrailingBr($string) {
</tr>
</table> -->
</div>
<div class="affix1" x-ref="affix" x-show="true">
<div class="affix1" x-ref="affix1" x-show="true">
<h1 style="text-align:center">升降設備除外工程表</h1>
<table>
<tr>
<td>一、</td>
<td style="width:40px">一、</td>
<td>機械室之建造,含預留出入口、通風照明、自動閉鎖裝置,及天花板上之保養用吊鉤。</td>
</tr>
<tr>
<td>二、</td>
<td>通往機械室之樓梯及加護欄杆工程。</td>
<td style="width:40px">二、</td>
<td style="width:460px">通往機械室之樓梯及加護欄杆工程。</td>
</tr>
<tr>
<td>三、</td>
<td>機械室基礎台需用防濕之瀝青鐵筋混凝土及地板防塵工事。</td>
<td style="width:40px">三、</td>
<td style="width:460px">機械室基礎台需用防濕之瀝青鐵筋混凝土及地板防塵工事。</td>
</tr>
<tr>
<td>四、</td>
<td>機械室及升降路中間之橫樑或工字樑之安裝工程。</td>
<td style="width:40px">四、</td>
<td style="width:460px">機械室及升降路中間之橫樑或工字樑之安裝工程。</td>
</tr>
<tr>
<td>五、</td>
<td>自屋外至機械室之動力及照明用配線電源開關插座,及接地線等電路工程。</td>
<td style="width:40px">五、</td>
<td style="width:460px">自屋外至機械室之動力及照明用配線電源開關插座,及接地線等電路工程。</td>
</tr>
<tr>
<td>六、</td>
<td>升降路及機械室以外監視盤、電鈴、電話之配管與配線工程。</td>
<td style="width:40px">六、</td>
<td style="width:460px">升降路及機械室以外監視盤、電鈴、電話之配管與配線工程。</td>
</tr>
<tr>
<td>七、</td>
<td>升降路之建造及底部之防水工程及緩衝器水泥台工程。</td>
<td style="width:40px">七、</td>
<td style="width:460px">升降路之建造及底部之防水工程及緩衝器水泥台工程。</td>
</tr>
<tr>
<td>八、</td>
<td>機坑照明保養用之開關及插座,鐵爬梯。</td>
<td style="width:40px">八、</td>
<td style="width:460px">機坑照明保養用之開關及插座,鐵爬梯。</td>
</tr>
<tr>
<td>九、</td>
<td>各樓按鈕開關之留洞工程及安裝後之固定與週邊裝飾工程。</td>
<td style="width:40px">九、</td>
<td style="width:460px">各樓按鈕開關之留洞工程及安裝後之固定與週邊裝飾工程。</td>
</tr>
<tr>
<td>十、</td>
<td>升降路內甲方不得裝設有任何與升降設備無關之配線、電線配管、水管、風管等設備。</td>
<td style="width:40px">十、</td>
<td style="width:460px">升降路內甲方不得裝設有任何與升降設備無關之配線、電線配管、水管、風管等設備。</td>
</tr>
<tr>
<td>十一、</td>
<td>安裝所需水泥、砂石、水電與供試車用動力電源。</td>
<td style="width:40px">十一、</td>
<td style="width:460px">安裝所需水泥、砂石、水電與供試車用動力電源。</td>
</tr>
<tr>
<td>十二、</td>
<td>升降路及機房之建造,電源設備之容量及位置等,需符合國家標準(CNS-2866)及建築法規等規定。</td>
<td style="width:40px">十二、</td>
<td style="width:460px">升降路及機房之建造,電源設備之容量及位置等,需符合國家標準(CNS-2866)及建築法規等規定。</td>
</tr>
<tr>
<td>十三、</td>
<td>機械運抵工地後供給儲存倉庫。</td>
<td style="width:40px">十三、</td>
<td style="width:460px">機械運抵工地後供給儲存倉庫。</td>
</tr>
<tr>
<td colspan="2">備註:CNS-2866國家標準建築物電梯有關之法規: </td>
</tr>
<tr>
<td>1.</td>
<td>機械室內應設有照明及通風設備,以利管理檢查,照明應在100LUX(米一燭光)以上,通風設備應能使室內溫度保持在攝氏40度以下。</td>
<td style="width:25px">1.</td>
<td style="width:475px">機械室內應設有照明及通風設備,以利管理檢查,照明應在100LUX(米一燭光)以上,通風設備應能使室內溫度保持在攝氏40度以下。</td>
</tr>
<tr>
<td>2.</td>
<td>機械室之出入口應加鎖,其裝置應良好。 </td>
<td style="width:25px">2.</td>
<td style="width:475px">機械室之出入口應加鎖,其裝置應良好。 </td>
</tr>
<tr>
<td>3.</td>
<td>由機械室至走廊,樓梯間應便於通行,樓梯應加裝扶手,其與水平面之傾斜角度,應不超過60度。 </td>
<td style="width:25px">3.</td>
<td style="width:475px">由機械室至走廊,樓梯間應便於通行,樓梯應加裝扶手,其與水平面之傾斜角度,應不超過60度。 </td>
</tr>
<tr>
<td>4.</td>
<td>機械室出入門之構造,應有下述裝置: <br>
<td style="width:25px">4.</td>
<td style="width:475px">機械室出入門之構造,應有下述裝置: <br>
A:能自動關閉者。 <br>
B:有彈簧鎖或其類似裝置,以便室內不用鎖匙,而能開門。 <br>
C:除屋頂開口部份以外,機械式牆壁,應能耐火。(二小時防火時效)
</td>
</tr>
<tr>
<td>5.</td>
<td>升降路內不得設置與升降機無關之配管及配線。 </td>
<td style="width:25px">5.</td>
<td style="width:475px">升降路內不得設置與升降機無關之配管及配線。 </td>
</tr>
<tr>
<td>6.</td>
<td>任一升降路下部之任何部份,供人使用或類似使用時配重側比照車廂,同樣必須裝設緊急安全裝置。</td>
<td style="width:25px">6.</td>
<td style="width:475px">任一升降路下部之任何部份,供人使用或類似使用時配重側比照車廂,同樣必須裝設緊急安全裝置。</td>
</tr>
<tr>
<td>7.</td>
<td>若有火警受信總機時,甲方需提供"火警受信總機"檢出信號及通往升降道內之配管配線(0.75MM² × 3) </td>
<td style="width:25px">7.</td>
<td style="width:475px">若有火警受信總機時,甲方需提供"火警受信總機"檢出信號及通往升降道內之配管配線(0.75MM² × 3) </td>
</tr>
</table>
</div>

2
wms/mkt/pricereview-index.php

@ -425,7 +425,7 @@ if ($user_id=="M0023") {
</p>
</td>-->
<td>
<?php if($data['status'] === 'YY'){ ?>
<?php if($data['status'] === 'YY' || $user_id=="M0107" || $user_id == "M0174"){ ?>
<a href="../contract/contract-download.php?id=<?php echo $data['id'] . '&' . $para?>">合約書申請</a>
<?php }else{ echo "-"; } ?>
</td>

Loading…
Cancel
Save