jk_B.axml 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. <view>
  2. <view class="{{popupCx}}">
  3. <view class="flex-box flex-v-ce form-top" catchTap="openSelect" data-num="3">
  4. <view class="label isBt">奖扣对象</view>
  5. <view class="flex-1 font-flex-word userList">
  6. <block a:for="{{users}}">
  7. <text style="font-size:32rpx">{{item.name}},</text>
  8. </block>
  9. </view>
  10. <image mode="scaleToFill" src="../../../image/right.png" class="rightImg" />
  11. </view>
  12. <view a:for="{{items}}" a:for-index="index" key="{{index}}">
  13. <view class="flex-box flex-v-ce" style="padding-right:28rpx;">
  14. <view class="title flex-1">第({{index+1}})条</view>
  15. <view style="font-size:24rpx" data-index="{{index}}" class="blue" a:if="{{items.length>1}}" catchTap="deleteArr">删除</view>
  16. </view>
  17. <view class="inputs">
  18. <view class="flex-box flex-v-ce li border-bottom" style="padding:26rpx 28rpx;" data-index="{{index}}">
  19. <view class="label">指定规则</view>
  20. <view class="flex-1"></view>
  21. <switch onChange="switchChange" disabled="{{ruleOnoff}}" checked="{{item.checked}}" data-index="{{index}}" color="#26A2FF"></switch>
  22. </view>
  23. <view class="flex-box flex-v-ce li" a:if="{{item.checked}}" data-ruleId="{{item.item_id}}" data-index="{{index}}"
  24. data-num="1" catchTap="openSelect">
  25. <view class="label isBt">选择规则</view>
  26. <view class="flex-1" a:if="{{item.selectRule}}">已选择1条</view>
  27. <view class="flex-1" a:else></view>
  28. <image mode="scaleToFill" src="../../../image/right.png" class="rightImg" />
  29. </view>
  30. <view class="flex-box flex-v-ce li" a:else data-ruleId="{{item.rule_id2}}" data-index="{{index}}" data-num="2" catchTap="openSelect">
  31. <view class="label isBt">选择分类</view>
  32. <view class="flex-1">{{item.rule_name}}</view>
  33. <image mode="scaleToFill" src="../../../image/right.png" class="rightImg" />
  34. </view>
  35. <view class="flex-box li" style="padding:15rpx 28rpx;" a:if="{{item.checked}}">
  36. <view class="label isBt" style="position: relative;top:8rpx;">积分</view>
  37. <text class="red" style="position: relative;top:8rpx;" a:if="{{item.isArrindex==true}}">+</text>
  38. <text class="green" a:else style="position: relative;top:8rpx;">-</text>
  39. <view class="flex-1">
  40. <view class="flex-box flex-v-ce">
  41. <view a:if="{{item.selectRule.range_type==1&&item.selectRule.min_point==item.selectRule.max_point}}" style="padding-left:10rpx; height:60rpx;line-height:60rpx;"
  42. class="flex-1">{{item.point}}</view>
  43. <input a:else maxlength="9" value="{{item.point}}" name="{{index}}" placeholder="0" type="number" onInput="bindKeyInput"
  44. data-index="{{index}}" class="flex-1" />
  45. <view class="picker-box" data-index="{{index}}" catchTap="bindPickerChange" a:if="{{item.selectRule.range_type!=1}}">
  46. <view class="{{item.isArrindex==true? 'picker-right':'picker-left'}} yuan"></view>
  47. <view class="flex-box flex-v-ce">
  48. <text class="red flex-1">奖</text>
  49. <text class="green flex-1">扣</text>
  50. </view>
  51. </view>
  52. </view>
  53. <view a:if="{{item.selectRule}}" style="padding:10rpx">
  54. <view style="color: #333; margin-bottom: 5px; margin-top: 10px;text-align:left">{{item.item_name}}</view>
  55. <view class="fontColorD input_text" a:if="{{item.selectRule.range_type==1&&item.selectRule.min_point==item.selectRule.max_point}}">固定:{{item.selectRule.min_point}} {{item.selectRule.pt_Obj[0].name}}</view>
  56. <view class="fontColorD input_text" a:else> 范围(可修改):{{item.selectRule.min_point}}至{{item.selectRule.max_point}}<text> {{item.selectRule.pt_Obj[0].name}}</text></view>
  57. </view>
  58. </view>
  59. </view>
  60. <view class="flex-box li" style="padding:15rpx 28rpx;" a:else>
  61. <view class="label isBt" style="position: relative;top:8rpx;">积分</view>
  62. <text class="red" style="position: relative;top:8rpx;" a:if="{{item.isArrindex2==true}}">+</text>
  63. <text class="green" a:else style="position: relative;top:8rpx;">-</text>
  64. <view class="flex-1">
  65. <view class="flex-box flex-v-ce">
  66. <input value="{{item.point2}}" maxlength="9" name="{{index}}" placeholder="0" type="number" onInput="bindKeyInput2" data-index="{{index}}" class="flex-1" />
  67. <view class="picker-box" data-index="{{index}}" catchTap="bindPickerChange2">
  68. <view class="{{item.isArrindex2==true? 'picker-right':'picker-left'}} yuan"></view>
  69. <view class="flex-box flex-v-ce">
  70. <text class="red flex-1">奖</text>
  71. <text class="green flex-1">扣</text>
  72. </view>
  73. </view>
  74. </view>
  75. </view>
  76. </view>
  77. <view class="flex-box flex-v-ce li" catchTap="openDate" data-index="{{index}}">
  78. <view class="label isBt">发生时间</view>
  79. <view class="flex-1">{{item.event_time}}</view>
  80. <image mode="scaleToFill" src="../../../image/right.png" class="rightImg" />
  81. </view>
  82. <view class="flex-box flex-v-ce li border-bottom" style="padding:26rpx 28rpx;" data-index="{{index}}">
  83. <view class="label">发放奖票<text class="text2" catchTap="showText">?</text></view>
  84. <view class="flex-1"></view>
  85. <switch onChange="switchChange2" disabled="{{item.revieweName? true:false}}" checked="{{item.ticket_count}}" data-index="{{index}}" color="#26A2FF"></switch>
  86. </view>
  87. <view class="flex-box flex-v-ce li" data-index="{{index}}" data-num="4" a:if="{{!isCreator}}" data-item="{{{id:item.reviewer_id,name:item.revieweName}}}"
  88. catchTap="openSelect">
  89. <view class="label">递交审批</view>
  90. <view class="flex-1">{{item.revieweName}}</view>
  91. <image mode="scaleToFill" src="../../../image/right.png" class="rightImg" />
  92. </view>
  93. <view class="li">
  94. <view class="flex-box-end"><view catchTap="deleteRemark" data-index="{{index}}" class="red" style="font-size:0.3rem">清空</view></view>
  95. <textarea maxlength="300" value="{{item.remark}}" onInput="bindTextAreaBlur" placeholder="请输入事件内容" data-index="{{index}}"></textarea>
  96. <image mode="scaleToFill" src="../../../image/addImg.png" data-index="{{index}}" class="addImg" catchTap="openImg" />
  97. </view>
  98. <view style="background:#fff;padding:0 28rpx;" a:if="{{item.files[0]}}" class="flex-box flex-v-ce">
  99. <view a:for="{{item.files}}" key="index" a:for-item="imgs" a:for-index="imgIndex" style="position:relative">
  100. <text class="detele" data-itemIndx="{{index}}" data-index="{{imgIndex}}" catchTap="deteleImg">×</text>
  101. <image mode="scaleToFill" class="showImg" src="{{imgs}}" data-index="{{imgIndex}}" data-item="{{item.files}}"
  102. catchTap="showImg" />
  103. </view>
  104. </view>
  105. </view>
  106. </view>
  107. <view class="add" catchTap="addArr">+ 再加一条</view>
  108. <view class="btn-area" style="margin-top:28rpx;">
  109. <button type="default" loading="{{disabled}}" class="defBtn" disabled="{{disabled}}" catchTap="formSubmit">提交</button>
  110. </view>
  111. </view>
  112. <view class="box" animation="{{animationInfo}}">
  113. <select-rule defaultId="{{defaultRuleId}}" isGzType="{{isGzType}}" onConfirm="onSelectItem" onClose="onClose" a:if="{{isShowType=='1'}}" />
  114. <select-type defaultId="{{defaultRuleId}}" isGzType="{{isGzType}}" onConfirm="onSelectType" onClose="onClose" a:if="{{isShowType=='2'}}" />
  115. <select-section-staff isLeadership="{{true}}" isBoss="{{true}}" selectUser="{{users}}" onClose="onClose" onConfirm="onSelectUser"
  116. a:if="{{isShowType=='3'}}" />
  117. <select-section-staff-two superior_list="{{superior_list}}" isLeadership="{{false}}" selectUser="{{reviewerObj}}" onClose="onClose"
  118. onConfirm="onSelectUser2" a:if="{{isShowType=='4'}}" />
  119. </view>
  120. <!-- 结果弹窗 -->
  121. <view class="windows" a:if="{{isResult}}">
  122. <view class="windows-box" style="margin-top:15%">
  123. <view class="windows-title">处理结果</view>
  124. <block a:if="{{!isShowError}}">
  125. <view class="windows-content" style="padding:20rpx;">
  126. <progress percent="{{percentage}}" show-info stroke-width="10" />
  127. <view class="resultsBox">
  128. <view class="flex-box-ce results">
  129. <view style="width:60rpx;padding:0;text-align:center"></view>
  130. <view class="flex-1">奖扣对象</view>
  131. <view class="flex-2">事件内容</view>
  132. <view class="flex-1">积分</view>
  133. <view class="flex-2">处理结果</view>
  134. </view>
  135. <view a:for="{{results}}" class="flex-box-ce results">
  136. <view style="width:60rpx;padding:0;text-align:center">{{results.length-index}}</view>
  137. <view class="flex-1">{{item.target}}</view>
  138. <view class="flex-2" style="padding: 0.1rem 0.1rem;">{{item.source_msg.remark}}</view>
  139. <view class="flex-1">
  140. {{ item.point>0? '+'+item.point:item.point }}
  141. <text>{{ item.source_msg.pt_id==3? 'B分':'A分' }}</text>
  142. </view>
  143. <view class="green flex-2" a:if="{{item.status==1}}">
  144. <text a:if="{{item.msg=='奖扣成功'}}" class="green">{{ item.msg }}</text>
  145. <text a:else class="blue">{{ item.msg }}</text>
  146. </view>
  147. <view class="red flex-2" a:else>{{item.msg}}</view>
  148. </view>
  149. </view>
  150. </view>
  151. <view class="windows-btn flex-box flex-v-ce" a:if="{{results.length==resultList.length}}">
  152. <button type="default" class="flex-1" data-index="1" catchTap="closeTc">确定并返回</button>
  153. <button type="default" class="flex-1" data-index="2" catchTap="closeTc">继续奖扣</button>
  154. </view>
  155. </block>
  156. <view a:else class="windows-content" style="padding:20rpx;">
  157. <view style="text-align: center;margin-bottom:20rpx" class="red">服务器繁忙,请稍后再试</view>
  158. <view class="windows-btn flex-box flex-v-ce">
  159. <button type="default" class="flex-1" data-index="2" catchTap="closeTc">确定并返回</button>
  160. </view>
  161. </view>
  162. </view>
  163. </view>
  164. <!-- 错误弹窗 -->
  165. <view class="windows" a:if="{{isErrorShow}}">
  166. <view class="windows-box" style="margin-top:15%">
  167. <view class="windows-title red">网络连接中断,请检查网络再次提交</view>
  168. <view class="windows-content" style="padding:20rpx;">
  169. <view class="resultsBox">
  170. <view class="flex-box-ce results">
  171. <view style="width:60rpx;padding:0;text-align:center"></view>
  172. <view class="flex-1">奖扣对象</view>
  173. <view class="flex-1">分类</view>
  174. <view class="flex-1">规则</view>
  175. <view class="flex-2">事件内容</view>
  176. <view class="flex-1">积分</view>
  177. </view>
  178. <view a:for="{{errorList}}" class="flex-box-ce results">
  179. <view style="width:60rpx;padding:0;text-align:center">{{index+1}}</view>
  180. <view class="flex-1">{{item.name}}</view>
  181. <view class="flex-1">{{ item.rule_name||'--' }}</view>
  182. <view class="flex-1">{{ item.item_name||'--' }}</view>
  183. <view class="flex-2">{{item.remark}}</view>
  184. <view class="flex-1">
  185. {{ item.point>0? '+'+item.point:item.point }}
  186. <text>{{ item.task.msg.pt_id==3? 'B分':'A分' }}</text>
  187. </view>
  188. </view>
  189. </view>
  190. </view>
  191. <view class="windows-btn flex-box flex-v-ce">
  192. <button type="default" class="flex-1" catchTap="closeTc">取消</button>
  193. <button type="default" class="flex-1" catchTap="resubmit">再次提交</button>
  194. </view>
  195. </view>
  196. </view>
  197. <!-- 弹窗 -->
  198. <view a:if="{{isBh}}" class="windows">
  199. <view class="windows-box2">
  200. <view class="windows-title2">温馨提示</view>
  201. <view class="windows-content2">选择递交审批人时,发放奖票将失效,由审批上级来发放奖票</view>
  202. <view class="windows-btn2 flex-box flex-v-ce">
  203. <view class="flex-1" catchTap="showText">我知道了</view>
  204. </view>
  205. </view>
  206. </view>
  207. </view>