From df481aebfb7a19eea5d6c02f93c6f5776b0fdc19 Mon Sep 17 00:00:00 2001 From: cuiqian2004 <cuiqian2004@163.com> Date: 星期五, 23 五月 2025 18:30:41 +0800 Subject: [PATCH] 界面大模式 --- locale/es.json | 1 components/oi-form/list/select/index.vue | 5 pages/selpsn/index.vue | 3 pages/modal/5601.vue | 30 pages/modal/3037_2.vue | 3 pages/modal/3202.vue | 3 locale/en.json | 1 components/oi-form/list/index.vue | 16 components/oi-form/list/input/index.vue | 20 + components/oi-form/list/date-picker-range/index.vue | 17 pages/login/language.vue | 5 pages/login/index.vue | 40 +- pages/modal/classAttr.vue | 3 components/oi-form/list/time-picker/index.vue | 10 components/oi-form/list/date-picker/index.vue | 18 components/oi-form/list/input-number/index.vue | 30 + pages/modal/3018_2.vue | 3 /dev/null | 624 ---------------------------------- pages/modal/3200_view.vue | 3 pages/modal/5602.vue | 3 pages/modal/ms_classAttr.vue | 3 locale/zh-Hans.json | 3 pages/index/index.vue | 47 +- App.vue | 69 +++ components/oi-form/list/text/index.vue | 9 pages/modal/3202_view.vue | 3 pages/login/set.vue | 48 + locale/zh-Hant.json | 1 pages/modal/form/index.vue | 3 pages/modal/3201.vue | 3 pages/modal/3018.vue | 19 components/oi-form/index.vue | 10 pages/selPrj/index.vue | 3 pages/modal/3037.vue | 3 pages/modal/3200.vue | 3 manifest.json | 4 pages/modal/5600.vue | 3 37 files changed, 327 insertions(+), 745 deletions(-) diff --git a/App.vue b/App.vue index bcb407c..6d5eefa 100644 --- a/App.vue +++ b/App.vue @@ -1,6 +1,7 @@ <script> export default { globalData: { + largeMode: false, isMobox3: true, deviceId: "", cname: "", @@ -95,4 +96,72 @@ @import '@/fonts/mobox-plm/style.css'; @import '@/fonts/mobox-sys/style.css'; @import '@/fonts/mobox-wms/style.css'; + + .large-mode { + font-size: 24px !important; + + uni-input { + height: 36px; + + .uni-input-placeholder, + .uni-input-input { + font-size: 24px !important; + } + } + + uni-button, + .uni-forms-item__label, + .uni-section__content-title { + font-size: 24px !important; + } + + uni-checkbox { + .uni-checkbox-input { + height: 32px; + width: 32px; + } + + .uni-checkbox-input-checked:before { + font-size: 30px; + } + } + + uni-radio { + .uni-radio-input { + height: 32px; + width: 32px; + } + + .uni-radio-input-checked:before { + font-size: 30px; + } + } + + .uni-date__x-input { + font-size: 24px !important; + height: 40px !important; + + .uniui-clear { + font-size: 30px !important; + } + } + + .uni-data-tree { + font-size: 24px !important; + .input-value { + height: 45px !important; + font-size: 24px !important; + } + .placeholder { + font-size: 24px !important; + } + } + .segmented-control__text { + font-size: 24px !important; + height: 45px; + + } + + + } </style> \ No newline at end of file diff --git a/components/oi-form/index.vue b/components/oi-form/index.vue index bc92baf..3d23cc7 100644 --- a/components/oi-form/index.vue +++ b/components/oi-form/index.vue @@ -1,5 +1,5 @@ <template> - <uni-forms class="oi-form" ref="baseForm" label-align="right"> + <uni-forms class="oi-form" ref="baseForm" :label-align="largeMode?'left':'right'" :label-position="largeMode?'top':'left'" > <view v-for="(item,index) in form.items" :key="index"> <!-- 鏍呮牸甯冨眬 --> <uni-row v-if="item.name == 'Layout'" v-show="!item.isHidden" :gutter="item.setting.gutter"> @@ -48,7 +48,7 @@ }, data() { return { - + largeMode: getApp().globalData?.largeMode || false, } }, methods: { @@ -97,5 +97,9 @@ </script> <style lang="less"> - .oi-form {} + .oi-form { + + } + + </style> \ No newline at end of file diff --git a/components/oi-form/list/date-picker-range/index.vue b/components/oi-form/list/date-picker-range/index.vue index 698ae8f..81910bd 100644 --- a/components/oi-form/list/date-picker-range/index.vue +++ b/components/oi-form/list/date-picker-range/index.vue @@ -1,9 +1,11 @@ <template> - <uni-datetime-picker v-if="model" type="daterange" :value="toDate(model[data.fieldId])" - :placeholder="data.placeholder" :rangeSeparator="data.setting.separator" border :disabled="data.disabled" - @change="onChange" /> - <uni-datetime-picker v-else type="daterange" :value="data.value" :placeholder="data.placeholder" - :rangeSeparator="data.setting.separator" border :disabled="data.disabled" @change="onChange" /> + <view class="oi-form-date-picker-range"> + <uni-datetime-picker v-if="model" type="daterange" :value="toDate(model[data.fieldId])" + :placeholder="data.placeholder" :rangeSeparator="data.setting.separator" border :disabled="data.disabled" + @change="onChange" /> + <uni-datetime-picker v-else type="daterange" :value="data.value" :placeholder="data.placeholder" + :rangeSeparator="data.setting.separator" border :disabled="data.disabled" @change="onChange" /> + </view> </template> <script> @@ -70,5 +72,8 @@ } </script> -<style> +<style lang="scss"> + .oi-form-date-picker-range { + width: 100%; + } </style> \ No newline at end of file diff --git a/components/oi-form/list/date-picker/index.vue b/components/oi-form/list/date-picker/index.vue index d78bf70..c94a682 100644 --- a/components/oi-form/list/date-picker/index.vue +++ b/components/oi-form/list/date-picker/index.vue @@ -1,8 +1,10 @@ <template> - <uni-datetime-picker v-if="model" type="date" :value="model[data.fieldId]" :placeholder="data.placeholder" border - :disabled="data.disabled" clearIcon @change="onChange" /> - <uni-datetime-picker v-else type="date" :value="data.value" :placeholder="data.placeholder" border - :disabled="data.disabled" clearIcon @change="onChange" /> + <view class="oi-form-date-picker"> + <uni-datetime-picker v-if="model" type="date" :value="model[data.fieldId]" :placeholder="data.placeholder" + border :disabled="data.disabled" clearIcon @change="onChange" /> + <uni-datetime-picker v-else type="date" :value="data.value" :placeholder="data.placeholder" border + :disabled="data.disabled" clearIcon @change="onChange" /> + </view> </template> <script> @@ -19,8 +21,7 @@ data() { return {} }, - computed: { - }, + computed: {}, methods: { onChange(date) { let format = "YYYY-MM-DD"; @@ -78,5 +79,8 @@ } </script> -<style> +<style lang="scss"> + .oi-form-date-picker { + width: 100%; + } </style> \ No newline at end of file diff --git a/components/oi-form/list/index.vue b/components/oi-form/list/index.vue index a32dd99..693b9f9 100644 --- a/components/oi-form/list/index.vue +++ b/components/oi-form/list/index.vue @@ -1,8 +1,8 @@ <template> - <view class="oi-form-item"> + <view class="oi-form-item" :class="largeMode?'large-mode':''"> <uni-forms-item v-show="!hiddenIds.includes(data.fieldId)" :label="data.labelWidth === 0 ? '' : data.label? data.label+'锛�:''" - :label-width="data.labelWidth || data.labelWidth === 0 ? data.labelWidth : 100+'px'" + :label-width="largeMode?'100%': data.labelWidth || data.labelWidth === 0 ? data.labelWidth : 100+'px'" :style="{ textAlign: data.setting.align }"> <OIFormText v-if="viewMode && data.disabled" :data="data" :model="model"> </OIFormText> @@ -85,6 +85,11 @@ default: () => [], }, }, + data() { + return { + largeMode: getApp().globalData?.largeMode || false, + } + }, methods: { onChange(e) { this.$emit("on-change", this.data) @@ -112,5 +117,10 @@ } } - + .oi-form-item.large-mode { + .uni-forms-item { + margin-left: 10rpx; + margin-right: 10rpx; + } + } </style> \ No newline at end of file diff --git a/components/oi-form/list/input-number/index.vue b/components/oi-form/list/input-number/index.vue index 22e57c6..190fe2c 100644 --- a/components/oi-form/list/input-number/index.vue +++ b/components/oi-form/list/input-number/index.vue @@ -1,11 +1,11 @@ <template> <view class="oi-form-input-number"> - <input v-if="model" type="number" class="oi-input-number" :class="data.disabled?'input-disabled':''" v-model="model[data.fieldId]" :focus="focus" - :placeholder="data.placeholder" @blur="onChange" @confirm="onConfirm" @click="onClick" - :disabled="data.disabled"></input> - <input v-else type="number" class="oi-input-number" :class="data.disabled?'input-disabled':''" v-model="data.value" - :focus="focus" :placeholder="data.placeholder" @blur="onChange" @confirm="onConfirm" @click="onClick" - :disabled="data.disabled"></input> + <input v-if="model" type="number" class="oi-input-number" :class="data.disabled?'input-disabled':''" + v-model="model[data.fieldId]" :focus="focus" :placeholder="data.placeholder" @blur="onChange" + @confirm="onConfirm" @click="onClick" :disabled="data.disabled"></input> + <input v-else type="number" class="oi-input-number" :class="data.disabled?'input-disabled':''" + v-model="data.value" :focus="focus" :placeholder="data.placeholder" @blur="onChange" @confirm="onConfirm" + @click="onClick" :disabled="data.disabled"></input> </view> </template> @@ -22,6 +22,11 @@ type: Boolean, default: false }, + }, + data() { + return { + largeMode: getApp().globalData?.largeMode || false, + } }, methods: { onChange(e) { @@ -41,7 +46,7 @@ }; </script> -<style lang="less" scoped> +<style lang="less"> .oi-form-input-number { width: 100%; @@ -60,7 +65,7 @@ background: #FFF; line-height: 20px; border-radius: 6px !important; - font-size: 14px; + font-size: 15px; font-family: inherit; box-shadow: none !important; transition-duration: 0.1s; @@ -71,4 +76,13 @@ border: 1px solid rgb(41, 121, 255); } } + + .large-mode { + .oi-form-input-number { + .oi-input-number { + font-size: 24px; + height: 36px; + } + } + } </style> \ No newline at end of file diff --git a/components/oi-form/list/input/index.vue b/components/oi-form/list/input/index.vue index 5c0c04a..47c85ff 100644 --- a/components/oi-form/list/input/index.vue +++ b/components/oi-form/list/input/index.vue @@ -38,6 +38,11 @@ default: false }, }, + data() { + return { + largeMode: getApp().globalData?.largeMode || false, + } + }, methods: { onChange(e) { this.$emit("on-change", e) @@ -119,4 +124,19 @@ .oi-form-input:hover { border: 1px solid rgb(41, 121, 255); } + + .large-mode { + .oi-form-input { + .oi-input { + font-size: 24px; + height: 36px; + } + + .form-input-icon { + font-size: 30px; + height: 36px; + width: 36px; + } + } + } </style> \ No newline at end of file diff --git a/components/oi-form/list/select/index.vue b/components/oi-form/list/select/index.vue index 8dd294c..e9bbfb4 100644 --- a/components/oi-form/list/select/index.vue +++ b/components/oi-form/list/select/index.vue @@ -29,9 +29,10 @@ }; </script> -<style lang="less" scoped> +<style lang="less"> .oi-form-select { width: 100%; + .data-picker { width: 100%; background: #FFF; @@ -63,4 +64,6 @@ background-color: #f3f3f3 !important; } } + + </style> \ No newline at end of file diff --git a/components/oi-form/list/text/index.vue b/components/oi-form/list/text/index.vue index beb95c3..4cbe40e 100644 --- a/components/oi-form/list/text/index.vue +++ b/components/oi-form/list/text/index.vue @@ -22,10 +22,17 @@ <style lang="scss" scoped> .oi-form-text { word-break: break-all; - + color: #2db7f5; .align-fixed { line-height: 1; padding: 10px 12px 10px 0; } + + } + + .large-mode { + .oi-form-text { + font-size: 24px !important; + } } </style> \ No newline at end of file diff --git a/components/oi-form/list/time-picker/index.vue b/components/oi-form/list/time-picker/index.vue index b694250..8a73cb9 100644 --- a/components/oi-form/list/time-picker/index.vue +++ b/components/oi-form/list/time-picker/index.vue @@ -89,4 +89,14 @@ border: 1px solid #e5e5e5; } } + .large-mode { + .oi-time-picker-x { + font-size: 24px !important; + } + .oi-time-picker-input { + font-size: 24px !important; + height: 40px !important; + } + + } </style> \ No newline at end of file diff --git a/locale/en.json b/locale/en.json index 2b771dc..8770792 100644 --- a/locale/en.json +++ b/locale/en.json @@ -65,6 +65,7 @@ "page.mobox3_port": "Mobox3 service port", "page.mobox3_bind_classes_when_logging_in": "Bind classes when logging in to mobox3", "page.bind_class": "Bind classes", + "page.interface_large_mode": "Large mode interface", "page.classes": "Classes", "page.input_server": "Please enter the server", "page.set_server": "Set up services", diff --git a/locale/es.json b/locale/es.json index 0a10653..84858fb 100644 --- a/locale/es.json +++ b/locale/es.json @@ -64,6 +64,7 @@ "page.mobox3_port": "Puerto de servicio mobox3", "mobox3_bind_classes_when_logging_in": "Mobox3 se une a los turnos al iniciar sesi贸n", "page.bind_classes": "Turnos vinculados", + "page.interface_large_mode": "Interfaz de gran modo", "page.classes": "Turnos", "page.input_server": "Por favor, introduzca el servidor", "page.set_server": "Establecer servicio", diff --git a/locale/zh-Hans.json b/locale/zh-Hans.json index 9f4ec51..0737703 100644 --- a/locale/zh-Hans.json +++ b/locale/zh-Hans.json @@ -64,6 +64,7 @@ "page.mobox3_port": "mobox3鏈嶅姟绔彛", "page.mobox3_bind_classes_when_logging_in": "mobox3 鐧诲綍鏃剁粦瀹氱彮娆�, "page.bind_classes": "缁戝畾鐝", + "page.interface_large_mode": "澶фā寮忕晫闈�, "page.classes": "鐝", "page.input_server": "璇疯緭鍏ユ湇鍔″湴鍧�, "page.set_server": "璁剧疆鏈嶅姟", @@ -77,7 +78,7 @@ "page.update_fail": "鏇存柊澶辫触", "page.get_classes_fail": "鑾峰彇鐝澶辫触", "page.please_login_after_admin_add_classes": "鐝鍒楄〃涓虹┖锛岃鑱旂郴绠$悊鍛樻坊鍔犵彮娆″悗鍐嶇櫥褰�", - + "page.tip_no_app_param": "璇ュ姛鑳界偣鏈厤缃弬鏁帮紝璇烽噸鏂伴厤缃弬鏁�, diff --git a/locale/zh-Hant.json b/locale/zh-Hant.json index 1c20212..815dd1d 100644 --- a/locale/zh-Hant.json +++ b/locale/zh-Hant.json @@ -64,6 +64,7 @@ "page.mobox3_port": "mobox3鏈嶅嫏鍩�, "page.mobox3_bind_classes_when_logging_in": "mobox3鐧诲叆鏅傜秮瀹氱彮娆�, "page.bind_classes": "缍佸畾鐝", + "page.interface_large_mode": "澶фā寮忎粙闈�, "page.classes": "鐝", "page.input_server": "璜嬭几鍏ユ湇鍕欏湴鍧�, "page.set_server": "瑷畾鏈嶅嫏", diff --git a/manifest.json b/manifest.json index eb5fc7f..71004fd 100644 --- a/manifest.json +++ b/manifest.json @@ -2,8 +2,8 @@ "name" : "MoboxPDA", "appid" : "__UNI__56D451E", "description" : "", - "versionName" : "1.1.58", - "versionCode" : 1158, + "versionName" : "1.1.59", + "versionCode" : 1159, "transformPx" : false, /* 5+App鐗规湁鐩稿叧 */ "app-plus" : { diff --git a/pages/index/index.vue b/pages/index/index.vue index 01c53d5..65923ce 100644 --- a/pages/index/index.vue +++ b/pages/index/index.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-index"> + <view class="uni-page-index" :class="largeMode?'large-mode':''"> <view class="area-list" v-if="isMobox3"> <view class="v-area" v-for="(area,index) in data"> <view class="area-name">{{ area.name }}</view> @@ -52,6 +52,7 @@ }, data() { return { + largeMode: getApp().globalData.largeMode || false, title: 'Hello', data: [], isMobox3: getApp().globalData.isMobox3, @@ -298,7 +299,6 @@ width: calc(100% - 40rpx); .area-name { - font-size: 40rpx; width: 100%; padding: 10rpx; } @@ -313,7 +313,6 @@ .app { padding: 20rpx 25rpx 15rpx 25rpx; text-align: center; - font-size: 14px; width: 125rpx; display: flex; flex-direction: column; @@ -328,8 +327,8 @@ .ico { color: #000000; - font-size: 40px; line-height: 105rpx; + font-size: 24px; } } @@ -343,17 +342,6 @@ } - .areaList li { - /* border: 1px solid #0062CC; */ - list-style: none; - /* width: 120rpx; */ - display: inline-block; - padding: 30rpx 10rpx 16rpx 10rpx; - text-align: center; - font-size: 14px; - width: 140rpx; - vertical-align: text-top; - } .logo { height: 120rpx; @@ -366,10 +354,31 @@ border: 0px solid rgb(221, 221, 221); } - .logo i { - color: #000000; - font-size: 40px; - line-height: 120rpx; + } + + .uni-page-index.large-mode { + .area-name { + font-size: 30px; } + + .app { + padding: 20rpx 25rpx 15rpx 25rpx; + width: 175rpx !important; + + .logo { + height: 150rpx !important; + width: 150rpx !important; + + .ico { + line-height: 150rpx !important; + font-size: 30px !important; + } + } + + .app-name { + padding-top: 10rpx !important; + } + } + } </style> \ No newline at end of file diff --git a/pages/login/index.vue b/pages/login/index.vue index 67148bb..0406e93 100644 --- a/pages/login/index.vue +++ b/pages/login/index.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-login" style="width: 100vw;height: 64vh;"> + <view class="uni-page-login " :class="largeMode?'large-mode':''" style="width: 100vw;height: 64vh;"> <div id="headr" class="mui-bar mui-bar-nav"> <image class="logo" src="../../images/login/mobox_log_200.png"></image> </div> @@ -13,7 +13,6 @@ <image class="logo_input" src="../../images/login/person_30.png"></image> </label> <input type="text" class="mui-input" v-model="userName" :placeholder="translateSys('input_login')"> - <!-- <label class="mui-navigate-right" id="namsel"><image class="logo_icon" src="../../images/login/user-photo.png</image></label> --> </div> <div class="mui-input-row"> <label class="la_icon"> @@ -121,6 +120,9 @@ showBtns: true, selectedClasses: "", classesLst: [], + largeMode: false, + + } }, onShow() { @@ -288,12 +290,15 @@ inputDialogToggle() { // this.$refs.inputDialog.open() const $this = this + uni.navigateTo({ url: "./set", events: { exitSetEvent(val) { $this.userServer = val; $this.query(); //鐗堟湰鍗囩骇 + $this.largeMode = getApp().globalData.largeMode + } } }) @@ -493,7 +498,7 @@ showCancel: false, confirmText: this.translateSys('close') }); - + this.selectedClasses = "" this.classesLst = [] // { @@ -534,7 +539,8 @@ var url = utils.session.getValue('server'); var username = utils.session.getValue('account'); var userpwd = utils.session.getValue('password'); - + this.largeMode = utils.session.getValue('large_mode') ? true : false + getApp().globalData.largeMode = this.largeMode var ischecked = false; if (!this.userServer) this.userServer = url; @@ -666,32 +672,14 @@ .mui-input-row input { font-family: 'Helvetica Neue', Helvetica, sans-serif; - font-size: 15px; width: 480rpx; - /* float: right; */ margin-bottom: 0; padding-left: 20rpx; - /* padding-right: 10rpx; */ - /* line-height: 30rpx; */ - height: 85rpx; - /* padding: 7px 40px 7px 0px; */ -webkit-user-select: text; - /* border: 0; */ - /* border-radius: 0; */ box-shadow: none; outline: 0; background: 0 0; -webkit-appearance: none; - } - - .mui-input-group label.mui-navigate-right { - font-size: 25px; - float: right; - padding: 0; - width: 80rpx; - margin-right: 5rpx; - margin-top: -88rpx; - display: inline-block; } button.btn_login { @@ -723,4 +711,12 @@ } } + + .uni-page-login.large-mode{ + .logo_input { + height: 54rpx; + width: 54rpx; + } + } + </style> \ No newline at end of file diff --git a/pages/login/language.vue b/pages/login/language.vue index e54be5b..6052aec 100644 --- a/pages/login/language.vue +++ b/pages/login/language.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-login-language"> + <view class="uni-page-login-language" :class="largeMode?'large-mode':''"> <view class="uni-line" v-for="item in langList" :key='item.value' @click="clickLanguage(item.value)"><text class="name">{{item.name }}</text> <uni-icons v-if="curLang==item.value " type="checkmarkempty" :size="20"></uni-icons> </view> @@ -11,6 +11,7 @@ export default { data() { return { + largeMode: getApp().globalData.largeMode|| false, langList: [{ value: "zh-Hans", name: "涓枃绠�綋" @@ -44,7 +45,7 @@ }, }, onLoad() { - + this.curLang = uni.getLocale() this.oldLang = this.curLang }, diff --git a/pages/login/set.vue b/pages/login/set.vue index 89bf498..3e6b34c 100644 --- a/pages/login/set.vue +++ b/pages/login/set.vue @@ -1,6 +1,6 @@ <template> - <view class="uni-page-login-set"> - <uni-forms class="form" label-align="right" label-width="100px" :form="form"> + <view class="uni-page-login-set" :class="form.largeMode?'large-mode':''"> + <uni-forms class="form" label-align="right" label-width="150px" :form="form"> <uni-section :title="translateSys('page.server')" type="line"> <input type="text" class="input-wrapper" v-model="form.server" :placeholder="translateSys('page.input_server')"> @@ -23,12 +23,18 @@ <input type="number" class="input-wrapper" v-model="form.mongodbSPort"> </uni-forms-item> </uni-section> + + <view> {{translateSys('page.interface_large_mode')}} + <switch :checked="form.largeMode" :style="form.largeMode? '':'transform:scale(0.7)'" + @change="switchLargeMode" /> + </view> + <view> {{translateSys('page.mobox3_bind_classes_when_logging_in')}} - <switch :checked="form.bindClasses" style="transform:scale(0.7)" @change="switchBindClasses" /> + <switch :checked="form.bindClasses" :style="form.largeMode? '':'transform:scale(0.7)'" + @change="switchBindClasses" /> </view> </uni-forms> - <button id='ok' type="default" @tap="onOk" class="btn_ok">{{translateSys("sys.ok")}}</button> - + <button class="btn_ok" type="default" @tap="onOk">{{translateSys("sys.ok")}}</button> </view> </template> @@ -45,7 +51,8 @@ moboxSPort: "", dataSPort: "", mongodbSPort: "", - bindClasses: false + bindClasses: false, + largeMode: false }, } @@ -55,10 +62,11 @@ utils.session.setValue('server', this.form.server); utils.session.setValue('app_type', this.form.appType); + utils.session.setValue('large_mode', this.form.largeMode); let bindInfo = utils.session.getValue('bind_classes') utils.session.setValue('bind_classes', { checked: this.form.bindClasses, - classes: bindInfo?.classes ||"" + classes: bindInfo?.classes || "" }); utils.session.setValue('mobox3_port', { org: this.form.orgSPort, @@ -67,6 +75,7 @@ mongodb: this.form.mongodbSPort }); + getApp().globalData.largeMode = this.form.largeMode const eventChannel = this.getOpenerEventChannel(); eventChannel.emit('exitSetEvent', this.form.server); @@ -81,6 +90,10 @@ switchBindClasses(e) { this.form.bindClasses = e.detail.value }, + switchLargeMode(e) { + this.form.largeMode = e.detail.value + }, + translateSys(t) { if (typeof this.$t == "function") return this.$t(`${t}`) else return t; @@ -92,6 +105,8 @@ this.form.server = utils.session.getValue('server') || ""; this.form.appType = utils.session.getValue('app_type') || "MES"; this.form.bindClasses = utils.session.getValue('bind_classes')?.checked || false + this.form.largeMode = utils.session.getValue('large_mode') ? true : false + console.log(this.form.largeMode) const mobox3Port = utils.session.getValue('mobox3_port'); this.form.orgSPort = mobox3Port?.org || 5101 this.form.moboxSPort = mobox3Port?.mobox || 5102 @@ -112,16 +127,15 @@ .form { padding: 10rpx 20rpx; - } + .input-wrapper { + border: 1px solid #d5d5d5; + width: calc(100% - 16rpx); + padding: 12rpx 8rpx; + } - .input-wrapper { - border: 1px solid #d5d5d5; - width: calc(100% - 16rpx); - padding: 12rpx 8rpx; - } - - .uni-forms-item { - margin: 20rpx; + .uni-forms-item { + margin: 20rpx; + } } button.btn_ok { @@ -133,5 +147,7 @@ border: none; color: #fff; } + + } </style> \ No newline at end of file diff --git a/pages/modal/3018.vue b/pages/modal/3018.vue index 93a00e0..005fed8 100644 --- a/pages/modal/3018.vue +++ b/pages/modal/3018.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-modal-3018"> + <view class="uni-page-modal-3018" :class="largeMode?'large-mode':''"> <view class="v-area" v-for="(classattr,index) in classAttrList"> <div class="class_attr_title" style="display: none;"> <div class="title_line"></div> @@ -304,7 +304,7 @@ <script> import { Base64 - } from '@/js/Base64.js'; + } from '@/js/Base64.js'; import pickerAddress from '../../js/pickerAddress/pickerAddress.vue' import utils from "@/js/utils.js" import { @@ -338,6 +338,7 @@ }, data() { return { + largeMode: getApp().globalData.largeMode || false, title: this.translateSys('ok'), editMode: false, objAttr: {}, @@ -2814,4 +2815,18 @@ transform: translateX(0); } } + + .uni-page-modal-3018.large-mode { + font-size: 24px; + + .tx_title, + .tx_title2 { + font-size: 24px; + } + + .class_attr_title { + font-size: 24px; + } + + } </style> \ No newline at end of file diff --git a/pages/modal/3018_2.vue b/pages/modal/3018_2.vue index 674ed56..2565b03 100644 --- a/pages/modal/3018_2.vue +++ b/pages/modal/3018_2.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-modal-3018-2"> + <view class="uni-page-modal-3018-2" :class="largeMode?'large-mode':''"> <view class="view-content"> <!-- 琛ㄥご鏍峰紡 --> <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" :focusId="focusFieldId" @@ -75,6 +75,7 @@ }, data() { return { + largeMode: getApp().globalData.largeMode || false, title: this.translateSys('add2'), btnName: "", param: {}, diff --git a/pages/modal/3037.vue b/pages/modal/3037.vue index 8355d50..8705578 100644 --- a/pages/modal/3037.vue +++ b/pages/modal/3037.vue @@ -1,5 +1,5 @@ <template> - <view class="content"> + <view class="content" :class="largeMode?'large-mode':''"> <!-- 涓绘暟鎹�--> <view class="v-area" v-for="(classattr,index) in classAttrList"> <div class="class_attr_title" style="display: none;"> @@ -679,6 +679,7 @@ }, data() { return { + largeMode: getApp().globalData.largeMode || false, title: '鏂板', param: {}, classAttrList: [], diff --git a/pages/modal/3037_2.vue b/pages/modal/3037_2.vue index 4ed0626..d75271d 100644 --- a/pages/modal/3037_2.vue +++ b/pages/modal/3037_2.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-modal-3017-2"> + <view class="uni-page-modal-3017-2" :class="largeMode?'large-mode':''"> <!-- 琛ㄥご鏍峰紡 --> <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" @on-focus="ontap" @on-change="onEnterChange" @on-click-prefix="classAttr_extButton" @on-click-suffix="classAttr_extButton"> @@ -137,6 +137,7 @@ }, data() { return { + largeMode: getApp().globalData.largeMode || false, title: this.translateSys('add2'), param: {}, edit_inital_event: "", //寮圭獥鍒濆鍖栦簨浠禝D diff --git a/pages/modal/3200.vue b/pages/modal/3200.vue index dc46f40..cea6edd 100644 --- a/pages/modal/3200.vue +++ b/pages/modal/3200.vue @@ -1,5 +1,5 @@ <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" @on-focus="ontap" @@ -108,6 +108,7 @@ }, data() { return { + largeMode: getApp().globalData.largeMode || false, title: this.translateSys('add2'), isFilter: true, param: {}, diff --git a/pages/modal/3200_view.vue b/pages/modal/3200_view.vue index d93b89e..8eb16dd 100644 --- a/pages/modal/3200_view.vue +++ b/pages/modal/3200_view.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-modal-3200-view"> + <view class="uni-page-modal-3200-view" :class="largeMode?'large-mode':''"> <view class="v-content"> <view class="dv-panel dv-panel-bkcolor"> <div class="dv-panel-input"> @@ -67,6 +67,7 @@ }, data() { return { + largeMode: getApp().globalData.largeMode || false, title: this.translateSys('add2'), param: {}, styleDef: { diff --git a/pages/modal/3201.vue b/pages/modal/3201.vue index a2cefb1..5e6160a 100644 --- a/pages/modal/3201.vue +++ b/pages/modal/3201.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-modal-3201"> + <view class="uni-page-modal-3201" :class="largeMode?'large-mode':''"> <view class="dv_head"> <uni-section :title="title"> <view class="example" @@ -51,6 +51,7 @@ mixins: [buttonClickMixin], data() { return { + largeMode: getApp().globalData.largeMode || false, title: '3201棣栭〉', param: {}, show: true, diff --git a/pages/modal/3202.vue b/pages/modal/3202.vue index 3da57fa..c88597c 100644 --- a/pages/modal/3202.vue +++ b/pages/modal/3202.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-modal-3202"> + <view class="uni-page-modal-3202" :class="largeMode?'large-mode':''"> <view class="v-content"> <!-- 琛ㄥご鏍峰紡 --> <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" @on-focus="ontap" @@ -51,6 +51,7 @@ }, data() { return { + largeMode: getApp().globalData.largeMode || false, title: this.translateSys('add2'), isFilter: true, param: {}, diff --git a/pages/modal/3202_view.vue b/pages/modal/3202_view.vue index 2fd3cfb..0ab4c7e 100644 --- a/pages/modal/3202_view.vue +++ b/pages/modal/3202_view.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-modal-3202-view"> + <view class="uni-page-modal-3202-view" :class="largeMode?'large-mode':''"> <view class="v-content"> <!-- 琛ㄥご鏍峰紡 --> <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" viewMode></OIForm> @@ -55,6 +55,7 @@ }, data() { return { + largeMode: getApp().globalData.largeMode || false, title: this.translateSys('add2'), param: {}, styledef: {}, diff --git a/pages/modal/5600.vue b/pages/modal/5600.vue index 4918b6d..85050d8 100644 --- a/pages/modal/5600.vue +++ b/pages/modal/5600.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-modal-5600"> + <view class="uni-page-modal-5600" :class="largeMode?'large-mode':''"> <!-- 琛ㄥご鏍峰紡 --> <view class="view-header"> <view class="v-headStyle" v-for="(item,index) in head_styledef.form.items"> @@ -209,6 +209,7 @@ export default { data() { return { + largeMode: getApp().globalData.largeMode || false, title: this.translateSys("coding_disk"), ClsID: 'CG_Detail', param: {}, diff --git a/pages/modal/5601.vue b/pages/modal/5601.vue index 50bea59..7a5a586 100644 --- a/pages/modal/5601.vue +++ b/pages/modal/5601.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-modal-5601"> + <view class="uni-page-modal-5601" :class="largeMode?'large-mode':''"> <!-- 琛ㄥご鏍峰紡 --> <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" :focusId="focusFieldId" @on-click="onClick" @on-focus="ontap" @on-change="onEnterChange" @on-click-prefix="classAttr_extButton" @@ -17,7 +17,7 @@ <swiper class="view-tabpage" :current="current" @change="changeSwiper"> <!-- 瀛愮晫闈�--> <swiper-item v-for="(pageData, pageIndex) in pageDetail" :key="pageIndex"> - <view class="uni-panel-content"> + <view class="tab-content"> <view class="view-tab-content" :id="'tabpanel' + pageData.Name"> <image class="logo" v-if="pageData.DefList.length==0" src="../../images/mobox_log_200x40.png"> @@ -139,6 +139,7 @@ data() { return { + largeMode: getApp().globalData.largeMode || false, title: this.translateSys("inventory"), ClsID: '', param: {}, @@ -2957,6 +2958,12 @@ flex-direction: column !important; } + .tab-content { + display: flex; + width: 100%; + height: 100%; + flex-direction: column !important; + } .view-bottom { display: flex; @@ -2972,7 +2979,6 @@ .btn-left { padding: 20rpx; line-height: 1.5; - font-size: 38rpx; font-weight: bold; float: left; display: inline-block; @@ -2982,7 +2988,6 @@ .btn-one { padding: 20rpx; line-height: 1.5; - font-size: 38rpx; font-weight: bold; float: left; display: inline-block; @@ -2993,7 +2998,6 @@ .btn-right { padding: 20rpx; line-height: 1.5; - font-size: 38rpx; font-weight: bold; float: right; display: inline-block; @@ -3078,7 +3082,7 @@ .dv-panel-button { width: 100%; text-align: left; - min-height: 30rpx; + min-height: 16px; padding-bottom: 10rpx; checkbox { @@ -3090,7 +3094,7 @@ text-align: left; line-height: 1.5; border: none; - font-size: 30rpx; + margin-right: 10rpx; display: inline-block; float: right; @@ -3150,7 +3154,6 @@ background: #94D5EF; display: block; width: 100%; - font-size: 36rpx; line-height: 80rpx; font-weight: 500; } @@ -3169,8 +3172,6 @@ background: #FFF; border-radius: 0 !important; color: #2d8cf0; - /* padding: 10rpx 8rpx 12rpx; */ - font-size: 34rpx; font-family: inherit; box-shadow: none !important; transition-duration: 0.1s; @@ -3224,7 +3225,6 @@ } .popup-header { - font-size: 42rpx; font-weight: bold; margin: 20rpx 20rpx 0px 20rpx; } @@ -3249,7 +3249,6 @@ background: #27A6E1; border: none; color: #fff; - font-size: 38rpx; font-weight: bold; /* float: left; */ display: inline-block; @@ -3265,7 +3264,6 @@ // color: #fff; background: #fff; color: #000; - font-size: 38rpx; font-weight: bold; /* float: right; */ display: inline-block; @@ -3273,4 +3271,10 @@ } + + .uni-page-modal-5601.large-mode { + .dv-panel-button { + min-height: 32px !important; + } + } </style> \ No newline at end of file diff --git a/pages/modal/5602.vue b/pages/modal/5602.vue index d045b65..2214147 100644 --- a/pages/modal/5602.vue +++ b/pages/modal/5602.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-modal-5602"> + <view class="uni-page-modal-5602" :class="largeMode?'large-mode':''"> <!-- 琛ㄥご鏍峰紡 --> <view class="view-header"> <view class="v-headStyle" v-for="(item,index) in head_styledef.form.items"> @@ -214,6 +214,7 @@ export default { data() { return { + largeMode: getApp().globalData.largeMode || false, title: this.translateSys("sorting"), ClsID: "Distribution_CNTR_Detail", ClsID2: "Picking_Result", diff --git a/pages/modal/classAttr.vue b/pages/modal/classAttr.vue index ecd1e62..b3066d4 100644 --- a/pages/modal/classAttr.vue +++ b/pages/modal/classAttr.vue @@ -1,5 +1,5 @@ <template> - <view class="content"> + <view class="content" :class="largeMode?'large-mode':''"> <view class="v-area" v-for="(classattr,index) in classAttrList"> <div class="class_attr_title" style="display: none;"> <div class="title_line"></div> @@ -311,6 +311,7 @@ }, data() { return { + largeMode: getApp().globalData.largeMode || false, title: '鏂板', param: {}, focusField: "", diff --git a/pages/modal/form/index.vue b/pages/modal/form/index.vue index aee1e43..2d008d7 100644 --- a/pages/modal/form/index.vue +++ b/pages/modal/form/index.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-modal-form"> + <view class="uni-page-modal-form" :class="largeMode?'large-mode':''"> <view class="view-content"> <!-- 琛ㄥご鏍峰紡 --> <OIForm ref="refBaseForm" class="v-head-style" :form="head_styledef.form" :focusId="focusFieldId" @@ -64,6 +64,7 @@ }, data() { return { + largeMode: getApp().globalData.largeMode || false, okLoading: false, title: this.translateSys('add2'), type: '', diff --git a/pages/modal/ms_classAttr.vue b/pages/modal/ms_classAttr.vue index 61959ae..9aefc3d 100644 --- a/pages/modal/ms_classAttr.vue +++ b/pages/modal/ms_classAttr.vue @@ -1,5 +1,5 @@ <template> - <view class="content"> + <view class="content" :class="largeMode?'large-mode':''"> <!-- 涓绘暟鎹�--> <view class="v-area" v-for="(classattr,index) in classAttrList"> <div class="class_attr_title" style="display: none;"> @@ -669,6 +669,7 @@ }, data() { return { + largeMode: getApp().globalData.largeMode || false, title: '鏂板', param: {}, focusField: "", diff --git a/pages/modal/small-wnd/ext-button.vue b/pages/modal/small-wnd/ext-button.vue deleted file mode 100644 index d73c6b3..0000000 --- a/pages/modal/small-wnd/ext-button.vue +++ /dev/null @@ -1,658 +0,0 @@ -<template> - <view class="uni-page-modal-small-wnd-ref-ext-button"> - <view class="uni-panel-ext-button"> - <input class="uni-panel-input" type="text" v-model="visible" :disabled="disabled" @on-blur="onChange" /> - <view class="uni-panel-right-ico"> - <a @click="onClick"><i class="ace-icon fa fa-plus-circle"></i></a> - </view> - </view> - </view> -</template> -<script> - import { - Base64 - } from '@/js/Base64.js'; - import lua from "@/lua"; - import { - showError - } from "@/libs/util"; - import { - runCustomEvent, - } from "@/api/data.js" - - export default { - name: "OIDataSmallDialogRefExtButton", - components: { - - }, - props: { - clsId: String, - icon: String, - action: String, - beforeClickEvent: String, - callbackEvent: String, - enviroment: Object, - objAttr: Object, - modelValue: String, - form: Object, - disabled: Boolean, - }, - data() { - return { - openDataQueryDlg: { - visible: false, - title: "", - param: {}, - }, - openSelectUserDlg: { - visible: false, - title: "", - subTitle: "", - orgShowDept: false, - orgShowUser: true, - orgShowRole: false, - showOrgTab: true, - showUserTab: true, - multi: false, - }, - openCommonDlg: { - visible: false, - param: {}, - }, - }; - }, - computed: { - visible: { - get() { - return this.modelValue; - }, - set(value) { - this.$emit("update:modelValue", value); - }, - }, - actionId() { - let id = this.action; - if (!id) return ""; - if (id[0] != "{" && id[id.length - 1] != "}") id = `{${id}}`; - return id; - }, - beforeClickEventId() { - let id = this.beforeClickEvent; - if (!id) return ""; - if (id[0] != "{" && id[id.length - 1] != "}") id = `{${id}}`; - return id; - }, - callbackEventId() { - let id = this.callbackEvent; - if (!id) return ""; - if (id[0] != "{" && id[id.length - 1] != "}") id = `{${id}}`; - return id; - }, - }, - methods: { - setData(obj) { - let that = this; - let keys = []; - let val, data; - - Object.keys(obj).forEach(function(key) { - keys = key.split("."); - val = obj[key]; - data = that.$data; - keys.forEach(function(key2, index) { - if (index + 1 == keys.length) { - that.$set(data, key2, val); - } else { - if (!data[key2]) { - that.$set(data, key2, {}); - } - } - data = data[key2]; - }); - }); - }, - - async onClick() { - try { - if (!this.beforeClickEventId) - return this.$Message.warning("鏈寚瀹氣�鐐瑰嚮鎸夐挳鍓嶁�浜嬩欢"); - if (!this.callbackEventId) - return this.$Message.warning("鏈寚瀹氣�鎸夐挳鍥炶皟鈥濅簨浠�); - this.dataObjRunCustomEvent_Return(); - - } catch (ex) { - this.showError(ex); - } - }, - async onClicked({ - inputParameter = {}, - dataJson = [] - }) { - try { - let extInfo = { - ...this.enviroment, - edit_dlg: { - type: "small", - class_id: this.clsId, - }, - }; - if (typeof inputParameter == "object") - inputParameter = JSON.stringify(inputParameter); - await lua( - this, - await runCustomEvent({ - ed_type: 0, - class_id: this.clsId, - event_id: this.callbackEventId, - obj_attr: this.objAttr, - ext_info: Base64.encode(JSON.stringify(extInfo)), - data_json: Base64.encode(JSON.stringify(dataJson)), - input_param: Base64.encode(inputParameter), - }) - ); - } catch (ex) { - this.showError(ex); - } - }, - dataObjRunCustomEvent(info, data_attr) { - var $this = this; - let extInfo = { - ...this.enviroment, - edit_dlg: { - type: "small", - class_id: this.clsId, - }, - }; - - var global_attr = Base64.encode(JSON.stringify({})); //灏嗗瓧绗︿覆杞崲涓篵as}e64缂栫爜 - if (info.dataJson) - info.dataJson = Base64.encode(JSON.stringify(info.dataJson)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - var obj_attr = {}; - info.attr.forEach(item => { - obj_attr[item.attr] = item.val; - }); - extinfo = Base64.encode(JSON.stringify(extinfo)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - var dataInfo = { - ed_type: info.edtype, - start_transaction: '', - class_id: info.clsid, - class_name: '', - event_id: info.eventid, - event_name: '', - data_obj_id: info.objid, - obj_attr: obj_attr, - prj_id: info.projectid, - ref_cls_id: info.rclsid, - rel_obj_id: info.robjid, - user_login: info.userlogin, - data_json: info.dataJson, - compose_info: '', - ext_info: extinfo, - global_attr: global_attr, - input_param: '', - }; - console.log(dataInfo); - // return; - runCustomEvent(dataInfo).then(data => { - console.log(data); - if (data.ret != 0) { - var tip = data.err_info ? typeof data.err_info == 'string' ? data.err_info : - data - .err_info.join('<br/>') : ''; - if (data.ret == 801) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - else uni.showModal({ - title: this.translateSys('tip'), - content: tip + ',鎻愮ず:' + data.ret, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return false - } else { - var tip = data.info ? typeof data.info == 'string' ? data.info : data.info - .join( - '<br/>') : ''; - if (tip) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - - var actionlist = data.action; - if (actionlist) { - console.log(actionlist); - for (var i = 0; i < actionlist.length; i++) { - var action = actionlist[i]; - if (action.action_type == 'set_dlg_attr') { - var result = action.value; - for (var i = 0; i < result.length; i++) { - if (result[i].choice_list) { - for (var c = 0; c < $this.$data.classAttrList - .length; c++) { - var attr = $this.$data.classAttrList[c].Attr; - for (var j = 0; j < attr.length; j++) { - if (attr[j].Name == result[i].attr) { - if (utils.classUtils.attrTypeIsDict(attr[j] - .Type)) { - var dictItemList = []; - for (var d in result[i].choice_list) { - var val = result[i].choice_list[d]; - dictItemList.push({ - "CN_S_NAME": val, - "Name": val, - "label": val, - "value": val - }); - } - attr[j].dictitem = dictItemList; - // attr[j].dictitem = result[i].choice_list; - } - } - } - } - } - for (var c = 0; c < $this.$data.classAttrList.length; c++) { - var attr = $this.$data.classAttrList[c].Attr; - for (var j = 0; j < attr.length; j++) { - console.log(attr[j].Name + '==' + result[i].attr); - if (attr[j].Name == result[i].attr) { - attr[j].Value = result[i].value; - } - } - } - var length = 0; - if (!$this.$data.refdatastore.filter(function(s) { - return result[i].attr == s.attr - }).length) { - length = 1; - $this.$data.refdatastore.push(result[i]); - } - if (length == 0) { - for (var j = 0; j < $this.$data.refdatastore.length; j++) { - if ($this.$data.refdatastore[j].attr == result[i] - .attr) { - $this.$data.refdatastore[j].value = result[i] - .value; - } - } - } - } - } else if (data.action[i].action_type == 'set_global_attr') { - $this.$data.global_attr = data.action[i].value || []; - } - } - } - - if (data.result) { - var result = data.result; - for (var i = 0; i < result.length; i++) { - for (var c = 0; c < $this.$data.classAttrList.length; c++) { - var attr = $this.$data.classAttrList[c].Attr; - for (var j = 0; j < attr.length; j++) { - if (attr[j].Name == result[i].attr) { - attr[j].Value = result[i].value; - } - } - } - - var length = 0; - if (!$this.$data.refdatastore.filter(function(s) { - return result[i].attr == s.attr - }).length) { - length = 1; - $this.$data.refdatastore.push(result[i]); - } - if (length == 0) { - for (var j = 0; j < $this.$data.refdatastore.length; j++) { - if ($this.$data.refdatastore[j].attr == result[i].attr) { - $this.$data.refdatastore[j].value = result[i].value; - } - } - } - } - } - } - - }).catch(ex => { - // console.log(ex); - uni.showModal({ - title: this.translateSys('error') + " 3.1", - content: ex.errMsg, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - }); - }, - - dataObjRunCustomEvent_Return() { - let extInfo = { - ...this.enviroment, - edit_dlg: { - type: "small", - class_id: this.clsId, - }, - }; - extinfo = Base64.encode(JSON.stringify(extinfo)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - var global_attr = Base64.encode(JSON.stringify({})); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - var dataInfo = { - ed_type: "0", - class_id: this.clsId, - event_id: this.beforeClickEventId, - obj_attr: this.objAttr, - ext_info: extinfo, - global_attr: global_attr, - }; - console.log(dataInfo); - // return; - runCustomEvent(dataInfo).then(data => { - console.log(data); - if (data.ret != 0) { - var tip = data.err_info ? typeof data.err_info == 'string' ? data.err_info : - data - .err_info.join('<br/>') : ''; - if (data.ret == 801) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - else uni.showModal({ - title: this.translateSys('tip'), - content: tip + ',鎻愮ず:' + data.ret, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return false - } else { - var tip = data.info ? typeof data.info == 'string' ? data.info : data.info - .join( - '<br/>') : ''; - if (tip) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - - if (data != "") { - var actions = data.action; - console.log(actions); - if (actions) { - for (var i = 0; i < actions.length; i++) { - var action = actions[i]; - var val = action.value; - var enviroment = JSON.stringify(enviroment); - - if (action.action_type == 'open_panel') { - - uni.showModal({ - title: this.translateSys('tip'), - content: action.action_type + '姝ction灏氭湭澶勭悊锛� - showCancel: false, - confirmText: this.translateSys('close') - }) - - } else if (action.action_type == 'open_select_userdlg') { - var style = val.style; - var $this = this; - var param = { - button_callback: , - req: req, - data_attr: data_attr - } - uni.navigateTo({ - url: '../selpsn/index?mulit=false¶m=' + JSON - .stringify( - param), - events: { - AddPer(data, param) { - console.log(data, param); - let inputParameter = data; - this.onClicked({ - inputParameter - }); - } - } - }); - } else if (action.action_type == 'open_data_query_dlg') { - uni.showModal({ - title: this.translateSys('tip'), - content: action.action_type + '姝ction灏氭湭澶勭悊锛� - showCancel: false, - confirmText: this.translateSys('close') - }) - } else if (action.action_type == 'open_common_dlg') { - var $this = this; - if (val.common_dlg_id == 'check_list') { - $this.$data.check_list = val.config; - if (val.config.appear_style == 'sideslip') //鍒ゆ柇鏄惁鏄晶婊�- $this.$data.popupType = 'right'; - else - $this.$data.popupType = 'center' - // open 鏂规硶浼犲叆鍙傛暟 绛夊悓鍦�uni-popup 缁勪欢涓婄粦瀹�type灞炴� - $this.$refs.popup.open($this.$data.popupType); - var popupParam = { - index: index, - iindex: iindex, - button_callback: button_callback, - req: req, - data_attr: data_attr - } - $this.$data.popupParam = popupParam; - } - } else if (action.action_type == 'open_project_query_dlg') { - var priRel = '-1'; - if (action.value.select_range == '鍏ㄩ儴鐩稿叧') - priRel = '0'; - else if (action.value.select_range == '鎴戣礋璐g殑椤圭洰') - priRel = '1'; - else if (action.value.select_range == '鎴戝垱寤虹殑') - priRel = '2'; - else if (action.value.select_range == '鎴戝弬涓庣殑' || action.value - .select_range == '鎴戝弬鍔犵殑') - priRel = '3'; - else if (action.value.select_range == '鎴戝叧娉ㄧ殑') - priRel = '4'; - else if (action.value.select_range == '鎴戜笅灞炵殑椤圭洰') - priRel = '5'; - - var $this = this; - var param_ = { - index: index, - iindex: iindex, - button_callback: button_callback, - req: req - } - uni.navigateTo({ - url: '../selPrj/index?relation=' + priRel + - '¶m=' + - JSON.stringify(param_), - events: { - AddPer(data, param) { - $this.$data.classAttrList[param.index] - .Attr[param - .iindex].Value = data[0].Name; - $this.$data.classAttrList[param.index] - .Attr[param - .iindex].ValID = data[0].ID + ';' + - data[0] - .Name; - var callback_eventid = param - .button_callback - .trim(); - if ($this.callbackEventId) { - var info = { - eventid: $this.callbackEventId, - edtype: "2", - projectid: data[0].ID, - rclsid: "", - robjid: "", - userlogin: "", - clsid: $this.clsId, - objid: "", - attr: param.req, - dataJson: [], - } - - $this.DataObjRunCustomEvent(info); - } - } - } - }); - } else { - var d = dialog({ - title: '<i class="ace-icon fa fa-info-circle"></i> ' + - this.translateSys('tip'), - content: action.action_type + '姝ction灏氭湭澶勭悊锛� - }); - d.show(); - } - } - } - } else { - uni.showModal({ - title: this.translateSys('tip') + "5.2", - content: '璋冪敤 before_click_button 鑴氭湰杩斿洖绌猴紝event_id' + eventid, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - } - } - - }).catch(ex => { - // console.log(ex); - uni.showModal({ - title: this.translateSys('tip') + "5.1", - content: ex.errMsg, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - }); - }, - - async onChange() { - try { - if (!this.actionId) return; - let extInfo = { - ...this.enviroment, - }; - await lua( - this, - await runCustomEvent({ - ed_type: 0, - class_id: this.clsId, - event_id: this.actionId, - obj_attr: this.objAttr, - ext_info: Base64.encode(JSON.stringify(extInfo)), - }) - ); - } catch (ex) { - this.showError(ex); - } - }, - async onOpenDataQueryDlgOK(data) { - if (!data) throw new Error("鏈幏鍙栧埌閫変腑鏁版嵁"); - let dataJson = []; - if (data instanceof Array) { - // 澶氶� - data.forEach((d) => { - let id = d.id; - let attrs = []; - Object.keys(d).forEach((attr) => { - let value = (d[attr] || "").replace(/ /g, " "); - attrs.push({ - attr, - value - }); - }); - dataJson.push({ - id, - attrs - }); - }); - } else if (data instanceof Object) { - // 鍗曢� - let id = data.id; - let attrs = []; - Object.keys(data).forEach((attr) => { - let value = (data[attr] || "").replace(/ /g, " "); - attrs.push({ - attr, - value - }); - }); - // dataJson.push({ id, attrs }); - dataJson = { - id, - attrs - }; - } - this.onClicked({ - dataJson - }); - }, - onOpenSelectUserDlgOK(list) { - let inputParameter = ""; - let datas = []; - list.forEach((l) => { - datas.push({ - id: l.id, - name: l.name, - type: l.type, - }); - }); - inputParameter = datas; - this.onClicked({ - inputParameter - }); - }, - onOpenCommonDlgOK(datas) { - let inputParameter = ""; - if (typeof datas == "string") inputParameter = datas; - else inputParameter = JSON.stringify(datas); - this.onClicked({ - inputParameter - }); - }, - setFormValues(attrs) { - this.refSmallDialog.setFormValues(attrs); - }, - hideFormItems(attrs) { - this.refSmallDialog.hideFormItems(attrs); - }, - setFormAllValues(attrs) { - this.$emit("on-set-all-value", attrs); - }, - showError(ex) { - showError(this, ex); - }, - }, - setup() { - - }, - }; -</script> - -<style lang="less"> - .uni-page-modal-small-wnd-ref-ext-button { - .uni-panel-input-content { - display: flex; - flex-direction: row; - width: 100%; - - .uni-panel-input { - flex: 1; - } - - .uni-panel-right-ico { - padding: 5rpx; - margin: 5rpx; - } - } - } -</style> \ No newline at end of file diff --git a/pages/modal/small-wnd/index.vue b/pages/modal/small-wnd/index.vue deleted file mode 100644 index 4fdd1ee..0000000 --- a/pages/modal/small-wnd/index.vue +++ /dev/null @@ -1,2740 +0,0 @@ -<template> - <view class="uni-page-modal-small-wnd"> - <view class="v-area" v-for="(classattr,index) in classAttrList"> - <div class="class_attr_title" style="display: none;"> - <div class="title_line"></div> - <div class="title_icon" :style="{'background-color':classattr.BkColor}"> - <i class="ace-icon fa" :class="classattr.ImgFontStyle"></i> - </div> - <span class="title">{{classattr.Name}}</span> - <a href="javascript:;" class="arrow" @tap="onarrow(index,classattr.Open)"><i class="ace-icon fa " - :class="classattr.Open?'fa-angle-down':'fa-angle-up'"></i></a> - </div> - <div class="class_attr_body" :style="{'display':classattr.Open?'block':'none'}"> - <div class="dv_field_div" v-for="(attr,iindex) in classattr.Attr"> - <view class="form-group" - v-if="attr.Type=='瀛楃涓� || attr.Type=='鍙彉闀垮瓧绗︿覆' || attr.Type=='鏁存暟' || attr.Type=='娴偣鏁� ||attr.Type=='char' || attr.Type=='varchar' || attr.Type=='int' || attr.Type=='float'" - :style="{'display':attr.hidden == true?'none':''}"> - <view v-if="classattr.control_style=='涓婁笅甯冨眬'"> - <text class="tx_title" :style="{'width':classattr.title_p_wdith+'%'}">{{attr.DispName}}:<i - class="i_tishi" v-if="attr.notempty==true">*</i></text> <!-- attr.NotEmpty=='1' --> - <div class="text-right" v-if="attr.ext_button==true"> - <a @tap="classAttr_extButton(index,iindex)"><i - class="ace-icon fa fa-plus-circle"></i></a> - </div> - <input - :type="attr.Type=='鏁存暟' || attr.Type=='娴偣鏁� || attr.Type=='int' || attr.Type=='float'?'number':'text'" - :value="attr.Value" @focus="ontap" @blur="onevent" v-if="attr.Height=='1'" - :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width}" - :disabled="attr.edit?false:true"> - <!-- =='flase'?true:false --> - <textarea :value="attr.Value" @focus="ontap" @blur="onevent" v-else-if="attr.Height=='2'" - :data-index="index" :data-iindex="iindex" style="height:60px;" - :style="{'width':attr.Width}" :disabled="attr.edit?false:true"></textarea> - <textarea :value="attr.Value" @focus="ontap" @blur="onevent" v-else-if="attr.Height=='3'" - :data-index="index" :data-iindex="iindex" style="height:90px;" - :style="{'width':attr.Width}" :disabled="attr.edit?false:true"></textarea> - <!-- 鎵爜鍚庝簨浠惰繑鍥�--> - <div class="input_vallist"> - <ul v-for="(inputval,vindex) in inputValList"> - <li><span>{{inputval.Name}}</span><a href="javascript:;" - @tap="inputValListIsDel(vindex)"><i class="ace-icon fa fa-times"></i></a> - </li> - </ul> - </div> - </view> - <view v-if="classattr.control_style=='宸﹀彸甯冨眬'"> - <p class="tx_title2" :style="{'width':classattr.title_p_wdith+'%'}">{{attr.DispName}}:</p> - <input - :type="attr.Type=='鏁存暟' || attr.Type=='娴偣鏁� || attr.Type=='int' || attr.Type=='float' ?'number':'text'" - class="attr_field" :value="attr.Value" @focus="ontap" @blur="onevent" - v-if="attr.Height=='1'" :data-index="index" :data-iindex="iindex" - :style="{'width': attr.Width.split('%')[0] - classattr.title_p_wdith - (attr.notempty==true?10:5) - (attr.ext_button==true?9:0) +'%'}" - :disabled="attr.edit?false:true"> - <textarea class="attr_field" :value="attr.Value" @focus="ontap" @blur="onevent" - v-else-if="attr.Height=='2'" :data-index="index" :data-iindex="iindex" - style="height:60px;" - :style="{'width': attr.Width.split('%')[0] - classattr.title_p_wdith - (attr.notempty==true?10:5) - (attr.ext_button==true?9:0) +'%'}" - :disabled="attr.edit?false:true"></textarea> - <textarea class="attr_field" :value="attr.Value" @focus="ontap" @blur="onevent" - v-else-if="attr.Height=='3'" :data-index="index" :data-iindex="iindex" - style="height:90px;" - :style="{'width': attr.Width.split('%')[0] - classattr.title_p_wdith - (attr.notempty==true?10:5) - (attr.ext_button==true?9:0) +'%'}" - :disabled="attr.edit?false:true"></textarea> - <div class="text-right2" v-if="attr.ext_button==true"> - <a @tap="classAttr_extButton(index,iindex)"><i - class="ace-icon fa fa-plus-circle"></i></a> - </div> - <i class="i_tishi" v-if="attr.notempty==true">*</i> - </view> - </view> - <view class="form-group" v-if="attr.Type=='甯冨皵鍊� || attr.Type=='bool'" - :style="{'display':attr.hidden == true?'none':''}"> - <checkbox-group class="check_rememberPwd" @change="oncheck" :data-ischeck="attr.Value" - :data-index="index" :data-iindex="iindex" - :style="{'margin-left': classattr.control_style=='宸﹀彸甯冨眬'?classattr.title_p_wdith+2 +'%':'10rpx'}"> - <label> - <checkbox :value="attr.Value" :checked="attr.Value" /> - <text>{{attr.DispName}}<i class="i_tishi" v-if="attr.notempty==true">*</i></text> - </label> - </checkbox-group> - </view> - <view class="form-group" - v-if="attr.Type=='鏃ユ湡' || attr.Type=='鏃堕棿' || attr.Type=='date' || attr.Type=='datetime'" - :style="{'display':attr.hidden == true?'none':''}"> - <view v-if="classattr.control_style=='涓婁笅甯冨眬'"> - <text class="tx_title" :style="{'width':classattr.title_p_wdith+'%'}">{{attr.DispName}}:<i - class="i_tishi" v-if="attr.notempty==true">*</i></text> - <picker mode="date" :value="attr.Value" @change="ondateTime" class="date_iput" - :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width}"> - <view class="picker">{{attr.Value}}</view> - </picker> - </view> - <view v-if="classattr.control_style=='宸﹀彸甯冨眬'"> - <p class="tx_title2" :style="{'width':classattr.title_p_wdith+'%'}">{{attr.DispName}}:</p> - <picker mode="date" :value="attr.Value" @change="ondateTime" class="date_iput attr_field" - :data-index="index" :data-iindex="iindex" - :style="{'width': attr.Width.split('%')[0] - classattr.title_p_wdith - (attr.notempty==true?10:5) +'%'}"> - <view class="picker">{{attr.Value}}</view> - </picker> - <i class="i_tishi" v-if="attr.notempty==true">*</i> - </view> - </view> - <view class="form-group" - v-if="attr.Type=='瀛楀吀' || attr.Type=='瀛楀吀-瀛楃涓� || attr.Type=='瀛楀吀-鏁存暟' || attr.Type=='dict' || attr.Type=='dict-char' || attr.Type=='dict-int'" - :style="{'display':attr.hidden == true?'none':''}"> - <view v-if="classattr.control_style=='涓婁笅甯冨眬'"> - <text class="tx_title">{{attr.DispName}}:<i class="i_tishi" - v-if="attr.notempty==true">*</i></text> - <picker class="section_iput" @change="onchange" :range="attr.dictitem" range-key="CN_S_NAME" - v-if="attr.select==false" :data-index="index" :data-iindex="iindex" - :style="{'width':attr.Width}" :disabled="attr.edit?false:true"> - <label class="">{{ attr.Value }}</label> - </picker> - <select-cy :value="attr.Value" :name="attr.Name" :options="attr.dictitem" - showClearIcon="true" @change="onchange2" v-else-if="attr.select==true" - :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width}" - :disabled="attr.edit?false:true"></select-cy> - </view> - <view v-if="classattr.control_style=='宸﹀彸甯冨眬'"> - <p class="tx_title2" :style="{'width':classattr.title_p_wdith+'%'}">{{attr.DispName}}:</p> - <picker class="section_iput attr_field" @change="onchange" :range="attr.dictitem" - range-key="CN_S_NAME" v-if="attr.select==false" :data-index="index" - :data-iindex="iindex" - :style="{'width': attr.Width.split('%')[0] - classattr.title_p_wdith - (attr.notempty==true?10:5) +'%'}"> - <label class="">{{ attr.Value }}</label> - </picker> - <select-cy :value="attr.Value" :name="attr.Name" :options="attr.dictitem" - showClearIcon="true" @change="onchange2" v-else-if="attr.select==true" - :data-index="index" :data-iindex="iindex" - :style="{'display':'inline-block','margin-left':'8px','width':attr.Width.split('%')[0] - classattr.title_p_wdith - (attr.notempty==true?10:5) +'%'}"></select-cy> - <i class="i_tishi" v-if="attr.notempty==true">*</i> - </view> - </view> - <view class="form-group" - v-if="attr.Type=='寮曠敤瀵硅薄(鍗曚釜)' || attr.Type=='寮曠敤瀵硅薄(澶氫釜)' ||attr.Type=='obj-ref' || attr.Type=='obj-ref-multi'" - :style="{'display':attr.hidden == true?'none':''}"> - <view v-if="classattr.control_style=='涓婁笅甯冨眬'"> - <text class="tx_title">{{attr.DispName}}:<i class="i_tishi" - v-if="attr.notempty==true">*</i></text> - <div class="text-right" v-if="attr.Type=='寮曠敤瀵硅薄(鍗曚釜)'|| attr.Type=='obj-ref'"> - <a @tap="classAttr_AddRef" :data-classid="attr.RelCls[0].id" - :data-classname="attr.RelCls[0].name"><i class="ace-icon fa fa-plus-circle"></i></a> - </div> - <div class="text-right" v-if="attr.Type=='寮曠敤瀵硅薄(澶氫釜)'|| attr.Type=='obj-ref-multi'"> - <picker class="select" @change="classAttr_AddRef" :range="attr.RelClsList" - range-key="name" :data-index="index" :data-iindex="iindex"> - <label class="">{{ attr.Value }}</label> - </picker> - <a class="class_attr_add_ref"><i class="ace-icon fa fa-plus-circle"></i></a> - </div> - <input type="text" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width}" - disabled="true"> - </view> - <view v-if="classattr.control_style=='宸﹀彸甯冨眬'"> - <p class="tx_title2" :style="{'width':classattr.title_p_wdith+'%'}">{{attr.DispName}}:</p> - <input type="text" class="attr_field" :data-index="index" :data-iindex="iindex" - :style="{'width': attr.Width.split('%')[0] - classattr.title_p_wdith - (attr.notempty==true?10:5) - 9 +'%'}" - disabled="true"> - <div class="text-right2" v-if="attr.Type=='寮曠敤瀵硅薄(鍗曚釜)'|| attr.Type=='obj-ref'"> - <a @tap="classAttr_AddRef" :data-classid="attr.RelCls[0].id" - :data-classname="attr.RelCls[0].name"><i class="ace-icon fa fa-plus-circle"></i></a> - </div> - <div class="text-right2" v-if="attr.Type=='寮曠敤瀵硅薄(澶氫釜)'|| attr.Type=='obj-ref-multi'"> - <picker class="select" @change="classAttr_AddRef" :range="attr.RelClsList" - range-key="name" :data-index="index" :data-iindex="iindex"> - <label class="">{{ attr.Value }}</label> - </picker> - <a class="class_attr_add_ref"><i class="ace-icon fa fa-plus-circle"></i></a> - </div> - <i class="i_tishi" v-if="attr.notempty==true">*</i> - </view> - </view> - <view class="form-group" v-if="attr.Type=='寮曠敤浜哄憳' ||attr.Type=='user' " - :style="{'display':attr.hidden == true?'none':''}"> - <view v-if="classattr.control_style=='涓婁笅甯冨眬'"> - <text class="tx_title">{{attr.DispName}}:<i class="i_tishi" - v-if="attr.notempty==true">*</i></text> - <div class="text-right"> - <a class="class_attr_add_per" @tap="classAttr_AddPer(index,iindex)"><i - class="ace-icon fa fa-plus-circle"></i></a> - </div> - <input type="text" :value="attr.Value" :style="{'width':attr.Width}" disabled="true"> - </view> - <view v-if="classattr.control_style=='宸﹀彸甯冨眬'"> - <p class="tx_title2" :style="{'width':classattr.title_p_wdith+'%'}">{{attr.DispName}}:</p> - <input type="text" class="attr_field" :value="attr.Value" - :style="{'width': attr.Width.split('%')[0] - classattr.title_p_wdith - (attr.notempty==true?10:5) - 9 +'%'}" - disabled="true"> - <div class="text-right2"> - <a class="class_attr_add_per" @tap="classAttr_AddPer(index,iindex)"><i - class="ace-icon fa fa-plus-circle"></i></a> - </div> - <i class="i_tishi" v-if="attr.notempty==true">*</i> - </view> - </view> - <view class="form-group" v-if="attr.Type=='寮曠敤椤圭洰' ||attr.Type=='project'" - :style="{'display':attr.hidden == true ?'none':''}"> - <view v-if="classattr.control_style=='涓婁笅甯冨眬'"> - <text class="tx_title">{{attr.DispName}}:<i class="i_tishi" - v-if="attr.notempty==true">*</i></text> - <div class="text-right"> - <a href="#" class="class_attr_add_prj" @tap="classAttr_AddPrj(index,iindex)"><i - class="ace-icon fa fa-plus-circle"></i></a> - </div> - <input type="text" :value="attr.Value" :style="{'width':attr.Width}" disabled="true"> - </view> - <view v-if="classattr.control_style=='宸﹀彸甯冨眬'"> - <p class="tx_title2" :style="{'width':classattr.title_p_wdith+'%'}">{{attr.DispName}}:</p> - <input type="text" class="attr_field" :value="attr.Value" - :style="{'width': attr.Width.split('%')[0] - classattr.title_p_wdith - (attr.notempty==true?10:5) - 9 +'%'}" - disabled="true"> - <div class="text-right2"> - <a class="class_attr_add_prj" @tap="classAttr_AddPrj(index,iindex)"><i - class="ace-icon fa fa-plus-circle"></i></a> - </div> - <i class="i_tishi" v-if="attr.notempty==true">*</i> - </view> - </view> - <view class="form-group" v-if="attr.Type=='缂栫爜' || attr.Type=='code'" - :style="{'display':attr.hidden == true ?'none':''}"> - <view v-if="classattr.control_style=='涓婁笅甯冨眬'"> - <text class="tx_title">{{attr.DispName}}:<i class="i_tishi" - v-if="attr.notempty==true">*</i></text> - <input type="text" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width}" - :disabled="attr.edit?false:true"> - </view> - <view v-if="classattr.control_style=='宸﹀彸甯冨眬'"> - <p class="tx_title2" :style="{'width':classattr.title_p_wdith+'%'}">{{attr.DispName}}:</p> - <input type="text" class="attr_field" :data-index="index" :data-iindex="iindex" - :style="{'width': attr.Width.split('%')[0] - classattr.title_p_wdith - (attr.notempty==true?10:5) +'%'}" - :disabled="attr.edit?false:true"> - <i class="i_tishi" v-if="attr.notempty==true">*</i> - </view> - </view> - <view class="form-group" v-if="attr.Type=='鐪佸競鍖� ||attr.Type=='region'" - :style="{'display':attr.hidden == true?'none':''}"> - <view v-if="classattr.control_style=='涓婁笅甯冨眬'"> - <text class="tx_title">{{attr.DispName}}:<i class="i_tishi" - v-if="attr.notempty==true">*</i></text> - <pickerAddress class="date_iput" @change="addresschange" :data-index="index" - :data-iindex="iindex" :style="{'width':attr.Width}">{{attr.Value}}</pickerAddress> - </view> - <view v-if="classattr.control_style=='宸﹀彸甯冨眬'"> - <p class="tx_title2" :style="{'width':classattr.title_p_wdith+'%'}">{{attr.DispName}}:</p> - <pickerAddress class="date_iput attr_field" @change="addresschange" :data-index="index" - :data-iindex="iindex" - :style="{'width': attr.Width.split('%')[0] - classattr.title_p_wdith - (attr.notempty==true?10:5) +'%'}"> - {{attr.Value}} - </pickerAddress> - <i class="i_tishi" v-if="attr.notempty==true">*</i> - </view> - </view> - </div> - </div> - - </view> - <button type="default" @tap="cancel" class="btn_cancel">{{translateSys('cancel')}}</button> - <button type="default" @tap="sava" class="btn_add">{{title}}</button> - <!-- 鏅�寮圭獥 top bottom center left right --> - <view> - <uni-popup class="view-popup" ref="popup" background-color="#fff" @change="popupChange"> - <view class="popup-header">{{check_list.title}}</view> - <view class="popup-content" :class="{ 'popup-height': popupType === 'left' || popupType === 'right' }" - :style="{'width':check_list.width?check_list.width+'px':'200px','height':check_list.height?check_list.height+'px':'88%'}"> - <view class="popup-cont" :style="{'height':check_list.height?check_list.height-45+'px':'415px'}"> - <view class="view_popup_CheckList" v-for="(item,index) in check_list.items"> - <checkbox-group class="check_list" @change="checkChange" :data-ischeck="item.check" - :data-index="index" :style="{'margin-left': '10rpx'}"> - <label> - <checkbox :value="item.check" :checked="item.check" /> - <text>{{item.name}}</text> - </label> - </checkbox-group> - </view> - </view> - <view class="popup-footer"> - <button type="default" @tap="popup_sava" class="btn_popup_add">{{translateSys('ok')}}</button> - <button type="default" @tap="popup_cancel" - class="btn_popup_cancel">{{translateSys('cancel')}}</button> - </view> - </view> - </uni-popup> - </view> - <!-- <button class="button" type="primary" @click="classAttr_extButton('right')"><text class="button-text">鍙充晶</text></button> --> - - </view> -</template> - -<script> - import { - Base64 - } from '@/js/Base64.js'; - import pickerAddress from '../../js/pickerAddress/pickerAddress.vue' - import utils from "@/js/utils.js" - import { - dictGetInfo, - dictItemGetInfo - } from "@/api/mobox.js" - import { - getUIStyleInfo, - classAttrGetList, - runCustomEvent, - dataObjCreate, - dataObjDel - } from "@/api/data.js" - export default { - name: "PageModalSmallWnd", - modules: { - Base64, - }, - components: { - pickerAddress - }, - onBackPress(e) { - // console.log("鐩戝惉杩斿洖鎸夐挳浜嬩欢",e); - if (this.type) { - const eventChannel = this.getOpenerEventChannel(); - // const eventChannel = this.getOpenerEventChannel(); - eventChannel.emit(this.type, ""); - } - }, - data() { - return { - title: this.translateSys('add2'), - style_def: {}, - show_style_list: [], - attrList: [], - param: {}, - dictList: [], - type: '', - classAttrList: [], - classGridStyle: [], - edit_inital_event: "", //寮圭獥鍒濆鍖栦簨浠禝D - edit_ok_event: "", //寮圭獥鐐瑰嚮OK 瑙﹀彂浜嬩欢ID - edit_select_compose_event: "", //閫夋嫨缁勬垚瀵硅薄鏃惰皟鐢�- edit_compose_cls_id: "", - global_attr: [], - refdatastore: [], //寮曠敤鏁版嵁瀛樺偍鍖�/ {attr:'G_PRJ_' + bindattr + '_ID', value:info.id} - inputValList: [{ - Name: "test" - }, { - Name: "test2" - }, { - Name: "test3" - }, { - Name: "test4" - }, { - Name: "test5" - }, { - Name: "test6" - }, { - Name: "test7" - }], - popupType: "center", - check_list: {}, - popupParam: {}, - } - }, - computed: { - editMode() { - return !isNullOrEmpty(this.objId); - }, - }, - onLoad(options) { - // console.log(options); - this.title = options.titlename || (editMode ? this.translateSys('modify') : this.translateSys('add2') + param - .clsName); //璁剧疆鎸夐挳鏂囧瓧 - uni.setNavigationBarTitle({ - title: this.title - }); //璁剧疆椤堕儴鏍囬 - var param = JSON.parse(options.param); - - if (options.type) { - this.$data.type = options.type; - } - console.log(param); - if (!param.clsId) { - uni.showModal({ - title: this.translateSys('tip') + "", - content: this.translate("tip_no_master_class"), - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return; - } - - this.$data.param = param; - this.loadData() - }, - methods: { - setData(obj) { - let that = this; - let keys = []; - let val, data; - - Object.keys(obj).forEach(function(key) { - keys = key.split("."); - val = obj[key]; - data = that.$data; - keys.forEach(function(key2, index) { - if (index + 1 == keys.length) { - that.$set(data, key2, val); - } else { - if (!data[key2]) { - that.$set(data, key2, {}); - } - } - data = data[key2]; - }); - }); - }, - - async loadData() { - - - // uistyle - await this.loadStyleDef(); - // show_style - this.loadShowStyle(); - // attrList - await this.loadAttrList(); - }, - async loadAttrList() { - - try { - var dataInfo = { - class_id: this.param.clsId, - class_name: this.param.clsName, - group_name: '' - }; - this.$data.attrList == await classAttrGetList(dataInfo) || [] - - } catch (ex) { - // console.log(ex); - let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex - uni.showModal({ - title: this.translateSys("error") + "1.1", - content: tip, - showCancel: false, - confirmText: this.translateSys("cancel") - }); - } - }, - async DictItemGetList(attr, name) { //Mobox3寰楀埌瀛楀吀椤瑰垪琛�- - try { - this.data = []; - var dataInfo = { - dict_id: undefined, - dict_name: name - }; - const result = await dictItemGetInfo(dataInfo) - let dicList = result?.dict_item_list || []; - this.dictList[attr.attr] = dicList; - - let dictName = ""; - if (dicList?.length > 0) { - let defaultValue = dicList - .find( - (d) => d.is_default == - 1 - )?.name; - if (defaultValue) dictName = - defaultValue; - else dictName = dicList[0] - .name; - - } - this.form[attr.attr] = dictName; - - } catch (ex) { - uni.showModal({ - title: this.translateSys('error') + " 1.3", - content: ex.errMsg, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return [] - } - - - }, - async loadStyleDef() { - try { - var $this = this; - - var gridstyleInfo = {}; - if (param.editDlg.id) { - gridstyleInfo = { - class_id: this.param.clsId, - ui_style_id: this.param.editDlg.id, - }; - } else { - gridstyleInfo = { - class_id: $this.param.clsId, - ui_style_type: 2, - ui_style_name: this.param.editDlg.name - }; - } - const result = await getUIStyleInfo(gridstyleInfo) - var styledef = Base64.decode(result?.style_def); - this.$data.style_def = JSON.parse(styledef); - } catch (ex) { - uni.showModal({ - title: this.translateSys('error') + " 1.5, - content: ex.errMsg, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return [] - } - }, - - async loadShowStyle() { - if (parseInt(this.style_def.lines) > 1) - this.show_style_list = this.style_def.show_style; - else if (this.style_def.show_style) - this.show_style_list = [{ - line: 1, - lineName: "", - attr_group: this.style_def.show_style, - }, ]; - else { - uni.showModal({ - title: this.translateSys('error'), - content: `鏁版嵁绫烩�${this.param.clsName}鈥濅腑鐨勫皬绐楀彛鈥�{this.param.editDlg.name}鈥濇湭瀹氫箟鈥滄樉绀烘牱寮忊�`, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - - } - }, - async loadForm() { - this.form = {}; - this.errTip = {}; - - await Promise.all( - this.show_style_list.map(async (show_style) => { - await Promise.all( - show_style.map(async (group) => { - let group_def = this.attrList.find( - (a) => a.name == group.attrgroup_name - ); - group.def = { - bk_color: group_def.bk_color, - img_font_style: group_def.img_font_style || - "mobox-sys-mobox", - }; - await Promise.all( - group.attrs.map(async (attr) => { - let attr_def = group_def.attr_list.find( - (a) => a.name == attr.attr - ); - - // 鈥滃皬绐楀彛鈥濅腑鈥滄樉绀洪厤缃�鎸囧畾鐨勫睘鎬у湪褰撳墠鏁版嵁绫讳腑宸插彉鏇达紝鏃犳硶寰楀埌鐩稿簲鐨勫畾涔�- if (!attr_def) { - uni.showModal({ - title: this.translateSys( - 'error'), - content: `褰撳墠鏁版嵁绫烩�${this.clsName}(${this.clsId})鈥濅腑鎵句笉鍒板悕涓衡�${attr.name}(${attr.attr})鈥濈殑灞炴�`, - showCancel: false, - confirmText: this - .translateSys('cancel') - }); - return; - } - attr.def = attr_def; - attr.type = this.getAttrType(show_style, - attr.def); - this.form[attr.attr] = this.defaultValue( - attr.type); - this.errTip[attr.attr] = ""; - if (attr.type == "select") { - if (attr.def.dict_name) { - let res = await dictInfo(attr, - attr.def - .dict_name); - let dicList = res.dict_item_list; - this.dicList[attr.attr] = dicList; - let dictName = ""; - if (dicList?.length > 0) { - let defaultValue = dicList - .find( - (d) => d.is_default == - 1 - )?.name; - if (defaultValue) dictName = - defaultValue; - else dictName = dicList[0] - .name; - } - this.form[attr.attr] = dictName; - } else { - this.dicList[attr.attr] = []; - this.form[attr.attr] = ""; - } - } - }) - ); - }) - ); - - }) - ); - - // this.opened = this.show_style - // .filter((a) => a.open) - // .map((a) => a.attrgroup_name); - - }, - async loadFormData() { - if (isNullOrEmpty(this.dataObj)) { - let obj = await getDataObjInfo({ - class_id: this.clsId, - obj_id: this.objId, - }); - this.show_style_list.forEach((show_style) => { - this.$refs[`line${show_style.line}`][0].loadFormData(obj); - }); - } else { - this.show_style_list.forEach((show_style) => { - this.$refs[`line${show_style.line}`][0].loadFormDataViaDataObj( - this.dataObj - ); - }); - } - }, - getAttrType(show_style, def) { - let type = def?.type; - let height = def?.height; - let ctrlType = ""; - show_style?.forEach((group) => { - ctrlType = group.attrs?.find((a) => a.attr == def.name)?.ctrl_type; - }); - - let guid = ["GUID"]; - let char = ["瀛楃涓�, "鍙彉闀垮瓧绗︿覆", "char", "varchar"]; - let select = ["瀛楀吀-瀛楃涓�, "瀛楀吀-鏁存暟", "dict-char", "dict-int"]; - let int = ["鏁存暟", "int"]; - let float = ["娴偣鏁�, "float"]; - let bool = ["甯冨皵鍊�, "bool"]; - let date = ["鏃ユ湡", "date"]; - let time = ["鏃堕棿", "datetime"]; - let refPsn = ["寮曠敤浜哄憳", "user"]; - - if (guid.includes(type) || char.includes(type)) - return ctrlType == "dropdown" ? - "select" : - height == 2 ? - "textarea" : - height == 3 ? - "textarea" : - "input"; - else if (select.includes(type)) return "select"; - else if (int.includes(type)) return "int"; - else if (float.includes(type)) return "float"; - else if (bool.includes(type)) return "checkbox"; - else if (date.includes(type)) return "date"; - else if (time.includes(type)) return "time"; - else if (refPsn.includes(type)) return "ref-psn"; - else return "unknown"; - }, - defaultValue(type) { - let value = undefined; - switch (type) { - case "input": - value = ""; - break; - case "select": - value = ""; - break; - case "int": - value = ""; - break; - case "float": - value = 0.0; - break; - case "checkbox": - value = false; - break; - case "date": - value = ""; - break; - case "time": - value = ""; - break; - case "ref-psn": - value = {}; - break; - } - return value; - }, - attrLabel(attr) { - if (attr.notempty || attr.def?.not_empty == 1) - return `${attr.name}锛堝繀濉級`; - else return attr.name; - }, - attrRequired(attr) { - if (attr.notempty || attr.def?.not_empty == 1) return true; - else return false; - }, - toHexColor(num) { - return `#${parseInt(num).toString(16)}`; - }, - reset() { - this.form = {}; - this.errTip = {}; - this.opened = []; - this.dicList = {}; - }, - viewParam() { //灏唌obox3灏忓啓鍙傛暟杞崲涓簃obox2澶у啓鍙傛暟 - var class_gridStyle = { - ID: this.$data.classGridStyle.id, - Name: this.$data.classGridStyle.name, - Type: this.$data.classGridStyle.type, - IsDefault: this.$data.classGridStyle.is_defaul, - StyleDef: this.$data.classGridStyle.style_def, - }; - this.$data.classGridStyle = class_gridStyle; - var class_attrList = []; - this.$data.classAttrList.forEach(data => { - var attrs = []; - if (data.attr_list) { - data.attr_list.forEach(attr => { - var dictitems = []; - if (attr.dictitem) { - attr.dictitem.forEach(dict => { - dictitems.push({ - ID: dict.id, - Name: dict.name, - Note: dict.note, - Order: dict.order, - ImgUrl: null, - Code: dict.code, - HasSub: null, - ParentID: null, - ParentName: null, - Lvl: dict.lvl, - IsDefault: dict.is_default, - Value: dict.value, - CN_G_ID: dict.id, - CN_G_DICT_ID: null, - CN_S_NAME: dict.name, - CN_S_NOTE: dict.note, - CN_N_ORDER: dict.order, - CN_S_IMG_URL: null, - CN_S_CODE: dict.code, - CN_C_HAS_SUB: null, - CN_G_PARENT_ITEM_ID: null, - CN_G_PARENT_ITEM_NAME: null, - CN_N_LVL: dict.lvl, - CN_C_IS_DEFAULT: dict.is_default, - CN_S_VALUE: dict.value - }); - }); - } - attrs.push({ - ID: attr.id, - Name: attr.name, - Type: attr.type, - Size: attr.size, - NotEmpty: attr.not_empty, - DefValue: attr.def_value, - Order: attr.order, - DictName: attr.dict_name, - DictID: attr.dict_id, - CodeDefName: attr.code_def_name, - CodeDefID: attr.code_def_id, - RelClsID: null, - RelCls: attr.ref_cls, - Width: attr.width, - Height: attr.height, - CtrlStyle: attr.ctrl_style, - HasAce: attr.has_ace, - CanShow: attr.can_show, - CanQuery: attr.can_query, - ReadOnly: attr.read_only, - IsKey: attr.is_key, - IsFixed: attr.is_fixed, - DispName: attr.disp_name, - LuaAttr: attr.lua_attr, - Desc: attr.desc, - ActionDef: attr.action_def ? Base64.decode(attr - .action_def) : '', - Multilingual: attr.multilingual, - RefCondition: attr.ref_condition, - GroupName: data.group, - Value: null, - dictitem: dictitems - }); - }); - } - class_attrList.push({ - Name: data.group, - Order: data.order, - HasAce: data.has_ace, - BkColor: data.bk_color, - ImgFontStyle: data.img_font_style, - Attr: attrs - }); - }); - this.$data.classAttrList = class_attrList; - // console.log(this.$data.classGridStyle); - // console.log(this.$data.classAttrList); - this.class_attr_init(); - }, - class_attr_init() { - var attrlist = this.$data.classGridStyle.StyleDef.show_style - var newattrlist = []; - if (this.$data.classAttrList.length > 0) { - for (var i = 0; i < attrlist.length; i++) { - var open = attrlist[i].open; - var name = attrlist[i].attrgroup_name; - var attrs = attrlist[i].attrs; - for (var s = 0; s < this.$data.classAttrList.length; s++) { - var clsattr = this.$data.classAttrList[s]; - // if (name == clsattr.Name) { - var attr = []; - for (var j = 0; j < attrs.length; j++) { - for (var l = 0; l < clsattr.Attr.length; l++) { - var ca = clsattr.Attr[l]; - if (attrs[j].attr == ca.Name) { - ca.action = attrs[j].action; - ca.edit = attrs[j].edit; - ca.notempty = attrs[j].notempty; - ca.ext_button = attrs[j].ext_button; - ca.button_img = attrs[j].button_img; - ca.button_tooltip = attrs[j].button_tooltip; - ca.before_click_button = attrs[j].before_click_button; - ca.button_callback = attrs[j].button_callback; - ca.hidden = attrs[j].hidden; - ca.select = attrs[j].select == undefined ? false : attrs[j].select; - ca.Value = ""; - if (ca.dictitem.length > 0) { - if (ca.select == true) - ca.Value = []; //ca.dictitem[0].CN_S_NAME; - else - ca.Value = '璇烽�鎷�; //ca.dictitem[0].CN_S_NAME; - var dictitemlist = []; - for (var d = 0; d < ca.dictitem.length; d++) { - ca.dictitem[d].label = ca.dictitem[d].CN_S_NAME; - ca.dictitem[d].value = ca.dictitem[d].CN_S_NAME; - ca.dictitem[d].attr = ca.Name; - if (ca.dictitem[d].CN_C_IS_DEFAULT == '1') - ca.Value = ca.dictitem[d].CN_S_NAME; - } - } - if (utils.classUtils.attrTypeIsDateTime(ca.Type)) { - var nowDate = new Date(); - var date = { - year: nowDate.getFullYear(), - month: nowDate.getMonth() + 1, - day: nowDate.getDate() - } - ca.Value = date.year + '-' + (date.month >= 10 ? date.month : '0' + - date - .month) + '-' + (date.day >= 10 ? date.day : '0' + date.day); - } - if (utils.classUtils.attrTypeIsObjRefMulti(ca.Type)) { - ca.RelClsList = ca.RelCls; - ca.Value = '璇�; - } - if (utils.classUtils.attrTypeIsRegion(ca.Type)) - ca.Value = '璇烽�鎷�; - if (utils.classUtils.attrTypeIsBool(ca.Type)) - ca.Value = false; - - attr.push(ca); - } - } - } - newattrlist.push({ - BkColor: clsattr.BkColor, - HasAce: clsattr.HasAce, - ImgFontStyle: clsattr.ImgFontStyle, - Name: clsattr.Name, - Order: clsattr.Order, - Open: open, - Attr: attr, - control_style: this.$data.classGridStyle.StyleDef.control_style, - title_p_wdith: this.$data.classGridStyle.StyleDef.title_p_wdith - }) - // } - } - } - if (newattrlist.length > 0) { - this.$data.classAttrList = newattrlist; - } - var req = []; - if (this.$data.classGridStyle.StyleDef) { - if (this.$data.classGridStyle.StyleDef.show_style.length > 0) { - var attrlist = this.$data.classGridStyle.StyleDef.show_style - // $el.find('.attr_field').prop('readonly', true); - // $el.find('.attr_field').prop('disabled', true); - for (var i = 0; i < attrlist.length; i++) { - var attr = attrlist[i].attrs - for (var j = 0; j < attr.length; j++) { - var ar = attr[j]; - req.push({ - attr: ar.attr, - val: ar.value ? ar.value : '' - }); - } - } - } - } - - var eventlist = this.$data.classGridStyle.StyleDef.event; - // console.log(eventlist); - if (eventlist) { - if (eventlist.length > 0) { - for (var i = 0; i < eventlist.length; i++) { - if (eventlist[i].event_id == 'before_ok') { - this.$data.edit_ok_event = eventlist[i]; - } else if (eventlist[i].event_id == 'initial') { - this.$data.edit_inital_event = eventlist[i]; - } else if (eventlist[i].event_id == 'before_select_compose') { - this.$data.edit_select_compose_event = eventlist[i].scrip_id; - this.$data.edit_compose_cls_id = eventlist[i].compose_cls_id; - } - } - } - } - // console.log(req); - if (this.$data.edit_inital_event) { - var eventid = this.$data.edit_inital_event.scrip_id; - var info = { - eventid: eventid, - edtype: "0", - projectid: '', - rclsid: '', - robjid: '', - userlogin: '', - clsid: this.$data.param.clsId, - objid: "", - attr: req, - } - this.ini_DataObjRunCustomEvent(info); - } - console.log(this.$data.classGridStyle); - console.log(this.$data.classAttrList); - - } else { - uni.showModal({ - title: this.translateSys('tip') + "", - content: "鏈壘鍒板彲鏄剧ず鐨勭殑灞炴�", - showCancel: false, - confirmText: this.translateSys('cancel') - }); - } - }, - - classAttr_extButton(index, iindex) { //寮规灞傛樉绀�type:top bottom center left right - var $this = this; - $this.$data.popupType = 'right' - // open 鏂规硶浼犲叆鍙傛暟 绛夊悓鍦�uni-popup 缁勪欢涓婄粦瀹�type灞炴� - $this.$refs.popup.open($this.popupType); - var data_attr = $this.$data.classAttrList[index].Attr[iindex]; - // var value = action.value; - // var action ={"action_type":"open_common_dlg","value":{"common_dlg_id":"check_list","config":{"title":"鐢熶骇宸ュ崟","appear_style":"sideslip","width":250,"multiple_choice":"1","items":[{"id":"133D50D7-D798-4D2E-A15F-308365092DF5","name":"5100691673", "check":false},{"id":"22992021-7D3B-4959-86B7-EF184B596AC6","name":"5100691674", "check":false},{"id":"48FBBE8E-594D-45D5-8C24-385C661C4A1C","name":"5100691675", "check":false},{"id":"4E429C60-325A-42ED-BEA3-B3397C07CCA1","name":"5100691668", "check":false}]}}} - // if (action.action_type == 'open_common_dlg') { - // var value = action.value; - // if(value.common_dlg_id == 'check_list'){ - // $this.$data.check_list= value.config; - // } - // } - // var popupParam={ - // index: index, - // iindex: iindex, - // button_callback:"", - // req:"", - // data_attr:data_attr - // } - // $this.$data.popupParam= popupParam; - // return; - var before_click_button = $this.$data.classAttrList[index].Attr[iindex].before_click_button; - var button_callback = $this.$data.classAttrList[index].Attr[iindex].button_callback; - if (!before_click_button) { - uni.showModal({ - title: this.translateSys('tip') + "", - content: "before_click_button-event_id涓虹┖锛�, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return; - } - if (!button_callback) { - uni.showModal({ - title: this.translateSys('tip') + "", - content: "button_callback-event_id涓虹┖锛�, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return; - } - this.DataObjRunCustomEvent_Return(before_click_button, data_attr, button_callback, index, iindex); - }, - popupChange(e) { - console.log('褰撳墠妯″紡锛� + e.type + ',鐘舵�锛� + e.show); - }, - checkChange(e) { //寮规check閫夋嫨 - // console.log(e.target.dataset); - var index = e.target.dataset.index; - var ischeck = e.target.dataset.ischeck; - var data = this.$data.check_list.items; - // this.$data.check_list.items=[]; - if (this.$data.check_list.multiple_choice == "0") { //鍒ゆ柇鏃跺崟閫夎繕鏄閫�- for (var i in data) { - data[i].check = false; - } - } - data[index].check = ischeck ? false : true; - this.$data.check_list.items = data; - - }, - popup_cancel(e) { //寮规鍙栨秷 - this.$refs.popup.close(); - }, - popup_sava(e) { //寮规纭畾 - var $this = this; - var items = $this.$data.check_list.items; - var data = []; - var name = ""; - for (var i = 0; i < items.length; i++) { - if (items[i].check == true) { - if (name) - name += ';'; - name += items[i].name; - data.push({ - id: items[i].id, - name: items[i].name - }); - } - } - if (!$this.$data.popupParam) { - uni.showModal({ - title: this.translateSys('tip') + "", - content: "popupParam涓虹┖锛�, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return; - } - $this.$data.classAttrList[$this.$data.popupParam.index].Attr[$this.$data.popupParam.iindex].Value = - name; - console.log(data); - var callback_eventid = $this.$data.popupParam.button_callback.trim(); - var info = { - eventid: callback_eventid, - edtype: "0", - projectid: '', - rclsid: '', - robjid: '', - userlogin: '', - clsid: $this.$data.param.clsId, - objid: "", - attr: $this.$data.popupParam.req, - dataJson: data - } - $this.DataObjRunCustomEvent(info, $this.$data.popupParam.data_attr); - this.$refs.popup.close(); - }, - cancel(e) { - if (this.type) { - const eventChannel = this.getOpenerEventChannel(); - // const eventChannel = this.getOpenerEventChannel(); - eventChannel.emit(this.type, ""); - } - uni.navigateBack({ - delta: 1 //杩斿洖灞傛暟锛�鍒欎笂涓婇〉 - }); - }, - ontap(e) { //鎵爜鍔熻兘 - var $ele = e; - //console.log(e.target) - getApp().onScan((result) => { - console.log(result); - this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']] - .Value = - result.decodedata; - uni.hideKeyboard(); - this.onevent($ele, result.decodedata); - }) - }, - onarrow(index, open) { - // console.log(index+'--'+open); - this.$data.classAttrList[index].Open = open == true ? false : true; - }, - ondateTime(e) { - //console.log(e.target) - this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value = e - .target - .value; - }, - onchange(e) { - // console.log(e.target); - var value = this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']] - .dictitem[e - .detail.value]; - var data_attr = this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset[ - 'iindex']]; - // console.log(data_attr); - if (value.Name != data_attr.Value) { - this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value = - value - .Name; - // console.log(this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value); - var eventid = this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset[ - 'iindex']] - .action; - if (eventid) { - // self.event_no_sub = 1; - var req = []; - var attrlist = this.$data.classAttrList; - for (var i = 0; i < attrlist.length; i++) { - var attr = attrlist[i].Attr; - for (var j = 0; j < attr.length; j++) { - var ar = attr[j]; - req.push(this.formatAttr(ar)) - - } - } - var info = { - eventid: eventid, - edtype: "0", - projectid: '', - rclsid: '', - robjid: '', - userlogin: '', - clsid: this.$data.param.clsId, - objid: "", - attr: req, - dataJson: [] - } - this.DataObjRunCustomEvent(info); - } - } - - }, - onchange2(item, value, delvalue) { - // console.log(item); - // console.log(value); - // console.log(delvalue); - //涓虹┖鏃讹紝娓呯┖灞炴�value - if (item.length == 0) { - var index, iindex, dindex = 0; - for (var i in this.$data.classAttrList) { - for (var j in this.$data.classAttrList[i].Attr) { - if (delvalue[0].attr == this.$data.classAttrList[i].Attr[j].Name) { - this.$data.classAttrList[i].Attr[j].Value = ""; - } - } - } - } - - for (var v in item) { - var index, iindex, dindex = 0; - for (var i in this.$data.classAttrList) { - for (var j in this.$data.classAttrList[i].Attr) { - if (item[v].attr == this.$data.classAttrList[i].Attr[j].Name) { - index = i; - iindex = j; - } - } - } - var itemvalue = item[v]; - var data_attr = this.$data.classAttrList[index].Attr[iindex]; - - // console.log(data_attr); - if (itemvalue.Name != data_attr.Value) { - this.$data.classAttrList[index].Attr[iindex].Value = value; - // console.log(this.$data.classAttrList[index].Attr[iindex].Value); - var eventid = this.$data.classAttrList[index].Attr[iindex].action; - if (eventid) { - // self.event_no_sub = 1; - var req = []; - var attrlist = this.$data.classAttrList; - for (var i = 0; i < attrlist.length; i++) { - var attr = attrlist[i].Attr; - for (var j = 0; j < attr.length; j++) { - var ar = attr[j]; - if (utils.classUtils.attrTypeIsDict(ar.Type)) - req.push({ - attr: ar.Name, - value: itemvalue.Name - }); - else - req.push(this.formatAttr(ar)) - } - } - var info = { - eventid: eventid, - edtype: "0", - projectid: '', - rclsid: '', - robjid: '', - userlogin: '', - clsid: this.$data.param.clsId, - objid: "", - attr: req, - dataJson: [], - } - this.DataObjRunCustomEvent(info); - } - } - } - - - }, - onevent(e, decodedata) { - // console.log(e.target); - var data_attr = this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset[ - 'iindex']]; - // console.log(decodedata); - if (e.detail.value != data_attr.Value) { - this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value = - decodedata ? decodedata : e.detail.value; - var eventid = this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset[ - 'iindex']] - .action; - if (eventid) { - // self.event_no_sub = 1; - var req = []; - var attrlist = this.$data.classAttrList; - for (var i = 0; i < attrlist.length; i++) { - var attr = attrlist[i].Attr; - for (var j = 0; j < attr.length; j++) { - var ar = attr[j]; - req.push(this.formatAttr(ar)) - } - } - var info = { - eventid: eventid, - edtype: "0", - projectid: '', - rclsid: '', - robjid: '', - userlogin: '', - clsid: this.$data.param.clsId, - objid: "", - attr: req, - dataJson: [], - } - this.DataObjRunCustomEvent(info, data_attr); - } - } - - }, - oncheck(e) { - // console.log(e.target); - var ischecked = e.target.dataset.ischeck ? false : true; - var data_attr = this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset[ - 'iindex']]; - // console.log(data_attr); - if (ischecked != data_attr.Value) { - this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value = - ischecked; - var eventid = this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset[ - 'iindex']] - .action; - if (eventid) { - // self.event_no_sub = 1; - var req = []; - var attrlist = this.$data.classAttrList; - for (var i = 0; i < attrlist.length; i++) { - var attr = attrlist[i].Attr; - for (var j = 0; j < attr.length; j++) { - var ar = attr[j]; - req.push(this.formatAttr(ar)) - } - } - var info = { - eventid: eventid, - edtype: "0", - projectid: '', - rclsid: '', - robjid: '', - userlogin: '', - clsid: this.$data.param.clsId, - objid: "", - attr: req, - dataJson: [], - } - this.DataObjRunCustomEvent(info); - } - } - - }, - inputValListIsDel(index) { - // console.log(index); - this.$data.inputValList.splice(index, 1); //鍒犻櫎tabPagejson鐨勫唴瀹�- // console.log(this.$data.inputValList); - }, - addresschange(e) { - // console.log(e.target); - console.log(e.data.join(';')) - this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value = e.data - .join( - ';'); - }, - classAttr_AddPer(index, iindex) { - var param = { - index: index, - iindex: iindex - }; - var $this = this; - uni.navigateTo({ - url: '../selpsn/index?mulit=false¶m=' + JSON.stringify(param), - events: { - AddPer(data, param) { - // console.log(param); - console.log(data); - $this.$data.classAttrList[param.index].Attr[param.iindex].Value = data[0].Name; - $this.$data.classAttrList[param.index].Attr[param.iindex].ValID = data[0] - .Login + ';' + - data[0].Name; - - var eventid = $this.$data.classAttrList[param.index].Attr[param.iindex].action; - if (eventid) { - eventid = eventid.trim(); - if (eventid) { - var info = { - eventid: eventid, - edtype: "4", - projectid: "", - rclsid: "", - robjid: "", - userlogin: data[0].Login, - clsid: $this.$data.param.clsId, - objid: "", - attr: [], - dataJson: [], - } - - // var data_attr = $this.$data.classAttrList[param.index].Attr[param.iindex]; - $this.DataObjRunCustomEvent(info); - } - } - } - } - }); - }, - classAttr_AddRef(e) { - console.log(e.target); - uni.showModal({ - title: this.translateSys('tip') + "", - content: "姝ゅ姛鑳借繕鏈疄鐜帮紒", - showCancel: false, - confirmText: this.translateSys('cancel') - }); - // var value=this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].RelCls[e.detail.value]; - // this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value=value; - }, - classAttr_AddPrj(index, iindex) { - var param = { - index: index, - iindex: iindex - }; - var $this = this; - uni.navigateTo({ - url: '../selPrj/index?relation=-1¶m=' + JSON.stringify(param), - events: { - AddPer(data, param) { - // console.log(param); - // console.log(data); - $this.$data.classAttrList[param.index].Attr[param.iindex].Value = data[0].Name; - $this.$data.classAttrList[param.index].Attr[param.iindex].ValID = data[0].ID + - ';' + - data[0].Name; - - var eventid = $this.$data.classAttrList[param.index].Attr[param.iindex].action; - if (eventid) { - eventid = eventid.trim(); - if (eventid) { - var info = { - eventid: eventid, - edtype: "2", - projectid: data[0].ID, - rclsid: "", - robjid: "", - userlogin: "", - clsid: $this.$data.param.clsId, - objid: "", - attr: [], - dataJson: [], - } - - // var data_attr = $this.$data.classAttrList[param.index].Attr[param.iindex]; - $this.DataObjRunCustomEvent(info); - } - } - } - } - }); - }, - //纭畾 - sava() { - if (this.$data.edit_ok_event) - this.OKDataObjRunCustomEvent(); - else - this.add(); - }, - add() { - uni.showLoading({ - title: "鍔犺浇涓�..", - mask: true - }); - var req = []; - var attrlist = this.$data.classAttrList; - for (var i = 0; i < attrlist.length; i++) { - var attr = attrlist[i].Attr; - for (var j = 0; j < attr.length; j++) { - var ar = attr[j]; - if (ar.Value == '璇烽�鎷� || ar.Value == '鈥斺�璇烽�鎷┾�鈥�) ar.Value = ''; - if (utils.classUtils.attrTypeIsDict(ar.Type)) { - if (ar.select == true) { //鍒ゆ柇涓嬫媺鏄惁澶氶� - var valStr = ""; - for (var v in ar.Value) { - if (valStr) - valStr += ";"; - valStr += ar.Value[v]; - } - req.push({ - name: ar.Name, - value: valStr - }); - } else - req.push({ - name: ar.Name, - value: ar.Value - }); - } else { - const node = this.formatAttr(ar) - req.push({ - name: node.attr, - value: node.value - }); - } - - - if (ar.notempty == true && !ar.Value) { - // if(ar.NotEmpty=='1'){ - uni.hideLoading(); - // uni.showToast({title:ar.DispName+'涓嶈兘涓虹┖锛�,icon:"success",duration:3000}); - uni.showModal({ - title: this.translateSys('tip') + "", - content: ar.DispName + '涓嶈兘涓虹┖锛�, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return; - } - } - } - var enviroment = { - 'function': '3000', // 鍔熻兘鐐圭紪鍙�- cls_id: this.$data.param.clsId, // 鍔熻兘鐐逛富鏁版嵁绫绘爣璇�- 'button': 'top', // top/bottom - button_name: '鏂板', - master: { - cls_id: this.$data.param.clsId, - } - }; - - enviroment = Base64.encode(JSON.stringify(enviroment)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - var obj_attr = {}; - req.forEach(item => { - obj_attr[item.name] = item.value; - }); - // console.log(obj_attr); - // var dataInfo={ - // class_id: this.$data.param.clsId, data_obj_id: '', masterclsid: '', - // req: JSON.stringify(req), upfile: JSON.stringify([]), post_data: JSON.stringify({}), - // compose: JSON.stringify([]), refdatastore: JSON.stringify([]), extinfo: JSON.stringify(enviroment), - // not_trigger_sys_event: '' - // }; - var dataInfo = { - class_id: this.$data.param.clsId, - class_name: '', - master_cls_id: '', - master_obj_id: '', - creator: '', - creator_name: '', - not_trigger_event: '', - update_exist: '', - post_process: '', - ext_info: enviroment, - obj_attr: obj_attr - }; - console.log(dataInfo); - // return - dataObjCreate(dataInfo).then(result => { - console.log(result); - uni.hideLoading(); - if (result.action) { - var action = JSON.parse(result.action); - console.log(action); - if (action.ret == '0') { - if (action.ret != 0) { - uni.showModal({ - title: this.translateSys('tip') + "", - content: '鎵ц鑴氭湰澶辫触锛� + action.result, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return; - } - if (action.info) { - uni.showModal({ - title: this.translateSys('tip') + "", - content: '鎵ц鑴氭湰澶辫触锛� + action.info, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return; - } - if (action.result_type == '0') { - uni.showToast({ - title: action.result, - icon: "success", - duration: 3000 - }); - } - - // "{"ret":0, "result_type":0, "result":"鍒涘缓鎴愬姛123123123","info":""}" - } - } else - uni.showToast({ - title: "鍒涘缓鎴愬姛锛�, - icon: "success", - duration: 3000 - }); - //鍒锋柊 - uni.redirectTo({ - url: '../modal/3018?param=' + JSON.stringify(this.$data.param) + - "&titlename=" + this.$data.title - }); - // this.cancel(); - - }).catch(ex => { - console.log(ex); - uni.hideLoading(); - uni.showModal({ - title: this.translateSys('tip') + "", - content: ex.errMsg, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - }); - }, - ini_DataObjRunCustomEvent(info) { - var param = { - EditStyle: this.$data.param.editDlg.name, - ViewStyle: this.$data.param.editDlg.name, - NotTriggerSysEvent: 0, - enviroment: { - 'function': '3000', // 鍔熻兘鐐圭紪鍙�- cls_id: this.$data.param.clsId, // 鍔熻兘鐐逛富鏁版嵁绫绘爣璇�- 'button': 'top', // top/bottom - button_name: '鏂板', - master: { - cls_id: this.$data.param.clsId, // button=bottom鏃�master鐨刢ls_id - //obj_id: '' // button=bottom鏃�master鐨刼bj_id - } - } - } - var inputparameter = ''; - var global_attr = ''; - - param.enviroment = Base64.encode(JSON.stringify(param.enviroment)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - var obj_attr = {}; - info.attr.forEach(item => { - obj_attr[item.attr] = item.val; - }); - // console.log(obj_attr); - // var dataInfo = { - // edtype: info.edtype, eventid: info.eventid, projectid: info.projectid, - // rclsid: info.rclsid, robjid: info.robjid, userlogin: info.userlogin, clsid: info.clsid, objid: info.objid, - // attr: JSON.stringify(info.attr), extinfo: JSON.stringify(param.enviroment), inputparameter: inputparameter, global_attr: global_attr - // } - if (!info.eventid.includes('{')) info.eventid = '{' + info.eventid + '}'; - var dataInfo = { - ed_type: info.edtype, - start_transaction: '', - class_id: info.clsid, - class_name: '', - event_id: info.eventid, - event_name: '', - data_obj_id: info.objid, - obj_attr: obj_attr, - prj_id: info.projectid, - ref_cls_id: info.rclsid, - rel_obj_id: info.robjid, - user_login: info.userlogin, - data_json: '', - compose_info: '', - ext_info: param.enviroment, - global_attr: global_attr, - input_param: inputparameter, - }; - console.log(dataInfo); - // return; - runCustomEvent(dataInfo).then(data => { - console.log(data); - if (data.ret != 0) { - var tip = data.err_info ? typeof data.err_info == 'string' ? data.err_info : - data - .err_info.join('<br/>') : ''; - if (data.ret == 801) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - else uni.showModal({ - title: this.translateSys('tip'), - content: tip + ',鎻愮ず:' + data.ret, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return false - } else { - var tip = data.info ? typeof data.info == 'string' ? data.info : data.info - .join( - '<br/>') : ''; - if (tip) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - - if (data.action) { - var actionlist = data.action; - if (actionlist) { - for (var j = 0; j < actionlist.length; j++) { - var action = actionlist[j]; - var action_type = action.action_type; - var value = action.value; - if (action_type == 'set_dlg_attr') { - if (value) { - console.log(value); - for (var i = 0; i < value.length; i++) { - for (var a = 0; a < this.$data.classAttrList - .length; a++) { - for (var l = 0; l < this.$data.classAttrList[a] - .Attr - .length; l++) { - var ca = this.$data.classAttrList[a].Attr[l]; - if (value[i].attr == ca.Name) { - if (utils.classUtils.attrTypeIsDict(ca - .Type)) { - var dictItemList = []; - for (var d in value[i].choice_list) { - var list_val = value[i] - .choice_list[d]; - dictItemList.push({ - "CN_S_NAME": list_val, - "Name": list_val, - "label": list_val, - "value": list_val - }); - - } - ca.dictitem = dictItemList; - // attr[j].dictitem = val[i].choice_list; - } else { - ca.Value = value[i].value; - } - } - } - } - - var length = 0; - if (!this.$data.refdatastore.filter(function(s) { - return value[i].attr == s.attr - }).length) { - length = 1; - this.$data.refdatastore.push(value[i]); - } - if (length == 0) { - for (var j = 0; j < this.$data.refdatastore - .length; j++) { - if (this.$data.refdatastore[j].attr == value[i] - .attr) { - this.$data.refdatastore[j].value = value[i] - .value; - } - } - } - } - } - } - if (action_type == 'open_select_userdlg') { - uni.showModal({ - title: this.translateSys('error') + " 2.2", - content: "open_select_userdlg杩欎釜action_type杩樻湭澶勭悊锛�, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - } - // else if (action_type == 'tip_dlg') { - - // } - } - } - } - } - - }).catch(ex => { - // console.log(ex); - uni.showModal({ - title: this.translateSys('error') + " 2.1", - content: ex.errMsg, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - }); - }, - DataObjRunCustomEvent(info, data_attr) { - var $this = this; - var enviroment = { - 'function': '3000', // 鍔熻兘鐐圭紪鍙�- cls_id: this.$data.param.clsId, // 鍔熻兘鐐逛富鏁版嵁绫绘爣璇�- 'button': 'top', // top/bottom - button_name: '鏂板', - master: { - cls_id: this.$data.param.clsId, // button=bottom鏃�master鐨刢ls_id - //obj_id: '' // button=bottom鏃�master鐨刼bj_id - } - }; - if (data_attr) { - enviroment.edit_dlg = { - type: 'small', //灏忕獥鍙�- class_id: this.$data.param.clsId, //褰撳墠鏁版嵁绫籭d - } - if (data_attr) { - enviroment.edit_dlg.form_control = { //鎵�睘鐨勮〃鍗曟帶浠�- name: data_attr.Name, //瀛楁灞炴� - text: data_attr.DispName, //鏄剧ず鏂囨湰 - group_name: data_attr.GroupName, //灞炴�缁�- type: data_attr.Type, //瀛楁绫诲瀷 - readonly: data_attr.ReadOnly, //鏄惁鍙 - button_img: data_attr.button_img, //寮曠敤鎸夐挳鐨勫浘鏍�- button_tooltip: data_attr.button_tooltip //寮曠敤鎸夐挳鐨則ooltip - } - } - } - - // var dataInfo = { - // edtype: info.edtype, eventid: info.eventid, projectid: info.projectid.replace('{','').replace('}',''), - // rclsid: info.rclsid, robjid: info.robjid, userlogin: info.userlogin, clsid: info.clsid, objid: info.objid, - // attr: JSON.stringify(info.attr), extinfo: JSON.stringify(enviroment), inputparameter: "", - // global_attr: JSON.stringify(this.$data.global_attr), dataJson:JSON.stringify(info.dataJson) - // } - enviroment = Base64.encode(JSON.stringify(enviroment)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - var global_attr = Base64.encode(JSON.stringify(this.$data.global_attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - if (info.dataJson) - info.dataJson = Base64.encode(JSON.stringify(info.dataJson)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - var obj_attr = {}; - info.attr.forEach(item => { - obj_attr[item.attr] = item.val; - }); - if (!info.eventid.includes('{')) info.eventid = '{' + info.eventid + '}'; - var dataInfo = { - ed_type: info.edtype, - start_transaction: '', - class_id: info.clsid, - class_name: '', - event_id: info.eventid, - event_name: '', - data_obj_id: info.objid, - obj_attr: obj_attr, - prj_id: info.projectid, - ref_cls_id: info.rclsid, - rel_obj_id: info.robjid, - user_login: info.userlogin, - data_json: info.dataJson, - compose_info: '', - ext_info: enviroment, - global_attr: global_attr, - input_param: '', - }; - console.log(dataInfo); - // return; - runCustomEvent(dataInfo).then(data => { - console.log(data); - if (data.ret != 0) { - var tip = data.err_info ? typeof data.err_info == 'string' ? data.err_info : - data - .err_info.join('<br/>') : ''; - if (data.ret == 801) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - else uni.showModal({ - title: this.translateSys('tip'), - content: tip + ',鎻愮ず:' + data.ret, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return false - } else { - var tip = data.info ? typeof data.info == 'string' ? data.info : data.info - .join( - '<br/>') : ''; - if (tip) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - - var actionlist = data.action; - if (actionlist) { - console.log(actionlist); - for (var i = 0; i < actionlist.length; i++) { - var action = actionlist[i]; - if (action.action_type == 'set_dlg_attr') { - var result = action.value; - for (var i = 0; i < result.length; i++) { - if (result[i].choice_list) { - for (var c = 0; c < $this.$data.classAttrList - .length; c++) { - var attr = $this.$data.classAttrList[c].Attr; - for (var j = 0; j < attr.length; j++) { - if (attr[j].Name == result[i].attr) { - if (utils.classUtils.attrTypeIsDict(attr[j] - .Type)) { - var dictItemList = []; - for (var d in result[i].choice_list) { - var val = result[i].choice_list[d]; - dictItemList.push({ - "CN_S_NAME": val, - "Name": val, - "label": val, - "value": val - }); - } - attr[j].dictitem = dictItemList; - // attr[j].dictitem = result[i].choice_list; - } - } - } - } - } - for (var c = 0; c < $this.$data.classAttrList.length; c++) { - var attr = $this.$data.classAttrList[c].Attr; - for (var j = 0; j < attr.length; j++) { - console.log(attr[j].Name + '==' + result[i].attr); - if (attr[j].Name == result[i].attr) { - attr[j].Value = result[i].value; - } - } - } - var length = 0; - if (!$this.$data.refdatastore.filter(function(s) { - return result[i].attr == s.attr - }).length) { - length = 1; - $this.$data.refdatastore.push(result[i]); - } - if (length == 0) { - for (var j = 0; j < $this.$data.refdatastore.length; j++) { - if ($this.$data.refdatastore[j].attr == result[i] - .attr) { - $this.$data.refdatastore[j].value = result[i] - .value; - } - } - } - } - } else if (data.action[i].action_type == 'set_global_attr') { - $this.$data.global_attr = data.action[i].value || []; - } - } - } - - if (data.result) { - var result = data.result; - for (var i = 0; i < result.length; i++) { - for (var c = 0; c < $this.$data.classAttrList.length; c++) { - var attr = $this.$data.classAttrList[c].Attr; - for (var j = 0; j < attr.length; j++) { - if (attr[j].Name == result[i].attr) { - attr[j].Value = result[i].value; - } - } - } - - var length = 0; - if (!$this.$data.refdatastore.filter(function(s) { - return result[i].attr == s.attr - }).length) { - length = 1; - $this.$data.refdatastore.push(result[i]); - } - if (length == 0) { - for (var j = 0; j < $this.$data.refdatastore.length; j++) { - if ($this.$data.refdatastore[j].attr == result[i].attr) { - $this.$data.refdatastore[j].value = result[i].value; - } - } - } - } - } - } - - }).catch(ex => { - // console.log(ex); - uni.showModal({ - title: this.translateSys('error') + " 3.1", - content: ex.errMsg, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - }); - }, - OKDataObjRunCustomEvent() { - var enviroment = { - 'function': '3000', // 鍔熻兘鐐圭紪鍙�- cls_id: this.$data.param.clsId, // 鍔熻兘鐐逛富鏁版嵁绫绘爣璇�- 'button': 'top', // top/bottom - button_name: '鏂板', - master: { - cls_id: this.$data.param.clsId, // button=bottom鏃�master鐨刢ls_id - - } - }; - var eventid = this.$data.edit_ok_event.scrip_id; - var req = []; - var attrlist = this.$data.classAttrList; - for (var i = 0; i < attrlist.length; i++) { - var attr = attrlist[i].Attr; - for (var j = 0; j < attr.length; j++) { - var ar = attr[j]; - if (ar.Value == '璇烽�鎷� || ar.Value == '鈥斺�璇烽�鎷┾�鈥�) ar.Value = ''; - req.push(this.formatAttr(ar)); - } - } - if (this.$data.refdatastore.length > 0) { - for (var i = 0; i < this.$data.refdatastore.length; i++) { - if (!req.filter(function(s) { - return this.$data.refdatastore[i].attr == s.name - }).length) { - length = 1; - req.push({ - 'attr': this.$data.refdatastore[i].attr, - 'val': this.$data.refdatastore[i].value - }); - } - } - } - var info = { - eventid: eventid, - edtype: "0", - projectid: '', - rclsid: '', - robjid: '', - userlogin: '', - clsid: this.$data.param.clsId, - objid: "", - attr: req, - } - // var dataInfo = { - // edtype: info.edtype, eventid: info.eventid, projectid: info.projectid,rclsid: info.rclsid, - // robjid: info.robjid, userlogin: info.userlogin, clsid: info.clsid, objid: info.objid, - // attr: JSON.stringify(info.attr), extinfo: JSON.stringify(enviroment), global_attr: JSON.stringify(this.$data.global_attr) - // } - - enviroment = Base64.encode(JSON.stringify(enviroment)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - var global_attr = Base64.encode(JSON.stringify(this.$data.global_attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - var obj_attr = {}; - info.attr.forEach(item => { - obj_attr[item.attr] = item.val; - }); - if (!eventid.includes('{')) eventid = '{' + eventid + '}'; - var dataInfo = { - ed_type: info.edtype, - start_transaction: '', - class_id: info.clsid, - class_name: '', - event_id: eventid, - event_name: '', - data_obj_id: info.objid, - obj_attr: obj_attr, - prj_id: info.projectid, - ref_cls_id: info.rclsid, - rel_obj_id: info.robjid, - user_login: info.userlogin, - data_json: '', - compose_info: '', - ext_info: enviroment, - global_attr: global_attr, - input_param: '', - }; - console.log(dataInfo); - // return; - runCustomEvent(dataInfo).then(data => { - console.log(data); - if (data.ret != 0) { - var tip = data.err_info ? typeof data.err_info == 'string' ? data.err_info : - data - .err_info.join('<br/>') : ''; - if (data.ret == 801) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - else uni.showModal({ - title: this.translateSys('tip'), - content: tip + ',鎻愮ず:' + data.ret, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return false - } else { - var tip = data.info ? typeof data.info == 'string' ? data.info : data.info - .join( - '<br/>') : ''; - if (tip) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - - var result = data.result; - for (var i = 0; i < result.length; i++) { - // self.class_attr_ele.find('.attr_field[data-field="' + result[i].attr + '"]').val(result[i].value).data('val', result[i].value); - var length = 0; - if (!this.$data.refdatastore.filter(function(s) { - return result[i].attr == s.attr - }).length) { - length = 1; - this.$data.refdatastore.push(result[i]); - } - if (length == 0) { - for (var j = 0; j < this.$data.refdatastore.length; j++) { - if (this.$data.refdatastore[j].attr == result[i].attr) { - this.$data.refdatastore[j].value = result[i].value; - } - } - } - } - - this.add(); - } - - }).catch(ex => { - // console.log(ex); - uni.showModal({ - title: this.translateSys('error') + " 4.1", - content: ex.errMsg, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - }); - }, - DataObjRunCustomEvent_Return(eventid, data_attr, button_callback, index, iindex) { - var enviroment = { - 'function': '3000', // 鍔熻兘鐐圭紪鍙�- cls_id: this.$data.param.clsId, // 鍔熻兘鐐逛富鏁版嵁绫绘爣璇�- 'button': 'top', // top/bottom - button_name: '鏂板', - master: { - cls_id: this.$data.param.clsId, // button=bottom鏃�master鐨刢ls_id - //obj_id: '' // button=bottom鏃�master鐨刼bj_id - } - }; - var req = []; - var attrlist = this.$data.classAttrList; - for (var i = 0; i < attrlist.length; i++) { - var attr = attrlist[i].Attr; - for (var j = 0; j < attr.length; j++) { - var ar = attr[j]; - req.push(this.formatAttr(ar)) - } - } - if (this.$data.refdatastore.length > 0) { - for (var i = 0; i < this.$data.refdatastore.length; i++) { - if (!req.filter(function(s) { - return this.$data.refdatastore[i].attr == s.name - }).length) { - length = 1; - req.push({ - 'attr': this.$data.refdatastore[i].attr, - 'val': this.$data.refdatastore[i].value - }); - } - } - } - var extinfo = enviroment; - extinfo.edit_dlg = { - type: 'small', //灏忕獥鍙�- class_id: this.$data.param.clsId, //褰撳墠鏁版嵁绫籭d - } - if (data_attr) { - extinfo.edit_dlg.form_control = { //鎵�睘鐨勮〃鍗曟帶浠�- name: data_attr.Name, //瀛楁灞炴� - text: data_attr.DispName, //鏄剧ず鏂囨湰 - group_name: data_attr.GroupName, //灞炴�缁�- type: data_attr.Type, //瀛楁绫诲瀷 - readonly: data_attr.ReadOnly, //鏄惁鍙 - button_img: data_attr.button_img, //寮曠敤鎸夐挳鐨勫浘鏍�- button_tooltip: data_attr.button_tooltip //寮曠敤鎸夐挳鐨則ooltip - } - } - // var dataInfo = { - // edtype: "0", eventid: eventid, projectid: '',rclsid: '', robjid: '', userlogin: '', - // clsid: this.$data.param.clsId, objid: '',attr: JSON.stringify(req), - // extinfo: JSON.stringify(extinfo), global_attr: JSON.stringify(this.$data.global_attr) - // } - extinfo = Base64.encode(JSON.stringify(extinfo)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - var global_attr = Base64.encode(JSON.stringify(this.$data.global_attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - var obj_attr = {}; - req.forEach(item => { - obj_attr[item.attr] = item.val; - }); - if (!eventid.includes('{')) eventid = '{' + eventid + '}'; - var dataInfo = { - ed_type: "0", - start_transaction: '', - class_id: this.$data.param.clsId, - class_name: '', - event_id: eventid, - event_name: '', - data_obj_id: '', - obj_attr: obj_attr, - prj_id: '', - ref_cls_id: '', - rel_obj_id: '', - user_login: '', - data_json: '', - compose_info: '', - ext_info: extinfo, - global_attr: global_attr, - input_param: '', - }; - console.log(dataInfo); - // return; - runCustomEvent(dataInfo).then(data => { - console.log(data); - - if (data.ret != 0) { - var tip = data.err_info ? typeof data.err_info == 'string' ? data.err_info : - data - .err_info.join('<br/>') : ''; - if (data.ret == 801) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - else uni.showModal({ - title: this.translateSys('tip'), - content: tip + ',鎻愮ず:' + data.ret, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - return false - } else { - var tip = data.info ? typeof data.info == 'string' ? data.info : data.info - .join( - '<br/>') : ''; - if (tip) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - - if (data != "") { - var actions = data.action; - console.log(actions); - if (actions) { - for (var i = 0; i < actions.length; i++) { - var action = actions[i]; - var val = action.value; - var enviroment = JSON.stringify(enviroment); - - if (action.action_type == 'open_panel') { - var d = dialog({ - title: '<i class="ace-icon fa fa-info-circle"></i> ' + - this.translateSys('tip'), - content: action.action_type + '姝ction灏氭湭澶勭悊锛� - }); - d.show(); - } else if (action.action_type == 'open_select_userdlg') { - var style = val.style; - // style == 'user' ? '閫夋嫨浜哄憳' : style == 'department' ? '閫夋嫨閮ㄩ棬' : style == 'role' ? '閫夋嫨瑙掕壊' : '' - var $this = this; - var param = { - index: index, - iindex: iindex, - button_callback: button_callback, - req: req, - data_attr: data_attr - } - uni.navigateTo({ - url: '../selpsn/index?mulit=false¶m=' + JSON - .stringify( - param), - events: { - AddPer(data, param) { - // console.log(param); - console.log(data); - var callback_eventid = param - .button_callback - .trim(); - var info = { - eventid: callback_eventid, - edtype: "0", - projectid: '', - rclsid: '', - robjid: '', - userlogin: '', - clsid: $this.$data.param.clsId, - objid: "", - attr: param.req, - inputparameter: data, - dataJson: [], - } - $this.DataObjRunCustomEvent(info, param - .data_attr); - } - } - }); - } else if (action.action_type == 'open_data_query_dlg') { - var d = dialog({ - title: '<i class="ace-icon fa fa-info-circle"></i> ' + - this.translateSys('tip'), - content: action.action_type + '姝ction灏氭湭澶勭悊锛� - }); - d.show(); - } else if (action.action_type == 'open_common_dlg') { - var $this = this; - if (val.common_dlg_id == 'check_list') { - $this.$data.check_list = val.config; - if (val.config.appear_style == 'sideslip') //鍒ゆ柇鏄惁鏄晶婊�- $this.$data.popupType = 'right'; - else - $this.$data.popupType = 'center' - // open 鏂规硶浼犲叆鍙傛暟 绛夊悓鍦�uni-popup 缁勪欢涓婄粦瀹�type灞炴� - $this.$refs.popup.open($this.$data.popupType); - var popupParam = { - index: index, - iindex: iindex, - button_callback: button_callback, - req: req, - data_attr: data_attr - } - $this.$data.popupParam = popupParam; - } - } else if (action.action_type == 'open_project_query_dlg') { - //console.log(action.value.select_range); - //console.log(action.value.mulit_select); - var priRel = '-1'; - if (action.value.select_range == '鍏ㄩ儴鐩稿叧') - priRel = '0'; - else if (action.value.select_range == '鎴戣礋璐g殑椤圭洰') - priRel = '1'; - else if (action.value.select_range == '鎴戝垱寤虹殑') - priRel = '2'; - else if (action.value.select_range == '鎴戝弬涓庣殑' || action.value - .select_range == '鎴戝弬鍔犵殑') - priRel = '3'; - else if (action.value.select_range == '鎴戝叧娉ㄧ殑') - priRel = '4'; - else if (action.value.select_range == '鎴戜笅灞炵殑椤圭洰') - priRel = '5'; - - var $this = this; - var param_ = { - index: index, - iindex: iindex, - button_callback: button_callback, - req: req - } - uni.navigateTo({ - url: '../selPrj/index?relation=' + priRel + - '¶m=' + - JSON.stringify(param_), - events: { - AddPer(data, param) { - $this.$data.classAttrList[param.index] - .Attr[param - .iindex].Value = data[0].Name; - $this.$data.classAttrList[param.index] - .Attr[param - .iindex].ValID = data[0].ID + ';' + - data[0] - .Name; - var callback_eventid = param - .button_callback - .trim(); - if (callback_eventid) { - var info = { - eventid: callback_eventid, - edtype: "2", - projectid: data[0].ID, - rclsid: "", - robjid: "", - userlogin: "", - clsid: $this.$data.param.clsId, - objid: "", - attr: param.req, - dataJson: [], - } - - $this.DataObjRunCustomEvent(info); - } - } - } - }); - } else { - var d = dialog({ - title: '<i class="ace-icon fa fa-info-circle"></i> ' + - this.translateSys('tip'), - content: action.action_type + '姝ction灏氭湭澶勭悊锛� - }); - d.show(); - } - } - } - } else { - uni.showModal({ - title: this.translateSys('tip') + "5.2", - content: '璋冪敤 before_click_button 鑴氭湰杩斿洖绌猴紝event_id' + eventid, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - } - } - - }).catch(ex => { - // console.log(ex); - uni.showModal({ - title: this.translateSys('tip') + "5.1", - content: ex.errMsg, - showCancel: false, - confirmText: this.translateSys('cancel') - }); - }); - }, - - formatAttr(attr) { - if (utils.classUtils.attrTypeIsObjRefMulti(attr.Type)) //if(ar.Type=='寮曠敤瀵硅薄(澶氫釜)') - if (attr.Value == '璇�) ar.Value = ''; - if (utils.classUtils.attrTypeIsUser(attr.Type) || utils.classUtils.attrTypeIsProject(attr - .Type)) //if(ar.Type=='寮曠敤浜哄憳' || ar.Type=='寮曠敤椤圭洰') - return { - attr: attr.Name, - value: attr.ValID ? attr.ValID : '' - }; - else if (utils.classUtils.attrTypeIsBool(attr.Type)) //if(ar.Type=='甯冨皵鍊�) - return { - attr: attr.Name, - value: attr.Value ? '1' : '0' - }; - else - return { - attr: attr.Name, - value: attr.Value ? attr.Value : '' - }; - }, - translate(t) { - if (typeof this.$t == "function") return this.$t(`page.${t}`) - else return t; - }, - translateSys(t) { - if (typeof this.$t == "function") return this.$t(`sys.${t}`) - else return t; - }, - } - } -</script> -<style lang="less"> - .uni-page-modal-small-wnd { - - - .class_attr_title { - font-size: 44rpx; - padding-bottom: 22rpx; - position: relative; - } - - .class_attr_title .title_line { - border-bottom: 2rpx solid #aaa; - position: relative; - bottom: -50rpx; - width: calc(100% - 290rpx); - margin-left: 100px; - } - - .class_attr_title .title_icon { - border-radius: 50%; - width: 100rpx; - line-height: 64rpx; - display: inline-block; - vertical-align: middle; - padding-top: 10rpx; - padding-left: 20rpx; - text-align: center; - color: #fff; - } - - .class_attr_title i { - color: #2c6aa0 !important; - } - - .class_attr_title .title_icon i { - font-size: 80rpx; - } - - .class_attr_title .title { - padding-right: 22rpx; - display: inline-block; - background-color: #fff; - position: relative; - bottom: -8rpx; - } - - .class_attr_title .arrow { - position: absolute; - top: 6rpx; - right: 30rpx; - font-size: 60rpx; - } - - input::-webkit-input-placeholder { - font-size: 12rpx; - } - - textarea { - width: 98%; - border: 1px solid #d5d5d5; - padding: 10rpx 8rpx 12rpx; - background: #FFF; - border-radius: 0 !important; - font-size: 34rpx; - font-family: inherit; - box-shadow: none !important; - transition-duration: 0.1s; - color: #046db3; - margin-top: 4px; - } - - input { - border: 1px solid #d5d5d5; - width: 98%; - height: 52rpx; - background: #FFF; - border-radius: 0 !important; - color: #046db3; - padding: 10rpx 8rpx 12rpx; - font-size: 34rpx; - font-family: inherit; - box-shadow: none !important; - transition-duration: 0.1s; - margin-top: 4rpx; - } - - .select { - width: 20px; - position: absolute; - opacity: 0; - } - - .class_attr_body .form-group { - margin: 20rpx 30rpx; - /* margin-left: -12px; - margin-right: -12px; */ - } - - .form-group>label[class*="col-"] { - margin-bottom: 8rpx; - font-size: 32rpx; - } - - .form-group label { - vertical-align: middle; - line-height: 60rpx; - } - - .no-padding-right { - padding-right: 0 !important; - } - - .col-xs-12 { - width: 100%; - } - - .tx_title { - font-size: 32rpx; - } - - .tx_title2 { - font-size: 32rpx; - text-align: right; - display: inline-block; - vertical-align: -2px; - } - - .text-right { - margin-right: 20rpx; - margin-top: -6rpx; - display: inline-block; - float: right; - font-size: 48rpx; - } - - .text-right a, - .text-right2 a { - color: #337ab7; - } - - .text-right2 { - margin: 0; - vertical-align: -4px; - margin-left: 9px; - float: none; - font-size: 48rpx; - display: inline-block; - } - - .section_iput { - border: 1px solid #d5d5d5; - width: 98%; - height: 62rpx; - background: #FFF; - border-radius: 0 !important; - color: #046db3; - padding: 10rpx 8rpx 10rpx; - font-size: 34rpx; - font-family: inherit; - box-shadow: none !important; - transition-duration: 0.1s; - } - - .date_iput { - border: 1px solid #d5d5d5; - /* width: 98%; */ - height: 62rpx; - background: #FFF; - border-radius: 0 !important; - color: #046db3; - padding: 10rpx 8rpx 4rpx; - font-size: 34rpx; - font-family: inherit; - box-shadow: none !important; - transition-duration: 0.1s; - } - - button.btn_add { - width: 49.5%; - margin-top: 50rpx; - padding: 20rpx; - line-height: 1.5; - background: #27A6E1; - border: none; - color: #fff; - font-size: 38rpx; - font-weight: bold; - float: right; - display: inline-block; - } - - button.btn_cancel { - width: 49.5%; - margin-top: 50rpx; - padding: 20rpx; - line-height: 1.5; - background: #27A6E1; - border: none; - color: #fff; - font-size: 38rpx; - font-weight: bold; - float: left; - display: inline-block; - } - - .i_tishi { - color: red; - vertical-align: sub; - font-style: initial; - margin-left: 20rpx; - font-size: 17px; - } - - .attr_field { - display: inline-block; - vertical-align: middle; - margin-left: 8px; - /* width: 71%; */ - } - - .input_vallist { - max-height: 350rpx; - overflow-y: auto; - display: none; - } - - .input_vallist ul { - /* border: 1px solid red; */ - padding: 0 20rpx; - } - - .input_vallist ul li { - list-style: none; - padding: 20rpx; - border-bottom: 1px solid #ccc; - } - - .input_vallist ul li a { - float: right; - } - - .input_vallist ul li a i { - font-size: 45rpx; - } - - .view-popup { - position: relative; - } - - .popup-content { - @include flex; - align-items: center; - justify-content: center; - padding: 30rpx; - background-color: #fff; - /* height: 150px; */ - /* border: 1px solid red; */ - } - - .popup-cont { - overflow-y: auto; - /* border: 1px solid red; */ - } - - .popup-height { - @include height; - /* width: 200px; */ - } - - .popup-header { - font-size: 42rpx; - font-weight: bold; - margin: 20rpx 20rpx 0px 20rpx; - } - - .view_popup_CheckList { - margin-bottom: 20rpx; - } - - .popup-footer { - float: right; - position: absolute; - bottom: 0; - right: 20rpx; - } - - button.btn_popup_add { - width: 180rpx; - margin-top: 50rpx; - margin-right: 20rpx; - padding: 15rpx; - line-height: 1.5; - background: #27A6E1; - border: none; - color: #fff; - font-size: 38rpx; - font-weight: bold; - /* float: left; */ - display: inline-block; - } - - button.btn_popup_cancel { - width: 180rpx; - margin-top: 50rpx; - padding: 15rpx; - line-height: 1.5; - background: #27A6E1; - border: none; - color: #fff; - font-size: 38rpx; - font-weight: bold; - /* float: right; */ - display: inline-block; - } - - .touch-item { - background-color: #F8F9FC; - display: flex; - justify-content: space-between; - width: 100%; - overflow: hidden - } - - .itemcontent { - display: flex; - flex-direction: column; - padding: 5px 10px; - border-bottom: 1px solid #eeeeee; - margin-right: 0; - margin-left: -100px; - width: 100%; - -webkit-transition: all 0.4s; - transition: all 0.4s; - -webkit-transform: translateX(100px); - transform: translateX(100px); - position: relative; - } - - .itembtn { - width: 100px; - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - background-color: #119bf8; - color: white; - position: relative; - -webkit-transform: translateX(100px); - transform: translateX(100px); - -webkit-transition: all 0.4s; - transition: all 0.4s; - } - - .touch-move-active .itemcontent, - .touch-move-active .itembtn { - -webkit-transform: translateX(0); - transform: translateX(0); - } - } -</style> \ No newline at end of file diff --git a/pages/modal/small-wnd/line.vue b/pages/modal/small-wnd/line.vue deleted file mode 100644 index a0c0a49..0000000 --- a/pages/modal/small-wnd/line.vue +++ /dev/null @@ -1,624 +0,0 @@ -<template> - <view class="uni-page-modal-small-wnd-line"> - <uni-forms ref="baseForm" :modelValue="form" :label-position="control_style=='宸﹀彸甯冨眬' ? 'left':'top'" - :label-align="control_style=='宸﹀彸甯冨眬' ? 'right':'left'" :label-width="titleWdith"> - <view class="uni-group-item" v-for="(group,index) in show_style" :key="group.attrgroup_name"> - <view class="uni-panel-title" @click="group.open = !group.open"> - <text class="uni-title-icon" :style="{ backgroundColor: toHexColor(group.def?.bk_color) }"><text - class="uni-icon" :class="group.def?.img_font_style"></text></text> - <text class="uni-title-text">{{group.attrgroup_name}}</text> - <view class="uni-panel-icon-btn"> - <uni-icons color="#000" type="down" size="18" /> - </view> - </view> - <view v-if="group.open" class="uni-head-style" :class="hiddenAttrs.includes(attr.attr)? 'uni-hidden':''" - v-for="(attr,i) in group.attrs" :key="`attr-${index}-${i}`"> - <uni-forms-item :label="attrLabel(attr)" :required="attrRequired(attr)" :error="errTip[attr.attr]"> - <view class="input-wrapper"> - <view class="uni-panel-ext-button" v-if="attr.ext_button==true"> - <input class="uni-panel-input" type="text" v-model="visible" :disabled="disabled" @on-blur="onChange" /> - <view class="uni-panel-right-ico"> - <a @click="onClickExtButton"><i class="ace-icon fa fa-plus-circle"></i></a> - </view> - </view> - <input v-if="attr.type == 'input'" :ref="`ref${attr.attr}`" v-model="form[attr.attr]" - :ref="`ref${attr.attr}`" :disabled="!attr.edit" @on-blur="onChange(attr)" /> - <textarea v-else-if="attr.type == 'textarea'" :ref="`ref${attr.attr}`" - v-model="form[attr.attr]" :ref="`ref${attr.attr}`" :disabled="!attr.edit" - @on-blur="onChange(attr)" /> - <input v-else-if="attr.type == 'int'" :ref="`ref${attr.attr}`" v-model="form[attr.attr]" - type="number" :ref="`ref${attr.attr}`" :disabled="!attr.edit" - @on-blur="onChange(attr)" /> - <input v-else-if="attr.type == 'float'" :ref="`ref${attr.attr}`" v-model="form[attr.attr]" - type="digit" :ref="`ref${attr.attr}`" :disabled="!attr.edit" - @on-blur="onChange(attr)" /> - <div v-if="attr.ext_button==true&& (attr.type == 'input' ||attr.type == 'textarea'||attr.type == 'int'||attr.type == 'float') " - class="right-ext-btn"> - <a @tap="onClickExtButton(index,i)"><i class="ace-icon fa fa-plus-circle"></i></a> - </div> - - <switch v-else-if="attr.type == 'checkbox'" :ref="`ref${attr.attr}`" - :checked="form[attr.attr]" :ref="`ref${attr.attr}`" :disabled="!attr.edit" - @change="form[attr.attr]=checked"> - </switch> - <uni-data-select id="dv_select" v-if="attr.type == 'select'" :ref="`ref${attr.attr}`" - :class="attr.edit?'':'input-disabled'" v-model="form[attr.attr]" - :localdata="dictList[attr.attr]" @change="onChange(attr)" :disabled="!attr.edit" - clear></uni-data-select> - <picker v-else-if="attr.type == 'date'" :ref="`ref${attr.attr}`" mode="date" - style="width: 100%" :value="form[attr.attr]" :ref="`ref${attr.attr}`" - :disabled="!attr.edit" @change="form[attr.attr]=value" /> - <picker v-else-if="attr.type == 'time'" :ref="`ref${attr.attr}`" mode="time" - style="width: 100%" :value="form[attr.attr]" :ref="`ref${attr.attr}`" - :disabled="!attr.edit" @change="form[attr.attr]=value" /> - <textarea v-else-if="attr.type == 'ref-psn'" :ref="`ref${attr.attr}`" - :value="form[attr.attr]" :ref="`ref${attr.attr}`" disabled /> - <div v-if="attr.type == 'ref-psn'" class="right-ext-btn"> - <a @tap="onClickAddPsn(index,i)"><i class="ace-icon fa fa-plus-circle"></i></a> - </div> - <pickerAddress v-else-if="attr.type == 'region'" :ref="`ref${attr.attr}`" - @change="onAddressChange" :data-attr="attr.attr"> {{form[attr.attr]}} - </pickerAddress> - <div v-else-if="attr.type == 'ref-obj'"> - <a @tap="classAttr_AddRef" :data-classid="attr.RelCls[0].id" - :data-classname="attr.RelCls[0].name"><i class="ace-icon fa fa-plus-circle"></i></a> - </div> - <div v-else-if="attr.type == 'ref-obj-multi'"> - <picker class="select" @change="classAttr_AddRef" :range="attr.RelClsList" - range-key="name" :data-index="index" :data-iindex="iindex"> - <label class="">{{ attr.Value }}</label> - </picker> - <a class="class_attr_add_ref"><i class="ace-icon fa fa-plus-circle"></i></a> - </div> - - <textarea v-else-if="attr.type == 'ref-prj'" :ref="`ref${attr.attr}`" - :value="form[attr.attr]" :ref="`ref${attr.attr}`" disabled /> - <div v-if="attr.type == 'ref-prj'" class="right-ext-btn"> - <a @tap="onClickAddPrj(index,i)"><i class="ace-icon fa fa-plus-circle"></i></a> - </div> - <input v-if="attr.type == 'code'" :ref="`ref${attr.attr}`" v-model="form[attr.attr]" - :ref="`ref${attr.attr}`" :disabled="!attr.edit" /> - </view> - </uni-forms-item> - </view> - </view> - </uni-forms> - </view> -</template> - -<script> - import { - Base64 - } from '@/js/Base64.js'; - import pickerAddress from '../../js/pickerAddress/pickerAddress.vue' - import utils from "@/js/utils.js" - export default { - name: "PageModalSmallWndLine", - inject: ["getFormAllAttrObj"], - components: { - pickerAddress - }, - props: { - clsId: { - type: String, - default: "" - }, - clsName: { - type: String, - default: "" - }, - show_style: { - type: Object, - default: {} - }, - attrList: { - type: Array, - default: [] - }, - control_style: { - type: String, - default: "" - }, - title_p_wdith: { - type: Number, - default: 0 - }, - - }, - data() { - return { - titleWdith: 100, - form: {}, - errTip: {}, - opened: [], - dictList: {}, - globalAttrs: [], - hiddenAttrs: [], - }; - }, - computed: { - formAttrObj() { - return this.getFormAllAttrObj(); - }, - initialEvent() { - let event = this.show_style.Event?.find((e) => e.event_id == "initial"); - return { - id: event?.scrip_id, - name: event?.scrip_name, - }; - }, - - - }, - mounted() { - uni.getSystemInfo({ - success: function(info) { - - // 浣犲彲浠ュ皢灞忓箷瀹藉害淇濆瓨鍦ㄤ竴涓彉閲忎腑渚涘悗缁娇鐢�- if (this.control_style == '宸﹀彸甯冨眬') { - if (this.title_p_wdith > 0 && this.title_p_wdith < 100) { - this.titleWdith = this.title_p_wdith * info.windowWidth / 100 - } else { - this.titleWdith = 20 * info.windowWidth / 100 - } - } else { - this.titleWdith = info.windowWidth - } - console.log('灞忓箷瀹藉害锛屾爣棰樺搴�, info.windowWidth, this.titleWdith); - } - }); - }, - methods: { - setData(obj) { - let that = this; - let keys = []; - let val, data; - - Object.keys(obj).forEach(function(key) { - keys = key.split("."); - val = obj[key]; - data = that.$data; - keys.forEach(function(key2, index) { - if (index + 1 == keys.length) { - that.$set(data, key2, val); - } else { - if (!data[key2]) { - that.$set(data, key2, {}); - } - } - data = data[key2]; - }); - }); - }, - - isValid() { - let flag = true; - this.show_style.forEach((group) => { - group.attrs.forEach((attr) => { - let val = this.form[attr.attr]; - if (utils.classUtils.attrTypeIsDate(attr.def.type)) val = dayjs(val).format( - "YYYY-MM-DD"); - if (attr.def.not_empty == 1 && isNullOrEmpty(val)) { - this.errTip[attr.attr] = `${attr.name}${this.translate('cannot_empty')}`; - flag = false; - if (this.$refs[`ref${attr.attr}`][0].focus) - this.$refs[`ref${attr.attr}`][0].focus(); - else if (this.$refs[`ref${attr.attr}`][0].$el.focus) - this.$refs[`ref${attr.attr}`][0].$el.focus(); - } - }); - }); - return flag; - }, - async loadForm() { - this.form = {}; - this.errTip = {}; - - await Promise.all( - this.show_style.map(async (group) => { - let group_def = this.attrList.find( - (a) => a.name == group.attrgroup_name - ); - group.def = { - bk_color: group_def.bk_color, - img_font_style: group_def.img_font_style || "mobox-sys-mobox", - }; - await Promise.all( - group.attrs.map(async (attr) => { - let attr_def = group_def.attr_list.find( - (a) => a.name == attr.attr - ); - - // 鈥滃皬绐楀彛鈥濅腑鈥滄樉绀洪厤缃�鎸囧畾鐨勫睘鎬у湪褰撳墠鏁版嵁绫讳腑宸插彉鏇达紝鏃犳硶寰楀埌鐩稿簲鐨勫畾涔�- if (!attr_def) { - this.showError( - `褰撳墠鏁版嵁绫烩�${this.clsName}(${this.clsId})鈥濅腑鎵句笉鍒板悕涓衡�${attr.name}(${attr.attr})鈥濈殑灞炴�` - ) - - return; - } - - attr.def = attr_def; - - attr.type = this.getAttrType(attr.def); - - this.form[attr.attr] = this.defaultValue(attr.type); - this.errTip[attr.attr] = ""; - - if (attr.type == "select") { - if (attr.def.dict_name) { - let res = await dictInfo(undefined, attr.def - .dict_name); - let dicList = res.dict_item_list; - this.dictList[attr.attr] = dicList; - let dictName = ""; - if (dicList?.length > 0) { - let defaultValue = dicList.find( - (d) => d.is_default == 1 - )?.name; - if (defaultValue) dictName = defaultValue; - else dictName = dicList[0].name; - } - this.form[attr.attr] = dictName; - } else { - this.dictList[attr.attr] = []; - this.form[attr.attr] = ""; - } - } - }) - ); - }) - ); - this.opened = this.show_style - .filter((a) => a.open) - .map((a) => a.attrgroup_name); - }, - async loadFormData(obj) { - this.show_style.forEach((group) => { - group.attrs.forEach((attr) => { - let info = obj.attr_list.find((o) => o.name == attr.attr); - if (info) { - if (attr.type == "ref-psn") - this.form[attr.attr] = { - id: info.value.split(";")[0], - name: info.value.split(";")[1], - type: 0, - }; - else this.form[attr.attr] = info.value; - } - }); - }); - }, - async loadFormDataViaDataObj(dataObj) { - this.show_style.forEach((group) => { - group.attrs.forEach((attr) => { - if (attr.attr in dataObj) this.form[attr.attr] = dataObj[attr.attr]; - }); - }); - }, - getAttrType(def) { - let type = def?.type; - let height = def?.height; - let ctrlType = ""; - this.show_style?.forEach((group) => { - ctrlType = group.attrs?.find((a) => a.attr == def.name)?.ctrl_type; - }); - if (utils.classUtils.attrTypeIsGuid(type) || utils.classUtils.attrTypeIsString(type)) - return ctrlType == "dropdown" ? - "select" : - height == 2 ? - "textarea" : - height == 3 ? - "textarea" : - "input"; - else if (utils.classUtils.attrTypeIsDict(type)) return "select"; - else if (utils.classUtils.attrTypeIsInt(type)) return "int"; - else if (utils.classUtils.attrTypeIsFloat(type)) return "float"; - - else if (utils.classUtils.attrTypeIsBool(type)) return "checkbox"; - else if (utils.classUtils.attrTypeIsDate(type)) return "date"; - else if (utils.classUtils.attrTypeIsTime(type)) return "time"; - else if (utils.classUtils.attrTypeIsUser(type)) return "ref-psn"; - else if (utils.classUtils.attrTypeIsRegion(type)) return "region"; - else if (utils.classUtils.attrTypeIsObjRefMulti(type)) return "ref-obj-multi"; - else if (utils.classUtils.attrTypeIsObjRef(type)) return "ref-obj"; - else if (utils.classUtils.attrTypeIsProject(type)) return "ref-prj"; - else if (utils.classUtils.attrTypeIsCode(type)) return "code"; - else return "unknown"; - }, - defaultValue(type) { - let value = undefined; - switch (type) { - case "input": - value = ""; - break; - case "select": - value = ""; - break; - case "int": - value = "0"; - break; - case "float": - value = "0.0"; - break; - case "checkbox": - value = false; - break; - case "date": - value = ""; - break; - case "time": - value = ""; - break; - case "region": - value = ""; - break; - case "ref-psn": - value = {}; - break; - case "ref-obj-multi": - value = []; - break; - case "ref-obj": - value = {}; - break; - case "ref-prj": - value = {}; - break; - case "code": - value = ""; - break; - - - } - return value; - }, - attrLabel(attr) { - if (attr.notempty || attr.def?.not_empty == 1) - return `${attr.name}锛�{this.translate('required')}锛塦; - else return attr.name; - }, - attrRequired(attr) { - if (attr.notempty || attr.def?.not_empty == 1) return true; - else return false; - }, - toHexColor(num) { - return `#${parseInt(num).toString(16)}`; - }, - reset() { - this.form = {}; - this.errTip = {}; - this.opened = []; - this.dictList = {}; - }, - clearTip() { - Object.keys(this.errTip).forEach((k) => { - this.errTip[k] = ""; - }); - }, - clearData() { - Object.keys(this.form).forEach((k) => { - this.form[k] = ""; - }); - }, - onAddressChange(e) { - console.log(e.data.join(';')) - this.form[e.target.dataset['attr']] = e.data - .join( - ';'); - }, - async onChange(attr) { - if (!this.form[attr.attr]) return; - let action = attr.action; - if (!action) return; - if (action[0] != "{" && action[action.length - 1] != "}") - action = `{${action}}`; - let extInfo = { - ...this.enviroment, - }; - try { - lua( - this, - await runCustomEvent({ - ed_type: 0, - class_id: this.clsId, - event_id: action, - obj_attr: this.formAttrObj, - ext_info: Base64.encode(JSON.stringify(extInfo)), - }) - ); - } catch (ex) { - this.showError(ex); - } - }, - onClickExtButton(gindex, index) { - - }, - onClickAddPsn(gindex, index) {}, - onClickAddPrj(gindex, index) {}, - - findAttrDef(attr) { - let def; - this.show_style.forEach((group) => { - let r = group.attrs.find((a) => a.attr == attr); - if (r) def = r; - }); - return def; - }, - setFormValues(attrs) { - attrs.forEach((attr) => { - if (attr.attr in this.form) { - this.form[attr.attr] = attr.value; - if (attr.choice_list) { - // 鍏堝垽鏂槸鍚︽槸瀛楀吀绫诲瀷 - let type = this.getAttrType(this.findAttrDef(attr.attr)?.def); - if (type == "select") - if (attr.choice_list) - this.dictList[attr.attr] = attr.choice_list.map((name) => ({ - name, - })); - } - } - }); - }, - hideFormItems(attrs) { - let attrList = []; - this.show_style.forEach((group) => attrList.push(...group.attrs)); - this.hiddenAttrs = [ - ...attrList.filter((a) => a.hidden === true).map((a) => a.attr), - ...attrs - .filter((attr) => attr.attr in this.form && attr.show === false) - .map((attr) => attr.attr), - ]; - }, - setFormAllValues(attrs) { - this.$emit("on-set-all-value", attrs); - }, - showError(ex) { - uni.showModal({ - title: this.translateSys('error') + " 1.1", - content: typeof ex == "string" ? ex : typeof ex.errMsg == "string" ? ex.errMsg : "", - showCancel: false, - confirmText: this.translateSys('cancel') - }) - }, - translate(t) { - if (typeof this.$t == "function") return this.$t(`page.${t}`) - else return t; - }, - translateSys(t) { - if (typeof this.$t == "function") return this.$t(`sys.${t}`) - else return t; - }, - }, - } -</script> - - -<style lang="scss"> - .uni-page-modal-small-wnd-line { - width: 100%; - display: flex; - flex-direction: column; - - .uni-group-item { - border-radius: 8px; - background-color: #fff; - margin: 5px; - padding-bottom: 5px; - - } - - .uni-select { - border: 0; - } - - .uni-panel-title { - display: flex; - width: calc(100% - 10rpx); - flex-direction: row; - } - - - .input-wrapper:hover { - border: 1px solid rgb(41, 121, 255); - } - - .uni-title-icon { - background-color: #ffdd00; - border-radius: 50%; - width: 36px; - height: 36px; - margin: 5px; - margin-right: 12px; - display: inline-block; - vertical-align: middle; - text-align: center; - line-height: 40px; - - .uni-icon { - color: #fff; - font-size: 20px - } - - } - - .uni-title-text { - flex: 1; - font-weight: 600; - line-height: 45px; - } - - .uni-panel-icon-btn { - font-size: 18px; - padding: 8px; - margin-top: 5px; - // height: 36px; - // width: 36px; - - } - - .uni-panel-text { - flex: 1; - color: #000000; - font-weight: normal; - } - - .uni-head-style { - display: flex; - flex-direction: column; - width: calc(100% - 30rpx); - padding: 15rpx; - } - - .uni-head-style input { - width: calc(100% - 20rpx); - height: 52rpx; - line-height: 34rpx; - background: #FFF; - border-radius: 0 !important; - color: #2d8cf0; - padding: 10rpx 10rpx 12rpx; - font-size: 34rpx; - font-family: inherit; - box-shadow: none !important; - transition-duration: 0.1s; - margin-top: 4rpx; - } - - .input-disabled { - background-color: #f3f3f3 !important; - } - - .uni-hidden { - display: none; - } - - - .input-wrapper { - border: 1px solid #d5d5d5; - width: 100%; - display: flex; - flex-direction: row; - - .uni-textarea, - .uni-input { - flex: 1; - padding: 12rpx 8rpx; - // height: 40rpx; - // line-height: 40rpx; - } - - .uni-icon { - padding: 8rpx; - font-size: 32rpx; - color: rgb(192, 196, 204); - } - - .right-ext-btn { - margin: 5rpx 10rpx 5rpx 5rpx; - } - - } - } -</style> \ No newline at end of file diff --git a/pages/selPrj/index.vue b/pages/selPrj/index.vue index 545d8a6..09989bb 100644 --- a/pages/selPrj/index.vue +++ b/pages/selPrj/index.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-selprj"> + <view class="uni-page-selprj" :class="largeMode?'large-mode':''"> <view style="height:90%;"> <input type="text" class="txt_search" v-model="searchVal" @keyup="onkeyup" :placeholder="translate('input_project_name_query')"> @@ -38,6 +38,7 @@ export default { data() { return { + largeMode: getApp().globalData.largeMode || false, title: this.translate('select_project'), relation: '-1', param: {}, diff --git a/pages/selpsn/index.vue b/pages/selpsn/index.vue index badd763..3eb218a 100644 --- a/pages/selpsn/index.vue +++ b/pages/selpsn/index.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-selpsn"> + <view class="uni-page-selpsn" :class="largeMode?'large-mode':''"> <view style="height:90%;"> <input type="text" class="txt_search" v-model="searchVal" @input="onkeyup" :placeholder="translate('input_user_name_jp_query')"> @@ -37,6 +37,7 @@ export default { data() { return { + largeMode: getApp().globalData.largeMode || false, title: this.translate('select_user'), mulit: '', param: {}, -- Gitblit v1.9.1