detail.js 6.4 KB

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