index.wxml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. <!--pages/create-order/index.wxml-->
  2. <view class="sg-container">
  3. <view class="sg-tabs sg-flex sg-align-center sg-space-around">
  4. <block wx:for="{{tabs}}" wx:key="index">
  5. <view class="sg-tab sg-pad {{index == tabIndex ? 'sg-seleted' : 'sg-gray-color'}}" bindtap="switchTab"
  6. data-index="{{index}}">{{item}}</view>
  7. </block>
  8. </view>
  9. <view class="sg-order-box" wx:if="{{tabIndex == 0}}">
  10. <view class="sg-form">
  11. <view class="sg-form-item sg-pad sg-top-border">
  12. <view class="sg-label">项目名称</view>
  13. <input value="{{project ? project.name : ''}}" class="sg-input" disabled="true"></input>
  14. </view>
  15. <view class="sg-form-item sg-pad sg-top-border">
  16. <view class="sg-label">需求工点</view>
  17. <picker bindchange="onChange" value="{{pointIndex}}" range="{{work_points}}" range-key="name"
  18. data-name="pointIndex" class="sg-input">
  19. <view class="picker sg-gray-color">
  20. {{pointIndex >= 0 ? work_points[pointIndex].name : '选择所需的工点'}}
  21. </view>
  22. </picker>
  23. </view>
  24. <view class="sg-form-item sg-pad sg-top-border">
  25. <view class="sg-label">租赁设备</view>
  26. <input value="{{device_total + '台'}}" class="sg-input" disabled="{{true}}"></input>
  27. </view>
  28. <view class="sg-form-item sg-pad sg-top-border">
  29. <view class="sg-label">租赁总金额</view>
  30. <input value="{{'¥' + device_money}}" class="sg-input" disabled="{{true}}"></input>
  31. </view>
  32. <view class="sg-form-item sg-pad sg-top-border">
  33. <view class="sg-label">备注</view>
  34. <input value="{{remark}}" class="sg-input" bindinput="onChange" data-name="remark" placeholder="订单备注填写"></input>
  35. </view>
  36. </view>
  37. </view>
  38. <van-calendar show="{{ showDate }}" bind:close="switchShowDate" bind:confirm="confirmDate" data-show="{{false}}"
  39. type="range" class="sg-calendar" default-date="{{default_dates}}" allow-same-day="{{true}}"/>
  40. <view class="sg-device-box" wx:if="{{tabIndex == 1}}">
  41. <view class="sg-device-list sg-top-border">
  42. <block wx:if="{{devices.length <= 0}}">
  43. <view class="sg-center sg-pad">暂无设备</view>
  44. </block>
  45. <block wx:else>
  46. <!-- <view class="sg-item sg-flex sg-align-center sg-bottom-border" wx:for="{{devices}}" wx:key="index"
  47. bindtap="selectDevice" data-index="{{index}}">
  48. <view class=" sg-flex-grow sg-pad sg-flex-column">
  49. <view class="sg-left-top sg-flex sg-justify-center sg-space-between">
  50. <view class="sg-name">{{item.type_name}}-{{item.name}}-{{item.spec}}</view>
  51. <view class="sg-left-right sg-quantity-price sg-red-color" style="color:red">
  52. ¥<text>{{item.price*item.quantity}}</text>
  53. </view>
  54. </view>
  55. <view class="sg-left-bottom sg-gray-color sg-font-xs">
  56. 租赁方式:{{item.rent}}
  57. </view>
  58. <view class="sg-left-bottom sg-red-color sg-font-xs" style="color:red">
  59. 租赁单价:¥{{item.price}}
  60. </view>
  61. <view class="sg-left-bottom sg-gray-color sg-font-xs">
  62. 租赁数量:{{item.quantity}}
  63. </view>
  64. <view class="sg-left-bottom sg-gray-color sg-font-xs">{{item.start_date}}至{{item.end_date}}</view>
  65. </view>
  66. <view class="sg-right sg-pad sg-flex sg-align-center sg-icon" bindtap="selectDevice">
  67. <van-icon name="passed" wx:if="{{selectIndex == index}}" class="sg-index-color" />
  68. <van-icon name="circle" wx:else />
  69. </view>
  70. <view class="sg-right sg-red-bg sg-pad sg-flex sg-align-center" bindtap="deleteDevice" data-index="{{index}}">删除</view>
  71. </view> -->
  72. <view class="sg-item sg-pad sg-margin" wx:for="{{devices}}" wx:key="index" bindtap="selectDevice"
  73. data-index="{{index}}">
  74. <view class="sg-flex sg-align-center" style=" justify-content: space-between;">
  75. <view class="sg-title sg-bold">{{index+1}}. {{item.type_name}}-{{item.name}}-{{item.spec}}
  76. </view>
  77. <view class="sg-right sg-pad sg-flex sg-align-center sg-icon" bindtap="selectDevice">
  78. <van-icon name="passed" wx:if="{{selectIndex == index}}" class="sg-index-color" />
  79. <van-icon name="circle" wx:else />
  80. </view>
  81. </view>
  82. <view class="sg-content sg-gray-color sg-font-small">
  83. <view class="sg-margin-tb-sm sg-flex sg-align-center sg-space-between">
  84. <view>租赁单价:¥{{item.price}}</view>
  85. <view>数量:{{item.quantity}}</view>
  86. </view>
  87. <view class="sg-margin-tb-sm">租赁方式:{{item.rent_type ? item.rent_type.name : ''}}</view>
  88. <view class="sg-margin-tb-sm">租赁时间:<text
  89. class="sg-rent-date sg-border">{{item.start_date ? (item.start_date + '至' + item.end_date) : ''}}</text>
  90. </view>
  91. </view>
  92. <view class="sg-footer sg-flex sg-align-center sg-space-between sg-margin-top-sm">
  93. <view class="sg-font-lg sg-bold">总金额:¥{{item.price * item.quantity}}</view>
  94. <!-- <view class="sg-btn sg-index-bg sg-pad-sm sg-white" hidden="{{!changePrice}}" bindtap="switchShowPrice"
  95. data-item="{{item}}" data-show="{{true}}">修改价格</view> -->
  96. </view>
  97. </view>
  98. </block>
  99. </view>
  100. </view>
  101. <van-dialog show="{{ showAdd }}" use-slot title="{{dialog_type == 'create' ? '添加设备' : '修改设备'}}" show-cancel-button
  102. bind:confirm="addDevice" z-index="1" data-show="{{false}}">
  103. <view class="sg-add-device-box sg-pad sg-font-small">
  104. <view class="sg-form-item sg-pad-tb sg-top-border">
  105. <view class="sg-label">设备类型</view>
  106. <picker bindchange="onChange" value="{{typeIndex}}" range="{{device_types}}" range-key="name"
  107. data-name="typeIndex" class="sg-input">
  108. <view class="picker sg-gray-color">
  109. {{typeIndex >= 0 ? device_types[typeIndex].name : '选择设备类型'}}
  110. </view>
  111. </picker>
  112. </view>
  113. <view class="sg-form-item sg-pad-tb sg-top-border">
  114. <view class="sg-label">设备名称</view>
  115. <block wx:if="{{customName}}">
  116. <input value="{{customNameVal}}" class="sg-input" bindinput="onChange" data-name="customNameVal"
  117. placeholder="请输入设备名称"></input>
  118. </block>
  119. <block wx:else>
  120. <picker bindchange="onChange" value="{{nameIndex}}" range="{{device_types[typeIndex].names}}" range-key="name"
  121. data-name="nameIndex" class="sg-input">
  122. <view class="picker sg-gray-color">
  123. {{nameIndex >= 0 ? device_types[typeIndex].names[nameIndex].name : '选择设备名称'}}
  124. </view>
  125. </picker>
  126. </block>
  127. <view class="sg-custom">
  128. <van-checkbox value="{{ customName }}" bind:change="onChange" data-name="customName">项目自填</van-checkbox>
  129. </view>
  130. </view>
  131. <view class="sg-form-item sg-pad-tb sg-top-border">
  132. <view class="sg-label">规格型号</view>
  133. <block wx:if="{{customSpec}}">
  134. <input value="{{customSpecVal}}" class="sg-input" bindinput="onChange" data-name="customSpecVal"
  135. placeholder="请输入规格型号"></input>
  136. </block>
  137. <block wx:else>
  138. <picker bindchange="onChange" value="{{specIndex}}" range="{{device_types[typeIndex].names[nameIndex].specs}}"
  139. range-key="name" data-name="specIndex" class="sg-input">
  140. <view class="picker sg-gray-color">
  141. {{specIndex >= 0 ? device_types[typeIndex].names[nameIndex].specs[specIndex].name : '选择规格型号'}}
  142. </view>
  143. </picker>
  144. </block>
  145. <view class="sg-custom">
  146. <van-checkbox value="{{ customSpec }}" bind:change="onChange" data-name="customSpec">项目自填</van-checkbox>
  147. </view>
  148. </view>
  149. <view class="sg-form-item sg-pad-tb sg-top-border">
  150. <view class="sg-label">租赁方式</view>
  151. <block wx:if="{{customRent}}">
  152. <input value="{{customRentVal}}" class="sg-input" bindinput="onChange" data-name="customRentVal"
  153. placeholder="请输入租赁方式"></input>
  154. </block>
  155. <block wx:else>
  156. <picker bindchange="onChange" value="{{rentIndex}}" range="{{rent_types}}" range-key="name"
  157. data-name="rentIndex" class="sg-input">
  158. <view class="picker sg-gray-color">
  159. {{rentIndex >= 0 ? rent_types[rentIndex].name : '选择租赁方式'}}
  160. </view>
  161. </picker>
  162. </block>
  163. <view class="sg-custom">
  164. <van-checkbox value="{{ customRent }}" bind:change="onChange" data-name="customRent">项目自填</van-checkbox>
  165. </view>
  166. </view>
  167. <view class="sg-form-item sg-pad-tb sg-top-border">
  168. <view class="sg-label">租赁时间</view>
  169. <input value="{{ start_date ? start_date + '至' + end_date : '' }}" placeholder="请选择租赁时间" class="sg-input"
  170. disabled="true" bindtap="switchShowDate" data-show="{{true}}"></input>
  171. </view>
  172. <view class="sg-form-item sg-pad-tb sg-top-border">
  173. <view class="sg-label">设备数量</view>
  174. <input value="{{device_quantity}}" class="sg-input" bindinput="onChange" data-name="device_quantity"
  175. placeholder="请输入设备数量" type="number"></input>
  176. </view>
  177. <view class="sg-form-item sg-pad-tb sg-top-border">
  178. <view class="sg-label">设备单价</view>
  179. <input value="{{device_price}}" class="sg-input" bindinput="onChange" data-name="device_price"
  180. placeholder="请输入设备单价" type="number"></input>
  181. </view>
  182. </view>
  183. </van-dialog>
  184. <block wx:if="{{tabIndex == 1}}">
  185. <view class="sg-submit-box sg-pad sg-fix-bottom sg-flex sg-align-center sg-center" wx:if="{{selectIndex == -1}}"
  186. bindtap="switchShowAdd" data-show="true">
  187. <van-icon name="plus" /><text>立即添加</text>
  188. </view>
  189. <view class="sg-submit-box sg-fix-bottom sg-flex sg-align-center sg-center" wx:else>
  190. <view class="sg-action sg-draft sg-pad sg-border-right sg-index-bg sg-white" bindtap="editDevice">编辑</view>
  191. <view class="sg-action sg-pad sg-white sg-red-bg" bindtap="deleteDevice">删除</view>
  192. </view>
  193. </block>
  194. <view class="sg-submit-box sg-fix-bottom sg-flex sg-align-center sg-center" wx:if="{{tabIndex == 0}}">
  195. <view class="sg-action sg-draft sg-pad sg-border-right" bindtap="submit" data-type='draft'>暂存</view>
  196. <view class="sg-action sg-pad sg-index-bg sg-white" bindtap="submit" data-type='save'>提交</view>
  197. </view>
  198. </view>