audit_issue.html 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288
  1. <style>
  2. body.is-dialog .audit-issue-wrap {
  3. padding: 12px 14px 0;
  4. max-width: 100%;
  5. box-sizing: border-box;
  6. }
  7. .audit-issue-wrap .audit-block-title {
  8. margin: 0 0 6px;
  9. font-weight: 600;
  10. font-size: 13px;
  11. color: #333;
  12. }
  13. .audit-issue-wrap .audit-notify-tip {
  14. margin: 0 0 10px;
  15. padding: 8px 12px;
  16. font-size: 12px;
  17. line-height: 1.65;
  18. color: #8a6d3b;
  19. background: #fcf8e3;
  20. border: 1px solid #faebcc;
  21. border-radius: 3px;
  22. }
  23. .audit-issue-wrap .audit-table-wrap {
  24. max-height: 240px;
  25. overflow: auto;
  26. margin-bottom: 12px;
  27. border: 1px solid #e5e5e5;
  28. }
  29. .audit-issue-wrap .audit-process-table {
  30. margin: 0;
  31. font-size: 12px;
  32. table-layout: fixed;
  33. width: 100%;
  34. min-width: 980px;
  35. }
  36. .audit-issue-wrap .audit-process-table th {
  37. background: #f5f5f5;
  38. white-space: nowrap;
  39. font-weight: 600;
  40. padding: 6px 8px;
  41. vertical-align: middle;
  42. }
  43. .audit-issue-wrap .audit-process-table th.text-center,
  44. .audit-issue-wrap .audit-process-table td.text-center {
  45. text-align: center;
  46. }
  47. .audit-issue-wrap .audit-process-table td {
  48. padding: 6px 8px;
  49. vertical-align: middle;
  50. word-wrap: break-word;
  51. }
  52. .audit-issue-wrap .audit-table {
  53. margin: 0;
  54. font-size: 12px;
  55. }
  56. .audit-issue-wrap .audit-table th {
  57. background: #f5f5f5;
  58. white-space: nowrap;
  59. }
  60. .audit-issue-wrap .audit-table td {
  61. padding: 6px 8px;
  62. vertical-align: middle;
  63. word-wrap: break-word;
  64. }
  65. .audit-issue-wrap .audit-quote-pick-table tbody tr {
  66. cursor: pointer;
  67. }
  68. .audit-issue-wrap .audit-quote-pick-table td label {
  69. margin: 0;
  70. font-weight: normal;
  71. cursor: pointer;
  72. }
  73. .audit-issue-wrap .audit-quote-item {
  74. margin-bottom: 6px;
  75. font-size: 12px;
  76. line-height: 1.5;
  77. }
  78. .audit-issue-wrap .audit-quote-item:last-child {
  79. margin-bottom: 0;
  80. }
  81. .audit-issue-wrap .audit-deadline-row {
  82. display: flex;
  83. align-items: flex-start;
  84. flex-wrap: wrap;
  85. gap: 8px 12px;
  86. margin: 0 0 12px;
  87. font-size: 13px;
  88. position: relative;
  89. z-index: 61;
  90. overflow: visible;
  91. }
  92. .audit-issue-wrap .audit-deadline-row .audit-field-label {
  93. font-weight: 600;
  94. color: #333;
  95. white-space: nowrap;
  96. flex-shrink: 0;
  97. margin: 7px 0 0;
  98. }
  99. .audit-issue-wrap .audit-deadline-input-wrap {
  100. position: relative;
  101. flex: 1 1 auto;
  102. min-width: 0;
  103. z-index: 62;
  104. }
  105. .audit-issue-wrap .procuremen-sys-rq-split .procuremen-sys-rq-fields {
  106. display: flex;
  107. flex-wrap: wrap;
  108. align-items: center;
  109. gap: 8px;
  110. }
  111. .audit-issue-wrap .procuremen-sys-rq-split .procuremen-sys-rq-date {
  112. width: 148px;
  113. min-width: 132px;
  114. height: 32px;
  115. padding: 4px 8px;
  116. }
  117. .audit-issue-wrap .procuremen-sys-rq-split .procuremen-sys-rq-time-group {
  118. display: inline-flex;
  119. align-items: center;
  120. gap: 4px;
  121. }
  122. .audit-issue-wrap .procuremen-sys-rq-split .procuremen-sys-rq-hour,
  123. .audit-issue-wrap .procuremen-sys-rq-split .procuremen-sys-rq-minute {
  124. width: 62px;
  125. height: 32px;
  126. padding: 4px 6px;
  127. }
  128. .audit-issue-wrap .procuremen-sys-rq-split .procuremen-sys-rq-colon {
  129. color: #666;
  130. font-weight: 600;
  131. line-height: 32px;
  132. }
  133. .audit-issue-wrap .audit-op-cell {
  134. white-space: nowrap;
  135. }
  136. .audit-issue-wrap .audit-op-cell .btn {
  137. padding: 2px 7px;
  138. font-size: 12px;
  139. margin: 0 2px 2px 0;
  140. }
  141. .audit-issue-wrap .audit-table-wrap.audit-quote-table-wrap {
  142. max-height: 360px;
  143. }
  144. .audit-issue-wrap .audit-quote-detail-table {
  145. min-width: 1180px;
  146. }
  147. .audit-issue-wrap .audit-quote-detail-table td.audit-quote-empty {
  148. color: #e67e22;
  149. }
  150. </style>
  151. <div class="audit-issue-wrap">
  152. <div class="audit-table-wrap">
  153. <table class="table table-bordered table-condensed audit-process-table">
  154. <thead>
  155. <tr>
  156. <th class="text-center" style="width:100px;">订单号</th>
  157. <th style="min-width:160px;">印件名称</th>
  158. <th>工序名称</th>
  159. <th class="text-center" style="width:56px;">单位</th>
  160. <th class="text-center" style="width:72px;">工作量</th>
  161. <th class="text-center" style="width:72px;">本次数量</th>
  162. <th class="text-center" style="width:72px;">最高限价</th>
  163. <th class="text-center" style="width:80px;">订法</th>
  164. <th style="min-width:120px;">备注</th>
  165. </tr>
  166. </thead>
  167. <tbody>
  168. {volist name="processDisplayRows" id="pr"}
  169. <tr>
  170. {if $pr.show_order_cells}
  171. <td class="text-center"{if condition="$pr.order_rowspan gt 1"} rowspan="{$pr.order_rowspan}"{/if}>{$pr.CCYDH|default=''}</td>
  172. <td{if condition="$pr.order_rowspan gt 1"} rowspan="{$pr.order_rowspan}"{/if}>{$pr.CYJMC|default=''}</td>
  173. {/if}
  174. <td>{$pr.CGYMC|default=''}</td>
  175. <td class="text-center">{$pr.CDW|default=''}</td>
  176. <td class="text-center">{$pr.NGZL|default=''}</td>
  177. <td class="text-center">{$pr.This_quantity|default=''}</td>
  178. <td class="text-center">{$pr.ceilingPrice|default=''}</td>
  179. <td class="text-center">{$pr.CDF|default=''}</td>
  180. <td>{$pr.MBZ|default=''}</td>
  181. </tr>
  182. {/volist}
  183. </tbody>
  184. </table>
  185. </div>
  186. <form id="audit-issue-form" class="form-horizontal" role="form" style="margin-bottom:0;">
  187. {:token()}
  188. <input type="hidden" name="scydgy_id" value="{$scydgyId|htmlentities}"/>
  189. <input type="hidden" id="audit-quote-groups-json" value="{$quoteGroupsJson|htmlentities}"/>
  190. <div class="audit-deadline-row">
  191. <span class="audit-field-label">截止时间:<span class="text-danger">*</span></span>
  192. <div class="audit-deadline-input-wrap procuremen-sys-rq-split" id="audit-sys-rq-wrap">
  193. <input type="hidden" id="audit-sys-rq" name="sys_rq" value="{$sysRq|default=''|htmlentities}"/>
  194. <div class="procuremen-sys-rq-fields">
  195. <input type="date" class="form-control procuremen-sys-rq-date" title="截止日期"/>
  196. <div class="procuremen-sys-rq-time-group">
  197. <select class="form-control procuremen-sys-rq-hour" title="时"></select>
  198. <span class="procuremen-sys-rq-colon">:</span>
  199. <select class="form-control procuremen-sys-rq-minute" title="分"></select>
  200. </div>
  201. </div>
  202. </div>
  203. </div>
  204. </form>
  205. {if condition="$quoteDeadlineReached neq 1"}
  206. <p class="audit-notify-tip" style="margin-top:-2px;">
  207. <i class="fa fa-clock-o"></i>
  208. 报价截止时间未到,单价与交货日期暂不展示,到期后可查看各供应商报价。
  209. </p>
  210. {/if}
  211. <p class="audit-notify-tip">
  212. <i class="fa fa-exclamation-triangle"></i>
  213. <strong>重要提示:</strong>请查看各供应商报价,<strong>选定唯一一家</strong>后点击「确认供应商」进入采购终审(本步<strong>任何发送短信通知</strong>)。
  214. 需再次提醒报价时,请在右侧<strong>操作</strong>列点击「发邮件」或「发短信」。
  215. </p>
  216. <div class="audit-table-wrap audit-quote-table-wrap">
  217. <table class="table table-bordered table-condensed audit-table audit-quote-pick-table audit-quote-detail-table">
  218. <thead>
  219. <tr>
  220. <th class="text-center" style="width:42px;">选定</th>
  221. <th style="min-width:140px;">供应商名称</th>
  222. <th style="width:88px;">姓名</th>
  223. <th style="min-width:160px;">邮箱</th>
  224. <th style="width:120px;">手机号</th>
  225. <th style="min-width:120px;">工序名称</th>
  226. <th class="text-center" style="width:88px;">单价</th>
  227. <th class="text-center" style="width:100px;">交货日期</th>
  228. <th class="text-center" style="width:88px;">小计</th>
  229. <th class="text-center" style="width:120px;">操作</th>
  230. </tr>
  231. </thead>
  232. <tbody id="audit-quote-tbody">
  233. {volist name="quoteGroups" id="co" key="k"}
  234. {volist name="co.lines" id="ln" key="lk"}
  235. <tr>
  236. {if $lk == 1}
  237. <td class="text-center"{if condition="$co.display_rowspan gt 1"} rowspan="{$co.display_rowspan}"{/if} style="vertical-align:middle;">
  238. <label>
  239. <input type="radio" class="audit-quote-pick" name="audit_quote_pick" value="{$co.name|default=''|htmlentities}"
  240. {if condition="$pickedCompanyName neq '' && $pickedCompanyName eq $co.name"} checked="checked"{/if}/>
  241. </label>
  242. </td>
  243. <td{if condition="$co.display_rowspan gt 1"} rowspan="{$co.display_rowspan}"{/if} style="vertical-align:middle;">{$co.name|default=''|htmlentities}</td>
  244. <td{if condition="$co.display_rowspan gt 1"} rowspan="{$co.display_rowspan}"{/if} style="vertical-align:middle;">{$co.username|default=''|htmlentities}</td>
  245. <td{if condition="$co.display_rowspan gt 1"} rowspan="{$co.display_rowspan}"{/if} style="vertical-align:middle;">{$co.email|default=''|htmlentities}</td>
  246. <td{if condition="$co.display_rowspan gt 1"} rowspan="{$co.display_rowspan}"{/if} style="vertical-align:middle;">{$co.phone|default=''|htmlentities}</td>
  247. {/if}
  248. <td>{$ln.cgymc|default=''|htmlentities}</td>
  249. <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>
  250. <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>
  251. <td class="text-center{if condition="$ln.quote_before_deadline eq 1"} audit-quote-empty{/if}">{$ln.subtotal_text|default=''|htmlentities}</td>
  252. {if $lk == 1}
  253. <td class="text-center audit-op-cell"{if condition="$co.display_rowspan gt 1"} rowspan="{$co.display_rowspan}"{/if} style="vertical-align:middle;">
  254. {if $auth->check('procuremen/auditresendemail')}
  255. <button type="button" class="btn btn-default btn-xs audit-row-send-email" data-company="{$co.name|default=''|htmlentities}">发邮件</button>
  256. {/if}
  257. {if $auth->check('procuremen/auditresendsms')}
  258. <button type="button" class="btn btn-default btn-xs audit-row-send-sms" data-company="{$co.name|default=''|htmlentities}">发短信</button>
  259. {/if}
  260. </td>
  261. {/if}
  262. </tr>
  263. {/volist}
  264. {if !empty($co.has_total)}
  265. <tr class="active">
  266. <td colspan="3" class="text-right"><strong>总计</strong></td>
  267. <td class="text-center"><strong>{$co.total_text|default=''|htmlentities}</strong></td>
  268. </tr>
  269. {/if}
  270. {/volist}
  271. </tbody>
  272. </table>
  273. </div>
  274. <div class="form-group layer-footer">
  275. <div class="row procuremen-audit-issue-footer-row">
  276. <div class="col-xs-12 procuremen-audit-issue-footer-btns">
  277. {if $auth->check('procuremen/auditsubmit')}
  278. <button type="button" style="margin-right: 12px" class="btn btn-primary btn-embossed" id="btn-audit-issue-submit">
  279. <i class="fa fa-check"></i> 确认
  280. </button>
  281. {/if}
  282. <button type="button" class="btn btn-default btn-embossed" id="btn-audit-issue-close">
  283. <i class="fa fa-times"></i> 关闭
  284. </button>
  285. </div>
  286. </div>
  287. </div>
  288. </div>