index.js 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. Component({
  2. properties: {
  3. list: {
  4. type: Array
  5. },
  6. disabled: {
  7. type: Boolean,
  8. value: true
  9. },
  10. change: {
  11. type: Function
  12. },
  13. handleDetele: {
  14. type: Function
  15. }
  16. },
  17. options: {
  18. addGlobalClass: true
  19. },
  20. lifetimes: {
  21. attached: function () {
  22. getApp().globalData.Language.getLanguagePackage(this)
  23. }
  24. },
  25. methods: {
  26. /* 步进器修改 */
  27. onChange(e) {
  28. let index = e.currentTarget.dataset.index,
  29. item = this.data.list[index];
  30. switch (e.type) {
  31. case "blur":
  32. if (item.qty == e.detail.value - 0) return;
  33. item.qty = e.detail.value - 0;
  34. break;
  35. case "plus":
  36. item.qty += 1;
  37. break;
  38. case "minus":
  39. item.qty -= 1;
  40. break;
  41. };
  42. this.toChange(item, index)
  43. },
  44. onBlur(e) {
  45. let index = e.currentTarget.dataset.index,
  46. item = this.data.list[index];
  47. if (item.price == e.detail.value - 0) return;
  48. item.price = e.detail.value - 0;
  49. this.toChange(item, index)
  50. },
  51. toChange(item, index) {
  52. item.amount = ((item.qty - 0) * (item.price - 0)).toFixed();
  53. this.triggerEvent("change", {
  54. item,
  55. index
  56. })
  57. },
  58. deleteProduct(e) {
  59. let that = this;
  60. const {
  61. item
  62. } = e.currentTarget.dataset;
  63. wx.showModal({
  64. title: getApp().globalData.Language.getMapText('提示'),
  65. content: getApp().globalData.Language.getMapText('是否确定删除该费用'),
  66. cancelText: getApp().globalData.Language.getMapText('取消'),
  67. confirmText: getApp().globalData.Language.getMapText('确定'),
  68. complete: (res) => {
  69. if (res.confirm) that.triggerEvent("handleDetele", item.sa_quotedprice_specialitemsid)
  70. }
  71. })
  72. }
  73. }
  74. })