tousujianyi.wxml 3.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <view class="container4">
  2. <!-- 返回按钮 -->
  3. <view class="custom-nav">
  4. <view bindtap="goBack">
  5. <image src="/static_file/backcion.png" mode="aspectFit" class="back-icon"></image>
  6. </view>
  7. <view class="nav-title">投诉建议</view>
  8. </view>
  9. <!-- 第一个卡片:分类、联系人、联系电话 -->
  10. <view class="bill-card first-card">
  11. <view class="bill-row">
  12. <text>分类</text>
  13. <view class="radio-group" wx:if="{{!isPreviewMode}}">
  14. <radio-group bindchange="radioChange">
  15. <label class="radio">
  16. <radio value="投诉" checked="{{category === '投诉'}}" />投诉
  17. </label>
  18. <label class="radio">
  19. <radio value="建议" checked="{{category === '建议'}}" />建议
  20. </label>
  21. </radio-group>
  22. </view>
  23. <view wx:else class="preview-text">{{category || '投诉'}}</view>
  24. </view>
  25. <view class="divider"></view>
  26. <view class="bill-row">
  27. <text>联系人<text class="required" wx:if="{{!isPreviewMode}}">*</text></text>
  28. <input class="input-right input-text" placeholder="请输入" placeholder-class="placeholder-style" bindinput="inputContact" value="{{contact}}" data-field="contact" disabled="{{isPreviewMode}}" />
  29. </view>
  30. <view class="divider"></view>
  31. <view class="bill-row">
  32. <text>联系电话<text class="required" wx:if="{{!isPreviewMode}}">*</text></text>
  33. <input class="input-right input-text" placeholder="请输入" placeholder-class="placeholder-style" bindinput="inputPhone" value="{{phone}}" type="number" maxlength="11" data-field="phone" disabled="{{isPreviewMode}}" />
  34. </view>
  35. </view>
  36. <!-- 第三个卡片:内容说明 -->
  37. <view class="bill-card">
  38. <view class="card-title">意见说明<text class="required" wx:if="{{!isPreviewMode}}">*</text></view>
  39. <view class="solid-divider"></view>
  40. <textarea class="input-text" placeholder="请输入描述说明..." placeholder-class="placeholder-style" bindinput="inputDescription" value="{{description}}" data-field="description" disabled="{{isPreviewMode}}"></textarea>
  41. <view class="upload-section">
  42. <view class="upload-btn-container solid-border" wx:if="{{!isPreviewMode}}">
  43. <view class="upload-btn" bindtap="chooseImage">
  44. <view class="plus-icon">+</view>
  45. </view>
  46. </view>
  47. <view class="image-preview" wx:if="{{imageList.length > 0}}">
  48. <block wx:for="{{imageList}}" wx:key="index">
  49. <view class="image-item">
  50. <image src="{{item.tempFilePath || item}}" mode="aspectFill" bindtap="previewImage" data-index="{{index}}"></image>
  51. <view class="delete-icon" catchtap="deleteImage" data-index="{{index}}" wx:if="{{!isPreviewMode}}">×</view>
  52. </view>
  53. </block>
  54. </view>
  55. </view>
  56. <view class="upload-tip" wx:if="{{!isPreviewMode}}">
  57. 最多可上传10张图片,单张不超过10M
  58. </view>
  59. </view>
  60. <!-- 回复信息卡片,仅在预览模式下显示 -->
  61. <view class="bill-card" wx:if="{{isPreviewMode && replyContent}}">
  62. <view class="bill-rownew">
  63. <text>回复时间</text>
  64. <view class="reply-timenew">{{replyTime}}</view>
  65. </view>
  66. <view class="solid-divider"></view>
  67. <view class="card-title">回复说明</view>
  68. <view class="solid-divider"></view>
  69. <view class="reply-content">{{replyContent}}</view>
  70. </view>
  71. <!-- 提交按钮,仅在非预览模式下显示 -->
  72. <button class="submit-btn" bindtap="submitForm" wx:if="{{!isPreviewMode}}" disabled="{{isSubmitting}}">
  73. {{isSubmitting ? '提交中...' : '提交'}}
  74. </button>
  75. <!-- 的canvas用于图片压缩 -->
  76. <canvas type="2d" id="compressCanvas" style="position:fixed; left:-9999px; width:300px; height:300px;"></canvas>
  77. </view>