detail-basic.php 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232
  1. <div class="grid-box">
  2. <el-row :gutter="20">
  3. <el-col :span="4" v-for="(val, key) in statisticsData" :key="key">
  4. <div class="grid-item" flex="dir:top main:center">
  5. <div class="grid-text">
  6. <span>{{ val }}</span>
  7. <el-popover placement="top-start" width="250" trigger="hover" content="门店货款">
  8. <i slot="reference" v-if="key == 'total_settled_amount'" class="el-icon-question grid-icon"></i>
  9. </el-popover>
  10. </div>
  11. <div class="grid-val">{{ basicForm[key] }}</div>
  12. </div>
  13. </el-col>
  14. </el-row>
  15. </div>
  16. <!-- 基础信息 -->
  17. <el-form ref="basicForm" :model="basicForm" label-width="80px" size="small" :rules="basicRules">
  18. <el-card class="store-card" shadow="never">
  19. <div slot="header" class="store-card-head" flex="flex main:justify cross:center">
  20. <span>基础信息</span>
  21. <div class="head-btn">
  22. <el-button :loading="switchStoreLoading" size="small" :type="isDisable ? '' : 'primary'" @click="storeSwitch">{{ isDisable ? '启用' : '禁用' }}门店</el-button>
  23. <el-button size="small" type="primary" @click="storeEdit('baseDialogVisible')">编辑</el-button>
  24. </div>
  25. </div>
  26. <div class="store-card-body">
  27. <el-descriptions :column="2">
  28. <div slot="title" flex="flex cross:center">
  29. <el-avatar :size="60" :src="basicForm.logo_img"></el-avatar>
  30. <span class="store-name">{{ basicForm.store_name }}</span>
  31. </div>
  32. <el-descriptions-item label="店长">{{basicForm.shop_owner}}</el-descriptions-item>
  33. <el-descriptions-item label="手机号">{{basicForm.shop_mobile}}</el-descriptions-item>
  34. <el-descriptions-item label="营业执照">
  35. <el-image style="width: 150px; height: 100px" :src="basicForm.license_img"></el-image>
  36. </el-descriptions-item>
  37. <!-- <el-descriptions-item label="到期时间" v-if="basicForm.expire_time==0">无限期</el-descriptions-item>
  38. <el-descriptions-item label="到期时间" v-else>{{basicForm.expire_time | dateTimeFormat('Y-m-d H:i:s')}}</el-descriptions-item> -->
  39. <el-descriptions-item label="门店介绍">{{basicForm.store_desc}}</el-descriptions-item>
  40. <el-descriptions-item label="创建时间">{{basicForm.created_at | dateTimeFormat('Y-m-d H:i:s')}}</el-descriptions-item>
  41. </el-descriptions>
  42. </div>
  43. </el-card>
  44. <!-- 地址信息/自提点 -->
  45. <el-card class="store-card" body-style="padding: 0;" shadow="never">
  46. <div slot="header" class="store-card-head" flex="flex main:justify cross:center">
  47. <span>地址信息/自提点</span>
  48. <div class="head-btn">
  49. <com-qq-map @map-submit="mapEvent" :address="basicForm.address" :lat="basicForm.latitude" :long="basicForm.longitude" style="display: inline-block;">
  50. <el-button type="primary" size="small">经纬度</el-button>
  51. </com-qq-map>
  52. <el-button size="small" type="primary" @click="addressDialogVisible = true">地址编辑</el-button>
  53. </div>
  54. </div>
  55. <div class="store-card-body">
  56. <el-descriptions :column="1">
  57. <!-- <el-descriptions-item label="门店地址">{{basicForm.addr}}</el-descriptions-item>-->
  58. <el-descriptions-item label="门店详细地址">{{basicForm.show_address}}</el-descriptions-item>
  59. <el-descriptions-item label="经纬度"><span style="color: #999999;">{{basicForm.longitude}},{{basicForm.latitude}}</span></el-descriptions-item>
  60. </el-descriptions>
  61. </div>
  62. </el-card>
  63. <div style="padding: 20px 0;">
  64. <el-button size="small" type="primary" @click="submit('basicForm')">保存</el-button>
  65. </div>
  66. </el-form>
  67. <!-- 基本信息弹窗 -->
  68. <el-dialog title="基本信息" :visible.sync="baseDialogVisible" width="600px">
  69. <el-form ref="basicForm" :model="basicForm" label-width="80px" size="small" :rules="basicRules">
  70. <el-form-item label="店铺名称">
  71. <el-input class="width-200" v-model="basicForm.store_name"></el-input>
  72. </el-form-item>
  73. <el-form-item label="店铺logo">
  74. <div flex="dir:left;">
  75. <!-- <draggable flex="dif:left">
  76. <div class="card-coverimg">
  77. <el-image class="elImages" style="width: 80px; height: 80px" :src=""></el-image>
  78. <el-button @click="delPic" class="icon-close" type="primary" size="mini" icon="el-icon-close" circle></el-button>
  79. </div>
  80. </draggable> -->
  81. <template v-if="basicForm.logo_img">
  82. <el-image class="elImages" style="width: 80px; height: 80px;" :src="basicForm.logo_img"></el-image>
  83. <el-button class="delele-img-btn" size="mini" type="danger" icon="el-icon-close" circle @click="storeDetailDeletePic('logo_img')"></el-button>
  84. </template>
  85. <template v-else>
  86. <com-attachment :multiple="false" :max="1" type="images" @selected="storeDetailSelectedImg($event, 'logo_img')">
  87. <div class="card-upload">
  88. <i class="el-icon-plus"></i>
  89. </div>
  90. </com-attachment>
  91. </template>
  92. </div>
  93. </el-form-item>
  94. <el-form-item label="手机号">
  95. <el-input class="width-200" v-model="basicForm.shop_mobile"></el-input>
  96. <p style="color:red;"><span style="color:black;">注意</span>:如果修改门店手机号,门店后台登录将自动重置为手机号的后六位数字</p>
  97. </el-form-item>
  98. <!-- <el-form-item label="验证码">
  99. <div flex="cross:center">
  100. <el-input class="width-200" v-model="form.name"></el-input>
  101. <div class="store-send-code" @click="sendCode">{{ captcha > 0 ? captcha + 's' : captcha }}</div>
  102. </div>
  103. </el-form-item> -->
  104. <el-form-item label="营业执照">
  105. <div flex="dir:left;">
  106. <!-- <draggable flex="dif:left">
  107. <div class="card-coverimg">
  108. <el-image class="elImages" style="width: 80px; height: 80px" :src=""></el-image>
  109. <el-button @click="delPic" class="icon-close" type="primary" size="mini" icon="el-icon-close" circle></el-button>
  110. </div>
  111. </draggable> -->
  112. <template v-if="basicForm.license_img">
  113. <el-image class="elImages" style="width: 80px; height: 80px;" :src="basicForm.license_img"></el-image>
  114. <el-button class="delele-img-btn" size="mini" type="danger" icon="el-icon-close" circle @click="storeDetailDeletePic('license_img')"></el-button>
  115. </template>
  116. <template v-else>
  117. <com-attachment :multiple="false" :max="1" type="images" @selected="storeDetailSelectedImg($event, 'license_img')">
  118. <div class="card-upload">
  119. <i class="el-icon-plus"></i>
  120. </div>
  121. </com-attachment>
  122. </template>
  123. </div>
  124. <div class="tips-text" style="padding-left: 10px;">建议上传686*485图片</div>
  125. </el-form-item>
  126. <!-- <el-form-item label="到期时间">
  127. <div>
  128. <span v-if="basicForm.expire_time">{{basicForm.expire_time | dateTimeFormat('Y-m-d H:i:s')}}</span>
  129. <span v-else>无限期</span>
  130. <template>
  131. <el-button size="mini" type="primary" @click="editExpireTime=true" style="padding: 6px;margin-left: 10px;">修改有效期</el-button>
  132. </template>
  133. </div>
  134. <div v-if="editExpireTime" style="margin-top: 10px;">
  135. <el-date-picker v-model="expireDate" type="date" placeholder="选择日期" format="yyyy-MM-dd" align="center" value-format="timestamp" @change="expireDateChange"> </el-date-picker>
  136. </div>
  137. </el-form-item> -->
  138. <el-form-item>
  139. <div flex="main:right;">
  140. <!-- <el-button @click="baseDialogVisible=false">取消</el-button> -->
  141. <el-button type="primary" @click="baseDialogVisible=false">确定</el-button>
  142. </div>
  143. </el-form-item>
  144. </el-form>
  145. </el-dialog>
  146. <!-- 门店分享弹窗 -->
  147. <el-dialog title="门店分享" :visible.sync="shareDialogVisible" width="600px">
  148. <el-form ref="basicForm" :model="basicForm" label-width="80px" size="small" :rules="basicRules">
  149. <el-form-item label="分享标题">
  150. <el-input class="width-200" v-model="basicForm.share_title"></el-input>
  151. </el-form-item>
  152. <el-form-item label="分享描述">
  153. <el-input class="width-200" v-model="basicForm.share_desc"></el-input>
  154. </el-form-item>
  155. <el-form-item label="分享图片">
  156. <div flex="cross:bottom;">
  157. <div flex="dir:left;">
  158. <!-- <draggable flex="dif:left;">
  159. <div class="card-coverimg">
  160. <el-image class="elImages" style="width: 80px; height: 80px;" :src=""></el-image>
  161. <el-button @click="delPic" class="icon-close" type="primary" size="mini" icon="el-icon-close" circle></el-button>
  162. </div>
  163. </draggable> -->
  164. <template v-if="basicForm.share_pic">
  165. <el-image class="elImages" style="width: 80px; height: 80px;" :src="basicForm.share_pic"></el-image>
  166. <el-button class="delele-img-btn" size="mini" type="danger" icon="el-icon-close" circle @click="storeDetailDeletePic('share_pic')"></el-button>
  167. </template>
  168. <template v-else>
  169. <com-attachment :multiple="false" :max="1" type="images" @selected="storeDetailSelectedImg($event, 'share_pic')">
  170. <div class="card-upload">
  171. <i class="el-icon-plus"></i>
  172. </div>
  173. </com-attachment>
  174. </template>
  175. </div>
  176. <div class="tips-text" style="padding-left: 10px;">建议上传200px*200px图片</div>
  177. </div>
  178. </el-form-item>
  179. <el-form-item>
  180. <div flex="main:right;">
  181. <!-- <el-button @click="shareDialogVisible=false">取消</el-button> -->
  182. <el-button type="primary" @click="shareDialogVisible=false">确定</el-button>
  183. </div>
  184. </el-form-item>
  185. </el-form>
  186. </el-dialog>
  187. <!--门店地址设置-->
  188. <el-dialog title="门店地址" :visible.sync="addressDialogVisible" width="972px">
  189. <el-form ref="basicForm" :model="basicForm" class="option-pd-5" label-width="80px" size="small" :rules="basicRules">
  190. <el-form-item label="所在区域" prop="province_id">
  191. <div class="flex flex-y-center">
  192. <el-select v-model="provinceInfo" value-key='id' class="pd-5" placeholder="请选择省" @change="regionChange($event, 1)">
  193. <el-option v-for="item in provinces" :key="item.id" :label="item.name" :value="item"></el-option>
  194. </el-select>
  195. <el-select v-model="cityInfo" value-key='id' class="pd-5" placeholder="请选择市" @change="regionChange($event, 2)">
  196. <el-option v-for="item in citys" :key="item.id" :label="item.name" :value="item"></el-option>
  197. </el-select>
  198. <el-select v-model="districtInfo" value-key='id' class="pd-5" placeholder="请选择区" @change='regionChange($event, 3)'>
  199. <el-option v-for="item in districts" :key="item.id" :label="item.name" :value="item"></el-option>
  200. </el-select>
  201. <el-select v-model="streetInfo" value-key='id' class="pd-5" placeholder="请选择街道" @change='regionChange($event, 4)'>
  202. <el-option v-for="item in streets" :key="item.id" :label="item.name" :value="item"></el-option>
  203. </el-select>
  204. </div>
  205. </el-form-item>
  206. <el-form-item class="detail_address" label="详细地址">
  207. <el-input class="width-350" v-model="address"></el-input>
  208. </el-form-item>
  209. <el-form-item>
  210. <div style="display:flex;justify-content:end" flex="main:right">
  211. <el-button @click="handleCancel">取消</el-button>
  212. <el-button type="primary" @click="addressDialog()">确定</el-button>
  213. </div>
  214. </el-form-item>
  215. </el-form>
  216. </el-dialog>
  217. <!--<style>-->
  218. <!-- .pd-5{padding: 5px !important;}-->
  219. <!-- .option-pd-5 .el-select{padding: 5px}-->
  220. <!-- .option-pd-5 .detail_address{margin-top:10px}-->
  221. <!--</style>-->