|
@@ -0,0 +1,99 @@
|
|
|
+const _Http = getApp().globalData.http;
|
|
|
+Page({
|
|
|
+ data: {
|
|
|
+ paging: {
|
|
|
+ "pageNumber": 1,
|
|
|
+ "pageSize": 20,
|
|
|
+ "pageTotal": 1,
|
|
|
+ },
|
|
|
+ result: [],
|
|
|
+ },
|
|
|
+ onLoad(options) {
|
|
|
+ let item = JSON.parse(options.data);
|
|
|
+ console.log(item)
|
|
|
+ this.setData({
|
|
|
+ item,
|
|
|
+ result: item.value ? Array.isArray(item.value) ? item.value : [item.value] : []
|
|
|
+ })
|
|
|
+ this.getList();
|
|
|
+ },
|
|
|
+ toggle(e) {
|
|
|
+ const {
|
|
|
+ item
|
|
|
+ } = e.currentTarget.dataset;
|
|
|
+ let result = this.data.result;
|
|
|
+ if (this.data.item.optionType == 'checkbox') {
|
|
|
+ let index = result.findIndex(v => v == item.value);
|
|
|
+ if (index == -1) {
|
|
|
+ result.push(item.value)
|
|
|
+ } else {
|
|
|
+ result.splice(index, 1)
|
|
|
+ }
|
|
|
+ this.setData({
|
|
|
+ result
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ this.setData({
|
|
|
+ result: [item.value]
|
|
|
+ })
|
|
|
+ this.submit();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ getList(init = false) {
|
|
|
+ let {
|
|
|
+ pageNumber,
|
|
|
+ pageTotal,
|
|
|
+ pageSize
|
|
|
+ } = this.data.paging;
|
|
|
+ if (init) {
|
|
|
+ pageNumber = 1;
|
|
|
+ pageTotal = 1;
|
|
|
+ };
|
|
|
+ if (pageNumber > pageTotal) return;
|
|
|
+ _Http.basic({
|
|
|
+ "classname": "sysmanage.develop.optiontype.optiontype",
|
|
|
+ "method": "optiontypeselect",
|
|
|
+ "content": {
|
|
|
+ pageNumber,
|
|
|
+ pageSize,
|
|
|
+ "typename": this.data.item.optionNmae,
|
|
|
+ "parameter": {
|
|
|
+ "siteid": wx.getStorageSync('siteP').siteid
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }).then(res => {
|
|
|
+ if (res.msg != '成功') {
|
|
|
+ wx.showToast({
|
|
|
+ title: res.data,
|
|
|
+ icon: "none"
|
|
|
+ })
|
|
|
+ return;
|
|
|
+ };
|
|
|
+ this.setData({
|
|
|
+ list: res.pageNumber == 1 ? res.data : this.data.list.concat(res.data),
|
|
|
+ "paging.pageNumber": res.pageNumber + 1,
|
|
|
+ "paging.pageTotal": res.pageTotal,
|
|
|
+ "paging.total": res.total,
|
|
|
+ })
|
|
|
+ console.log("可选项查询", res)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ submit() {
|
|
|
+ let item = this.data.item;
|
|
|
+ if (item.optionType == 'checkbox') {
|
|
|
+ item.value = this.data.result
|
|
|
+ } else {
|
|
|
+ item.value = this.data.result[0]
|
|
|
+ };
|
|
|
+ const pages = getCurrentPages();
|
|
|
+ pages[pages.length - 2].selectComponent(item.model || "#Form").setOption(item);
|
|
|
+ wx.navigateBack();
|
|
|
+ item.setFun && getApp().globalData.optionFun && getApp().globalData.optionFun({
|
|
|
+ item,
|
|
|
+ list: this.data.result.map(v => this.data.list.find(s => s.value == v))
|
|
|
+ });
|
|
|
+ },
|
|
|
+ onReachBottom() {
|
|
|
+ this.getList();
|
|
|
+ },
|
|
|
+})
|