apCheck.html 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805
  1. <style>
  2. body{
  3. font-family: "Microsoft YaHei", "微软雅黑" !important;
  4. }
  5. .text-num{
  6. }
  7. .append{
  8. color: #5078cb;font-size:12px; margin-left: 10px
  9. }
  10. .order-table td {
  11. padding-top: 10px;
  12. margin-bottom: 20px;
  13. border-bottom: solid 1px #ccc;
  14. border-top: solid 1px #e8e8e8;
  15. }
  16. .order-table td.first {
  17. padding-left: 20px;
  18. }
  19. .order-table td.last {
  20. padding-right: 20px;
  21. }
  22. .order-table td .static p {
  23. display: inline-block;
  24. line-height: 30px;
  25. padding-top: 5px;
  26. padding-bottom: 0px;
  27. width: 150px;
  28. font-size: 14px;
  29. color: #666;
  30. padding-left: 15px;
  31. border-left: solid 1px #e8e8e8;
  32. }
  33. .order-table td .static p:first-child{
  34. border-left: none;
  35. width: 180px;
  36. padding-left: 0;
  37. }
  38. .order-table td .static p:last-child{
  39. margin-left: 22px;
  40. }
  41. .order-table td .static p:nth-of-type(3){
  42. margin-left: 20px;
  43. }
  44. .order-table td .main {
  45. margin-top: 5px;
  46. margin-bottom: 20px;
  47. color: #333;
  48. }
  49. .static{
  50. margin: 12px 0;
  51. }
  52. .order-table td .main strong {
  53. font-size: 14px;
  54. }
  55. .order-table td .static p strong {
  56. font-size: 14px;
  57. font-weight: bold;
  58. color: #888;
  59. }
  60. .order-table td.status {
  61. position: relative;
  62. border-left: solid 1px #e8e8e8;
  63. padding: 10px;
  64. vertical-align: top;
  65. }
  66. .order-table td.status .operate {
  67. position: absolute;
  68. display: block;
  69. bottom: 0;
  70. left: 0;
  71. right: 0;
  72. height: 0px;
  73. color: #ffffff;
  74. font-size: 14px;
  75. font-weight: bold;
  76. line-height: 40px;
  77. opacity: 0.8;
  78. transition: height ease-in-out 0.5s;
  79. text-decoration: none;
  80. }
  81. .order-table td.status .operate-undo {
  82. background: #428bca;
  83. }
  84. .order-table td.status .operate-done {
  85. background: #cccccc;
  86. }
  87. .order-table td.status:hover .operate {
  88. height: 40px;
  89. }
  90. .unPrinted {
  91. color: #56a022;
  92. }
  93. .order-table td .main strong{
  94. font-weight: normal;
  95. }
  96. .order-table td{
  97. font-size: 14px;
  98. }
  99. .order-table th{
  100. text-align: center;
  101. }
  102. .order-table .text-trans{
  103. margin-top: -17px;
  104. margin-right: 14px;
  105. }
  106. .menu .new-dot{
  107. width: 20px;
  108. height: 20px;
  109. line-height: 20px;
  110. font-size: 12px;
  111. color: #fff;
  112. font-weight: inherit;
  113. top: -2px;
  114. }
  115. .wui-date.small .wui-date-picker {
  116. width: 260px
  117. }
  118. </style>
  119. <link rel="stylesheet" href="static/css/public.css">
  120. <link rel="stylesheet" href="static/css/wui.min.css">
  121. <div class="block" id="public">
  122. <div class="loading in" ng-class="{'in': loading}">
  123. <!--<i></i>-->
  124. <div class="wrap">
  125. <div class="outer"></div>
  126. </div>
  127. </div>
  128. <div class="pub-com_head">
  129. <span>应收对账单</span>
  130. <div class="p-right">
  131. <!--<a class="text-simple append" ui-sref="fa.apCheckList" title="新增对账单" ng-hide="showNotCheck"><i class="fa fa-plus-square fa-fw"></i>新增对账单</a>&nbsp;&nbsp;&nbsp;-->
  132. <a href="#" ng-click="exportXls()" ng-hide="active === 'all'"
  133. target="_self" title="导出Excel表格" class="blue f14"><i class="fa fa-file-text fa-fw"></i>导出</a>
  134. </div>
  135. </div>
  136. <div class="menu condition block">
  137. <div class="row">
  138. <div class="col-xs-7">
  139. <div class="btn-group btn-group-sm btn-group-justified">
  140. <div class="btn-group btn-group-sm/fa/arCheck">
  141. <button type="button" class="btn btn-default btn-line"
  142. ng-class="{'btn-info':active=='all'}" ng-click="setActive('all')">未对账</button>
  143. </div>
  144. <!--<div class="btn-group btn-group-sm">-->
  145. <!--<button type="button" class="btn btn-default btn-line"-->
  146. <!--ng-class="{'btn-info':active=='todo'}"-->
  147. <!--ng-click="setActive('todo')">待确认</button>-->
  148. <!--</div>-->
  149. <div class="btn-group btn-group-sm">
  150. <button type="button" class="btn btn-default btn-line"
  151. ng-class="{'btn-info':active=='done'}"
  152. ng-click="setActive('done')">已对账
  153. <!--<b class="new-dot" ng-if="unread.replied > 0">{{unread.replied>99?'99+':unread.replied}}</b>-->
  154. </button>
  155. </div>
  156. <div class="btn-group btn-group-sm">
  157. <button type="button" class="btn btn-default btn-line"
  158. ng-class="{'btn-info':active=='end'}" ng-click="setActive('end')">已作废
  159. <!--<b class="new-dot" ng-if="unread.cancelled > 0">{{unread.cancelled > 99 ? '99+' : unread.cancelled}}</b>-->
  160. </button>
  161. </div>
  162. <!--<div class="btn-group btn-group-sm">-->
  163. <!--<button type="button" class="btn btn-default btn-line"-->
  164. <!--ng-class="{'btn-info':active=='all'}" ng-click="setActive('all')">全部</button>-->
  165. <!--</div>-->
  166. <!--<div class="btn-group btn-group-sm">-->
  167. <!--<button type="button" class="btn btn-default btn-line"-->
  168. <!--ng-class="{'btn-info':active=='done'}"-->
  169. <!--ng-click="setActive('done')">已确认-->
  170. <!--<b class="new-dot" ng-if="unread.replied > 0">{{unread.replied>99?'99+':unread.replied}}</b>-->
  171. <!--</button>-->
  172. <!--</div>-->
  173. <!--<div class="btn-group btn-group-sm">-->
  174. <!--<button type="button" class="btn btn-default btn-line"-->
  175. <!--ng-class="{'btn-info':active=='todo'}"-->
  176. <!--ng-click="setActive('todo')">未对账</button>-->
  177. <!--</div>-->
  178. <!--<div class="btn-group btn-group-sm">-->
  179. <!--<button type="button" class="btn btn-default btn-line"-->
  180. <!--ng-class="{'btn-info':active=='end'}" ng-click="setActive('end')">已作废-->
  181. <!--<b class="new-dot" ng-if="unread.cancelled > 0">{{unread.cancelled > 99 ? '99+' : unread.cancelled}}</b>-->
  182. <!--</button>-->
  183. <!--</div>-->
  184. </div>
  185. </div>
  186. <div class="col-xs-4 f12" style="text-align: right;height: 40px;line-height: 40px; margin-right: 20px; float: right;">
  187. <div class="btn-group btn-group-sm" style="float: right;font-size: 14px;cursor: pointer;" ng-hide="!showNotCheck" ng-click="hideshowNotCheck()">
  188. <img src="static/img/vendor/images/backIcon.png" width="20"/>返回
  189. <!--<b class="new-dot" ng-if="unread.cancelled > 0">{{unread.cancelled > 99 ? '99+' : unread.cancelled}}</b>-->
  190. </div>
  191. </div>
  192. </div>
  193. </div>
  194. <div ng-hide="showNotCheck">
  195. <div class="condition block" ng-show="!showNotCheck">
  196. <div class="search-bg condition block" style="padding: 10px 15px;">
  197. <div class="row">
  198. <div id="topSearch" ng-show="active !== 'all'" style="float: left">
  199. <a ng-click="changeDateZone(1);condition.$open=false" title="最近一个月" ng-class="{'active':condition.dateZone=='1'}">最近一个月</a>
  200. <a ng-click="changeDateZone(3);condition.$open=false" title="最近三个月" ng-class="{'active':condition.dateZone=='3'}">最近三个月</a>
  201. <a ng-click="changeDateZone(6);condition.$open=false" title="最近六个月" ng-class="{'active':condition.dateZone=='6'}">最近六个月</a>
  202. <a ng-click="condition.$open=!condition.$open;changeDateZone(-1)" title="自定义" ng-class="{'active':condition.dateZone=='-1'}" >自定义</a>
  203. </div>
  204. <div style="float: left" ng-show="active === 'all'" >
  205. <label class="control-label">请选择月份:</label>
  206. <span ng-click="addMouthOut(-1)" style="display: inline-block;
  207. width: 32px;
  208. height: 32px;
  209. border: 1px solid #ddd;
  210. text-align: center;
  211. line-height: 32px;
  212. cursor: pointer;
  213. vertical-align: middle;">
  214. <img src="static/img/vendor/images/arrow-left-d-l.png" width="24"/>
  215. </span>
  216. <span class="inputsIcon control-label" style="padding-right: 0px;display: inline-block;vertical-align: top;">
  217. <wui-date
  218. format="yyyy-mm"
  219. placeholder="请选择或输入日期"
  220. id="date3"
  221. btns="{'ok':'确定','now':'此刻'}"
  222. ng-model="thisMouthOut"
  223. >
  224. </wui-date>
  225. </span>
  226. <span ng-show="MouthOutShow" ng-click="addMouthOut(1)" style="display: inline-block;
  227. width: 32px;
  228. height: 32px;
  229. border: 1px solid #ddd;
  230. text-align: center;
  231. line-height: 32px;
  232. cursor: pointer;
  233. vertical-align: middle;"><img src="static/img/vendor/images/arrow-right-d-l.png" width="24"/></span>
  234. </div>
  235. <div class="col-xs-6" style="float: right;">
  236. <div class="search">
  237. <div class="form-group form-group-sm has-feedback" dropdown auto-close="outsideClick"
  238. on-toggle="searchAdvance=open">
  239. <input type="search" class="form-control input-sm" ng-model="keyword"
  240. ng-search="onSearch(keyword)" placeholder="输入单据编号、客户名称、物料名称搜索" style="width: 100%" ng-show="active !== 'all'"/>
  241. <a class="btn input-group-addon" href="javascript:void(0)" ng-click="onSearch(keyword)" ng-show="active !== 'all'">搜索</a>
  242. <input type="search" class="form-control input-sm" ng-model="keyword" ng-search="onSearch(keyword)" placeholder="客户名称" style="width: 100%" ng-show="active === 'all' && !showNotCheck" />
  243. <a class="btn input-group-addon" ng-click="onSearch(keyword)" ng-show="active === 'all' && !showNotCheck">搜索</a>
  244. </div>
  245. </div>
  246. </div>
  247. </div>
  248. <div class="more-list more" ng-class="{'open': condition.$open}">
  249. <form class="form-inline">
  250. <div class="form-group ">
  251. <label>日期:</label>
  252. <div class="btn-group btn-menu" dropdown is-open="condition.$dateZoneOpen">
  253. <ul class="dropdown-menu">
  254. <li><a ng-click="changeDateZone(1)">一个月内</a></li>
  255. <li><a ng-click="changeDateZone(6)">半年内</a></li>
  256. <li><a ng-click="changeDateZone()">半年前</a></li>
  257. </ul>
  258. </div>
  259. <div class="form-group input-group input-group-xs input-trigger">
  260. <input type="text" ng-model="condition.dateFrom"
  261. class="form-control" placeholder="从"
  262. datepicker-popup="yyyy-MM-dd" is-open="condition.$fromOpened"
  263. ng-required="true" max-date = "condition.dateTo"
  264. current-text="今天" clear-text="清除" close-text="关闭"
  265. datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
  266. ng-focus="openFilterDatePicker($event, condition, '$fromOpened')">
  267. <span class="input-group-btn">
  268. <button type="button" class="btn btn-default"
  269. ng-click="openFilterDatePicker($event, condition, '$fromOpened')">
  270. <i class="fa fa-calendar"></i>
  271. </button>
  272. </span>
  273. </div>
  274. <div class="form-group input-group input-group-xs input-trigger">
  275. <input type="text" ng-model="condition.dateTo"
  276. class="form-control" placeholder="到"
  277. datepicker-popup="yyyy-MM-dd" is-open="condition.$toOpened"
  278. ng-required="true" min-date = "condition.dateFrom"
  279. current-text="今天" clear-text="清除" close-text="关闭"
  280. datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
  281. ng-focus="openFilterDatePicker($event, condition, '$toOpened')">
  282. <span class="input-group-btn">
  283. <button type="button" class="btn btn-default"
  284. ng-click="openFilterDatePicker($event, condition, '$toOpened')">
  285. <i class="fa fa-calendar"></i>
  286. </button>
  287. </span>
  288. </div>
  289. </div>
  290. </form>
  291. </div>
  292. </div>
  293. </div>
  294. <div ng-show="active === 'all'">
  295. <table class="order-table block order-table2" ng-table="tableParams" width="100%" style="table-layout:fixed">
  296. <thead>
  297. <tr class="header">
  298. <th width="313">客户名称</th>
  299. <th width="250">本月应收</th>
  300. <th width="250">应收总额</th>
  301. <th width="160">操作</th>
  302. </tr>
  303. </thead>
  304. <tbody ng-repeat="check in ALLList">
  305. <tr >
  306. <td style="color: #3f84f6">{{::check.myEnterprise.enName}}</td>
  307. <td ng-if="check.thisMonthCount.length > 0">
  308. <div ng-repeat="count in check.thisMonthCount">
  309. <span>{{count.currency}}:{{count.amount | number:2}}</span>
  310. </div>
  311. </td>
  312. <td ng-if="check.thisMonthCount.length === 0">-</td>
  313. <td ng-if="check.totalCount.length > 0">
  314. <div ng-repeat="count in check.totalCount">
  315. <span ng-if="count.amount > 0">{{count.currency}}:{{count.amount | number:2}}</span>
  316. </div>
  317. </td>
  318. <td ng-if="check.totalCount.length === 0">-</td>
  319. <td style="color: #3f84f6;cursor: pointer" ng-click="goToMNs(check)">对账详情</td>
  320. </tr>
  321. </tbody>
  322. <tbody ng-if="!ALLList || ALLList.length == 0">
  323. <tr>
  324. <td colspan="4">
  325. <div id="empty">
  326. <div class="left_img">
  327. <a><img src="static/img/empty/uas_empty.png"></a>
  328. <a>B2B 商务</a>
  329. </div>
  330. <div class="right_link">
  331. <!--<p ng-if="active != 'all'">您还未生成对账单,请立即新增对账!</p>-->
  332. <!--<a ng-if="active != 'all'" ui-sref="fa.apCheckList"><i class="fa fa-plus-square fa-fw"></i> 新增对账单</a>-->
  333. </div>
  334. </div>
  335. </td>
  336. </tr>
  337. </tbody>
  338. </table>
  339. </div>
  340. <div ng-show="active !== 'all'">
  341. <table class="order-table block" ng-table="tableParams">
  342. <thead>
  343. <tr class="header">
  344. <th width="150">对账期间</th>
  345. <th width="180">对账总额</th>
  346. <th width="180">对账人</th>
  347. <!--<th width="180">商品总数</th>-->
  348. <th width="100">对账结果</th>
  349. <th width="100">操作</th>
  350. </tr>
  351. </thead>
  352. <tbody ng-repeat="check in $data">
  353. <tr>
  354. <td class="first info" colspan="3">
  355. <div class="">
  356. <a href="javascript:void(0)" ng-if="!isUnread(check.id)">
  357. <i class="fa fa-circle-thin"></i>
  358. </a>
  359. <a href="javascript:void(0)" ng-if="isUnread(check.id)">
  360. <i class="fa fa-circle" style="color: #f40;"></i>
  361. </a>&nbsp;&nbsp;
  362. <span class="text-num" title="录单时间">{{::check.recordDate | date:'MM月dd日 HH:mm'}} <i class="fa fa-clock-o"></i></span>&nbsp;&nbsp;&nbsp;
  363. <span><i class="fa fa-star" ng-class="{'text-default':check.status==201}"></i> {{::check.custName}}</span>
  364. <span style="margin-left: 100px;">单据编号:</span>
  365. <span class="text-num"><a ui-sref="fa.apCheck_detail({id:check.id})" title="点击查看详情" ng-click="setOrdersRead(check.id)" style="color: #5078cb">{{::check.code}}</a></span>
  366. </div>
  367. <div class="static">
  368. <p><span class="f14 text-num">{{::check.beginDate | date:'yyyy/MM/dd'}} - {{::check.endDate | date:'yyyy/MM/dd'}}</span></p>
  369. <p>
  370. <strong class="text-num">{{::(isUser?'-':(check.checkAmount | number:2))}}</strong>
  371. <span ng-if="!isUser" class="text-number">{{::check.currency}}</span>
  372. </p>
  373. <p style="text-align: center;margin-left: 65px">
  374. 对账人:{{::check.recorder}}
  375. </p>
  376. <!--<p>-->
  377. <!--<strong class="text-num">{{::check.items.length}}</strong> 条<br>-->
  378. <!--</p>-->
  379. <!--<p>-->
  380. <!--<strong class="text-num">{{getTotalProd(check) | number}}</strong> <i class="fa fa-cubes"></i>-->
  381. <!--</p>-->
  382. </div>
  383. </td>
  384. <td class="status">
  385. <!--<div ng-if="check.checkStatus == '未对账'" class="text-center text-muted f14"><br>未对账!</div>-->
  386. <div></div>
  387. <div ng-if="check.checkStatus == '已确认'" class="text-center text-muted f14">
  388. <br> <i class="fa fa-check-square-o"></i> 已确认
  389. </div>
  390. <div ng-if="check.checkStatus == '不同意'" class="text-center text-muted f14">
  391. <br> <i class="fa fa-check-square-o"></i> 不同意
  392. </div>
  393. <div ng-if="check.checkStatus == '已作废'" class="text-center text-muted f14">
  394. <br> <i class="fa fa-check-square-o"></i> 已作废
  395. </div>
  396. </td>
  397. <td>
  398. <div ng-hide="check.status" class="block">
  399. <span class="text-trans error">未提交</span>
  400. </div>
  401. <div ng-show="check.status" class="block">
  402. <span class="text-trans success">已提交</span>
  403. </div>
  404. <div ng-if="check.checkStatus == '未对账'" class="text-center text-muted f14">
  405. <div class="" style="margin-top: 33px;margin-right: 20px;">
  406. <div class="pull-right" title="等待客户确认"><a>&nbsp;客户正在确认</a></div>
  407. </div>
  408. </div>
  409. <div ng-if="check.checkStatus == '不同意'" class="text-center text-muted f14">
  410. <div class="" style="margin-top: 33px;margin-right: 20px;">
  411. <div class="pull-right" title="客户不同意"><a>&nbsp;客户不同意</a></div>
  412. </div>
  413. </div>
  414. <div ng-if="check.checkStatus == '已确认'" class="text-center text-muted f14">
  415. <div class="" style="margin-top: 33px;margin-right: 20px;">
  416. <a ng-click="print(check)" class="pull-right" title="打印{{check.print? '(已打印)':'(未打印)'}}" ng-class="{'unPrinted' : !check.print, 'text-muted': check.print}"><i class="fa fa-print fa-lg"></i>&nbsp;打印</a>
  417. </div>
  418. </div>
  419. <!-- <a ui-sref="fa.apCheck_detail({id:check.id})" class="operate operate-undo text-center"
  420. target="_blank">查看详情</a> -->
  421. </td>
  422. </tr>
  423. </tbody>
  424. <tbody ng-if="tableParams.total() == 0">
  425. <tr>
  426. <td colspan="6">
  427. <div id="empty">
  428. <div class="left_img">
  429. <a><img src="static/img/empty/uas_empty.png"></a>
  430. <a>B2B 商务</a>
  431. </div>
  432. <div class="right_link">
  433. <!--<p ng-if="active != 'all'">您还未生成对账单,请立即新增对账!</p>-->
  434. <!--<a ng-if="active != 'all'" ui-sref="fa.apCheckList"><i class="fa fa-plus-square fa-fw"></i> 新增对账单</a>-->
  435. </div>
  436. </div>
  437. </td>
  438. </tr>
  439. </tbody>
  440. </table>
  441. </div>
  442. </div>
  443. <div ng-hide="!showNotCheck" class="infoms add-apCheckList" >
  444. <form class="form-horizontal"
  445. style="padding-top: 10px; padding-bottom: 20px;">
  446. <div class="form-group form-group-sm form-group-inline">
  447. <div class="col-sm-6 control-label">
  448. <div style="text-align: left">
  449. <label>应收客户:</label>
  450. <label style="text-align:left">
  451. {{suuorname}}
  452. </label>
  453. </div>
  454. <div style="text-align: left;margin-top: 20px">
  455. <label>本期间应收总额:</label>
  456. <label style="text-align:left;vertical-align: top;">
  457. <div ng-if="dataInfo.thisMonthCount.length > 0" ng-repeat="count in dataInfo.thisMonthCount">
  458. <span>{{count.currency}}:{{count.amount | number:2}}</span>
  459. </div>
  460. <div ng-if="dataInfo.thisMonthCount.length === 0">
  461. 0
  462. </div>
  463. </label>
  464. </div>
  465. <div style="text-align: left;margin-top: 20px">
  466. <label>应收总额:</label>
  467. <label style="text-align:left;vertical-align: top;">
  468. <div ng-if="dataInfo.totalCount.length > 0" ng-repeat="count in dataInfo.totalCount">
  469. <span>{{count.currency }}:{{count.amount | number:2}}</span>
  470. </div>
  471. <div ng-if="dataInfo.totalCount.length === 0">
  472. 0
  473. </div>
  474. </label>
  475. </div>
  476. </div>
  477. <div class="col-sm-6 control-label condition">
  478. <div>
  479. <label class="control-label">请选择月份:</label>
  480. <span ng-click="addMouth(-1)" style="display: inline-block;
  481. width: 32px;
  482. height: 32px;
  483. border: 1px solid #ddd;
  484. text-align: center;
  485. line-height: 32px;
  486. cursor: pointer;
  487. vertical-align: middle;">
  488. <img src="static/img/vendor/images/arrow-left-d-l.png" width="24"/>
  489. </span>
  490. <span class="control-label" style="padding-right: 5px;display: inline-block;vertical-align: middle;padding-top: 0;" ng-click="apCheckCondition.$open = false">
  491. <wui-date
  492. format="yyyy-mm"
  493. placeholder="请选择或输入日期"
  494. id="date4"
  495. btns="{'ok':'确定','now':'此刻'}"
  496. ng-model="thisMouth"
  497. >
  498. </wui-date>
  499. </span><span ng-show="MouthinShow" ng-click="addMouth(1)" style="display: inline-block;
  500. width: 32px;
  501. height: 32px;
  502. border: 1px solid #ddd;
  503. text-align: center;
  504. line-height: 32px;
  505. cursor: pointer;
  506. vertical-align: middle;">
  507. <img src="static/img/vendor/images/arrow-right-d-l.png" width="24"/></span>
  508. <label class="control-label com-check-radio" ng-click="apCheckCondition.$open = true" style="vertical-align: middle;padding-top: 0">
  509. <input type="radio" name="psa" ng-checked="apCheckCondition.$open === true" ng-model="apCheckCondition.$open" style="vertical-align: middle">自定义
  510. </label>
  511. </div>
  512. <div ng-hide="!apCheckCondition.$open" class="more open date fr apCheckCondition" style="margin-top: 14px;">
  513. <div class="form-inline">
  514. <div class="form-group">
  515. <div class="form-group input-group input-group-xs input-trigger">
  516. <input type="text" ng-model="apCheckCondition.dateFrom"
  517. class="form-control" placeholder="从"
  518. datepicker-popup="yyyy-MM-dd" is-open="apCheckCondition.$fromOpened"
  519. ng-required="true" max-date = "apCheckCondition.dateTo"
  520. current-text="今天" clear-text="清除" close-text="关闭"
  521. datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
  522. ng-focus="apCheckopenFilterDatePicker($event, apCheckCondition, '$fromOpened')"
  523. style="height: 26px">
  524. <span class="input-group-btn">
  525. <button type="button" class="btn btn-default"
  526. ng-click="apCheckopenFilterDatePicker($event, apCheckCondition, '$fromOpened')">
  527. <i class="fa fa-calendar"></i>
  528. </button>
  529. </span>
  530. </div>
  531. <em style="margin: 0 10px;display: inline-block">–</em>
  532. <div class="form-group input-group input-group-xs input-trigger">
  533. <input type="text" ng-model="apCheckCondition.dateTo"
  534. class="form-control" placeholder="到"
  535. datepicker-popup="yyyy-MM-dd" is-open="apCheckCondition.$toOpened"
  536. ng-required="true" min-date = "apCheckCondition.dateFrom"
  537. current-text="今天" clear-text="清除" close-text="关闭"
  538. datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
  539. ng-focus="apCheckopenFilterDatePicker($event, apCheckCondition, '$toOpened')" style="height: 26px">
  540. <span class="input-group-btn">
  541. <button type="button" class="btn btn-default"
  542. ng-click="apCheckopenFilterDatePicker($event, apCheckCondition, '$toOpened')">
  543. <i class="fa fa-calendar"></i>
  544. </button>
  545. </span>
  546. </div>
  547. </div>
  548. </div>
  549. </div>
  550. </div>
  551. </div>
  552. <div class="form-group form-group-sm form-group-inline">
  553. <div class="col-sm-12 text-right">
  554. <a ng-click="condition.$open=!condition.$open" class="text-simple"><span
  555. ng-bind="condition.$open ? '收起筛选条件' : '更多筛选条件'"></span><i
  556. class="fa fa-fw"
  557. ng-class="{'fa-angle-up': condition.$open, 'fa-angle-down': !condition.$open}"></i></a>
  558. <div class="btn-group btn-group-sm">
  559. <a class="btn btn-default" ng-click="searchOrder()" title="筛选"><i class="fa fa-search fa-fw btn-icon-left"></i>筛选</a>
  560. <a class="btn btn-default" ng-click="createApCheck(check.$selected)" ng-disabled="!data || data.length==0"><i class="fa fa-check-circle-o fa-fw btn-icon-left"></i>对账</a>
  561. <a class="btn btn-default" ng-click="exportApcheckList()" title="导出Excel" ng-disabled="!data || data.length==0"><i class="fa fa-file-text fa-fw btn-icon-left"></i>导出</a>
  562. </div>
  563. </div>
  564. </div>
  565. <div class="form-group form-group-sm form-group-inline"
  566. ng-show="condition.$open">
  567. <!--<label class="col-sm-2 control-label">应付供应商:</label>-->
  568. <!--<div class="col-sm-4">-->
  569. <!--<div class="form-group form-group-sm has-feedback">-->
  570. <!--<input type="search" class="form-control input-sm"-->
  571. <!--ng-model="receiveName" placeholder="可用应付供应商名称筛选" /><span-->
  572. <!--class="form-control-feedback text-simple"><i-->
  573. <!--class="fa fa-search"></i></span>-->
  574. <!--</div>-->
  575. <!--</div>-->
  576. <label class="col-sm-2 control-label">送货工厂:</label>
  577. <div class="col-sm-4">
  578. <div class="form-group form-group-sm has-feedback">
  579. <input type="search" class="form-control input-sm"
  580. ng-model="factory" placeholder="请输入送货工厂名称" /><span
  581. class="form-control-feedback text-simple"><i
  582. class="fa fa-search"></i></span>
  583. </div>
  584. </div>
  585. <label class="col-sm-2 control-label">税率:</label>
  586. <div class="col-sm-4">
  587. <div class="form-group form-group-sm has-feedback">
  588. <input type="search" class="form-control input-sm"
  589. ng-model="taxRate" placeholder="请输入税率" /><span
  590. class="form-control-feedback text-simple"><i
  591. class="fa fa-search"></i></span>
  592. </div>
  593. </div>
  594. </div>
  595. <div class="form-group form-group-sm form-group-inline"
  596. ng-show="condition.$open">
  597. <label class="col-sm-2 control-label">物料名称:</label>
  598. <div class="col-sm-4">
  599. <div class="form-group form-group-sm has-feedback">
  600. <input type="search" class="form-control input-sm"
  601. ng-model="prodTitle" placeholder="请输入物料名称" /><span
  602. class="form-control-feedback text-simple"><i
  603. class="fa fa-search"></i></span>
  604. </div>
  605. </div>
  606. <label class="col-sm-2 control-label">规&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;格:</label>
  607. <div class="col-sm-4">
  608. <div class="form-group form-group-sm has-feedback">
  609. <input type="search" class="form-control input-sm"
  610. ng-model="prodSpec" placeholder="请输入物料规格" /><span
  611. class="form-control-feedback text-simple"><i
  612. class="fa fa-search"></i></span>
  613. </div>
  614. </div>
  615. </div>
  616. <!--<div class="form-group form-group-sm form-group-inline"-->
  617. <!--ng-show="condition.$open">-->
  618. <!--</div>-->
  619. </form>
  620. <!-- 标签scroll-table用于表头滚动 -->
  621. <div class="table-wrap" id="order-detail-list" scroll-table>
  622. <div class="table-header-wrap">
  623. <table class="table table-bordered">
  624. <tr>
  625. <th width="36" style="vertical-align: middle;"><input type="checkbox" name="checkbox" ng-model="checkboxes.checked" ng-click="checkAll()"></th>
  626. <!--<th width="70">客户<br>名称</th>-->
  627. <th width="70">采购单</th>
  628. <th width="70">物料名称</th>
  629. <th width="70">规格型号</th>
  630. <th width="60">发货单</th>
  631. <th width="55">发货数量</th>
  632. <th width="60">验收单</th>
  633. <th width="100">验收数量</th>
  634. <th width="40">单价</th>
  635. <th width="40">税率</th>
  636. <th width="70">小计</th>
  637. <!--<th width="35">序号</th>-->
  638. <!--<th width="60">类型</th>-->
  639. <!--<th width="60">单据<br>日期</th>-->
  640. <!--<th width="90">应付<br>供应商</th>-->
  641. <!--<th width="65">客户<br>料号</th>-->
  642. <!--<th width="65">送货<br>工厂</th>-->
  643. <!--<th width="30">币别</th>-->
  644. <!--<th width="60">金额</th>-->
  645. </tr>
  646. </table>
  647. </div>
  648. <div class="table-body-wrap">
  649. <table class="table table-bordered">
  650. <tr ng-repeat="check in data" ng-click="checkOne(check);getTotalMoney()" class="thAlign" style="height: 40px;">
  651. <td width="36" style="text-align: center;vertical-align: middle;">
  652. <input ng-model="check.$selected" name="checkbox" type="checkbox" ng-checked="check.$selected" ng-click="stopPrevent($event)"></td>
  653. <td width="70">{{::check.ordercode}}</td>
  654. <td width="70" title="{{check.prodtitle}}">
  655. <div style="display: -webkit-box; text-overflow: ellipsis; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 3; -webkit-box-orient: vertical;">{{::check.prodtitle}}</div>
  656. </td>
  657. <td width="70" title="{{check.prodspec}}">
  658. <div style="display: -webkit-box; text-overflow: ellipsis; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 3; -webkit-box-orient: vertical;">{{::check.prodspec}}</div></td>
  659. <td width="60">{{::check.sendcode}}</td>
  660. <td width="55">{{::check.qty}}</td>
  661. <td width="60">{{::check.inoutno}}</td>
  662. <td width="100">{{::check.thischeckqty}}</td>
  663. <td width="40">{{::check.orderprice}}</td>
  664. <td width="40" align="center">{{::check.taxrate}}</td>
  665. <td width="70">{{::(check.orderprice || 0)*(check.thischeckqty || 0) | number:2}}</td>
  666. <!--<td width="70" title="{{check.custname}}"><div-->
  667. <!--style="display: -webkit-box; text-overflow: ellipsis; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 3; -webkit-box-orient: vertical;">{{::check.custname}}</div></td>-->
  668. <!--<td width="35" align="center">{{::check.detno}}</td>-->
  669. <!--<td width="60">{{::check.piclass}}</td>-->
  670. <!--<td width="60">{{::check.pidate | date:'yyyy-MM-dd' }}</td>-->
  671. <!--<td width="90" title="{{check.receivename}}">-->
  672. <!--<div style="display: -webkit-box; text-overflow: ellipsis; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 3; -webkit-box-orient: vertical;">{{::check.receivename}}</div>-->
  673. <!--</td>-->
  674. <!--<td width="65">{{::check.prodcode}}</td>-->
  675. <!--<td width="65">{{::check.factory}}</td>-->
  676. <!--<td width="30">{{::check.currency}}</td>-->
  677. <!--<td width="60">{{::(check.qty || 0)*(check.orderprice || 0) | number:2}}</td>-->
  678. </tr>
  679. <tr ng-if="!data || data.length==0">
  680. <td colspan="19">
  681. <div class="empty-block">
  682. <i class="fa fa-exclamation-circle"></i>
  683. <p class="text-muted">没有对账数据,请先筛选</p>
  684. </div>
  685. </td>
  686. </tr>
  687. </table>
  688. </div>
  689. <div style="padding: 10px 20px">本期间应收总额:{{totalMoney | number:2 || 0}}</div>
  690. </div>
  691. </div>
  692. </div>
  693. <style>
  694. .order-table2 tbody td {
  695. text-align: center;
  696. padding: 20px 0
  697. }
  698. </style>
  699. <style>
  700. .wui-date-picker.left {
  701. margin-right : 0 !important;
  702. right: 0;
  703. left: auto
  704. }
  705. .add-apCheckList {
  706. background: #fff
  707. }
  708. .add-apCheckList input[type="checkbox"] {
  709. /*width: 16px;
  710. height: 16px*/
  711. }
  712. .add-apCheckList .table-wrap {
  713. overflow: hidden
  714. }
  715. .add-apCheckList .table-header-wrap {
  716. background: #f9f9f9;
  717. overflow-x: hidden;
  718. overflow-y: scroll;
  719. }
  720. .add-apCheckList .table-header-wrap table,.add-apCheckList .table-body-wrap table
  721. {
  722. width: 100%;
  723. table-layout: fixed;
  724. border-collapse: collapse;
  725. border-spacing: 0;
  726. margin-bottom: 0
  727. }
  728. .add-apCheckList .table-header-wrap th {
  729. text-align: center;
  730. }
  731. .add-apCheckList .table-body-wrap {
  732. max-height: 600px;
  733. overflow-x: auto;
  734. overflow-y: scroll;
  735. }
  736. .add-apCheckList td {
  737. word-break: break-all;
  738. text-align: center;
  739. }
  740. .add-apCheckList tbody {
  741. overflow: auto;
  742. }
  743. #order-detail-list .input-sm {
  744. border: #ccc 1px solid;
  745. }
  746. .infoms .has-feedback input[type="search"] {
  747. padding-right: 0 !important;
  748. }
  749. .infoms .table>tbody>tr>td{
  750. vertical-align: middle;
  751. }
  752. .infoms .form-horizontal .form-group-sm .control-label{
  753. font-size: 14px;
  754. }
  755. .infoms .form-group .form-control{
  756. font-size: 14px;
  757. }
  758. .wui-date.small .wui-date-picker {
  759. width: 260px
  760. }
  761. .wui-input {
  762. border: 1px solid #3f84f6;
  763. font-size: 14px;
  764. color: #3f84f6;
  765. font-weight: bold;
  766. }
  767. .wui-date-editor .iconfont {
  768. color: #3f84f6
  769. }
  770. .apCheckCondition ul {
  771. left: auto !important;
  772. right: 0;
  773. }
  774. </style>