index.blade.php 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290
  1. @extends('admin.public.base')
  2. @section('body_class')
  3. style="margin: 0 auto;width: 96%;padding: 30px 0px;"
  4. @endsection
  5. @section('content')
  6. <div class="page-header">
  7. @if(check_auth('admin/product/add'))
  8. <a href="{{url('admin/product/add')}}" class="btn btn-primary">新增</a>
  9. @endif
  10. </div>
  11. <form action="" method="get" class="form-horizontal form-line">
  12. <div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-12" style="margin-right: 2px;">
  13. <input type="text" class="form-control" name="product_code" value="{{request('product_code','')}}" placeholder="请输入产品编码查询" />
  14. </div>
  15. <div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-12" style="margin-right: 2px;">
  16. <input type="text" class="form-control" name="name" value="{{request('name','')}}" placeholder="请输入产品名称查询" />
  17. </div>
  18. <div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-12" style="margin-right: 2px;">
  19. <select name="status" class="form-control">
  20. <option value="" >产品状态</option>
  21. <option value="0" @if (request('status') === '0' ) selected="selected" @endif >已上架</option>
  22. <option value="1" @if (request('status') === '1' ) selected="selected" @endif >编辑中</option>
  23. <option value="2" @if (request('status') === '2' ) selected="selected" @endif >预上架</option>
  24. <option value="3" @if (request('status') === '3' ) selected="selected" @endif >已中止</option>
  25. <option value="4" @if (request('status') === '4' ) selected="selected" @endif >已结束</option>
  26. </select>
  27. </div>
  28. <div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-12" style="margin-right: 2px;">
  29. <select name="province_id" class="form-control" >
  30. <option value="" >选择省份</option>
  31. @foreach ($cityList as $group)
  32. <option value="{{$group['id']}}" @if ( $group['id'] == request('province_id',0) ) selected="selected" @endif >{{$group['name']}}</option>
  33. @endforeach
  34. </select>
  35. </div>
  36. <div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-12" style="margin-right: 2px;">
  37. <select name="city_ids[]" class="form-control selectpicker" data-max-options="20" data-live-search="true" data-live-search-placeholder="搜索城市" data-none-results-text="未搜索到 {0}" title="选择城市" multiple>
  38. @foreach ($cityList as $group)
  39. <optgroup label="{{$group['name']}}">
  40. @foreach ($group['city'] as $city)
  41. <option value="{{$city['id']}}" @if ( in_array($city['id'],request('city_ids',[])) ) selected="selected" @endif >{{$city['name']}}</option>
  42. @endforeach
  43. </optgroup>
  44. @endforeach
  45. </select>
  46. </div>
  47. <div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-12" style="margin-right: 2px;">
  48. <select name="business_id" class="form-control">
  49. <option value="" >店铺</option>
  50. @foreach ($businessList as $business)
  51. <option value="{{$business['id']}}" @if (request('business_id') === $business['id'] ) selected="selected" @endif >{{$business['name']}}</option>
  52. @endforeach
  53. </select>
  54. </div>
  55. <div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-2" style="margin-right: 2px;">
  56. <input type="date" class="form-control" name="start_time" value="{{request('start_time','')}}" placeholder="请输入创建时间查询" />
  57. </div>
  58. <input type="submit" class="btn btn-sm btn-primary" value="查询"/>
  59. <a href="{{url('admin/product/index')}}" class="btn btn-sm btn-default" >重置</a>
  60. </form>
  61. <div class="row">
  62. <div class="col-xs-12">
  63. <div class="table-responsive">
  64. <form action="{{url('admin/product/batch_status')}}" method="post" class="post-form" id="batch_form">
  65. <table class="table table-striped table-bordered table-hover">
  66. <thead>
  67. <tr>
  68. <th>产品编码</th>
  69. <th>产品名称</th>
  70. <th>规格</th>
  71. <th>产品价格</th>
  72. <th>剩余库存</th>
  73. <th>产品销量</th>
  74. <th>产品库存</th>
  75. <th>服务城市</th>
  76. <th>店铺</th>
  77. <th>排序</th>
  78. <th>限购数量</th>
  79. <th>产品状态</th>
  80. <th>修改时间</th>
  81. <th>操作</th>
  82. </tr>
  83. </thead>
  84. <tbody>
  85. @foreach ($list as $a)
  86. <tr>
  87. <td> <label ><input type="checkbox" name="product_list[]" class="check_items" value="{{$a['id']}}"> {{$a['product_code']}}</label> </td>
  88. <td> {{$a['name']}}</td>
  89. <td> {{$a['spec']}}</td>
  90. <td> ¥<del>{{$a['market_price']}}</del> ¥{{$a['price']}}</td>
  91. <td>{{$a['stock']}}</td>
  92. <td>{{$a['sales_total']}}</td>
  93. <td>{{$a['stock_total']}}</td>
  94. <td> {{$a['city_name']}}</td>
  95. <td> {{$a['business_name']}}</td>
  96. <td>
  97. @if(check_auth('admin/product/set_sort'))
  98. <input type="text" class="set_sort" id="{{$a['id']}}" value="{{$a['sort']}}">
  99. @else
  100. {{$a['sort']}}
  101. @endif
  102. </td>
  103. <td> {{$a['quota']}} </td>
  104. <td>
  105. @switch($a['status'])
  106. @case(1)
  107. 编辑中
  108. @break
  109. @case(0)
  110. 已上架
  111. @break
  112. @case(2)
  113. 预上架
  114. @break
  115. @case(3)
  116. 已中止
  117. @break
  118. @case(4)
  119. 已结束
  120. @break
  121. @default
  122. @break
  123. @endswitch
  124. </td>
  125. <td> {{date('Y/m/d H:i:s',$a['update_time'])}}</td>
  126. <td>
  127. @if(check_auth('admin/product/edit'))
  128. <a class="btn btn-sm btn-warning" href="{{url('admin/product/edit?'.http_build_query(['id'=>$a['id']]))}}" title="查看">
  129. @if ( $a['status'] && $a['status'] != 2 ) 编辑 @else 查看 @endif
  130. </a>
  131. @endif
  132. @if(check_auth('admin/product/copy'))
  133. <a class="btn btn-sm btn-primary" href="{{url('admin/product/copy?'.http_build_query(['id'=>$a['id']]))}}" title="复制">
  134. 复制
  135. </a>
  136. @endif
  137. @if(check_auth('admin/product/set_status'))
  138. @switch($a['status'])
  139. @case(0)
  140. <a class="delete btn btn-sm btn-danger" data-url="{{url('admin/product/set_status?'.http_build_query(['id'=>$a['id'],'status'=>'3']))}}">
  141. 下架
  142. </a>
  143. @break
  144. @case(1)
  145. @if ( $a['puton_time'] )
  146. <a class="delete btn btn-sm btn-success" data-url="{{url('admin/product/set_status?'.http_build_query(['id'=>$a['id'],'status'=>'2']))}}">
  147. 预上架
  148. </a>
  149. @else
  150. <a class="delete btn btn-sm btn-success" data-url="{{url('admin/product/set_status?'.http_build_query(['id'=>$a['id'],'status'=>'0']))}}">
  151. 上架
  152. </a>
  153. @endif
  154. @break
  155. @case(2)
  156. <a class="delete btn btn-sm btn-danger" data-url="{{url('admin/product/set_status?'.http_build_query(['id'=>$a['id'],'status'=>'3']))}}">
  157. 下架
  158. </a>
  159. @break
  160. @case(3)
  161. @if ( $a['puton_time'] )
  162. <a class="delete btn btn-sm btn-success" data-url="{{url('admin/product/set_status?'.http_build_query(['id'=>$a['id'],'status'=>'2']))}}">
  163. 预上架
  164. </a>
  165. @else
  166. <a class="delete btn btn-sm btn-success" data-url="{{url('admin/product/set_status?'.http_build_query(['id'=>$a['id'],'status'=>'0']))}}">
  167. 上架
  168. </a>
  169. @endif
  170. @break
  171. @case(4)
  172. @if ( $a['puton_time'] )
  173. <a class="delete btn btn-sm btn-success" data-url="{{url('admin/product/set_status?'.http_build_query(['id'=>$a['id'],'status'=>'2']))}}">
  174. 预上架
  175. </a>
  176. @else
  177. <a class="delete btn btn-sm btn-success" data-url="{{url('admin/product/set_status?'.http_build_query(['id'=>$a['id'],'status'=>'0']))}}">
  178. 上架
  179. </a>
  180. @endif
  181. @break
  182. @endswitch
  183. @endif
  184. @if(check_auth('admin/product/get_poster'))
  185. <a href="{{url('admin/product/get_poster?'.http_build_query(['id'=>$a['id']]))}}" class="btn btn-sm btn-success" >海报</a>
  186. @endif
  187. </td>
  188. </tr>
  189. @endforeach
  190. @if(check_auth('admin/product/batch_status'))
  191. <tr>
  192. <td><label ><input type="checkbox" class="check_all" > 全选</label></td>
  193. <td>
  194. <select name="status" class="form-control" required="" >
  195. <option value="">选择操作</option>
  196. <option value="3">下架</option>
  197. <option value="0">上架</option>
  198. </select>
  199. </td>
  200. <td colspan="20" >
  201. @csrf
  202. <input type="submit" class="btn btn-sm btn-primary" value="提交"/>
  203. </td>
  204. </tr>
  205. @endif
  206. <tr>
  207. <td colspan="20" class="page">{{$list->render()}}</td>
  208. </tr>
  209. <tr>
  210. <td colspan="20">总计 {{$list->total()}} 个产品</td>
  211. </tr>
  212. </tbody>
  213. </table>
  214. </form>
  215. </div>
  216. </div>
  217. </div>
  218. @endsection
  219. @section('javascript')
  220. <script>
  221. $(function(){
  222. $('.set_sort').change(function(){
  223. var id = $(this).attr('id');
  224. var sort = $(this).val();
  225. $.ajax({
  226. type: 'get',
  227. url: "{{url('admin/product/set_sort')}}",
  228. data: {id:id,sort:sort},
  229. dataType: 'json',
  230. success: function(data) {
  231. art_dialog(data);
  232. },
  233. error: function(data) {
  234. art.dialog({
  235. content: data.responseJSON.message,
  236. lock: true,
  237. ok: function() {
  238. }
  239. });
  240. }
  241. });
  242. })
  243. })
  244. </script>
  245. <script>
  246. $(function(){
  247. // 全选按钮
  248. $('.check_all').click(function(){
  249. // 获取选择状态
  250. var check_all = $(this).prop('checked');
  251. // 子项选择
  252. $('.check_items').prop('checked',check_all);
  253. })
  254. // 单选按钮
  255. $('.check_items').click(function(){
  256. // 默认全选
  257. var check_all = true;
  258. // 循环选项
  259. $.each($('.check_items'),function(k,v){
  260. // 选项状态
  261. var check_items = $(v).prop('checked');
  262. // 如果有一个未选。取消全选
  263. if( !check_items ) check_all = false;
  264. })
  265. // 修改
  266. $('.check_all').prop('checked',check_all);
  267. })
  268. // 站点传输
  269. $('#batch_form').submit(function(){
  270. // 默认未选择
  271. var checked = false;
  272. // 循环选项
  273. $.each($('.check_items'),function(k,v){
  274. // 选项状态
  275. var check_items = $(v).prop('checked');
  276. // 如果有一个选中,改为已选
  277. if( check_items ) checked = true;
  278. })
  279. // 未选择,提示
  280. if( !checked ) {
  281. alert('请至少选择一个产品');
  282. // 阻止事件
  283. return false;
  284. }
  285. });
  286. })
  287. </script>
  288. @endsection