controller.hbs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import {invokeServer, msg, Scope} from 'yvan-ext'
  2. import vjson from "./LzwTest.view"
  3. import model from "./LzwTest.model"
  4. export default class LzwTest extends Scope {
  5. path = '/bas/area/LzwTest/LzwTest'
  6. constructor() {
  7. super({model, vjson});
  8. }
  9. onLoad() {
  10. }
  11. refresh() {
  12. this.refs.grid1.reload()
  13. }
  14. add() {
  15. this.refs.grid1.appendEditRow({}, 1)
  16. }
  17. remove() {
  18. const grid1 = this.refs.grid1
  19. const selected = grid1?.selModel?.selected?.items?.map(row => row.data)[0]
  20. if (selected && grid1?.getStore().getNewRecords().map(row => row.data).indexOf(selected) < 0) {
  21. system.confirm(`真的要删除?`)
  22. .then(() => {
  23. this.setLoading(true)
  24. invokeServer('/bas/area/LzwTest/LzwTest@deleteItem', selected)
  25. .then(res => {
  26. grid1?.removeEditRow()
  27. system.msg(res.msg)
  28. }).finally(() => this.setLoading(false))
  29. })
  30. } else {
  31. grid1?.removeEditRow()
  32. }
  33. }
  34. save() {
  35. let {newRows, modifyRows, removeRecords, err} = system.getGridEditRows(this.refs.grid1)
  36. if (err) return
  37. this.setLoading(true)
  38. invokeServer('/bas/area/LzwTest/LzwTest@saveItems', {newRows, modifyRows, removeRecords,})
  39. .then(res => {
  40. system.msg(res.msg)
  41. this.refs.grid1.reload()
  42. }).finally(() => this.setLoading(false))
  43. }
  44. grid1Select(sender, selected) {
  45. this.viewModel.set('selectedRow', selected[0]?.data)
  46. }
  47. }