Browse Source

uas手机版
应用单据新增

RaoMeng 5 years ago
parent
commit
3ea19e2770

+ 17 - 37
uas-office-web/uas-mobile/src/components/common/currencyDetail/CurrencyDetail.jsx

@@ -77,7 +77,6 @@ class CurrencyDetail extends Component {
   }
   }
 
 
   componentDidMount () {
   componentDidMount () {
-    document.title = '新增单据'
     this.props.onRef && this.props.onRef(this)
     this.props.onRef && this.props.onRef(this)
     const { userState, match, master, caller, id } = this.props
     const { userState, match, master, caller, id } = this.props
     mMaster = match ? match.params.master :
     mMaster = match ? match.params.master :
@@ -454,8 +453,6 @@ class CurrencyDetail extends Component {
       nodeId: nodeId,
       nodeId: nodeId,
       master: mMaster,
       master: mMaster,
       _noc: 1,
       _noc: 1,
-    }, {
-      // 'Cookie': 'JSESSIONID=' + mSessionId
     }).then(response => {
     }).then(response => {
       Toast.hide()
       Toast.hide()
       message.success('指定审批人成功')
       message.success('指定审批人成功')
@@ -535,16 +532,13 @@ class CurrencyDetail extends Component {
     titleBillModel.type = TYPE_TITLE
     titleBillModel.type = TYPE_TITLE
     if (billGroup.isForm == true) {
     if (billGroup.isForm == true) {
       titleBillModel.caption = billGroup.group
       titleBillModel.caption = billGroup.group
-      titleBillModel.allowBlank = 'F'
-
+      titleBillModel.allowBlank = false
     } else {
     } else {
       if (gridStartIndex === -1) {
       if (gridStartIndex === -1) {
         gridStartIndex = g
         gridStartIndex = g
       }
       }
       titleBillModel.caption = `明细${g - gridStartIndex + 1}`
       titleBillModel.caption = `明细${g - gridStartIndex + 1}`
-      titleBillModel.allowBlank = billGroup.isDeleteAble == true
-        ? 'T'
-        : 'F'
+      titleBillModel.allowBlank = billGroup.isDeleteAble
     }
     }
     if (!isObjEmpty(titleBillModel.caption)) {
     if (!isObjEmpty(titleBillModel.caption)) {
       formItems.push(
       formItems.push(
@@ -840,32 +834,29 @@ class CurrencyDetail extends Component {
         return
         return
       }
       }
 
 
-      console.log('form', JSON.stringify(formStore))
-      console.log('grid', JSON.stringify(gridStoreList))
       Toast.loading('单据提交中', 0)
       Toast.loading('单据提交中', 0)
-      fetchPostForm(_baseURL + (mId <= 0
-        ? '/uapproval/common/commonSaveAndSubmit.action'
-        : '/uapproval/common/commonUpdate.action'), {
+      fetchPostObj(API.SERVICES_COMMONSAVEANDSUBMITORDER, {
         caller: mCaller,
         caller: mCaller,
         keyid: mId,
         keyid: mId,
-        id: mId,
         formStore: JSON.stringify(formStore),
         formStore: JSON.stringify(formStore),
         gridStore: JSON.stringify(gridStoreList),
         gridStore: JSON.stringify(gridStoreList),
       }).then(response => {
       }).then(response => {
         Toast.hide()
         Toast.hide()
-        if (response && response.success == true) {
+        if (response && response.data && response.success == true) {
           this.setState({
           this.setState({
             promptAble: false,
             promptAble: false,
           })
           })
-          let nodeid = response.nodeId
+          const data = response.data
+
+          let nodeid = data.nodeId
           if (nodeid == -1) {
           if (nodeid == -1) {
             message.success('单据提交成功')
             message.success('单据提交成功')
-            this.props.history.goBack()
+            this.toApprovalDetail(nodeid)
           } else {
           } else {
             if (mId <= 0) {
             if (mId <= 0) {
-              mId = response[mKeyField] || response.keyvalue
-              let formcode = response.formcode
-              let isSave = response.isSave
+              mId = data[mKeyField] || data.keyvalue
+              let formcode = data.formcode
+              let isSave = data.isSave
               if (isSave == true || isSave == 'true') {
               if (isSave == true || isSave == 'true') {
                 this.toApprovalDetail(nodeid)
                 this.toApprovalDetail(nodeid)
               } else {
               } else {
@@ -896,14 +887,9 @@ class CurrencyDetail extends Component {
     }
     }
   }
   }
 
 
-  toApprovalDetail (nodeid) {
-    if (!isObjEmpty(nodeid)) {
-      this.props.history.replace('/approval/%7B%22' +
-        'master%22%3A%22' + mMaster
-        + '%22%2C%22nodeId%22%3A' + nodeid
-        + '%2C%22type%22%3A' + 2
-        + '%2C%22baseUrl%22%3A%22' + encodeURIComponent(_baseURL)
-        + '%22%7D')
+  toApprovalDetail () {
+    if (!isObjEmpty(mId)) {
+      this.props.submitSuccess && this.props.submitSuccess(mId)
     }
     }
   }
   }
 
 
@@ -972,9 +958,7 @@ class CurrencyDetail extends Component {
           continue
           continue
         }
         }
         if (isObjEmpty(this.getValue(billModel)) &&
         if (isObjEmpty(this.getValue(billModel)) &&
-          billModel.isdefault &&
-          (billModel.allowBlank === 'necessaryField'
-            || billModel.allowBlank === 'F')) {
+          billModel.isdefault && !billModel.allowBlank) {
           message.error(`${billModel.caption}为必填项`)
           message.error(`${billModel.caption}为必填项`)
           return null
           return null
         }
         }
@@ -998,9 +982,7 @@ class CurrencyDetail extends Component {
           for (let j = 0; j < gridFields.length; j++) {
           for (let j = 0; j < gridFields.length; j++) {
             let billModel = gridFields[j]
             let billModel = gridFields[j]
             if (isObjEmpty(this.getValue(billModel))
             if (isObjEmpty(this.getValue(billModel))
-              && billModel.isdefault
-              && (billModel.allowBlank === 'necessaryField'
-                || billModel.allowBlank === 'F')) {
+              && billModel.isdefault && !billModel.allowBlank) {
               message.error(`${billModel.caption}为必填项`)
               message.error(`${billModel.caption}为必填项`)
               return null
               return null
             }
             }
@@ -1377,9 +1359,7 @@ class CurrencyDetail extends Component {
                 gridStartIndex = i
                 gridStartIndex = i
               }
               }
               titleBillModel.caption = `明细${i - gridStartIndex + 1}`
               titleBillModel.caption = `明细${i - gridStartIndex + 1}`
-              titleBillModel.allowBlank = groupModel.isDeleteAble == true
-                ? 'T'
-                : 'F'
+              titleBillModel.allowBlank = groupModel.isDeleteAble
               mShowBillModels.push(titleBillModel)
               mShowBillModels.push(titleBillModel)
             }
             }
           }
           }

+ 26 - 8
uas-office-web/uas-mobile/src/components/common/currencyList/CurrencyList.jsx

@@ -91,6 +91,11 @@ class CurrencyList extends Component {
     Toast.hide()
     Toast.hide()
   }
   }
 
 
+  shouldComponentUpdate (nextProps, nextState, nextContext) {
+    // this.forceUpdate()
+    return true
+  }
+
   render () {
   render () {
     const {
     const {
       listState: {
       listState: {
@@ -301,7 +306,6 @@ class CurrencyList extends Component {
       code: tabList ? tabList[tabSelect].CODE : '',
       code: tabList ? tabList[tabSelect].CODE : '',
       pageIndex,
       pageIndex,
       pageSize: LIST_PAGE_SIZE,
       pageSize: LIST_PAGE_SIZE,
-      condition: '1=1',
       keyWords: oldSearch,
       keyWords: oldSearch,
       ...params,
       ...params,
       ...extraParams,
       ...extraParams,
@@ -310,6 +314,7 @@ class CurrencyList extends Component {
         listData = listData.concat(response.data.list)
         listData = listData.concat(response.data.list)
       } else {
       } else {
         pageIndex--
         pageIndex--
+        Toast.show('数据为空', 2)
       }
       }
       this.setState({
       this.setState({
         refreshing: false,
         refreshing: false,
@@ -366,12 +371,6 @@ class CurrencyList extends Component {
     onItemClick && onItemClick(rowData)
     onItemClick && onItemClick(rowData)
   }
   }
 
 
-  onFilterOpen = () => {
-    this.setState({
-      filterOpen: !this.state.filterOpen,
-    })
-  }
-
   onDocAdd = () => {
   onDocAdd = () => {
     saveListState({
     saveListState({
       scrollTop: ReactDOM.findDOMNode(this.lv).scrollTop,
       scrollTop: ReactDOM.findDOMNode(this.lv).scrollTop,
@@ -394,10 +393,29 @@ class CurrencyList extends Component {
     }
     }
   }
   }
 
 
+  onFilterOpen = () => {
+    this.setState({
+      filterOpen: !this.state.filterOpen,
+    })
+  }
+
   onFilterCommit = () => {
   onFilterCommit = () => {
     const filterGroupList = this.cd && this.cd.state.billGroupList
     const filterGroupList = this.cd && this.cd.state.billGroupList
     let formAndGrid = getFormAndGrid(filterGroupList)
     let formAndGrid = getFormAndGrid(filterGroupList)
-    console.log(formAndGrid)
+    if (!isObjNull(formAndGrid)) {
+      saveListState({
+        pageIndex: 0,
+        listData: [],
+      })
+      setTimeout(() => {
+        this.requestList({
+          filters: formAndGrid.formFields,
+        })
+      }, 0)
+      this.setState({
+        filterOpen: !this.state.filterOpen,
+      })
+    }
   }
   }
 
 
   onSearchChange = (val) => {
   onSearchChange = (val) => {

+ 1 - 1
uas-office-web/uas-mobile/src/components/common/formNew/FormEnclosure.jsx

@@ -63,7 +63,7 @@ export default class FormEnclosure extends Component {
           fontSize: '14px',
           fontSize: '14px',
           color: '#333333',
           color: '#333333',
         }}>{billModel.caption}</div>
         }}>{billModel.caption}</div>
-        <div className={billModel.allowBlank == 'F'
+        <div className={!billModel.allowBlank
           ? 'form-input-fill'
           ? 'form-input-fill'
           : 'visibleHidden'}>*
           : 'visibleHidden'}>*
         </div>
         </div>

+ 12 - 12
uas-office-web/uas-mobile/src/components/common/formNew/FormInput.jsx

@@ -94,7 +94,7 @@ export default class FormInput extends Component {
     return <div className='form-common-layout'
     return <div className='form-common-layout'
                 style={{ minHeight: '32px' }}>
                 style={{ minHeight: '32px' }}>
       <div className='form-input-caption'>{billModel.caption}</div>
       <div className='form-input-caption'>{billModel.caption}</div>
-      <div className={billModel.allowBlank == 'F'
+      <div className={!billModel.allowBlank
         ? 'form-input-fill'
         ? 'form-input-fill'
         : 'visibleHidden'}>*
         : 'visibleHidden'}>*
       </div>
       </div>
@@ -138,7 +138,7 @@ export default class FormInput extends Component {
           fontSize: '14px',
           fontSize: '14px',
           color: '#333333',
           color: '#333333',
         }}>{billModel.caption}</div>
         }}>{billModel.caption}</div>
-        <div className={billModel.allowBlank == 'F'
+        <div className={!billModel.allowBlank
           ? 'form-input-fill'
           ? 'form-input-fill'
           : 'visibleHidden'}>*
           : 'visibleHidden'}>*
         </div>
         </div>
@@ -155,21 +155,21 @@ export default class FormInput extends Component {
   getTextCom (billModel) {
   getTextCom (billModel) {
     return <TextareaItem
     return <TextareaItem
       className='form-input-value' autoHeight
       className='form-input-value' autoHeight
-      placeholder={(billModel.readOnly === 'T' ||
+      placeholder={(billModel.readOnly ||
         billModel.editable === 'F')
         billModel.editable === 'F')
         ? ''
         ? ''
         : (this.isSelect(billModel)
         : (this.isSelect(billModel)
           ? '请选择'
           ? '请选择'
           : '请输入')}
           : '请输入')}
       clear={true}
       clear={true}
-      editable={(billModel.readOnly === 'T' ||
+      editable={(billModel.readOnly ||
         billModel.editable === 'F')
         billModel.editable === 'F')
         ? false
         ? false
         : (this.isSelect(billModel)
         : (this.isSelect(billModel)
           ? false
           ? false
           : true)}
           : true)}
       disabled={false}
       disabled={false}
-      // extra={(billModel.readOnly === 'T' &&
+      // extra={(billModel.readOnly &&
       //   billModel.editable === 'F' && this.isSelect(billModel))
       //   billModel.editable === 'F' && this.isSelect(billModel))
       //   ? '>'
       //   ? '>'
       //   : ''}
       //   : ''}
@@ -206,9 +206,9 @@ export default class FormInput extends Component {
         dismissText: '取消',
         dismissText: '取消',
       }}
       }}
       mode={type === 'DT' ? 'datetime' : 'date'}
       mode={type === 'DT' ? 'datetime' : 'date'}
-      extra={(billModel.readOnly === 'T' ||
+      extra={(billModel.readOnly ||
         billModel.editable === 'F') ? ' ' : type === 'DT' ? '选择时间' : '选择日期'}
         billModel.editable === 'F') ? ' ' : type === 'DT' ? '选择时间' : '选择日期'}
-      disabled={(billModel.readOnly === 'T' ||
+      disabled={(billModel.readOnly ||
         billModel.editable === 'F') ? true : false}
         billModel.editable === 'F') ? true : false}
       value={!isObjEmpty(this.getValue(billModel))
       value={!isObjEmpty(this.getValue(billModel))
         ? new Date(this.getValue(billModel).replace(/\-/g, '/'))
         ? new Date(this.getValue(billModel).replace(/\-/g, '/'))
@@ -217,7 +217,7 @@ export default class FormInput extends Component {
     >
     >
       <DatePickerCustom>
       <DatePickerCustom>
         <div className='form-input-caption'>{billModel.caption}</div>
         <div className='form-input-caption'>{billModel.caption}</div>
-        <div className={billModel.allowBlank == 'F'
+        <div className={!billModel.allowBlank
           ? 'form-input-fill'
           ? 'form-input-fill'
           : 'visibleHidden'}>*
           : 'visibleHidden'}>*
         </div>
         </div>
@@ -232,18 +232,18 @@ export default class FormInput extends Component {
    */
    */
   getNumCom (billModel) {
   getNumCom (billModel) {
     return <InputItem className='form-input-value' clear
     return <InputItem className='form-input-value' clear
-                      placeholder={(billModel.readOnly === 'T' ||
+                      placeholder={(billModel.readOnly ||
                         billModel.editable === 'F')
                         billModel.editable === 'F')
                         ? ''
                         ? ''
                         : (this.isSelect(billModel)
                         : (this.isSelect(billModel)
                           ? '请选择'
                           ? '请选择'
                           : '请输入')}
                           : '请输入')}
-                      editable={(billModel.readOnly === 'T' ||
+                      editable={(billModel.readOnly ||
                         billModel.editable === 'F') ? false : (this.isSelect(
                         billModel.editable === 'F') ? false : (this.isSelect(
                         billModel)
                         billModel)
                         ? false
                         ? false
                         : true)}
                         : true)}
-      // extra={(billModel.readOnly === 'T' &&
+      // extra={(billModel.readOnly  &&
       //   billModel.editable === 'F' && this.isSelect(billModel))
       //   billModel.editable === 'F' && this.isSelect(billModel))
       //   ? '>'
       //   ? '>'
       //   : ''}
       //   : ''}
@@ -268,7 +268,7 @@ export default class FormInput extends Component {
 
 
   onInputClick = e => {
   onInputClick = e => {
     const { billModel } = this.state
     const { billModel } = this.state
-    if (this.isSelect(billModel) && billModel.readOnly === 'F') {
+    if (this.isSelect(billModel) && !billModel.readOnly) {
       if (!isObjEmpty(billModel.localDatas)) {
       if (!isObjEmpty(billModel.localDatas)) {
         this.setState({
         this.setState({
           modalList: billModel.localDatas,
           modalList: billModel.localDatas,

+ 1 - 1
uas-office-web/uas-mobile/src/components/common/formNew/FormTitle.jsx

@@ -31,7 +31,7 @@ export default class FormTitle extends Component {
           : 'form-common-layout'}
           : 'form-common-layout'}
         style={{ background: '#efefef' }}>
         style={{ background: '#efefef' }}>
         <div className='form-title-text'>{billModel.caption}</div>
         <div className='form-title-text'>{billModel.caption}</div>
-        <div className={billModel.allowBlank == 'F'
+        <div className={!billModel.allowBlank
           ? 'displayNone'
           ? 'displayNone'
           : 'form-title-delete'}
           : 'form-title-delete'}
              onClick={this.onDeleteClick}>删除
              onClick={this.onDeleteClick}>删除

+ 4 - 1
uas-office-web/uas-mobile/src/configs/api.config.js

@@ -5,8 +5,8 @@
 
 
 export const _host = window.location.origin
 export const _host = window.location.origin
   // && 'http://10.1.7.104:8090/ERP'//吴炳
   // && 'http://10.1.7.104:8090/ERP'//吴炳
-  // && 'http://10.1.7.44:8081/erp'//吴雨骁
   // && 'http://usoft.f3322.net:10007/uas'
   // && 'http://usoft.f3322.net:10007/uas'
+  // && 'http://10.1.7.44:8081/erp'//吴雨骁
 
 
 export const _baseURL = _host + (process.env.REACT_APP_ROUTER_BASE_NAME || '')
 export const _baseURL = _host + (process.env.REACT_APP_ROUTER_BASE_NAME || '')
 
 
@@ -39,6 +39,9 @@ export const API = {
   //获取应用详情
   //获取应用详情
   SETVICES_GETORDER: _baseURL +
   SETVICES_GETORDER: _baseURL +
     '/mobile/appweb/services/getOrder.action',
     '/mobile/appweb/services/getOrder.action',
+  //单据提交
+  SERVICES_COMMONSAVEANDSUBMITORDER: _baseURL +
+    '/mobile/appweb/services/commonSaveAndSubmitOrder.action',
 
 
   /*******************************报表*************************************/
   /*******************************报表*************************************/
   //获取报表菜单
   //获取报表菜单

+ 2 - 2
uas-office-web/uas-mobile/src/model/common/BillModel.js

@@ -14,13 +14,13 @@ export default function BillModel (billModel) {
     this.type = ''//类型(标题类型为Constants.TYPE_TITLE,不触发点击事件等 )
     this.type = ''//类型(标题类型为Constants.TYPE_TITLE,不触发点击事件等 )
     this.sourcetype = ''//字段原类型
     this.sourcetype = ''//字段原类型
     this.logicType = ''//logic类型
     this.logicType = ''//logic类型
-    this.readOnly = ''//字段是否只读  T/F
+    this.readOnly = true//字段是否只读
     this.field = ''//字段
     this.field = ''//字段
     this.value = ''//上传值
     this.value = ''//上传值
     this.display = ''//显示值
     this.display = ''//显示值
     this.defValue = ''//默认值
     this.defValue = ''//默认值
     this.findFunctionName = ''//默认值
     this.findFunctionName = ''//默认值
-    this.allowBlank = ''//是否允许为空(注:当作为标题的时候T:表示可以删除 F:表示不可删除)
+    this.allowBlank = true//是否允许为空(注:当作为标题的时候true表示可以删除 false表示不可删除)
     this.renderer = ''
     this.renderer = ''
     this.enclusureId = ''
     this.enclusureId = ''
     this.localDatas = []//获取到的本地选择数据
     this.localDatas = []//获取到的本地选择数据

+ 9 - 19
uas-office-web/uas-mobile/src/pages/private/service/ServiceAdd.jsx

@@ -6,7 +6,6 @@
 import React, { Component } from 'react'
 import React, { Component } from 'react'
 import { connect } from 'react-redux'
 import { connect } from 'react-redux'
 import './service.less'
 import './service.less'
-import { getFormAndGrid } from '../../../utils/common/form.request'
 import CurrencyDetail
 import CurrencyDetail
   from '../../../components/common/currencyDetail/CurrencyDetail'
   from '../../../components/common/currencyDetail/CurrencyDetail'
 
 
@@ -19,8 +18,9 @@ class ServiceAdd extends Component {
   }
   }
 
 
   componentDidMount () {
   componentDidMount () {
-    const title = this.props.match.params.title
-    document.title = title || '单据新增'
+    this.title = this.props.match.params.title
+    this.caller = this.props.match.params.caller
+    document.title = this.title || '单据新增'
   }
   }
 
 
   componentWillUnmount () {
   componentWillUnmount () {
@@ -34,28 +34,18 @@ class ServiceAdd extends Component {
           onRef={ref => this.cd = ref}
           onRef={ref => this.cd = ref}
           caller={this.props.match.params.caller}
           caller={this.props.match.params.caller}
           id={this.props.match.params.id}
           id={this.props.match.params.id}
+          submitSuccess={this.submitSuccess}
         >
         >
-          {/*<Button*/}
-          {/*  type={'primary'}*/}
-          {/*  style={{*/}
-          {/*    margin: '12px 26px 16px',*/}
-          {/*    height: '36px',*/}
-          {/*    lineHeight: '36px',*/}
-          {/*    fontSize: '16px',*/}
-          {/*  }}*/}
-          {/*  onClick={this.onSubmitClick}>提交</Button>*/}
         </CurrencyDetail>
         </CurrencyDetail>
       </div>
       </div>
     )
     )
   }
   }
 
 
-  /**
-   * 单据提交
-   */
-  onSubmitClick = () => {
-    const billGroupList = this.cd ? this.cd.state.billGroupList : []
-    let formAndGrid = getFormAndGrid(billGroupList)
-    console.log(formAndGrid)
+  submitSuccess = (keyValue) => {
+    this.props.history.replace(
+      '/serviceDetail/' + keyValue + '/' + this.props.match.params.caller +
+      '/' + this.props.match.params.title,
+    )
   }
   }
 }
 }
 
 

+ 1 - 0
uas-office-web/uas-mobile/src/pages/private/service/ServiceList.jsx

@@ -17,6 +17,7 @@ class ServiceList extends Component {
   }
   }
 
 
   componentDidMount () {
   componentDidMount () {
+    this.caller = this.props.match.params.caller
     this.title = this.props.match.params.title
     this.title = this.props.match.params.title
     document.title = this.title || '单据列表'
     document.title = this.title || '单据列表'
   }
   }

+ 4 - 8
uas-office-web/uas-mobile/src/utils/common/form.request.js

@@ -75,10 +75,10 @@ export function getBillGroup (groupItem, groupIndex, isDetail) {
       billModel.caption = fieldItem.caption
       billModel.caption = fieldItem.caption
       billModel.type = fieldItem.type//前端类型
       billModel.type = fieldItem.type//前端类型
       billModel.sourcetype = fieldItem.sourcetype//字段原类型
       billModel.sourcetype = fieldItem.sourcetype//字段原类型
-      billModel.readOnly = (fieldItem.readOnly || isDetail) ? 'T' : 'F'
+      billModel.readOnly = (fieldItem.readOnly || isDetail)
       billModel.field = fieldItem.field
       billModel.field = fieldItem.field
       billModel.logicType = fieldItem.logicType
       billModel.logicType = fieldItem.logicType
-      billModel.allowBlank = (fieldItem.allowBlank || isDetail) ? 'T' : 'F'
+      billModel.allowBlank = (fieldItem.allowBlank || isDetail)
 
 
       billModel.value = fieldItem.value
       billModel.value = fieldItem.value
       billModel.display = fieldItem.display
       billModel.display = fieldItem.display
@@ -184,9 +184,7 @@ function analysisForm (formFields) {
       if (isObjNull(billModel)) {
       if (isObjNull(billModel)) {
         continue
         continue
       }
       }
-      if (isObjEmpty(getValue(billModel)) &&
-        (billModel.allowBlank === 'necessaryField'
-          || billModel.allowBlank === 'F')) {
+      if (isObjEmpty(getValue(billModel)) && !billModel.allowBlank) {
         message.error(`${billModel.caption}为必填项`)
         message.error(`${billModel.caption}为必填项`)
         return null
         return null
       }
       }
@@ -209,9 +207,7 @@ function analysisGrid (gridBillMap) {
         let gridStore = {}
         let gridStore = {}
         for (let j = 0; j < gridFields.length; j++) {
         for (let j = 0; j < gridFields.length; j++) {
           let billModel = gridFields[j]
           let billModel = gridFields[j]
-          if (isObjEmpty(getValue(billModel))
-            && (billModel.allowBlank === 'necessaryField'
-              || billModel.allowBlank === 'F')) {
+          if (isObjEmpty(getValue(billModel)) && !billModel.allowBlank) {
             message.error(`${billModel.caption}为必填项`)
             message.error(`${billModel.caption}为必填项`)
             return null
             return null
           }
           }

+ 2 - 4
uas-office-web/uas-mobile/src/utils/common/form.util.js

@@ -189,16 +189,14 @@ function addGroupTitle (
   titleBillModel.type = TYPE_TITLE
   titleBillModel.type = TYPE_TITLE
   if (billGroup.isForm == true) {
   if (billGroup.isForm == true) {
     titleBillModel.caption = billGroup.group
     titleBillModel.caption = billGroup.group
-    titleBillModel.allowBlank = 'F'
+    titleBillModel.allowBlank = false
 
 
   } else {
   } else {
     if (gridStartIndex === -1) {
     if (gridStartIndex === -1) {
       gridStartIndex = g
       gridStartIndex = g
     }
     }
     titleBillModel.caption = `明细${g - gridStartIndex + 1}`
     titleBillModel.caption = `明细${g - gridStartIndex + 1}`
-    titleBillModel.allowBlank = billGroup.isDeleteAble == true
-      ? 'T'
-      : 'F'
+    titleBillModel.allowBlank = billGroup.isDeleteAble
   }
   }
   if (!isObjEmpty(titleBillModel.caption)) {
   if (!isObjEmpty(titleBillModel.caption)) {
     formItems.push(
     formItems.push(