m0_70156489 1 week ago
parent
commit
12f8f67d74

+ 27 - 12
application/admin/controller/Procuremen.php

@@ -1908,26 +1908,34 @@ class Procuremen extends Backend
      */
      */
     protected function maskSupplierQuoteLineBeforeDeadline(array &$line): void
     protected function maskSupplierQuoteLineBeforeDeadline(array &$line): void
     {
     {
-        $text = '未到截止时间';
-        $line['amount_filled'] = false;
-        $line['delivery_filled'] = false;
-        $line['unit_price_text'] = $text;
+        $amountFilled = !empty($line['amount_filled']);
+        $deliveryFilled = !empty($line['delivery_filled']);
+
+        $line['unit_price_text'] = $amountFilled ? '未到截止时间' : '未填写';
         $line['amount_show'] = '';
         $line['amount_show'] = '';
         if (array_key_exists('amount_text', $line)) {
         if (array_key_exists('amount_text', $line)) {
-            $line['amount_text'] = $text;
+            $line['amount_text'] = $line['unit_price_text'];
         }
         }
-        $line['delivery_show'] = $text;
+
+        $deliveryText = $deliveryFilled ? '未到截止时间' : '未填写';
+        $line['delivery_show'] = $deliveryText;
         if (array_key_exists('delivery_text', $line)) {
         if (array_key_exists('delivery_text', $line)) {
-            $line['delivery_text'] = $text;
+            $line['delivery_text'] = $deliveryText;
         }
         }
         $line['delivery_ymd'] = '';
         $line['delivery_ymd'] = '';
-        $line['subtotal_text'] = '';
+
+        $line['subtotal_text'] = $amountFilled ? '未到截止时间' : '';
         $line['subtotal_num'] = null;
         $line['subtotal_num'] = null;
+
+        $line['amount_quote_pending'] = $amountFilled;
+        $line['delivery_quote_pending'] = $deliveryFilled;
+        $line['quote_before_deadline'] = $amountFilled || $deliveryFilled;
+        $line['amount_filled'] = false;
+        $line['delivery_filled'] = false;
         $line['is_quoted'] = false;
         $line['is_quoted'] = false;
         if (array_key_exists('quote_label', $line)) {
         if (array_key_exists('quote_label', $line)) {
-            $line['quote_label'] = $text;
+            $line['quote_label'] = ($amountFilled || $deliveryFilled) ? '未到截止时间' : '未报价';
         }
         }
-        $line['quote_before_deadline'] = true;
     }
     }
 
 
     /**
     /**
@@ -4686,6 +4694,10 @@ class Procuremen extends Backend
                 }
                 }
                 $qtyStr = $qtyBySid[$sid] ?? '';
                 $qtyStr = $qtyBySid[$sid] ?? '';
                 $amountNum = $this->parseProcuremenMoneyNumber($d['amount'] ?? null);
                 $amountNum = $this->parseProcuremenMoneyNumber($d['amount'] ?? null);
+                $am = trim((string)($d['amount'] ?? ''));
+                $amountFilled = ($am !== '' && $am !== '0' && $am !== '0.00');
+                $deliveryYmd = $d['delivery_ymd'] ?? $this->formatDeliveryYmd($d['delivery'] ?? null);
+                $deliveryFilled = ($deliveryYmd !== '' && !preg_match('/^0000-00-00/i', $deliveryYmd));
                 $sub = null;
                 $sub = null;
                 if (!$isVoid && $amountNum !== null) {
                 if (!$isVoid && $amountNum !== null) {
                     $sub = $this->calcProcuremenDetailSubtotal($d['amount'] ?? null, $qtyStr);
                     $sub = $this->calcProcuremenDetailSubtotal($d['amount'] ?? null, $qtyStr);
@@ -4693,9 +4705,12 @@ class Procuremen extends Backend
                 $ct = $this->resolveDetailSupplierOperTime($d);
                 $ct = $this->resolveDetailSupplierOperTime($d);
                 $line = [
                 $line = [
                     'cgymc'           => $gymcBySid[$sid] ?? trim((string)($d['CGYMC'] ?? '')),
                     'cgymc'           => $gymcBySid[$sid] ?? trim((string)($d['CGYMC'] ?? '')),
-                    'unit_price_text' => $amountNum !== null ? $this->formatProcuremenMoneyDisplay($amountNum) : trim((string)($d['amount'] ?? '')),
+                    'unit_price_text' => $amountNum !== null ? $this->formatProcuremenMoneyDisplay($amountNum) : $am,
                     'subtotal_text'   => $sub !== null ? $this->formatProcuremenMoneyDisplay($sub) : '',
                     'subtotal_text'   => $sub !== null ? $this->formatProcuremenMoneyDisplay($sub) : '',
-                    'delivery_ymd'    => $d['delivery_ymd'] ?? $this->formatDeliveryYmd($d['delivery'] ?? null),
+                    'delivery_ymd'    => $deliveryYmd,
+                    'amount_filled'   => $amountFilled,
+                    'delivery_filled' => $deliveryFilled,
+                    'delivery_show'   => $deliveryFilled ? $deliveryYmd : '未填写',
                     'status'          => ProcuremenStatus::normalizePodPickStatus($d['status'] ?? ''),
                     'status'          => ProcuremenStatus::normalizePodPickStatus($d['status'] ?? ''),
                     'is_picked'       => ProcuremenStatus::isPodPicked($d['status'] ?? ''),
                     'is_picked'       => ProcuremenStatus::isPodPicked($d['status'] ?? ''),
                     'is_void'         => $isVoid,
                     'is_void'         => $isVoid,

+ 11 - 8
application/admin/view/procuremen/audit_issue.html

@@ -142,11 +142,14 @@
         max-height: 360px;
         max-height: 360px;
     }
     }
     .audit-issue-wrap .audit-quote-detail-table {
     .audit-issue-wrap .audit-quote-detail-table {
-        min-width: 1180px;
+        min-width: 1320px;
     }
     }
     .audit-issue-wrap .audit-quote-detail-table td.audit-quote-empty {
     .audit-issue-wrap .audit-quote-detail-table td.audit-quote-empty {
         color: #e67e22;
         color: #e67e22;
     }
     }
+    .audit-issue-wrap .audit-quote-detail-table td.audit-quote-pending {
+        color: #e67e22;
+    }
 </style>
 </style>
 <div class="audit-issue-wrap">
 <div class="audit-issue-wrap">
     <div class="audit-table-wrap">
     <div class="audit-table-wrap">
@@ -205,7 +208,7 @@
     {if condition="$quoteDeadlineReached neq 1"}
     {if condition="$quoteDeadlineReached neq 1"}
     <p class="audit-notify-tip" style="margin-top:-2px;">
     <p class="audit-notify-tip" style="margin-top:-2px;">
         <i class="fa fa-clock-o"></i>
         <i class="fa fa-clock-o"></i>
-        报价截止时间未到,单价与交货日期暂不展示,到期后可查看各供应商报价
+        报价截止时间未到:未报价显示「未填写」,已报价显示「未到截止时间」;到期后可查看具体金额与交期
     </p>
     </p>
     {/if}
     {/if}
     <p class="audit-notify-tip">
     <p class="audit-notify-tip">
@@ -223,9 +226,9 @@
                 <th style="min-width:160px;">邮箱</th>
                 <th style="min-width:160px;">邮箱</th>
                 <th style="width:120px;">手机号</th>
                 <th style="width:120px;">手机号</th>
                 <th style="min-width:120px;">工序名称</th>
                 <th style="min-width:120px;">工序名称</th>
-                <th class="text-center" style="width:88px;">单价</th>
-                <th class="text-center" style="width:100px;">交货日期</th>
-                <th class="text-center" style="width:88px;">小计</th>
+                <th class="text-center" style="width:112px;">单价</th>
+                <th class="text-center" style="width:118px;">交货日期</th>
+                <th class="text-center" style="width:100px;">小计</th>
                 <th class="text-center" style="width:120px;">操作</th>
                 <th class="text-center" style="width:120px;">操作</th>
             </tr>
             </tr>
             </thead>
             </thead>
@@ -246,9 +249,9 @@
                 <td{if condition="$co.display_rowspan gt 1"} rowspan="{$co.display_rowspan}"{/if} style="vertical-align:middle;">{$co.phone|default=''|htmlentities}</td>
                 <td{if condition="$co.display_rowspan gt 1"} rowspan="{$co.display_rowspan}"{/if} style="vertical-align:middle;">{$co.phone|default=''|htmlentities}</td>
                 {/if}
                 {/if}
                 <td>{$ln.cgymc|default=''|htmlentities}</td>
                 <td>{$ln.cgymc|default=''|htmlentities}</td>
-                <td class="text-center{if condition="$ln.quote_before_deadline eq 1 || $ln.amount_filled neq 1"} audit-quote-empty{/if}">{$ln.unit_price_text|default='未填写'|htmlentities}</td>
-                <td class="text-center{if condition="$ln.quote_before_deadline eq 1 || $ln.delivery_filled neq 1"} audit-quote-empty{/if}">{$ln.delivery_show|default='未填写'|htmlentities}</td>
-                <td class="text-center{if condition="$ln.quote_before_deadline eq 1"} audit-quote-empty{/if}">{$ln.subtotal_text|default=''|htmlentities}</td>
+                <td class="text-center{if condition="$ln.amount_quote_pending eq 1"} audit-quote-pending{elseif condition="$ln.amount_filled neq 1"} audit-quote-empty{/if}">{$ln.unit_price_text|default='未填写'|htmlentities}</td>
+                <td class="text-center{if condition="$ln.delivery_quote_pending eq 1"} audit-quote-pending{elseif condition="$ln.delivery_filled neq 1"} audit-quote-empty{/if}">{$ln.delivery_show|default='未填写'|htmlentities}</td>
+                <td class="text-center{if condition="$ln.amount_quote_pending eq 1"} audit-quote-pending{/if}">{$ln.subtotal_text|default=''|htmlentities}</td>
                 {if $lk == 1}
                 {if $lk == 1}
                 <td class="text-center audit-op-cell"{if condition="$co.display_rowspan gt 1"} rowspan="{$co.display_rowspan}"{/if} style="vertical-align:middle;">
                 <td class="text-center audit-op-cell"{if condition="$co.display_rowspan gt 1"} rowspan="{$co.display_rowspan}"{/if} style="vertical-align:middle;">
                     {if $auth->check('procuremen/auditresendemail')}
                     {if $auth->check('procuremen/auditresendemail')}

+ 7 - 7
application/admin/view/procuremen/outward_detail.html

@@ -29,7 +29,7 @@
     .outward-detail-table {
     .outward-detail-table {
         table-layout: fixed;
         table-layout: fixed;
         width: 100%;
         width: 100%;
-        min-width: 1180px;
+        min-width: 1320px;
         margin-bottom: 0;
         margin-bottom: 0;
     }
     }
     .outward-confirm-process-table,
     .outward-confirm-process-table,
@@ -38,7 +38,7 @@
         font-size: 12px;
         font-size: 12px;
         table-layout: fixed;
         table-layout: fixed;
         width: 100%;
         width: 100%;
-        min-width: 1180px;
+        min-width: 1320px;
     }
     }
     .outward-detail-table > thead > tr > th,
     .outward-detail-table > thead > tr > th,
     .outward-detail-table > tbody > tr > td,
     .outward-detail-table > tbody > tr > td,
@@ -192,9 +192,9 @@
                 <th style="min-width:160px;">邮箱</th>
                 <th style="min-width:160px;">邮箱</th>
                 <th style="width:120px;">手机号</th>
                 <th style="width:120px;">手机号</th>
                 <th style="min-width:120px;">工序名称</th>
                 <th style="min-width:120px;">工序名称</th>
-                <th class="text-center" style="width:88px;">单价</th>
-                <th class="text-center" style="width:100px;">交货日期</th>
-                <th class="text-center" style="width:88px;">小计</th>
+                <th class="text-center" style="width:112px;">单价</th>
+                <th class="text-center" style="width:118px;">交货日期</th>
+                <th class="text-center" style="width:100px;">小计</th>
             </tr>
             </tr>
             </thead>
             </thead>
             <tbody>
             <tbody>
@@ -215,8 +215,8 @@
                 <td{if condition="$co.display_rowspan gt 1"} rowspan="{$co.display_rowspan}"{/if} style="vertical-align:middle;">{$co.phone|default=''|htmlentities}</td>
                 <td{if condition="$co.display_rowspan gt 1"} rowspan="{$co.display_rowspan}"{/if} style="vertical-align:middle;">{$co.phone|default=''|htmlentities}</td>
                 {/if}
                 {/if}
                 <td>{$ql.cgymc|default=''|htmlentities}</td>
                 <td>{$ql.cgymc|default=''|htmlentities}</td>
-                <td class="text-center{if condition="$ql.quote_before_deadline eq 1 || $ql.amount_filled neq 1"} outward-quote-empty{/if}">{$ql.unit_price_text|default='未填写'|htmlentities}</td>
-                <td class="text-center{if condition="$ql.quote_before_deadline eq 1 || $ql.delivery_filled neq 1"} outward-quote-empty{/if}">{$ql.delivery_text|default='未填写'|htmlentities}</td>
+                <td class="text-center{if condition="$ql.amount_quote_pending eq 1"} outward-quote-empty{elseif condition="$ql.amount_filled neq 1"} outward-quote-empty{/if}">{$ql.unit_price_text|default='未填写'|htmlentities}</td>
+                <td class="text-center{if condition="$ql.delivery_quote_pending eq 1"} outward-quote-empty{elseif condition="$ql.delivery_filled neq 1"} outward-quote-empty{/if}">{$ql.delivery_text|default='未填写'|htmlentities}</td>
                 <td class="text-center">{$ql.subtotal_text|default=''|htmlentities}</td>
                 <td class="text-center">{$ql.subtotal_text|default=''|htmlentities}</td>
             </tr>
             </tr>
             {/volist}
             {/volist}