No Description

ordercreate.blade.php 39KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889
  1. @extends('admin/master')
  2. @section('content')
  3. <body>
  4. @if(count($errors) > 0)
  5. <div class="Huialert Huialert-info" id="error">
  6. @foreach($errors->all() as $error)
  7. <li>{{$error}}</li>
  8. @endforeach
  9. </div>
  10. @endif
  11. <style type="text/css">
  12. #good_sku{
  13. position: absolute;
  14. z-index: 9;
  15. background: #ffffff;
  16. box-shadow: 1px 1px 1px 1px #ccc;
  17. width: calc(100% - 30px);
  18. }
  19. #good_sku li{
  20. font-size: 12px;
  21. line-height: 24px;
  22. cursor: pointer;
  23. padding: 5px 10px;
  24. }
  25. #good_sku li:hover{
  26. background: #eaeaea;
  27. }
  28. </style>
  29. <div class="page-container">
  30. <form id='order-form' action="/admin/order/store" method="post" class="form form-horizontal" enctype="multipart/form-data" onkeypress="return event.keyCode != 13;">
  31. <input type="hidden" name="_token" value="{{ csrf_token() }}" />
  32. <input type="hidden" name="status" value="0" />
  33. <input type='hidden' name='last_url' value="{{$last_url}}"/>
  34. <div class="row cl">
  35. <label class="form-label col-xs-4 col-sm-2">
  36. <font color='red'>* </font>买家姓名:</label>
  37. <div class="formControls col-xs-6 col-sm-6">
  38. <input type="text" class="input-text" value="{{old('customerName')}}" placeholder="请输入名称" name="customerName">
  39. </div>
  40. </div>
  41. <div class="row cl">
  42. <label class="form-label col-xs-4 col-sm-2">
  43. <font color='red'>* </font>买家手机号:</label>
  44. <div class="formControls col-xs-6 col-sm-6">
  45. <input type="text" class="input-text" value="{{old('buyer_phone')}}" placeholder="" onkeyup="getVip()" name="buyer_phone">
  46. </div>
  47. </div>
  48. <div class="row cl" style="display: none">
  49. <label class="form-label col-xs-4 col-sm-2">
  50. <font color='red'>* </font>是否使用优惠券:</label>
  51. <div class="formControls col-xs-6 col-sm-6">
  52. <input type="radio" name="use_coupon" value="0" checked>
  53. <label for="status-0" style="margin-right: 27px;">否</label>
  54. <input type="radio" name="use_coupon" value="1" @if(old('use_coupon')==='1') checked @endif>
  55. <label for="status-1">是</label>
  56. </div>
  57. </div>
  58. <div class="row cl">
  59. <label class="form-label col-xs-4 col-sm-2">
  60. <font color='red'>* </font>收件人姓名:</label>
  61. <div class="formControls col-xs-6 col-sm-6">
  62. <input type="text" class="input-text" value="{{old('receiverName')}}" placeholder="" name="receiverName">
  63. </div>
  64. </div>
  65. <div class="row cl">
  66. <label class="form-label col-xs-4 col-sm-2">
  67. <font color='red'>* </font>收件人手机号:</label>
  68. <div class="formControls col-xs-6 col-sm-6">
  69. <input type="text" class="input-text" value="{{old('receiverMobile')}}" placeholder="" onkeyup="getAddress()" name="receiverMobile">
  70. </div>
  71. </div>
  72. <div id='fanTime_div' class="row cl">
  73. <label class="form-label col-xs-4 col-sm-2">
  74. <font color='red'>* </font>加粉时间:</label>
  75. <div class="formControls col-xs-6 col-sm-6">
  76. <input id="stime" type="text" onfocus="WdatePicker({ dateFmt:'yyyy-MM-dd' })" autocomplete="off" class="input-text Wdate" style="width:22%;text-align:center;" name="fanTime" value="{{old('fanTime')}}">
  77. </div>
  78. </div>
  79. <div class="row cl">
  80. <label class="form-label col-xs-4 col-sm-2">
  81. <font color='red'>* </font>省/直辖市:</label>
  82. <div class="formControls col-xs-6 col-sm-6">
  83. <input type="text" class="input-text" value="{{old('receiverState')}}" placeholder="" name="receiverState">
  84. </div>
  85. </div>
  86. <div class="row cl">
  87. <label class="form-label col-xs-4 col-sm-2">
  88. <font color='red'>* </font>市:</label>
  89. <div class="formControls col-xs-6 col-sm-6">
  90. <input type="text" class="input-text" value="{{old('receiverCity')}}" placeholder="" name="receiverCity">
  91. </div>
  92. </div>
  93. <!--div class="row cl">
  94. <label class="form-label col-xs-4 col-sm-2">
  95. 区:</label>
  96. <div class="formControls col-xs-6 col-sm-6">
  97. <input type="text" class="input-text" value="{{old('receiverDistrict')}}" placeholder="" name="receiverDistrict">
  98. </div>
  99. </div>
  100. <div class="row cl">
  101. <label class="form-label col-xs-4 col-sm-2">
  102. 街道:</label>
  103. <div class="formControls col-xs-6 col-sm-6">
  104. <input type="text" class="input-text" value="{{old('receiverStreet')}}" placeholder="" name="receiverStreet">
  105. </div>
  106. </div-->
  107. <div class="row cl">
  108. <label class="form-label col-xs-4 col-sm-2">
  109. <font color='red'>* </font>详细地址:</label>
  110. <div class="formControls col-xs-6 col-sm-6">
  111. <input type="text" class="input-text" value="{{old('receiverAddress')}}" placeholder="" name="receiverAddress">
  112. </div>
  113. </div>
  114. @if($self_role !='分销销售' && $self_role != '分销管理员' )
  115. <div class="row cl">
  116. <label class="form-label col-xs-4 col-sm-2">
  117. <font color='red'>* </font>商品信息:</label>
  118. <div class="formControls col-xs-6 col-sm-6">
  119. <textarea class="textarea" placeholder="填写商品详细信息,A或B仓必填" name="goods_note">{{old('goods_note')}}</textarea>
  120. </div>
  121. </div>
  122. @endif
  123. <div class="row cl">
  124. <label class="form-label col-xs-4 col-sm-2">
  125. <font color='red'>* </font>预发货时间:</label>
  126. <div class="formControls col-xs-6 col-sm-6">
  127. <input id="delivery" type="text" onfocus="WdatePicker({ dateFmt:'yyyy-MM-dd' })" autocomplete="off" class="input-text Wdate" style="width:22%;text-align:center;" name="delivery_date" value="{{old('delivery_date')}}"> <font color='red'> *默认今天 </font>
  128. </div>
  129. </div>
  130. @if($self_role !='分销销售' && $self_role != '分销管理员' )
  131. <div class="row cl">
  132. <label class="form-label col-xs-4 col-sm-2">
  133. 物流单号:</label>
  134. <div class="formControls col-xs-6 col-sm-6">
  135. <input type="text" class="input-text" value="{{old('logistics_id')}}" placeholder="" name="logistics_id">
  136. </div>
  137. </div>
  138. @endif
  139. <div class="row cl">
  140. <label class="form-label col-xs-4 col-sm-2">
  141. <font color='red'>* </font>发货仓库:</label>
  142. <div class="formControls col-xs-6 col-sm-6">
  143. <span class="select-box">
  144. <select size="1" name="warehouse" id='warehouse'>
  145. @if($self_role == '超级管理员' || $self_role == '售后管理员')
  146. <option value="0" @if(old('warehouse')=='0') selected @endif>- 请选择 -</option>
  147. <option value="1" @if(old('warehouse')=='1') selected @endif>A仓库</option>
  148. <option value="2" @if(old('warehouse')=='2') selected @endif>B仓库</option>
  149. <option value="3" @if(old('warehouse')=='3') selected @endif>C仓库</option>
  150. @else
  151. <option value="3" selected >C仓库</option>
  152. @endif
  153. </select>
  154. </span>
  155. </div>
  156. </div>
  157. @if($self_role !='销售' && $self_role != '分销销售')
  158. <div class="row cl">
  159. <label class="form-label col-xs-4 col-sm-2">
  160. 成本:</label>
  161. <div class="formControls col-xs-6 col-sm-6">
  162. <input type="text" class="input-text" value="{{old('cost')}}" placeholder="" name="cost">
  163. </div>
  164. </div>
  165. @endif
  166. <div class="row cl">
  167. <label class="form-label col-xs-4 col-sm-2"><font color='red'>* </font>搜索选择商品:</label>
  168. <div class="formControls col-xs-6 col-sm-6">
  169. <input type='text' class="input-text" autocomplete="off" name='goods_name' placeholder="输入关键词搜索商品,C仓必须选择" value="{{old('goods_name')}}"/>
  170. <ul id="good_sku"></ul>
  171. </div>
  172. </div><br>
  173. <div class="row cl">
  174. <label class="form-label col-xs-4 col-sm-2">
  175. <font color='red'>* </font>已选择商品:</label>
  176. <div id='goods_o' name='goods_o_con' class="formControls col-xs-6 col-sm-6">
  177. </div>
  178. </div><br>
  179. <div class="row cl">
  180. <label class="form-label col-xs-4 col-sm-2">
  181. <font color='red'> </font>选择会员每月赠品</label>
  182. <div class="formControls col-xs-6 col-sm-6">
  183. <span class="select-box">
  184. <select size="1" name="m_gift_id" id='m_gift'>
  185. <option value="0" @if(old('m_gift_id')=='0') selected @endif>- 请选择 -</option>
  186. @foreach($m_gift as $item)
  187. <option value="{{$item['id']}}" @if(old('m_gift_id')==$item['id']) selected @endif>{{$item['goods_name']}}【{{$item['propsName']}} ¥{{$item['price']}}】</option>
  188. @endforeach
  189. </select>
  190. </span>
  191. </div>
  192. </div>
  193. <div class="row cl">
  194. <label class="form-label col-xs-4 col-sm-2">
  195. <font color='red'> </font>选择生日赠品</label>
  196. <div class="formControls col-xs-6 col-sm-6">
  197. <span class="select-box">
  198. <select size="1" name="b_gift_id" id='b_gift'>
  199. <option value="0" @if(old('b_gift_id')=='0') selected @endif>- 请选择 -</option>
  200. @foreach($b_gift as $item)
  201. <option value="{{$item['id']}}" @if(old('b_gift_id')==$item['id']) selected @endif>{{$item['goods_name']}}【{{$item['propsName']}} ¥{{$item['price']}}】</option>
  202. @endforeach
  203. </select>
  204. </span>
  205. </div>
  206. </div>
  207. <div class="row cl">
  208. <label class="form-label col-xs-4 col-sm-2">
  209. 应收金额:</label>
  210. <div class="formControls col-xs-6 col-sm-6">
  211. <span id='should_amount_show'>{{old('should_amount')}}</span>
  212. <input id='should_amount' type="hidden" class="input-text" value="{{old('should_amount')}}" placeholder="" name="should_amount">
  213. </div>
  214. </div>
  215. <div class="row cl">
  216. <label class="form-label col-xs-4 col-sm-2">
  217. <font color='red'>* </font>实收金额:</label>
  218. <div class="formControls col-xs-6 col-sm-6">
  219. <input id='receivedAmount' type="text" class="input-text" value="{{old('receivedAmount')}}" placeholder="" name="receivedAmount">
  220. </div>
  221. </div>
  222. <div class="row cl">
  223. <label class="form-label col-xs-4 col-sm-2">
  224. <font color='red'>* </font>支付方式:</label>
  225. <div class="formControls col-xs-6 col-sm-6">
  226. <input type="radio" name="payment_type" value="1" @if(old('payment_type')==='1') checked @else checked @endif>
  227. <label for="status-1" style="margin-right: 27px;">微信支付</label>
  228. <!--input type="radio" name="payment_type" value="2" @if(old('payment_type')==='2') checked @endif>
  229. <label for="status-0">付款码支付</label-->
  230. <input type="radio" name="payment_type" value="3" @if(old('payment_type')==='3') checked @endif>
  231. <label for="status-0" style="margin-right: 27px;">个体户支付</label>
  232. @if($self_role != '分销销售' && $self_role != '分销管理员')
  233. <input type="radio" name="payment_type" value="4" @if(old('payment_type')==='4') checked @endif>
  234. <label for="status-0">充值卡支付</label>
  235. @endif
  236. </div>
  237. </div>
  238. <!--div class="row cl" style="display: none" id='deposit_div'>
  239. <label class="form-label col-xs-4 col-sm-2">
  240. <font color='red'> </font>充值卡号:</label>
  241. <div class="formControls col-xs-6 col-sm-6">
  242. <input id='deposit_phone' type="text" class="input-text" onkeyup="getBalance()" value="{{old('deposit_phone')}}" placeholder="" name="deposit_phone">
  243. <font color='red' id='vip_pay'></font>
  244. </div>
  245. </div-->
  246. <div class="row cl" style="display: none" id='deposit_div'>
  247. <label class="form-label col-xs-4 col-sm-2">
  248. <font color='red'> </font>充值卡号:</label>
  249. <div class="formControls col-xs-6 col-sm-6">
  250. <input id='deposit_phone_i' type="text" class="input-text" value="{{old('deposit_phone')}}" placeholder="*默认收货人手机号" disabled name="deposit_phone_i">
  251. <input id='deposit_phone' type="hidden" class="input-text" value="{{old('deposit_phone')}}" placeholder="" name="deposit_phone">
  252. <font color='red' id='vip_pay'></font>
  253. </div>
  254. </div>
  255. <div class="row cl">
  256. <label class="form-label col-xs-4 col-sm-2">
  257. <font color='red'>* </font>是否退补单:</label>
  258. <div class="formControls col-xs-6 col-sm-6">
  259. <input type="radio" name="is_refund" value="0" @if(old('is_refund')==='0') checked @else checked @endif>
  260. <label for="status-1" style="margin-right: 27px;">否</label>
  261. <input type="radio" name="is_refund" value="1" @if(old('is_refund')==='1') checked @endif>
  262. <label for="status-0">是</label>
  263. </div>
  264. </div>
  265. <div class="row cl">
  266. <label class="form-label col-xs-4 col-sm-2">
  267. 应该退补差价:</label>
  268. <div class="formControls col-xs-6 col-sm-6">
  269. <input type="text" class="input-text" value="{{old('refund_price')}}" placeholder="" name="refund_price">
  270. </div>
  271. </div>
  272. <div class="row cl">
  273. <label class="form-label col-xs-4 col-sm-2">
  274. <font color='red'>* </font>下单时间:</label>
  275. <div class="formControls col-xs-6 col-sm-6">
  276. <input id="createTime" type="text" autocomplete="off" class="input-text" style="width:22%;text-align:center;" name="createTime" value="{{$createTime}}" disabled> <font color='red'> *默认当前时间 </font>
  277. </div>
  278. </div>
  279. <div class="row cl">
  280. <label class="form-label col-xs-4 col-sm-2">
  281. 买家备注:</label>
  282. <div class="formControls col-xs-6 col-sm-6">
  283. <textarea class="textarea" placeholder="填写买家备注..." name="buyerMemo">{{old('buyerMemo')}}</textarea>
  284. </div>
  285. </div>
  286. <div class="row cl">
  287. <label class="form-label col-xs-4 col-sm-2">
  288. 卖家备注:</label>
  289. <div class="formControls col-xs-6 col-sm-6">
  290. <textarea class="textarea" placeholder="填写卖家备注..." name="sellerMemo">{{old('sellerMemo')}}</textarea>
  291. </div>
  292. </div>
  293. @if(0)
  294. @if($self_role !='销售' && $self_role != '分销销售' )
  295. <div class="row cl">
  296. <label class="form-label col-xs-4 col-sm-2">
  297. 选择销售员(不选默认当前用户):</label>
  298. <div class="formControls col-xs-6 col-sm-6">
  299. <span class="select-box">
  300. <select size="1" name="team" id='team'>
  301. <option value="0" @if(old('team')=='') selected @endif>选择团队</option>
  302. @foreach($teamlist as $v)
  303. <option value="{{$v['id']}}" @if(old('team')==$v['id']) selected @endif>{{$v['name']}}</option>
  304. @endforeach
  305. </select>
  306. <select id='admins' size="1" name="admin_id">
  307. <option value="0" @if(old('admin_id')=='') selected @endif>-- 选择销售 --</option>
  308. @foreach($adminlist as $v)
  309. <option value="{{$v['id']}}" @if(old('admin_id')==$v['id']) selected @endif>{{$v['realname']}}</option>
  310. @endforeach
  311. </select>
  312. &nbsp;&nbsp;
  313. </span>
  314. </div>
  315. </div>
  316. @endif
  317. @endif
  318. <div class="row cl">
  319. <div class="col-9 col-offset-2">
  320. <button class="btn btn-primary radius" type='button' onclick="to_submit()" value="&nbsp;&nbsp;保存&nbsp;&nbsp;">&nbsp;&nbsp;保存&nbsp;&nbsp;</button>&nbsp;
  321. <button class="btn btn-primary radius" type='button' onclick="to_verify()" value="&nbsp;&nbsp;保存并提审&nbsp;&nbsp;">&nbsp;&nbsp;保存并提审&nbsp;&nbsp;</button>&nbsp;
  322. <button class="btn btn-default" type="reset" onclick="return_index();">&nbsp;&nbsp;返回&nbsp;&nbsp;</button>&nbsp;
  323. </div>
  324. </div>
  325. </form>
  326. </div>
  327. <!--_footer 作为公共模版分离出去-->
  328. <script type="text/javascript" src="/admin/lib/jquery/1.9.1/jquery.min.js"></script>
  329. <script type="text/javascript" src="/admin/lib/layer/2.4/layer.js"></script>
  330. <script type="text/javascript" src="/admin/static/h-ui/js/H-ui.min.js"></script>
  331. <script type="text/javascript" src="/admin/static/h-ui.admin/js/H-ui.admin.js"></script>
  332. <!--/_footer 作为公共模版分离出去-->
  333. <!--请在下方写此页面业务相关的脚本-->
  334. <script type="text/javascript" src="/admin/lib/My97DatePicker/4.8/WdatePicker.js"></script>
  335. <script type="text/javascript">
  336. $(function(){
  337. setTimeout("$('#error').hide()",3000);
  338. var dtime = today();
  339. $('#createTime').val(dtime);
  340. var tdate = today_date();
  341. $('#delivery').val(tdate);
  342. $('#category').change(function(){
  343. category = $('#category').val();
  344. if(category==''){
  345. return false;
  346. }
  347. $.ajax({
  348. 'url':'/admin/order/categoods/'+category,
  349. 'type': 'get',
  350. 'dataType':'json',
  351. 'success' : function(data){
  352. str = '<option value=\'0\'>-- 选择商品 --<\/option>';
  353. $.each(data, function(i, va){
  354. var props = va.props_name;
  355. if(props != ''){
  356. props = '【' + props + '】';
  357. }
  358. var price = va.price;
  359. if(price > 0){
  360. price = '【¥' + price + '元】';
  361. }else{
  362. price = '';
  363. }
  364. str += '<option value="'+va.id+'">' + va.goods_name + props + price +'<\/option>';
  365. })
  366. $('#goods').html(str);
  367. }
  368. });
  369. })
  370. $('#team').change(function(){
  371. team = $('#team').val();
  372. if(team==''){
  373. return false;
  374. }
  375. $.ajax({
  376. 'url':'/admin/order/teamAdmins/'+team,
  377. 'type': 'get',
  378. 'dataType':'json',
  379. 'success' : function(data){
  380. str = '<option value=\'0\'>-- 选择销售 --<\/option>';
  381. $.each(data, function(i, va){
  382. str += '<option value="'+va.id+'">' + va.realname +'<\/option>';
  383. })
  384. $('#admins').html(str);
  385. }
  386. });
  387. })
  388. $('input[type=radio][name=payment_type]').change(function () {
  389. var payment_type = $("input[type='radio'][name='payment_type']:checked").val();
  390. if(payment_type==4){
  391. var phone = $("input[name=receiverMobile]").val();
  392. $("#deposit_phone").val(phone);
  393. $("#deposit_phone_i").val(phone);
  394. $("#deposit_div").show();
  395. //获取充值卡余额
  396. var reg = /^1\d{10}$/
  397. if(!reg.test(phone)){
  398. return false;
  399. }
  400. $.ajax({
  401. 'url':'/admin/cust/getBalance/'+phone,
  402. 'type': 'get',
  403. 'success' : function(data){
  404. var str = '【充值卡余额为:'+data+'元】';
  405. $("#vip_pay").html(str);
  406. }
  407. });
  408. }else{
  409. $("#deposit_div").hide();
  410. }
  411. })
  412. });
  413. function getBalance(){
  414. var phone = $("input[name=deposit_phone]").val();
  415. var reg = /^1\d{10}$/
  416. if(!reg.test(phone)){
  417. $("#vip_pay").html('【充值卡余额为:0元】');
  418. return false;
  419. }
  420. //获取充值卡余额
  421. $.ajax({
  422. 'url':'/admin/cust/getBalance/'+phone,
  423. 'type': 'get',
  424. 'success' : function(data){
  425. var str = '【充值卡余额为:'+data+'元】';
  426. $("#vip_pay").html(str);
  427. }
  428. });
  429. }
  430. /*返回*/
  431. function return_index(){
  432. location.href='/admin/order/index';
  433. }
  434. function add_goods(goods_id,sku_id,name,props_name,price,is_weigh){
  435. var gnum = $("#gnum"+sku_id).val();
  436. var weigh_unit = '数量';
  437. var weigh_note = '';
  438. var weigh_unit_name = '';
  439. if(is_weigh == 1){
  440. weigh_unit = '重量';
  441. weigh_unit_name = '(斤)';
  442. weigh_note = '<font color=\'red\'> (称重商品,至少0.5斤) <\/font>';
  443. }
  444. if(gnum){
  445. var n = gnum;
  446. n = parseFloat(n)+1
  447. $("#gnum"+sku_id).val(n);
  448. }
  449. else{
  450. var str = "<div>"+name+' 【 规格:'+props_name+' 价格:¥'+price+" 】&nbsp; <input type='hidden' name='skus[]' value="+sku_id+" \/><font style=\"font-weight: bold;\">"+weigh_unit+" <\/font><button style='width:14px;' type='button' onclick=\"cut_num("+sku_id+","+ price + ","+ is_weigh +")\">-<\/button><div style=\"display:inline-block\" id='gnum_con"+ sku_id +"' ><input style='width:40px;' id='gnum"+ sku_id +"' class='gnums' onkeyup='sync_money();' price="+price+" is_weigh="+is_weigh+" type=\'text\' name=\'gnum[]\' value=1 \/><\/div><button style='width:14px;' type='button' onclick=\"add_num("+sku_id+","+ price + ","+ is_weigh +")\">+<\/button>"+weigh_unit_name+" &nbsp;&nbsp;<button type='button' onclick='del_sku(this, "+sku_id+","+ price + ")'> 移除<\/button> &nbsp;&nbsp;"+weigh_note+"<\/div>";
  451. $("#goods_o").append(str);
  452. sessionStorage.setItem('goods_o_con',$("#goods_o").html());
  453. }
  454. sync_money()
  455. document.getElementById('good_sku').style.display='none'
  456. return false;
  457. }
  458. function add_num(sku_id, price, is_weigh){
  459. var gnum = $("#gnum"+sku_id).val();
  460. var n = gnum;
  461. n = parseFloat(n)+1
  462. $("#gnum"+sku_id).val(n);
  463. $("#gnum_con" + sku_id).html("<input style='width:40px;' id='gnum"+ sku_id +"' class='gnums' onkeyup='sync_money();' price="+price+" is_weigh="+is_weigh+" type=\'text\' name=\'gnum[]\' value=" + n + " \/>")
  464. sessionStorage.setItem('goods_o_con',$("#goods_o").html());
  465. sync_money()
  466. return false;
  467. }
  468. function cut_num(sku_id, price, is_weigh){
  469. var gnum = $("#gnum"+sku_id).val();
  470. var n = gnum;
  471. if(n == 1){
  472. return false;
  473. }
  474. n = parseFloat(n)-1;
  475. $("#gnum"+sku_id).val(n);
  476. $("#gnum_con" + sku_id).html("<input style='width:40px;' id='gnum"+ sku_id +"' class='gnums' onkeyup='sync_money();' price="+price+" is_weigh="+is_weigh+" type=\'text\' name=\'gnum[]\' value=" + n + " \/>")
  477. sessionStorage.setItem('goods_o_con',$("#goods_o").html());
  478. sync_money()
  479. return false;
  480. }
  481. function del_sku(obj, sku_id, price){
  482. //console.log(obj)
  483. var gnum = $("#gnum"+sku_id).val();
  484. $(obj).parent().remove();
  485. sessionStorage.setItem('goods_o_con',$("#goods_o").html());
  486. sync_money();
  487. }
  488. function sync_money(){
  489. var gnums = new Array();
  490. var total = 0;
  491. $('.gnums').each(function(key, value){
  492. var gnum = $(this).val();
  493. var price = $(this).attr('price');
  494. total = total + parseFloat(price) * parseFloat(gnum);
  495. });
  496. if(total>0){
  497. $("#should_amount").val(total);
  498. $("#should_amount_show").html(total);
  499. }else{
  500. $("#should_amount").val('');
  501. $("#should_amount_show").html('');
  502. }
  503. return false;
  504. }
  505. function today(){
  506. var today=new Date();
  507. var h=today.getFullYear();
  508. var m=today.getMonth()+1;
  509. var d=today.getDate();
  510. var hh=today.getHours();
  511. var mm=today.getMinutes();
  512. var ss=today.getSeconds();
  513. m= m<10?"0"+m:m;
  514. d= d<10?"0"+d:d;
  515. hh = hh < 10 ? "0" + hh:hh;
  516. mm = mm < 10 ? "0" + mm:mm;
  517. ss = ss < 10 ? "0" + ss:ss;
  518. return h+"-"+m+"-"+d+" "+hh+":"+mm+":"+ss;
  519. }
  520. function today_date(){
  521. var today=new Date();
  522. var h=today.getFullYear();
  523. var m=today.getMonth()+1;
  524. var d=today.getDate();
  525. var hh=today.getHours();
  526. var mm=today.getMinutes();
  527. var ss=today.getSeconds();
  528. m= m<10?"0"+m:m;
  529. d= d<10?"0"+d:d;
  530. hh = hh < 10 ? "0" + hh:hh;
  531. mm = mm < 10 ? "0" + mm:mm;
  532. ss = ss < 10 ? "0" + ss:ss;
  533. return h+"-"+m+"-"+d;
  534. }
  535. function getAddress(){
  536. var phone = $('input[name=receiverMobile]').val();
  537. var reg = /^1\d{10}$/
  538. if(reg.test(phone)){
  539. $.ajax({
  540. 'url': '/admin/order/getAddress?phone='+phone,
  541. 'type': 'get',
  542. 'dateType': 'json',
  543. success:function(data){
  544. if(data != '0'){
  545. data = eval("("+data+")");
  546. $("input[name=receiverState]").val(data.receiverState);
  547. $("input[name=receiverCity]").val(data.receiverCity);
  548. //$("input[name=receiverDistrict]").val(data.receiverDistrict);
  549. //$("input[name=receiverStreet]").val(data.receiverStreet);
  550. $("input[name=receiverAddress]").val(data.receiverAddress);
  551. $("input[name=fanTime]").val(data.fanTime);
  552. $("#fanTime_div").hide();
  553. }
  554. else{
  555. $("#fanTime_div").show();
  556. }
  557. }
  558. })
  559. }
  560. }
  561. function getGoods(){
  562. var name = $('input[name=goods_name]').val();
  563. if(!name){
  564. return false;
  565. }
  566. $.ajax({
  567. 'url': '/admin/goods/searchSkus?name='+name,
  568. 'type': 'get',
  569. 'dateType': 'json',
  570. success:function(data){
  571. if(data != '0'){
  572. data = eval("("+data+")");
  573. }
  574. }
  575. })
  576. }
  577. function to_verify(){
  578. if(!form_verify()){
  579. return false;
  580. }
  581. $("input[name=status]").val('1');
  582. var warehouse = $("#warehouse").val();
  583. if(warehouse == 3){
  584. var if_good = $('.gnums');
  585. if(!if_good.length){
  586. layer.msg('仓库C必须选择商品!',{icon:2,time:1500});
  587. return false;
  588. }
  589. }
  590. $(".btn").attr("disabled",true);
  591. //console.log('disabled')
  592. $("#order-form").submit();
  593. return true;
  594. }
  595. function to_submit(){
  596. if(!form_verify()){
  597. return false;
  598. }
  599. $("input[name=status]").val('0');
  600. //console.log('disabled1')
  601. var warehouse = $("#warehouse").val();
  602. if(warehouse == 3){
  603. var if_good = $('.gnums');
  604. if(!if_good.length){
  605. layer.msg('仓库C必须选择商品!',{icon:2,time:1500});
  606. return false;
  607. }
  608. }
  609. $(".btn").attr("disabled",true);
  610. $("#order-form").submit();
  611. return true;
  612. }
  613. $("#goods_o").append(sessionStorage.getItem('goods_o_con'));
  614. $('input[name=goods_name]').on('keyup focus', function(){
  615. var name = $('input[name=goods_name]').val();
  616. if(!name){
  617. return false;
  618. }
  619. $.ajax({
  620. 'url': '/admin/goods/searchSkus?name='+name,
  621. 'type': 'get',
  622. 'dateType': 'json',
  623. success:function(data){
  624. if(data != '0'){
  625. data = eval("("+data+")");
  626. var str = '';
  627. for (var i = 0, l = data.length; i < l; i++) {
  628. var item = data[i];
  629. var weigh_t = '';
  630. if(item.is_weigh==1){
  631. weigh_t = '【按半斤称重】';
  632. }
  633. if(item.is_white == 0 && item.quantity <= 0){
  634. weigh_t += '<font color="red">【库存不足】<\/font>';
  635. str += '<li>'+ item.name+'【 规格:'+item.propsName+'&nbsp;&nbsp; 价格:¥'+item.price +' 】'+weigh_t+'<\/li>'
  636. }
  637. else{
  638. str += '<li onclick=\'add_goods('+item.goods_id+','+item.sku_id+',"'+item.name+'","'+item.propsName+'",'+item.price+','+item.is_weigh+');\'>'+ item.name+'【 规格:'+item.propsName+'&nbsp;&nbsp; 价格:¥'+item.price +' 】'+weigh_t+'<\/li>'
  639. }
  640. // '<p onclick=\'add_goods('+item.goods_id+','+item.sku_id+',"'+item.name+'","'+item.propsName+'",'+item.price+');\'>'+ item.name+' '+item.propsName+' ¥'+item.price +'<\/p>';
  641. }
  642. document.getElementById('good_sku').innerHTML = str;
  643. document.getElementById('good_sku').style.display='block'
  644. }
  645. }
  646. })
  647. });
  648. $("body").on('click', function(){
  649. $('input[name=goods_name]').on('click',function(e){
  650. e.stopPropagation();
  651. });
  652. document.getElementById('good_sku').style.display='none'
  653. })
  654. function weigh_verify(){
  655. var if_no = 0;
  656. $('.gnums').each(function(key, value){
  657. var gnum = $(this).val();
  658. gnum = parseFloat(gnum);
  659. var is_weigh = $(this).attr('is_weigh');
  660. if(gnum<0.5){
  661. if_no = 1;
  662. return;
  663. }
  664. if(is_weigh == 0 && gnum%1 != 0){
  665. if_no = 2;
  666. return;
  667. }
  668. if(is_weigh == 1 && gnum%0.5 != 0){
  669. if_no = 3;
  670. return;
  671. }
  672. });
  673. return if_no;
  674. }
  675. function form_verify(){
  676. var customerName = $("input[name=customerName]").val();
  677. if(!customerName){
  678. layer.msg('买家姓名不能为空!',{icon:2,time:1500});
  679. return false;
  680. }
  681. var receiverName = $("input[name=receiverName]").val();
  682. if(!receiverName){
  683. layer.msg('收件人姓名不能为空!',{icon:2,time:1500});
  684. return false;
  685. }
  686. var receiverMobile = $("input[name=receiverMobile]").val();
  687. if(!receiverMobile){
  688. layer.msg('收件人手机号不能为空!',{icon:2,time:1500});
  689. return false;
  690. }
  691. var preg = /^1[3456789]\d{9}$/;
  692. if(!preg.test(receiverMobile)){
  693. layer.msg('收件人手机号格式有误!',{icon:2,time:1500});
  694. return false;
  695. }
  696. var fanTime = $("input[name=fanTime]").val();
  697. if(!fanTime){
  698. layer.msg('加粉时间不能为空!',{icon:2,time:1500});
  699. return false;
  700. }
  701. var tdate = today_date();
  702. if(fanTime>tdate){
  703. layer.msg('加粉时间不能超过今天!',{icon:2,time:1500});
  704. return false;
  705. }
  706. var receiverState = $("input[name=receiverState]").val();
  707. if(!receiverState){
  708. layer.msg('省份不能为空!',{icon:2,time:1500});
  709. return false;
  710. }
  711. var receiverCity = $("input[name=receiverCity]").val();
  712. if(!receiverCity){
  713. layer.msg('城市不能为空!',{icon:2,time:1500});
  714. return false;
  715. }
  716. var receiverAddress = $("input[name=receiverAddress]").val();
  717. if(!receiverAddress){
  718. layer.msg('详细地址不能为空!',{icon:2,time:1500});
  719. return false;
  720. }
  721. var delivery_date = $("input[name=delivery_date]").val();
  722. if(!delivery_date){
  723. layer.msg('预发货时间不能为空!',{icon:2,time:1500});
  724. return false;
  725. }
  726. var warehouse = $("#warehouse").val();
  727. if(warehouse<1){
  728. layer.msg('仓库必须选择!',{icon:2,time:1500});
  729. return false;
  730. }
  731. var receivedAmount = $("input[name=receivedAmount]").val();
  732. if(!receivedAmount){
  733. layer.msg('实付金额不能为空!',{icon:2,time:1500});
  734. return false;
  735. }
  736. if(isNaN(receivedAmount)){
  737. layer.msg('实付金额必须为数字!',{icon:2,time:1500});
  738. return false;
  739. }
  740. //验证称重>0.5
  741. var if_no = weigh_verify();
  742. if(if_no > 0){
  743. if(if_no == 1){
  744. layer.msg('商品数量填写有误!',{icon:2,time:1500});
  745. }
  746. if(if_no == 2){
  747. layer.msg('非称重商品数量必须为整数!',{icon:2,time:1500});
  748. }
  749. if(if_no == 3){
  750. layer.msg('称重商品重量必须为0.5的倍数!',{icon:2,time:1500});
  751. }
  752. return false;
  753. }
  754. //验证充值卡
  755. var is_ok = 1;
  756. var payment_type = $("input[type='radio'][name='payment_type']:checked").val();
  757. if(payment_type==4){
  758. var phone = $("input[name=deposit_phone]").val();
  759. if(!phone){
  760. is_ok = 0;
  761. }
  762. //获取充值卡余额
  763. $.ajax({
  764. url:'/admin/cust/getBalance/'+phone,
  765. type: 'get',
  766. async:false,
  767. success : function(data){
  768. data=parseFloat(data);
  769. receivedAmount=parseFloat(receivedAmount);
  770. if(data<receivedAmount){
  771. is_ok = 0;
  772. }else{
  773. is_ok = 1;
  774. }
  775. }
  776. });
  777. if(is_ok==0){
  778. layer.msg('充值卡余额不足,请充值或选择其他付款方式!',{icon:2,time:1500});
  779. return false;
  780. }
  781. }
  782. return true;
  783. }
  784. function getVip(){
  785. var phone = $('input[name=buyer_phone]').val();
  786. var reg = /^1\d{10}$/
  787. if(reg.test(phone)){
  788. $.ajax({
  789. 'url': '/admin/order/getVip?phone='+phone,
  790. 'type': 'get',
  791. 'dateType': 'json',
  792. success:function(data){
  793. if(data != '0'){
  794. data = eval("("+data+")");
  795. $("input[name=receiverState]").val(data.receiverState);
  796. $("input[name=receiverCity]").val(data.receiverCity);
  797. //$("input[name=receiverDistrict]").val(data.receiverDistrict);
  798. //$("input[name=receiverStreet]").val(data.receiverStreet);
  799. $("input[name=receiverAddress]").val(data.receiverAddress);
  800. $("input[name=fanTime]").val(data.fanTime);
  801. $("#fanTime_div").hide();
  802. }
  803. else{
  804. $("#fanTime_div").show();
  805. }
  806. }
  807. })
  808. }
  809. }
  810. </script>
  811. </body>
  812. @endsection