add_work.php 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800
  1. <?php
  2. /* @var $this yii\web\View */
  3. $this->title = '编辑工地';
  4. use yii\helpers\Url;
  5. ?>
  6. <link rel="stylesheet" href="http://cache.amap.com/lbs/static/main1119.css"/>
  7. <script type="text/javascript" src="http://webapi.amap.com/maps?v=1.3&key=210550b67bddb270e575a1838060f8ec&plugin=AMap.Autocomplete,AMap.PlaceSearch,AMap.Geocoder"></script>
  8. <form id="myform"action="" method="get">
  9. <div class="add-box publish">
  10. <ul class="add-input">
  11. <li>
  12. <div class="left">
  13. 名称
  14. </div>
  15. <div class="right">
  16. <input type="text" value="<?=isset($model->name)?$model->name:''?>" name="Building[name]" placeholder="输入小区名称" class="community community_verify">
  17. </div>
  18. </li>
  19. <li>
  20. <div class="left">
  21. 面积
  22. </div>
  23. <div class="right">
  24. <input type="text" value="<?=isset($model->acreage)?$model->acreage:''?>" name="Building[acreage]" placeholder="输入户型面积" class="area area_verify">
  25. </div>
  26. <i class="iconfont">㎡</i>
  27. </li>
  28. <li class="none">
  29. <div class="left">
  30. 单价
  31. </div>
  32. <div class="right">
  33. <input type="text" value="<?=isset($model->budget)?$model->budget:''?>" name="Building[budget]" placeholder="输入单价" class=" price budget_verify">
  34. </div>
  35. <i class="iconfont">元/平方</i>
  36. </li>
  37. </ul>
  38. <ul class="time">
  39. <li>
  40. <div class="left">
  41. 可约时间
  42. </div>
  43. <div class="right">
  44. <input type="text" value="<?=isset($model->opening_begin)?date('Y-m-d',$model->opening_begin):''?>" name="opening_begin" id='datetime-picker' class="opening_begin_verify"/>
  45. </div>
  46. <i class="iconfont icon-gengduo"></i>
  47. </li>
  48. <li class="none">
  49. <div class="left">
  50. 结束时间
  51. </div>
  52. <div class="right">
  53. <input type="text" value="<?=isset($model->opening_end)?date('Y-m-d',$model->opening_end):''?>" name="opening_end" id='datetime-picker-end' class="opening_end_verify"/>
  54. </div>
  55. <i class="iconfont icon-gengduo"></i>
  56. </li>
  57. <li class="none">
  58. <div class="left">
  59. 装修进度
  60. </div>
  61. <div class="right">
  62. <a href="javascript:;" class="open-popup " data-target="#schedule" id="stage" ><?=isset($model->stage)?$model->stage:''?></a>
  63. <input type="text" value="<?=isset($model->stage)?$model->stage:''?>" name="Building[stage]" hidden="hidden" class="community stage stage_verify">
  64. </div>
  65. <i class="iconfont icon-gengduo"></i>
  66. </li>
  67. </ul>
  68. <ul>
  69. <li>
  70. <div class="left">
  71. 户型
  72. </div>
  73. <div class="right">
  74. <a href="javascript:;" class="open-popup" data-target="#type" id="layout"><?=isset($model->layout)?$model->layout:''?></a>
  75. <input type="text" value="<?=isset($model->layout)?$model->layout:''?>" name="Building[layout]" hidden="hidden" class="community layout layout_verify">
  76. </div>
  77. <i class="iconfont icon-gengduo"></i>
  78. </li>
  79. <li>
  80. <div class="left">
  81. 装修风格
  82. </div>
  83. <div class="right" data-target="#style">
  84. <a href="javascript:;" class="open-popup" data-target="#style" id="style_fg"><?=isset($model->style)?$model->style:''?></a>
  85. <input type="text" value="<?=isset($model->style)?$model->style:''?>" name="Building[style]" hidden="hidden" class="community style style_verify ">
  86. </div>
  87. <i class="iconfont icon-gengduo"></i>
  88. </li>
  89. <li class="none">
  90. <div class="left">
  91. 装修方式
  92. </div>
  93. <div class="right" >
  94. <a href="javascript:;" class="open-popup" data-target="#methods" id="pattern"><?=isset($model->pattern)?$model->pattern:''?></a>
  95. <input type="text" value="<?=isset($model->pattern)?$model->pattern:''?>" name="Building[pattern]" hidden="hidden" class="community pattern pattern_verify" >
  96. </div>
  97. <i class="iconfont icon-gengduo"></i>
  98. </li>
  99. </ul>
  100. <ul>
  101. <li>
  102. <div class="left">
  103. 设计师
  104. </div>
  105. <div class="right ">
  106. <a href="javascript:;" class="open-popup" data-target="#dg" id="designer_id">
  107. <?php if(!empty($model_designer)&&!empty($model->designer_id)):?>
  108. <?php foreach($model_designer as $key=>$arr):?>
  109. <?php if($arr->id==$model->designer_id){ echo $arr->realname;break;} ?>
  110. <?php endforeach?>
  111. <?php endif?>
  112. </a>
  113. <input type="text" value="<?=isset($model->designer_id)?$model->designer_id:''?>" name="Building[designer_id]" hidden="hidden" class="community designer_id designer_id_verify">
  114. </div>
  115. <i class="iconfont icon-gengduo"></i>
  116. </li>
  117. <li class="none">
  118. <div class="left">
  119. 项目经理
  120. </div>
  121. <div class="right">
  122. <a href="javascript:;" class="open-popup" data-target="#pm" id="manager_id">
  123. <?php if(!empty($model_manager)&&!empty($model->manager_id)):?>
  124. <?php foreach($model_manager as $key=>$arr):?>
  125. <?php if($arr->id==$model->manager_id){ echo $arr->realname;break;} ?>
  126. <?php endforeach?>
  127. <?php endif?>
  128. </a>
  129. <input type="text" value="<?=isset($model->manager_id)?$model->manager_id:''?>" name="Building[manager_id]" hidden="hidden" class="community manager_id manager_id_verify" >
  130. </div>
  131. <i class="iconfont icon-gengduo"></i>
  132. </li>
  133. </ul>
  134. <!--房屋位置-->
  135. <div class="title">
  136. 房屋位置
  137. </div>
  138. <div class="address">
  139. <ul>
  140. <li>
  141. <div class="left">
  142. 选择地区
  143. </div>
  144. <div class="right ">
  145. <input type="text" name="city-picker" id='city-picker' class="areas_verify"/>
  146. </div>
  147. <i class="iconfont icon-gengduo"></i>
  148. </li>
  149. <li>
  150. <div class="right">
  151. <input type="text" value="<?=isset($model->address)?$model->address:''?>" name="Building[address]" placeholder="请输入详细地址" class="left address_verify" id="full-add" onblur="Map_position()">
  152. </div>
  153. </li>
  154. </ul>
  155. <div class="map-box">
  156. <div id="container" tabindex="0"></div>
  157. </div>
  158. </div>
  159. <!--客厅照片-->
  160. <div class="title">
  161. 添加开工大吉照片
  162. </div>
  163. <div class="container">
  164. <!--图片添加-->
  165. <div class="z_photo">
  166. <a href="javascript:;" class="z_file">
  167. <img id="imgShow_WU_FILE_0" class="acc_imgin" <?php if(!empty($model->living->pic)){echo "src='".Yii::getAlias('@imgdomain').'/'.$model->living->pic."'";}?> />
  168. <input name="living_room" hidden="hidden" id="living_room" value=""/>
  169. </a>
  170. </div>
  171. </div>
  172. <!--主卧照片-->
  173. <div class="title">
  174. 添加现场施工照片
  175. </div>
  176. <div class="container">
  177. <!--图片添加-->
  178. <div class="z_photo">
  179. <a href="javascript:;" class="z_file z_file1">
  180. <img id="imgShow_WU_FILE_0" class="acc_imgin" <?php if(!empty($model->master->pic)){echo "src='".Yii::getAlias('@imgdomain').'/'.$model->master->pic."'";}?> />
  181. <input name="master_bedroom" hidden="hidden" id="master_bedroom" value=""/>
  182. </a>
  183. </div>
  184. </div>
  185. <!--局部照片-->
  186. <div class="title">
  187. 添加现场施工照片
  188. </div>
  189. <div class="container">
  190. <!--图片添加-->
  191. <div class="z_photo">
  192. <a href="javascript:;" class="z_file z_file2">
  193. <img id="imgShow_WU_FILE_0" <?php if(!empty($model->portion->pic)){echo "src='".Yii::getAlias('@imgdomain').'/'.$model->portion->pic."'";}?> class="acc_imgin"/>
  194. <input name="portion" hidden="hidden" id="portion" value=""/>
  195. </a>
  196. </div>
  197. </div>
  198. <div class="title">
  199. 添加现场施工照片
  200. </div>
  201. <div class="container">
  202. <!--图片添加-->
  203. <div class="z_photo">
  204. <a href="javascript:;" class="z_file z_file5">
  205. <img id="imgShow_WU_FILE_0" class="acc_imgin" <?php if(!empty($model->build->pic)){echo "src='".Yii::getAlias('@imgdomain').'/'.$model->build->pic."'";}?> />
  206. <input name="build" hidden="hidden" id="build" value=""/>
  207. </a>
  208. </div>
  209. </div>
  210. <div class="title">
  211. 添加现场施工照片
  212. </div>
  213. <div class="container">
  214. <!--图片添加-->
  215. <div class="z_photo">
  216. <a href="javascript:;" class="z_file z_file6">
  217. <img id="imgShow_WU_FILE_0" class="acc_imgin" <?php if(!empty($model->build2->pic)){echo "src='".Yii::getAlias('@imgdomain').'/'.$model->build2->pic."'";}?> />
  218. <input name="build2" hidden="hidden" id="build2" value=""/>
  219. </a>
  220. </div>
  221. </div>
  222. <!--户型照片-->
  223. <div class="title">
  224. 添加户型平面图
  225. </div>
  226. <div class="container">
  227. <!--图片添加-->
  228. <div class="z_photo">
  229. <a href="javascript:;" class="z_file z_file3">
  230. <img id="imgShow_WU_FILE_0" class="acc_imgin" <?php if(!empty($model->flat->pic)){echo "src='".Yii::getAlias('@imgdomain').'/'.$model->flat->pic."'";}?> />
  231. <input name="flat" hidden="hidden" id="flat" value=""/>
  232. </a>
  233. </div>
  234. </div>
  235. <input type="text" name='Building[province]' hidden="hidden" class="province" value="<?=isset($model->province)?$model->province:''?>" >
  236. <input type="text" name='Building[city]' hidden="hidden" class="city" value="<?=isset($model->city)?$model->city:''?>" >
  237. <input type="text" name='Building[district]' hidden="hidden" class="district" value="<?=isset($model->district)?$model->district:''?>" >
  238. <input type="text" name="Building[type]" hidden="hidden" value="1" >
  239. <input type="text" name="id" hidden="hidden" value="<?=isset($model->id)?$model->id:''?>" >
  240. <input type="text" name="typeModel" hidden="hidden" value="edit" >
  241. <a class="weui-btn weui-btn_plain-default submit-btn get_address" >完成</a>
  242. <!--装修进度 弹出层-->
  243. <div id="schedule" class="weui-popup__container">
  244. <div class="weui-popup__overlay"></div>
  245. <div class="weui-popup__modal">
  246. <div class="radio-title">进度</div>
  247. <div class="weui-cells weui-cells_radio">
  248. <?php if(!empty($stage_arr)):?>
  249. <?php foreach($stage_arr as $key=>$arr):?>
  250. <label class="weui-cell weui-check__label close-popup stage_arr" for="<?='x31'.$key?>">
  251. <div class="weui-cell__bd">
  252. <p><?=$arr?></p>
  253. </div>
  254. <div class="weui-cell__ft">
  255. <input type="radio" class="weui-check" name="radio1" value="<?=$arr?>" id="<?='x31'.$key?>" >
  256. <span class="weui-icon-checked"></span>
  257. </div>
  258. </label>
  259. <?php endforeach?>
  260. <?php endif?>
  261. </div>
  262. <!-- <a href="javascript:void(0);" class="weui-btn weui-btn_plain-default submit-btn close-popup stage_arr">提交</a>-->
  263. </div>
  264. </div>
  265. <!--户型 弹出层-->
  266. <div id="type" class="weui-popup__container">
  267. <div class="weui-popup__overlay"></div>
  268. <div class="weui-popup__modal">
  269. <div class="radio-title">户型</div>
  270. <div class="weui-cells weui-cells_radio">
  271. <?php if(!empty($layout_arr)):?>
  272. <?php foreach($layout_arr as $key=>$arr):?>
  273. <label class="weui-cell weui-check__label close-popup layout_arr" for="<?='x1'.$key?>">
  274. <div class="weui-cell__bd">
  275. <p><?=$arr?></p>
  276. </div>
  277. <div class="weui-cell__ft">
  278. <input type="radio" class="weui-check" name="radio1" value="<?=$arr?>" id="<?='x1'.$key?>" >
  279. <span class="weui-icon-checked"></span>
  280. </div>
  281. </label>
  282. <?php endforeach?>
  283. <?php endif?>
  284. </div>
  285. <!-- <a href="javascript:void(0);" class="weui-btn weui-btn_plain-default submit-btn close-popup layout_arr">提交</a>-->
  286. </div>
  287. </div>
  288. <!--风格 弹出层-->
  289. <div id="style" class="weui-popup__container">
  290. <div class="weui-popup__overlay"></div>
  291. <div class="weui-popup__modal">
  292. <div class="radio-title">风格</div>
  293. <div class="weui-cells weui-cells_radio">
  294. <?php if(!empty($style_arr)):?>
  295. <?php foreach($style_arr as $key=>$arr):?>
  296. <label class="weui-cell weui-check__label close-popup style_arr" for="<?='x2'.$key?>">
  297. <div class="weui-cell__bd">
  298. <p><?=$arr?></p>
  299. </div>
  300. <div class="weui-cell__ft">
  301. <input type="radio" class="weui-check" name="radio1" value="<?=$arr?>" id="<?='x2'.$key?>" >
  302. <span class="weui-icon-checked"></span>
  303. </div>
  304. </label>
  305. <?php endforeach?>
  306. <?php endif?>
  307. </div>
  308. <!-- <a href="javascript:void(0);" class="weui-btn weui-btn_plain-default submit-btn close-popup style_arr">提交</a>-->
  309. </div>
  310. </div>
  311. <!--装修方式 弹出层-->
  312. <div id="methods" class="weui-popup__container">
  313. <div class="weui-popup__overlay"></div>
  314. <div class="weui-popup__modal">
  315. <div class="radio-title">方式</div>
  316. <div class="weui-cells weui-cells_radio">
  317. <?php if(!empty($pattern_arr)):?>
  318. <?php foreach($pattern_arr as $key=>$arr):?>
  319. <label class="weui-cell weui-check__label close-popup pattern_arr" for="<?='x4'.$key?>">
  320. <div class="weui-cell__bd">
  321. <p><?=$arr?></p>
  322. </div>
  323. <div class="weui-cell__ft">
  324. <input type="radio" class="weui-check" name="radio1" value="<?=$arr?>" id="<?='x4'.$key?>"/>
  325. <span class="weui-icon-checked"></span>
  326. </div>
  327. </label>
  328. <?php endforeach?>
  329. <?php endif?>
  330. </div>
  331. <!-- <a href="javascript:void(0);" class="weui-btn weui-btn_plain-default submit-btn close-popup pattern_arr">提交</a>-->
  332. </div>
  333. </div>
  334. <!--设计师 弹出层-->
  335. <div id="dg" class="weui-popup__container staff-list dg">
  336. <div class="weui-popup__overlay"></div>
  337. <div class="weui-popup__modal">
  338. <div class="weui-cells weui-cells_radio">
  339. <?php if(!empty($model_designer)):?>
  340. <?php foreach($model_designer as $key=>$arr):?>
  341. <label class="weui-cell weui-check__label" for="<?='x5'.$key?>">
  342. <div class="weui-cell__bd">
  343. <div class="staff">
  344. <div class="img">
  345. <img src="<?=empty($arr->image->pic)?"":Yii::getAlias('@imgdomain').'/'.$arr->image->pic?>" alt="">
  346. </div>
  347. <div class="list-main">
  348. <h2><?=$arr->realname?><span>装潢设计师</span></h2>
  349. <p>简介:<?=$arr->introduction?></p>
  350. </div>
  351. </div>
  352. </div>
  353. <div class="weui-cell__ft">
  354. <input type="radio" class="weui-check" name="radio1" realname="<?=$arr->realname?>" value="<?=$arr->id?>" id="<?='x5'.$key?>" >
  355. <span class="weui-icon-checked"></span>
  356. </div>
  357. </label>
  358. <?php endforeach?>
  359. <?php endif?>
  360. </div>
  361. <a href="javascript:void(0);" class="weui-btn weui-btn_plain-default submit-btn close-popup model_designer ">添加</a>
  362. </div>
  363. </div>
  364. <!--项目经理 弹出层-->
  365. <div id="pm" class="weui-popup__container staff-list pm">
  366. <div class="weui-popup__overlay"></div>
  367. <div class="weui-popup__modal">
  368. <div class="weui-cells weui-cells_radio">
  369. <?php if(!empty($model_manager)):?>
  370. <?php foreach($model_manager as $key=>$arr):?>
  371. <label class="weui-cell weui-check__label" for="<?='x6'.$key?>">
  372. <div class="weui-cell__bd">
  373. <div class="staff">
  374. <div class="img">
  375. <img src="<?=empty($arr->image->pic)?"":Yii::getAlias('@imgdomain').'/'.$arr->image->pic?>" alt="">
  376. </div>
  377. <div class="list-main">
  378. <h2><?=$arr->realname?><span>项目经理</span></h2>
  379. <p>简介:<?=$arr->introduction?></p>
  380. </div>
  381. </div>
  382. </div>
  383. <div class="weui-cell__ft">
  384. <input type="radio" class="weui-check" name="radio1" realname="<?=$arr->realname?>" value="<?=$arr->id?>" id="<?='x6'.$key?>" checked="checked">
  385. <span class="weui-icon-checked"></span>
  386. </div>
  387. </label>
  388. <?php endforeach?>
  389. <?php endif?>
  390. </div>
  391. <input name="pickup_address_coordinate" type="hidden" class="qh-zb " value="<?=isset($model->longitude)?$model->longitude:''?>,<?=isset($model->latitude)?$model->latitude:''?>"/>
  392. <a href="javascript:void(0);" class="weui-btn weui-btn_plain-default submit-btn close-popup model_manager" >添加</a>
  393. </div>
  394. </div>
  395. </div>
  396. </form>
  397. <style>
  398. .weui-picker-modal .picker-items{
  399. font-size: 1.5rem;
  400. }
  401. .weui-picker-modal .picker-items-col{
  402. margin: 0 0.5rem;
  403. }
  404. </style>
  405. <script>
  406. $('.acc_imgin').on('click', function () {
  407. var that = this;
  408. var id = $(that).next('input').attr('id');
  409. var image = {
  410. localId: [],
  411. serverId: []
  412. };
  413. wx.chooseImage({
  414. count: 1, // 默认9
  415. sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
  416. sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
  417. success: function (res) {
  418. image.localIds = res.localIds; // 返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片
  419. wx.uploadImage({
  420. localId: image.localIds[0], // 需要上传的图片的本地ID,由chooseImage接口获得
  421. isShowProgressTips: 1, // 默认为1,显示进度提示
  422. success: function (res) {
  423. image.serverId = res.serverId; // 返回图片的服务器端IDd
  424. var serverid = image.serverId;
  425. $.ajax({
  426. url:'<?=Url::toRoute(['building/imgurl']);?>',
  427. type:'GET',
  428. dataType:'json',
  429. data:{serverid:serverid},
  430. success:function(data){
  431. if(data.sign==1){
  432. $(that).next('input').val(data.imgurl);
  433. }else{
  434. alert(data.msg);
  435. }
  436. }
  437. });
  438. }
  439. });
  440. if(window.__wxjs_is_wkwebview){
  441. wx.getLocalImgData({
  442. localId:image.localIds[0], // 图片的localID
  443. success: function (res) {
  444. var localData = res.localData; // localData是图片的base64数据,可以用img标签显示
  445. $(that).attr('src',localData);
  446. }
  447. });
  448. }else{
  449. $(that).attr('src',image.localIds[0]);
  450. }
  451. },
  452. fail: function(res){
  453. }
  454. });
  455. });
  456. $('.layout_arr').click(function(){
  457. var val = $('#type input[name="radio1"]:checked').val();
  458. $('.layout').val(val);
  459. $('#layout').text(val);
  460. });
  461. $('.stage_arr').click(function(){
  462. var val = $('#schedule input[name="radio1"]:checked').val();
  463. $('.stage').val(val);
  464. $('#stage').text(val);
  465. });
  466. $('.style_arr').click(function(){
  467. var val = $('#style input[name="radio1"]:checked').val();
  468. $('.style').val(val);
  469. $('#style_fg').text(val);
  470. });
  471. $('.pattern_arr').click(function(){
  472. var val = $('#methods input[name="radio1"]:checked').val();
  473. $('.pattern').val(val);
  474. $('#pattern').text(val);
  475. });
  476. $('.model_designer').click(function(){
  477. var val = $('#dg input[name="radio1"]:checked').val();
  478. var realname = $('#dg input[name="radio1"]:checked').attr('realname');
  479. $('.designer_id').val(val);
  480. $('#designer_id').text(realname);
  481. });
  482. $('.model_manager').click(function(){
  483. var val = $('#pm input[name="radio1"]:checked').val();
  484. var realname = $('#pm input[name="radio1"]:checked').attr('realname');
  485. $('.manager_id').val(val);
  486. $('#manager_id').text(realname);
  487. });
  488. $('.get_address').click(function(){
  489. //验证
  490. var community_verify = $('.community_verify').val();
  491. var area_verify = $('.area_verify').val();
  492. var budget_verify = $('.budget_verify').val();
  493. var stage_verify = $('.stage_verify').val();
  494. var layout_verify = $('.layout_verify').val();
  495. var style_verify = $('.style_verify').val();
  496. var pattern_verify = $('.pattern_verify').val();
  497. var opening_begin_verify = $('.opening_begin_verify').val();
  498. var opening_end_verify = $('.opening_end_verify').val();
  499. var areas_verify = $('.areas_verify').val();
  500. var address_verify = $('.address_verify').val();
  501. var designer_id_verify = $('.designer_id_verify').val();
  502. var manager_id_verify = $('.manager_id_verify').val();
  503. if(community_verify ==""){
  504. $.alert("请填写名称");return false;
  505. }else if(area_verify ==""){
  506. $.alert("请填写面积");return false;
  507. }else if(isNaN(area_verify)){
  508. $.alert("面积,请填写纯数字");return false;
  509. }else if(budget_verify ==""){
  510. $.alert("请填写单价");return false;
  511. }else if(isNaN(budget_verify)){
  512. $.alert("单价,请填写纯数字");return false;
  513. }else if(stage_verify ==""){
  514. $.alert("请选择装修进度");return false;
  515. }else if(layout_verify ==""){
  516. $.alert("请选择写户型");return false;
  517. }else if(style_verify ==""){
  518. $.alert("请选择装修风格");return false;
  519. }else if(pattern_verify ==""){
  520. $.alert("请选择装修方式");return false;
  521. }else if(opening_begin_verify ==""){
  522. $.alert("请选择开始预约时间");return false;
  523. }else if(opening_end_verify ==""){
  524. $.alert("请选择结束预约时间");return false;
  525. }else if(opening_begin_verify > opening_end_verify){
  526. $.alert("开始时间不能大于结束时间");return false;
  527. }else if(areas_verify ==""){
  528. $.alert("请选择地区");return false;
  529. }else if(address_verify ==""){
  530. $.alert("请填写详情地址");return false;
  531. }else if(designer_id_verify ==""){
  532. $.alert("请选择设计师");return false;
  533. }else if(manager_id_verify ==""){
  534. $.alert("请选择项目经理");return false;
  535. }else{
  536. var val = $('.address input[name="city-picker"]').val();
  537. var data = $('.address input[name="city-picker"]').attr('data-codes');
  538. var arr = data.split(',');
  539. $('.province').val(arr[0]);
  540. $('.city').val(arr[1]);
  541. $('.district').val(arr[2]);
  542. <?php if(empty($model)): ?>
  543. var url = '<?=Url::toRoute(['building/addwork']);?>';
  544. <?php else: ?>
  545. var url = '<?=Url::toRoute(['building/editwork']);?>';
  546. <?php endif; ?>
  547. $.ajax({
  548. url:url,
  549. type:'GET',
  550. dataType:'json',
  551. data:$('#myform').serialize(),
  552. success:function(data){
  553. $.alert(data.msg, "提示", function() {
  554. window.location.href="<?=Url::toRoute(['building/work'])?>";
  555. });
  556. }
  557. });
  558. }
  559. })
  560. </script>
  561. <script type="text/javascript">
  562. //时间选择器
  563. var timeFormat = function () {
  564. return [
  565. ];
  566. };
  567. //可约时间
  568. $("#datetime-picker").datetimePicker({
  569. times: timeFormat,
  570. onChange: function (picker, values, displayValues) {
  571. //console.log(values);
  572. }
  573. });
  574. //结束时间
  575. $("#datetime-picker-end").datetimePicker({
  576. times: timeFormat,
  577. onChange: function (picker, values, displayValues) {
  578. //console.log(values);
  579. }
  580. });
  581. var JsArea = $.city;
  582. var map, geolocation,marker;
  583. <?php if(!empty($model)&&!empty($model->longitude)&&!empty($model->latitude)):?>
  584. //加载地图,调用浏览器定位服务
  585. map = new AMap.Map('container', {
  586. resizeEnable: true,
  587. zoom:13,
  588. center :[<?= $model->longitude ?>, <?= $model->latitude ?>]
  589. });
  590. lnglatXY = [<?= $model->longitude ?>, <?= $model->latitude ?>];
  591. marker = new AMap.Marker({
  592. position: lnglatXY,
  593. draggable: true,//是否可拖拽
  594. cursor: 'move',
  595. raiseOnDrag: true
  596. });
  597. regeocoder();
  598. marker.setMap(map);
  599. <?php else:?>
  600. //基本地图加载
  601. marker,map = new AMap.Map("container", {
  602. resizeEnable: true,
  603. // center: [118.183784,24.483341],//地图中心点
  604. zoom: 13 //地图显示的缩放级别
  605. });
  606. //定位(浏览器定位)--(坐标、详细地址)
  607. map.plugin('AMap.Geolocation', function() {
  608. geolocation = new AMap.Geolocation({
  609. enableHighAccuracy: true,//是否使用高精度定位,默认:true
  610. timeout: 10000, //超过10秒后停止定位,默认:无穷大
  611. showButton: false, //显示定位按钮,默认:true
  612. buttonOffset: new AMap.Pixel(10, 20),//定位按钮与设置的停靠位置的偏移量,默认:Pixel(10, 20)
  613. buttonPosition:'LB'
  614. });
  615. map.addControl(geolocation);
  616. geolocation.getCurrentPosition();
  617. AMap.event.addListener(geolocation, 'complete', onComplete);//返回定位信息
  618. AMap.event.addListener(geolocation, 'error', onError); //返回定位出错信息
  619. });
  620. <?php endif?>
  621. //解析定位结果
  622. function onComplete(data) {
  623. lnglatXY = [data.position.getLng(), data.position.getLat()];//坐标
  624. $(".qh-zb").val(data.position.getLng()+","+data.position.getLat());
  625. regeocoder();//根据坐标解析详细地址
  626. addMarker();//根据坐标添加标注
  627. }
  628. function regeocoder() {
  629. var geocoder = new AMap.Geocoder({
  630. resizeEnable: true,
  631. radius: 1000,
  632. extensions: "all"
  633. });
  634. geocoder.getAddress(lnglatXY, function(status, result) {
  635. //console.log(result);
  636. if (status === 'complete' && result.info === 'OK') {
  637. geocoder_CallBack(result);
  638. }
  639. });
  640. }
  641. function geocoder_CallBack(data) {
  642. var address = data.regeocode.formattedAddress; //返回地址描述
  643. var citycode = data.regeocode.addressComponent.adcode; //城市编码
  644. var province_list = data.regeocode.addressComponent.province; //省份
  645. var city_list = data.regeocode.addressComponent.city; //城市
  646. var district_list = data.regeocode.addressComponent.district; //地区
  647. address = address.replace(province_list, "");
  648. address = address.replace(city_list, "");
  649. address = address.replace(district_list, "");
  650. // province_list(data.regeocode.addressComponent.province);//省份
  651. // city_list(data.regeocode.addressComponent.province,data.regeocode.addressComponent.city);//城市
  652. // district_list(data.regeocode.addressComponent.province,data.regeocode.addressComponent.city,data.regeocode.addressComponent.adcode);//地区
  653. $('.left').val(address);
  654. $("#city-picker").val(province_list + ' ' + city_list + ' ' + district_list);
  655. if(citycode!=""){
  656. var citycode1 = citycode.substring(0,4)+'00';
  657. var citycode2 = citycode.substring(0,2)+'0000';
  658. $("#city-picker").attr('data-codes',citycode2+","+citycode1+","+citycode);
  659. }
  660. }
  661. //解析定位错误信息
  662. function onError(data) {
  663. $.alert('定位失败');
  664. marker = new AMap.Marker({
  665. draggable: true,//是否可拖拽
  666. cursor: 'move',
  667. raiseOnDrag: true
  668. });
  669. marker.setMap(map);
  670. dragging();
  671. }
  672. //地址选择器
  673. $("#city-picker").cityPicker({
  674. title: "选择地址",
  675. onChange: function (picker, values, displayValues) {
  676. // console.log(values, displayValues);
  677. //map.setCity(displayValues[1]);//定位到所选地址区域
  678. if (displayValues[2] == ""){
  679. map.setCity(displayValues[1]);
  680. }else {
  681. map.setCity(displayValues[2]);
  682. }
  683. }
  684. });
  685. //注册事件 输入详细地址,失去焦点触发
  686. AMap.event.addDomListener(document.getElementById('full-add'), 'blur', function() {
  687. Map_position();
  688. });
  689. //设置标注到定位位置
  690. function addMarker() {
  691. marker = new AMap.Marker({
  692. position: lnglatXY,
  693. draggable: true,//是否可拖拽
  694. cursor: 'move',
  695. raiseOnDrag: true
  696. });
  697. marker.setMap(map);
  698. dragging();
  699. };
  700. //获取拖拽后的坐标
  701. function dragging(){
  702. AMap.event.addListener(marker, 'dragging', function(e){
  703. var lat = e.lnglat.getLat(),
  704. lng = e.lnglat.getLng();
  705. // console.log('你拖拽到了(' + lng,lat + ')位置')
  706. });
  707. }
  708. //地址选择器
  709. ///$("#city-picker").cityPicker();
  710. // //设置城市
  711. // AMap.event.addDomListener(
  712. // document.getElementById('city-picker'), 'click', function() {
  713. // var cityName = document.getElementById('city-picker').getAttribute('data-code');
  714. // map.setCity(cityName);
  715. // });
  716. //根据关键字获取对应坐标
  717. function Map_position(){
  718. var text= document.getElementById("full-add").value;
  719. var placeSearch = new AMap.PlaceSearch();
  720. // console.log(text);
  721. placeSearch.search(text, function(status, result) {
  722. if (status === 'complete' && result.info === 'OK') {
  723. var poiArr = result.poiList.pois;
  724. //如果没有显示地图,就不用for
  725. for(var i=0;i<poiArr.length;i++){
  726. marker = new AMap.Marker({
  727. });
  728. }
  729. // alert([poiArr[0].location.lng, poiArr[0].location.lat])
  730. $(".qh-zb").val(poiArr[0].location.lng+","+poiArr[0].location.lat);
  731. //marker.setPosition([poiArr[0].location.lng, poiArr[0].location.lat]); //更新点标记位置
  732. map.panTo([poiArr[0].location.lng, poiArr[0].location.lat]);//平移到标注中心点
  733. }
  734. });
  735. }
  736. //点击地图更新标注位置
  737. map.on('click', function(e) {
  738. marker.setPosition(e.lnglat); //点击更新标注位置
  739. //console.log('您在[ '+e.lnglat.getLng()+','+e.lnglat.getLat()+' ]的位置点击了地图!');
  740. $(".qh-zb").val(e.lnglat.getLng()+","+e.lnglat.getLat());
  741. var geocoder = new AMap.Geocoder({
  742. resizeEnable: true,
  743. radius: 1000,
  744. extensions: "all"
  745. });
  746. geocoder.getAddress(e.lnglat, function(status, result) {
  747. if (status === 'complete' && result.info === 'OK') {
  748. var address = result.regeocode.formattedAddress; //返回地址描述
  749. var province_list = result.regeocode.addressComponent.province; //省份
  750. var city_list = result.regeocode.addressComponent.city; //城市
  751. var district_list = result.regeocode.addressComponent.district; //地区
  752. address = address.replace(province_list, "");
  753. address = address.replace(city_list, "");
  754. address = address.replace(district_list, "");
  755. $('.left').val(address);
  756. $("#city-picker").val(province_list + ' ' + city_list + ' ' + district_list);
  757. var citycode = result.regeocode.addressComponent.adcode; //城市编码
  758. if(citycode!=""){
  759. var citycode1 = citycode.substring(0,4)+'00';
  760. var citycode2 = citycode.substring(0,2)+'0000';
  761. $("#city-picker").attr('data-codes',citycode2+","+citycode1+","+citycode);
  762. }
  763. }
  764. });
  765. });
  766. </script>