12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076 |
- #parse("PublicMacro/AppFormMarco.vm")
- <template>
- <view class="jnpf-wrap jnpf-wrap-form dynamicModel-form-v" v-if="!loading">
- <u-form :model="${context.formModel}" :rules="${context.formRules}" ref="${context.formModel}" :errorType="['toast']"
- #set($position='left')
- #if(${context.labelPosition}=='top')
- #set($position='top')
- #end
- #set($align='left')
- #if(${context.labelPosition}=='right')
- #set($align='right')
- #end
- label-position="${position}" label-align="${align}" :label-width="labelwidth" class="jnpf-form">
- #AppFormRendering()
- </u-form>
- #if(${isFlow}==false)
- #if(${context.webType}=='1')
- <view class="buttom-actions">
- <u-button class="buttom-btn" @click="resetForm">{{$t('common.resetText','重置')}}</u-button>
- <u-button class="buttom-btn" type="primary" @click="submitForm" :loading="btnLoading">{{$t('common.okText','确定')}}</u-button>
- </view>
- #else
- <view class="buttom-actions" v-if="jurisdictionType != 'btn_detail'" >
- <CustomButton :btnText="$t('common.cancelText')" btnIcon="icon-ym icon-ym-add-cancel" customIcon />
- <u-button class="buttom-btn" type="primary" @click="submitForm" :loading="btnLoading">{{$t('common.okText','确定')}}</u-button>
- </view>
- <u-action-sheet @click="handleAction" :list="actionList" :tips="{ text: '更多操作' , color: '#000' , fontSize: 30 }" v-model="showAction">
- </u-action-sheet>
- #end
- #end
- <u-modal v-model="show" :content="content" width='70%' border-radius="16" :content-style="{fontSize: '28rpx',padding: '20rpx',lineHeight: '44rpx',textAlign: 'left'}"
- :titleStyle="{padding: '20rpx'}" :confirm-style="{height: '80rpx',lineHeight: '80rpx'}" :title="title" confirm-text="确定">
- <view class="slot-content">
- <rich-text :nodes="content"></rich-text>
- </view>
- </u-modal>
- </view>
- </template>
- <script>
- import {
- getDictionaryDataSelector,
- getDataInterfaceRes
- } from '@/api/common'
- #if(${isFlow})
- import comMixin from '../mixin'
- #end
- import {
- getDateDay,
- getLaterData,
- getBeforeData,
- getBeforeTime,
- getLaterTime
- } from '@/components/index.js'
- import request from '@/utils/request'
- import {
- useBaseStore
- } from '@/store/modules/base'
- import CustomButton from '@/components/CustomButton'
- export default {
- components:{
- CustomButton
- },
- #if(${isFlow})
- mixins: [comMixin],
- #end
- data(){
- return{
- idList: [],
- index:0,
- actionList: [],
- actionListLength: false,
- showAction: false,
- btnLoading: false,
- loading: false,
- text: '提示:测试文本',
- tableKey:'',
- timeKey : +new Date(),
- ${context.formModel}:{
- ${pKeyName}:"",
- #foreach($fieLdsModel in ${context.fields})
- #set($html = $fieLdsModel.formColumnModel.fieLdsModel)
- #set($vModel = "${html.vModel}")
- #set($config = $html.config)
- #set($jnpfkey = "${config.jnpfKey}")
- #if($vModel)
- #if($!config.valueType=='String')
- $!{vModel} : '$!{config.defaultValue}',
- #elseif($!config.valueType=='undefined')
- $!{vModel} : undefined,
- #else
- $!{vModel} : $!{config.defaultValue},
- #end
- #end
- #end
- #foreach($masetkey in $mastTableList.entrySet())
- #set($fieldsAll = $masetkey.value)
- #foreach($fieLdsModel in ${fieldsAll})
- #set($mastTableModel = $fieLdsModel.formMastTableModel)
- #set($html = $fieLdsModel.formMastTableModel.mastTable.fieLdsModel)
- #set($vModel = "${mastTableModel.vModel}")
- #set($config = $html.config)
- #set($jnpfkey = "${config.jnpfKey}")
- #if($vModel)
- #if($!config.valueType=='String')
- $!{vModel} : '$!{config.defaultValue}',
- #elseif($!config.valueType=='undefined')
- $!{vModel} : undefined,
- #else
- $!{vModel} : $!{config.defaultValue},
- #end
- #end
- #end
- #end
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- ${className}List:[],
- #end
- },
- ${context.formRules}:{
- #foreach($fields in ${context.fields})
- #set($fieLdsModel = $fields.formColumnModel.fieLdsModel)
- #appRule($fieLdsModel)
- #end
- #foreach($masetkey in $mastTableList.entrySet())
- #set($fieldsAll = $masetkey.value)
- #foreach($fields in ${fieldsAll})
- #set($fieLdsModel = $fields.formMastTableModel.mastTable.fieLdsModel)
- #appRule($fieLdsModel)
- #end
- #end
- },
- #foreach($fields in ${context.fields})
- #set($fieLdsModel = $fields.formColumnModel.fieLdsModel)
- #list($fieLdsModel,'')
- #end
- #foreach($masetkey in $mastTableList.entrySet())
- #set($fieldsAll = $masetkey.value)
- #foreach($fields in ${fieldsAll})
- #set($fieLdsModel = $fields.formMastTableModel.mastTable.fieLdsModel)
- #list($fieLdsModel,'')
- #end
- #end
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- #foreach($childList in ${child.childList})
- #set($fieLdsModel = $childList.fieLdsModel)
- #list($fieLdsModel,$className)
- #end
- #end
- #foreach($fieLdsModel in ${context.form})
- #set($jnpfkey = "${fieLdsModel.jnpfKey}")
- #set($isEnd = "${fieLdsModel.isEnd}")
- #set($formModel = ${fieLdsModel.formModel})
- #set($model = "${formModel.model}")
- #set($outermost = ${formModel.outermost})
- #set($children = ${formModel.children})
- #if(${layoutList.contains($jnpfkey)})
- #if(${isEnd}=='0')
- #if(${outermost}=='0')
- #if($jnpfkey=='collapse')
- ${model}active: #if($formModel.accordion) '${formModel.active}' #else ${formModel.active} #end,
- #end
- ${model}Current:${formModel.activeIndex},
- ${model}Data:[
- #foreach($childrenList in $children)
- {
- title: #if(${childrenList.titleI18nCode}) this.$t('${childrenList.titleI18nCode}')#else "${childrenList.title}" #end
- },
- #end
- ],
- #end
- #end
- #end
- #end
- labelwidth:${context.labelWidth}*1.5,
- menuId:'',
- jurisdictionType:'',
- ruleList:{
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- #set($childLable = "${child.label}")
- ${className}List:{
- #foreach($html in ${child.childList})
- #set($fieLdsModel = ${html.fieLdsModel})
- #set($vModel = "${fieLdsModel.vModel}")
- #set($config = ${fieLdsModel.config})
- #set($jnpfkey = "${config.jnpfKey}")
- #set($label = "${config.label}")
- #if($config.required==true)
- #if($jnpfkey!='switch')
- '${vModel}' : '${childLable}-${label}不能为空',
- #end
- #end
- #end
- },
- #end
- },
- ableRelation:{
- #foreach($html in ${context.fields})
- #set($fieLdsModel = $html.formColumnModel.fieLdsModel)
- #ableRelation($fieLdsModel,'')
- #end
- #foreach($masetkey in $mastTableList.entrySet())
- #set($fieldsAll = $masetkey.value)
- #foreach($html in ${fieldsAll})
- #set($fieLdsModel = $html.formMastTableModel.mastTable.fieLdsModel)
- #ableRelation($fieLdsModel,'')
- #end
- #end
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- #foreach($childList in ${child.childList})
- #set($fieLdsModel = $childList.fieLdsModel)
- #ableRelation($fieLdsModel,$className)
- #end
- #end
- },
- interfaceRes:{
- #foreach($html in ${context.fields})
- #set($fieLdsModel = $html.formColumnModel.fieLdsModel)
- #faceRes($fieLdsModel,'')
- #end
- #foreach($masetkey in $mastTableList.entrySet())
- #set($fieldsAll = $masetkey.value)
- #foreach($html in ${fieldsAll})
- #set($fieLdsModel = $html.formMastTableModel.mastTable.fieLdsModel)
- #faceRes($fieLdsModel,'')
- #end
- #end
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- #foreach($childList in ${child.childList})
- #set($fieLdsModel = $childList.fieLdsModel)
- #faceRes($fieLdsModel,$className)
- #end
- #end
- },
- maskConfig:{
- #foreach($html in ${context.fields})
- #set($fieLdsModel = $html.formColumnModel.fieLdsModel)
- #maskConfig($fieLdsModel,'')
- #end
- #foreach($masetkey in $mastTableList.entrySet())
- #set($fieldsAll = $masetkey.value)
- #foreach($html in ${fieldsAll})
- #set($fieLdsModel = $html.formMastTableModel.mastTable.fieLdsModel)
- #maskConfig($fieLdsModel,'')
- #end
- #end
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- #foreach($childList in ${child.childList})
- #set($fieLdsModel = $childList.fieLdsModel)
- #maskConfig($fieLdsModel,$className)
- #end
- #end
- },
- locationScope:{
- #foreach($html in ${context.fields})
- #set($fieLdsModel = $html.formColumnModel.fieLdsModel)
- #locationScope($fieLdsModel,'')
- #end
- #foreach($masetkey in $mastTableList.entrySet())
- #set($fieldsAll = $masetkey.value)
- #foreach($html in ${fieldsAll})
- #set($fieLdsModel = $html.formMastTableModel.mastTable.fieLdsModel)
- #locationScope($fieLdsModel,'')
- #end
- #end
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- #foreach($childList in ${child.childList})
- #set($fieLdsModel = $childList.fieLdsModel)
- #locationScope($fieLdsModel,$className)
- #end
- #end
- },
- regList:{
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- #set($childLable = "${child.label}")
- ${className}List:{
- #foreach($html in ${child.childList})
- #set($fieLdsModel = ${html.fieLdsModel})
- #set($vModel = "${fieLdsModel.vModel}")
- #set($config = ${fieLdsModel.config})
- #set($listSize=$!{config.regList})
- #set($jnpfkey = "${config.jnpfKey}")
- #set($label = "${config.label}")
- #if($vModel)
- ${vModel}: [
- #if($listSize && $listSize.size()>0)
- #foreach($regList in ${config.regList})
- {
- pattern: ${regList.pattern},
- message: '${childLable}-${label}${regList.message}',
- },
- #end
- #end
- ],
- #end
- #end
- },
- #end
- },
- ableAll:{
- #foreach($html in ${context.fields})
- #set($fieLdsModel = $html.formColumnModel.fieLdsModel)
- #appableAll($fieLdsModel,'')
- #end
- #foreach($masetkey in $mastTableList.entrySet())
- #set($fieldsAll = $masetkey.value)
- #foreach($html in ${fieldsAll})
- #set($fieLdsModel = $html.formMastTableModel.mastTable.fieLdsModel)
- #appableAll($fieLdsModel,'')
- #end
- #end
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- #foreach($childList in ${child.childList})
- #set($fieLdsModel = $childList.fieLdsModel)
- #appableAll($fieLdsModel,$className)
- #end
- #end
- },
- childIndex:-1,
- dataValue:{},
- isEdit:false,
- userInfo:{},
- content:'',
- title:'',
- show:false,
- formatType: {
- 'yyyy': 'yyyy',
- 'yyyy-MM': 'yyyy-mm',
- 'yyyy-MM-dd': 'yyyy-mm-dd',
- 'yyyy-MM-dd HH:mm': 'yyyy-mm-dd hh:MM',
- 'yyyy-MM-dd HH:mm:ss': 'yyyy-mm-dd hh:MM:ss',
- 'HH:mm:ss': 'hh:MM:ss',
- "HH:mm": "hh:MM",
- 'YYYY': 'yyyy',
- 'YYYY-MM': 'yyyy-mm',
- 'YYYY-MM-DD': 'yyyy-mm-dd',
- 'YYYY-MM-DD HH:mm': 'yyyy-mm-dd hh:MM',
- 'YYYY-MM-DD HH:mm:ss': 'yyyy-mm-dd hh:MM:ss',
- },
- }
- },
- created(){
- uni.$on('linkPageConfirm', (subVal) => {
- if (this.tableKey) {
- for (let i = 0; i < subVal.length; i++) {
- let t = subVal[i]
- if (this['get' + this.tableKey]) {
- this['get' + this.tableKey](t)
- }
- }
- this.childIndex = -1
- this.collapse()
- }
- })
- uni.$on('initCollapse', () => {
- //初始化折叠面板高度高度
- this.collapse()
- })
- },
- onLoad(option) {
- this.jurisdictionType = option.jurisdictionType
- this.menuId=option.menuId
- this.userInfo = uni.getStorageSync('userInfo') || {}
- this.${context.formModel}.${pKeyName} = option.id || ''
- let _title = ""
- if(option.jurisdictionType =='btn_edit'){
- _title = this.$t('common.editText','编辑')
- }
- if(option.jurisdictionType =='btn_detail'){
- _title = this.$t('common.detailText','详情')
- }
- if(option.jurisdictionType =='btn_add'){
- _title = this.$t('common.add2Text','新增')
- }
- if(_title){
- uni.setNavigationBarTitle({
- title: _title
- })
- }
- this.selfInit()
- this.initDefaultData()
- this.dataAll()
- this.initData()
- this.dataValue = JSON.parse(JSON.stringify(this.${context.formModel}))
- this.idList = option.idList?option.idList.split(","):[]
- for(let i=0;i<this.idList.length;i++){
- if(this.idList[i]==option.id){
- this.index = i;
- }
- }
- #if($context.hasConfirmAndAddBtn)
- if (!option.id) {
- this.actionList.push({
- text: this.$t('common.continueAndAddText','确定并新增'),
- id: 'save_add'
- })
- } else {
- let upper={
- text: this.$t('common.prevRecord','上一条'),
- id: 'upper',
- disabled: this.index==0?true:false
- }
- this.actionList.push(upper)
- let lower={
- text: this.$t('common.nextRecord','下一条'),
- id: 'lower',
- disabled: this.index==this.idList.length-1?true:false
- }
- this.actionList.push(lower)
- this.actionList.push( {
- text: this.$t('common.continueText','确定并继续'),
- id: 'save_proceed'
- })
- this.collapse()
- }
- #end
- setTimeout(() => {
- uni.$emit('initCollapse')
- }, 50)
- uni.$on('initCollapse', () => {
- //初始化折叠面板高度高度
- this.collapse()
- })
- },
- onReady() {
- #set($rulesAll = "this."+${context.formRules})
- this.$nextTick(()=>{
- setTimeout(()=>{
- this.$refs.${context.formModel}.setRules(${rulesAll});
- },100)
- })
- },
- watch:{
- dataForm: {
- handler(val, oldVal) {
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- this.${className}()
- #end
- },
- deep: true
- }
- },
- methods:{
- handleAction(index) {
- if (this.actionList[index].id === 'save_add' || this.actionList[index].id === 'save_proceed') {
- this.submitForm(1)
- } else {
- this.calculation(this.actionList[index].id, index)
- }
- },
- onCollapseChange() {
- uni.$emit('initCollapse')
- },
- calculation(type, index) {
- if (type === 'upper') {
- this.index--
- this.actionList[index + 1].disabled = false
- if (this.index == 0) this.actionList[index].disabled = true
- } else {
- this.index++
- this.actionList[index - 1].disabled = false
- if (this.index == this.idList.length - 1) this.actionList[index].disabled = true
- }
- this.${context.formModel}.${pKeyName} = this.idList[this.index]
- this.initData()
- },
- changeData(model, index) {
- this.isEdit = false
- this.childIndex = index
- let modelAll = model.split("-");
- let faceMode = "";
- for (let i = 0; i < modelAll.length; i++) {
- faceMode += modelAll[i];
- }
- for(let key in this.ableRelation){
- if(key == faceMode && this.ableRelation[key]){
- let valueAll = this.ableRelation[key].split("-")
- if(valueAll.length>1){
- let value = this.${context.formModel}[valueAll[0]+"List"][index][valueAll[1]]
- if(Array.isArray(value)){
- this.${context.formModel}[valueAll[0]+"List"][index][valueAll[1]] = []
- }else{
- this.${context.formModel}[valueAll[0]+"List"][index][valueAll[1]] = undefined
- }
- }else{
- let value = this.${context.formModel}[this.ableRelation[key]]
- if(Array.isArray(value)){
- this.${context.formModel}[this.ableRelation[key]] = []
- }else{
- this.${context.formModel}[this.ableRelation[key]] = undefined
- }
- }
- }
- }
- for (let key in this.interfaceRes) {
- if (key != faceMode) {
- let faceReList = this.interfaceRes[key]
- for (let i = 0; i < faceReList.length; i++) {
- let relationField = faceReList[i].relationField
- let sourceType = faceReList[i].sourceType
- if (relationField == model && sourceType == 1) {
- let options = 'get' + key + 'Options';
- if(this[options]){
- this[options]()
- }
- this.changeData(key, index)
- }
- }
- }
- }
- },
- changeDataFormData(type, data, model,index,defaultValue ,edit) {
- if(!edit) {
- if (type == 2) {
- for (let i = 0; i < this.${context.formModel}[data].length; i++) {
- if (index == -1) {
- this.${context.formModel}[data][i][model] = defaultValue
- } else if (index == i) {
- this.${context.formModel}[data][i][model] = defaultValue
- }
- }
- } else {
- this.${context.formModel}[data] = defaultValue
- }
- }
- },
- clickIcon(label,tipLabel) {
- this.content = tipLabel
- this.title = label
- this.show = true
- },
- exist() {
- let title = [];
- let _ruleList = this.ruleList
- for (let k in _ruleList) {
- let childData = this.${context.formModel}[k]
- childData.forEach((item, index) => {
- for (let model in _ruleList[k]) {
- if (item[model] instanceof Array) {
- if (item[model].length == 0) {
- title.push(_ruleList[k][model])
- }
- } else if (!item[model] && item[model]!==0) {
- title.push(_ruleList[k][model])
- }
- }
- })
- }
- let _regList = this.regList
- for (let k in _regList) {
- let childData = this.${context.formModel}[k]
- for(let n in _regList[k]){
- for(let i=0;i<_regList[k][n].length;i++){
- const element = _regList[k][n][i]
- if (element.pattern) {
- element.pattern = element.pattern.toString()
- let start = element.pattern.indexOf('/')
- let stop = element.pattern.lastIndexOf('/')
- let str = element.pattern.substring(start + 1, stop)
- let reg = new RegExp(str)
- element.pattern = reg
- }
- childData.forEach((item, index) => {
- if(item[n] && !element.pattern.test(item[n])){
- title.push(element.message)
- }
- })
- }
- }
- }
- if (title.length > 0) {
- return title[0]
- }
- },
- resetForm(){
- #if(${context.webType}=='1')
- this.${context.formModel} = JSON.parse(JSON.stringify(this.dataValue))
- #foreach($fieLdsModel in ${context.form})
- #set($jnpfkey = "${fieLdsModel.jnpfKey}")
- #set($isEnd = "${fieLdsModel.isEnd}")
- #set($formModel = ${fieLdsModel.formModel})
- #set($model = "${formModel.model}")
- #set($outermost = ${formModel.outermost})
- #set($children = ${formModel.children})
- #if(${layoutList.contains($jnpfkey)})
- #if(${isEnd}=='0')
- #if(${outermost}=='0')
- this.${model}Current=${formModel.activeIndex}
- #end
- #end
- #end
- #end
- this.dataAll()
- #else
- uni.navigateBack()
- #end
- },
- dataAll(){
- #foreach($html in ${context.fields})
- #set($fieLdsModel = $html.formColumnModel.fieLdsModel)
- #options($fieLdsModel,'')
- #end
- #foreach($masetkey in $mastTableList.entrySet())
- #set($fieldsAll = $masetkey.value)
- #foreach($html in ${fieldsAll})
- #set($fieLdsModel = $html.formMastTableModel.mastTable.fieLdsModel)
- #options($fieLdsModel,'')
- #end
- #end
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- #foreach($childList in ${child.childList})
- #set($fieLdsModel = $childList.fieLdsModel)
- #options($fieLdsModel,$className)
- #end
- #end
- this.collapse()
- },
- dateTime(timeRule, timeType, timeTarget, timeValueData, dataValue) {
- let timeDataValue = null;
- let timeValue = Number(timeValueData)
- if (timeRule) {
- if (timeType == 1) {
- timeDataValue = timeValueData?timeValue:null
- } else if (timeType == 2) {
- timeDataValue = dataValue
- } else if (timeType == 3) {
- timeDataValue = new Date().getTime()
- } else if (timeType == 4) {
- let previousDate = '';
- if (timeTarget == 1 || timeTarget == 2) {
- previousDate = getDateDay(timeTarget, timeType, timeValue)
- timeDataValue = new Date(previousDate).getTime()
- } else if (timeTarget == 3) {
- previousDate = getBeforeData(timeValue)
- timeDataValue = new Date(previousDate).getTime()
- } else {
- timeDataValue = getBeforeTime(timeTarget, timeValue).getTime()
- }
- } else if (timeType == 5) {
- let previousDate = '';
- if (timeTarget == 1 || timeTarget == 2) {
- previousDate = getDateDay(timeTarget, timeType, timeValue)
- timeDataValue = new Date(previousDate).getTime()
- } else if (timeTarget == 3) {
- previousDate = getLaterData(timeValue)
- timeDataValue = new Date(previousDate).getTime()
- } else {
- timeDataValue = getLaterTime(timeTarget, timeValue).getTime()
- }
- }
- }
- return timeDataValue;
- },
- time(timeRule, timeType, timeTarget, timeValue, formatType, dataValue) {
- let format = formatType == 'HH:mm' ? 'HH:mm:00' : formatType
- let timeDataValue = null
- if (timeRule) {
- if (timeType == 1 && timeValue) {
- timeDataValue = timeValue || '00:00:00'
- if (timeDataValue.split(':').length == 3) {
- timeDataValue = timeDataValue
- } else {
- timeDataValue = timeDataValue + ':00'
- }
- } else if (timeType == 2) {
- timeDataValue = dataValue
- } else if (timeType == 3) {
- timeDataValue = this.jnpf.toDate(new Date(), format)
- } else if (timeType == 4) {
- let previousDate = '';
- previousDate = getBeforeTime(timeTarget, timeValue)
- timeDataValue = this.jnpf.toDate(previousDate, format)
- } else if (timeType == 5) {
- let previousDate = '';
- previousDate = getLaterTime(timeTarget, timeValue)
- timeDataValue = this.jnpf.toDate(previousDate, format)
- }
- }
- return timeDataValue;
- },
- #foreach($fields in ${context.fields})
- #set($fieLdsModel = $fields.formColumnModel.fieLdsModel)
- #optionsData($fieLdsModel,'')
- #end
- #foreach($masetkey in $mastTableList.entrySet())
- #set($fieldsAll = $masetkey.value)
- #foreach($fields in ${fieldsAll})
- #set($fieLdsModel = $fields.formMastTableModel.mastTable.fieLdsModel)
- #optionsData($fieLdsModel,'')
- #end
- #end
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- ${className}(){
- let table = this.${context.formModel}.${className}List
- let summaryField =${child.summaryField}
- let summaryFieldName =${child.summaryFieldName}
- #if($useFormPermission)
- for(let i=0;i<summaryField.length;i++){
- if(!this.${setPermission}.hasFormP("${tableModel}-"+summaryField[i],this.menuId)){
- summaryField.splice(i)
- }
- }
- #end
- let data ={}
- let thousandsField = ${child.thousandsField}
- for (let i in summaryField) {
- let map = {}
- let val = 0
- for (let j = 0; j < table.length; j++) {
- let summary = table[j][summaryField[i]];
- if (summary) {
- let data = isNaN(summary) ? 0 : Number(summary)
- val += data
- }
- }
- map.id = summaryField[i];
- map.name = summaryFieldName[summaryField[i]+"_i18n"] ? this.$t(summaryFieldName[summaryField[i]+"_i18n"]):summaryFieldName[summaryField[i]];
- map.val = (thousandsField.includes(summaryField[i]))? Number(val).toLocaleString('zh', {
- maximumFractionDigits: '2',
- minimumFractionDigits: '2'
- }): val.toFixed(2);
- data[summaryField[i]]=map;
- }
- return data;
- },
- #foreach($childList in ${child.childList})
- #set($className = "${child.className}")
- #set($fieLdsModel = $childList.fieLdsModel)
- #optionsData($fieLdsModel,$className)
- #end
- #end
- #foreach($fieLdsModel in ${context.form})
- #set($jnpfkey = "${fieLdsModel.jnpfKey}")
- #set($isEnd = "${fieLdsModel.isEnd}")
- #set($formModel = ${fieLdsModel.formModel})
- #set($outermost = ${formModel.outermost})
- #if($jnpfkey=='tab' || $jnpfkey=='steps')
- #if(${isEnd}=='0')
- #if(${outermost}=='0')
- ${formModel.model}(index) {
- this.${formModel.model}Current = index;
- this.timeKey = +new Date()
- #if($jnpfkey=='tab')
- this.collapse()
- setTimeout(() => {
- uni.$emit('initCollapse')
- }, 50)
- #end
- },
- #end
- #end
- #end
- #end
- initData(){
- #set($nextTick='$'+"nextTick")
- this.$nextTick(function(){
- if (this.${context.formModel}.${pKeyName}) {
- this.loading = true
- request({
- url: '/api/${context.module}/${context.className}/'+this.${context.formModel}.${pKeyName},
- method: 'get',
- }).then(res => {
- this.dataInfo(res.data)
- this.loading = false
- })
- }else {
- this.initDefaultData()
- }
- })
- },
- beforeSubmit(){
- const _data =this.dataList()
- return _data
- },
- #if($isFlow==false)
- submitForm(type){
- var _data = this.dataList()
- #set($refs = '$'+"refs")
- this.${refs}.${context.formModel}.validate(valid => {
- if (!valid) return
- #set($ruls='$'+"u")
- if (!!this.exist()) return this.${ruls}.toast(
- this.exist()
- )
- this.btnLoading = true
- if (this.${context.formModel}.${pKeyName}) {
- request({
- url: '/api/${context.module}/${context.className}/' + this.${context.formModel}.${pKeyName},
- method: 'put',
- data: _data,
- }).then(res => {
- uni.showToast({
- title: res.msg,
- complete: () => {
- setTimeout(() => {
- if(type!=1){
- uni.$emit('refresh')
- uni.navigateBack()
- }
- this.btnLoading = false
- }, 1500)
- }
- })
- }).catch(() => {
- this.btnLoading = false
- })
- }else {
- request({
- url: '/api/${context.module}/${context.className}',
- method: 'post',
- data: _data,
- }).then(res => {
- uni.showToast({
- title: res.msg,
- complete: () => {
- setTimeout(() => {
- if(type==1){
- this.${context.formModel} = JSON.parse(JSON.stringify(this.dataValue))
- this.initDefaultData()
- }else{
- uni.$emit('refresh')
- uni.navigateBack()
- }
- this.btnLoading = false
- }, 1500)
- }
- })
- }).catch(() => {
- this.btnLoading = false
- })
- }
- });
- },
- #end
- initDefaultData() {
- #foreach($html in ${context.fields})
- #set($fieLdsModel = $html.formColumnModel.fieLdsModel)
- #set($formModel='this.'+${context.formModel})
- #formDefaultData('mast',$fieLdsModel,${formModel})
- #end
- #foreach($masetkey in $mastTableList.entrySet())
- #set($fieldsAll = $masetkey.value)
- #foreach($html in ${fieldsAll})
- #set($fieLdsModel = $html.formMastTableModel.mastTable.fieLdsModel)
- #set($formModel='this.'+${context.formModel})
- #formDefaultData('mastTable',$fieLdsModel,${formModel})
- #end
- #end
- },
- selfInit() {
- useBaseStore().updateRelationData({})
- #if($isFlow)
- this.dataAll()
- this.initDefaultData()
- this.collapse()
- #end
- },
- selfGetInfo(dataForm){
- this.${context.formModel}.id = this.${context.formModel}.${pKeyName}
- this.dataInfo(dataForm)
- },
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- add${className}List(btnvalue){
- this.tableKey = '${className}List';
- let actionConfigMap ={
- #foreach($footerList in ${child.footerBtnsList})
- #set($btnvalue = "$footerList.value")
- #set($btnlabel = "$footerList.label")
- #set($btnshow = $footerList.show)
- #set($btnType = "$footerList.btnType")
- #set($btnIcon = "$footerList.btnIcon")
- #set($actionConfig = "$footerList.actionConfig")
- #if($btnvalue!='add' && $btnvalue!='batchRemove')
- "$btnvalue":$actionConfig,
- #end
- #end
- }
- if(btnvalue == 'add'){
- let value={
- #foreach($childData in ${child.childList})
- #set($fieLdsModel = ${childData.fieLdsModel})
- #set($vModel = "${fieLdsModel.vModel}")
- #set($config = ${fieLdsModel.config})
- #set($dataType = "${config.dataType}")
- #if($vModel)
- #if($!config.valueType=='String')
- $!{vModel} : '$!{config.defaultValue}',
- #elseif($!config.valueType=='undefined')
- $!{vModel} : undefined,
- #else
- $!{vModel} : $!{config.defaultValue},
- #end
- #if(${dataType}=='dictionary' || ${dataType}=='dynamic')
- ${vModel}Options:[],
- #end
- #end
- #end
- }
- this.get${className}List(value)
- this.childIndex = -1
- this.collapse()
- }else {
- const data = {
- actionConfig: actionConfigMap[btnvalue],
- formData: this.${context.formModel}
- }
- uni.navigateTo({
- url: '/pages/apply/tableLinkage/index?data=' + encodeURIComponent(JSON.stringify(data))
- })
- }
- },
- del${className}List(index,showConfirm=false) {
- const handleRemove = ()=>{
- this.${context.formModel}.${className}List.splice(index, 1);
- this.collapse()
- }
- if(!showConfirm) return handleRemove()
- uni.showModal({
- title: '提示',
- content: '确认删除该条信息吗?',
- success: (res)=> {
- if (res.confirm) handleRemove()
- }
- })
- },
- copy${className}List(index) {
- this.tableKey = '${className}List';
- let tableField = '$child.tableModel'
- let result = {}
- let item = {
- #foreach($childData in ${child.childFieldList})
- #set($fieLdsModel = ${childData.fieLdsModel})
- #set($vModel = "${fieLdsModel.vModel}")
- #set($config = ${fieLdsModel.config})
- #set($jnpfkey = ${config.jnpfKey})
- #if(!${systemJnpfKey.contains(${jnpfkey})})
- #set($dataType = "${config.dataType}")
- #if($vModel)
- #if($!config.valueType=='String')
- $!{vModel} : '$!{config.defaultValue}',
- #elseif($!config.valueType=='undefined')
- $!{vModel} : undefined,
- #else
- $!{vModel} : $!{config.defaultValue},
- #end
- #if(${dataType}=='dictionary' || ${dataType}=='dynamic')
- ${vModel}Options:[],
- #end
- #end
- #end
- #end
- }
- let data = JSON.parse(JSON.stringify(this.${context.formModel}.${className}List[index]))
- for(let key in item){
- result[key] = data[key]
- }
- this.${context.formModel}.${className}List.push(result)
- this.collapse()
- },
- get${className}List(value){
- let item = {
- #foreach($childData in ${child.childFieldList})
- #set($fieLdsModel = ${childData.fieLdsModel})
- #set($vModel = "${fieLdsModel.vModel}")
- #set($config = ${fieLdsModel.config})
- #set($dataType = "${config.dataType}")
- #if($vModel)
- #if($!config.valueType=='String')
- $!{vModel} : '$!{config.defaultValue}',
- #elseif($!config.valueType=='undefined')
- $!{vModel} : undefined,
- #else
- $!{vModel} : $!{config.defaultValue},
- #end
- #if(${dataType}=='dictionary' || ${dataType}=='dynamic')
- ${vModel}Options:[],
- #end
- #end
- #end
- }
- let result = {...item,...value}
- this.${context.formModel}.${className}List.push(result)
- if(this.tableKey){
- #foreach($childData in ${child.childList})
- #set($fieLdsModel = ${childData.fieLdsModel})
- #set($formModel='this.'+${context.formModel}+"."+${className}+"List[this."+${context.formModel}+"."+${className}+"List.length - 1]")
- #formDefaultData('table',$fieLdsModel,${formModel})
- #end
- }
- this.childIndex=this.${context.formModel}.${className}List.length-1
- this.isEdit = true
- #foreach($childList in ${child.childList})
- #set($fieLdsModel = $childList.fieLdsModel)
- #set($vModel = "${fieLdsModel.vModel}")
- #set($field = "${fieLdsModel.vModel}")
- #set($config = ${fieLdsModel.config})
- #set($dataType = "${config.dataType}")
- #if(${dataType}=='dynamic')
- this.get${className}${vModel}Options()
- #end
- #end
- this.isEdit = false
- setTimeout(() => {
- uni.$emit('initCollapse')
- }, 50)
- },
- #end
- dataList(){
- var _data = this.${context.formModel};
- return _data;
- },
- dataInfo(dataAll){
- let dataList = JSON.parse(JSON.stringify(dataAll))
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- let $className = JSON.parse(JSON.stringify(dataList.${className}List))
- dataList.${className}List = []
- #end
- this.${context.formModel}=dataList
- this.isEdit = true
- this.dataAll()
- this.isEdit = false
- #foreach($child in ${context.children})
- #set($className = "${child.className}")
- for (let i = 0; i < ${className}.length; i++) {
- this.get${className}List(${className}[i])
- }
- #end
- this.childIndex=-1
- this.collapse()
- setTimeout(() => {
- uni.$emit('initCollapse')
- }, 50)
- },
- collapse(){
- setTimeout(()=> {
- #foreach($fieLdsModel in ${context.form})
- #set($jnpfkey = "${fieLdsModel.jnpfKey}")
- #set($isEnd = "${fieLdsModel.isEnd}")
- #set($formModel = ${fieLdsModel.formModel})
- #set($outermost = ${formModel.outermost})
- #set($config=$formModel.config)
- #if(${layoutList.contains($jnpfkey)})
- #if(${config.app}==true)
- #if(${isEnd}=='0')
- #if(${outermost}=='0')
- this.$refs.${formModel.model}Current && this.$refs.${formModel.model}Current.init()
- #end
- #end
- #end
- #end
- #end
- }, 50);
- },
- },
- }
- </script>
- <style>
- page{
- background-color: #f0f2f6;
- }
- </style>
|