add_building.php 42 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: Administrator
  5. * Date: 2017/3/17 0017
  6. * Time: 上午 10:52
  7. */
  8. use yii\helpers\Url;
  9. use yii\widgets\LinkPager;
  10. use yii\widgets\ActiveForm;
  11. use company\controllers\BuildingController;
  12. ?>
  13. <style>
  14. .delete_img{
  15. position: absolute;right:20px;top:2px;width:12px;height:16px;display: block;
  16. }
  17. .delete_a{
  18. width: 200px;height: 100px;position: relative;display: inline-block;
  19. }
  20. </style>
  21. <link rel="stylesheet" href="http://cache.amap.com/lbs/static/main1119.css"/>
  22. <script type="text/javascript" src="http://webapi.amap.com/maps?v=1.3&key=210550b67bddb270e575a1838060f8ec&plugin=AMap.Autocomplete,AMap.PlaceSearch,AMap.Geocoder"></script>
  23. <script type="text/javascript" src="http://cache.amap.com/lbs/static/addToolbar.js"></script>
  24. <form id="myform"action="" method="get">
  25. <div class="col-sm-12">
  26. <div class="ibox float-e-margins">
  27. <div class="ibox-title">
  28. <h5><a class="btn btn-xs btn-primary" href="<?=\yii\helpers\Url::toRoute(['building/index']);?>"><i class="fa fa-reply"></i>&nbsp;返回列表</a>
  29. </h5>
  30. </div>
  31. <div class="ibox-content form-horizontal">
  32. <div class="form-group">
  33. <label class="col-sm-2 control-label">类型:</label>
  34. <div class="col-sm-10" style="padding-left:0">
  35. <select class="form-control way-select release_type" style="width: 220px;float: left;" id="type" name="Building[type]">
  36. <?php foreach(\company\modules\manage\controllers\BuildingController::$type_arr as $key =>$type):?>
  37. <option value="<?=$key?>" <?php if(!empty($model->type)){if($model->type==$key){echo 'selected';}}?>><?=$type?>
  38. </option>
  39. <?php endforeach?>
  40. </select>
  41. </div>
  42. </div>
  43. <div class="form-group">
  44. <label class="col-sm-2 control-label">名称:</label>
  45. <div class="col-sm-10" style="padding-left:0">
  46. <input style="width: 220px;float: left;" type="text" id="name" name="Building[name]" class="form-control " rows="2" maxlength="120" value="<?=isset($model->name)?$model->name:''?>">
  47. </div>
  48. </div>
  49. <div class="form-group">
  50. <label class="col-sm-2 control-label">面积:</label>
  51. <div class="col-sm-10" style="padding-left:0">
  52. <input style="width: 150px;float: left;" type="text" id="acreage" name="Building[acreage]" class="form-control " rows="2" value="<?=isset($model->acreage)?$model->acreage:''?>">平
  53. </div>
  54. </div>
  55. <div class="form-group">
  56. <label class="col-sm-2 control-label">单价:</label>
  57. <div class="col-sm-10" style="padding-left:0">
  58. <input style="width: 150px;float: left;" type="text" id="budget" name="Building[budget]" class="form-control " rows="2" value="<?=isset($model->budget)?$model->budget:''?>">元/平
  59. </div>
  60. </div>
  61. <div class="form-group">
  62. <label class="col-sm-2 control-label">可约时间:</label>
  63. <div class="col-sm-10" style="padding-left:0">
  64. <input style="width: 220px;float: left;" id="opening_begin" name="opening_begin" type="text" placeholder="请选择时间" class="layui-input search_created_at" value="<?=isset($model->opening_begin)?date('Y-m-d H:i:s',$model->opening_begin):''?>">
  65. </div>
  66. </div>
  67. <div class="form-group">
  68. <label class="col-sm-2 control-label">结束时间:</label>
  69. <div class="col-sm-10" style="padding-left:0">
  70. <input style="width: 220px;float: left;" id="opening_end" name="opening_end" type="text" placeholder="请选择时间" class="layui-input search_created_at" value="<?=isset($model->opening_end)?date('Y-m-d H:i:s',$model->opening_end):''?>">
  71. </div>
  72. </div>
  73. <div class="form-group stage">
  74. <label class="col-sm-2 control-label">装修进度:</label>
  75. <div class="col-sm-10" style="padding-left:0">
  76. <select class="form-control way-select" style="width: 220px;float: left;" id="stage" name="Building[stage]">
  77. <?php foreach(\company\modules\manage\controllers\BuildingController::$stage_arr as $key =>$stage):?>
  78. <option value="<?=$stage?>" <?php if(!empty($model->stage)){if($model->stage==$stage){echo 'selected';}}?>><?=$stage?></option>
  79. <?php endforeach?>
  80. </select>
  81. </div>
  82. </div>
  83. <div class="form-group">
  84. <label class="col-sm-2 control-label">户型:</label>
  85. <div class="col-sm-10" style="padding-left:0">
  86. <select class="form-control way-select" style="width: 220px;float: left;" id="layout" name="Building[layout]">
  87. <?php foreach(\company\modules\manage\controllers\BuildingController::$layout_arr as $key =>$layout):?>
  88. <option value="<?=$layout?>" <?php if(!empty($model->layout)){if($model->layout==$layout){echo 'selected';}}?>><?=$layout?></option>
  89. <?php endforeach?>
  90. </select>
  91. </div>
  92. </div>
  93. <div class="form-group ">
  94. <label class="col-sm-2 control-label">装修风格:</label>
  95. <div class="col-sm-10" style="padding-left:0">
  96. <select class="form-control way-select" style="width: 220px;float: left;" id="style" name="Building[style]">
  97. <?php foreach(\company\modules\manage\controllers\BuildingController::$style_arr as $key =>$style):?>
  98. <option value="<?=$style?>" <?php if(!empty($model->style)){if($model->style==$style){echo 'selected';}}?>><?=$style?></option>
  99. <?php endforeach?>
  100. </select>
  101. </div>
  102. </div>
  103. <div class="form-group pattern">
  104. <label class="col-sm-2 control-label">装修方式:</label>
  105. <div class="col-sm-10" style="padding-left:0">
  106. <select class="form-control way-select" style="width: 220px;float: left;" id="pattern" name="Building[pattern]">
  107. <?php foreach(\company\modules\manage\controllers\BuildingController::$pattern_arr as $key =>$pattern):?>
  108. <option value="<?=$pattern?>" <?php if(!empty($model->pattern)){if($model->pattern==$pattern){echo 'selected';}}?>><?=$pattern?></option>
  109. <?php endforeach?>
  110. </select>
  111. </div>
  112. </div>
  113. <div class="form-group">
  114. <label class="col-sm-2 control-label">项目经理:</label>
  115. <div class="col-sm-10" style="padding-left:0">
  116. <select class="form-control way-select" style="width: 220px;float: left;" id="manager_id" name="Building[manager_id]">
  117. <?php if(!empty($model_manager)):?>
  118. <?php foreach($model_manager as $key =>$mo):?>
  119. <option value="<?=$mo->id?>" <?php if(!empty($model->manager_id)){if($model->manager_id==$mo->id){echo 'selected';}}?>><?=$mo->realname?></option>
  120. <?php endforeach?>
  121. <?php endif?>
  122. </select>
  123. </div>
  124. </div>
  125. <div class="form-group">
  126. <label class="col-sm-2 control-label">设计师:</label>
  127. <div class="col-sm-10" style="padding-left:0">
  128. <select class="form-control way-select" style="width: 220px;float: left;" id="designer_id" name="Building[designer_id]">
  129. <?php if(!empty($model_designer)):?>
  130. <?php foreach($model_designer as $key =>$mo):?>
  131. <option value="<?=$mo->id?>"<?php if(!empty($model->designer_id)){if($model->designer_id==$mo->id){echo 'selected';}}?>><?=$mo->realname?></option>
  132. <?php endforeach?>
  133. <?php endif?>
  134. </select>
  135. </div>
  136. </div>
  137. <div class="form-group">
  138. <label class="col-sm-2 control-label">选择位置:</label>
  139. <div class=" col-sm-10 list-input1" style="padding-left:0">
  140. <select style="display:inline-block;height: 36px;width:144px;line-height: 36px;border: 1px solid #e6e6e6;background-color: #fff;border-radius: 2px;"class="form-control province" id='province' name="Building[province]" onchange='search(this)'>
  141. <option value="">请选择省份</option>
  142. </select>
  143. <select style="display:inline-block;height: 36px;width:144px;line-height: 36px;border: 1px solid #e6e6e6;background-color: #fff;border-radius: 2px;"class="form-control city" id='city'name='Building[city]' onchange='search(this)'>
  144. <option value="">请选择城市</option>
  145. </select>
  146. <select style="display:inline-block;height: 36px;width:144px;line-height: 36px;border: 1px solid #e6e6e6;background-color: #fff;border-radius: 2px;" class="form-control district" id='district' name='Building[district]' onchange='search(this)'>
  147. <option value="">请选择地区</option>
  148. </select>
  149. </div>
  150. </div>
  151. <div class="form-group">
  152. <label class="col-sm-2 control-label">详细地址:</label>
  153. <div class="col-sm-10 " style="max-width:525px;">
  154. <input type="text" value="<?=isset($model->address)?$model->address:''?>" name="Building[address]" id="input" class="form-control" placeholder="请输入详细地址">
  155. </div>
  156. </div>
  157. <div class="form-group layui-form-text">
  158. <label class="layui-form-label"></label>
  159. <div class="layui-input-block" style="height:200px;margin-top:20px;">
  160. <div id="container" tabindex="0" style="width:525px;height:200px;border: 1px solid #e6e6e6;"></div>
  161. </div>
  162. </div>
  163. <div class="form-group">
  164. <label class="col-sm-2 control-label build_title_1">客厅照片:</label>
  165. <div class="col-sm-10" style="padding-left:0">
  166. <a class="delete_a" id="living_room_a">
  167. <img src="<?=empty($model->living->pic)?"/images/upload-img.jpg":Yii::getAlias('@imgdomain').'/'.$model->living->pic?>" class="img-thumbnail living_room" id="living_room_img" style="width: 200px;height: 100px;" imgtype="img">
  168. <input type="hidden" id="living_room" name="living_room" class="form-control" rows="2" maxlength="120" value="">
  169. <?php if(!empty($model->living->pic)): ?>
  170. <input type="hidden" name="living_room_delete" value="1">
  171. <span class="delete_img" data-id="living_room" ><img src="/images/delete.png"></span>
  172. <?php endif; ?>
  173. </a>
  174. <span class="help-block m-b-none">建议图片大小750*500(长*高)</span>
  175. </div>
  176. </div>
  177. <div class="form-group">
  178. <label class="col-sm-2 control-label build_title_2">主卧照片:</label>
  179. <div class="col-sm-10" style="padding-left:0">
  180. <a class="delete_a" id="master_bedroom_a">
  181. <img src="<?=empty($model->master->pic)?"/images/upload-img.jpg":Yii::getAlias('@imgdomain').'/'.$model->master->pic?>" class="img-thumbnail master_bedroom" id="master_bedroom_img" style="width: 200px;height: 100px;" imgtype="img">
  182. <input type="hidden" id="master_bedroom" name="master_bedroom" class="form-control" rows="2" maxlength="120" value="">
  183. <?php if(!empty($model->master->pic)): ?>
  184. <input type="hidden" name="master_bedroom_delete" value="1">
  185. <span class="delete_img" data-id="master_bedroom"><img src="/images/delete.png"></span>
  186. <?php endif; ?>
  187. </a>
  188. <span class="help-block m-b-none">建议图片大小750*500(长*高)</span>
  189. </div>
  190. </div>
  191. <div class="form-group">
  192. <label class="col-sm-2 control-label build_title_3">局部美图:</label>
  193. <div class="col-sm-10" style="padding-left:0">
  194. <a class="delete_a" id="portion_a">
  195. <img src="<?=empty($model->portion->pic)?"/images/upload-img.jpg":Yii::getAlias('@imgdomain').'/'.$model->portion->pic?>" class="img-thumbnail portion" id="portion_img" style="width: 200px;height: 100px;" imgtype="img">
  196. <input type="hidden" id="portion" name="portion" class="form-control" rows="2" maxlength="120" value="">
  197. <?php if(!empty($model->portion->pic)): ?>
  198. <input type="hidden" name="portion_delete" value="1">
  199. <span class="delete_img" data-id="portion"><img src="/images/delete.png"></span>
  200. <?php endif; ?>
  201. </a>
  202. <span class="help-block m-b-none">建议图片大小750*500(长*高)</span>
  203. </div>
  204. </div>
  205. <div class="form-group build_title_4">
  206. <label class="col-sm-2 control-label ">局部美图:</label>
  207. <div class="col-sm-10" style="padding-left:0">
  208. <a class="delete_a" id="portion2_a">
  209. <img src="<?=empty($model->portion2->pic)?"/images/upload-img.jpg":Yii::getAlias('@imgdomain').'/'.$model->portion2->pic?>" class="img-thumbnail portion2" id="portion2_img" style="width: 200px;height: 100px;" imgtype="img">
  210. <input type="hidden" id="portion2" name="portion2" class="form-control" rows="2" maxlength="120" value="">
  211. <?php if(!empty($model->portion2->pic)): ?>
  212. <input type="hidden" name="portion2_delete" value="1">
  213. <span class="delete_img" data-id="portion2"><img src="/images/delete.png"></span>
  214. <?php endif; ?>
  215. </a>
  216. <span class="help-block m-b-none">建议图片大小750*500(长*高)</span>
  217. </div>
  218. </div>
  219. <div class="form-group build_title_4">
  220. <label class="col-sm-2 control-label">局部美图:</label>
  221. <div class="col-sm-10" style="padding-left:0">
  222. <a class="delete_a" id="portion3_a">
  223. <img src="<?=empty($model->portion3->pic)?"/images/upload-img.jpg":Yii::getAlias('@imgdomain').'/'.$model->portion3->pic?>" class="img-thumbnail portion3" id="portion3_img" style="width: 200px;height: 100px;" imgtype="img">
  224. <input type="hidden" id="portion3" name="portion3" class="form-control" rows="2" maxlength="120" value="">
  225. <?php if(!empty($model->portion3->pic)): ?>
  226. <input type="hidden" name="portion3_delete" value="1">
  227. <span class="delete_img" data-id="portion3" ><img src="/images/delete.png"></span>
  228. <?php endif; ?>
  229. </a>
  230. <span class="help-block m-b-none">建议图片大小750*500(长*高)</span>
  231. </div>
  232. </div>
  233. <div class="form-group build_title_4">
  234. <label class="col-sm-2 control-label">局部美图:</label>
  235. <div class="col-sm-10" style="padding-left:0">
  236. <a class="delete_a" id="portion4_a">
  237. <img src="<?=empty($model->portion4->pic)?"/images/upload-img.jpg":Yii::getAlias('@imgdomain').'/'.$model->portion4->pic?>" class="img-thumbnail portion4" id="portion4_img" style="width: 200px;height: 100px;" imgtype="img">
  238. <input type="hidden" id="portion4" name="portion4" class="form-control" rows="2" maxlength="120" value="">
  239. <?php if(!empty($model->portion4->pic)): ?>
  240. <input type="hidden" name="portion4_delete" value="1">
  241. <span class="delete_img" data-id="portion4"><img src="/images/delete.png"></span>
  242. <?php endif; ?>
  243. </a>
  244. <span class="help-block m-b-none">建议图片大小750*500(长*高)</span>
  245. </div>
  246. </div>
  247. <div class="form-group build_title_4">
  248. <label class="col-sm-2 control-label">局部美图:</label>
  249. <div class="col-sm-10" style="padding-left:0">
  250. <a class="delete_a" id="portion5_a">
  251. <img src="<?=empty($model->portion5->pic)?"/images/upload-img.jpg":Yii::getAlias('@imgdomain').'/'.$model->portion5->pic?>" class="img-thumbnail portion5" id="portion5_img" style="width: 200px;height: 100px;" imgtype="img">
  252. <input type="hidden" id="portion5" name="portion5" class="form-control" rows="2" maxlength="120" value="">
  253. <?php if(!empty($model->portion5->pic)): ?>
  254. <input type="hidden" name="portion5_delete" value="1">
  255. <span class="delete_img" data-id="portion5" ><img src="/images/delete.png"></span>
  256. <?php endif; ?>
  257. </a>
  258. <span class="help-block m-b-none">建议图片大小750*500(长*高)</span>
  259. </div>
  260. </div>
  261. <div class="form-group build">
  262. <label class="col-sm-2 control-label">现场施工图:</label>
  263. <div class="col-sm-10" style="padding-left:0">
  264. <a class="delete_a" id="build_a">
  265. <img src="<?=empty($model->build->pic)?"/images/upload-img.jpg":Yii::getAlias('@imgdomain').'/'.$model->build->pic?>" class="img-thumbnail build" id="build_img" style="width: 200px;height: 100px;" imgtype="img">
  266. <input type="hidden" id="build" name="build" class="form-control" rows="2" maxlength="120" value="">
  267. <?php if(!empty($model->build->pic)): ?>
  268. <input type="hidden" name="build_delete" value="1">
  269. <span class="delete_img" data-id="build" ><img src="/images/delete.png"></span>
  270. <?php endif; ?>
  271. </a>
  272. <span class="help-block m-b-none">建议图片大小750*500(长*高)</span>
  273. </div>
  274. </div>
  275. <div class="form-group build">
  276. <label class="col-sm-2 control-label">现场施工图:</label>
  277. <div class="col-sm-10" style="padding-left:0">
  278. <a class="delete_a" id="build2_a">
  279. <img src="<?=empty($model->build2->pic)?"/images/upload-img.jpg":Yii::getAlias('@imgdomain').'/'.$model->build2->pic?>" class="img-thumbnail build2" id="build2_img" style="width: 200px;height: 100px;" imgtype="img">
  280. <input type="hidden" id="build2" name="build2" class="form-control" rows="2" maxlength="120" value="">
  281. <?php if(!empty($model->build2->pic)): ?>
  282. <input type="hidden" name="build2_delete" value="1">
  283. <span class="delete_img" data-id="build2" ><img src="/images/delete.png"></span>
  284. <?php endif; ?>
  285. </a>
  286. <span class="help-block m-b-none">建议图片大小750*500(长*高)</span>
  287. </div>
  288. </div>
  289. <div class="form-group">
  290. <label class="col-sm-2 control-label">平面图:</label>
  291. <div class="col-sm-10" style="padding-left:0">
  292. <a class="delete_a" id="flat_a">
  293. <img src="<?=empty($model->flat->pic)?"/images/upload-img.jpg":Yii::getAlias('@imgdomain').'/'.$model->flat->pic?>" class="img-thumbnail flat" id="flat_img" style="width: 200px;height: 100px;" imgtype="img">
  294. <input type="hidden" id="flat" name="flat" class="form-control" rows="2" maxlength="120" value="">
  295. <?php if(!empty($model->flat->pic)): ?>
  296. <input type="hidden" name="flat_delete" value="1">
  297. <span class="delete_img" data-id="flat" ><img src="/images/delete.png"></span>
  298. <?php endif; ?>
  299. </a>
  300. <span class="help-block m-b-none">建议图片大小750*500(长*高)</span>
  301. </div>
  302. </div>
  303. <?php if(!empty($model)):?>
  304. <input type="hidden" name="conduct" value="update"/>
  305. <input type="hidden" name="topid" value="<?=isset($model->id)?$model->id:''?>" />
  306. <?php else:?>
  307. <input type="hidden" name="conduct" value="add" />
  308. <?php endif?>
  309. <input name="pickup_address_coordinate" type="hidden" class="qh-zb " value="<?php if(!empty($model->longitude)&&!empty($model->latitude)){echo $model->longitude.",".$model->latitude;}else{ echo ""; } ?>"/>
  310. <input type="hidden" name="id" id="id" value="<?=isset($id)?$id:''?>" />
  311. <div class="form-group">
  312. <div class="col-sm-2"></div>
  313. <div class="col-sm-10">
  314. <?php if(!empty($model)):?>
  315. <a class="btn btn-primary" id="update">修改</a>
  316. <?php else:?>
  317. <a class="btn btn-primary" id="submit">添加</a>
  318. <?php endif?>
  319. <a class="btn btn-default" href="<?=Url::toRoute(['building/index']);?>">取消</a>
  320. </div>
  321. </div>
  322. </div>
  323. </div>
  324. </div>
  325. </form>
  326. <!--上传图片的div-->
  327. <iframe name="upload_target" style="display: none;"></iframe>
  328. <div id="upload_picture" style="display: none;">
  329. <?php $form = ActiveForm::begin(
  330. [
  331. 'options' => ['enctype' => 'multipart/form-data','target'=>'upload_target'],
  332. 'action'=>Url::toRoute(['building/imgurl']),
  333. 'method'=>'post',
  334. ]
  335. )?>
  336. <?= $form->field($picture_form, 'imageFile')->fileInput() ?>
  337. <input type="hidden" id="type" name="type" data="" value="">
  338. <input type="hidden" id="type_image" name="type_image" >
  339. <?php ActiveForm::end() ?>
  340. </div>
  341. <script>
  342. function build(type)
  343. {
  344. if(type == 1)
  345. {
  346. $('.build_title_1').html('开工大吉:');
  347. $('.build_title_2').html('现场施工图:');
  348. $('.build_title_3').html('现场施工图:');
  349. $('.build').show();
  350. $('.build_title_4').hide();
  351. }else if(type == 2) {
  352. $('.build_title_1').html('客厅照片:');
  353. $('.build_title_2').html('主卧照片:');
  354. $('.build_title_3').html('局部美图:');
  355. $('.build').hide();
  356. $('.build_title_4').show();
  357. }
  358. }
  359. var type = $('.release_type option:selected').val();
  360. build(type);
  361. if(type == 1){
  362. $('.stage').show();
  363. $('#stage').attr('name',"Building[stage]");
  364. $('.pattern').show();
  365. $('#pattern').attr('name',"Building[pattern]");
  366. }else if(type == 2){
  367. $('.stage').hide();
  368. $('#stage').attr("name","");
  369. $('.pattern').hide();
  370. $('#pattern').attr("name","");
  371. }
  372. $('.release_type').change(function(){
  373. var type = $('.release_type option:selected').val();
  374. build(type);
  375. if(type == 1){
  376. $('.stage').show();
  377. $('#stage').attr('name',"Building[stage]");
  378. $('.pattern').show();
  379. $('#pattern').attr('name',"Building[pattern]");
  380. }else if(type == 2){
  381. $('.stage').hide();
  382. $('#stage').attr("name","");
  383. $('.pattern').hide();
  384. $('#pattern').attr("name","");
  385. }
  386. })
  387. $(".img-thumbnail").click(function(){
  388. var type = $(this).siblings().attr('id');
  389. $('#type_image').val(type);
  390. $("#upload_picture input").click();
  391. $('#upload_picture input').change(function(){
  392. if($("#uploadpictureform-picture").val() != ""){
  393. $('#upload_picture form').submit();
  394. }
  395. });
  396. });
  397. // 添加图片的返回函数
  398. function callback(message,status,url,type_image){
  399. if(status==1){
  400. add_delete_btn(type_image);
  401. $('.'+type_image).attr("src","<?=Yii::getAlias('@imgdomain'); ?>"+url);
  402. $('#'+type_image).val(url);
  403. $("#uploadpictureform-picture").val("");
  404. $('#upload_picture form')[0].reset();
  405. setdelete(type_image,1);
  406. }else{
  407. layer.msg(message);
  408. }
  409. }
  410. //添加图片成功后,增加删除按钮
  411. function add_delete_btn(id)
  412. {
  413. var obj = $('#'+id+"_span");
  414. if(obj.length<=0)//不存在
  415. {
  416. var html =" <span class='delete_img' data-id='"+id+"' ><img src='/images/delete.png'></span>";
  417. $('#'+id+"_a").append(html);
  418. }
  419. //$('#sate').le
  420. }
  421. $('.delete_a').on('click','.delete_img',function(){
  422. var data_id = $(this).attr('data-id');
  423. $('#'+data_id+"_img").attr("src","/images/upload-img.jpg");
  424. $('#'+data_id).val("");
  425. $(this).remove();
  426. setdelete(data_id);
  427. });
  428. function setdelete(data_id,type = 0)
  429. {
  430. if($('input[name="'+data_id+'_delete"]').length>0)
  431. {
  432. if(type == 1)
  433. $('input[name="'+data_id+'_delete"]').val(1);
  434. else
  435. $('input[name="'+data_id+'_delete"]').val(-1);
  436. }
  437. }
  438. $('#submit').click(function(){
  439. var name = $('#name').val();
  440. var acreage = $('#acreage').val();
  441. var budget = $('#budget').val();
  442. var opening_begin = $('#opening_begin').val();
  443. var opening_end = $('#opening_end').val();
  444. var address = $('input[name="Building[address]"]').val();
  445. var manager_id = $('#manager_id').val();
  446. var designer_id = $('#designer_id').val();
  447. var pickup_address_coordinate = $("input[name='pickup_address_coordinate']").val();
  448. var province = $('#province').val();
  449. var city = $('#city').val();
  450. var district = $('#district').val();
  451. if(name ==""){
  452. layer.msg('请填写名称');return false;
  453. }else if(acreage==""){
  454. layer.msg('请填写面积');return false;
  455. }else if(!(/^\d+(\.\d+)?$/.test( acreage ))||acreage<=0)
  456. {
  457. layer.msg('请填写正确的面积');return false;
  458. }
  459. else if(budget ==""){
  460. layer.msg('请填写单价');return false;
  461. }
  462. else if(!(/^\d+(\.\d+)?$/.test( budget ))||budget<=0)
  463. {
  464. layer.msg('请填写正确的单价');return false;
  465. }
  466. else if(opening_begin ==""){
  467. layer.msg('请填预约开始时间');return false;
  468. }else if(opening_end ==""){
  469. layer.msg('请填预约结束时间');return false;
  470. }else if(opening_end <opening_begin){
  471. layer.msg('结束时间要大于开始时间');return false;
  472. }else if(manager_id =='' || manager_id == null)
  473. {
  474. layer.msg('选择项目经理');return false;
  475. }else if(designer_id =='' || designer_id == null )
  476. {
  477. layer.msg('选择设计师');return false;
  478. }
  479. else if(province == '' || city == '' ){
  480. layer.msg('选择省市区');return false;
  481. }
  482. else if(address=='')
  483. {
  484. layer.msg('请填写详细地址');return false;
  485. }else if(pickup_address_coordinate =='')
  486. {
  487. layer.msg('请在地图上选择位置');return false;
  488. }
  489. else{
  490. $.ajax({
  491. url:'<?=Url::toRoute(['building/index']);?>',
  492. type:'GET',
  493. dataType:'json',
  494. data:$('#myform').serialize(),
  495. success:function(data){
  496. if(data.sign==0)
  497. {
  498. swal("", data.msg, "success");
  499. window.location.href="<?=Url::toRoute(['building/index'])?>";
  500. }else{
  501. swal("", data.msg, "error");
  502. }
  503. // layer.msg(data.msg, function(){
  504. // window.location.href="<?//=Url::toRoute(['building/index'])?>//";
  505. // });
  506. }
  507. })
  508. }
  509. });
  510. $('#update').click(function(){
  511. var name = $('#name').val();
  512. var acreage = $('#acreage').val();
  513. var budget = $('#budget').val();
  514. var opening_begin = $('#opening_begin').val();
  515. var opening_end = $('#opening_end').val();
  516. var address = $('input[name="Building[address]"]').val();
  517. var manager_id = $('#manager_id').val();
  518. var designer_id = $('#designer_id').val();
  519. var pickup_address_coordinate = $("input[name='pickup_address_coordinate']").val();
  520. var province = $('#province').val();
  521. var city = $('#city').val();
  522. var district = $('#district').val();
  523. if(name ==""){
  524. layer.msg('请填写名称');return false;
  525. }else if(acreage==""){
  526. layer.msg('请填写面积');return false;
  527. }else if(!(/^\d+(\.\d+)?$/.test( acreage ))||acreage<=0)
  528. {
  529. layer.msg('请填写正确的面积');return false;
  530. }
  531. else if(budget ==""){
  532. layer.msg('请填写单价');return false;
  533. }
  534. else if(!(/^\d+(\.\d+)?$/.test( budget ))||budget<=0)
  535. {
  536. layer.msg('请填写正确的单价');return false;
  537. }
  538. else if(opening_begin ==""){
  539. layer.msg('请填预约开始时间');return false;
  540. }else if(opening_end ==""){
  541. layer.msg('请填预约结束时间');return false;
  542. }else if(opening_end <opening_begin){
  543. layer.msg('结束时间要大于开始时间');return false;
  544. }
  545. else if(manager_id =='' || manager_id == null)
  546. {
  547. layer.msg('选择项目经理');return false;
  548. }else if(designer_id =='' || designer_id == null )
  549. {
  550. layer.msg('选择设计师');return false;
  551. }
  552. else if(province == '' || city == '' ){
  553. layer.msg('选择省市区');return false;
  554. }
  555. else if(address=='')
  556. {
  557. layer.msg('请填写详细地址');return false;
  558. }
  559. else if(pickup_address_coordinate =='')
  560. {
  561. layer.msg('请在地图上选择位置');return false;
  562. }
  563. else{
  564. $.ajax({
  565. url:'<?=Url::toRoute(['building/index']);?>',
  566. type:'GET',
  567. dataType:'json',
  568. data:$('#myform').serialize(),
  569. success:function(data){
  570. if(data.sign==0)
  571. {
  572. swal("", data.msg, "success");
  573. }else{
  574. swal("", data.msg, "error");
  575. }
  576. //layer.msg(data.msg);
  577. }
  578. })
  579. }
  580. });
  581. </script>
  582. <script>
  583. laydate.skin('molv');
  584. laydate({
  585. elem: '#opening_begin', //目标元素。由于laydate.js封装了一个轻量级的选择器引擎,因此elem还允许你传入class、tag但必须按照这种方式 '#id .class'
  586. event: 'focus' //响应事件。如果没有传入event,则按照默认的click
  587. });
  588. laydate.skin('molv');
  589. laydate({
  590. elem: '#opening_end', //目标元素。由于laydate.js封装了一个轻量级的选择器引擎,因此elem还允许你传入class、tag但必须按照这种方式 '#id .class'
  591. event: 'focus' //响应事件。如果没有传入event,则按照默认的click
  592. });
  593. </script>
  594. <script type="text/javascript">
  595. var JsArea = $.city;
  596. var map, geolocation,addres;
  597. var input=document.getElementById('input')
  598. <?php if(!empty($model)&&!empty($model->longitude)&&!empty($model->latitude)):?>
  599. //加载地图,调用浏览器定位服务
  600. map = new AMap.Map('container', {
  601. resizeEnable: true,
  602. zoom:16,
  603. center :[<?= $model->longitude ?>, <?= $model->latitude ?>]
  604. });
  605. lnglatXY = [<?= $model->longitude ?>, <?= $model->latitude ?>];
  606. regeocoder();
  607. <?php else:?>
  608. //加载地图,调用浏览器定位服务
  609. map = new AMap.Map('container', {
  610. resizeEnable: true,
  611. zoom:16
  612. });
  613. map.plugin('AMap.Geolocation', function() {
  614. geolocation = new AMap.Geolocation({
  615. enableHighAccuracy: true,//是否使用高精度定位,默认:true
  616. timeout: 10000, //超过10秒后停止定位,默认:无穷大
  617. buttonOffset: new AMap.Pixel(10, 20),//定位按钮与设置的停靠位置的偏移量,默认:Pixel(10, 20)
  618. //zoomToAccuracy: true, //定位成功后调整地图视野范围使定位位置及精度范围视野内可见,默认:false
  619. buttonPosition:'RB'
  620. });
  621. map.addControl(geolocation);
  622. geolocation.getCurrentPosition();
  623. AMap.event.addListener(geolocation, 'complete', onComplete);//返回定位信息
  624. AMap.event.addListener(geolocation, 'error', onError); //返回定位出错信息
  625. });
  626. <?php endif?>
  627. //解析定位结果
  628. var input=document.getElementById('input')
  629. function onComplete(data) {
  630. lnglatXY = [data.position.getLng(), data.position.getLat()];
  631. regeocoder();
  632. }
  633. //逆地理编码
  634. function regeocoder() {
  635. var geocoder = new AMap.Geocoder({
  636. resizeEnable: true,
  637. radius: 1000,
  638. extensions: "all"
  639. });
  640. geocoder.getAddress(lnglatXY, function(status, result) {
  641. if (status === 'complete' && result.info === 'OK') {
  642. geocoder_CallBack(result);
  643. }
  644. });
  645. }
  646. function geocoder_CallBack(data) {
  647. var address = data.regeocode.formattedAddress; //返回地址描述
  648. input.value = data.regeocode.formattedAddress;
  649. var str=data.regeocode.formattedAddress;
  650. addres=str;
  651. Map_position(str);
  652. $(".pickup_address_all").val(str);
  653. ad();
  654. str=str.replace(data.regeocode.addressComponent.province,"");
  655. str=str.replace(data.regeocode.addressComponent.city,"");
  656. str=str.replace(data.regeocode.addressComponent.district,"");
  657. input.value=str;
  658. province_list(data.regeocode.addressComponent.province);
  659. city_list(data.regeocode.addressComponent.province,data.regeocode.addressComponent.city);
  660. district_list(data.regeocode.addressComponent.province,data.regeocode.addressComponent.city,data.regeocode.addressComponent.adcode);
  661. }
  662. //解析定位错误信息
  663. function onError(data) {
  664. province_list('');
  665. layer.msg("定位失败");
  666. }
  667. // province_list();
  668. AMap.plugin('AMap.Geocoder',function(){
  669. var geocoder = new AMap.Geocoder({
  670. city: "010"//城市,默认:“全国”
  671. });
  672. <?php if(!empty($model)):?>
  673. var marker = new AMap.Marker({
  674. map:map,
  675. bubble:true,
  676. position: [<?= $model->longitude ?>, <?= $model->latitude ?>]
  677. })
  678. <?php else:?>
  679. var marker = new AMap.Marker({
  680. map:map,
  681. bubble:true
  682. })
  683. <?php endif?>
  684. map.on('click',function(e){
  685. marker.setPosition(e.lnglat);
  686. geocoder.getAddress(e.lnglat,function(status,result){
  687. input.value = result.regeocode.formattedAddress;
  688. var str=result.regeocode.formattedAddress;
  689. addres=str;
  690. Map_position(str);
  691. $(".pickup_address_all").val(str);
  692. ad();
  693. str=str.replace(result.regeocode.addressComponent.province,"");
  694. str=str.replace(result.regeocode.addressComponent.city,"");
  695. str=str.replace(result.regeocode.addressComponent.district,"");
  696. input.value=str;
  697. // $(".province").val(result.regeocode.addressComponent.province);
  698. // $(".city").val(result.regeocode.addressComponent.citycode);
  699. // $(".district").val(result.regeocode.addressComponent.adcode);
  700. province_list(result.regeocode.addressComponent.province);
  701. city_list(result.regeocode.addressComponent.province,result.regeocode.addressComponent.city);
  702. district_list(result.regeocode.addressComponent.province,result.regeocode.addressComponent.city,result.regeocode.addressComponent.adcode);
  703. })
  704. })
  705. });
  706. //输入提示
  707. function ad(){
  708. if (addres!="") {
  709. var auto = new AMap.Autocomplete({
  710. city:addres,
  711. input: "input"
  712. });
  713. var placeSearch = new AMap.PlaceSearch({
  714. map: map
  715. }); //构造地点查询类
  716. AMap.event.addListener(auto, "select", select);//注册监听,当选中某条记录时会触发
  717. function select(e) {
  718. placeSearch.setCity(e.poi.adcode);
  719. placeSearch.search(e.poi.name); //关键字查询查询
  720. }
  721. AMap.event.addListener(placeSearch, "markerClick", function(e){
  722. $("input[name='pickup_address_coordinate']").val(e.data.location.lng + ',' + e.data.location.lat);
  723. //console.log(e.data.location);//当前marker的经纬度信息
  724. })
  725. };
  726. }
  727. $('#province').change(function(){
  728. var pro = $(this).find("option:selected").attr("area_name");
  729. city_list(pro,'');
  730. $('#district').html('<option value="">请选择地区</option>');
  731. $('#input').val('');
  732. // Map_position(pro);
  733. })
  734. $('#city').change(function(){
  735. var pro = $('#province').find("option:selected").attr("area_name");
  736. var city = $(this).find("option:selected").attr("area_name");
  737. district_list(pro,city,'');
  738. // Map_position(city);
  739. })
  740. $('#district').change(function(){
  741. var district = $(this).find("option:selected").attr("area_name");
  742. // Map_position(district);
  743. })
  744. $('#input').change(function(){
  745. var street = $(this).val();
  746. pro=$('#province option:selected').text();
  747. cit=$('#city option:selected').text();
  748. dis=$('#district option:selected').text();
  749. Map_position(pro+cit+dis+street);
  750. $(".pickup_address_all").val(pro+cit+dis+street);
  751. })
  752. var pro,cit,dis,addres;
  753. $('#province').change(function(){
  754. pro=$('#province option:selected').text();
  755. addres=pro;ad();
  756. });
  757. $('#city').change(function(){
  758. pro=$('#province option:selected').text();
  759. cit=$('#city option:selected').text();
  760. addres=pro+cit;ad();
  761. });
  762. $('#district').change(function(){
  763. pro=$('#province option:selected').text();
  764. cit=$('#city option:selected').text();
  765. dis=$('#district option:selected').text();
  766. addres=pro+cit+dis;ad();
  767. });
  768. function province_list(province){
  769. var html = '<option value="">请选择省份</option>';
  770. var area=JsArea.province();
  771. for(i=0;i<area.length;i++){
  772. html+='<option value="'+area[i].area_id+'" area_name="'+area[i].name+'"';
  773. if(province!=''){
  774. if(province==area[i].name){
  775. html+='selected=selected';
  776. }
  777. }
  778. html+='>'+area[i].name+'</option>';
  779. }
  780. $('#province').html(html);
  781. }
  782. function city_list(provincename,cityname){
  783. var html = '<option value="">请选择城市</option>';
  784. var area=JsArea.city(provincename);
  785. for(i=0;i<area.length;i++){
  786. html+='<option value="'+area[i].area_id+'" area_name="'+area[i].name+'"';
  787. if(cityname!=''){
  788. if(cityname==area[i].name){
  789. html+='selected=selected';
  790. }
  791. }
  792. html+='>'+area[i].name+'</option>';
  793. }
  794. $('#city').html(html);
  795. }
  796. function district_list(provincename,cityname,districtcode){
  797. var html = '<option value="">请选择地区</option>';
  798. var area=JsArea.district(provincename,cityname);
  799. for(i=0;i<area.length;i++){
  800. html+='<option value="'+area[i].area_id+'" area_name="'+area[i].name+'"';
  801. if(districtcode!=''){
  802. if(districtcode==area[i].area_id){
  803. html+='selected=selected';
  804. }
  805. }
  806. html+='>'+area[i].name+'</option>';
  807. }
  808. $('#district').html(html);
  809. }
  810. function Map_position(text){
  811. var placeSearch = new AMap.PlaceSearch();
  812. placeSearch.search(text, function(status, result) {
  813. if (status === 'complete' && result.info === 'OK') {
  814. var poiArr = result.poiList.pois;
  815. //如果没有显示地图,就不用for
  816. for(var i=0;i<poiArr.length;i++){
  817. marker = new AMap.Marker({
  818. });
  819. }
  820. $(".qh-zb").val(poiArr[0].location.lng+","+poiArr[0].location.lat);
  821. }
  822. });
  823. }
  824. var map, district, polygons = [], citycode;
  825. var citySelect = document.getElementById('city');
  826. var districtSelect = document.getElementById('district');
  827. var areaSelect = document.getElementById('street');
  828. </script>;