dk-form.wxml 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <wxs src='../../../utils/wxmlUtil.wxs' module="wxmlUtil"></wxs>
  2. <view class="dk-card-outer-class">
  3. <!-- 单据信息 -->
  4. <view class="dk-card-class" wx:for="{{cardList}}" wx:for-item="card" data-item="{{card}}">
  5. <view wx:for="{{contentObj[card]}}" wx:for-item="item" data-item="{{item}}" wx:key="index">
  6. <!--文本框-->
  7. <van-field wx:if="{{item.type=='str' && !item.hide}}" label-class="{{item.required?'red-label':'nomal-label' }}" data-key="{{item.code}}" data-item="{{item}}" data-index="{{index}}" data-card="{{card}}" value="{{ form[item.code]}}" input-align="left" label="{{item.title?item.title:$t[item.code]}}" placeholder="{{wxmlUtil.setPlaceholder($t,item.title?item.title:item.code)}}" autosize border="{{ false }}" readonly="{{!!item.readonly}}" input-class="dk-cell-value-class" maxlength="{{item.maxlength?item.maxlength:50}}" right-icon="{{item.rightIcon}}" bind:change="changeField" errorMessage="{{item.errMsg}}">
  8. </van-field>
  9. <!--单选下拉-->
  10. <van-field wx:if="{{item.type=='drop' && !item.hide}}" label-class="{{item.required?'red-label':'nomal-label' }}" data-name="{{item.name}}" data-key="{{item.code}}" data-item="{{item}}" data-index="{{index}}" data-card="{{card}}" value="{{ form[item.name]}}" input-align="left" label="{{item.title?item.title:$t[item.code]}}" placeholder="{{wxmlUtil.setPlaceholder($t,item.title?item.title:item.code)}}" is-link catchtap="open" autosize border="{{ false }}" readonly="{{true}}" input-class="dk-cell-value-class" data-type='{{item.dropType}}' errorMessage="{{item.errMsg}}">
  11. </van-field>
  12. <!--多选下拉-->
  13. <van-field wx:if="{{item.type=='mutidrop' && !item.hide}}" label-class="{{item.required?'red-label':'nomal-label' }}" data-name="{{item.name}}" data-key="{{item.code}}" data-item="{{item}}" data-index="{{index}}" data-card="{{card}}" value="{{ form[item.name + 's']}}" input-align="left" label="{{item.title?item.title:$t[item.code]}}" placeholder="{{wxmlUtil.setPlaceholder($t,item.title?item.title:item.code)}}" is-link catchtap="open" autosize border="{{ false }}" readonly="{{true}}" input-class="dk-cell-value-class" data-type='{{item.dropType}}' errorMessage="{{item.errMsg}}">
  14. </van-field>
  15. <!--选单-->
  16. <van-field wx:if="{{item.type=='choose'}}" label-class="{{item.required?'red-label':'nomal-label' }}" data-name="{{item.name}}" data-key="{{item.code}}" data-item="{{item}}" data-index="{{index}}" data-card="{{card.name}}" value="{{ form[item.name]}}" input-align="left" label="{{item.title?item.title:$t[item.code]}}" placeholder="{{item.placeholder ? item.placeholder : wxmlUtil.setPlaceholder($t, item.title?item.title:item.code)}}" is-link catchtap="open" autosize border="{{ false }}" readonly="{{true}}" input-class="dk-cell-value-class" data-type='{{item.dropType}}' errorMessage="{{item.errMsg}}">
  17. </van-field>
  18. <!--选择框-->
  19. <van-field wx:if="{{item.type=='checkbox' && !item.hide}}" input-width="200rpx" input-class="dk-cell-value-class" label-class="nomal-label" input-align="left" label="{{item.title?item.title:$t[item.code]}}" autosize border="{{ false }}" readonly="{{true}}" errorMessage="{{item.errMsg}}">
  20. <view slot="end" style="text-align: right;padding-left: 10rpx;" data-item="{{item}}" data-index="{{index}}" data-value="{{form[item.code]}}" data-key="{{item.code}}" catchtap="onChange">
  21. <van-checkbox shape="round" value="{{form[item.code]}}" />
  22. </view>
  23. </van-field>
  24. <!--开关-->
  25. <van-field wx:if="{{item.type=='switch'}}" input-width="200rpx" input-class="dk-cell-value-class" label-class="nomal-label" input-align="right" label="{{item.title?item.title:$t[item.code]}}" autosize border="{{ false }}" readonly="{{true}}" errorMessage="{{item.errMsg}}">
  26. <view slot="inputbefor" style="text-align: left;padding-top: 5rpx;">
  27. <van-switch size="20px" checked="{{ form[item.code]}}" bind:change="onChange" active-color="#1B365D" data-item="{{item}}" data-index="{{index}}" data-card="{{card}}" data-value="{{form[item.code]}}" data-key="{{item.code}}" />
  28. </view>
  29. </van-field>
  30. <!--日期-->
  31. <van-field wx:if="{{item.type=='date'}}" label-class="{{item.required?'red-label':'nomal-label' }}" is-link value="{{ form[item.code]}}" label="{{item.title?item.title:$t[item.code]}}" placeholder="{{wxmlUtil.setPlaceholder($t,item.title?item.title:item.code)}}" data-item="{{item}}" data-key="{{item.code}}" data-index="{{index}}" data-card="{{card.name}}" errorMessage="{{item.errMsg}}" border="{{ false }}" readonly="{{true}}" input-class="dk-cell-value-class" catchtap="openDatePop">
  32. </van-field>
  33. <!--tab标签-->
  34. <van-field wx:if="{{item.type=='tabs' && !item.hide}}" input-width="200rpx" input-class="dk-cell-value-class" label-class="nomal-label" input-align="left" label="{{item.title?item.title:$t[item.code]}}" autosize border="{{ false }}" readonly="{{true}}" errorMessage="{{item.errMsg}}">
  35. <view slot="inputbefor" style="text-align: left;padding-left: 10rpx;" data-item="{{item}}" data-index="{{index}}" data-card="{{card}}" data-value="{{form[item.code]}}" data-key="{{item.code}}" catchtap="changeTabs">
  36. <dk-tabs-custom model:value="{{form[item.code]}}" bind:change="changeTabs" data-key="{{item.code}}" list="{{item.tagList}}" />
  37. </view>
  38. </van-field>
  39. <!--客户地址-->
  40. <van-field wx:if="{{item.type=='address' && !item.hide}}" input-width="200rpx" input-class="dk-cell-value-class" label-class="{{item.required?'red-label':'nomal-label' }}" input-align="left" data-key="address" type="textarea" value="{{ wxmlUtil.addressToIndexOf(form.address.address) }}" label="{{item.title?item.title:$t[item.code]}}" placeholder="{{wxmlUtil.setPlaceholder($t,item.title?item.title:item.code)}}" autosize border="{{ false }}" right-icon="location" data-type='address' catchtap="onClickWxchartAddress" readonly="{{true}}" data-item="{{item}}" data-index="{{index}}" data-card="{{card}}" errorMessage="{{item.errMsg}}">
  41. </van-field>
  42. <!--联系电话-->
  43. <dk-number-phone-input wx:if="{{item.type=='phone' && !item.hide}}" data-key="{{item.code}}" data-item="{{item}}" data-index="{{index}}" data-card="{{card}}" labelClass="{{item.required?'red-label':'nomal-label' }}" rightIcon="phone" model:value="{{ form[item.code]}}" bind:changeField="changePhone" bind:changeFieldblur="changePhoneblur" errorMessage="{{item.errMsg}}" id="{{item.code}}" label="{{item.title?item.title:$t[item.code]}}" placeholder="{{wxmlUtil.setPlaceholder($t,item.code)}}"></dk-number-phone-input>
  44. <!--数字类-->
  45. <dk-number-input wx:if="{{item.type=='number' && !item.hide}}" sign="{{(item.sign || item.sign == '')?item.sign:'¥'}}" digits="{{(item.digits || item.digits == 0)?item.digits:2}}" fontSize="14" left="30rpx" data-key="{{item.code}}" data-item="{{item}}" data-index="{{index}}" data-card="{{card}}" center="left" placeholder="{{wxmlUtil.setPlaceholder($t,item.title?item.title:item.code)}}" errorMessage="{{item.errMsg}}" titleValue="{{item.title?item.title:$t[item.code]}}" inputColor="#CAA977" titleFontWeight="{{item.required?'bold':'normal'}}" titleColor="{{item.required?'#E4002B':'#95A8CB'}}" inputValue="{{form[item.code]}}" bind:triggerBindValue="changeNumberField"></dk-number-input>
  46. <!--备注-->
  47. <van-field wx:if="{{item.type=='textarea' && !item.hide}}" type="textarea" label-class="{{item.required?'red-label':'nomal-label' }}" data-key="{{item.code}}" data-item="{{item}}" data-index="{{index}}" data-card="{{card}}" value="{{ form[item.code]}}" input-align="left" label="{{item.title?item.title:$t[item.code]}}" placeholder="{{wxmlUtil.setPlaceholder($t,item.title?item.title:item.code)}}" autosize border="{{ false }}" readonly="{{!!item.readonly}}" input-class="dk-cell-value-class" maxlength="{{item.maxlength?item.maxlength:500}}" right-icon="{{item.rightIcon}}" bind:change="changeField" errorMessage="{{item.errMsg}}">
  48. </van-field>
  49. <!--附件-->
  50. <view style="display:flex;width:100%;margin: 1vw; padding-top: 20rpx;" wx:if="{{item.type=='uploader'}}">
  51. <view style="width: 168rpx; flex:1;color: #95A8CB;font-size: 28rpx;padding-left: 27rpx;">附件</view>
  52. <view style="width: calc(100% - 168rpx);text-align: left;">
  53. <van-uploader max-count="5" accept="image" style="margin-left: 4%;border-radius: 15rpx;" preview-size="160rpx;" file-list="{{ fileList }}" bind:delete="deleteImg" bind:after-read="afterRead" multiple="true" imageFit="aspectFit" />
  54. <view style="margin-left: 27rpx;color: #C8C9CC;font-size: 12px;">
  55. 图片最多上传5张
  56. </view>
  57. </view>
  58. </view>
  59. </view>
  60. </view>
  61. </view>
  62. <!--单选-->
  63. <dk-single-dropdown-item show="{{show}}" typeName='{{dropType}}' bind:commit='chooseData' bind:muticlose='muticlose'></dk-single-dropdown-item>
  64. <!--多选-->
  65. <dk-muti-dropdown-item show="{{mutishow}}" typeName='{{dropType}}' bind:commit='chooseData' bind:muticlose='muticlose'></dk-muti-dropdown-item>
  66. <!--日期-->
  67. <van-popup show="{{ showDate }}" custom-style="border-radius:30rpx 30rpx 0 0;" position="bottom" bind:close="cancelDatePop">
  68. <van-datetime-picker type="date" bind:confirm="chooseDate" bind:cancel="cancelDatePop" loading="{true}" />
  69. </van-popup>