detail.js 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. const _Http = getApp().globalData.http,
  2. currency = require("../../utils/currency"),
  3. CNY = num => currency(num, {
  4. symbol: "¥",
  5. precision: 2
  6. }).format();
  7. Page({
  8. loading: true,
  9. data: {
  10. tabsActive: 2,
  11. sa_invoiceapplyid: "",
  12. tabsList: [{
  13. label: "详细信息",
  14. icon: "icon-tabchanpin"
  15. }, {
  16. label: "开票单位",
  17. icon: "icon-tabchanpin"
  18. }, {
  19. label: "开票明细",
  20. icon: "icon-tabchanpin",
  21. model: "#DetailLine"
  22. }, {
  23. label: "发票",
  24. icon: "icon-tabchanpin",
  25. model: "#InvoiceList"
  26. }]
  27. },
  28. onLoad(options) {
  29. getApp().globalData.Language.getLanguagePackage(this, 'E-订单');
  30. this.setData({
  31. sa_invoiceapplyid: options.id
  32. });
  33. this.getDetail();
  34. },
  35. getDetail() {
  36. _Http.basic({
  37. "id": "20221216143003",
  38. "version": 1,
  39. "content": {
  40. "sa_invoiceapplyid": this.data.sa_invoiceapplyid
  41. }
  42. }).then(res => {
  43. console.log("开票单详情", res)
  44. if (res.code != '1') return wx.showToast({
  45. title: res.msg,
  46. icon: "none"
  47. })
  48. res.data.suminvoiceamount = CNY(res.data.suminvoiceamount)
  49. res.data.factamount = CNY(res.data.factamount)
  50. this.setData({
  51. detail: res.data,
  52. loading: false
  53. });
  54. this.setPreview();
  55. this.partialRenewal();
  56. })
  57. },
  58. /* 设置显示信息 */
  59. setPreview() {
  60. let item = this.data.detail;
  61. let list1 = [{
  62. label: "申请单号",
  63. value: item.billno
  64. }, {
  65. label: "发票限额",
  66. value: CNY(item.quota)
  67. }, {
  68. label: "是否手工单",
  69. value: item.byhand ? getApp().globalData.Language.getMapText('是') : getApp().globalData.Language.getMapText('否')
  70. }, {
  71. label: "发票种类",
  72. value: item.invoiceline
  73. }, {
  74. label: "发票收款人",
  75. value: item.invoicepayee
  76. }, {
  77. label: "开票员",
  78. value: item.invoiceclerk
  79. }, {
  80. label: "发票复核人",
  81. value: item.invoicechecker
  82. }, {
  83. label: "提交人",
  84. value: item.submitby
  85. }, {
  86. label: "提交日期",
  87. value: item.submitdate
  88. }, {
  89. label: "备注",
  90. value: item.remarks
  91. }];
  92. let list2 = [{
  93. label: "状态",
  94. value: item.status,
  95. style: `color:${this.data.sColors[item.status]}`
  96. }, {
  97. label: "创建人",
  98. value: item.createby
  99. }, {
  100. label: "创建时间",
  101. value: item.createdate
  102. }, {
  103. label: "审核人",
  104. value: item.checkby
  105. }, {
  106. label: "审核时间",
  107. value: item.checkdate
  108. }, {
  109. label: "修改人",
  110. value: item.changeby
  111. }, {
  112. label: "修改时间",
  113. value: item.changedate
  114. }, ];
  115. let riseLine = [{
  116. label: "抬头",
  117. value: item.enterprisename
  118. }, {
  119. label: "税号",
  120. value: item.taxno
  121. }, {
  122. label: "开户行",
  123. value: item.bank
  124. }, {
  125. label: "开户账号",
  126. value: item.bankcardno
  127. }, {
  128. label: "开票地址",
  129. value: item.address
  130. }, {
  131. label: "联系方式",
  132. value: item.phonenumber
  133. }];
  134. this.setData({
  135. list1,
  136. list2,
  137. riseLine
  138. })
  139. },
  140. //tabs 切换
  141. tabsChange({
  142. detail
  143. }) {
  144. this.setData({
  145. tabsActive: detail
  146. });
  147. this.partialRenewal();
  148. },
  149. //局部数据更新 tabs
  150. partialRenewal(init = false) {
  151. let model = this.data.tabsList[this.data.tabsActive].model;
  152. if (model) {
  153. let Component = this.selectComponent(model),
  154. {
  155. total,
  156. pageNumber,
  157. pageTotal
  158. } = Component.data.content,
  159. id = this.data.sa_invoiceapplyid;
  160. if (total == null || init) {
  161. Component.getList(id, init);
  162. } else if (pageNumber <= pageTotal) {
  163. Component.getList(id, false);
  164. }
  165. }
  166. },
  167. submit() {
  168. if (this.selectComponent("#DetailLine").data.list.length == 0) {
  169. getApp().globalData.Language.showToast('还未添加开票订单行不可提交')
  170. this.setData({
  171. tabsActive: 2
  172. })
  173. } else {
  174. let that = this;
  175. wx.showModal({
  176. cancelText: getApp().globalData.Language.getMapText('取消'),
  177. confirmText: getApp().globalData.Language.getMapText('确定'),
  178. title: getApp().globalData.Language.getMapText('提示'),
  179. content: getApp().globalData.Language.getMapText('是否确认提交该申请单') + '?',
  180. complete: ({
  181. confirm
  182. }) => {
  183. if (confirm) _Http.basic({
  184. "id": "20221219133803",
  185. "version": 1,
  186. "content": {
  187. "sa_invoiceapplyid": that.data.sa_invoiceapplyid
  188. }
  189. }).then(res => {
  190. console.log("提交申请单", res);
  191. if (res.code != '1') return wx.showToast({
  192. title: res.msg,
  193. icon: "none"
  194. });
  195. that.getDetail();
  196. })
  197. }
  198. })
  199. }
  200. },
  201. onReachBottom() {
  202. this.partialRenewal();
  203. },
  204. onUnload() {
  205. let page = getCurrentPages().find(v => v.__route__ == 'packageA/invoice/index');
  206. let content = JSON.parse(JSON.stringify(page.data.content));
  207. content.pageNumber = 1;
  208. content.pageSize = (page.data.content.pageNumber - 1) * page.data.content.pageSize;
  209. _Http.basic({
  210. "id": 20221216143103,
  211. "version": 1,
  212. content
  213. }).then(res => {
  214. console.log("开票列表", res)
  215. page.setData({
  216. list: res.data
  217. })
  218. })
  219. },
  220. })