details.js 10.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341
  1. const _Http = getApp().globalData.http,
  2. MFT = require("../../utils/matchingFeilType");
  3. Page({
  4. /**
  5. * 页面的初始数据
  6. */
  7. data: {
  8. sat_submiteditmodelid: 0,
  9. detailsData: {}, //详情数据
  10. startRecord: false,
  11. submiteditData: {}, //新建明细
  12. content: "", //提交内容
  13. CheckTheRecord: false, //查看记录
  14. recordL: {}, //记录详情
  15. done: false, //!是否还可提交明细
  16. loading: false, //按钮加载状态
  17. },
  18. /**
  19. * 生命周期函数--监听页面加载
  20. */
  21. onLoad(options) {
  22. this.setData({
  23. sat_submiteditmodelid: options.id,
  24. ishistory: options.ishistory
  25. })
  26. //查询详情
  27. _Http.basic({
  28. "classname": "saletool.submitedit.submitedit",
  29. "method": "select_submitdetailed",
  30. "content": {
  31. "sat_submiteditmodelid": options.id
  32. }
  33. }).then(res => {
  34. console.log(res)
  35. /* 处理附件 */
  36. let fileList = res.data.attinfos.filter(v => v.usetype != 'cover');
  37. res.data.attinfos = MFT.fileList(fileList);
  38. /* 删除提报 */
  39. let submitedit = res.data.submitedit,
  40. list = [];
  41. if (submitedit.length) {
  42. for (let i = 0; i < submitedit.length; i++) {
  43. (submitedit[i].status == '未提报' && submitedit[i].content == '') ? this.delete_submitdetailed(submitedit[i].sat_submiteditid): list.push(submitedit[i]);
  44. };
  45. res.data.submitedit = list;
  46. };
  47. this.setData({
  48. detailsData: res.data,
  49. oneToOne: options.oneToOne
  50. });
  51. if (options.ishistory == 1) {
  52. this.setData({
  53. done: true
  54. })
  55. } else if (options.oneToOne == 'true' && res.data.submitedit.length == 1) {
  56. this.setData({
  57. done: true
  58. })
  59. };
  60. });
  61. },
  62. /* 上传绑定附件 */
  63. getFile({
  64. detail
  65. }) {
  66. _Http.basic({
  67. "classname": "system.attachment.Attachment",
  68. "method": "createFileLink",
  69. "content": {
  70. "ownertable": "sat_submitedit",
  71. "ownerid": this.data.submiteditData.sat_submiteditid,
  72. "usetype": "default",
  73. "attachmentids": detail
  74. }
  75. }).then(res => {
  76. if (res.msg != '成功') return wx.showToast({
  77. title: res.data,
  78. icon: "none"
  79. });
  80. this.setData({
  81. "submiteditData.attinfos": this.data.submiteditData.attinfos.concat(MFT.fileList(res.data))
  82. })
  83. })
  84. },
  85. /* 删除附件 */
  86. deleteFile({
  87. detail
  88. }) {
  89. _Http.basic({
  90. "classname": "system.attachment.Attachment",
  91. "method": "deleteFileLink",
  92. "content": {
  93. linksids: [detail.linksid]
  94. }
  95. }).then(res => {
  96. console.log(this.data.submiteditData.attinfos)
  97. if (res.msg != '成功') return wx.showToast({
  98. title: res.data,
  99. icon: "none"
  100. })
  101. wx.showToast({
  102. title: "删除成功"
  103. })
  104. let list = this.data.submiteditData.attinfos.filter(v => v.linksid != detail.linksid)
  105. this.setData({
  106. "submiteditData.attinfos": list
  107. })
  108. })
  109. },
  110. /* 创建明细 */
  111. establish() {
  112. if (this.data.submiteditData.sat_submiteditmodelid) return this.setData({
  113. startRecord: true
  114. })
  115. this.setData({
  116. content: ""
  117. })
  118. _Http.basic({
  119. "classname": "saletool.submitedit.submitedit",
  120. "method": "insertorupdate",
  121. "content": {
  122. "sat_submiteditmodelid": this.data.sat_submiteditmodelid,
  123. "content": "",
  124. "sat_submiteditid": 0
  125. }
  126. }).then(res => {
  127. if (res.msg != '成功') return wx.showToast({
  128. title: res.data,
  129. icon: "none"
  130. })
  131. this.setData({
  132. startRecord: true,
  133. submiteditData: res.data
  134. })
  135. })
  136. },
  137. /* 隐藏新建 */
  138. closeRecord() {
  139. this.setData({
  140. startRecord: false
  141. })
  142. if (this.data.submiteditData.content != '') this.setData({
  143. submiteditData: {}
  144. })
  145. },
  146. /* 提交明细 */
  147. submit() {
  148. if (!this.data.content && this.data.detailsData.istextrequired == 1) return wx.showToast({
  149. title: '您还未输入提报内容',
  150. icon: "none"
  151. });
  152. if (this.data.submiteditData.attinfos.length == 0 && this.data.detailsData.isattrequired == 1) return wx.showToast({
  153. title: '您还未上传附件',
  154. icon: "none"
  155. });
  156. if (this.data.loading) return wx.showToast({
  157. title: '正在提交中,请勿重新提交',
  158. icon: "none"
  159. })
  160. this.setData({
  161. loading: true
  162. })
  163. _Http.basic({
  164. "classname": "saletool.submitedit.submitedit",
  165. "method": "insertorupdate",
  166. "content": {
  167. "sat_submiteditmodelid": this.data.submiteditData.sat_submiteditmodelid,
  168. "content": this.data.content.trim(),
  169. "sat_submiteditid": this.data.submiteditData.sat_submiteditid
  170. }
  171. }).then(res => {
  172. this.setData({
  173. loading: false
  174. })
  175. if (res.msg != '成功') return wx.showToast({
  176. title: res.data,
  177. icon: "none"
  178. });
  179. this.setData({
  180. loading: true
  181. })
  182. _Http.basic({
  183. "classname": "saletool.submitedit.submitedit",
  184. "method": "sub_submitdetailed",
  185. "content": {
  186. "sat_submiteditmodelid": this.data.submiteditData.sat_submiteditmodelid,
  187. "sat_submiteditid": this.data.submiteditData.sat_submiteditid,
  188. onceonly: this.data.oneToOne ? 0 : 1
  189. }
  190. }).then(s => {
  191. this.setData({
  192. loading: false
  193. })
  194. if (s.msg != '成功') return wx.showToast({
  195. title: s.data,
  196. icon: "none"
  197. });
  198. wx.showToast({
  199. title: '提交成功',
  200. });
  201. res.data.status = '已提报';
  202. let submitedit = this.data.detailsData.submitedit;
  203. let i = submitedit.findIndex(v => v.sat_submiteditid == res.data.sat_submiteditid);
  204. i == -1 ? submitedit.push(res.data) : submitedit[i] = res.data;
  205. this.setData({
  206. "detailsData.submitedit": submitedit,
  207. submiteditData: [],
  208. startRecord: false,
  209. done: this.data.oneToOne == 'true' ? true : '',
  210. content: ""
  211. });
  212. let pages = getCurrentPages();
  213. let prevPage = pages[pages.length - 2];
  214. prevPage.getList(true)
  215. })
  216. })
  217. },
  218. /* 查看提报记录 */
  219. seeHistory(e) {
  220. const {
  221. item
  222. } = e.currentTarget.dataset;
  223. item.attinfos = MFT.fileList(item.attinfos);
  224. this.setData({
  225. recordL: item,
  226. CheckTheRecord: true
  227. })
  228. },
  229. reedit() {
  230. this.setData({
  231. CheckTheRecord: false,
  232. submiteditData: this.data.recordL,
  233. startRecord: true,
  234. content: this.data.recordL.content
  235. })
  236. },
  237. recordClose() {
  238. this.setData({
  239. recordL: {},
  240. CheckTheRecord: false
  241. })
  242. },
  243. /**
  244. * 生命周期函数--监听页面初次渲染完成
  245. */
  246. onReady() {
  247. },
  248. /**
  249. * 生命周期函数--监听页面显示
  250. */
  251. onShow() {
  252. },
  253. /**
  254. * 生命周期函数--监听页面隐藏
  255. */
  256. onHide() {
  257. },
  258. /* 文本域输入 */
  259. textareaInput(e) {
  260. this.setData({
  261. content: e.detail.value
  262. })
  263. },
  264. /**
  265. * 生命周期函数--监听页面卸载
  266. */
  267. onUnload() {
  268. let submiteditData = this.data.submiteditData;
  269. if (submiteditData != {} && submiteditData.status == '未提报') {
  270. this.delete_submitdetailed(submiteditData.sat_submiteditid);
  271. let attinfos = this.data.submiteditData.attinfos;
  272. if (attinfos.length) {
  273. let linksids = [];
  274. for (let i = 0; i < attinfos.length; i++) {
  275. linksids.push(attinfos[i].linksid)
  276. };
  277. _Http.basic({
  278. "classname": "system.attachment.Attachment",
  279. "method": "deleteFileLink",
  280. "content": {
  281. linksids
  282. }
  283. }).then(res => {
  284. console.log('删除附件', res)
  285. })
  286. }
  287. }
  288. },
  289. /* 删除未提报数据 */
  290. delete_submitdetailed(id, i = 0) {
  291. if (i == 5) return;
  292. _Http.basic({
  293. "classname": "saletool.submitedit.submitedit",
  294. "method": "delete_submitdetailed",
  295. "content": {
  296. "sat_submiteditid": id
  297. }
  298. }).then(res => {
  299. console.log(res)
  300. if (res.data != "成功") return this.delete_submitdetailed(id, i + 1);
  301. })
  302. },
  303. /**
  304. * 页面相关事件处理函数--监听用户下拉动作
  305. */
  306. onPullDownRefresh() {
  307. },
  308. /**
  309. * 页面上拉触底事件的处理函数
  310. */
  311. onReachBottom() {
  312. },
  313. /**
  314. * 用户点击右上角分享
  315. */
  316. onShareAppMessage() {
  317. }
  318. })