show.blade.php 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. @extends('layouts.app')
  2. @section('title', '详情')
  3. @section('content')
  4. @include('shared._messages')
  5. @include('shared._error')
  6. <div class="row" id="list">
  7. <div class="col-12">
  8. <div class="card ">
  9. <div class="card-body">
  10. <div class="text-center">
  11. 发布人:{{ $requirement->creator->name }}
  12. </div>
  13. <div class="text-center">
  14. 分数:{{ $requirement->score??'-' }}
  15. </div>
  16. <div class="text-center">
  17. 状态:{{ $requirement->status }}
  18. </div>
  19. </div>
  20. </div>
  21. </div>
  22. <div class="col-12">
  23. <div class="card">
  24. <div class="card-body text-center" style="width: 1200px;margin: 0 auto;">
  25. <h1>
  26. {{ $requirement->title }}
  27. </h1>
  28. <div class="mt-4 mb-4">
  29. {{ $requirement->content }}
  30. </div>
  31. </div>
  32. </div>
  33. </div>
  34. @if($requirement->status==='待接收')
  35. <div class="col-12 text-center mt-4">
  36. <form action="{{ route('requirements.edit',$requirement->id) }}" method="get"
  37. style="display: inline-block;"
  38. onsubmit="return">
  39. <button type="submit" class="btn btn-warning btn-sm">
  40. <i class="far fa-trash-alt"></i> 编辑
  41. </button>
  42. </form>
  43. </div>
  44. <div class="col-12">
  45. <div class="text-center m-4">
  46. <form action="{{ route('requirements.begin', $requirement->id) }}" method="post"
  47. style="display: inline-block;"
  48. onsubmit="return confirm('您确定要开始吗?');">
  49. {{ csrf_field() }}
  50. <div class="form-group">
  51. <template v-for="(item,i) in items">
  52. <div class="row">
  53. <div class="col-auto mb-4">
  54. <select class="form-control" :name="'users['+i+'][name]'"
  55. required {{ $requirement->workers->count()>0 ? 'disabled' :''}}>
  56. <option value="" hidden disabled selected>请选择用户
  57. </option>
  58. @foreach ($workers as $value)
  59. <option
  60. value="{{ $value->id }}">
  61. {{ $value->name }}
  62. </option>
  63. @endforeach
  64. </select>
  65. </div>
  66. <div v-if="i!==0" class="col-1 mb-4 mt-1">
  67. <button class="btn btn-sm btn-primary float-right" type="button"
  68. @click="items.splice(i,1)">-
  69. </button>
  70. </div>
  71. </div>
  72. </template>
  73. <button class="btn btn-sm btn-primary float-right" type="button"
  74. @click="addItem">添加
  75. </button>
  76. </div>
  77. <button type="submit" class="btn btn-success btn-sm">
  78. <i class="far fa-trash-alt"></i> 开始开发
  79. </button>
  80. </form>
  81. </div>
  82. </div>
  83. @elseif($requirement->status==='待审核')
  84. <div class="m-4">
  85. <form action="{{ route('requirements.status',$requirement->id) }}" method="post"
  86. style="display: inline-block;"
  87. onsubmit="return confirm('您确定要驳回需求么?');">
  88. {{ csrf_field() }}
  89. <input type="text" hidden name="status" value="已驳回">
  90. <button type="submit" class="btn btn-danger"> 驳回需求</button>
  91. </form>
  92. <form action="{{ route('requirements.status',$requirement->id) }}" method="post"
  93. style="display: inline-block;"
  94. onsubmit>
  95. {{ csrf_field() }}
  96. <input type="text" hidden name="status" value="待接收">
  97. <!-- Button trigger modal -->
  98. <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModal">
  99. 通过审核
  100. </button>
  101. <!-- Modal -->
  102. <div class="modal fade" id="exampleModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
  103. <div class="modal-dialog">
  104. <div class="modal-content">
  105. <div class="modal-header">
  106. <h5 class="modal-title" id="exampleModalLabel">输入分数</h5>
  107. <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  108. <span aria-hidden="true">&times;</span>
  109. </button>
  110. </div>
  111. <div class="modal-body">
  112. <div class="form-group">
  113. <label for="exampleInputEmail1">分数</label>
  114. <input type="number" name="score" class="form-control">
  115. </div>
  116. </div>
  117. <div class="modal-footer">
  118. <button type="button" class="btn btn-secondary" data-dismiss="modal">取消</button>
  119. <button type="submit" class="btn btn-success">通过审核</button>
  120. </div>
  121. </div>
  122. </div>
  123. </div>
  124. </form>
  125. </div>
  126. @elseif($requirement->status==='开发中')
  127. <div class="col-12">
  128. <div class="text-center m-4">
  129. <form action="{{ route('requirements.finish',$requirement->id) }}" method="post"
  130. style="display: inline-block;"
  131. onsubmit="return confirm('您确定要完成开发吗?');">
  132. {{ csrf_field() }}
  133. <div class="form-group">
  134. @foreach($requirement->workers as $worker)
  135. <div class="row">
  136. <div class="col-5 mb-4">
  137. <input class="form-control" disabled value="{{ $worker->name }}"></input>
  138. <input class="form-control" hidden
  139. :name="'users['+ {{ $loop->index }} +'][name]'"
  140. value="{{ $worker->id }}"></input>
  141. </div>
  142. <div class="col-5 mb-4">
  143. <input class="form-control" type="number"
  144. :name="'users['+ {{ $loop->index }} +'][score]'"
  145. placeholder="请填写分数"
  146. required></input>
  147. </div>
  148. </div>
  149. @endforeach
  150. </div>
  151. <div class="well well-sm">
  152. <button type="submit" class="btn btn-primary"> 完成开发</button>
  153. </div>
  154. </form>
  155. </div>
  156. </div>
  157. @elseif($requirement->status==='待验收')
  158. <div class="col-12 text-center">
  159. @foreach($requirement->workers as $worker)
  160. <div class="row">
  161. <div class="col-5 m-4">姓名: {{ $worker->name }}</div>
  162. <div class="col-5 m-4">分数:{{ $worker->pivot->score }}</div>
  163. </div>
  164. @endforeach
  165. </div>
  166. <div class="m-4">
  167. <form action="{{ route('requirements.review',$requirement->id) }}" method="post"
  168. style="display: inline-block;"
  169. onsubmit="return confirm('您确定要完成验收吗?');">
  170. {{ csrf_field() }}
  171. <input type="number" name="flag" hidden :value="reviewFlag">
  172. <button @click="reviewFlag=1" type="submit" class="btn btn-primary"> 验收通过</button>
  173. <button @click="reviewFlag=0" type="submit" class="btn btn-danger"> 验收未通过</button>
  174. </form>
  175. </div>
  176. @elseif($requirement->status==='验收通过')
  177. <div class="col-12 text-center">
  178. @foreach($requirement->workers as $worker)
  179. <div class="row">
  180. <div class="col-5 m-4">姓名: {{ $worker->name }}</div>
  181. <div class="col-5 m-4">分数:{{ $worker->pivot->score }}</div>
  182. </div>
  183. @endforeach
  184. </div>
  185. @elseif($requirement->status==='验收未通过')
  186. <div class="col-12 text-center">
  187. @foreach($requirement->workers as $worker)
  188. <div class="row">
  189. <div class="col-5 m-4">姓名: {{ $worker->name }}</div>
  190. <div class="col-5 m-4">分数:{{ $worker->pivot->score }}</div>
  191. </div>
  192. @endforeach
  193. </div>
  194. <div class="m-4">
  195. <form action="{{ route('requirements.againReview',$requirement->id) }}" method="post"
  196. style="display: inline-block;"
  197. onsubmit="return confirm('您确定要再次申请验收流程吗?');">
  198. {{ csrf_field() }}
  199. <button type="submit" class="btn btn-primary"> 再次申请验收流程</button>
  200. </form>
  201. </div>
  202. @endif
  203. @endsection
  204. @section('lastScript')
  205. <script>
  206. let vue = new Vue({
  207. el: "#list",
  208. data: {
  209. items: [{}],
  210. reviewFlag: 0,
  211. @if($requirement->id)
  212. workers: {!! $workers !!},
  213. @endif
  214. },
  215. methods: {
  216. addItem() {
  217. this.items.push({});
  218. }
  219. }
  220. })
  221. </script>
  222. @endsection