| | |
| | | <template> |
| | | <view class="uni-page-modal-3200"> |
| | | <view class="uni-page-modal-3200" :class="largeMode?'large-mode':''"> |
| | | <view class="v-content"> |
| | | <!-- 表头样式 --> |
| | | <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" @focus="ontap" |
| | | @change="onEnterChange" @click-prefix="onEnterChange" @click-suffix="onEnterChange"></OIForm> |
| | | <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" @on-focus="ontap" |
| | | @on-change="onEnterChange" @on-click-prefix="onEnterChange" @on-click-suffix="onEnterChange"></OIForm> |
| | | <view class="v-scroll-view"> |
| | | <scroll-view :scroll-top="scrollTop" :scroll-y="true" class="scroll-y" @scrolltolower="scrolltolower" |
| | | @scroll="scroll"> |
| | |
| | | <view class="uni-padding-wrap" v-if="param.ListPage.Page_Button.length>0"> |
| | | <view class="uni-btn-v"> |
| | | <a @tap="actionSheetTap"> |
| | | <Icon class="mobox-normal-more" /> |
| | | <text class="mobox-normal-more" /> |
| | | </a> |
| | | </view> |
| | | </view> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import Base64 from '../../components/js-base64/base64.js' |
| | | import { |
| | | Base64 |
| | | } from '@/js/Base64.js'; |
| | | import classUtils from "@/js/utils.js" |
| | | import { |
| | | appGetInfo, |
| | |
| | | } from "@/api/data.js" |
| | | import dayjs from "dayjs"; |
| | | import OIForm from '@/components/oi-form/index.vue' |
| | | import buttonClickMixin from '@/mixins/button-click.js'; |
| | | |
| | | export default { |
| | | modules: { |
| | | Base64, |
| | | }, |
| | | mixins: [buttonClickMixin], |
| | | components: { |
| | | OIForm |
| | | }, |
| | |
| | | }, |
| | | data() { |
| | | return { |
| | | largeMode: getApp().globalData.largeMode || false, |
| | | title: this.translateSys('add2'), |
| | | isFilter: true, |
| | | param: {}, |
| | |
| | | uni.setNavigationBarTitle({ |
| | | title: options.titlename |
| | | }); //设置顶部标题 |
| | | this.$data.title = options.titlename; |
| | | this.$data.param = JSON.parse(options.param); |
| | | this.title = options.titlename; |
| | | this.param = JSON.parse(options.param); |
| | | |
| | | |
| | | this.styledef = {}; |
| | |
| | | // this.query_id = ""; |
| | | // await this.loadDataGetList(); |
| | | // } |
| | | // console.log(this.$data.param); |
| | | // console.log(this.param); |
| | | //页面初始化获取焦点 |
| | | // this.focusMateria=true; |
| | | }, |
| | |
| | | //传入参数值 |
| | | if (paramValue) { |
| | | const attrs = paramValue.attrs || []; |
| | | (this.$data.head_styledef?.form?.items || []).forEach(async (ele, index) => { |
| | | (this.head_styledef?.form?.items || []).forEach(async (ele, index) => { |
| | | if (ele.name != "Layout") { |
| | | attrs.forEach(async (ele2, index2) => { |
| | | if (ele.fieldId == ele2.name) { |
| | |
| | | if (!result.style_def.includes('"')) styledef = Base64.decode(result |
| | | .style_def); |
| | | } |
| | | $this.$data.head_styledef = result.style_def ? JSON.parse(styledef) : {}; |
| | | $this.head_styledef = result.style_def ? JSON.parse(styledef) : {}; |
| | | // this.form = this.head_styledef.form.model; |
| | | // console.log($this.$data.head_styledef); |
| | | // console.log($this.head_styledef); |
| | | if ($this.head_styledef.form?.items) { |
| | | $this.head_styledef.form.items.forEach(async (ele, index) => { |
| | | console.log(ele.useDict); |
| | |
| | | $this.head_styledef.form |
| | | .model[ele.fieldId] = itemName; |
| | | } |
| | | $this.head_styledef.form.items[index].dict = selections.map((a) => { |
| | | $this.head_styledef.form.items[index].selections = selections.map(( |
| | | a) => { |
| | | return { |
| | | value: a.value, |
| | | text: a.label |
| | |
| | | } |
| | | |
| | | }); |
| | | const app = getApp() |
| | | if (app.globalData.bindClasses) { |
| | | $this.head_styledef.form.items.push({ |
| | | name: "Input", |
| | | label: this.translate("classes"), |
| | | labelWidth: 100, |
| | | disabled: true, |
| | | value: app.globalData.classes, |
| | | setting: { |
| | | width: 100, |
| | | height: 50, |
| | | }, |
| | | bind: { |
| | | attr: "", |
| | | }, |
| | | fieldId: "S_CLASSES", |
| | | }) |
| | | $this.head_styledef.form.model["S_CLASSES"] = app.globalData.classes |
| | | } |
| | | |
| | | } |
| | | } catch (ex) { |
| | |
| | | if (!result.style_def.includes('"')) styledef = Base64.decode(result |
| | | .style_def); |
| | | } |
| | | $this.$data.detail1_styledef = result.style_def ? JSON.parse(styledef) : {}; |
| | | $this.$data.detail1_styledef.SelBut_Checked = false; |
| | | $this.detail1_styledef = result.style_def ? JSON.parse(styledef) : {}; |
| | | $this.detail1_styledef.SelBut_Checked = false; |
| | | } catch (ex) { |
| | | // console.log(ex); |
| | | let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex |
| | |
| | | //刷新当前页面 |
| | | this.initial(); |
| | | // uni.redirectTo({ |
| | | // url:'../modal/3200?param='+JSON.stringify(this.$data.param)+"&titlename="+this.$data.title, |
| | | // url:'../modal/3200?param='+JSON.stringify(this.param)+"&titlename="+this.title, |
| | | // }); |
| | | }, |
| | | //点击显示浏览对象显示页面 |
| | |
| | | } |
| | | } |
| | | }); |
| | | } else that.onButtonClicked(btn, style); |
| | | } else { |
| | | this.handleButtonClick((done) => { |
| | | that.onButtonClicked(btn, style); |
| | | setTimeout(() => { |
| | | done(); // 重置状态 |
| | | }, 1000); |
| | | }); |
| | | } |
| | | }, |
| | | //点击按钮列表 |
| | | actionSheetTap() { |
| | |
| | | var dataInfo = { |
| | | ed_type: 0, |
| | | start_transaction: true, |
| | | class_id: this.$data.head_styledef.form.clsId, |
| | | class_id: this.head_styledef.form.clsId, |
| | | class_name: '', |
| | | event_id: event.id, |
| | | event_name: '', |
| | |
| | | width: 91%; |
| | | display: inline-block; |
| | | text-align: left; |
| | | |
| | | .uni-forms-item { |
| | | padding-bottom: 5rpx; |
| | | margin-bottom: 0; |
| | | |
| | | .uni-forms-item__label { |
| | | height: 20px !important; |
| | | padding: 0 10rpx 0 0 !important; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .dv-panel-buticon { |
| | |
| | | border-radius: 8rpx; |
| | | } |
| | | |
| | | .dv-panel .txt_title { |
| | | font-size: 34rpx; |
| | | text-align: right; |
| | | display: inline-block; |
| | | } |
| | | |
| | | .dv-panel input { |
| | | vertical-align: middle; |
| | | display: inline-block; |
| | | border: 2rpx solid #d5d5d5; |
| | | width: 68%; |
| | | height: 52rpx; |
| | | line-height: 34rpx; |
| | | background: #FFF; |
| | | border-radius: 14rpx !important; |
| | | color: #2d8cf0; |
| | | padding: 6rpx 8rpx 8rpx; |
| | | font-size: 32rpx; |
| | | font-family: inherit; |
| | | box-shadow: none !important; |
| | | transition-duration: 0.1s; |
| | | margin-top: 0rpx; |
| | | } |
| | | |
| | | .dv-panel input::-webkit-input-placeholder { |
| | | font-size: 10rpx; |
| | | } |
| | | |
| | | .dv-panel .form-item-span { |
| | | vertical-align: text-top; |
| | | color: #2d8cf0; |
| | | white-space: normal; |
| | | word-break: break-all; |
| | | display: inline-block; |
| | | width: calc(100% - 100px); |
| | | } |
| | | |
| | | .dv-panel .form-item-input { |
| | | |
| | | width: calc(100% - 100px); |
| | | } |
| | | |
| | | .dv-panel-button { |
| | | display: inline-block; |